next up previous
Next: Corresponding Geometry Up: Constructing G (and hence, Previous: Proof

Proof

Choose an arbitrary codeword c of C. Counting the number of vectors within radius 1, we have c itself and $ n*(q-1)$ vectors (since we have $ q-1$ options for each of the possible $ n$ errors). We have shown these spheres are mutally disjoint, therefore exactly $ \vert{\bf C}\vert(n*(q-1)+1)$ vectors of V are covered by the spheres of C. Thus for a linear 1-error correcting code, C is perfect if and only if $ \vert{\bf C}\vert(n*(q-1)+1)=q^{n}$, since that's how many vectors are in V.

Thus to show our Hamming code is perfect, we use the fact that the size of C is $ k^{n}$. Plugging this into our equation from the above theorem we have
$ q^{k}(n(q-1)+1)=q^{n}$.
$ \Leftrightarrow n(q-1)+1=q^{n-k}$
$ \Leftrightarrow n(q-1)+1=q^{r}$, where $ r$ is an integer.
$ \Leftrightarrow n=\frac{q^{r}-1}{q-1}$
Which is how $ n$ is chosen by definition of our Hamming code. QED



Bill Cherowitzo 2001-12-11