Factoring polynomials over finite fields



Similar documents
minimal polyonomial Example

calculating the result modulo 3, as follows: p(0) = = 1 0,

CHAPTER SIX IRREDUCIBILITY AND FACTORIZATION 1. BASIC DIVISIBILITY THEORY

Modern Algebra Lecture Notes: Rings and fields set 4 (Revision 2)

How To Prove The Dirichlet Unit Theorem

Introduction to Finite Fields (cont.)

7. Some irreducible polynomials

it is easy to see that α = a

H/wk 13, Solutions to selected problems

10 Splitting Fields. 2. The splitting field for x 3 2 over Q is Q( 3 2,ω), where ω is a primitive third root of 1 in C. Thus, since ω = 1+ 3

1 = (a 0 + b 0 α) (a m 1 + b m 1 α) 2. for certain elements a 0,..., a m 1, b 0,..., b m 1 of F. Multiplying out, we obtain

3 1. Note that all cubes solve it; therefore, there are no more

ON GALOIS REALIZATIONS OF THE 2-COVERABLE SYMMETRIC AND ALTERNATING GROUPS

Factorization Algorithms for Polynomials over Finite Fields

Factoring of Prime Ideals in Extensions

Quotient Rings and Field Extensions

1 Lecture: Integration of rational functions by decomposition

Primality - Factorization

r + s = i + j (q + t)n; 2 rs = ij (qj + ti)n + qtn.

EXERCISES FOR THE COURSE MATH 570, FALL 2010

Module MA3411: Abstract Algebra Galois Theory Appendix Michaelmas Term 2013

A number field is a field of finite degree over Q. By the Primitive Element Theorem, any number

FACTORING AFTER DEDEKIND

The van Hoeij Algorithm for Factoring Polynomials

Polynomial Factoring. Ramesh Hariharan

Galois representations with open image

FACTORING POLYNOMIALS IN THE RING OF FORMAL POWER SERIES OVER Z

OSTROWSKI FOR NUMBER FIELDS

Unique Factorization

Factorization Methods: Very Quick Overview

PROBLEM SET 6: POLYNOMIALS

THE FUNDAMENTAL THEOREM OF ALGEBRA VIA PROPER MAPS

ALGEBRA HW 5 CLAY SHONKWILER

Partial Fractions. Combining fractions over a common denominator is a familiar operation from algebra:

SOLUTIONS TO PROBLEM SET 3

I. GROUPS: BASIC DEFINITIONS AND EXAMPLES

Lecture 13 - Basic Number Theory.

FINITE FIELDS KEITH CONRAD

Chapter 4, Arithmetic in F [x] Polynomial arithmetic and the division algorithm.

ABSTRACT ALGEBRA: A STUDY GUIDE FOR BEGINNERS

FACTORING IN QUADRATIC FIELDS. 1. Introduction. This is called a quadratic field and it has degree 2 over Q. Similarly, set

PUTNAM TRAINING POLYNOMIALS. Exercises 1. Find a polynomial with integral coefficients whose zeros include

Monogenic Fields and Power Bases Michael Decker 12/07/07

Factoring Polynomials

U.C. Berkeley CS276: Cryptography Handout 0.1 Luca Trevisan January, Notes on Algebra

Copy in your notebook: Add an example of each term with the symbols used in algebra 2 if there are any.

(0, 0) : order 1; (0, 1) : order 4; (0, 2) : order 2; (0, 3) : order 4; (1, 0) : order 2; (1, 1) : order 4; (1, 2) : order 2; (1, 3) : order 4.

A NOTE ON FINITE FIELDS

9. POLYNOMIALS. Example 1: The expression a(x) = x 3 4x 2 + 7x 11 is a polynomial in x. The coefficients of a(x) are the numbers 1, 4, 7, 11.

Galois Theory. Richard Koch

EMBEDDING DEGREE OF HYPERELLIPTIC CURVES WITH COMPLEX MULTIPLICATION

QUADRATIC RECIPROCITY IN CHARACTERISTIC 2

