• Aucun résultat trouvé

Minimum distance of cyclic codes

Dans le document Fundamentals of Error-Correcting Codes (Page 170-177)

4 Cyclic codes

✲ ✲ Delay element

4.5 Minimum distance of cyclic codes

With any code, it is important to be able to determine the minimum distance in order to determine its error-correcting capability. It is therefore helpful to have bounds on the minimum distance, particularly lower bounds. There are several known lower bounds for the minimum distance of a cyclic code. The oldest of these is the Bose–Ray-Chaudhuri–

Hocquenghem Bound [28, 132], usually called the BCH Bound, which is fundamental to the definition of the BCH codes presented in Chapter 5. Improvements of this bound have been obtained by Hartmann and Tzeng [117], and later van Lint and Wilson [203]. The BCH Bound, the Hartmann–Tzeng Bound, and a bounding technique of van Lint and Wilson are presented here. The BCH and Hartmann–Tzeng Bounds depend on the zeros of the code and especially on the ability to find strings of “consecutive” zeros.

Before proceeding with the BCH Bound, we state a lemma, used in the proof of the BCH Bound and useful elsewhere as well, about the determinant of a Vandermonde matrix. Let α1, . . . , αsbe elements in a fieldF. Thes×smatrixV =[vi,j], wherevi,j =αij−1is called aVandermonde matrix. Note that the transpose of this matrix is also called a Vandermonde matrix.

Lemma 4.5.1 detV =+

1≤i<jsjαi). In particular,V is nonsingular if the elements α1, . . . , αsare distinct.

In this section we will assume thatCis a cyclic code of lengthn overFq and thatαis a primitiventh root of unity inFqt, wheret=ordn(q). Recall thatT is a defining set for Cprovided the zeros ofCare{αi |iT}. SoT must be a union ofq-cyclotomic cosets modulon. We say thatT contains a set ofs consecutiveelementsSprovided there is a set {b,b+1, . . . ,b+s−1}ofsconsecutive integers such that

{b,b+1, . . . ,b+s−1}modn=ST.

Example 4.5.2 Consider the binary cyclic code C of length 7 with defining set T = {0,3,6,5}. ThenT has a set of three consecutive elementsS= {5,6,0}. Theorem 4.5.3 (BCH Bound) LetCbe a cyclic code of length n overFqwith defining set T . SupposeChas minimum weight d. Assume T containsδ−1consecutive elements for some integerδ. Then dδ.

Proof: By assumption,Chas zeros that includeαb, αb+1, . . . , αb+δ−2. Letc(x) be a nonzero codeword inCof weightw, and let

c(x)=w

j=1

cijxij.

Assume to the contrary that w < δ. As c(αi)=0 for bib+δ−2, MuT=0,

where

M =





αi1b αi2b · · · αiwb αi1(b+1) αi2(b+1) · · · αiw(b+1)

...

αi1(b+w−1) αi2(b+w−1) · · · αiw(b+w−1)





andu=ci1ci2· · ·ciw. Sinceu=0,Mis a singular matrix and hence detM =0. But detM = α(i1+i2+···+iw)bdetV, whereV is the Vandermonde matrix

V =





1 1 · · · 1 αi1 αi2 · · · αiw

...

αi1(w−1) αi2(w−1) · · · αiw(w−1)



.

Since theαij are distinct, detV =0 by Lemma 4.5.1, contradicting detM =0.

Exercise 265 Find a generator polynomial and generator matrix of a triple error-correcting

[15,5] binary cyclic code.

The BCH Bound asserts that you want to find the longest set of consecutive elements in the defining set. However, the defining set depends on the primitive element chosen. Let β =αa, where gcd(a,n)=1; soβis also a primitiventh root of unity. Therefore, ifa−1is the multiplicative inverse ofa modulon, the minimal polynomialsMαs(x) andMβa−1s(x) are equal. So the code with defining setT, relative to the primitive elementα, is the same as the code with defining seta1T modn, relative to the primitive elementβ. Thus when applying the BCH Bound, or any of our other lower bounds, a higher lower bound may be obtained if you apply a multiplier to the defining set. Alternately, the two codesCand a are equivalent and have defining setsT anda−1T (by Corollary 4.4.5) with respect to the same primitive elementα; hence they have the same minimum weight and so either defining set can be used to produce the best bound.

