12.07.2015 Views

Algorithmes de calcul formel - Free

Algorithmes de calcul formel - Free

Algorithmes de calcul formel - Free

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Si Q (mod F j ) = s j ∈ Z/pZ, alors Q p (mod F j ) = s p j = s j, donc par lethéorème <strong>de</strong>s restes chinois, Q = Q p (mod P).Réciproquement, si Q p − Q = 0 (mod P), en utilisant la factorisation :X p − X = Π j∈Z/pZ (X − j)on en tire P divise Q p −Q = Π j∈Z/pZ (Q(X)−j), donc F j divise l’un <strong>de</strong>s facteurset Q(X) (mod F j ) ∈ Z/pZ. Le noyau <strong>de</strong> ϕ − Id est donc un espace vectoriel <strong>de</strong>dimension n, le nombre <strong>de</strong> facteurs irréductibles <strong>de</strong> P et possè<strong>de</strong> donc p n éléments(en effet pour tout n uplet <strong>de</strong> s j , on peut construire un polynôme Q du noyau parle théorème <strong>de</strong>s restes chinois en posant Q (mod F j ) = s j ).L’intérêt du noyau <strong>de</strong> ϕ − Id est qu’on peut le <strong>calcul</strong>er sans connaitre les F j .Une fois ce <strong>calcul</strong> fait, voyons comment on peut remonter aux F j . On connaitdéjà la dimension du noyau donc le nombre <strong>de</strong> facteurs irréductibles. De plus, onremarque que le polynome constant est un élément du noyau qu’on appellera T 1 , onnote alors T 2 , ..., T n les autres polynômes du noyau. Ensuite, on <strong>calcul</strong>e le pgcd <strong>de</strong>P avec T 2 − jT 1 pour j ∈ Z/pZ. On sait que T 2 = s 2,j (mod F j ), donc ce pgc<strong>de</strong>st égal au produit <strong>de</strong>s facteurs F j tels que s 2,j = jT 1 . L’un au moins <strong>de</strong>s pgcd<strong>calcul</strong>és est non trivial car sinon T 2 = T 1 (mod F j ) pour tout j donc T 2 = T 1 . Sion a <strong>de</strong> la chance tous les s 2,j seront distincts et les pgcd non triviaux <strong>de</strong> P avecT 2 − jT 1 donneront les F k . Sinon il faudra continuer avec T 3 − jT 1 etc.Exemple :Revenons sur la factorisation <strong>de</strong> P := (x 6 +2x 5 +x 2 +x+2) (mod 5). Commençonspar <strong>calcul</strong>er la matrice <strong>de</strong> ϕ dans la base {1, x, x 2 , ..., x 5 }. On a évi<strong>de</strong>mmentϕ(1) = 1 et ϕ(x) = x 5 , puis ϕ(x 2 ) = x 10 = x 5 +x 4 −2x 3 +x (mod P), puis enmultipliant par x 5 et en divisant par P , ϕ(x 3 ) = −x 4 + 2x 3 , <strong>de</strong> la même manièreon obtient ϕ(x 4 ) = −x 5 + 2x 4 + x 3 − x 2 − 2 et ϕ(x 5 ) = x 3 + x 2 − x. La matrice<strong>de</strong> ϕ est donc :⎛⎞1 0 0 0 −2 00 0 1 0 0 −1M =0 0 0 0 −1 1⎜ 0 0 −2 2 1 1⎟⎝ 0 0 1 −1 2 0 ⎠0 1 1 0 −1 0On <strong>calcul</strong>e ensuite le noyau <strong>de</strong> ϕ − Id (comme matrice à coefficients dans Z/5Z),on obtient une base du noyau en prenant par exemple les vecteurs (−1, 0, 0, 0, 0, 0)et (0, 0, −1, −1, 0, −1). Donc le polynôme P possè<strong>de</strong> 2 facteurs dans Z/5Z[X].Pour déterminer les facteurs, on <strong>calcul</strong>e le pgcd <strong>de</strong> P avec le polynôme T 2 − s oùT 2 = −x 5 − x 3 − x 2 correspond au 2ème vecteur <strong>de</strong> la base du noyau. On obtientpour s = 0 un pcgd non trivial (x 3 +x+1), ce qui permet <strong>de</strong> <strong>calcul</strong>er les 2 facteurs.Si on avait essayé d’autres valeurs <strong>de</strong> s, pour s = 1 on obtient comme pgcd 1, pours = 2 on trouve le 2ème facteur x 3 + 2x 2 − x + 2.8.2.5 Remontée (Hensel)Il s’agit <strong>de</strong> passer d’une factorisation <strong>de</strong> P dans Z/pZ[X] à une factorisation<strong>de</strong> P dans Z/p k Z[X], la métho<strong>de</strong> est analogue à celle <strong>de</strong> l’algorithme EZGCD <strong>de</strong><strong>calcul</strong> <strong>de</strong> pgcd <strong>de</strong> polynômes.51

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!