The Hamming code, quadratic residue codes, and an exceptional isomorphism
Wildon's Weblog 2021-07-04
As a pleasant way to pass a Sunday afternoon — or at least, more pleasant than flat-hunting in Bristol in a wildly inflated property market — let me offer yet another way to prove the isomorphism . An earlier post uses modular representation theory to do in about a screenful of WordPress. Here we do it using the well known result that, up to position permutation, there is a unique perfect
-error correcting linear binary code of length
.
The Hamming code
We define the –Hamming code
to be the linear code of length
and dimension
with parity check matrix
Since each non-zero binary word of length appears exactly once as a column of $H$, the syndromes for the
possible one bit errors, namely
are distinct. Hence is $1$-error correcting, and therefore has minimum distance
. Since the disjoint Hamming balls of radius
about the codewords each contain
binary words of length
, and
, these balls partition
and
is a perfect
-error correcting linear binary code.
Lemma. The automorphism group of is a subgroup of $S_7$ containing $\mathrm{GL}_3(\mathbb{F}_2)$.
Proof. Each permutes the
non-zero elements of
. Let
be the position permutation of the columns of
induced by
. For example,
and so in this case . Observe that
, where
acts on the right on $v$ by position permutation. For instance, in the example above,
and correspondingly,
is a codeword in $C$. Since the group homomorphism $g \mapsto \sigma_g$ is injective, the lemma follows. $\Box$.
Quadratic residue codes
We may construct as $\mathbb{F}_2(\alpha)$ where $\alpha$ has minimal polynomial $x^3 + x + 1$. The binary quadratic residue code of length
is the cyclic code
whose generator polynomial has as its roots the powers of
corresponding to the
quadratic residues modulo
, namely
,
and
. That is,
. Since these roots are conjugate under the Frobenius automorphism
of $\mathbb{F}_{2^3}$, the generator polynomial is the minimum polynomial of
; that is $g(x) = x^3 + x + 1$. Thinking of $D$ as the ideal
of
, we have
if and only if
. From this it is easy to see that
has minimum weight
so, as before,
is a perfect
-error correcting binary code. (More generally, in a quadratic residue code of odd prime length
, the minimum distance
satisfies
.) The same argument holds for the cyclic code
whose generator polynomial is
, defined using the
non-residues modulo
.
By the uniqueness result mentioned earlier, the codes ,
and
are all equivalent. Fix a bijection
.
We now identify the positions of with
. Since
is cyclic, the position permutation
is an automorphism of
. This gives one element of
. To obtain the rest, we need the following two claim.
Claim. If then the position permutation
preserves $D$.
Proof. Thinking of as an ideal, We have
if and only if
, so if and only if
. This deals with the case
, and
is obtained by squaring.
.
Claim. If then the position permutation
sends
to $E$. The position permutation $0 \mapsto 0$ and
sends
to $E$.
Proof. For the first part, use that the generator polynomial for is defined using the
non-residues modulo $7$. The second part follows similarly, since
is a root of
if and only if
is a root of $x^3 + x^2 + 1$.
We may therefore define an action of on $D$ by identifying the positions of codewords with
and then applying the corresponding position permutation, followed by $\star$ if (according to the second claim above), we end in
rather than in
. Using that
is a simple group, we see this homomorphism is injective.
Conclusion.
We have shown that the automorphism group, say, of a perfect
-error correcting linear binary code contains subgroups
and
isomorphic to the finite simple groups
and
of order
. Setting
we have
. Since
, and
and $7! = 2^4.3^2. 5.7$, we have
. Hence
has index at most
in
. The coset action of
on
now gives a homomorphism
; since
is simple and has elements of order
, this homomorphism must be trivial. Therefore
. Similarly
. Hence
and we have the required automorphism.