This preview shows pages 1–3. Sign up to view the full content.
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 1s. 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 1s 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 evenweight and oddweight 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
 profnaganagi

Click to edit the document details