Cyclic code

They are error-correcting codes that have algebraic properties that are convenient for efficient error detection and correction.

They are based on Galois fields and because of their structural properties they are very useful for error controls.

Their structure is strongly related to Galois fields because of which the encoding and decoding algorithms for cyclic codes are computationally efficient.

The ideal is generated by the unique monic element in

are coprime such a word always exists and is unique;[2] it is a generator of the code.

, the set of codewords contained in cyclic code generated by

the parity bit code, consisting of all words of even weight, corresponds to generator

The missing information symbols are usually imagined to be at the beginning of the codeword and are considered to be 0.

Depending on the application sometimes consecutive positions are considered as 0 and are deleted.

All the symbols which are dropped need not be transmitted and at the receiving end can be reinserted.

All types of error corrections are covered briefly in the further subsections.

Cyclic codes can also be used to correct double errors over the field

Hence if the two pair of nonlinear equations can be solved cyclic codes can used to correct two errors.

[5] A code whose minimum distance is at least 3, have a check matrix all of whose columns are distinct and non zero.

It is easy to define Hamming codes for large alphabets of size

and is a generator polynomial for the cyclic code of block length

But in many channels error pattern is not very arbitrary, it occurs within very short segment of the message.

So, for correcting such errors we will get a more efficient code of higher rate because of the less constraints.

A linear block code that corrects all burst errors of length

Proof: Because any linear code that can correct burst pattern of length

In 1959, Philip Fire[6] presented a construction of cyclic codes generated by a product of a binomial and a primitive polynomial.

Block length of the fire code is the smallest integer

By using multiple fire codes longer burst errors can also be corrected.

For error detection cyclic codes are widely used and are called

Applications of Fourier transform are widespread in signal processing.

Cyclic codes using Fourier transform can be described in a setting closer to the signal processing.

Thus, cyclic codes can also be defined as Given a set of spectral indices,

, whose elements are called check frequencies, the cyclic code

and the spectrum given by its inverse fourier transform is over the field

consecutive components of its spectrum equal to zero is all-zero vector.

If 00010111 is a valid codeword, applying a right circular shift gives the string 10001011. If the code is cyclic, then 10001011 is again a valid codeword. In general, applying a right circular shift moves the least significant bit (LSB) to the leftmost position, so that it becomes the most significant bit (MSB); the other positions are shifted by 1 to the right.