1 Section 10: Finite Fields HW p. 8 # 1-3 at the end of the notes Finite Fields are fields with a finite number of elements. We have already examined finite fields. Recall that given a prime p that the set of integers modulo p given by Z p {0, 1, 2, 3, , p 1} is a finite field of p elements. In this section, we want to consider finite fields constructed from the extension field Z p [ x] /( p ( x)) containing Z p , where p (x ) is an irreducible polynomial in Z p [x] . We would like an “easy” way to generate the elements in Z p [ x] /( p ( x)) . We start with the following fact: Fact: The non-zero elements of a finite field, K * , form a cyclic group, that is, if number of elements in K * is q 1 , then there exists an element a K where K * {a, a 2 , a 3 , , a q2 , a q1 1} . Recall that for an irreducible polynomial p (x ) in Z p [x] . Then recall that the congruence __ __ class x in the extension field Z p [ x] /( p ( x)) is a root of the polynomial. If we set a x , then p (a ) 0 . Generating other elements in Z p [ x] /( p ( x)) can be done by taking powers of the root a , which is demonstrated by the following example. 2 Example 1: Consider the polynomial p( x) x 2 x 2 Z 3 [ x] . Noting the fact that __ p (x ) is irreducible and that a x in Z 3 [ x] /( x 2 x 2) is a root of p (x ) , use the powers of a to generate the non-zero elements of the finite field Z 3 [ x] /( x 2 x 2) . 3 4 █ 5 __ For a field F, let a x K F[ x] /( p( x)) , where p (x ) is an irreducible polynomial in F [x ] . Then a is a root of p (x ) , that is , p (a ) 0 . We want a to be a cyclic generator of K * , the non-zero elements of the finite field K F [ x] /( p( x)) . However, p (x ) must be chosen “correctly”. The polynomial p (x ) being irreducible does not guarantee that the root a can be used to generate K * . Fact: There always exists and irreducible polynomial p (x ) where the root a generates all of K * . In this case, the root a is called a primitive element of K F [ x] /( p( x)) and the polynomial p (x ) is called a primitive polynomial. This leads to another important fact concerning finite fields. Theorem 10.1: All finite fields have q p n elements for some integer n and prime p. Although to give a general proof of Theorem 10.1, we need information concerning vector spaces, we can sketch the important ideas in the proof using the concepts in this section. If F is a field that is finite, its characteristic (the smallest integer p where p 1 0 ) be prime (see Exercise 10 in Section 3). Hence, F Z p . If we consider an irreducible polynomial p (x ) of degree n, that is, if p( x) an x n an1 x n1 a1 a0 , then the division algorithm says that each congruence class of the finite field Z p [ x] /( p ( x)) can be represented by polynomial of the form r ( x) bn1 x n1 bn2 x n2 b1 b0 since deg r ( x) deg( p( x)) . Since the coefficients (the bi ' s ) of r (x ) are contained in field Z p {0, 1, 2, 3, , p 1} , each coefficient has p choices giving p n possible polynomials. Notes 1. We denote the finite field Z p [ x] /( p ( x)) containing the field Z p as the finite field of characteristic p . 2. A primitive polynomial p (x ) of degree n defined over Z p can be used to generated the finite field Z p [ x] /( p ( x)) of p n elements. Procedure for Constructing Finite Fields of p n Elements 6 1. Consider the field Z p , where p is a prime. 2. Choose a primitive polynomial p( x) Z p [ x] where deg( p( x)) n . 3. Construct the finite field Z p [ x] /( p ( x)) by taking the root a of primitive polynomial p (x ) and constructing powers of a up to a p 1 and obtaining the non-zero elements of Z p [ x] /( p ( x)) . The field is completed by adding the 0 element. n Example 2: Construct the finite field Z 3 [ x] /( x 2 x 2) . Solution: As we noted in Example 1, p( x) x 2 x 2 is irreducible. Since deg p( x) 2 and for Z 3 , p 3 , we should obtain a finite field of p n 32 9 elements. Let a be a zero of p( x) x 2 x 2 . Then, as we saw in Example 1, a2 a 2 0 or a 2 a 2 2a 1 . In Example 1, we demonstrate how by taking increasing powers of a , we can generate the non-zero elements of the finite field. The results are given by Powers of a a a2 a3 Finite Field Element a 2a 1 2a 2 a4 a5 a6 2 2a a7 a8 a2 a 1 1 Adding in the element 0 and the set of 9 finite field elements are given by Z 3 [ x] /( x 2 x 2) {a, 2a 1, 2a 2, 2, 2a, a 2, a 1, 1, 0} . Since we were able to generate the entire finite field, a is a primitive element and p( x) x 2 x 2 is a primitive polynomial. █ 7 Every irreducible polynomial p (x ) used to construct a finite field Z p [ x] /( p ( x)) is not guaranteed to be a primitive polynomial. We illustrate this in the next example. Example 3: Illustrate why the polynomial p( x) x 2 1 is irreducible over Z 3 but is not a primitive polynomial when used to construct the finite field Z 3 [ x] /( x 2 1) . Solution: 8 █ 9 Example 4: Construct the finite field Z 2 [ x] /( x 4 x 1) . Solution: 10 █ 11 Exercises 1. For each of the following polynomials p (x ) , determine if p (x ) is irreducible in Z 3 [ x] . If so, decide if p (x ) is primitive in Z 3 [ x] by attempting to construct the field elements that correspond to powers of the root a in Z 3 [ x] /( p( x)) . If so, list the elements of the finite field. a. p( x) x 2 2 x 2 b. p( x) x 2 2 x 1 c. d. p( x) 2 x 2 2 p ( x) 2 x 2 2. For each of the following polynomials p (x ) , determine if p (x ) is irreducible in Z 2 [ x] . If so, decide if p (x ) is primitive in Z 2 [ x] by attempting to construct the field elements that correspond to powers of the root a in Z 2 [ x] /( p( x)) . If so, list the elements of the finite field. a. p( x) x 3 x 1 b. p( x) x 3 x 2 1 c. p( x) x 4 x 3 1 d. p ( x) x 4 x 3 x 2 1 e. p( x) x 4 x 3 x 2 x 1 3. Let p( x) x 2 x 2 a. Show that p (x ) is primitive in Z 5 [ x] by constructing the field elements that correspond to powers of the root root a in Z 5 [ x] /( p( x)) . If so, list the elements of the finite field. b. Show that p (x ) is not primitive in Z11[ x] by showing that p (x ) is not irreducible in Z11[ x] .