This preview has intentionally blurred sections. Sign up to view the full version.View Full Document
Unformatted text preview: EE 229B ERROR CONTROL CODING Spring 2005 Solutions for Homework 2 1. ( Weights of codewords in a cyclic code ) Let g ( X ) be the generator polynomial of a binary cyclic code of length n . (a) Show that if g ( X ) has X +1 as a factor then the code contains no codewords of odd weight. Solution : v ( X ) ∈ GF (2)[ X ] is a code polynomial iff it is of degree at most n- 1 and can be written as v ( X ) = u ( X ) g ( X ) for some polynomial u ( X ) ∈ GF (2)[ X ]. Since X + 1 divides g ( X ), it follows that X + 1 divides v ( X ). Hence v (1) = 0. This means precisely that the weight of the corresponding codeword ( v ,...,v n- 1 ) is even. (b) Show that if n is odd and X + 1 is not a factor of g ( X ) then the code contains the codeword consisting of all 1’s. Solution : The claim of this part of the problem is true whether n is odd or even. X n + 1 = ( X + 1)(1 + X + X 2 + ... + X n- 1 ) . Since g ( X ) divides X n + 1 and does not have X + 1 as a factor, it must divide 1 + X + X 2 + ... + X n- 1 . In other words, the length n word consisting of all 1’s is a codeword. (c) Show that if n is the smallest integer such that g ( X ) divides X n + 1 then the code has minimum weight at least 3. Solution : If there is a codeword of weight 1, the associated code polynomial is X m , for some ≤ m ≤ n- 1. Since the code is cyclic, it follows that 1 is also a code polynomial. But then the code is trivial (every word is a codeword), and g ( X ) = 1, contradicting the hypothesis. If there is a codeword of weight 2, the associated code polynomial is X m + X l for some 0 ≤ m < l ≤ n- 1. Since the code is cyclic, it follows that 1 + X l- m is also a code polynomial. Hence g ( X ) divides 1 + X l- m , which contradicts the hypothesis. since l- m < n . Thus under the hypothesis the smallest weight of a nonzero codeword must be at least 3. (d) Suppose g ( X ) is such that the code contains both even-weight and odd-weight code- words. Let A ( z ) denote the weight enumerator polynomial of the code. Show that the polynomial ( X +1) g ( X ) also generates a binary cyclic code of length n , and that this has weight enumerator polynomial A 1 ( z ) = 1 2 [ A ( z ) + A (- z )] . 1 Solution : Let C denote the binary cyclic code ( n,k ) with generator polynomial g ( X ). We know that g ( X ) divides X n + 1. Since C contains both even and odd weight codewords, X + 1 does not divide g ( X ). Thus ( X + 1) g ( X ) divides X n + 1. Hence it is the generator polynomial of a binary cyclic ( n,k- 1) code. Let C 1 denote this code....
View Full Document
- Spring '09
- Polynomials, Coding theory, 2m, α, Linear code