Download enumerating polynomials over finite fields

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Equation wikipedia , lookup

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

Resultant wikipedia , lookup

Polynomial 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

Transcript
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