CALCUL DE R ESOLVANTES AVEC LES MODULES DE CAUCHY

Ces facteurs parasites etaient d ej a signal es par J.L. Lagrange. Ce sont .... Un ensemble T de n polyn^omes de K x1;::: ;xn] est dit triangulaire de. K x1;::: ;xn] si ...
380KB taille 5 téléchargements 366 vues
CALCUL DE RE SOLVANTES AVEC LES MODULES DE CAUCHY NICOLAS RENNERT, ANNICK VALIBOUZE

Abstract. This paper gives a new and ecient algorithm in order to compute some

characteristic polynomials using Cauchy modules. This algorithm is used for the computation of absolute resolvents and multi-resolvents which are essential tools in constructive Galois theory. Cet article decrit un algorithme nouveau et ecace pour calculer des polyn^omes caracteristiques d'endomorphismes dans un algebre quotient en utilisant les modules de Cauchy. Cet algorithme est ensuite utilise pour calculer des resolvantes et des multiresolvantes absolues, outils de base de la theorie des corps et donc aussi de la theorie de Galois constructive.

1. Introduction La resolvante est l'outil de base de la theorie de Galois e ective dont le calcul a la main s'avere vite impossible. Ainsi, chercher a diminuer le temps consacre a son calcul ameliore celui du calcul du groupe de Galois d'un polyn^ome. Historiquement les premiers a realiser de tels calculs a l'aide de l'outil informatique, furent R. P. Stauduhar [20] et K. Girstmair [12] utilisant pour le premier une methode basee sur des calculs numeriques. Bien que le resultat ne soit pas certi e, cette methode s'avere ^etre la plus rapide dans le cas general. Le logiciel GALP [10] basee sur la librairie PARI/GP, utilise ces techniques pour determiner le groupe de Galois de polyn^omes. Les methodes algebriques ont en revanche l'avantage d'^etre exactes. Parmi elles, les methodes basees sur les fonctions symetriques s'averent ecaces pour des invariants particuliers (voir [21]). Cet article s'interesse aux algorithmes qui calculent des resolvantes pour un invariant quelconque et qui sont bases sur l'operation de resultant. Le resultant est un outil particulierement puissant pour manipuler algebriquement les racines de polyn^omes qui depuis Lagrange a servi pour le calcul de la resolvante (voir [9]). Le premier qui sur machine a utilise le resultant pour le calcul de resolvantes (absolues) est L. H. Soicher pour des invariants lineaires (voir [19]). Jusqu'a present les methodes basees sur le resultant pour calculer la resolvante (absolue) se heurtaient a deux defauts : apparition de facteurs et de puissances \parasites" qui augmentent considerablement la taille des polyn^omes necessaires et reduisent donc l'ecacite. Cet article presente un algorithme simple et rapide (voir theoreme 4.4) qui calcule, sans formation de facteurs parasites, le polyn^ome caracteristique d'un endomorphisme multiplicatif associe a un invariant quelconque donne. Le polyn^ome caracteristique est une Date : Juin 1997.

 projet GALOIS du GDR de Calcul Formel MEDICIS.

1

2

NICOLAS RENNERT, ANNICK VALIBOUZE

