Math´
ematiques assist´
ees par ordinateur
Chapitre 3 : Arithm ´
etique des polynˆ
omes
Michael Eisermann
Mat249, DLST L2S4, Ann´
ee 2008-2009
www-fourier.ujf-grenoble.fr/˜eiserm/cours # mao
Document mis `
a jour le 6 juillet 2009
1/55
Objectifs de ce chapitre
Nous allons discuter et approfondir l’arithm´
etique des polynˆ
omes sur
un corps, notamment `
a coefficients rationnels, r´
eels, complexes.
Afin de proc´
eder syst´
ematiquement et efficacement, nous
introduisons d’abord le vocabulaire ad´
equat (corps et anneaux).
Ensuite on ´
etablira quelques outils fondamentaux, notamment
la division euclidienne : S=P Q +Ro`
udeg R < deg P,
l’algorithme d’Euclide pour calculer pgcd(A, B),
l’algorithme d’Euclide-B ´
ezout : pgcd(A, B) = AU +BV .
Les applications sont nombreuses !
D´
ecomposition des polynˆ
omes et des fractions rationnelles.
Localisation des racines r´
eelles d’un polynˆ
ome r´
eel (Sturm).
Localisation des racines complexes d’un polynˆ
ome complexe.
2/55
Sommaire
1Arithm ´
etique des polynˆ
omes sur un corps, Euclide, B´
ezout
Polynˆ
omes sur un corps
La division euclidienne
Les algorithmes d’Euclide et de B ´
ezout
2´
Evaluation, racines, d´
ecomposition en facteurs irr´
eductibles
Fonctions polynomiales, m´
ethode de Horner, Horner–Taylor
Multiplicit´
e d’une racine, r´
eduction aux racines simples
D´
ecomposition de polynˆ
omes en facteurs irr´
eductibles
3Fractions rationnelles, ´
el´
ements simples, int´
egration symbolique
Le corps des fractions rationnelles
D´
ecomposition d’une fraction en fractions simples
Primitive d’une fraction rationnelle
3/55
Corps
Les nombres rationnels (Q,+,·), les nombres r´
eels (R,+,·), et les
nombres complexes (C,+,·)jouissent des propri ´
et´
es suivantes :
(A1 : associativit´
e) ∀a, b, c : (a+b) + c=a+ (b+c)
(A2 : commutativit´
e) ∀a, b :a+b=b+a
(A3 : ´
el´
ement neutre) ∃0∀a: 0 + a=a
(A4 : ´
el´
ement oppos´
e) ∀a∃b:a+b= 0
(M1 : associativit´
e) ∀a, b, c : (a·b)·c=a·(b·c)
(M2 : commutativit´
e) ∀a, b :a·b=b·a
(M3 : ´
el´
ement neutre) ∃16= 0 ∀a: 1 ·a=a
(M4 : ´
el´
ement inverse) ∀a6= 0 ∃b:a·b= 1
(D : distributivit´
e) ∀a, b, c :a·(b+c) = (a·b) + (a·c)
D´
efinition (corps)
Un corps (K,+,·)est un ensemble Kmuni de deux op´
erations,
appel´
ees addition +: K×K→Ket multiplication ·:K×K→K,
v´
erifiant tous les axiomes (A1-4), (M1-4), (D) ci-dessus.
§1.1 4/55
Corps finis
Outre les corps Q,R,Cil existe beaucoup d’autres exemples !
Sur l’ensemble F2={0,1}`
a deux ´
el´
ements on n’a qu’un seul choix :
+ 0 1
0 0 1
1 1 0
et ·0 1
0 0 0
1 0 1
.
Proposition (le corps `
a deux ´
el´
ements)
(F2,+,·)est un corps.
D´
emonstration. Les axiomes se v´
erifient en ´
enum´
erant tous les cas.
Alternative : Si l’on interpr `
ete 0et 1comme «vrai »et «faux »alors la
multiplication ·est la conjonction «et »tandis que l’addition +est la
disjonction «ou exclusif ». Sous cette forme vous avez d´
ej`
a´
etabli la
v´
eracit´
e des axiomes lors de votre introduction `
a la logique.
Alternative : On peut reconnaˆ
ıtre F2comme le quotient Z/2Z.
Remarque
Les corps finis sont fortement utilis ´
es en alg`
ebre et en cryptographie.
Tout corps fini est de cardinal pkpour un premier p. R ´
eciproquement,
pour tout premier pet k≥1il existe un unique corps de cardinal pk.
§1.1 5/55
Les quatre op´
erations dans un corps
On abr`
ege a·bpar ab. Au lieu de a+ (b·c)on ´
ecrit aussi a+bc.
Les ´
el´
ements 0et 1ainsi que les applications a7→ −aet a7→ a−1
ne figurent pas explicitement dans (K,+,·), ils s’en d´
eduisent :
L’´
el´
ement neutre de l’addition est unique : si 0 + a=aet 00+a=a
pour tout a∈K, alors 00= 0 + 00= 00+ 0 = 0.
Pour tout a∈Kl’oppos´
e est unique : Si a+b= 0 et a+b0= 0 alors
b= 0 + b=b+ 0 = b+ (a+b0) = (b+a) + b0= (a+b) + b0= 0 + b0=b0.
On notera donc sans ambigu¨
ıt´
e l’oppos´
e de apar −a.
De mˆ
eme l’´
el´
ement neutre 1de la multiplication est unique.
Pour tout a∈K\ {0}l’inverse est unique, et sera not´
e par a−1.
On a ab = 0 ssi a= 0 ou b= 0 : si a6= 0 alors b=a−1ab = 0.
§1.1 6/55
Anneaux
Les entiers (Z,+,·)ne forment pas un corps mais un anneau :
D´
efinition (anneau)
Un anneau (A,+,·)est un ensemble muni de deux op´
erations dont
on exige les axiomes ci-dessus `
a l’exception de M4 (´
el´
ement inverse).
Ici tout anneau sera donc suppos´
e commutatif (M2) et unitaire (M3).
D´
efinition (´
el´
ements inversibles)
Soit a∈A. On dit que b∈Aest un inverse de asi a·b= 1.
Dans ce cas l’inverse de aest unique et sera not´
e par a−1.
On appelle a∈Ainversible s’il admet un inverse dans A.
Dans Z, par exemple, les seuls ´
el´
ements inversibles sont 1et −1.
L’´
el´
ement 0n’est jamais inversible : on a toujours 0·b= 0 6= 1.
Un anneau Aest un corps ssi tout ´
el´
ement a∈A,a6= 0 est inversible.
On note A∗=A\ {0}l’ensemble des ´
el´
ements non nuls,
et A×⊂A∗l’ensemble des ´
el´
ements inversibles dans A.
§1.1 7/55
Polyn ˆ
omes
Soit Kun corps (par exemple Q,R,C).
Un polyn ˆ
ome sur Kest une expression formelle
P=p0+p1X1+p2X2+·· · +pnXno`
up0, p1, p2, . . . , pn∈K.
!
Ici Xn’est qu’une variable formelle (et non un ´
el´
ement de K).
De mˆ
eme, Pn’est qu’une expression formelle (et non une fonction).
Ce qui compte est la suite des coefficients dans K:
n
X
k=0
akXk=
n
X
k=0
bkXk⇐⇒ ak=bkpour tout k= 0, . . . , n
!
On peut rajouter ou supprimer des termes nuls, 0·Xn+1.
Ainsi P=Pm
k=0 pkXken prolongeant par pn+1 =··· =pm= 0,
voire P=P∞
k=0 pkXken prolongeant par pk= 0 pour tout k > n.
Pour l’impl´
ementation il suffit de stocker les coefficients non nuls.
Typiquement on stocke la suite (p0, p1, p2, . . . , pn)telle que pn6= 0.
§1.1 8/55
L’anneau des polynˆ
omes
On note par K[X]l’ensemble des polynˆ
omes sur l’anneau K.
On d´
efinit l’addition terme par terme :
n
X
k=0
akXk+n
X
k=0
bkXk:=
n
X
k=0
(ak+bk)Xk
Pour obtenir Xi·Xj=Xi+jon d´
efinit la multiplication par
m
X
i=0
aiXi·n
X
j=0
bjXj:=
m+n
X
k=0 X
i+j=k
aibjXk
Ces d´
efinitions se traduisent directement en algorithme de calcul.
Proposition (l’anneau des polynˆ
omes sur K)
L’ensemble K[X]des polynˆ
omes sur Kmuni de l’addition +
et de la multiplication ·d´
efinies ci-dessus est un anneau.
On remarque que aX 0+bX0= (a+b)X0et aX0·bX0= (ab)X0.
Ainsi on obtient K⊂K[X]en identifiant a∈Kavec aX0∈K[X].
§1.1 9/55
L’anneau des polynˆ
omes : v´
erification des axiomes
Pour prouver le th ´
eor`
eme il faut v´
erifier les axiomes un par un.
L’associativit´
e de (K[X],+) d´
ecoule de celle de (K,+) :
PakXk+PbkXk+PckXk=P(ak+bk)Xk+PckXk
=P[(ak+bk) + ck]Xk=P[ak+ (bk+ck)] Xk
=PakXk+P(bk+ck)Xk=PakXk+PbkXk+PckXk
La commutativit´
e de (K[X],+) d´
ecoule de celle de (K,+) :
PakXk+PbkXk=P(ak+bk)Xk
=P(bk+ak)Xk=PbkXk+PakXk
L’´
el´
ement neutre de (K[X],+) est le polynˆ
ome nul :
P0Xk+PakXk=P(0 + ak)Xk=PakXk.
L’´
el´
ement oppos´
e de PakXkest P(−ak)Xk:
PakXk+P(−ak)Xk=P(ak+ (−ak))Xk=P0Xk.
§1.1 10/55
L’anneau des polynˆ
omes : v´
erification des axiomes
L’associativit´
e de (K[X],·)repose sur celle de (K,·):
hX
i
aiXi·X
j
bjXji·X
k
ckXk
=hX
sX
i+j=s
aibjXsi·X
k
ckXk=X
tX
i+j+k=t
(aibj)ckXt
=X
tX
i+j+k=t
ai(bjck)Xt=X
i
aiXi·hX
sX
j+k=s
bjckXsi
=X
i
aiXi·hX
j
bjXj·X
k
ckXki
La commutativit´
e de (K[X],·)repose sur de celle de (K,·):
X
i
aiXi·X
j
bjXj=X
sX
i+j=s
aibjXs
=X
sX
j+i=s
bjaiXs=X
j
bjXj·X
i
aiXi
L’´
el´
ement neutre est 1·X0. La distributivit´
e est laiss´
ee en exercice.
§1.1 11/55
L’anneau des polynˆ
omes : algorithmes
Algorithme 1 addition de deux polynˆ
omes
Entr´
ee: les coefficients de A=Pn
k=0 akXket B=Pn
k=0 bkXksur K.
Sortie: les coefficients de la somme C=A+B,C=Pn
k=0 ckXk
pour kde 0`
anfaire ck←ak+bkfin pour
retourner (c0,...,cn)
Algorithme 2 multiplication de deux polynˆ
omes
Entr´
ee: les coefficients de A=Pm
i=0 aiXiet B=Pn
j=0 bjXjsur K.
Sortie: les coefficients du produit C=A·B,C=Pm+n
k=0 ckXk
pour kde 0`
am+nfaire ck←0fin pour
pour ide 0`
amfaire
pour jde 0`
anfaire
ci+j←ci+j+aibj
fin pour
fin pour
retourner (c0,...,cm+n)
!
Cette m´
ethode de multiplication est de complexit´
e quadratique :
elle effectue (m+ 1)(n+ 1) additions et multiplications dans K.
§1.1 12/55
Le degr´
e des polynˆ
omes
Tout polynˆ
ome non nul s’´
ecrit comme P=Pn
k=0 pkXko`
upn6= 0.
Cette ´
ecriture est unique. On appelle deg P:= nle degr´
ede P,
et dom P:= pnle coefficient dominant de P.
Le polynˆ
ome nul est particulier ; on pose deg 0 := −∞ et dom 0 := 0.
Proposition (propri ´
et´
es du degr´
e sur un corps)
On a deg(P+Q)≤sup{deg P, deg Q}, avec ´
egalit´
e si deg P6= deg Q.
On a deg(P Q) = deg P+ deg Qet dom(P Q) = dom P·dom Q.
Soulignons en particulier que P6= 0 et Q6= 0 implique P Q 6= 0.
D´
emonstration. Supposons P=p0+p1X1+·· · +pnXnavec
pn6= 0 et Q=q0+q1X1+·· · +qmXmavec qm6= 0. Alors
P Q =p0q0+ (p0q1+p1q0)X1+·· · + (pnqm)Xm+n.
Dans un corps pn6= 0 et qm6= 0 implique pnqm6= 0.
On conclut que deg(P Q) = n+met dom(P Q) = dom P·dom Q.
Si P= 0 ou Q= 0, on a P Q = 0 et deg(P Q) = deg P+ deg Q
selon la convention (−∞) + deg Q=−∞ et deg P+ (−∞) = −∞.
§1.1 13/55
La division euclidienne : existence et unicit´
e
Soit Kun corps (par exemple Q,R,C).
Proposition (division euclidienne de polynˆ
omes)
Soit P∈K[X]un polynˆ
ome non nul. Alors pour tout S∈K[X]il existe
une unique paire Q, R ∈K[X]telle que S=P Q +Ret deg R < deg P.
D´
efinition (quotient et reste)
Si S=P Q +Ret deg R < deg P, on appelle Squo P:= Qle quotient
et Srem P:= Rle reste de la division euclidienne de Spar P.
(X5+ 1) = (X3−3X2)(X2+ 3X+ 9) + (27X2+ 1)
−(X5−3X4)
(3X4+ 1)
−(3X4−9X3)
(9X3+ 1)
−(9X3−27X2)
(27X2+ 1)
§1.2 14/55
La division euclidienne : d´
emonstration
Unicit´
e. Si l’on avait P Q +R=P Q0+R0avec deg R < deg P
et deg R0<deg P, alors on aurait P(Q−Q0) = R0−R,
donc deg P+ deg(Q−Q0) = deg(R−R0)<deg P.
Ceci n’est possible que pour deg(Q−Q0)<0, d’o`
uQ−Q0= 0.
On conclut que Q=Q0puis R=R0.
Existence. Si deg S < deg Palors Q= 0 et R=Sconviennent.
Pour deg S≥deg Pon proc`
ede par r´
ecurrence sur n= deg S.
On suppose le r´
esultat vrai pour tout polynˆ
ome ˜
Savec deg ˜
S < n.
On pose M= dom(P)−1dom(S)·Xdeg S−deg Pet ˜
S=S−P M .
Ainsi deg(P M ) = deg Set dom(P M ) = dom S, donc deg ˜
S < deg S.
Il existe ˜
Q, R ∈A[X]tels que ˜
S=P˜
Q+Ret deg R < deg P.
Ainsi S=˜
S+P M =P Q +Ren posant Q=˜
Q+M.
Cette construction se traduit en l’algorithme bien connu.
§1.2 15/55
La division euclidienne : algorithme
Algorithme 3 division euclidienne de deux polynˆ
omes
Entr´
ee: deux polynˆ
omes S, P ∈K[X],P6= 0, sur un corps K.
Sortie: les polyn ˆ
omes Q, R ∈K[X]v´
erifiant S=P Q +Ret deg R < deg P.
Q←0;R←S// invariant S=P Q +R
tant que deg R≥deg Pfaire
M←dom(P)−1dom(R)·Xdeg R−deg P// R=P M en degr ´
e dominant
Q←Q+M;R←R−P M // pr´
eserve S=P Q +R
fin tant que
retourner (Q, R)
Proposition
L’algorithme 3 ci-dessus est correct.
Terminaison. Le monˆ
ome Mest choisi de sorte que Ret P M aient
le mˆ
eme degr´
e et coefficient dominant. Ainsi deg(R−P M )<deg R.
L’algorithme se termine apr`
es au plus 1 + deg S−deg Pit´
erations.
Validit´
e. L’initialisation Q←0,R←Sassure que S=P Q +R,
et chaque it´
eration Q←Q+M,R←R−P M conserve cette ´
egalit´
e.
§1.2 16/55
Divisibilit´
e
D´
efinition
Soient A, B ∈K[X]deux polyn ˆ
omes sur K. On dit que Adivise B
dans K[X], not´
eA|B, s’il existe Q∈K[X]de sorte que AQ =B.
Par exemple, X+ 1 divise X2−1car (X+ 1)(X−1) = X2−1.
Notation
On ´
ecrit P1∼P2si P1=cP2pour un facteur constant c∈K×.
Dans ce cas on dit que P1et P2sont proportionnels.
Si P1∼P2, alors A|P1⇔A|P2et P1|B⇔P2|B.
Observation
On a toujours A|A(r´
eflexivit´
e),
A|Bet B|Cimplique A|C(transitivit´
e),
A|Bet B|Aimplique A∼B(antisym´
etrie).
Dans ce sens la divisibilit´
e d´
efinit un ordre partiel sur les polyn ˆ
omes.
Dans cet ordre, 1est minimal car 1|Ppour tout P∈K[X].
De mˆ
eme, 0est maximal car P|0pour tout P∈K[X].
§1.2 17/55
Divisibilit´
e:v´
erification des propri ´
et´
es
Rappel. On a A|Bs’il existe Qde sorte que AQ =B.
R´
eflexivit´
e : A|A.
C’est clair car A·1 = A.
Transitivit ´
e : A|Bet B|Cimplique A|C.
Si AU =Bet BV =Calors A(U V ) = C.
Antisym´
etrie : A|Bet B|Aimplique A∼B.
Si A= 0 alors B=AU = 0, et on a A∼B. Supposons donc A6= 0.
Par hypoth `
ese on a AU =Bet BV =A, donc AU V =A,
soit encore A(UV −1) = 0. Puisque A6= 0 ceci implique UV = 1.
Ensuite UV = 1 implique deg U= deg V= 0 et donc U, V ∈K×.
On conclut que A∼B.
Observation. Si A|Bet A|Calors A|(B+C).
Par distributivit´
eAU =Bet AV =Cimplique A(U+V) = B+C.
§1.2 18/55
D´
efinition du pgcd
D´
efinition
On dit que Cest un diviseur commun de A1, . . . , Ansi C|Akpour
tout k. On note D(A1, . . . , An)l’ensemble des diviseurs communs.
On dit que D∈D(A1, . . . , An)est un plus grand commun diviseur
(pgcd) si tout autre diviseur commun C∈D(A1, . . . , An)divise D.
On note pgcd(A1, . . . , An)le pgcd unitaire de A1, . . . , An, si non nul.
Exemple : A1= 3X2−6X−9 = (3X−9)(X+ 1)
et A2= 6X2−10X−24 = (2X−6)(3X+ 4) dans Q[X].
Ici X−3ou 2X−6ou 3X−9sont des diviseurs communs, voire des
pgcd de A1et A2.`
A noter qu’ils sont proportionnels entre eux.
!
Cette ambigu¨
ıt´
e nous oblige `
a dire un pgcd et non le pgcd.
Pour nos impl´
ementations ceci pose un probl`
eme de sp´
ecification.
On privil ´
egiera le pgcd unitaire, `
a coefficient dominant 1.
Sur un corps on peut toujours passer de P`
aP/ dom(P).
§1.3 19/55
Existence du pgcd : algorithme pr ´
eliminaire
Soit A, B ∈K[X]deux polyn ˆ
omes. On it`
ere la division euclidienne :
R0=A
R1=B
R2=R0rem R1=R0−R1Q1
.
.
..
.
.
Rn=Rn−2rem Rn−1=Rn−2−Rn−1Qn−1
0 = Rn−1rem Rn=Rn−1−RnQn
La terminaison est assur ´
ee car deg R1>deg R2>··· >deg Rn.
Apr`
es un nombre fini d’it´
eration on tombe donc sur Rn+1 = 0.
Proposition
Le dernier reste Rnnon nul est un pgcd de Aet B.
D´
emonstration.
Par hypoth `
ese Rndivise Rn−1, Rn−2, . . . , R2puis R1=B,R0=A.
C’est donc un diviseur commun de Aet B. R´
eciproquement, si P
divise R0=Aet R1=Balors il divise aussi R2, . . ., Rn.
§1.3 20/55
1 / 14 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!