Example 4.5.4 Let C be the [31,25,d] binary cyclic code with defining set T = {0,3,6,12,24,17}. Applying the BCH Bound to C, we see that d ≥2, as the longest consecutive set in T is size 1. However, multiplyingT by 31≡21 (mod 31), we have 3−1T mod 31= {0,1,2,4,8,16}. Replacingαbyα3orCby3and applying the BCH Bound, we obtaind ≥4. In factC is the even weight subcode of the Hamming codeH5

andd =4.

Example 4.5.5 Let C be the [23,12,d] binary cyclic code with defining set T = {1,2,3,4,6,8,9,12,13,16,18}. The BCH Bound implies that d ≥5 as T has four consecutive elements. Notice that T =C1, the 2-cyclotomic coset modulo 23 contain-ing 1. Modulo 23, there are only two other 2-cyclotomic cosets: C0= {0} and C5= {5,7,10,11,14,15,17,19,20,21,22}. Let Ce be the subcode of C of even weight

153 4.5 Minimum distance of cyclic codes

codewords;Ceis cyclic with defining setC0C1 by Exercise 238. By Theorem 4.4.11, Ceis self-orthogonal. HenceCeis doubly-even by Theorem 4.4.18. Therefore its minimum weight is at least 8; it must be exactly 8 by the Sphere Packing Bound. SoCehas nonzero codewords of weights 8, 12, 16, and 20 only. AsCcontains the all-one codeword by Ex-ercise 238,Ce cannot contain a codeword of weight 20 as adding such a codeword to1 produces a weight 3 codeword, contradictingd ≥5. ThereforeCehas nonzero codewords of weights 8, 12, and 16 only. SinceC=Ce1+Ce,Chas nonzero codewords of weights 7, 8, 11, 12, 15, 16, and 23 only. In particulard =7. By Theorem 1.12.3, this code must be

the [23,12,7] binary Golay code.

Hartmann and Tzeng [117] showed that if there are several consecutive sets ofδ−1 elements in the defining set that are spaced properly, then the BCH Bound can be improved.

To state the Hartmann–Tzeng Bound, which we do not prove, we develop the following notation. If AandB are subsets of the integers modulon, then A+B= {a+bmodn| aA,bB}.

Theorem 4.5.6 (Hartmann–Tzeng Bound) Let C be a cyclic code of length n overFq

with defining set T . Let A be a set ofδ−1consecutive elements of T and B= {j bmodn| 0≤ js},wheregcd(b,n)< δ. If A+BT,then the minimum weight d ofCsatisfies dδ+s.

Clearly the BCH Bound is the Hartmann–Tzeng Bound withs=0.

Example 4.5.7 Let C be the binary cyclic code of length 17 with defining set T = {1,2,4,8,9,13,15,16}. There are two consecutive elements inT and so the BCH Bound givesd ≥3. The Hartmann–Tzeng Bound improves this. LetA= {1,2}andB= {0,7,14}.

Soδ=3,b=7, ands=2; also gcd(7,17)=1< δ. SoChas minimum weight d ≥5.

Note thatC is a [17,9] code. By the Griesmer Bound, there is no [17,9,7] code. Hence

d=5 or 6. In fact,d =5; see [203].

Example 4.5.8 Let C be the binary cyclic code of length 31 with defining set T = {1,2,4,5,8,9,10,16,18,20}and minimum weightd. The BCH Bound shows thatd≥4 as the consecutive elements{8,9,10}are inT. Ifd=4, then the minimum weight vectors are in the subcodeCeof all even-like vectors inC. By Exercise 238,Ceis cyclic with defin-ing setTe= {0,1,2,4,5,8,9,10,16,18,20}. Applying the Hartmann–Tzeng Bound with A= {0,1,2}andB= {0,8}(since gcd(8,31)=1< δ=4), the minimum weight ofCeis at least 5. Hence the minimum weight ofCis at least 5, which is in fact the true minimum

weight by [203].