puissance de la resolvante pour ce m^eme invariant. Ainsi le probleme des facteurs \parasites" est resolu, reste encore celui de la puissance \parasite". L'algorithme propose utilise essentiellement le resultant et les modules de Cauchy qui forment une base de Grobner reduite de l'ideal des relations symetriques (pour l'ordre lexicographique). Si les calculs du theoreme 4.4 sont realises modulo l'ideal des relations symetriques alors la puissances a laquelle nous obtenons la resolvante est reduite et les calculs intermediaires acceleres. Si les calculs modulaires n'aboutissent pas a la resolvantes mais a une puissance strictement positive (ce qui est previsible a priori alors nous utilisons alors le resultat de F. Lehobey (voir [16]) pour eliminer ces puissances en cours de calcul (ce travail fait reference aux resultats de article). Ainsi le probleme de la puissance parasite est egalement resolu (voir algo 6.2). L'algorithme de calcul des resolvantes est naturellement generalise au cas des multiresolvantes, c'est-a-dire les resolvantes relatives a un produit de groupes symetriques. Finalement sont exposees l'implantation de cette methode, la comparaison avec d'autres algorithmes algebriques ainsi que des ameliorations. 2. Notations et definitions  K designe un corps de caracteristique 0 ;  x est une variable indeterminee sur K ;  f est un polyn^ome unitaire de K[x] de degre n ;  x1; : : : ; xn sont des variables indeterminees sur K ;  K[x1 ; : : : ; xn] designe l'anneau des polyn^omes en les variables x1 ; : : : ; xn et a coecients dans K ;  K(x1 ; : : : ; xn) designe le corps des fractions de K[x1 ; : : : ; xn ] ;  est un polyn^ome appartenant a K[x1 ; : : : ; xn] ;  = ( 1 ; : : : ; n) est une liste (ordonnee) formee des n racines du polyn^ome f dans une cl^oture algebrique K^ de K ;  ( ) = ( 1 ; : : : ; n) ;  Sn designe le groupe symetrique de degre n . De nition 2.1. Le polyn^ome est dit d'arite m si m est le plus petit entier j tel qu'il existe j entiers distincts i1 ; : : : ; ij veri ant 2 K[xi ; : : : ; xij ]. De nition 2.2. Si ( ) = 0 alors est appelee une -relation. De nition 2.3. L'action du groupe symetrique Sn sur est de nie par : : = (x (1) ; : : : ; x (n) ) pour tout  2 Sn De nition 2.4. L'action du groupe symetrique Sn sur K^ n est de nie, pour tout  2 Sn et tout = ( 1 ; : : : ; n ) 2 K^ n , par  = ( (1) ; (2) ; : : : ; (n) ). De nition 2.5. L'orbite de sous l'action d'un sous-groupe L de Sn, notee L: , est de nie par : L: = f: j  2 Lg 1

CALCUL DE RE SOLVANTES AVEC LES MODULES DE CAUCHY

3

De nition 2.6. Soient L et H deux sous-groupes de Sn tels que L contienne H . Le polyn^ome est dit L-primitif H -invariant si H est le stabilisateur de dans L : H = StabL( ) = f 2 L j : = g : Lorsque L = Sn, l'invariant est dit egalement H -invariant primitif. Exemple 1. Soit H = S2  Sn?2 . Le polyn^ome = x1 + x2 est un Sn -primitif H -invariant. De nition 2.7. Soient deux sous-groupes L et H du groupe symetrique Sn tels que L contienne H . L'ensemble f1 ; : : : ; e g est appele une transversale a gauche de L mod H si 1 H; : : : ; e H sont les di erentes classes a gauches de L mod H . De nition 2.8. Pour i = 0; : : : ; n, la i-ieme fonction symetrique elementaire en x1 ; : : : ; xn , notee ei , est de nie par : e0 = 1 X ; et pour i  1 ei = m : m2Sn :(x1 xi ) n Remarque 1. Rappelons que f (x) = x ? e1 ( )xn?1 + e2 ( )xn?2 +    + (?1)n en ( ).

De nition 2.9. Les n fonctions fonctions interpolaires introduites par Ampere (voir

[2]) veri ent :

fi 2 K[xi+1 ; : : : ; xn][x]

Et sont de nies ainsi : fn(x) = f (x) ;

degx (fi ) = i

et

? fi+1(xi+1) fi(x) = fi(x; xi+1 ; : : : ; xn ) = fi+1 (xx) ? x i+1

:

n?1 i1

:

De nition 2.10. Les polyn^omes f1(x1 ); f2 (x2); : : : ; fn(xn ) sont appeles les modules de Cauchy associes au polyn^ome f . De nition 2.11. Soit L un sous-groupe du groupe symetrique Sn. L'ideal I L = fr 2 K[x1 ; : : : ; xn] j (8 2 L) (:r)( ) = 0g : est un ideal radical appele ideal des -relations invariantes par L. De nition 2.12. L'ideal I Sn , note I , est connu sous le nom d' ideal des relations symetriques entre les racines du polyn^ome f . De nition 2.13. Soit In le groupe identite dans Sn. L'ideal I In , note I , est connu sous le nom d' ideal des -relations. Remarque 2. Le quotient K[x1 ; : : : ; xn ]=I est appele algebre de decomposition universelle. De nition 2.14. Le sous-groupe G du groupe symetrique Sn de ni par G = f 2 Sn j (8r 2 I ) (:r)( ) = 0g : est connu abusivement sous le nom de groupe de Galois de f , on le nommera groupe de Galois de .

4

NICOLAS RENNERT, ANNICK VALIBOUZE

Notation 2.15. Soit I un ideal de K[x1 ; : : : ; xn]. Pour  2 K[x1 ; : : : ; xn] notons ^ la multiplication par la classe de  dans l'anneau quotient K[x1 ; : : : ; xn ]=I . C'est un endomorphisme du K-espace vectoriel K[x1 ; : : : ; xn ]=I . Le polyn^ome caracteristique de l'endomorphisme ^ sera note ;I . Si I = I alors il sera note simplement  . De nition 2.16. Soit L un sous-groupe du groupe symetrique Sn tel que L contienne le groupe de Galois G du polyn^ome f . La L-relative resolvante de f par (associee a la numerotation ), notee L ;L; , est le polyn^ome de K[T ] de ni comme suit : Y (1) L ;L; (T ) = (T ? ( )) : 2L: Si L = Sn , la resolvante est notee L ;f et appelee

resolvante (absolue) de f par . Comme le groupe L contient le groupe de Galois G et que le corps K est parfait, par la theorie de Galois, la resolvante appartient bien au corps K[T ].

3. Polyno^ mes caracteristiques et resolvantes Dans ce paragraphe, le polyn^ome f est suppose separable (i.e ses racines sont distinctes deux a deux) et L designe un sous-groupe de Sn qui contient le groupe de Galois G . Proposition 1. La variete de l'ideal I L dans une cl^oture algebriques de K, notee V (I L), est l'orbite de la liste sous l'action du groupe L : V (I L ) = f  j  2 Lg : Comme le polyn^ome f est separable, le cardinal de cette variete est celui du groupe L. Preuve. La preuve est simple (voir [22]). Pour un ideal I radical, le theoreme de Stickelberger donne cette expression explicite du polyn^ome caracteristique de l'endomorphisme ^ associe a un ideal I (voir Notation 2.15) : Y  ;I (T ) = (T ? ( )) : 2V (I )

Comme l'ideal I L est radical et que le polyn^ome f est separable, il vient : Y (T ? (: )( )) :  ;I L (T ) = 2L

En particulier pour I = I , l'ideal des relations symetriques : Y (2) (T ? (: )( )) :  (T ) = 2Sn

Soient H un sous-groupe du groupe L et T une transversale a gauche de L mod H . Si est un L-primitif H -invariant nous avons l'identite suivante bien connue : Y (3) L ;L; (T ) = (T ? (: )( )) :  2T

En e et, pour tout  2 T et pour tout h 2 H , : = h: . De plus si  2 T avec  6=  , alors : 6= : .

CALCUL DE RE SOLVANTES AVEC LES MODULES DE CAUCHY

5

Et nous obtenons (voir [5] pour L = Sn ) : (4)  ;I L = (L ;L; )card(H ) ou il appara^t que le polyn^ome caracteristique s'exprime comme une puissance de la resolvante absolue. Dans le prochain paragraphe nous verrons comment se calcule le polyn^ome caracteristique  lie a l'algebre de decomposition universelle, puis dans les suivants nous chercherons a calculer la resolvante absolue a partir de la trame de l'algorithme de calcul du polyn^ome caracteristique. 4. Calcul du polyno^ me caracteristique dans l'algebre de decomposition universelle

Ce paragraphe enonce la formule de J.M. Arnaudies et l'algorithme de J.L. Lagrange puis il termine par un nouvel algorithme inspire de celui de Lagrange. Q Rappel 1. Soient u et v deux polyn^omes de K[x], avec u(x) = a m i=1 (x ? i ) ou 1 ; : : : ; m appartiennent a une cl^oture algebrique de K. Le resultant en x des deux polyn^omes u et v, note Resx (u; v), peut s'exprimer ainsi : (5)

Resx (u; v) = adeg(v)

m Y i=1

v( i )

:

4.1. La methode d'Arnaudies. la methode proposee dans [4] est basee sur le resultant a n variables. Notons xn+1 une indeterminee supplementaire et d le degre total de en x1 ; : : : ; xn . L'homogeneise de , note  , est donne par :  = xdn+1 ( xx1 ; : : : ; xxn ) n+1

n+1

:

Notons Res(g1 ; : : : ; gn ) le resultant de n polyn^omes g1 ; : : : ; gn homogenes non constants a n variables. Theoreme 4.1. (Arnaudies) Posons si = ei ? ei( ) pour i = 1; : : : ; n. Alors le polyn^ome caracteristique est donne par :  (T ) = Res(s1 ; : : : ; sn; Txdn+1 ? ) : Ce theoreme demontre dans [4] se deduit de la formule de Poisson-Perron (voir [3], p. 243). Le calcul de resultant a n variables s'avere tres co^uteux, cette methode n'est donc pas utilisable en pratique. 4.2. La methode de Lagrange. Ce paragraphe traduit en terme de resultants, la methode que J.L. Lagrange proposait pour calculer la resolvante absolue L ;f (voir [9]) et qui calcule le polyn^ome caracteristique. Soit (Ui )0in la suite nie de nie inductivement comme suit : U0 (T; x1 ; : : : ; xn ) = T ? (x1 ; : : : ; xn) ;

NICOLAS RENNERT, ANNICK VALIBOUZE

6

1in

Ui(T; xi+1 ; : : : ; xn ) = Resxi (f (xi ; : : : ; xn ); Ui?1 (T; xi ; : : : ; xn )) Alors, d'apres le rappel 1 et puisque f est unitaire : Un(T ) =

(6)

n Y

n Y

in =1 in?1 =1



n Y

i1 =1

(T ? ( i ; : : : ; in )) 1

:

:

Les facteurs sur K du polyn^ome Un (T ) sont  le polyn^ome caracteristique  ;  des facteurs dits parasites provenant des egalites deux a deux, trois a trois, : : : ; n a n des indices apparaissant dans les produits. E ectivement les nombres algebriques tels ( 1 ; 1 ; 3 ; : : : ; n ); ( 1 ; 1 ; 1 ; 3 ; : : : ; n ); : : : ; ( 1 ; 1 ; : : : ; 1 ) sont racines de Un (T ) et ne sont pas racines du polyn^ome caracteristique. Ces facteurs parasites etaient deja signales par J.L. Lagrange. Ce sont des polyn^omes caracteristiques associes a des invariants d'arite strictement inferieure a celle de l'invariant . Par decroissance stricte de l'arite, il est donc toujours possible de deduire le polyn^ome caracteristique  a partir du polyn^ome Un . Donnons un exemple explicite : Exemple 2. Choisissons l'invariant = x1 + 2x2 et n = 2. Alors U2 (T ) =  : 3x ou 3x = Resx(f (x); T ? 3x). De plus L ;f =  puisque est un I2 -invariant primitif. La methode proposee au paragraphe 4.3 evite la formation des facteurs parasites et calcule donc directement le polyn^ome caracteristique. J.L. Lagrange, qui cherchait a calculer la resolvante, signalait egalement la puissance parasite provenant des symetries de l'invariant et que nous retrouvons dans la formule (4). Il est possible de diminuer la puissance en cours de calcul (voir le paragraphe 6 consacre au calcul de la resolvante). 4.3. Methode des modules de Cauchy. 1

1

Notons f1 ; : : : ; fn les modules de Cauchy associes au polyn^ome f (voir De nition 2.10). De nition 4.2. Soient r un entier positif et s un entier compris entre 1 et n. La r-ieme fonction symetrique complete, notee hr (x1 ; : : : ; xs), est la somme des mon^omes de degre total r en x1 ; : : : ; xs , avec h0 (x1 ; : : : ; xs ) = 1. Le theoreme suivant permet de les calculer ecacement il se demontre facilement. Theoreme 4.3. (Mach-Valibouze) Soit le polyn^ome f (x) = xn+a1xn?1 +a2xn?2+  +an a coecients dans K. Posons a0 = 1. Alors, pour 1  r  n, le (r)-ieme module de Cauchy associe a f est donne par : (7)

fr (xr ) =

r X

hi(xr ; : : : ; xn)ar?i

:

i=0 i=0 hi (xn )an?i = f (xn) et f1 (x1 ) = h1 (x1 ; : : : ; xn ) + a1 .

Pn

En particulier fn(xn ) = Remarque 3. A. Cauchy donna la formule jusqu'a n = 4. Une demonstration simple proposee par A. Lascoux peut-^etre faite a l'aide des di erences divisees (voir [15]).

CALCUL DE RE SOLVANTES AVEC LES MODULES DE CAUCHY

7

Le theoreme suivant donne une methode explicite du calcul du polyn^ome caracteristique : Theoreme 4.4. Soit la suite nie R0 ; R1 ; : : : ; Rn de nie inductivement par : R0 (T; x1 ; : : : ; xn ) = T ? et Ri (T; xi+1 ; : : : ; xn ) = Resxi (fi (xi ); Ri?1 (T; xi ; : : : ; xn)) 1  i  n : Alors le polyn^ome caracteristique est donne par (8)  (T ) = Rn (T ) : Preuve. Nous montrons le theoreme par recurrence sur n, le degre du polyn^ome f . Pour n = 1, f = (x ? 1 ), comme le polyn^ome f est unitaire nous avons bien : Resx (f (x1); T ? (x1)) = (T ? ( 1 )) =  (T ) : Montrons-le egalement pour n = 2. Nous avons f2 (x1 ; x2 ) = x1 + x2 ? e1 ( ) et donc R1 (T; x1 ) = Resx (f1(x1 ; x2 ); T ? (x1 ; x2)) = T ? (x2 ; e1 ( ) ? x2 )). D'ou R2 (T ) = Resx (f (x2 ); T ? (x2 ; e1 ( ) ? x2 )) = (T ? ( 1 ; e1 ( ) ? 1 ))(T ? ( 2 ; e1 ( ) ? 2 )) = (T ? ( 1 ; 2 ))(T ? ( 2 ; 1 )) =  (T ) d'apres la formule (2) : Supposons desormais que le theoreme soit vrai jusqu'a n ? 1 dans tout anneau commutatif unitaire, donc en particulier dans K[xn ]. Ainsi, en posant, F (x) = fn?1(x; xn ) = fn?1 (x) et en notant Fn?1 (xn?1 ); Fn?2 (xn?2 ; xn?1 ); : : : ; F1 (x1 ; : : : ; xn?1 ) les modules de Cauchy associes a F , nous avons Fj (xj ; : : : ; xn?1 ) = fj (xj ; : : : ; xn ) pour j = 1; : : : ; n ? 1. Notons 1 (xn ); : : : ; n?1 (xn ) les n ? 1 racines de F (x) dans une cl^oture algebrique de K[xn ]. Par hypothese de recurrence et puisque F (x) est unitaire, nous avons Y ?  T ? (  (1) (xn); : : : ;  (n?1) (xn ); xn ) ; Rn?1 (T; xn) = 1

