next up previous contents index
Next: Permutations Up: Coding theory exercises using Previous: Reed-Muller codes   Contents   Index

Cyclic codes

A cyclic code is associated to an irreducible polynomial over $ \mathbb{F}$ 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<x>:=PolynomialRing(GF(2));
g:=x^3+x+1;
Factorization(x^7-1);
C:=CyclicCode(7,g);
C;
G:=GeneratorMatrix(C);
G;

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

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

Exercise 3.12.6   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 2002-08-23