Solutions to Homework 9
Solutions to Homework 9
Solutions to Homework 9
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
MATH 291T <strong>Homework</strong> 9 <strong>Solutions</strong><br />
1. Find the idempotent genera<strong>to</strong>r of each of the minimal binary cyclic codes of length 9.<br />
Solution : Recall that in HW 8 #4, we listed the genera<strong>to</strong>r polynomial and idempotent genera<strong>to</strong>r for each binary<br />
cyclic code of length 9:<br />
idempotent genera<strong>to</strong>r e(x)<br />
genera<strong>to</strong>r polynomial g(x)<br />
0 0<br />
1 1<br />
x + x 2 + x 4 + x 5 + x 7 + x 8 (x + 1)(x 6 + x 3 + 1)<br />
x 3 + x 6 (x + 1)(x 2 + x + 1)<br />
1 + x + x 2 + x 4 + x 5 + x 7 + x 8 x 2 + x + 1<br />
1 + x 3 + x 6 x 6 + x 3 + 1<br />
x + x 2 + x 3 + x 4 + x 5 + x 6 + x 7 + x 8 x + 1<br />
1 + x + x 2 + x 3 + x 4 + x 5 + x 6 + x 7 + x 8 (x 6 + x 3 + 1)(x 2 + x + 1)<br />
We know the genera<strong>to</strong>r polynomials of all minimal codes: they are of the form x9 − 1<br />
where m(x) is an irreducible<br />
m(x)<br />
fac<strong>to</strong>r of x 9 − 1. Since<br />
x 9 − 1 = (x + 1)(x 2 + x + 1)(x 6 + x 3 + 1)<br />
is the fac<strong>to</strong>rization of x 9 − 1 in<strong>to</strong> irreducible fac<strong>to</strong>rs over GF (2) is, we have the following minimal genera<strong>to</strong>r<br />
polynomials:<br />
x 9 − 1<br />
x + 1 = (x6 + x 3 + 1)(x 2 + x + 1) ,<br />
x 9 − 1<br />
x 6 + x 3 + 1 = (x + 1)(x2 + x + 1) and<br />
So the idempotent genera<strong>to</strong>rs of the minimal binary cyclic codes of length 9 are<br />
x 9 − 1<br />
x 2 + x + 1 = (x + 1)(x6 + x 3 + 1)<br />
1 + x + x 2 + x 3 + x 4 + x 5 + x 6 + x 7 + x 8 , x 3 + x 6 and x + x 2 + x 4 + x 5 + x 7 + x 8<br />
2. Let r and n be natural numbers such that n is odd and x n − 1 has exactly two irreducible fac<strong>to</strong>rs over GF (2 r ).<br />
(a) Write down the idempotent genera<strong>to</strong>r and the genera<strong>to</strong>r polynomial for each cyclic code of length n over<br />
GF (2 r ). Note that we are not working binary!<br />
(b) Identify the idempotent genera<strong>to</strong>rs of the minimal cyclic codes of length n over GF (2 r ).<br />
Hint: Is an idempotent over GF (2) an idempotent over GF (2 r )?<br />
Solution : (a) We get that there are two cyclo<strong>to</strong>mic cosets for n and q = 2 r :<br />
{0} and {1, 2, . . . , n − 1}<br />
But a coset for q = 2 r is part of a coset for q = 2. Hence there are two cyclo<strong>to</strong>mic cosets for q = 2.<br />
Another way of seeing this: we know that<br />
x n − 1 = (x − 1)(x n−1 + x n−2 + · · · + x + 1)<br />
1
Since there are two cyclo<strong>to</strong>mic cosets for q = 2 r , we have that x n−1 + x n−2 + · · · + x + 1 is irreducible over<br />
GF (2 r ). Hence it is also irreducible over GF (2).<br />
But we can use cyclo<strong>to</strong>mic cosets <strong>to</strong> write down the binary idempotents. There are four binary idempotents:<br />
0 , 1 , x + x 2 + · · · + x n−2 + x n−1 and 1 + x + · · · + x n−2 + x n−1<br />
A binary idempotent is of course also an idempotent for q = 2 r . Since there are four idempotents for q = 2 r , we<br />
have that the idempotents for q = 2 r are the binary idempotents.<br />
Since it is given that x n−1 + x n−2 + · · · + x + 1 is irreducible over GF (2 r ), we can write down the genera<strong>to</strong>r<br />
polynomial associated with each idempotent. We get the following table:<br />
idempotent genera<strong>to</strong>r genera<strong>to</strong>r polynomial<br />
0 0<br />
1 1<br />
1 + x + · · · + x n−2 + x n−1 1 + x + · · · + x n−2 + x n−1<br />
x + x 2 + · · · + x n−2 + x n−1 x + 1<br />
(b) The genera<strong>to</strong>r polynomials for the minimal cyclic codes over GF (2 r ) are<br />
x n − 1<br />
x + 1 = 1 + x + · · · + xn−2 + x n−1<br />
and<br />
x n − 1<br />
1 + x + · · · + x n−2 + x n−1 = x + 1<br />
Hence the idempotent genera<strong>to</strong>rs of the minimal cyclic codes of length n over GF (2 r ) are<br />
1 + x + · · · + x n−2 + x n−1 and x + x 2 + · · · + x n−2 + x n−1<br />
3. Let C be a cyclic code of length n over GF (q) with genera<strong>to</strong>r polynomial g(x) and idempotent genera<strong>to</strong>r e(x).<br />
Let β be a primitive n-th root of unity. Prove the following:<br />
(a) e(β j ) ∈ {0, 1} for 0 ≤ j ≤ n − 1.<br />
(b) For 0 ≤ j ≤ n − 1, we have that e(β j ) = 0 ⇐⇒ g(β j ) = 0.<br />
(c) dim C = |{0 ≤ j ≤ n − 1 : g(β j ) ≠ 0}|<br />
(d) dim C = |{0 ≤ j ≤ n − 1 : e(β j ) = 1}|<br />
Proof :<br />
Note that<br />
So the roots of x n − 1 are {β j : 0 ≤ j ≤ n − 1}.<br />
x n − 1 = (x − β 0 )(x − β 1 )(x − β 2 ) · · · (x − β n−2 )(x − β n−1 )<br />
Let h(x) be the check polynomial. So x n − 1 = g(x)h(x). Note that gcd(g(x), h(x)) = 1 as g(x) and h(x) have<br />
no roots in common. So<br />
1 = a(x)g(x) + b(x)h(x) (∗)<br />
for some polynomials a(x), b(x) ∈ GF (q)[x]. We proved in class that<br />
e(x) ≡ a(x)g(x) mod (x n − 1)<br />
Hence<br />
e(x) = a(x)g(x) + f(x)(x n − 1) for some polynomial f(x) ∈ GF (q)[x] (∗∗)<br />
(a)(b) Pick 0 ≤ j ≤ n − 1. Then β j is a root of x n − 1 = g(x)h(x).<br />
(a) Suppose first that g(β j ) = 0. Then it follows from (**) that e(β j ) = 0.<br />
2
Suppose next that g(β j ) ≠ 0. Then h(β j ) = 0 since x n − 1 = g(x)h(x). It follows from (*) that a(β j )g(β j ) = 1.<br />
Hence it follows from (**) that e(β j ) = 1. This proves (a).<br />
Suppose that e(β j ) = 0. Then it follows from (**) that a(β j )g(β j ) = 0. Hence it follows from (*) that<br />
b(β j )h(β j ) = 1. In particular, h(β j ) ≠ 0. Since β j is a root of x n − 1 = g(x)h(x), we have that g(β j ) = 0. This<br />
proves (b).<br />
(c) For 0 ≤ j ≤ n − 1, we have that β j is either a root of g(x) or a root of h(x), but not a root of both. So<br />
|{0 ≤ j ≤ n − 1 : g(β j ) ≠ 0}| = |{0 ≤ j ≤ n − 1 : h(β j ) = 0}|<br />
= deg(h(x))<br />
= n − deg(g(x))<br />
= dim C<br />
(d) Let 0 ≤ j ≤ n − 1. Using (b) and (a), we get<br />
Hence it follows from (c) that<br />
g(β j ) ≠ 0 ⇐⇒ e(β j ) ≠ 0 ⇐⇒ e(β j ) = 1<br />
dim C = |{0 ≤ j ≤ n − 1 : g(β j ) ≠ 0}| = |{0 ≤ j ≤ n − 1 : e(β j ) = 1}|<br />
✷<br />
3