1

2

 2Sn?1

et donc (9)

Rn (T ) =

n Y

Y

i=1  2Sn?1

(T ? (  (1) ( i ); : : : ;  (n?1) ( i ); i ))

:

Or, pour i = 1; : : : ; n, pour j = 1; : : : ; n ? 1 et pour  2 Sn?1, nous savons que  (j ) ( i ) est une racine de F (x) = f2 (x; i ) = f ( i )i ??fx(x) et est donc une racine de f distincte de i . Ainsi, les n! n-uplets (  (1) ( i); : : : ;  (n?1) ( i ); i ) sur lesquels s'evalue l'invariant dans le produit (9) sont les n! n-uplets ( (1) ; : : : ; (n) ) ou  parcourt Sn . Ceci acheve la demonstration. Remarque 4. Comme le polyn^ome f est suppose unitaire, alors chaque module de Cauchy fi(x1 ; : : : ; xi ) est egalement unitaire en xi pour i = 1; : : : ; n. Dans le cas ou f n'est pas unitaire, et ou a est son coecient dominant, il sut de poser g(x) = an?1 f (x=a) qui, lui, est un polyn^ome unitaire. Pour garder le polyn^ome f , il faut alors introduire le coecient

8

NICOLAS RENNERT, ANNICK VALIBOUZE

