• Aucun résultat trouvé

a z´ero dans le cas ou la suite f1, . . . , fm est r´eguli`ere, notion qui sera d´efinie Sec-tion 1.7). Nous donnons Section 1.5 une version matricielle de l’algorithme F5, contenant ´egalement un nouveau crit`ere dans le cas de syst`emes sur F2 contenant les ´equations de corps.

1.3 Applications des bases de Gr¨obner

1.3.1 R´esolution de syst`emes d’´equations polynomiales

Un syst`eme de m = n ´equations en n variables poss`ede g´en´eriquement un nombre fini de solutions, born´e par la borne de Bezout. D`es que m > n, un syst`eme de m ´

equations n’a g´en´eriquement plus de solution, mais dans de nombreuses applications on a besoin de r´esoudre des syst`emes fortement surd´etermin´es ayant au moins une

Section 1.3 Applications des bases de Gr¨obner 13 solution (en cryptographie, codes correcteurs, . . . ).

Dans cette th`ese, nous nous int´eresserons essentiellement `a des syst`emes sur-d´etermin´es de dimension z´ero. Nous ne pr´esenterons donc pas de m´ethodes de r´esolution pour des syst`emes ayant une infinit´e de solutions.

Syst`emes de dimension z´ero Une base de Gr¨obner donne de nombreux ren-seignements sur les solutions d’un syst`eme polynˆomial f1 = 0, . . . , fm = 0. En particulier, le syst`eme poss`ede un nombre fini de solutions si et seulement si la base de Gr¨obner de {f1, . . . , fm} v´erifie la propri´et´e suivante : pour toute variable xi, i ∈ [1; n], il existe dans la base de Gr¨obner un polynˆome dont le terme de tˆete est une puissance de xi.

Supposons maintenant que le syst`eme d’´equations f1 = 0, . . . , fm = 0 poss`ede un nombre fini de solutions. Alors le nombre de solutions (dans la clˆoture alg´ebrique K de K, compt´ees avec multiplicit´e et en incluant les solutions `a l’infini) est le cardinal de l’ensemble des monˆomes qui ne sont pas multiples des monˆomes de tˆete des polynˆomes de la base de Gr¨obner. On sait aussi que dans ce cas, la base de Gr¨obner pour l’ordre Lex x1 > . . . > xn a la forme triangulaire de la Figure 1.2.

g1(x1, x2, x3, . . . , xn) .. . gp(x1, x2, x3, . . . , xn) gp+1(x2, x3, . . . , xn) .. . gq(x2, x3, . . . , xn) gq+1(x3, . . . , xn) .. . .. . gr(xn)

Fig. 1.2 – Forme g´en´erale d’une base Lexicographique

La r´esolution d’un tel syst`eme ´equation par ´equation donne l’ensemble des so-lutions du syst`eme dans la clˆoture alg´ebrique du corps de base.

Sous certaines hypoth`eses (id´eal radical et `a un changement de coordonn´ees pr`es, [GM89, BMMT94, Shape Lemma]), la base de Gr¨obner de {f1, . . . , fm} pour l’ordre Lex x1 > . . . > xn a la structure simplifi´ee suivante :

{x1− g1(xn), x2− g2(xn), . . . , xn−1− gn−1(xn), gn(xn)} (1.1) o`u chaque gi est un polynˆome en une seule variable. Ces hypoth`eses sont v´erifi´ees par la plupart des syst`emes, et dans le cas g´en´eral, un syst`eme de dimension z´ero est ´equivalent `a plusieurs syst`emes de la forme 1.1.

14 Chapitre 1. Rappels sur les bases de Gr¨obner et les suites r´eguli`eres Syst`emes `a coefficients et solutions dans un corps fini Si l’on s’int´eresse `a la r´esolution dans F2 d’un syst`eme d’´equations `a coefficients dans F2, nous avons vu qu’il suffit d’ajouter au syst`eme les ´equations de corps x2

1+ x1, . . . , x2

n+ xn. On a alors les caract´erisations suivantes :

Proposition 1.3.1 Soit F = {f1, . . . , fm} ⊂ F2[x1, . . . , xn], et G la base de Gr¨ ob-ner r´eduite de l’id´eal I = hf1, . . . , fm, x2

1+x1, . . . , x2

n+xni pour un ordre quelconque. Alors

