closed formulas for the error locator polynomials of
play

Closed formulas for the error locator polynomials of cyclic codes - PDF document

Closed formulas for the error locator polynomials of cyclic codes Dedicated to Tom Hholdt in honour of his 60-th birthday by Ruud Pellikaan Discrete Mathematics Technical University of Eindhoven June 2, 2005 Decoding cyclic codes beyond


  1. Closed formulas for the error locator polynomials of cyclic codes Dedicated to Tom Høholdt in honour of his 60-th birthday by Ruud Pellikaan Discrete Mathematics Technical University of Eindhoven June 2, 2005

  2. Decoding cyclic codes beyond the BCH error-correcting capacity. Roughly four methods: I) Buchberger’s algorithm, Gr¨ obner basis syndrome equations in error-positions and values II) Newton identities in syndromes and coefficients of error-locator polynomial III) Majority voting of unknown syndromes, error-locating pairs IV) Sudan’s list decoding

  3. Ternary Golay code [11,6,5] Cyclic code of length n = 11 over F 3 11 divides 3 5 − 1: 11 ∗ 22 = 242 α ∈ F 243 of order 11 c ( x ) = c 0 + c 1 x + · · · + c 10 x 10 with c i ∈ F 3 and x 11 = 1 is a codeword if and only if c ( α ) = 0

  4. if c ( x )is a codeword, then c ( α ) = 0 so c ( α 3 ) = 0, c ( α 9 ) = 0, . . . Hence c ( α i ) = 0 for i one of 1 , 3 , 9 , 27 ≡ 5 , 15 ≡ 4 , 12 ≡ 1 that is 1 , − , 3 , 4 , 5 , − , − , − , 9 , − , −

  5. complete defining set 1 , − , 3 , 4 , 5 , − , − , − , 9 , − , − hence the dimension is 11 − 5 = 6 minimum distance d is at least d BCH = 4 in fact d = 5 so 2 error-correcting

  6. Error-correction c ( x ) the codeword sent over a channel y ( x ) the received word y ( x ) = c ( x ) + e ( x ) with e ( x ) the error vector/polynomial s j = e ( α j ) the j -th syndrome If j in the complete defining set, then s j = y ( α j ) is a known syndrome, otherwise an unknown syndrome

  7. Now s 3 j = s 3 j Hence s 3 s 9 1 = s 3 1 = s 9 s 27 s 81 = s 5 = s 4 1 1 s 243 = s 1 1

  8. in case of t errors error polynomial e ( x ) has weight t supported at positions i 1 < · · · < i t e ( x ) = e i 1 x i 1 + · · · + e i t x i t

  9. e ( α j ) = e i 1 α ji 1 + · · · + e i t α ji t s j = e ( α j ) = y 1 x j 1 + · · · + y t x j t x w = α i w error position y w = e i w error value

  10. Minimum distance d = 5 Assume that number of errors t ≤ 2 Then c ( x ) is the unique closest codeword and s 1 = y 1 x 1 + y 2 x 2 y 3 i = y i and x 11 = 1 for i = 1 , 2 i

  11. Try to solve these nonlinear equations by clever manipulations, or apply Buchberger’s algorithm for a Gr¨ obner basis 1990-1994: Brinton Cooper III and Chen-Helleseth-Reed-Truong

  12. Polynomial equations S 1 = Y 1 X 1 + Y 2 X 2 Y 2 1 = 1 , X 11 = 1 , Y 2 = 1 , X 11 = 1 1 2 ( X 1 − X 2 ) 242 = 1 in the variables with lex order S 1 < X 1 < X 2 < Y 1 < Y 2 elimination order

  13. Computer algebra packages Maple, Mathematica: slow Singular, Magma: fast computing Gr¨ obner bases

  14. Example with Magma P<Y2,Y1,X2,X1,S1> := PolynomialRing(GF(3),5); I := ideal<P|X1*Y1+X2*Y2-S1, Y1^2-1,Y2^2-1,X1^11-1,X2^11-1, (X1-X2)^242-1>; GroebnerBasis(I);

  15. Magma V2.11-10 Fri May 13 2005 08:29:55 on modul ------------------------------------- [ . . . . X1^2 + 2*X1*S1^144 + X1*S1^100 + 2*X1*S1^34 + X1*S1^12 + 2*S1^200 + S1^178 + 2*S1^156 + 2*S1^134 + S1^90 + 2*S1^68 + 2*S1^46 + S1^24 + 2*S1^2, S1^220 + S1^198 + S1^176 + S1^154 + S1^132 + S1^110 + S1^88 + S1^66 + S1^44 + S1^22 + 1 ] Total time: 0.230 seconds, Total memory usage: 3.99MB

  16. X1^2 + 2*X1*S1^144 + X1*S1^100 + 2*X1*S1^34 + X1*S1^12 + 2*S1^200 + S1^178 + 2*S1^156 + 2*S1^134 + S1^90 + 2*S1^68 + 2*S1^46 + S1^24 + 2*S1^2 Coefficient of X 2 1 : 1 Coefficient of X 1 : 2 S 144 + S 100 + 2 S 34 + S 12 1 1 1 1 Coefficient of 1: 2 S 200 + S 178 + 2 S 156 + 2 S 134 + 1 1 1 1 S 90 + 2 S 68 + 2 S 46 + S 24 + 2 S 2 1 1 1 1 1

  17. Closed formula of error-locator polynomial σ ( X ) = ( X − x 1 )( X − x 2 ) = 1 + σ 1 X + σ 2 X 2 − S 144 + S 100 − S 34 + S 12 σ 1 ( S 1 ) = 1 1 1 1 − S 200 + S 178 − S 156 − S 134 σ 2 ( S 1 ) = + 1 1 1 1 S 90 − S 68 − S 46 + S 24 − S 2 1 1 1 1 1

  18. Generic case of cyclic code with 1 , 2 , . . . , 2 t in defining set and received word with at most t errors Syndrome equations : S j = Y 1 X j 1 + Y 2 X j 2 + · · · + Y t X j j = 1 , . . . , 2 t, t Error-locator polynomial t t σ ( t ) σ ( t ) ( X ) = X t − j � � ( X − X i ) = j i =1 j =0

  19. Elementary symmetric functions: σ ( t ) = 1 0 σ ( t ) = − ( X 1 + X 2 + · · · + X t ) 1 . . . σ ( t ) = ( − 1) t X 1 X 2 · · · X t t σ ( t ) = ( − 1) j � X i 1 X i 2 · · · X i t j 1 ≤ i 1 < ··· <i j ≤ t

  20. Peterson-Arimoto use Generalized Newton identities :  S t +1 + σ 1 S t + + σ t S 1 = 0 · · ·    S t +2 + σ 1 S t +1 + + σ t S 2 = 0 · · ·  . . . . . . . . .    S 2 t + σ 1 S 2 t − 1 + + σ t S t = 0 . · · ·  to solve linear equations in the variables σ j with coefficients in the S r .

  21. Matrix equation:   1     S t +1 S t S 1 0 · · · σ 1   S t +2 S t +1 S 2 0   · · ·       σ 2 =  .  . . . .   .  . . . . .   . . . . .     .  .  .      S 2 t S 2 t − 1 S t 0 · · ·   σ t or equivalently  S t S 1   σ 1   S t +1  · · · S t +1 S 2 σ 2 S t +2 · · ·        = −  .  . . .   .   .  . . . . . . . . . .           S 2 t − 1 S t σ t S 2 t · · ·

  22. Case t = 2 � S 2 σ 1 + S 1 σ 2 = − S 3 S 3 σ 1 + S 2 σ 2 = − S 4 Cramer’s rule : − S 3 S 1 − S 4 S 2 = S 1 S 4 − S 2 S 3 σ 1 = S 2 S 2 S 1 2 − S 1 S 3 S 3 S 2 and similarly σ 2 = S 2 3 − S 2 S 4 S 2 2 − S 1 S 3

  23. Generic error-locator polynomial for t = 2 2 − S 1 S 3 ) X 2 + ( S 1 S 4 − S 2 S 3 ) X + ( S 2 ( S 2 3 − S 2 S 4 ) X 2 � � X 1 � � � � = S 3 S 2 S 1 � � � � � S 4 S 3 S 2 � � �

  24. Closed formula of generic error-locator polynomial � � X t X t − 1 1 · · · � � � � S t +1 S t S 1 � · · · � � � σ ( t ) ( X ) = � � S t +2 S t +1 S 2 · · · � � . . . . � � . . . . . . . . � � � � S 2 t S 2 t − 1 S t � · · · � � �

  25. Binary cyclic codes error values are always one: Y i = 1, syndromes: S 2 j = S 2 j equations: S 2 j − 1 = X 2 j − 1 + X 2 j − 1 + · · · + X 2 j − 1 1 2 t for j = 1 , . . . , t

  26. Algebraic system of t equations in 2 t variables. Eliminate the X 2 , . . . , X t . Gives one equation β ( t ) ( X 1 ) = 0 in the variable X 1 with coefficients β ( t ) ( S 1 , S 3 . . . , S 2 t − 1 ) i

  27. For t = 1 β (1) ( X ) = X + S 1 Compare: σ (1) ( X ) = S 1 X − S 2 Reduce mod 2 and S 2 j = S 2 j σ (1) ( X ) = S 1 X + S 2 1 = S 1 β (1) ( X )

  28. For t = 2, β (2) ( X ) = S 1 X 2 + S 2 1 X + ( S 3 + S 3 1 ) Compare: σ (2) ( X ) = 2 ) X 2 − ( S 4 S 1 − S 2 S 3 ) X + ( S 4 S 2 − S 2 ( S 3 S 1 − S 2 3 )

  29. Reduction mod 2 and S 2 j = S 2 j gives 1 ) X 2 + ( S 3 S 3 ( S 3 S 1 + S 4 1 + S 5 1 ) X + ( S 2 3 + S 6 1 ) Divide by S 3 + S 3 1 S 1 X 2 + S 2 1 X + ( S 3 + S 3 1 ) is again β (2) ( X )

  30. For t = 3, β (3) ( X ) = 1 ) X 3 + S 1 ( S 3 + S 3 ( S 3 + S 3 1 ) X 2 + ( S 5 + S 3 S 2 1 ) X + ( S 5 S 1 + S 2 3 + S 3 S 3 1 + S 6 1 ) Compare: σ (3) ( X ) = ( S 5 S 3 S 1 − S 5 S 2 2 − S 2 4 S 1 + 2 S 4 S 3 S 2 − S 3 3 ) X 3 − ( S 6 S 3 S 1 − S 6 S 2 2 − S 5 S 4 S 1 + S 5 S 3 S 2 − S 4 S 2 3 + S 2 4 S 2 ) X 2 +( S 6 S 4 S 1 − S 6 S 3 S 2 − S 2 5 S 1 + S 5 S 2 3 + S 5 S 4 S 2 − S 2 4 S 3 ) X − ( S 6 S 4 S 2 − S 2 3 S 6 − S 2 5 S 2 + 2 S 5 S 4 S 3 − S 3 4 )

  31. Reduction mod 2 and S 2 j = S 2 j gives ( S 5 S 3 S 1 + S 5 S 4 1 + S 3 3 + S 9 1 ) X 3 + ( S 3 3 S 1 + S 5 S 5 1 + S 5 S 3 S 2 1 + S 10 1 ) X 2 + ( S 2 5 S 1 + S 5 S 2 3 + S 5 S 6 1 + S 3 3 S 2 1 + S 2 3 S 5 1 + S 3 S 8 1 ) X + ( S 2 5 S 2 1 + S 4 3 + S 2 3 S 6 1 + S 12 1 ) Division by ( S 3 S 3 1 + S 2 3 + S 5 S 1 + S 6 1 ) gives 1 ) X 3 + S 1 ( S 3 + S 3 ( S 3 + S 3 1 ) X 2 + ( S 5 + S 3 S 2 1 ) X + ( S 5 S 1 + S 2 3 + S 3 S 3 1 + S 6 1 ) is again β (3) ( X )

  32. General result – β ( t ) ( X ) weighted homogeneous of degree t ( t + 1) / 2 – β ( t ) = β ( t +1) t 0 – β ( t ) = S 1 β ( t ) 1 0 – The reduction of σ ( t ) ( X ) modulo 2 and S 2 j = S 2 j is equal to β ( t ) 0 β ( t ) ( X )

  33. Newton identities  S 1 + σ 1 +0 +0 + · · · +0 = 0    S 2 + σ 1 S 1 +2 σ 2 +0 + · · · +0 = 0     S 3 + σ 1 S 2 + σ 2 S 1 +3 σ 3 + · · · +0 = 0 . . . . . . . . .      S t + σ 1 S t − 1 + σ 2 S t − 2 + σ 3 S t − 3 + · · · + tσ t = 0 .    + + + = 0 S t +1 σ 1 S t σ t S 1 · · ·   + + + = 0  S t +2 σ 1 S t +1 σ t S 2 · · ·  . . . . . . . . .    S 2 t + σ 1 S 2 t − 1 + + σ t S t = 0 . · · · 

Recommend


More recommend