dominant de f = fn ainsi que ceux des modules de Cauchy f1; : : : ; fn?1 dans les calculs des resultants successifs. 5. Reductions avec des bases de Gro bner

5.1. Bases de Grobner. L'ideal I est engendre par les n polyn^omes e1 ? e1 ( ); : : : ; en ? en ( ). Mais ces polyn^omes n'en forment pas une base de Grobner (voir [6]). Rappelons le theoreme historique de Cauchy (voir [8]) dans lequel il enonce comment les utiliser pour evaluer les polyn^omes symetriques : [8] Soit F (x1 ; : : : ; xn ) un polyn^ome a coecients dans K et symetrique en les variables x1 ; : : : ; xn . Pour eliminer xn ; : : : ; x1 dans le polyn^ome F , il sut de diviser successivement F par les divers termes de la suite f1 (x1 ); : : : fn?1 (xn?1 ); fn(xn), en considerant chaque fi comme une fonction de xi . Le dernier reste obtenu sera independant de x1 ; : : : ; xn et donnera la valeur F ( 1 ; : : : ; n ) en fonction des coecients de f . Autrement dit, lorsque le polyn^ome f est separable, les modules de Cauchy du polyn^ome f , forment une base de Grobner reduite de l'ideal I des relations symetriques. Pour evaluer un polyn^ome symetrique il sut de le reduire modulo l'ideal I . Notation 5.1. Pour i 2 [1; n], la notation Ii designe l'ideal engendre dans K[xi ; : : : ; xn] par les modules de Cauchy fi ; : : : ; fn . Il est bien connu qu'alors les polyn^omes fi; : : : ; fn forment une base de Grobner reduite pour l'ordre lexicographique de l'ideal Ii (voir [6]). Ainsi, en considerant K[xi ; : : : ; xn ] comme un sous-anneau de K[x1 ; : : : ; xn ] : Ii = I \ K[xi ; : : : ; xn] = fP 2 K[xi ; : : : ; xn ] j (8 2 Sn) (:P )( ) = 0g : En particulier I1 = I . Le theoreme de Cauchy se generalise facilement ainsi: Theoreme 5.2. Supposons que le polyn^ome f soit reductible sur K : f = gh ou g; h 2 K[x] avec deg(g) = m et deg(h) = p = n ? m. Choisissons la numerotation des racines du polyn^ome f de telle sorte que 1 ; : : : ; m soient les m racines du polyn^ome g. Notons g1 ; : : : ; gm les modules de Cauchy du polyn^ome g et h1; : : : ; hp ceux du polyn^ome h. Alors les n polyn^omes g1 ; : : : ; gm ; h1 ; : : : ; hp forment une base de Grobner reduite de l'ideal I Sm Sp . Preuve. D'apres [22], l'ideal I Sm Sp est engendre dans K[x1 ; : : : ; xn ] par l'ideal dans K[x1 ; : : : ; xm ] des relations symetriques entre les racines du polyn^ome g et l'ideal dans K[xm+1 ; : : : ; xn] des relations symetriques entre les racines du polyn^ome h : I SmSp = I(S m;:::; m) + I(S pm ;:::; n ) 1

+1

CALCUL DE RE SOLVANTES AVEC LES MODULES DE CAUCHY

9

5.2. Reduction modulo un ideal triangulaire.

De nition 5.3. Un ensemble T de n polyn^omes de K[x1 ; : : : ; xn ] est dit triangulaire de K[x1 ; : : : ; xn ] si T = fp1 (x1 ); : : : ; pn(x1 ; : : : ; xn )g ou chaque polyn^ome pi est unitaire en xi avec degre(pi ; xi) > 0.

De nition 5.4. Un ideal J est dit triangulaire s'il est engendre par un ensemble tri-

angulaire. Exemple 3. L'ideal I est un ideal triangulaire, ainsi que l'ideal I Sm Sp de ni au theoreme 5.2. Soit J un ideal triangulaire, engendre par l'ensemble triangulaire : fp1 (x1 ); p2 (x1 ; x2); : : : ; pn (x1; : : : ; xn)g : Reduire le polyn^ome  de K[x1 ; : : : ; xn ] par l'ideal J revient a realiser successivement des divisions euclidiennes par chaque polyn^ome pj considere comme un polyn^ome en xj (j 2 [1; n]). Le reste de cette division appartiendra au quotient K[x1 ; : : : ; xn ]=J . Notation 5.5. Pour  2 K[xi ; : : : ; xn][T ] le resultat de cette reduction sera note  mod J . algorithme 5.1. Reduction

entrees :  2 K[x1 ; : : : ; xn ][T ], p1 ; : : : ; pn : une base triangulaire de J . sortie :  mod J

Debut

resultat  Pour j De 1 a n Repete resultat

Fin Pour

Fin

Reste(resultat; pj ; xj )

resultat

Ou Reste(p; q; xk ) est le reste de la division euclidienne de p par q, consideres comme des polyn^omes de K[x1 ; : : : ; xk?1 ; xk+1 ; : : : ; xn ; T ][xk ]. 6. Calcul de la resolvante absolue La formule (4) montre que le polyn^ome caracteristique est une puissance de la resolvante. Cette partie est donc consacree a l'elimination de cette puissance. Le paragraphe 6.1 rappelle les resultats de F. Lehobey sur ce point et le paragraphe 6.4 montre comment certaines puissances s'eliminent lorsque les calculs sont realises dans l'algebre de decomposition universelle. Les modules de Cauchy du polyn^ome f sont notes f1 ; : : : ; fn .

10

NICOLAS RENNERT, ANNICK VALIBOUZE

