SLIDE 1 Closed formulas for the error locator polynomials
Dedicated to Tom Høholdt in honour of his 60-th birthday by Ruud Pellikaan Discrete Mathematics Technical University of Eindhoven June 2, 2005
SLIDE 2 Decoding cyclic codes
beyond the BCH error-correcting capacity. Roughly four methods: I) Buchberger’s algorithm, Gr¨
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
SLIDE 3
Ternary Golay code [11,6,5]
Cyclic code of length n = 11 over F3 11 divides 35 − 1: 11 ∗ 22 = 242 α ∈ F243 of order 11 c(x) = c0 + c1x + · · · + c10x10 with ci ∈ F3 and x11 = 1 is a codeword if and only if c(α) = 0
SLIDE 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, −, −
SLIDE 5
complete defining set 1, −, 3, 4, 5, −, −, −, 9, −, − hence the dimension is 11 − 5 = 6 minimum distance d is at least dBCH = 4 in fact d = 5 so 2 error-correcting
SLIDE 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 sj = e(αj) the j-th syndrome If j in the complete defining set, then sj = y(αj) is a known syndrome,
- therwise an unknown syndrome
SLIDE 7
Now s3
j = s3j
Hence s3
1 = s3
s9
1 = s9
s27
1
= s5 s81
1
= s4 s243
1
= s1
SLIDE 8
in case of t errors error polynomial e(x) has weight t supported at positions i1 < · · · < it e(x) = ei1xi1 + · · · + eitxit
SLIDE 9
e(αj) = ei1αji1 + · · · + eitαjit sj = e(αj) = y1xj
1 + · · · + ytxj t
xw = αiw error position yw = eiw error value
SLIDE 10
Minimum distance d = 5 Assume that number of errors t ≤ 2 Then c(x) is the unique closest codeword and s1 = y1x1 + y2x2 y3
i = yi and x11 i
= 1 for i = 1, 2
SLIDE 11 Try to solve these nonlinear equations by clever manipulations,
- r apply Buchberger’s algorithm
for a Gr¨
1990-1994: Brinton Cooper III and Chen-Helleseth-Reed-Truong
SLIDE 12
Polynomial equations S1 = Y1X1 + Y2X2 Y 2
1 = 1, X11 1
= 1, Y2 = 1, X11
2
= 1 (X1 − X2)242 = 1 in the variables with lex order S1 < X1 < X2 < Y1 < Y2 elimination order
SLIDE 13 Computer algebra packages Maple, Mathematica: slow Singular, Magma: fast computing Gr¨
SLIDE 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);
SLIDE 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
SLIDE 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 X2
1: 1
Coefficient of X1: 2S144
1
+ S100
1
+ 2S34
1
+ S12
1
Coefficient of 1: 2S200
1
+ S178
1
+ 2S156
1
+ 2S134
1
+ S90
1
+ 2S68
1
+ 2S46
1
+ S24
1
+ 2S2
1
SLIDE 17
Closed formula of error-locator polynomial σ(X) = (X − x1)(X − x2) = 1 + σ1X + σ2X2 σ1(S1) = −S144
1
+ S100
1
− S34
1
+ S12
1
σ2(S1) = −S200
1
+ S178
1
− S156
1
− S134
1
+ S90
1
− S68
1
− S46
1
+ S24
1
− S2
1
SLIDE 18 Generic case of cyclic code with 1, 2, . . . , 2t in defining set and received word with at most t errors Syndrome equations: Sj = Y1Xj
1 + Y2Xj 2 + · · · + YtXj t
j = 1, . . . , 2t, Error-locator polynomial σ(t)(X) =
t
(X − Xi) =
t
σ(t)
j
Xt−j
SLIDE 19 Elementary symmetric functions: σ(t) = 1 σ(t)
1
= −(X1 + X2 + · · · + Xt) . . . σ(t)
t
= (−1)tX1X2 · · · Xt σ(t)
j
= (−1)j
Xi1Xi2 · · · Xit
SLIDE 20
Peterson-Arimoto use Generalized Newton identities:
St+1 + σ1St + · · · + σtS1 = St+2 + σ1St+1 + · · · + σtS2 = . . . . . . . . . S2t + σ1S2t−1 + · · · + σtSt = 0. to solve linear equations in the variables σj with coefficients in the Sr.
SLIDE 21 Matrix equation:
St+1 St · · · S1 St+2 St+1 · · · S2 . . . . . . . . . . . . S2t S2t−1 · · · St
1 σ1 σ2 . . . σt
=
. . .
.
St · · · S1 St+1 · · · S2 . . . . . . . . . S2t−1 · · · St
σ1 σ2 . . . σt
= −
St+1 St+2 . . . S2t
.
SLIDE 22 Case t = 2
+ S1σ2 = −S3 S3σ1 + S2σ2 = −S4 Cramer’s rule: σ1 = −S3 S1 −S4 S2 S2 S1 S3 S2 = S1S4 − S2S3 S2
2 − S1S3
and similarly σ2 = S2
3 − S2S4
S2
2 − S1S3
SLIDE 23 Generic error-locator polynomial for t = 2 (S2
2 − S1S3)X2 + (S1S4 − S2S3)X + (S2 3 − S2S4)
=
X 1 S3 S2 S1 S4 S3 S2
SLIDE 24 Closed formula of generic error-locator polynomial σ(t)(X) =
Xt−1 · · · 1 St+1 St · · · S1 St+2 St+1 · · · S2 . . . . . . . . . . . . S2t S2t−1 · · · St
SLIDE 25
Binary cyclic codes
error values are always one: Yi = 1, syndromes: S2j = S2
j
equations: S2j−1 = X2j−1
1
+ X2j−1
2
+ · · · + X2j−1
t
for j = 1, . . . , t
SLIDE 26
Algebraic system of t equations in 2t variables. Eliminate the X2, . . . , Xt. Gives one equation β(t)(X1) = 0 in the variable X1 with coefficients β(t)
i
(S1, S3 . . . , S2t−1)
SLIDE 27
For t = 1 β(1)(X) = X + S1 Compare: σ(1)(X) = S1X − S2 Reduce mod 2 and S2j = S2
j
σ(1)(X) = S1X + S2
1 = S1β(1)(X)
SLIDE 28
For t = 2, β(2)(X) = S1X2 + S2
1X + (S3 + S3 1)
Compare: σ(2)(X) = (S3S1 − S2
2)X2 − (S4S1 − S2S3)X + (S4S2 − S2 3)
SLIDE 29
Reduction mod 2 and S2j = S2
j gives
(S3S1 + S4
1)X2 + (S3S3 1 + S5 1)X + (S2 3 + S6 1)
Divide by S3 + S3
1
S1X2 + S2
1X + (S3 + S3 1)
is again β(2)(X)
SLIDE 30
For t = 3, β(3)(X) = (S3 + S3
1)X3 + S1(S3 + S3 1)X2+
(S5 + S3S2
1)X + (S5S1 + S2 3 + S3S3 1 + S6 1)
Compare: σ(3)(X) = (S5S3S1 − S5S2
2 − S2 4S1 + 2S4S3S2 − S3 3)X3
−(S6S3S1−S6S2
2−S5S4S1+S5S3S2−S4S2 3+S2 4S2)X2
+(S6S4S1−S6S3S2−S2
5S1+S5S2 3+S5S4S2−S2 4S3)X
−(S6S4S2 − S2
3S6 − S2 5S2 + 2S5S4S3 − S3 4)
SLIDE 31
Reduction mod 2 and S2j = S2
j gives
(S5S3S1 + S5S4
1 + S3 3 + S9 1)X3+
(S3
3S1 + S5S5 1 + S5S3S2 1 + S10 1 )X2+
(S2
5S1+S5S2 3 +S5S6 1 +S3 3S2 1 +S2 3S5 1 +S3S8 1)X+
(S2
5S2 1 + S4 3 + S2 3S6 1 + S12 1 )
Division by (S3S3
1 + S2 3 + S5S1 + S6 1) gives
(S3 + S3
1)X3 + S1(S3 + S3 1)X2+
(S5 + S3S2
1)X + (S5S1 + S2 3 + S3S3 1 + S6 1)
is again β(3)(X)
SLIDE 32
General result – β(t)(X) weighted homogeneous of degree t(t + 1)/2 – β(t)
t
= β(t+1) – β(t)
1
= S1β(t) – The reduction of σ(t)(X) modulo 2 and S2j = S2
j
is equal to β(t)
0 β(t)(X)
SLIDE 33
Newton identities
S1 +σ1 +0 +0 + · · · +0 = 0 S2 +σ1S1 +2σ2 +0 + · · · +0 = 0 S3 +σ1S2 +σ2S1 +3σ3 + · · · +0 = 0 . . . . . . . . . St +σ1St−1 +σ2St−2 +σ3St−3 + · · · +tσt = 0.
St+1 + σ1St + · · · + σtS1 = St+2 + σ1St+1 + · · · + σtS2 = . . . . . . . . . S2t + σ1S2t−1 + · · · + σtSt = 0.