Example 4.5.9 Let C be the binary cyclic code of length 31 with defining set T = {1,2,3,4,5,6,8,9,10,11,12,13,16,17,18,20,21,22,24,26}and minimum weightd. Applying the Hartmann–Tzeng Bound with A= {1,2,3,4,5,6}and B= {0,7}(since gcd(7,31)=1< δ=7), we obtaind ≥8. Suppose thatd =8. Then the cyclic subcode Ceof even-like codewords has defining setTe=T ∪ {0}by Exercise 238. But 17Tecontains the nine consecutive elements{29,30,0,1,2,3,4,5,6}. Hence, the code with defining set 17Tehas minimum weight at least 10 by the BCH Bound, implying thatd=8 is impossible.

Thusd ≥9. We reconsider this code in Example 4.5.14 where we eliminate d =9 and

d =10; the actual value ofdis 11.

Exercise 266 LetCbe the code of Example 4.5.9. Eliminate the possibility thatd =10

by showing that Theorem 4.4.18 applies toCe.

Exercise 267 LetCi be the 2-cyclotomic coset modulon containingi. Apply the BCH Bound and the Hartmann–Tzeng Bound to cyclic codes of given length and defining setT. For which of the codes is one of the bounds improved if you multiply the defining set bya, where gcd(a,n)=1?

(a) n=15 andT =C5C7, (b) n=15 andT =C3C5, (c) n=39 andT =C3C13,

(d) n=45 andT =C1C3C5C9C15,

(e) n=51 andT =C1C9.

Exercise 268 Find the dimensions of the codes in Examples 4.5.8 and 4.5.9. For each code also give upper bounds on the minimum distance from the Griesmer Bound.

Generalizations of the Hartmann–Tzeng Bound discovered by Roos can be found in [296, 297].

In [203] van Lint and Wilson give techniques that can be used to produce lower bounds on the minimum weight of a cyclic code; we present one of these, which we will refer to as the van Lint–Wilson Bounding Technique. The van Lint–Wilson Bounding Technique can be used to prove both the BCH and the Hartmann–Tzeng Bounds. In order to use the van Lint–Wilson Bounding Technique, a sequence of subsets of the integers modulo n, related to the defining set of a code, must be constructed. LetN = {0,1, . . . ,n−1}. Let SN. A sequenceI0,I1,I2, . . .of subsets ofN is anindependent sequence with respect to Sprovided

1. I0= ∅, and

2. ifi >0, either Ii =Ij∪ {a}for some 0≤ j <i such that IjS andaN\S, or Ii = {b} +Ijfor some 0≤ j <iandb=0.

A subsetI ofN isindependent with respect to Sprovided thatIis a set in an independent sequence with respect toS. IfS =N, then only the empty set is independent with respect toS. Recall thatαis a primitiventh root of unity inFqt, wheret =ordn(q).

Theorem 4.5.10 (van Lint–Wilson Bounding Technique) Suppose f(x)is inFq[x]and has degree at most n. Let I be any subset ofNthat is independent with respect to S= {i∈ N | fi)=0}. Then the weight of f(x)is at least the size of I .

Proof: Let f(x)=c1xi1+c2xi2+ · · · +cwxiw, wherecj=0 for 1≤ jw, and letI be any independent set with respect toS. LetI0,I1,I2, . . . be an independent sequence with

155 4.5 Minimum distance of cyclic codes

respect toSsuch thatI =Iifor somei≥0. IfJN, letV(J) be the set of vectors inFwqt

defined by

V(J)= {(αki1, αki2, . . . , αkiw)|kJ}.

If we prove thatV(I) is linearly independent inFwqt, thenw≥ |V(I)| = |I|. Hence it suf-fices to show thatV(Ii) is linearly independent for alli≥0, which we do by induction oni. As I0= ∅, V(I0) is the empty set and hence is linearly independent. Assume that V(Ij) is linearly independent for all 0≤ j <i. Ii is formed in one of two ways. First supposeIi =Ij∪ {a}for some 0≤ j <i, whereIjSandaN\S. By the inductive assumption,V(Ij) is linearly independent. As 0= fk)=c1αki1+c2αki2+ · · · +cwαkiw for kIj, the vector c=(c1,c2, . . . ,cw) is orthogonal to V(Ij). If V(Ii) is linearly dependent, then (αai1, αai2, . . . , αaiw) is in the span of V(Ij) and hence is orthogonal to (c1,c2, . . . ,cw). So 0=c1αai1+c2αai2+ · · · +cwαaiw = fa), a contradiction as a/ S. Now suppose that Ii= {b} +Ij for some 0≤ j <i whereb=0. ThenV(Ii)= {(α(b+k)i1, α(b+k)i2, . . . , α(b+k)iw)|kIj} =V(Ij)D, whereDis the nonsingular diagonal matrix diag(αbi1, . . . , αbiw). AsV(Ij) is independent, so isV(Ii).

