|
C.8.2 Cooper philosophy
Computing syndromes in cyclic code case
Let be an cyclic code over ; is a splitting field with being a primitive n-th root of unity. Let
be the complete defining set of . Let
be a received word with and an error vector.
Denote the corresponding polynomials in
by , and , resp. Compute syndromes
where is the number of errors, are the error positions and
are the error values. Define and . Then are the error locations and are the error values and
the syndromes above become generalized power sum functions

CRHT-ideal
Replace the concrete values above by variables and add some natural restrictions. Introduce
-
; -
since ; -
, since are either -th roots of unity or zero; -
, since
.
We obtain the following set of polynomials in the variables
,
and
:
The zero-dimensional ideal generated by is the CRHT-syndrome ideal
associated to the code , and the variety defined by is the CRHT-syndrome variety,
after Chen, Reed, Helleseth and Truong.
General error-locator polynomial
Adding some more polynomials to , thus obtaining some , it is possible to prove the following Theorem:
Every cyclic code possesses a general error-locator polynomial from
that satisfies the following
two properties:
-
with
, where is the error-correcting
capacity; -
given a syndrome
corresponding to an error of weight
and error locations
, if we evaluate the for all
,
then the roots of
are exactly
and 0 of multiplicity , in other words

The general error-locator polynomial actually is an element of the reduced Gröbner basis of
. Having this polynomial,
decoding of the cyclic code reduces to univariate factorization.
For an example see sysCRHT in decodegb_lib.
More on Cooper's philosophy and the general error-locator polynomial can be found in [OS2005].
Finding the minimum distance
The method described above can be adapted to find the minimum distance of a code.
More concretely, the following holds:
Let be the binary cyclic code with the defining set
. Let and let denote the system:
Then the number of solutions of is equal to times the number of codewords of weight . And for , either
has no solutions, which is equivalent to , or has some solutions, which is equivalent to .
For an example see sysCRHTMindist in decodegb_lib.
More on finding the minimum distance with Groebner bases can be found in [S2007].
See [OS2005], for the definition of the polynomial
above.
|