Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CONTRACT: Clarify applicibility of wiki entry in Hamming contracts. #1637

Open
wants to merge 2 commits into
base: dev
Choose a base branch
from

Conversation

gmcew
Copy link
Collaborator

@gmcew gmcew commented Aug 27, 2024

closes #1610
Wording changes here are to emphasise the "extended" part of the contract structure. In parallel, there has been positive feedback on the 3b1b video's presence on discord, and I think the wiki entry still has some value in the very entry-level understanding of what a Hamming code is.

It's draft since I'd appreciate any comments/suggestions on collating further improvements to limit follow-on corrections.

Emphasise on difference between Wiki default [7,4] Hamming code and the structure used in-game
@d0sboots
Copy link
Collaborator

Seems good to me. Probably marginally better, but these contracts will always have issues. (Fundamentally, the concepts are more complicated than the code here.)

@d0sboots
Copy link
Collaborator

I'm happy with this as is; comment or do something if you're happy to have it merged, otherwise I'll forget about it.

@bupjae
Copy link
Contributor

bupjae commented Aug 28, 2024

An 'extended Hamming code' has an additional parity bit to enhance error detection and correction.

To be more precise, the additional parity bit of "extended" hamming code enhances the error detection when compared to plain hamming code, but not for correction.

  • plain hamming code can detect and correct 1-bit error, but cannot detect 2-bit or more error.
  • extended hamming code can still correct only 1-bit error, but able to detect up to 2-bit error. (so-called SECDED)

As our contract required to correct up to 1-bit error, this won't be affected for implementing solver. However, as we are trying to clarify the problem description, it would be good to be more precise.

@gmcew gmcew marked this pull request as ready for review August 28, 2024 17:32
@gmcew
Copy link
Collaborator Author

gmcew commented Aug 28, 2024

I'm happy with this as is; comment or do something if you're happy to have it merged, otherwise I'll forget about it.

Thanks, I'm happy to have it merged. I completely agree this is not likely to be the last revision of this description; it is a complex concept to distill down effectively.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

CODINGCONTRACT: HammingCode: Clarify difference between Wikipedia implementaion and in-game implementaion
3 participants