– l’id´eal I est radical, i.e. toutes ses solutions sont de multiplicit´e 1, – G = {1} si et seulement si le syst`eme F n’a pas de solutions dans F2,

– G = {x1 − a1, . . . , xn − an} si et seulement si le syst`eme F a une unique solution (a1, . . . , an) dans F2.

Ces r´esultats restent valable dans tout corps fini Fq, en ajoutant les ´equations de corps xq1− x1, . . . , xq

n− xn.

1.3.2 Elimination, Sp´´ ecialisation des bases de Gr¨obner

Cette section est consacr´ee `a l’utilisation des bases de Gr¨obner pour l’´elimination de variables d’un id´eal (ou de mani`ere ´equivalente pour le calcul de la projection d’une vari´et´e), et `a leur comportement lors d’une sp´ecialisation (on affecte une valeur particuli`ere `a une variable). Ces propri´et´es seront beaucoup utilis´ees, en particulier au chapitre 6 pour le d´ecodage de codes correcteurs.

D´efinition 1.3.2 Un ordre d’´elimination des variables x1, . . . , xn est un ordre mo-nomial admissible sur K[x1, . . . , xn, y1, . . . , ym] tel que pour tous monˆomes xα1yβ1, xα2yβ2 on ait xα1 > xα2 → xα1yβ1 > xα2yβ2. Un tel ordre est aussi appel´e ordre par blocs x1, . . . , xn y1, . . . , ym.

Exemple. L’ordre >(Lex,grevlex) pour x1 > . . . > xn  y1 > . . . > ym m´elange l’ordre lexicographique pour le premier bloc de variables x1 > . . . > xn et l’ordre grevlex pour les variables y1 > . . . > ym. Il est d´efini par xα1yβ1 >(Lex,grevlex) xα2yβ2 si xα1 >Lex xα2 ou xα1 = xα2 et yβ1 >grevlex yβ2. Cet ordre d’´elimination sera utilis´e au chapitre 6 pour traiter des syst`emes `a param`etres.

Il est possible de la mˆeme mani`ere de m´elanger deux blocs de variables avec l’ordre grevlex pour chacun des deux blocs : on d´efinit l’ordre >(grevlex,grevlex) par xα1yβ1 >(grevlex,grevlex) xα2yβ2 si xα1 >grevlexxα2 ou xα1 = xα2 et yβ1 >grevlexyβ2. Exemple. L’ordre d’´elimination de Bayer et Stillman est d´efini par : xα1yβ1 > xα2yβ2 si deg(xα1) > deg(xα2) ou deg(xα1) = deg(xα2) et xα1yβ1 >grevlexxα2yβ2. Une propri´et´e essentielle de ces ordres d’´elimination est la possibilit´e d’´eliminer des variables d’un syst`eme d’´equations :

