• Aucun résultat trouvé

Cette section est consacrée à la triangularisation par les programmes de la clôture constructible dynamique de deux systèmes polynomiaux dans Q[X1;X2;X3] en util-isant désormais la nouvelle notion de sans carré. Les problèmes mis en évidence sur ces deux exemples montrent que cette stratégie doit s'accompagner d'une modication d'une procédure centrale de ces programmes.

On considère l'exemple suivant avec la nouvelle notion de sans carré : T1 =

( X1X3+X2 = 0 X22+X1 = 0

Ce système se traduit dans la clôture constructible comme suit :

x:CL:= parameter('x)

On remarque un problème de taille : on obtient dans le deuxième système l'équation y2 = 0 au lieu de l'équation y = 0 et donc un polynôme qui est un carré! Quel est l'origine de ce problème?

On introduit les trois paramètres x;y et z. Le polynôme X22 +x est unitaire et sans carré au sens de D. Lazard. En eet, le paramètrexn'étant soumis à aucune contrainte, l'anneau K1 est égal à Q(X1). Par suite, le discriminant de X22+x, égal à ;4x, c'est-à-dire ;4X1, est bien inversible dans K1. Il n'y a donc pas de scindage à ce niveau.

En revanche, le polynôme xX3+y n'est pas unitaire. D'où le scindage : x= 0?

false

zz✈ ✈ ✈ ✈

true $$

A ce stade, le programme stocke le cas suivant. C'est ce qui correspondra au cas courant lorsque le programme empruntera la branche true. On le note mutnext. Celui-ci est égal à :

mutnext = [x= 0;y2+x= 0;any z]:

Avant de suivre la branche true, le programme réduit tout d'abord mutnext, i.e. il réduit successivement les polynômes composant les lois de cette tour. Ce qui se traduit

Adaptation de la notion de sans carré de D. Lazard 155 par la réduction du polynôme X22+xmodulox. Le cas courant mutnext est alors égal à : mutnext= [x= 0;y2= 0;any z]:

Le programme impose alors les deux contraintes du système initial aux trois paramètres x;y;z avec mutnext comme cas courant. Celles-ci sont clairement compatibles avec mutnext et par conséquent, le laissent

inchangé

. A la n de cette branche, on obtient alors le deuxième système :

[x= 0; y2 = 0; any z]

Ainsi, avec la condition de sans carré de D. Lazard, les programmes de T. Gómez-Díaz triangularisent le système T1 de la manière suivante :

156 Adaptation de la notion de sans carré de D. Lazard Que se passe-t-il sur ce même exemple avec l'approche de T. Gómez-Díaz?

On introduit les trois paramètresx;y etz. La tour de T. Gómez-Díaz dénie par le cas courant est :

(L0 = Q;L1 = Q[X1];L2 = Q[X1;X2];L3 = Q[X1;X2;X3]):

Adaptation de la notion de sans carré de D. Lazard 157 Le polynôme X22+xn'est donc pas sans carré au sens de T. Gómez-Díaz. En eet, le discriminant de X22+x, égal à ;4x, c'est-à-dire ;4X1, n'est pas inversible dans L1. Par suite, il y a déjà un scindage à ce niveau, à savoir :

x= 0?

false

zz✈ ✈ ✈ ✈

true $$

Dans la branche false, le polynôme xX3 + y peut être alors rendu unitaire. Dans l'autre branche, le polynôme xX3+y est nul (puisque les contraintes sur x et y sont x= 0 et y= 0). Cette fois, la triangularisation de T1 s'opère ainsi :

158 Adaptation de la notion de sans carré de D. Lazard

Adaptation de la notion de sans carré de D. Lazard 159 Ainsi, en sortie, on obtient le résultat :

8

Le fait d'avoir scindé plus tôt a donc permis d'éviter le problème précédent.

Ainsi, avec la nouvelle notion de sans carré, les polynômes dénissant les lois d'un cas suivant ne sont donc pas nécessairement sans carré (au sens classique). Malheureuse-ment, ce n'est pas le seul type de problème engendré par l'implantation de la notion de sans carré de D. Lazard comme le montre l'exemple suivant :

T2 =

( (X13;X1)X32;X3 = 0 X22+X12 = 0

Sa traduction dans la clôture constructible est :

x:CL:= parameter('x) y:CL:= parameter('y) z:CL:= parameter('z)

mustBeEqual(y^2+x^2,0) and mustBeEqual((x^3-x)*z^2-z,0)

Avec la nouvelle dénition de sans carré, on obtient alors le résultat :

8

Le premier système ne présente pas d'anomalie. Dans le second, le polynôme X22 +x2 n'est pas sans carré au sens de D. Lazard. En eet, le discriminant de X22+x2 est égal

Si on analyse le déroulement des programmes sur cet exemple, on constate que le

160 Adaptation de la notion de sans carré de D. Lazard premier scindage intervient au niveau du polynôme (x3 ;x)X32 ;X3 où il s'agit de le rendre unitaire. En eet, le polynôme X22 +x2 est unitaire. Puisqu'il n'y a pas de contrainte sur x, l'anneau K1 est égal à Q(X1) et le paramètre x à X1. Par suite, le discriminant de X22+x2 est égal à ;4X12 et est donc bien inversible dans K1.

Ainsi, le premier scindage est :

x3 ;x= 0?

false

vv❧ ❧ ❧ ❧ true

((

Le cas suivant, noté mutnext, est alors égal à :

mutnext:= [x3;x= 0;y2+x2 = 0;any z]:

On peut noter qu'il est déjà réduit. De plus, la contrainte y2+x2 = 0 est évidemment compatible avecmutnextet ne le modie donc pas. Enn, la deuxième contrainte ((x3; x)z2;z = 0), après réduction, devient z = 0 et ne provoque pas de scindage. L'arbre binaire suivant illustre la triangularisation du système T2 menée par les programmes de T. Gómez-Díaz avec la condition de sans carré de D. Lazard.

Adaptation de la notion de sans carré de D. Lazard 161 Pour éviter le problème rencontré dans le système :

8

162 Adaptation de la notion de sans carré de D. Lazard il faut donc que les programmes détectent qu'il y a un scindage à opérer dansmutnext

avant

d'examiner les contraintes du système initial, c'est-à-dire avant d'emprunter la branche true au niveau du n÷ud x3;x= 0?.

Ainsi, cet exemple montre que les polynômes dénissant les lois d'un cas suivant ne sont pas nécessairement sans carré au sens de D. Lazard. On peut noter que ce problème englobe celui rencontré dans la triangularisation du système T1.

Au niveau de l'implantation, il s'agit donc de modier la procédureparameter. En eet, lorsque le programme remonte après un scindage au noeud précédent, c'est elle qui gère le passage cas suivant! cas courant avant l'examen des diérentes contraintes.

La mise en place de ces modications fait l'objet de la section suivante.