6.1. Methode de Lehobey. Dans la pratique, le calcul de la resolvante L ;f (T ) ne se realise pas sans reduire la puissance parasite due aux symetries de l'invariant a chaque etape de l'algorithme 6.1 (voir (4)). La formation de cette puissance est illustree au travers de l'exemple suivant : Exemple 4. Fixons n = 3 et choisissons = 2x3 + x1 + x2 un S3 -primitif H -invariant ou H = S2  S1 . D'apres la de nition de la suite (Rj )j du Theoreme 4.4, il vient : Rn?1 (T; x3 ) = Resx (f2 (x2 ; x3 ); Resx (f1 (x1 ; x2 ; x3 ); T ? )) : Il est alors possible d'eliminer des symetries a ce niveau puisque : R2 (T; x3 ) = (T ? (2x3 + 1 (x3) + 2 (x3 )))2 ; ou 1 (x3 ); 2 (x3 ) sont les racines de f2 (x) dans K[x3 ][x]. En posant V2 (T; x3 )2 = R2 (T; x3 ), nous avons nalement : L ;f (T ) = Resx (f3(x3 ); V2 (T; x3 )) : Nous constatons que nous obtenons la resolvante au lieu de son carre donne par la formule (4). Cet exemple montre egalement qu'il est preferable d'eliminer d'abord les symetries. L'exemple 4 suppose connu le polyn^ome V2 qui se calcule par la methode de F. Lehobey (voir [16]). Elle s'appuie sur le Theoreme 6.1 et aboutit a l'algorithme 6.1 exposes ci-apres. Le Theoreme 6.1 explicite le degre de chaque puissance super ue qui appara^t apres un calcul de resultant. Theoreme 6.1. (Lehobey) Soient A un anneau integre de caracteristique nulle, f 2 A[x] un polyn^ome unitaire, de degre n ; Hn un sous-groupe de Sn ; 2 A[x1 ; : : : ; xn ] un Hn-invariant primitif ; f1 ; : : : ; fn , les n modules de Cauchy de f et Hi = StabSi ( ), pour 1  i  n ? 1, les n ? 1 stabilisateurs sur Si de considere comme un element de A[xi+1 ; : : : ; xn ][x1 ; : : : ; xi]. Soit l'entier mi de ni par : Card(Hi ) 1in ; mi = Card (Hi?1 ) avec Card(H0 ) = 1. Alors la suite nie V0 ; : : : ; Vn de nie recursivement par: V0 (T; x1 ; : : : ; xn) = T ? ; Vi(T; xi+1 ; : : : ; xn ) = (Resxi (fi (xi ); Vi?1 (T; xi ; : : : ; xn)))1=mi calcule la resolvante de f par : L ;f (x) = Vn(x) : 6.2. La racine r-ieme. 2

1

3

L'algorithme de calcul de la resolvante (6.1) ainsi que les algorithmes qui en decoulent, font appel a la fonction monicPerfectNthRoot() de nie de la facon suivante : Soient A un anneau commutatif de caracteristique nulle quelconque, m un entier positif et p un polyn^ome de K[x1 ; : : : ; xm ] unitaire en xi (i 2 [1 : : : m]), pour tout k 2 N la fonction monicPerfectNthRoot(pk ; k; xi ) retourne le polyn^ome p. Cette fonction est basee sur le travail de P. Henrici [13].

CALCUL DE RE SOLVANTES AVEC LES MODULES DE CAUCHY

11

6.3. L'algorithme de calcul de la resolvante.

algorithme 6.1. Resolvante entrees : f : un polyn^ome de K[x], : un polyn^ome de K[x1 ; : : : ; xn ] H -invariant primitif, PuissancesParasites : une liste d'entiers contenant les degres des puissances parasites. sortie : la resolvante de f par

Debut

resultat T ? Pour cm Dans modulesDeCauchy(f; [x1; : : : ; xn]) v Dans [x1 ; : : : ; xn ] pp Dans PuissancesParasites Repete resultat monicPerfectNthRoot(resultant(cm; resultat; v); pp; T )

Fin Pour

Fin

resultat

Ou :  la fonction modulesDeCauchy(f; [x1; : : : ; xn]) renvoie la liste [f1(x1 ); : : : ; fn(xn)] des modules de Cauchy de f  monicPerfectNthRoot(f; n; y) calcule la racine n-ieme de f comme polyn^ome en y (voir section 6.2).  La liste des puissances parasites PuissancesParasites est fonction de l'invariant. Elle peut ^etre calculee en utilisant des stabilisateurs (voir theoreme 6.1) avec le logiciel GAP [17, 11] ou par la factorisation des calculs intermediaires. Preuve. Cet algorithme decoule des theoremes 4.4 et 6.1. Exemple 5. Prenons le polyn^ome f = x6 ?243x2 +729 et l'invariant = x5 x6 +x3 x4 +x1 x2 . Le temps necessaire au calcul du polyn^ome caracteristique puis a celui de la resolvante a partir de la formule (4) est de 1 heure et 40 minutes. Avec l'algorithme 6.1 le temps necessaire au calcul de la resolvante n'est plus que de 1 seconde. 6.4. Calculs modulo l'ideal des relations symetriques. L'un des inconvenients de l'algorithme 6.1 est la croissance des degres en les variables x1 ; : : : ; xn dans les calculs intermediaires du polyn^ome resultat. Nous etudions donc le moyen de contr^oler cette croissance par reductions utilisant des divisions euclidiennes. Nous constaterons que la methode employee aboutit parfois a l'elimination de plusieurs variables lors d'un m^eme pas de boucle. L'elimination prematuree des variables par reduction n'occasionne donc aucune puissance super ue. Une reduction est alors equivalente a autant de pas de l'algorithme 6.1 que de variables eliminees prematurement par reduction.

NICOLAS RENNERT, ANNICK VALIBOUZE

12

6.4.1. Reduction de polyn^omes. Soit i 2 [1; n]. Puisque fi ; : : : ; fn est une base de Grobner reduite de l'ideal Ii de dimension zero (voir Notation 5.1), l'anneau quotient K[xi ; : : : ; xn ]=Ii est engendre en tant que K-module par les mon^omes m tels que, pour j 2 [i; n], degre(m; xj ) < j =degxj (fj (xj )) (voir De nition 2.10). Autrement dit : M K[xi ; : : : ; xn]=Ii ' K:xbi i : : : xbn : n 0bj 0 : Preuve. Cette demonstration se deroule en trois etapes. La premiere montre que l'on peut remplacer chaque Vi de la suite (Vi )i de nie au Theoreme 6.1 par Vi mod Ii+1 . La seconde montre que l'on peut realiser tous les calculs de la suite (Vi )i modulo les ideaux Ij (j 2 [1; n]) et la troisieme etape montre comment eviter des calculs en tenant compte des variables eliminees prematurement. 3

0

( +1)

P

a) Soit W = Vi mod Ii+1, c'est a dire, d'apres l'algorithme 6.2, Vi = nj=i+1 $fj (xj ) + W ou $ designe un polyn^ome quelconque (en l'occurrence un quotient d'une division euclidienne par fj (xj )). Alors dans les resultants successifs de nissant Vi+1 ; : : : ; Vn , le polyn^ome Vi peut-^etre remplace par le polyn^ome W sans que le polyn^ome Vn soit modi e, puisque ces resultants sont realises avec les polyn^omes fi+1 (xi+1 ); : : : ; fn (xn ). (fi (xi ); Vi?1 ) = Vimi et S = P mod Ii+1 , c'est a dire, b) Maintenant posons P = ResxiP d'apres l'algorithme 6.2, P = nj=i+1 $fj (xj )+ S . Alors S = W mi mod Ii+1 . Ainsi, en remplacant Vi par S 1=mi mod Ii+1 dans la suite (Vj )j , le resultat Vn = L ;f n'est pas modi e. c) Tenons compte maintenant des variables de W . Supposons que le polyn^ome Vi soit remplace par W dans la suite (Vj )j . Nous avons donc Vim+1i = Resxi (fi+1 (xi+1 ); W ) : Si W ne depend pas de xi+1 , alors Vim+1i = W i+1 . Ainsi, si Vi+1 est remplace par W dans la suite (Vj )j , alors Vn = L i+1;f =mi . +1