On the generation of elliptic curves with 16 rational torsion points by Pythagorean triples

A New Generic Digital Signature Algorithm

15. Symmetric polynomials

Arithmetic algorithms for cryptology 5 October 2015, Paris. Sieves. Razvan Barbulescu CNRS and IMJ-PRG. R. Barbulescu Sieves 0 / 28

Factoring Multivariate Polynomials over Finite Fields

Basics of Polynomial Theory

INTRODUCTION TO ARITHMETIC GEOMETRY (NOTES FROM , FALL 2009)

An Overview of Integer Factoring Algorithms. The Problem

Modélisation et résolutions numérique et symbolique

Math Abstract Algebra I Questions for Section 23: Factoring Polynomials over a Field

The Division Algorithm for Polynomials Handout Monday March 5, 2012

6. Fields I. 1. Adjoining things

SUM OF TWO SQUARES JAHNAVI BHASKAR

Short Programs for functions on Curves

Math 4310 Handout - Quotient Vector Spaces

Linear Maps. Isaiah Lankham, Bruno Nachtergaele, Anne Schilling (February 5, 2007)

MATH PROBLEMS, WITH SOLUTIONS

11 Ideals Revisiting Z

Alex, I will take congruent numbers for one million dollars please

Field Fundamentals. Chapter Field Extensions Definitions Lemma

How To Understand The Relation Between Quadratic And Binary Forms

SOLVING QUADRATIC EQUATIONS OVER POLYNOMIAL RINGS OF CHARACTERISTIC TWO

FACTORING. n = fall in the arithmetic sequence

ELEMENTARY THOUGHTS ON DISCRETE LOGARITHMS. Carl Pomerance

The finite field with 2 elements The simplest finite field is

Math 231b Lecture 35. G. Quick

The cyclotomic polynomials

RSA Question 2. Bob thinks that p and q are primes but p isn t. Then, Bob thinks Φ Bob :=(p-1)(q-1) = φ(n). Is this true?

Algebra I Vocabulary Cards

Factoring Polynomials

The Sieve Re-Imagined: Integer Factorization Methods

MA3D5 Galois theory. Miles Reid. Jan Mar 2004 printed Jan 2014

Chapter 1. Search for Good Linear Codes in the Class of Quasi-Cyclic and Related Codes

MOP 2007 Black Group Integer Polynomials Yufei Zhao. Integer Polynomials. June 29, 2007 Yufei Zhao

ALGEBRAIC NUMBER THEORY AND QUADRATIC RECIPROCITY

MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS

SOLVING POLYNOMIAL EQUATIONS

Galois Theory III Splitting fields.

Cyclotomic Extensions

a 11 x 1 + a 12 x a 1n x n = b 1 a 21 x 1 + a 22 x a 2n x n = b 2.

Continued Fractions and the Euclidean Algorithm

GALOIS THEORY AT WORK: CONCRETE EXAMPLES

Transcription:

Factoring polynomials over finite fields Summary and et questions 12 octobre 2011 1 Finite fields Let p an odd prime and let F p = Z/pZ the (unique up to automorphism) field with p-elements. We want to classify finite fields up to automorphism. Question 1 Give a field with 4 elements. Is there any field with 6 elements? Let K be a finite field. Its characteristic p is finite. Otherwise K would contain Q. So K contains a subfield isomorphic to F p. So K is a vector space over F p. Let d be its dimension. The cardinality of K is p d. Let Φ : K K be the map defined by Φ(x) = x p. It is an F p -linear map. It is even a ring homomorphism. It is called the Frobenius endomorphism. The multiplicative group K is cyclic. More generally, any finite subgroup in the multiplicative group of a field is cyclic. A primitive element of K is by definition a generator of the group K. Be carefull : some people call primitive any element that generates K as an F p -algebra. Question 2 Find a primitive element in F 101. How many primitive elements do we have in F p? How can we find such an element in general? Let F (x) F p [x] be a degree d irreducible polynomial. Then F p [x]/f (x) is a finite field with cardinality p d. Question 3 Is every finite field isomorphic to such a quotient? We prove that for any positive integer d there exists a degree d irreducible polynomial in F p [x]. This finishes the classification of finite fields. To prove the existence of irreducible polynomial for every degree we first prove the following identity in F p [x] x pd x = f(x) (1) where f(x) runs over the set of irreducible polynomials with degree dividing d. We deduce that 1

