Résultant de deux polynômes : resultant

### 6.29.19 Résultant de deux polynômes : `resultant`

`resultant` a comme arguments deux polynômes.
`resultant` renvoie le résultant des deux polynômes.
Le résultant est le déterminant de la matrice S de Sylvester.
Pour les deux polynômes A(x)=∑i=0i=n aixi et B(x)=∑i=0i=mbixi, la matrice S de Sylvester est une matrice carrée de dimensiom m+n dont les m premières lignes sont composées à partir des coefficients de A(x) :

⎛ ⎜ ⎜ ⎜ ⎝ |
s00=an | s01=an−1 | ⋯ | s0n)=a0 | 0 | ⋯ | 0
s10=0 | s11=an | ⋯ | s1n=a1 | s1(n+1)=a0 | ⋯ | 0
⋮ | ⋮ | ⋮ | ⋱ | ⋮ | ⋱ | ⋮
s(m−1)0=0 | s(m−1)1=0 | ⋯ | s(m−1)n=am−1 | s(m−1)(n+1)=am−2 | ⋯ | a0
| ⎞ ⎟ ⎟ ⎟ ⎠

et les n lignes suivantes sont composées de la même façon à partir des coefficients de B(x) :

⎛ ⎜ ⎜ ⎝ |
sm0=bm | sm1=bm−1 | ⋯ | smm=b0 | 0 | ⋯ | 0
⋮ | ⋮ | ⋮ | ⋱ | ⋮ | ⋱ | ⋮
s(m+n−1)0=0 | s(m+n−1)1=0 | ⋯ | s(m+n−1)m=bn−1 | bn−2 | ⋯ | b0
| ⎞ ⎟ ⎟ ⎠

On tape :

`resultant(x```^```3-p*x+q,3*x```^```2-p,x)`

On obtient :

`-4*p```^```3--27*q```^```2`

On cherche si il existe 2 polynômes U(x)=x+β (de degré 1) et V(x)=x2+x+є (de degré 2) pour que U(x)*(x3−p*x+q)+V(x)*(3*x2−p)=1
On doit donc résoudre un système linéaire de 5 équations à 5 inconnues qui sont α,...δ,η (Attention ! є=1e−10).
On tape :
`symb2poly((alpha*x+beta)*(x```^```3-p*x+q)+(gamma*x```^```2+delta*x+
eta)*(3*x```^```2-p),x)`
On obtient :
`poly1[alpha+3*gamma,beta+3*delta,-alpha*p-p*gamma+3*eta,
alpha*q-beta*p-p*delta,beta*q-p*eta]`
La matrice A de ce système est donc :

A= | ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ |
1 | 0 | 3 | 0 | 0
0 | 1 | 0 | 3 | 0
−p | 0 | −p | 0 | 3
q | −p | 0 | −p | 0
0 | q | 0 | 0 | −p
| ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠

la matrice S de Sylvester est la transposée de A:

S= | ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ |
1 | 0 | −p | q | 0
0 | 1 | 0 | −p | q
3 | 0 | −p | 0 | 0
0 | 3 | 0 | −p | 0
0 | 0 | 3 | 0 | −p
| ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠

On a `det(A)=det(S)=-4*p```^```3+27*q```^```2`
En fait on résout UP+VQ=C avec C quelconque tel que deg(C)<deg(P)+deg(Q) i.e. on cherche U et V tel que deg(U)<deg(Q) et deg(V)<deg(P) (inegalites strictes) vérifiant UP+VQ=1. Lorsque le système est de Cramer, il y a une solution unique et ca correspond en arithmétique à P et Q premiers entre eux (et réciproquement).
Donc si det(A)=det(S) est non nul, U et V existent et sont uniques donc les 2 polynômes x3−p*x+q et 3*x2−p sont premiers entre eux et réciproquement si les 2 polynômes x3−p*x+q et 3*x2−p sont premiers entre eux U et V tel que deg(U)<deg(Q) et deg(V)<deg(P) existent et sont uniques donc det(A)=det(S) est non nul.
Donc si ce déterminant est nul les 2 polynômes x3−p*x+q et 3*x2−p ne sont pas premiers entre eux.
Remarque
On a : discriminant(P)=`resultant(P,P’)/lcoeff(P)`.

