Dans cette section, nous d´ecrivons l’algorithme obtenu `a partir des r´esultats des deux sec-tions pr´ec´edentes de ce chapitre et qui calcule au moins un point par composante connexe sur une vari´et´e alg´ebrique r´eelle d´efinie par un syst`eme S = (P1, . . . , Pk) d’´equations po-lynomiales dans K[X1, . . . , Xn]. On se ram`ene au cas d’une seule ´equation en ´etudiant l’hypersurface d´efinie par P = P12 +. . .+Pk2 = 0. Introduisons la variable Xn+1 et les infinit´esimaux ζ, ε= 1/Ω, posons
Q=P2+ (X12 +. . .+Xn2 +Xn+12 −1/ε2)2 et consid´erons l’hypersurface d´efinie par :
Q1 = (1−ζ)Q+ζX12(d1+1)+X22(d2+1)+. . .+Xn2dn+1+Xn+16 −(n+ 1)1/ε2(d1+1)= 0, o`u d1, . . . , dn+1 sont les degr´es totaux de Q en X1, . . . , Xn+1. Sans nuire `a la g´en´eralit´e, on suppose que d1 ≥. . .≥dn≥dn+1.
La famille
Q1,∂Q1
∂X2
, . . . , ∂Q1
∂Xn+1
est une base de Gr¨obner pour l’ordre du degr´e lexicographique [14, 13, 95] avecX1 > . . . >
Xn > Xn+1, on peut dans un premier temps appliquer l’algorithmeLRB`a cette famille.
On obtient une liste de Repr´esentations Univari´ees Rationnelles `a coefficients dans K(ε) repr´esentant les limites des points critiques de la fonction de projection surX1 restreinte `a V(Q1) lorsqueζ tend vers 0. On obtient alors au moins un point par composante connexe sur V(Q). D’apr`es [14, 13, 95], la projection de ces points sur Rhεin donne au moins un point par composante connexe surV(P)TRhεin. D’apr`es la remarque 6.2, ces points sont repr´esent´es par des Repr´esentations Univari´ees Rationnelles
f(ε, T) = 0
g0(ε, T)X1−gn(ε, T) = 0 ...
g0(ε, T)Xn−gn(ε, T) = 0
dont le polynˆomef est square-free, donc on peut inverserg0modulof et obtenir une base de Gr¨obner lexicographique :
f(ε, T) = 0
X1−gn(ε, T)g0(ε, T)modulof = 0 ...
Xn−gn(ε, T)g0(ε, T)modulof = 0
On peut alors r´eappliquer l’algorithmeLRB aux bases de Gr¨obner ainsi obtenues.
Algorithme CPM
– Entr´ee :Un syst`emeS= (P1, . . . , Pk) d’´equations polynomiales dansK[X1, . . . , Xn].
– Sortie : Une liste de Repr´esentations Univari´ees Rationnelles repr´esentant au moins un point par composante semi-alg´ebriquement connexe deV(S).
1. PoserP :=P12+. . .+Pk2.
2. Introduire une nouvelle variableXn+1 et poserQ:=P+ (X12+. . .+Xn2+Xn+12 −1/ε2)2. 3. PoserQ1:= (1−ζ)Q+ζ(X12(d1+1)+. . .+Xn2(dn+1)+Xn+16 −(n+1)1/ε2(d1+1)), o`ud1, . . . , dn, dn+1
sont les degr´es totaux deP1 enX1, . . . , Xn, Xn+1 tels qued1≥. . .≥dn+1. 4. Calculer les d´eriv´ees partielles ∂Q∂X11, . . . ,∂X∂Q1
n.
5. Calculer une Repr´esentation Univari´ee Rationnelle `a coefficients dans K(ε)hζi de la base de Gr¨obner [Q1,∂Q∂X11, . . . ,∂X∂Qn1], associ´ee `a un ´el´ement bien s´eparant et calculer les limites des racines born´ees de cette base lorsqueζ tend vers 0 en utilisant l’algorithme LRB.
6. Pour chaque Repr´esentation Univari´ee Rationnelle (f(ε, T), g0(ε, T), g1(ε, T), . . . , gn+1(ε, T)) `a coefficients dans K(ε) retourn´ee par l’´etape pr´ec´edente, calculer l’inverse Q de g0 modulo f, et utiliser LRB sur la base de Gr¨obner lexicographique (f(ε, T), X1−(Qg1modulof), . . . , Xn− (Qgnmodulof)).
7. Retourner les RUR obtenues pour lesquelles le premier polynˆome a des racines r´eelles.
Analyse exp´erimentale :
De mani`ere `a tester la taille des donn´ees interm´ediaires apparaissant au cours d’un tel algorithme, nous avons simul´e celui-ci en Maple sur le syst`eme d’´equations polynomiales
suivant : (
x2+y2+z2−1 = 0 xyz−1 = 0
Notons que ce syst`eme d’´equations est tr`es simple et que l’algorithme de D´ecomposition Cylindrique Alg´ebrique parvient `a le r´esoudre. Nous obtenons en premier lieu le polynˆome nomm´eP dans l’algorithme ci-dessus :
P:=x^2*y^2*z^2+x^4+2*x^2*y^2+2*x^2*z^2+y^4+2*y^2*z^2+z^4-2*x*y*z-2*x^2-2*y^2-2*z^2+2
Notons que le degr´e total de ce polynˆome est 6 alors que le degr´e total des polynˆomes de d´epart est born´e par 3. Remarquons aussi que l’hypersurface ainsi consid´er´ee contient syst´ematiquement une infinit´e de points singuliers. Enfin, alors que le syst`eme de d´epart est creux, nous ramenons l’´etude `a une hypersurface qui ne l’est plus.
Algorithme th´eorique 71 Voici le polynˆomeQ que nous calculons en rajoutant la variable t:
Q:=x^2*y^2*z^2+2*x^4+4*x^2*y^2+4*x^2*z^2+2*x^2*t^2+2*y^4+4*y^2*z^2+2*y^2*t^2+2*z^4 +2*z^2*t^2+t^4-2*x*y*z-2/eps^2*x^2-2*x^2-2*y^2-2/eps^2*y^2-2/eps^2*z^2-2*z^2-2/eps^2*t^2+2+1/eps^4
Remarquons que l’hypersurface d´efinie parQcontient elle aussi une infinit´e de singularit´es.
Ainsi, la d´eformation infinit´esimale parζ est in´evitable.
Nous obtenons alors le polynˆome Q1:
Q1:=zeta*x^14+zeta*y^13+zeta*z^13+zeta*t^9+x^2*y^2*z^2-zeta*x^2*y^2*z^2-2*zeta*x^4+
Apr`es ces manipulations, nous obtenons directement une base de Gr¨obner pour l’ordre du degr´e lexicographique avec x > y > z > t. On la note G et nous l’affichons ci-dessous :
[zeta*x^14+zeta*y^13+zeta*z^13+zeta*t^9+x^2*y^2*z^2-zeta*x^2*y^2*z^2-2*zeta*x^4+
En observant le degr´e des monˆomes dominants, on trouve que le degr´e de l’id´eal d´efini par cette base de Gr¨obner est 16128. Nous devons alors en calculer une Repr´esentation Uni-vari´ee Rationnelle. Il est ´evident que mˆeme sur les entiers, un tel calcul est trop couteux.
Dans le cas pr´esent, nous devons effectuer ces calculs dans Qhε, ζi, ce qui complique le probl`eme. Il n’est donc pas ´etonnant de constater que ce calcul ne passe pas. En posant l’hypoth`ese que pour une entr´ee de taille plus importante, le temps de calcul est plus im-portant, il apparait clairement que cet algorithme ne pourra pas donner de bons r´esultats en pratique. Analysons les ´etapes bloquantes :
– sur l’exemple ci-dessus, le degr´e de l’id´eal z´ero-dimensionnel est un facteur bloquant.
Soit d un entier qui borne le degr´e des polynˆomes du syst`eme d’entr´ee. Les degr´es des polynˆomesP etQcalcul´es par l’algorithme sont alors born´es par 2d. En bornant d1 pard, on trouve que le degr´e deQ1 est born´e par 2d(2d+ 1). Comme on a rajout´e une variable, on trouve que le degr´e du syst`eme z´ero-dimensionnel produit est alors born´e par 6(4d)n, ce qui donne sur notre exemple simple 20736. On constate que l’´el´evation au carr´e du pas 1 de l’algorithme ainsi que la d´eformation du pas 3 sont responsables de la taille de ces syst`emes z´ero-dimensionnels. Il est clair que la d´eformation du pas 3 de l’algorithme engendre une croissance de degr´e pour se ramener sans calcul `a une base de Gr¨obner.
– Remarquons que mˆeme si on ne consid`ere en entr´ee que des hypersurfaces, cette croissance de degr´es intervient : le pas 2 de l’algorithme en est responsable. Or, cette d´eformation est rendue n´ecessaire par l’usage de la fonction de projection : on doit se ramener au cas d’une hypersurface compacte pour qu’elle atteigne ses valeurs critiques sur chacune des composantes semi-alg´ebriquement connexes.
– Supposons que les m´ethodes de r´esolution des syst`emes z´ero-dimensionnels per-mettent de r´esoudre des probl`emes dont la taille est de l’ordre de ce que nous avons obtenu. Notons qu’au pas 2 nous n’avons introduit qu’un seul infinit´esimal. En re-vanche, il est clair que l’hypersurface obtenue contient une infinit´e de singularit´es.
Ceci implique – en partie – l’introduction de l’infinit´esimal dans le pas 3 de l’algo-rithme. Nous devrions alors travailler sur une arithm´etique `a deux infinit´esimaux, dont les op´erations ´el´ementaires sont bien plus couteuses que sur les entiers.
On peut retenir de ces trois points que la mise en œuvre algorithmique des m´ethodes de points critiques n’est pas encore suffisamment aboutie pour en esp´erer des implantations efficaces. Le probl`eme r´eside essentiellement dans les manipulations effectu´ees pour passer du cas g´en´eral de vari´et´es alg´ebriques r´eelles d´efinies par un syst`eme d’´equations quel-conque au cas tr`es particulier d’une hypersurface r´eelle lisse et compacte. Cette d´emarche se retrouve d’ailleurs dans la plupart des algorithmes propos´es dans le cadre de la m´ethode des points critiques.