The BCH Bound is a corollary of the van Lint–Wilson Bounding Technique.

Corollary 4.5.11 Let C be a cyclic code of length n over Fq. Suppose that f(x) is a nonzero codeword such that fb)= fb+1)= · · · = fb+w−1)=0but fb+w)=0.

Thenwt(f(x))≥w+1.

Proof: Let S = {i ∈N | fi)=0}. So {b,b+1, . . . ,b+w−1} ⊆ S butb+w /S. Inductively define a sequence I0,I1, . . . ,I2w+1 as follows: Let I0= ∅. Let I2i+1=I2i∪ {b+w}for 0≤iwandI2i = {−1} +I2i−1for 1≤iw. InductivelyI2i= {b+wi,b+wi+1, . . . ,b+w−1} ⊆Sfor 0≤iw. ThereforeI0,I1, . . . ,I2w+1is an in-dependent sequence with respect toS. SinceI2w+1= {b,b+1, . . . ,b+w}, the van Lint–

Wilson Bounding Technique implies that wt(f(x))≥ |I2w+1| =w+1.

Exercise 269 Why does Corollary 4.5.11 prove that the BCH Bound holds?

Example 4.5.12 Let C be the [17,9,d] binary cyclic code with defining set T = {1,2,4,8,9,13,15,16}. In Example 4.5.7, we saw that the BCH Bound implies that d≥3, and the Hartmann–Tzeng Bound improves this to d ≥5 using A= {1,2} and B= {0,7,14}. The van Lint–Wilson Bounding Technique gives the same bound using the following argument. Let f(x)∈C be a nonzero codeword of weight less than 5.T is the 2-cyclotomic cosetC1. If fi)=0 for someiC3, then f(x) is a nonzero code-word in the cyclic code with defining setC1C3, which is the repetition code, and hence wt(f(x))=17, a contradiction. LettingS= {iN | f(αi)=0}, we assume thatShas no elements ofC3= {3,5,6,7,10,11,12,14}. Then the following sequence of subsets ofN is independent with respect toS:

I0 = ∅,

I1 =I0∪ {6} = {6}, I2 = {−7} +I1= {16} ⊆S, I3 =I2∪ {6} = {6,16}, I4 = {−7} +I3= {9,16} ⊆S, I5 =I4∪ {6} = {6,9,16}, I6 = {−7} +I5= {2,9,16} ⊆S, I7 =I6∪ {3} = {2,3,9,16}, I8 = {−1} +I7= {1,2,8,15} ⊆S, I9 =I8∪ {3} = {1,2,3,8,15}.

Since wt(f(x))≥ |I9| =5, the van Lint–Wilson Bounding Technique shows thatd ≥5. In

fact,d =5 by [203].

This example shows the difficulty in applying the van Lint–Wilson Bounding Technique.

In this example, the Hartmann–Tzeng and van Lint–Wilson Bounding Technique give the same bound. In this example, in order to apply the van Lint–Wilson Bounding Technique, we construct an independent sequence whose sets are very closely related to the setsAand B used in the Hartmann–Tzeng Bound. This construction mimics that used in the proof of Corollary 4.5.11 where we showed that the BCH Bound follows from the van Lint–

Wilson Bounding Technique. If you generalize the construction in this example, you can show that the Hartmann–Tzeng Bound also follows from the van Lint–Wilson Bounding Technique.

Exercise 270 Prove that the Hartmann–Tzeng Bound follows from the van Lint–Wilson

Bounding Technique. Hint: See Example 4.5.12.

Exercise 271 Let C be the [21,13,d] binary cyclic code with defining set T = {3,6,7,9,12,14,15,18}. Find a lower bound on the minimum weight ofC using the BCH Bound, the Hartmann–Tzeng Bound, and the van Lint–Wilson Bounding Technique.

Also using the van Lint–Wilson Bounding Technique, show that an odd weight codeword has weight at least 7. Hint: For the latter, note that α0 is not a root of an odd weight