+1

+1

+1

NICOLAS RENNERT, ANNICK VALIBOUZE

14

Remarque 5. Dans l'equation (12), l'entier m sera egal a 1 si les resultants evites par elimination prematuree des variables (voir partie c) de la demonstration correspondent a des symetries de l'invariant et non pas au fait que l'invariant n'est pas separable. Par exemple, si est un H -invariant primitif, ou H est un sous-groupe propre de Sn, et que ? ( ) 2 I , alors i0 = 0, Si = T ? ( ) 2 K[T ] et L ;f = Si[Sn :H ] . L'identi cation du groupe de Galois du polyn^ome f se realise avec les facteurs simples des resolvantes. Donc, en pratique, des que le programme detecte que le saut de plusieurs resultants n'aboutira pas au calcul exact de la resolvante (i.e. m = 1), il sera stoppe pour choisir un autre invariant du m^eme groupe ou pour transformer le polyn^ome f . Cette detection se fait avec les degres des modules de Cauchy et les entiers mi de Lehobey des que le calcul d'un resultant est evite. 6.4.3. Algorithme avec reduction. 0

0

algorithme 6.2. algorithme de calcul de la resolvante avec reductions : entrees : f : un polyn^ome de K[x], : un polyn^ome de K[x1 ; : : : ; xn ] H -invariant primitif, puissancesParasites : une liste d'entiers contenant les degres des puissances parasites. sortie : la H-resolvante de f par

Debut

varutiles variables( ) cm modulesDeCauchy(f; varutiles) resultat T ? Tant que arite(resultat) 6= 1 Repete v mainVariable(resultat) k position(v; varutiles) pp puissancesParasites[k] resultat resultant(cm[k]; resultat; v) pp mod Ik+1 1

Fin Tant que

Fin

resultat

Ou :  la fonction arite(P ) renvoie l'arite de P ,  la fonction position(v; lv) renvoie la position de v dans la liste lv,  la fonction mainVariable(P ) renvoie la variable principale de P ,  la notation l[k] designe le k-ieme element de la liste l,  la fonction variables(P ) renvoie la liste des variables de P ,  la fonction modulesDeCauchy(f; [x1; : : : ; xn]) renvoie la liste [f1(x1 ); : : : ; fn(xn)] des modules de Cauchy de f ,

CALCUL DE RE SOLVANTES AVEC LES MODULES DE CAUCHY

15

 l'ideal Ik+1 est de ni notation 5.1,  la notation P mod Ik+1 est decrite en notation 6.2,  le calcul de P k mod I est realise a l'aide de la fonction monicPerfectNthRoot(p; k; v) 1

decrite au paragraphe 6.2.

 La liste des puissances parasites PuissancesParasites est fonction de l'invariant. Elle peut ^etre calculee en utilisant des stabilisateurs (voir theoreme 6.1) avec le logiciel GAP [17, 11] ou par la factorisation des calculs intermediaires.

7. Generalisation aux multi-resolvantes Soient F = (f (1) ; : : : ; f (p) ) un p-uplet de polyn^omes de K[x] de degres respectifs d1 ; : : : ; dp et d = d1 +    + dp . Donnons-nous x1 ; : : : ; xd des indeterminees. Soit F la liste des racines des polyn^omes de F , ordonnees ainsi : F = ( (1) ; : : : ; (p) ) ou (i) est une liste quelconque des racines du polyn^ome f (i) pour i 2 [1; p]. Fixons 2 K[x1 ; : : : ; xd ] et posons S = Sd      Sdp . De nition 7.1. La multi-resolvante absolue de F par , notee L ;F , est la resolvante relative L ;S ; F . La multi-resolvante de F est donc le polyn^ome Y L ;F = (y ? ( F )) 1

2S :

Pour calculer une multi-resolvante, il sut d'utiliser les algorithmes de calcul des resolvantes concus pour des invariants avec des coecients non numeriques. Dans la pratique, le corps K peut ^etre remplace par un anneau integre de caracteristique nulle (voir Theoreme 6.1) . En ce cas l'invariant est considere successivement comme un polyn^ome en (x1 ; : : : ; xd ), puis en (xd +1 ; : : : ; xd +d ),: : : puis en n en (xd ++dp? +1 ; : : : ; xd ). L'algorithme de calcul d'une multi-resolvante est donc le suivant. algorithme 7.1. Multi-resolvante absolue 1

1

1

2

1

entrees : F = [f (1) ; : : : ; f (p) ] : une liste de polyn^omes de K[x], : un polyn^ome de K[x1 ; : : : ; xn ] qui est H -invariant primitif, lpp : la liste des degres des puissances parasites. lvar : la liste des variables x1 ; : : : ; xn. sortie : la multi-resolvante de F par .

Debut

resultat T ? cm [ ] toutesV ariables variables( ) Pour i Dans [1::p] Repete f F [i] varutiles variablesDuBloc( ; lvar; i; F ) cm cons(modulesDeCauchy(f; varutiles); cm)

Fin Pour resultat

resultat mod < cm >

1

NICOLAS RENNERT, ANNICK VALIBOUZE

16

Tant que arite(resultat) 6= 1 Repete v mainVariable(resultat)

k position(v; toutesV ariables) pp lpp[k] resultat resultant(cm[k]; resultat; v) pp mod < cm[k + 1::n] > 1

Fin Tant que

Fin

resultat

Ou :

 variablesDuBloc( ; lvar; i; F ) renvoie les variables du polyn^ome associees au polyn^ome F [i],

 la fonction arite(P ) renvoie l'arite du polyn^ome P ,  la fonction position(v; lv) renvoie la position de l'element v dans la liste lv,  la fonction mainVariable(P ) renvoie la variable principale du polyn^ome P ,  la notation l[k] designe le k-ieme element de la liste l,  la notation l[k::j ] designe les elements k, k + 1, : : : , j de la liste l,  la fonction cons(e; l) renvoie la liste composee de l'element e et de la liste l,  la fonction variables(P ) renvoie la liste des variables du polyn^ome P ,  la fonction modulesDeCauchy(f; [x1; : : : ; xn]) renvoie la liste [f1(x1 ); : : : ; fn(xn)] des modules de Cauchy du polyn^ome f ,

 la notation < cm > designe l'ideal engendre par les polyn^omes de cm,  l'expression P mod I qui designe la reduction du polyn^ome P modulo l'ideal I est decrite en notation 6.2,  le calcul de P k mod I est realise a l'aide de la fonction monicPerfectNthRoot(p; k; v) decrite au paragraphe (6.2). 1

