* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download enumerating polynomials over finite fields
Root of unity wikipedia , lookup
Capelli's identity wikipedia , lookup
Chinese remainder theorem wikipedia , lookup
Invariant convex cone wikipedia , lookup
Horner's method wikipedia , lookup
Perron–Frobenius theorem wikipedia , lookup
Field (mathematics) wikipedia , lookup
Algebraic variety wikipedia , lookup
Quartic function wikipedia , lookup
Dessin d'enfant wikipedia , lookup
Modular representation theory wikipedia , lookup
Deligne–Lusztig theory wikipedia , lookup
Gröbner basis wikipedia , lookup
System of polynomial equations wikipedia , lookup
Cayley–Hamilton theorem wikipedia , lookup
Algebraic number field wikipedia , lookup
Polynomial ring wikipedia , lookup
Fundamental theorem of algebra wikipedia , lookup
Polynomial greatest common divisor wikipedia , lookup
Factorization wikipedia , lookup
Eisenstein's criterion wikipedia , lookup
Factorization of polynomials over finite fields wikipedia , lookup
MAT5107 : Combinatorial Enumeration Mike Newman, winter 2017 10. polynomials finite fields : background We apply enumeration of unlabelled objects to something seemingly less combinatorial: polynomials over finite fields. A polynomial is irreducible if it is of positive degree and cannot be factored into polynomials of strictly smaller degree. So for instance every polynomial of degree one is irreducible. In fact, every polynomial can be uniquely factored into irreducible polynomials (possibly repeated). More precisely, if R is a ring then we have the following definitions. An element u ∈ R is a unit if there exists some v ∈ R with uv = 1. A non-zero non-unit element a ∈ R is irreducible if whenever a = bc then either a or b is a unit. A non-zero non-unit element a ∈ R is prime if whenever a | bc then either a | b or a | c. If R is a field then every non-zero element is a unit (and there are no irreducibles or primes). If R = Z then the units are ±1, and a is prime if and only if a is irreducible; these are what you might call “the” primes. If R = K[x], the ring of polynomials over a field K, then again a is prime if and only if it is irreducible; the primes here are exactly the polynomials of nonzero degree that cannot be factored over K. Both Z and K[x] are examples of unique factorization domains, in which prime and irreducible are synonyms and every element can be uniquely factored into a multiset of irreducibles, up to multiplication by a unit. Every finite field has q = pk elements for some prime p and positive integer k.1 In fact we can say quite a bit more. Theorem 10.1. Let F be a finite field. Then for some prime p and some irreducible polynomial f of degree k over Zp , we have that F ∼ = Zp /(f ). In light of this, we denote by Fq “the” finite field of order q. In particular this says that Fq has q = pk elements. We may consider the elements of Fq ∼ = Zp /(f ) to be polynomials of degree less than k. Addition is performed as you would expect for polynomials, with coefficients in Zp . Multiplication is done modulo f , so we take f ≡ 0, which we can think of as “xk ≡ · · · ” and use it to reduce the product to a polynomial of degree less than k. Note that all irreducible polynomials over Fp of degree k result in fields that are isomorphic, so for algebraic purposes the choice of f is arbitrary. However, for purposes of doing arithmetic efficiently, the choice of f can make a difference. This has applications anywhere finite fields are used (eg, coding theory, cryptography). The particular representation of Fq chosen (i.e. the particular polynomial f ) can have significant consequences. Problem 10.2. Consider the polynomial f = x2 + x + 1 in Z2 [x]. Show that this polynomial is irreducible (hint: there aren’t too many polynomials of smaller degree, so you can just try them as all factors). Then we see that Z2 /(f ) = {0, 1, x, x + 1}. Write down the addition table and multiplication table of this field (which is up to isomorphism the unique field of order 4). Note that since we are taking f ≡ 0 we have x2 ≡ −x − 1 = x + 1 (the last because we are in Z2 ), so if x2 occurs in a product we can reduce it. Now try the same thing for f = x3 + x2 + 1 in Z2 [x]. Note that to show this is irreducible it suffices to show that it is not the product of a linear and a quadratic, so it suffices to show that it is not divisible by a linear factor, so it suffices to show that it has no roots. ∗ These notes are intended for students in mike’s MAT5107. For other uses please say “hi” to [email protected]. 1 It is an interesting question as to what the “field” of order p0 = 1 really means. It is sometimes referred to by the bilingual pun “Fun ”. 64 polynomials over Fq Let us fix some (arbitrary) prime-power q; all polynomials will be over Fq . For technical reasons, we will only consider monic polynomials. This means that factorization truly is unique. So for instance over F7 we have the following factorization, which is the unique factorization of the given monic polynomial into monic irreducible polynomials. x5 + x4 + 3x3 + 4x2 + 4x + 3 = (x − 2)(x2 + 2)(x2 + 3x + 1) This is analogous to only using positive irreducibles in the factorization of integers. Instead of having 60 = 22 × 3 × 5 = (−2) × 2 × (−3) × 5 = −(−2)2 × 3 × (−5) = (−2)2 × (−3) × (−5) = · · · we only have 60 = 22 × 3 × 5. P P We define G(x) = n gn xn and C(x) = n cn xn , where gn is the number of polynomials of degree n and cn is the number of irreducible polynomials of degree n. It’s easy to see that gn = q n (remember our polynomials are monic), meaning G(x) = 1/(1 − qx). On the other hand unique factorization means that there is a natural bijection between polynomials and multisets of irreducible polynomials (the factors). This gives the following relation between the generating functions. X1 C(xk ) G∼ ←→ G(x) = exp = MSet(C) k k≥1 This implicitly determines all of the cr . X1 1 = exp C(xk ) 1 − qx k k≥1 X cr 1 log = xkr 1 − qx k k,r≥1 X qn n≥1 n xn = X cr xkr k k,r≥1 [xn ] Extracting on the left-hand side is simple; on the right-hand side we must have n = kr and so the sum is over all r | n, which means that k = n/r. We get the following. X qn = rcr r|n We can solve this for cn in terms of cr for r < n, and then use it to recursively compute the number of irreducible polynomials of any degree. But there is a better way, using Möbius inversion. Let µ be the function on the positive integers defined by µ(1) = 1, µ(n) = 0 if t2 | n for some t > 1, and µ(n) = (−1)j if n is the product of exactly j distinct primes. Lemma 10.3. If an and bn are two sequences then the following holds. X X an = br ⇐⇒ bn = µ(r)an/r r|n r|n We will not prove this for the moment. But it is exactly the tool needed to solve for cd in the above. We directly obtain cn in terms of the gn (powers of q). X ncn = µ(r)q n/r r|n 65 This means that we now have an expression for C(x) also X1X X cn xn = C(x) = µ(r)q n/r xn n n n r|n X 1 = µ(r)q k xkr kr k,r≥1 = X µ(r) X (qxr )k r≥1 r k≥1 k = X µ(r) r≥1 r log 1 1 − qxr It is straightforward to extract coefficients in order to determine cn for any particular n (the intermediate form above is more practical). Although in this case it is probably easier to use the expression for cn directly. 1 3 1 2 q −q c3 = q −q c1 = q c2 = 2 3 We notice that the answer will always be a sum (±) of powers of q, where each power divides n, all divided by n. This means that as q gets large, the leading term, q n , will dominate to give cn ≈ q n /n. Thus for large q, the proportion of polynomials of degree n that are irreducible is approximately 1/n, independent of q. This is an analogue of the prime number theorem, which gives the limiting density of prime numbers. Note however, that there are some important differences. We measure the size of a polynomial by its degree, which is a non-starter for integers (they all have degree zero). squarefree polynomials We can enumerate the squarefree polynomials of degree n. These P are polynomials whose factorization gives a set of distinct irreducible polynomials. Let S(x) = n sn xn , where sn is the number of squarefree polynomials of degree n. We recognize squarefree polynomials as being equivalent to a proper set of irreducibles (the prime factors, which are all distinct). X (−1)k+1 S∼ ←→ S(x) = exp C(xk ) (1) = PSet(C) k k≥1 The above derivation determines all of the sn in terms of the known cn , as sn = [xn ] S(x). In extracting coefficients from the right-hand side, it is helpful to first imagine which terms of the expansion of exp will contribute (the picture in class helps here). We find that s0 = 1 1 1 s2 = c2 − c1 + c21 = q 2 − q 2 2 s1 = c1 = q There is an alternative derivation of S(x) that produces a more usable form. We apply Corollary 9.8. Since S ∼ = PSet(C) and G ∼ = MSet(C) we have X G(x) 1 − qx2 S(x) = = = 1 + qx + q n − q n−1 xn (2) 2 G(x ) 1 − qx n≥2 This gives s0 = 1, s1 = q, and sn = q n − q n−1 for n ≥ 2. As a quick reminder, the equation G(x) = S(x)G(x2 ) is based on a correspondence. We first separate off one of each factor whose multiplicity is odd. Then we divide the multiplicities of the remaining factors by two. This gives between a polynomial on the one hand and a set of factors and a multiset of factors. The polynomial is the product of all the factors, but the ones in the multiset count twice. 66 As an example, consider a polynomial p with four distinct irreducible factors which we call p1 , p2 , p3 , p4 such that p = p51 p62 p3 p24 . 2 p = p51 p62 p3 p24 = p1 p3 p41 p62 p24 = p1 p3 p21 p32 p14 ←→ {p1 , p2 } , p21 , p32 , p4 = (podd , psquare ) G(x) counts the number of things on the left, while S(x)G(x2 ) counts the number of things on the right with the weight of the second half counting double. questions 1. Compute s3 (and s4 if you dare) using equation (1), and verify that it is in agreement with equation (2). 2. Can we use möbius inversion to determine sn for squarefree polynomials, analogously to what we did for polynomials? What goes wrong? 3. Fix some prime-power q, and a positive integer d. Let cn be the number of irreducible (monic) polynomials of degree n over Fq . Let sn be the number of (monic) polynomials n P of degree n and over Fq that contain no non-trivial d-th power as a factor. Let C(x) = c x n≥1 n P S(x) = n≥0 sn xn . a) Using a suitable generalization of PSet, find a formula for S(x) in terms of C(x) (and maybe q and d). You should specify what your suitable generalization of PSet is, and (r) find the generating function by starting from sn,k and finishing with something of the form S(x) = exp (· · · ). b) Using a suitable generalization of the relationship between the generating functions for MSet and PSet that we saw in the course, determine S(x) in terms of only q and d. This is not the same method you used in the previous part. c) Using either one of your expressions (your choice) for S(x), give an explicit simple formula for sn . 4. Try and prove Lemma 10.3, or at least imagine how you might prove it. Note that we will see a proof of this in the next chapter. 67