Section 1.3 Applications des bases de Gr¨obner 15 Theorem 1.3.3 (Th´eor`eme d’´elimination, [CLO97, p. 113]) Soit I un id´eal de K[x1, . . . , xn, y1, . . . , ym] et G sa base de Gr¨obner pour un ordre d’´elimination x1, . . . , xn y1, . . . , ym. Alors l’ensemble

Gn = G ∩ K[y1, . . . , ym]

est une base de Gr¨obner de l’id´eal d’´elimination In= I ∩ K[y1, . . . , ym].

D’un point de vue g´eom´etrique, ce th´eor`eme d’´elimination correspond `a un th´eor`eme de projection pour les vari´et´es associ´ees : ´eliminer le premier bloc de variables revient `

a projeter les vari´et´es associ´ees sur le sous-espace constitu´e du deuxi`eme bloc de variables.

Par exemple, l’ordre Lex est un ordre d’´elimination successive de chaque variable. C’est pour cela que cet ordre est bien adapt´e au calcul des solutions d’un syst`eme de dimension z´ero.

Un autre exemple d’utilisation d’un ordre d’´elimination est le calcul de l’id´eal des relations d’un syst`eme de polynˆomes (ce th´eor`eme sera utilis´e au chapitre 6) : Th´eor`eme 1.3.4 ([CLO97, chap. 7 §4]) Soit {f1, . . . , fm} ⊂ K[x1, . . . , xn]. On consid`ere l’id´eal I = hf1− y1, . . . , fm − ymi ⊂ K[x1, . . . , xn, y1, . . . , ym]. Alors J = I ∩ K[y1, . . . , ym] est un id´eal premier, c’est l’id´eal de toutes les relations entre les fi.

Ces ordres d’´elimination sont tr`es utiles lorsque l’on veut par exemple traiter de syst`emes `a param`etres : un bloc de variables constitue en fait des param`etres, et l’on cherche `a exprimer les autres variables en fonction de ces param`etres. Un autre probl`eme int´eressant de ces syst`emes `a param`etres concerne la sp´ecialisation : ´

etant donn´e une base de Gr¨obner G d’un id´eal I ⊂ K[x1, . . . , xn, y1, . . . , ym], si l’on substitue des valeurs y1, . . . , ym ∈ L (o`u L est une extension du corps K) aux variables y1, . . . , ym, que peut-on dire du syst`eme G = G(yi = yi) ? Il est ´evident que ce syst`eme engendre l’id´eal I = I(yi = yi), mais `a quelles conditions G est-il une base de Gr¨obner de I?

Nous donnons ci-dessous trois cas particuliers pour lesquels cette propri´et´e est vraie. Le premier concerne l’homog´en´eisation d’un syst`eme : si nous notons fh = hdeg(f )f (x1

h, . . . ,xn

h ) l’homog´en´eisation d’un polynˆome f , et fa= f (x1, . . . , xn, 1) la d´eshomog´en´eisation d’un polynˆome f , alors la proposition suivante est v´erifi´ee : Proposition 1.3.5 ([BW93]) Soit F ⊂ K[x1, . . . , xn], et G une base de Gr¨obner du syst`eme homog´en´eis´e Fh = {fh : f ∈ F } ⊂ K[x1, . . . , xn, h]. Alors Ga = {ga : g ∈ G} est une base de Gr¨obner de F .

Dans les deux autres cas toutes les variables sauf une sont sp´ecialis´ees. Si l’id´eal est de dimension z´ero, le th´eor`eme est vrai et il n’y a pas de chute de degr´e dans la base de Gr¨obner lors de la sp´ecialisation, dans le cas g´en´eral il peut y avoir une chute de degr´e mais elle est bien contrˆol´ee.

16 Chapitre 1. Rappels sur les bases de Gr¨obner et les suites r´eguli`eres On appelle variable principale d’un polynˆome P pour un ordre donn´e la plus grande variable (pour cet ordre) qui apparaˆıt dans ce polynˆome, et l’initial de P est son coefficient dominant en tant que polynˆome en sa variable principale.

Pour y

n = (y1, . . . , yn) ∈ Ln (o`u L ⊃ K est une extension de corps) notons φy∗ n la fonction de sp´ecialisation des variables y

n : φy n : K[x, y1, . . . , yn] → L[x] p(x, y n) 7→ φy n(p) = p(x, y n)

Th´eor`eme 1.3.6 (Gianni [Gia89]) Soit I ⊂ K[x, y1, . . . , yn] un id´eal de dimen-sion z´ero, et G une base de Gr¨obner de I pour un ordre d’´elimination de la variable x. Soit (y1, . . . , yn) ∈ Ln et I = φy∗

n(I) ⊂ L[x].

Notons g un polynˆome de G de plus petit degr´e en x dont l’initial ne s’annule pas en (y1, . . . , yn) (un tel g existe). Alors φy

n(g) ∈ L[x] engendre I (ce qui implique que G = φy

n(G) est une base de Gr¨obner de I).

Th´eor`eme 1.3.7 (Fortuna-Gianni-Trager[FGT01]) Soit I ⊂ K[x, y1, . . . , yn] un id´eal, et G une base de Gr¨obner de I pour un ordre d’´elimination de la variable x. Soit (y1, . . . , yn) ∈ Ln et I = φy

n(I). Pour p ∈ I on d´efinit δ(p) = degx(p) − deg(φy

n(p)) la chute de degr´e et δI = min{δ(p), p ∈ I}.

Notons g un polynˆome de G de plus petit degr´e en x tel que φy

n(g) 6= 0, alors – φy∗

n(g) engendre I (ce qui implique que G = φy∗

n(G) est une base de Gr¨obner de I), et δI = δ(g) (i.e. la chute de degr´e de g est minimale),

– s’il existe h ∈ I dont le terme de tˆete ne s’annule pas par φy

n, alors degx(g) = deg(φy

n(g)) et LT(φy

n(I)) = φy

n(LTx(I))