Un exemple d’utilisation du résultant
Soient 2 points fixes F1 et F2 et un point variable A sur le cercle de centre F1 et de rayon 2a. On veut trouver l’équation cartésienne du lieu des points M intersection de F1A et de la médiatrice de F2A : on a MF1+MF2=MF1+MA=F1A=2a donc M décrit une ellipse de foyers F1 et F2 et de grand axe 2a.
Choisisons comme repère orthonormé celui de centre F1 et d’axe Ox porté par le vecteur F1F2. On a :
A= (2acos(θ);2asin(θ)) où θ est l’angle (Ox,OA). On choisit comme paramètre t=tan(θ/2) pour que les coordonnées de A soient une fonction rationnelle du paramètre t. On a donc :
A=(ax;ay)=(2a1−t2/1+t2;2a2t/1+t2)
On pose F1F2=2c et on note I le milieu de AF2. On a :
F2=(2c,0) et
I=(c+ax/2;ay/2)=(c+a1−t2/1+t2;a2t1−t2/1+t2)
IM est perpendiculaire à AF2 donc M=(x;y) vérifie l’équation eq1=0 avec :
eq1:=(x−ix)*(ax−2*c)+(y−iy)*ay
M=(x;y) est sur F1A donc M vérifie l’équation eq2=0 avec :
eq2:=y/x−ay/ax
On a :
`resultant(eq1,eq2,t)` est un polynôme eq3 en x et y, eq3 est indépendant de t et il existe des polynômes en t, U et V tels que : U(t)*eq1+V(t)*eq2=eq3.
On tape :
`ax:=2*a*(1-t```^```2)/(1+t```^```2);ay:=2*a*2*t/(1+t```^```2);`
`ix:=(ax+2*c)/2; iy:=(ay/2)`
`eq1:=(x-ix)*(ax-2*c)+(y-iy)*ay`
`eq2:=y/x-ay/ax`
`factor(resultant(eq1,eq2,t))`
On obtient comme résultant :
`-(64``·``(x```^```2+y```^```2)``·``(x```^```2``·``a```^```2-x```^```2``·``c```^```2+-2``·``x``·``a```^```2``·``c+2``·``x``·``c```^```3-a```^```4+
2``·``a```^```2``·``c```^```2+a```^```2``·``y```^```2-c```^```4))`
Le facteur `-64``·``(x```^```2+y```^```2)` ne s’annule jamais donc l’équation du lieu est :

x2a2−x2c2+−2xa2c+2xc3−a4+2a2c2+a2y2−c4=0

En prenant l’origine du repère en O milieu de F1F2, on retrouve l’équation cartésienne de l’ellipse. Pour faire ce changement d’origine, on a F1M=F1O+OM, donc on tape :
`normal(subst(x```^```2``·``a```^```2-x```^```2``·``c```^```2+-2``·``x``·``a```^```2``·``c+2``·``x``·``c```^```3-a```^```4+
2``·``a```^```2``·``c```^```2+a```^```2``·``y```^```2-c```^```4,[x,y]=[c+X,Y]))`
On obtient :
`-c```^```2*X```^```2+c```^```2*a```^```2+X```^```2*a```^```2-a```^```4+a```^```2*Y```^```2`
ou encore si on pose b2=a2−c2
`normal(subst(-c```^```2*X```^```2+c```^```2*a```^```2+X```^```2*a```^```2-a```^```4+a```^```2*Y```^```2,
c```^```2=a```^```2-b```^```2))`
On obtient :
`-a```^```2*b```^```2+a```^```2*Y```^```2+b```^```2*X```^```2`
c’est à dire après division par a2b2, M vérifie l’équation :

X2
a2
| + |
Y2
b2
| =1

Un autre exemple d’utilisation du résultant
Soient 2 points fixes F1 et F2 et un point variable A sur le cercle de centre F1 et de rayon 2a. On veut trouver l’équation cartésienne de l’enveloppe de la médiatrice D de F2A (on sait que la médiatrice de F2A est tangente à l’ellipse de foyers F1 et F2 et de grand axe 2a).
Choisisons comme repère orthonormé celui de centre F1 et d’axe Ox porté par le vecteur F1F2. On a :
A= (2acos(θ);2asin(θ)) où θ est l’angle (Ox,OA). On choisit comme paramètre t=tan(θ/2) pour que les coordonnées de A soient une fonction rationnelle du paramètre t. On a donc :
A=(ax;ay)=(2a1−t2/1+t2;2a2t/1+t2)
On pose F1F2=2c et on note I le milieu de AF2. On a :
F2=(2c,0) et
I=(c+ax/2;ay/2)=(c+a1−t2/1+t2;a2t1−t2/1+t2)
D est perpendiculaire à AF2 donc D a pour équation : eq1=0 avec :
eq1:=(x−ix)*(ax−2*c)+(y−iy)*ay
L’enveloppe de D est donc le lieu de M intersection de D et de D′ d’équation eq2=0 avec eq2:=diff(eq1,t).
On tape :
`ax:=2*a*(1-t```^```2)/(1+t```^```2);ay:=2*a*2*t/(1+t```^```2);`
`ix:=(ax+2*c)/2; iy:=(ay/2)`
`eq1:=normal((x-ix)*(ax-2*c)+(y-iy)*ay)`
`eq2:=normal(diff(eq1,t))`
`factor(resultant(eq1,eq2,t))`
On obtient comme résultant :
`(-(64``·``a```^```2))``·``(x```^```2+y```^```2)``·``(x```^```2``·``a```^```2-x```^```2``·``c```^```2+-2``·``x``·``a```^```2``·``c+2``·``x``·``c```^```3-
a```^```4+2``·``a```^```2``·``c```^```2+a```^```2``·``y```^```2-c```^```4)`
Le facteur `-64``·``(x```^```2+y```^```2)` ne s’annule jamais donc l’équation du lieu est :
x2a2−x2c2+−2xa2c+2xc3−a4+2a2c2+a2y2−c4=0
En prenant l’origine du repère en O milieu de F1F2, on retrouve comme précédemment l’équation cartésienne de l’ellipse :

X2
a2
| + |
Y2
b2
| =1