codeword.

Exercise 272 Let C be the [41,21,d] binary cyclic code with defining set T = {3,6,7,11,12,13,14,15,17,19,22,24,26,27,28,29,30,34,35,38}.

(a) Find the 2-cyclotomic cosets modulo 41.

(b) Let f(x) be a nonzero codeword and letS= {i ∈N | fi)=0}. Show that if 1∈S, then f(x) is either0or 1+x+ · · · +x40.

(c) Assume that 1∈/ S. Show that eitherS =T orS=T ∪ {0}.

(d) Now assume that f(x) has weight 8 or less. Show, by applying the rules for construct-ing independent sequences, that the followconstruct-ing sets are part of an independent sequence

157 4.5 Minimum distance of cyclic codes

with respect to S: {28}, {12,17}, {19,22,27}, {3,6,11,30}, {11,12,14,19,38}, {6,12,26,27,29,34},{6,7,13,27,28,30,35}, and{1,6,7,13,27,28,30,35}.

(e) From part (d), show that wt(f(x))≥8.

(f) If wt(f(x))=8, show that {0,14,15,17,22,29,34,35} and {0,1,14,15, 17,22, 29,34,35}are independent with respect toS.

(g) Show thatd≥9. (In fact,d=9 by [203].)

We conclude this section with the binary version of a result of McEliece [231] that shows what powers of 2 are divisors of a binary cyclic code; we give only a partial proof as the full proof is very difficult. Recall thatis a divisor of a code provided every codeword has weight a multiple of.

Theorem 4.5.13 (McEliece) LetCbe a binary cyclic code with defining set T . Let a≥2 be the smallest number of elements inN \T,with repetitions allowed,that sum to0. Then 2a1is a divisor ofCbut2a is not.

Proof: We prove only the casea =2 and part of the casea=3.

Ifa=2, then 0∈T; otherwisea=1. ThusC has only even weight vectors by Exer-cise 238 proving that 2a1=2 is a divisor ofC. By definition ofa, there is an element bN \T such that−bmodnN \T. SobN\(−1)T modn; as 0T,b=0. By Theorem 4.4.9N \(−1)T modn is the defining set forC. If 2a =4 is a divisor ofC, by Theorem 1.4.8,Cis self-orthogonal. HenceCC and by Corollary 4.2.5 (or Exer-cise 239),N \(−1)T modnT. This is a contradiction asbN \(−1)T modn and bN \T.

Ifa =3, we only prove that 2a−1=4 is a divisor ofC. We show thatN \(−1)T modnT. Suppose not. Then there exists bN\(−1)T modn withbT. So−bmodnN\T and bN \T. Since b+(−b)=0, a=3, and this is a contradiction. So N\(−1)T modnT. ThereforeCCby Theorem 4.4.9 and Corollary 4.2.5 (or Ex-ercise 239). ThusCis a self-orthogonal binary cyclic code which must be doubly-even by

Theorem 4.4.18.

Example 4.5.14 Let C be the [31,11,d] binary cyclic code with defining set T = {1,2,3,4,5,6,8,9,10,11,12,13,16,17,18,20,21,22,24,26} that we considered in Example 4.5.9. There we showed that d ≥9. The subcode Ce of even weight vec-tors inC is a cyclic code with defining set Te= {0} ∪T by Exercise 238. Notice that N\Te= {7,14,15,19,23,25,27,28,29,30}and that the sum of any two elements in this set is not 0 modulo 31, but 7+25+30≡0 (mod 31). So a=3 in McEliece’s Theorem applied toCe. Thus all vectors inCe, and hence all even weight vectors in C, have weights a multiple of 4. In particular,Chas no codewords of weight 10. Furthermore 1+x+ · · · +x30=(xn−1)/(x−1)∈C as 0∈/T. Thus ifC has a vector of weightw, it has a vector of weight 31−w. Specifically, ifC has a codeword of weight 9, it has a codeword of weight 22, a contradiction. Thus we haved ≥11. The Griesmer Bound gives

d≤12. By [203],d =11.

Exercise 273 LetC be the [21,9,d] binary cyclic code with defining setT = {0,1,2, 3,4,6,7,8,11,12,14,16}. Show thatd≥8.

Dans le document Fundamentals of Error-Correcting Codes (Page 170-177)