Binary simplex code Created 2026-09-24 Updated 2026-09-24
The binary simplex code is the dual of the binary Hamming code. For redundancy it has parameters .
A Hamming code decoder succeeds on a seven-bit block exactly when there are zero or one errors. Its radius-one decoding regions are disjoint, so an error of weight at least two cannot decode back to the original codeword. Thus
Numerically , so only about transmissions are expected. Even accounting for seven rather than four bits per letter, expected bits sent are , compared with . The Hamming method is substantially better under the stated error detection and independent retransmission assumptions.
For , let be the binary matrix whose columns are all distinct nonzero vectors of . The binary Hamming code is . Its parity-check matrix has rank since its columns include the standard basis. Hence is linear of length and dimension .
No word of weight one or two lies in , since columns are nonzero and distinct; three columns sum to zero, so the minimum distance of a code is exactly three. The syndrome of a single-bit error is its column of , uniquely identifying the erroneous position. The possible syndromes correspond to no error or exactly one of single-bit errors. Alternatively, every radius-one Hamming ball has words and
Disjoint balls therefore cover the whole word space. This proves linearity, one-error correction and perfection. For , the parameters are , giving the 16 messages needed below.
Identify a binary word with its coefficient polynomial in . A cyclic code is exactly an ideal of : closure under multiplication by is closure under cyclic shift. Its inverse image in the principal ideal domain has a unique monic generator polynomial of a cyclic code dividing . Put
The cubics have no root in , hence are irreducible polynomials. The eight monic divisors yield all binary cyclic codes of length seven. A code generated by has basis and dimension , with the zero code treated separately.
For the dual of a cyclic code, let . Orthogonality of coefficient vectors to all cyclic shifts gives the generator . Here . Thus the complete pairing, with the respective dimensions, is
These are respectively the whole-space/zero, even-weight/repetition, and two Hamming code/binary simplex code pairs. The reciprocal formula follows because the product of a word polynomial and the reversed polynomial of an orthogonal word has zero coefficients in all cyclic positions; the resulting inclusion has the correct complementary dimension, hence is equality.
Let and let be the parity-check matrix whose columns are the distinct nonzero vectors of the finite field vector space . The binary Hamming code is
A perfect code has Hamming balls of radius about its codewords partitioning the whole ambient space, where is its minimum Hamming distance of a linear code.
No column of is zero and no two columns agree, so has no word of Hamming weight one or two. Three suitable columns sum to zero, so . For any received word , its syndrome is either zero or is the unique column of equal to that syndrome. In the first case ; in the second,
so is at Hamming distance one from a codeword. Uniqueness follows from . Thus the radius-one balls partition , and the code is perfect.
For , the dual code is the binary simplex code of length seven. Every nonzero dual word evaluates a nonzero linear functional on the seven nonzero vectors of , and exactly four of those evaluations are one. Hence every nonzero word of has weight
Sum all nonzero vectors of . In each coordinate, exactly vectors have entry one, which is even because . The sum is therefore zero, so
Thus the all-one word belongs to the Hamming code and has Hamming weight .
The columns of the parity-check matrix of the binary Hamming code are precisely the distinct nonzero vectors of . If , then is nonzero and differs from both summands, so it occurs as a unique third column .
A word supported on three positions is a codeword exactly when the corresponding three columns sum to zero. Every unordered pair of columns determines one such triple, and each triple is counted once by each of its three pairs. Therefore