Voyons sur un exemple comment ce calcul est realise avec la methode proposee dans cet article : Exemple 8. Prenons les polyn^omes f = x2 + 5x ? 89 et g = x2 ? 9x ? 23 et l'invariant = x1 x3 + x2 x34 . Soient f1 (x1 ; x2 ) = x2 + x1 ? 9 et f2 (x1 ) = x21 ? 9x1 ? 23, les modules de Cauchy associes au polyn^ome f . Soient g1 (x3 ; x4 ) = x4 + x3 + 5 et g2 (x3 ) = x23 + 5x3 ? 89, les modules de Cauchy associes au polyn^ome g. Nous avons la liste cm = [g1 ; g2 ; f1 ; f2 ]. Calculons la suite (Ri )i correspondant a la suite des valeurs prises par la variable resultat de l'algorithme 7.1.

CALCUL DE RE SOLVANTES AVEC LES MODULES DE CAUCHY

17

R0 = T ? mod < cm >= (?115x1 + 1026)x3 ? 1015x1 + T + 9135 ; R1 = resultantx (R0 ; g2 ) mod < f1; f2 > = T 2 + (?1455T + 6343920)x1 + T + 13140T ? 73902264 ; R2 = resultantx (R1 ; f2 ) = T 4 + 13185T 3 ? 138809523T 2 + 200429193960T + 316431786384576 : 3

1

Alors R2 = L ;(f;g) . 8. Implantation Le systeme de calcul formel Axiom a ete choisi pour l'implantation des di erents algorithmes (voir [14]). Ce choix est motive par la grande modularite d'Axiom, parfaitement adaptee aux mathematiques. L'implantation se veut aussi generale que possible. Ainsi le choix du domaine de polyn^omes est laisse libre a l'utilisateur des di erents programmes. 8.1. L'organisation generale. Le schema suivant decrit l'organisation des di erents paquets (packages ),domaines (domains ) et categories (categories ). PolynomialCategory

CompleteSymmetricFunction

CauchyModuli

MonicPerfectNthRoot

CauchyModuliResolvent

8.2. Un exemple commente. Voici comment en Axiom obtenir la resolvante L;f comme polyn^ome en la variable y, ou f = x5 + 4x4 ? 17x3 ? x2 + x + 1 et  = x4 x25 + x3 x24 + x2 x23 + x5 x21 + x1 x22 . 8.2.1. De nition des domaines utilises. La variable R represente l'anneau de base (dans ce cas Z) : R:=Integer

18

NICOLAS RENNERT, ANNICK VALIBOUZE

La variable POL represente l'anneau de polyn^ome R[x] (ici Z[x]). La variable x est de nie comme le polyn^ome x : POL:=UnivariatePolynomial(x,R) x:POL:=x

Le choix de la representation des polyn^omes de R[x1 ; : : : ; xn ; y] est relativement vaste. Des tests ont montre que les performances varient de facon signi cative selon l'implantation choisie. La representation recursive des polyn^omes est particulierement adaptee aux algorithmes 6.1 et 6.2. La variable OVL designe le domaine des variables de l'anneau de polyn^ome R[x1 ; : : : ; xn ; y]. La variable DP designe l'anneau de polyn^omes R[x1 ; : : : ; x6 ; y] : lv:=[x6,x5,x4,x3,x2,x1,y] OVL:= OrderedVariableList(lv) DP:=SparseMultivariatePolynomial(R,OVL)

Les variables x1,...,x6 representent les polyn^omes x1 , : : : ,x6 de DP : x1:=monomial(1$DP,variable(x1)$(OVL)::(OVL),1)$DP; x2:=monomial(1$DP,variable(x2)$(OVL)::(OVL),1)$DP; x3:=monomial(1$DP,variable(x3)$(OVL)::(OVL),1)$DP; x4:=monomial(1$DP,variable(x4)$(OVL)::(OVL),1)$DP; x5:=monomial(1$DP,variable(x5)$(OVL)::(OVL),1)$DP; x6:=monomial(1$DP,variable(x6)$(OVL)::(OVL),1)$DP;

8.2.2. Instanciation du paquet principal. La variable DRES represente une instance du paquet CauchyModuliResolvent parametre par les types de nis precedemment. La signature du paquet CauchyModuliResolvent est la suivante : CauchyModuliResolvent(R,E,OV,P,X,Y): Public == Private where R : EuclideanDomain OV : OrderedSet E : OrderedAbelianMonoidSup P : PolynomialCategory(R,E,OV) X : Symbol Y : OV

 R correspond a l'anneau de base ;  OV correspond au domaine des exposants du domaine de polyn^omes multivaries ;  E correspond au domaine des variables du domaine de polyn^omes multivaries ;  P correspond au domaine de polyn^omes multivaries ;  X correspond a la variable x du polyn^ome de depart ;

CALCUL DE RE SOLVANTES AVEC LES MODULES DE CAUCHY

19

 Y correspond a la variable de la resolvante. DRES:=CauchyModuliResolvent(R,IndexedExponents(OVL),OVL,DP,'x,'y::OVL)

8.2.3. Utilisation du paquet.

 La variable thetaG1 represente l'invariant  ;  la variable f represente le polyn^ome f ;  la variable lpp represente la liste des puissances parasites (voir Theoreme 6.1). thetaG1:=x4*x5^2+x3*x4^2+x2*x3^2+x5*x1^2+x1*x2^2 f:=x^5+4*x^4-17*x^3-x^2+x+1 lpp:=[1,1,1,1,1,5]

La resolvante de f par thetaG1 s'obtient par la commande suivante : r1:=resolvent(f,thetaG1,lpp)$DRES

Le resultat est le suivant : thetaG1:=x4*x5^2+x3*x4^2+x2*x3^2+x5*x1^2+x1*x2^2 2 2 2 2 2 (106) x4 x5 + x1 x5 + x3 x4 + x2 x3 + x1 x2 Type: SparseMultivariatePolynomial(Integer,OrderedVariableList [x6,x5,x4,x3,x2,x1,y]) Time: 0.05 (IN) + 0.02 (OT) = 0.07 sec

f:=x^5+4*x^4-17*x^3-x^2+x+1 5 4 3 2 (107) x + 4x - 17x - x + x + 1 Type: UnivariatePolynomial(x,Integer) Time: 0.03 (IN) = 0.03 sec

NICOLAS RENNERT, ANNICK VALIBOUZE

20

