Error Correcting Codes: Combinatorics, Algorithms and Applications (Spring 2009) Lecture 24: BCH Codes March 20, 2009 Lecturer: Atri Rudra Scribe: Swapnoneel Roy 1 Introduction In this lecture we had an introduction to a new family of codes known as BCH codes named after their discoverers, R.C Bose and D.K. Ray-Chaudhuri (1960), and independently by A. Hocquenghem (1959). A lower bound for the BCH code was established in the lecture. The lower bound brings the binary case of the BCH code closer to the Hamming Bound which is k ≤ n−logn+O(n). Thus the BCH code beats the Gilbert-Varshamov bound which is k ≥ n − (2t)logn. 2 BCH Codes Definition 2.1 (BCH Codes). [1] For prime power q, integer m, and integer d, the BCH code BCHq,m,d is obtained as follows: Let n = q m and let Fqm be an extension of Fq and let C 0 be the (extended) [n, n − (d − 1), d]qm Reed-Solomon code obtained by evaluating polynomials of degree at most n-1 over Fqm at all the points of Fqm . Then the code BCHq,m,d is the Fq -subfield subcode of C 0 . In other words, BCHq,m,d = C 0 ∩ Fnq . If we have q = 2 then BCH2,m,d = C ∩ F22 where C is given as a Reed-solomon code C = RS[n = 2m , n − (d − 1), d]F2m . The BCH code could be constructed in the following manner: Look at the Reedn Solomon code and only pick up the codewords that are in F22 . Now we argue that the BCH code has dimension at least n − m(d − 1). n Conjecture 2.2. Dimension of BCH code is at least n − m(d − 1). Proof. [1] We recall that every function from F2m to F2 is a polynomial of over F2m of degree at most n − 1. Thus the space of polynomials from F2m to F2 is a F2 -linear space of dimension exactly n. We wish to know what is the dimension of the subspace of polynomialsP of degree at most n − d. But now note that the restriction that a polynomial n−1 f (x) = i=0 fi xi has a degree at most n − d is equivalent to saying that the coefficients fi must equal zero, for i ∈ {n − (d − 1), · · · , n − 1}. Each such condition is a single linear constraint over F2m , but this translates into a block of m linear constraints over F2 . Since we have d − 1 such blocks of constraints, the restriction that the functions have a degree at most n − d place at most m(d − 1) linear constraints. Thus the resulting space 1 has dimension at least n − m(d − 1). Hence the code BCH2,m,d has dimension at least 2m − m(d − 1). The general idea of a BCH code is to identify its generating polynomial by the roots (instead of in terms of the coefficients). The code BSC2,m,d implies the evaluation of a “special” polynomial of degree ≤ n − d over F2m . The term “special” means if P (x) ∈ F2 [x] is a “special” polynomial iff ∀α ∈ F2m , P (α) ∈ F2 . This definition of “special” implies that the polynomials P (x) = 0 and P (x) = 1 are “special” polynomials. We can easily see that BSC2,m,d is linear. Because if polynomials P (x) and Q(x) are “special”, so is P (x) + Q(x). 3 Bounding the dimension of BCH Codes We are now ready to prove a stronger bound on the dimension of BCH codes. m l (d−2)(q−1) m . Lemma 3.1. The dimension of the code BCHq,m,d is at least q − 1 − m q Proof. [1] The idea of the proof is to consider the space of all functions from Fqm to Fq which forms an Fq -vector space of dimension n. viewing these funstions as polynomials from Fqm [x], we then restrict them to have zero as the coefficients of xi for i ∈ {n − (d − 1), · · · , n − 1}. The condition that the coefficients of xn−1 is zero imposes one linear constraint and reduces the dimension of the space to n − 1. The remaining conditions, corresponding to coefficients of xi for i ∈ {n − (d − 1), · · · , n − 2}, lead to at most m conditions each. However, we do not need to impose all such conditions. In particular, we can skip every qth condition (starting at n − 2 and going down) since these are exponents of the form l = (n − 1) − qj, where j is a positive integer. Now by the property of a polynomial over Fqm mapping Fqm to Fq , we have l = q(n − 1 − j)(mod(n − 1)). Hence the coefficient of xl equals zero is implied by the condition that the coefficient of xn−1−j equals zero. Thus the constraintsl corresponding to the coefficients of xi for i ∈ {n − (d − 1), · · · , n − 2}, lead m linear constraints. Thus the dimension of the space is at least to at most m (d−2)(q−1) q l m q m − 1 − m (d−2)(q−1) . q This leads to the following theorem. m i h l Theorem 3.2. For prime power q, integers m and d, the BCHq,m,d is an n, n − 1 − m (d−2)(q−1) ,d q q code, for n = q m . In the case of q = 2 (binary codes) we have the following corollary: Corollary 3.3. For every integer m and t, the code BCH2,m,2t is an [n, n − 1 − (t − 1) log n, 2t]code, for n = 2m . 2 The above k is very close to the Hamming bound for constant d and so is particularly nice. References [1] Madhu Sudan. Lecture on bch codes. Algorithmic Introduction to Coding Theory, September 2001. 3