Nigel Boston Claude Shannon Institute University College Dublin Extended Binary Golay Code
Total Page:16
File Type:pdf, Size:1020Kb
Golay Pseudocodewords Nigel Boston Claude Shannon Institute University College Dublin Extended Binary Golay Code • Encodes 12 bits of data in a 24-bit word so that any 3-bit error is corrected and any 4- bit error detected • Particular 12-diml subspace of GF(2)24 • Automorphism group is Mathieu group M24 Voyager 1 and 2 (1979 and 1980) • Transmitted hundreds of colour pictures of Jupiter and Saturn • US standards for ALE (automatic link establishment) in high frequency systems use this code for forward error correction Generator Matrix Properties of the Code • It is the span of the 12 rows of that matrix • Every vector ≠ 0 has ≥ 8 ones (weight ≥ 8) • It is therefore a [24,12,8] binary linear code • Its weight enumerator (which counts words of each weight) is: x24 + 759x16t8 + 2576x12t12 + 759x8t16 + t24 Gleason’s Theory (ICM 1970) • If C is a self-dual binary linear code, then by MacWilliams its weight enumerator W is invariant under (x,t) a 2-1/2(x+t,x-t) • If all weights are divisible by 4, then W is also invariant under (x,t) a (x,jt) • W is invariant under a group of order 192 • Follows W is a polynomial in the weight enumerators of Hamming and Golay codes Broue-Enguehard Isomorphism • Algebra isomorphism: modular forms of level one, weight divisible by 4 to ring containing weight enumerators • Has been generalized in many directions, e.g Siegel modular forms, half-integral weight,… Tail-Biting Trellises Theory of TBT’s • That’s a TBT for the [8,4,4] Hamming code • The labels on paths that start and finish at the same point yield the codewords • The TBT approach allows for important decoding algorithms (forward-backward, Viterbi, …) • Pseudocodewords give suboptimal decoding Pseudocodewords • Unwrapping a TBT G gives a conventional trellis, called a computation tree G’ • The min-sum algorithm on G’ behaves as the iterative algorithm on G • Pseudocodewords satisfy constraints of G’ • Codeword = pseudocodeword of period 1 • There exist pseudocodewords of period >1 Pseudoweight • Wiberg found a formula for the effective weight of a pseudocodeword for the AWGN 2 2 channel, namely (∑ nj) /∑ nj • Here nj is the number of edges of G’ above the jth edge of G that have label one • Example: 01 01 01 10 followed by 11 00 10 10 labels a pseudocodeword of period 2, namely 12 01 11 20 - pseudowt 82/12 = 5.33 Minimal TBT for Golay Code • In 1999, Calderbank, Forney, and Vardy solved an old problem asking for a 16-state TBT for the extended binary Golay code • Join together three copies of the TBT on the left Minimal Pseudoweight? • Codeword of weight 8 has pseudoweight 8 • Fundamental question- is there a nonzero pseudocodeword of pseudoweight <8 ? • Subject of private emails among experts • Example (period 2): nj=1 in 8 places,=2 in 2 places, =0 in 14 places- pseudowt 122/16=9 • Example (period 3): nj=1 in 6 places,=2 in 2 places,=3 in 2 places, else =0. Get 162/32=8 Period 2 Pseudocodewords • The labels on the paths of period 2 form a [48,24,8] binary linear code C2 • The generator matrix given earlier for the Golay code is a TOGM (trellis-oriented generator matrix) • We can use this to obtain a TOGM for C2 given on the next slide Generator Matrix for C2 Pseudoweight Distribution • 224 is small enough for all pseudoweights to be computed • No pseudocodeword of period 2 and pseudoweight < 8 • For period n, have a [24n,12n,8] binary linear code Cn too big! Words of Low Weight • The 1053 words of C2 of pseudoweight 8 are the 759 Golay words of weight 8 plus the 294 words of C2 of weight 8 • Cn has 147n words of weight 8 (n > 1) • The weight enumerator of C2 is: x48 + 294x40t8 +14944x36t12 + 543327x32t16 + 3978912x28t20 + 7702260x24t24 + 3978912x20t28 + 543327x16t32 + 14944x12t36 + 294x8t40 + t48 Conjecture • I conjecture that the set of pseudoweights that arise from codewords in Cn of weight w is independent of n. Call this set S(w) • Conjecture: S(8)= {8.00}, S(12)={9.00,12.00}, S(16)={8.00, 9.14,10.67,12.80,16.00}, S(20)={9.09,10.00,11.11,12.50,14.29,16.67}, S(24)={8.00,9.00,9.60,10.29,11.08,12.00,13.09, 14.40,16.00,18.00}, … Better Weight Enumerator • The pseudocodeword 12 02 10 11 01 21 12 20 10 00 00 02 has 10 zeros, 8 ones, 6 twos • Attach to this the monomial x6 y8 t10 • Sum over all 224 pseudocodewords to get a multivariate weight enumerator W2(x,y,t) where W (x,0,t) is the weight enumerator of 2 2 the Golay code and x=y gives that of C2 Multivariate Weight Enumerator 24 16 8 16 8 14 8 2 W2(x,y,t) = x + 294x y + 759x t + 9792x y t + 5152x12y12 + 178248x12y8t4 + 2576x12t12 + 340032x10y12t2 + 748608x10y8t6 + 24288x8y16 + 2550240x8y12t4 + 1234980x8y8t8 + 759x8t16 + 680064x6y16t2 + 4760448x6y12t6 + 748608x6y8t10 + 1700160x4y16t4 + 2550240x4y12t8 + 178248x4y8t12 + 680064x2y16t6 + 340032x2y12t10 + 9792x2y8t14 + 4096y24 + 24288y16t8 + 5152y12t12 + 294y8t16 + t24 Properties of New Enumerator • In addition to those noted already, W2(x,y,t) is symmetric under x ↔ t. By observing which monomials arise, we can tell that no pseudocodeword has pseudoweight < 8 8 8 • W2(x,y,t) = G + 294 y r(16) - 25488 y (r(1)r(2)r(4))2 + 5152 y12 r(12) + 24288y16 r(8), where G is the Golay enumerator and r(n) the even weight codes’ ((x+t)n+(x-t)n)/2 Nicer Formula Let J(x,y,t) = x24 + y24 + t24 + 759(x16y8+x8y16+x16t8+x8t16+y8t16+y16t8) + 12 12 12 12 12 12 8 8 8 2576(x y +x t +y t ) + 3186x y t 12 Then W2(x,y,t) = 2 J((x+t)/2, y, (x-t)/2) 2 The curve in P cut out by W2(x,y,t) = 0 has large automorphism group, order 384 Period 3 Pseudocodewords • Define W3(x,y,z,t) similarly • Computing low weight codewords gives: 24 16 8 16 8 W3(x,y,z,t) = x + 441x y + 513x z + 759x16t8 + 7560x14y8z2 + 288x14y6z2t2 + … 36 There are too many pseudocodewords (2 ) to allow computation of W3 by brute force Symmetry under x ↔ t, y ↔ z New Invariant Theory n n-1 n-j j n • Let x0=x , x1=x t, …, xj=x t , …, xn=t • Gleason’s maps (x,t) a 2-1/2(x+t,x-t) and (x,t) a (x,jt) induce maps on (x0,…,xn) • For n=2, these plus (x,y,t) a (x,y,-t) generate 384 maps leaving W2 invariant • For n=3, these plus (x,y,z,t) a (x,y,-z,-t) generate 1152 maps leaving W3 invariant New Invariant Theory II • For each n, get a group Gn of (n+1) by (n+1) complex matrices that leave Wn invariant • MAGMA computes the homogeneous polynomials of degree 24 in n+1 variables invariant under Gn • Wn is a simple linear combination of these Weight Enumerator W3 24 16 8 16 8 16 8 14 8 2 W3=x +441x y +513x z +759x t +7560x y z + 288x14y6z2t2+14112x14z10+11520x13y7z3t+2304x13 y5z3t3+4608x12y12+792x12y10t2+132192x12y8z4+14 4x12y8t4+239040x12y6z4t2+132840x12y4z4t4+17085 6x12z12+2576x12t12+9504x11y11zt+23040x11y9zt3+1 456704x11y7z5t+2304x11y7zt5+1456704x11y5z5t3+1 8432x11y3z5t5+237384x10y12z2+676080x10y10z2t2+ 3406968x10y8z6+700920x10y8z2t4+11168928x10y6z 6t2+213120x10y6z2t6+3016080x10y4z6t4+213984x10 y2z6t6+1118880x10z14+3238272x9y11z3t+7850016x 9y9z3t3 +39790656x9y7z7t+3196800x9y7z3t5 + … W3 continued … +49955130y8z8t8+513y8t16+79634016y6z16t2 +109442880y6z12t6+3406968y6z8t10+220676 40y4z16t4+6877440y4z12t8+132192y4z8t12+12 52800y2z16t6+237384y2z12t10+7560y2z8t14+3 3291z24+16371z16t8+4608z12t12+441z8t16+t24 212 explicit terms, all with pseudoweight ≥ 8 Period 4 Pseudocodewords • G4 ≤ GL(5,C) has order 384 • MAGMA finds a basis of 153 invariant polynomials of degree 24 • 87 have every monomial of pseudowt ≥ 8 • Exclude others using unique monomials coming from words of C4 of weight ≤ 24 • 248 pseudocodewords all have pseudowt ≥ 8 Remarks • There exist codes with AWGN pseudoweights less than the minimum distance • There are pseudoweights for other channels - for the BSC, it’s twice the median of the descendingly sorted nj. There exist Golay pseudocodewords with BSC pseudowt < 8.