Dual of Hamming code with parameters [2^m-1, m, 2^(m-1)]. All non-zero codewords have constant Hamming weight 2^(m-1). Maximal-length linear codes with excellent error correction properties. Used in communication systems requiring equidistant codewords.
| Property | Value |
|---|---|
| Category | Error Correction |
| Sub-category | Linear Code |
| Security status | π Educational Only |
| Complexity | Intermediate |
| Inventor | David E. Muller (dual concept) |
| Year | 1954 |
| Origin | πΊπΈ United States |
| Source | algorithms/ecc/simplex-code.js |
Status: π Educational Only
| Issue | Description | Mitigation |
|---|---|---|
| Very Low Code Rate | Code rate m/(2^m-1) decreases exponentially with m. Example: m=4 gives rate 4/15 = 26.7%. | β |
| Fixed Parameters | Block length must be 2^m-1, limiting flexibility in practical applications. | β |
4 vectors ship with this algorithm and run in the test suite. Byte values are hexadecimal.
Vector 1 β Simplex (7,3) all zeros
| Field | Value |
|---|---|
input |
000000 |
expected |
00000000000000 |
Vector 2 β Simplex (7,3) pattern 001
| Field | Value |
|---|---|
input |
000001 |
expected |
00000001010101 |
Vector 3 β Simplex (7,3) pattern 010
| Field | Value |
|---|---|
input |
000100 |
expected |
00010100000101 |
Vector 4 β Simplex (7,3) pattern 100
| Field | Value |
|---|---|
input |
010000 |
expected |
01000100010001 |