r1:=resolvent(f,thetaG1,[1,1,1,1,1,5])$DRES (108) 24 23 22 21 20 19 y - 390y + 31765y + 4780444y - 647704873y - 29613862040y 18 17 16 + 4952685405792y + 162526229247165y - 19020045312189109y 15 14 - 789049792414412487y + 28429669450472325254y 13 12 + 2033502682726556521322y + 20740342899934941360904y 11 10 - 1053157069581828323779746y - 32557903559648254823580435y 9 8 - 104470564098416503608748049y + 10468326081468786710315799331y 7 6 + 194777917508064488992955129653y + 141850166083564860766030651571y 5 4 - 40049172378844668175673051246282y - 535229018893816475452407292822548y 3 - 678630031684626941978361684969815y 2 + 54559355718963585052978366769531424y + 618019689068720129370987442816431340y + 2646070054199041746352956015103736544 Type: SparseMultivariatePolynomial(Integer,OrderedVariableList [x6,x5,x4,x3,x2,x1,y]) Time: 0.02 (IN) + 27.36 (EV) + 0.07 (OT) + 9.32 (GC) = 36.76 sec

9. temps de calculs et comparaisons avec SYM Le logiciel SYM est une extension du systeme de calcul formel Maxima (voir [18] et [21]). Les temps donnes correspondent aux temps \machine" donnes par les di erents logiciels. Ils ont ete mesures sur un Pentium Pro a 200 Mhz dote de 512 Mo de memoire vive. 9.1. Table des polyn^omes invariants utilises dans les calculs des resolvantes et

multi-resolvantes.

Pour un degre donne n, la notation Ti designe les sous-groupes transitifs de Sn decrits dans l'article [7]. Les invariants ci-dessous ont ete calcules par le programme Primitive Invariants (voir [1]).

CALCUL DE RE SOLVANTES AVEC LES MODULES DE CAUCHY

L

H

S6 T 1 S6 T 2 S6 T 3 S6 T 4 S6 T 5 S6 T 6 S6 T12 S6 T14

S6 S8 S8 S9

S2  S 2  S 2 T4 T47 T14

S9 T10

Sr A r  S r

21

L-primitif H-invariant x5x26 + x4 x25 + x3 x24 + x2 x23 + x6 x21 + x1 x22 (x5 x6 + x3 x4 + x1 x2 ) + 2(x4 x6 + x3 x5 + x2 x6 + x2 x4 + x1 x5 + x1 x3 ) + 3(x4 x5 + x2 x3 + x1 x6 ) (x5 x6 + x4 x5 + x3 x4 + x2 x3 + x1 x6 + x1 x2 ) (x6 x25 + x4 x26 + x5 x24 + x3 x25 + x4 x23 + x6 x22 + x2 x24 + x3 x22 + x1 x26 + x5 x21 + x1x23 + x2 x21 )+2(x3 x5 x6 + x2 x4 x5 + x2x3 x6 + x1 x4 x6 + x1 x3 x4 + x1 x2 x5)+ 3(x3 x26 + x6 x23 + x2 x25 + x5 x22 + x1 x24 + x4 x21 )+4(x3 x4 x6 + x2 x5 x6 + x2 x3 x5 + x1x4 x5 + x1 x3 x6 + x1 x2 x4 ) + 5(x3 x4 x5 + x2 x4 x6 + x1 x5 x6 + x1 x2 x3 ) x4x26 + x3 x25 + x6 x22 + x2 x24 + x5 x21 + x1 x23 x3x5 x6 + x2 x4 x5 + x2 x3 x6 + x1 x4 x6 + x1 x3 x4 + x1 x2 x5 x3x5 x6 + x3x4 x6 + x2x5 x6 + x2x4 x5 + x2x3 x4 + x1x4 x6 + x1x4 x5 + x1x3 x5 + x1x2 x6 + x1 x2 x3 x3x5 x4 x6 (x3 x5 +x4 x6 )+x2 x4 x5 x6 (x2 x4 +x5 x6 )+x4 x5 x1 x6 (x4 x5 +x1 x6 )+ x2x5 x3 x6 (x2 x5 +x3 x6 )+x1 x3 x5 x6 (x1 x3 +x5 x6 )+x2 x6 x1 x5 (x2 x6 +x1 x5 )+ x3x4 x2 x6 (x3 x4 +x2 x6 )+x1 x4 x3 x6 (x1 x4 +x3 x6 )+x1 x2 x4 x6 (x1 x2 +x4 x6 )+ x2x3 x1 x6 (x2 x3 +x1 x6 )+x2 x3 x4 x5 (x2 x3 +x4 x5 )+x3 x4 x1 x5 (x3 x4 +x1 x5 )+ x1x4 x2 x5 (x1 x4 + x2x5 )+ x1 x2x3 x5 (x1 x2 + x3x5 )+ x1x3 x2x4 (x1 x3 + x2 x4 )

x1 x2 ? x3 x4 x7x8 + x3 x6 + x2 x5 + x1 x4 + 2(x6 x8 + x3 x5 + x2 x4 + x1 x7 ) x1x2 x3 x4 + x5 x6 x7 x8 (x4 x6 x7 x9 + x4 x5 x6 x8 + x3 x5 x8 x9 + x3 x5 x6 x7 + x3 x4 x7 x8 + x2 x7 x8 x9 + x2x5 x6 x9 + x2 x4 x5 x7 + x2 x3 x6 x8 + x2 x3 x4x9 + x1 x6 x8 x9 + x1 x5x7 x8 + x1x4 x5 x9 + x1 x3 x7 x9 + x1 x3x4 x6 + x1 x2 x6 x7 + x1 x2 x4x8 + x1 x2 x3 x5 ) + 2(x4 x5 x7 x8 + x4 x5 x6 x9 + x3 x7 x8 x9 + x3 x5 x6 x8 + x3 x4 x6 x7 + x2 x6 x8 x9 + x2x5 x6 x7 + x2 x4 x7 x9 + x2 x3 x5 x9 + x2 x3 x4x8 + x1 x6 x7 x9 + x1 x5x8 x9 + x1x4 x6 x8 + x1 x3 x5 x7 + x1 x3x4 x9 + x1x2 x7 x8 + x1 x2 x4 x5 + x1 x2x3 x6 ) x6x7 x8 x9 + x5 x6 x7 x8 + x4 x5 x8 x9 + x4 x5 x6x7 + x3 x5 x7 x9 + x3 x4x8 x9 + x3x4 x7 x8 + x3 x4 x5 x6 + x2 x5 x7 x9 + x2 x4 x7x9 + x2 x4 x6 x9 + x2 x4x6 x8 + x2x3 x7 x8 + x2 x3 x6 x7 + x2 x3 x4 x5 + x1 x7 x8x9 + x1 x5 x6 x9 + x1 x4x6 x8 + x1x4 x5 x9 + x1 x3 x6 x8 + x1 x3 x5 x8 + x1 x3 x5x7 + x1 x2 x8 x9 + x1 x2x6 x7 + xQ1x2 x5 x6 + x1 x2 x3 x9 + x1 x2x3 x4 1