TP4 Option C
Polynômes et corps finis
QQ[x], PolynomialRing(QQ)
FF = FiniteField(p), FF[x]
On rappelle qu’il y a deux constructions possibles des anneaux de polynômes :
PQ.<x> = PolynomialRing(QQ)
PQ.<x> = QQ[x].
La fonction GF, pour Galois field, est équivalente à FiniteField.
1. Déterminer les polynômes cyclotomiques d’ordre 1,3,5et 15 dans Q[x].
2. Déterminer la factorisation de x15 1dans Q[x]et F2[x].
3. Expliquer pourquoi le polynôme cyclotomique Φ15(x)est le produit de polynômes de
degré 4dans F2[x].
4. Déterminer tous les polynômes irreductibles de degré un à cinq dans F2[x].
5. Déterminer tous les polynômes irreductibles de degré un à trois dans F3[x].
6. Construire le corps fini F4(FF.<a> = GF(4)). Quel est polynôme minimal du géné-
rateur ?
7. Construire F8de deux manières (=F2[x]/(f(x)) avec des polynômes irreductibles f
différents) et déterminer un isomorphisme entre eux.
8. Déterminer les ordres des éléments de F9(a.multiplicative_order()).
Décomposition des polynômes dans Fp[x]
f.mod(g), f//g, f.quorem(g), f.gcd(g), power_mod(f,e,g)
La factorisation des polynômes dans Fp[x]se réduit à trois étapes.
Décomposition sans facteur carré. Étant donné un polynôme f(x) = g(x)h(x)p, où
g(x) = Qigi(x)eiavec eimod p6= 0, déterminer le facteur réduit Qigi(x)sans facteur
carré (et le facteur h(x)).
Décomposition en produit de degrés égaux. Étant donné un polynôme f(x)sans
facteur carré, déterminer sa décomposition f(x) = Qdfi(x)en produit de polynômes fd(x)
n’ayant que des facteurs irreductibles de degrés d.
Factorisation en irreductibles. Étant donné un polynôme f(x)sans facteur carré et
n’ayant que des facteurs irreductibles de degré d, trouver sa factorisation complète f(x) =
Qigi(x)en produit de polynômes irreductibles.
1
Décomposition sans facteur carré.
9. Si f(x) = g(x)h(x)p, montrer que f0(x) = g0(x)h(x)p, et en déduire que
pgcdf(x), f0(x)=pgcdg(x), g0(x)h(x)p.
Conclure que
f(x)
pgcdf(x), f0(x)=Y
i
gi(x),
g(x) = Y
i
gi(x)ei, avec giles facteurs irréductibles de g et eimod p6= 0.
10. Détailler comment calculer h(x)p, étant donnée f(x)et Qigi(x), et puis retrouver
h(x)(en utilisant h(x)p=h(xp)).
11. À l’aide des deux questions précédentes, construire un algorithme qui étant donné un
polynôme f(x)renvoie la décomposition sans facteur carré de f(x)sous forme d’un
polynôme. Tester cet algorithme dans F5avec f(x) = x(x+1)3(x+2)25(x+3)8(x+4)5.
12. Décrire un algorithme pour la décomposition de f(x)en produit des puissances
égales :
f(x) =
t
Y
e=1
fe(x)e=
t
Y
e=1 Y
ei=e
gi(x)ei!.
L’algorithme renvera la liste des couples Y
ei=e
gi(x),e
Décomposition en produit de degrés egaux.
On suppose maintenant que fest sans facteur carré.
13. Décrire la forme des polynômes fd(x) = pgcd(f(x), xpd11), en supposant que
pgcd(f(x), xps11) = 1 pour tout s < d.
Si pest impair, xpd11=(xm1)(xm+ 1) pour m= (pd1)/2. Montrer que
pgcd(f(x), xpd11) = pgcd(f(x), xm1)pgcd(f(x), xm+ 1),
et caracteriser les facteurs pgcd(f(x), xm±1).
14. Écrire la décomposition en produit d’irréductibles de degré égaux pour les polynômes
x15 + 1 et x63 + 1 sur F2[x]et pour x26 1et x80 1sur F3[x].
15. Pour pdgrand, le calcul de pgcd(f, xpd11) se fait en utilisant des astuces :
(a) Si xne divise pas f, on a pgcd(f, xpd11) = pgcd(f, xpdx)
2
(b) On a pgcd(f, xpdx) = pgcd(f, (xpdmod f)x), et la suite
a1=xpmod f, a2=xp2mod f,...,ad=xpdmod f
se calcule par ak+1 mod f= (akmod p)pmod f, en utilisant l’exponentiation
rapide (log2(p)multiplications modulo f).
(c) Si gest un diviseur de f, on a xpdmod g= (xpdmod f) mod g, alors on peut
utiliser la suite akmodulo une suite de diviseurs de fde plus en plus petits.
Utiliser ces astuces pour écrire un algorithme pour la décomposition en produit d’ir-
reductibles de degrés egaux.
16. Vérifier que la complexité de l’algorithme est raisonable (polynôme en log(p)), en
factorisant f= (x7)(x22x+ 3) sur Fppour des pde plus en plus grands (e.g. p
donné par next_prime(10ˆk) pour k= 16,17,18, . . . ).
Factorisation en irreductibles.
Ce problème sera le sujet du TP suivant.
3
1 / 3 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!