p d = e d en(e) (2) where N(e) is the number of monic irreducible polynomials of degree e in F p [x]. Using Mœbius inversion formula we deduce dn(d) = e d µ( d e )pe (3) To prove the existence of a degree d irreducible polynomial it suffices to prove that the sum e d µ( d e )pe is positive. Indeed if d 2 then µ( d e )pe p d e d e d et e d p e p d 1 e d/2 p e p d p d/2+1 + 1 1. So there exists a field with cardinality p d. It is easy to see that two finite fields with the same cardinality are isomorphic. We write F q for the field with q elements. This is a questionable notation because this field is only defined up to isomorphism, unless we have fixed one algebraic closure Ω for F p. In this text we are interesed in the following problem : given a polynomial A(x) in F p [x], find the decomposition of A(x) as a product of irreducible factors. The algorithm we present decomposes in three steps. There are variants for the third step. We only present one of them. Question 4 About the various meanings of primitive element. How many primitive elements do we have in F 256? How many generators of the group F 256? How many generators of the F 2 -algebra F 256? Deduce the number of degree 8 irreducible polynomials in F 2 [x]. 2 Berlekamp s algorithm, first step We want to factor A(x) F p [x]. Assume A is monic. Let A(x) = f e i i (x) 1 i I be the prime decomposition. The integer e i 1 is the multiplicity of f i (x) in A. The goal of this first step is to reduce to the case where A is square-free (i.e. all multiplicities are 0 or 1). The square-free case will be treated in steps 2 and 3. The multiplicity of f i (x) in the derivative A (x) is e i 1 if e i is non-zero modulo p. Otherwise it is e i. Set B = pgcd(a, A ). If B = A then p divides all e i so A is a p-th power. One easily finds an R(x) such that R p = A. We reduce to factoring R. 2

If B A then we set C = A/B and we reduce to factoring C and B. We note that C is square-free. An example with Mupad : R := Dom :: IntegerMod(5); A := poly((x-1)*(x-2)^2*(x-3)^6,r); We obtain a degree 9 polynomial to be factored. B := gcd(a,diff(a,x)); C := A/B; The equivalent commands in Maple are A:=(x-1)*(x-2)^2*(x-3)^6; A:=expand(A); B:=Gcd(A,diff(A,x)) mod 5; Rem(A,B,x) mod 5; C:=Quo(A,B,x) mod 5; it. The polynomial C has degree 3 and is square-free, so we are content with The polynomial B has degree 6. We continue. F := gcd(b,diff(b,x)); G := B/F; F. The polynomial G has degree 1. We are content with it. We continue with H := gcd(f,diff(f,x)); We find H = F. This is not a surprise because H = x 5 + 2 is a 5-th power. Indeed H(x) = (x + 2) 5. 3 Second step Thanks to the first step we now have square-free polynomials to factor. We use the identity (1). If A(x) is square-free we set A 1 (x) = pgcd(a(x), x p x). We check the A 1 is the product of all degree 1 irreducible factors of A(x). We set A 2 (x) = pgcd(a/a 1, x p2 x). This is the product of all degree 2 irreducible factors of A. We continue and compute A 3 (x) = pgcd(a/(a 1 A 2 ), x p3 x)... In the end we have decomposed A as a product of polynomials A 1, A 2, A 3,..., where A i is square-free and has only degree i irreductible factors. Factoring such polynomials will be the purpose of the third step. An example of the second step treated in Mupad : 3

