next up previous contents
Next: Bibliography Up: Basic coding theory examples Previous: Hamming codes   Contents

Cyclic codes

A cyclic code is associated to an irreducible polynomial over $\mathbb{F}_q$ which divides $x^n-1$.

For example, to get the $[7, 4, 3]$ cyclic code over $GF(2)$ having generator matrix

\begin{displaymath}
\left(
\begin{array}{ccccccc}
1& 0& 0& 0& 1& 1& 0\\
0& 1& 0...
...
0& 0& 1& 0& 1& 1& 1\\
0& 0& 0& 1& 1& 0& 1
\end{array}\right)
\end{displaymath}

R:=PolynomialRing(GF(2),["x"]);;
x:=Indeterminate(GF(2),"x");;
g:=x^3+x+1;
Factors(x^7-1);
C:=GeneratorPolCode(g,7,GF(2));
G:=GeneratorMat(C);

To get the parity check matrix, type H:=CheckMat(C); Try IsCyclicCode(C);

To get the dimension of the code, type Dimension(C); To get its minimum distance, type MinimumDistance(C);

Exercise 3   Check if $x^2+1$ is a generating polynomial of a cyclic code of length $4$ over $GF(2)$. If so, find a basis for this code, as a vector space over $GF(2)$, and construct a parity check matrix.



David Joyner 2003-02-18