R := Dom :: IntegerMod(2); A := poly(x^9+x^8+x^7+x^2+x+1,[x],r); B := gcd(a,diff(a,x)); We obtain poly(1, [x], Dom::IntegerMod(2)) Then A1 := gcd(a,poly(x^2-x,[x],r)); C1 := A/A1; We obtain A 1 = x + 1. Then A2 := gcd(c1,poly(x^4-x,[x],r)); C2 := C1/A2; A3 := gcd(c2,poly(x^8-x,[x],r)); We obtain A 2 = x 2 + x + 1 et A 3 = C 2. Question 5 What can we deduce about the factors of A? We now treat an example with p = 101. Let A(x) = x 4 + x + 7 F 101 [x] the polynomial to be factored. We don t want to compute the gcd of x 101 x and A(x) directly. Even less the gcd with x 1012 x. We work in the ring R = F p [x]/a(x) and set α = x mod A(x). We compute α p = U(x) mod A(x) with deg(u) < deg(a). We check that pgcd(x p x, A(x)) = pgcd(u(x) x, A(x)). This way we avoid dealing with big polynomials. Note that α p R can be computed using the fast exponentiation algorithm. Another example of the second step in Mupad : R := Dom :: IntegerMod(101); A := poly(x^4+x+7,[x],r); B := gcd(a,diff(a,x)); U := powermod(x,101,a); We obtain B = 1 and U = 21x 3 + 58x 2 + 89x + 41. Equivalent instructions in Maple are A := x^4+x+7; B := Gcd(A,diff(A,x)) mod 101; U:=Powmod(x,101,A,x) mod 101; We continue 4

C := gcd(poly(u-x,r),a); We find C = x 2 + 38x + 11. Question 6 What can we deduce about the irreducible factors of A? Question 7 Give an estimate for the number of elementary operations required by the second step of Berlekamp s algorithm. 4 Third step After the second step we find ourselves with square-free polynomials having equal degree irreducible factors. So let A F p [x] be such a polynomial and let k be the degree of all its irreducible factors. Let I be the number of these factors. So deg(a) = Ik. We assume the characteristic p is odd. We come back to equation (1). We set r d = pd 1 2. We find (x r d 1)(x r d + 1)x = f(x) (4) where the product is over all irreducible monic polynomials in F p [x] having degree dividing d. We set A 1 = pgcd(a, x r k 1), A 1 = pgcd(a, x r k +1), and A 0 = pgcd(a, x). So A = A 0 A 1 A 1. If f is an irreducible factor of A and α F p k a root of f, then f divides A 1 if and only if α is a non-zero square in F p k. More generally, let U(x) be a polynomial in F p [x] and set A U 1 = pgcd(a, U(x)r k 1), A U 1 = pgcd(a, U(x)r k+1), and A U 0 = pgcd(a, U(x)). So A = A U 0 AU 1 AU 1. If f is an irreducible factor of A and α F pk a root of f, then f divides A U 1 if and only if U(α) is a non-zero square in F p k. Question 8 Pick a random (with uniform distribution) U(x) among all polynomials F p [x] having degree deg(a) 1. What is the probability that one of polynomials A U 0, AU 1, AU 1 be a non-trivial factor of A? How many trials do we need on average to find such a non-trivial factor? Question 9 Give an upper bound for the number of elementary operations that are necessary to compute A U 0, AU 1 and AU 1. Deduce an estimate for the complexity of the third step as a function of log p, k and deg(a). We come back to the example in the previous section. So let C = x 2 +38x+11 and F = A/C = x 2 + 63x + 19. F := A/C; V := powermod(x,50,c); W := gcd(poly(v-1,r),c); K := C/W; 5

We obtain V = 89x + 75 and W = x + 78 and K = x + 61. Question 10 Deduce the factorisation of A. Question 11 Give the structure of the multiplicative group (Z/107Z). Give an adapted generating set. Same question with (Z/10807Z). Same question with (F 2 [x]/a(x)) where A(x) = x 7 + x 6 + x 5 + x + 1. Question 12 Let p be a prime and let d be a positive integer. Set T d (x) = x + x p + x p2 + + x pd 1. Let q = p d. Prove that x q x = a F p (T d (x) a). Deduce a variant of the third step that is valid for p = 2. 6