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.

Il s’agit <strong>de</strong> reconstruire le pgcd par interpolation. Tout d’abord, on a une borneévi<strong>de</strong>nte sur le <strong>de</strong>gré du pgcd par rapport à la variable X n , c’est le minimum δ<strong>de</strong>s <strong>de</strong>grés par rapport à X n <strong>de</strong>s polynômes P et Q. A première vue, il suffit doncd’évaluer les polynômes en δ + 1 points α.Il faut toutefois prendre gar<strong>de</strong> aux mauvaises évaluations et à la normalisation<strong>de</strong>s pgcd avant d’interpoler. En effet, si D(X 1 , . . .., X n ) désigne le pgcd <strong>de</strong> P et Qet G(X 1 , . . .., X n−1 ) le pgcd <strong>de</strong> P(X 1 , . . .., X n−1 , α) et <strong>de</strong> Q(X 1 , . . .., X n−1 , α),on peut seulement dire D(X 1 , . . .., X n−1 , α) divise G. Plusieurs cas sont doncpossibles lorsqu’on évalue en un nouveau point α :– l’un <strong>de</strong>s <strong>de</strong>grés <strong>de</strong> G est plus petit que le <strong>de</strong>gré du polynôme D ′ reconstruitpar interpolation jusque là. Dans ce cas, toutes les évaluations qui ont conduità reconstruire D ′ étaient mauvaises. Il faut recommencer l’interpolation àzéro ou à partir <strong>de</strong> G (si tous les <strong>de</strong>grés <strong>de</strong> G sont inférieurs ou égaux aux<strong>de</strong>grés du D ′ reconstruit).– l’un <strong>de</strong>s <strong>de</strong>grés <strong>de</strong> G est plus grand que le <strong>de</strong>gré du D ′ reconstruit jusque là.Il faut alors ignorer α.– Tous les <strong>de</strong>grés <strong>de</strong> G sont égaux aux <strong>de</strong>grés du D ′ reconstruit jusque là.Dans ce cas, G est un multiple entier du polynôme D ′ reconstruit jusquelà et évalué en X n = α. Si on suppose qu’on a pu s’arranger pour que cemultiple soit 1, on ajoute le point α aux points d’évaluation précé<strong>de</strong>nts α jen posant :∏D ′ = D ′ + (G − D ′ α)j(X n − α j )∏α j(α − α j )On voit que les mauvaises évaluations se détectent simplement par les <strong>de</strong>grés. Pourla normalisation, on utilise une petite astuce : au lieu <strong>de</strong> reconstruire lepgcdD, onva reconstruire un multiple du pgcd D (ce multiple appartiendra à Z[X n ]). On voitmaintenant P et Q comme <strong>de</strong>s polynômes en n − 1 variables X 1 , . . .., X n−1 à coefficientsdans Z[X n ]. Alors lcoeff(D), le coefficient dominant <strong>de</strong> D (relativementà l’ordre lexicographique sur les variables X 1 , ..., X n−1 ), est un polynôme en X nqui divise le coefficient dominant <strong>de</strong> P et <strong>de</strong> Q donc divise le coefficient dominantdu pgcd <strong>de</strong>s coefficients dominants <strong>de</strong> P et <strong>de</strong> Q. On va donc reconstruire lepolynôme :D ′ ∆(X n )= Dlcoeff(D)(X n ) , ∆(X n) = pgcd(lcoeff(P)(X n ), lcoeff(Q)(X n ))c’est-à-dire D multiplié par un polynôme qui ne dépend que <strong>de</strong> X n .Revenons à G en un point α <strong>de</strong> bonne évaluation. C’est un multiple entier <strong>de</strong>D(X 1 , . . .., X n−1 , α) :G = βD(X 1 , . . .., X n−1 , α)Donc, comme polynômes <strong>de</strong> X 1 , ..., X n−1 à coefficients dans Z[X n ] ou dans Z,lcoeff(G) = βlcoeff(D) |Xn=α. Comme lcoeff(D) divise ∆(X n ), il en est <strong>de</strong> mêmeen X n = α donc lcoeff(G) divise β∆(α). On en déduit que ∆(α)G qui est divisiblepar ∆(α)β est divisible par lcoeff(G). On va donc considérer le polynôme∆(α)G/lcoeff(G) : ses coefficients sont entiers et son coefficient dominant est∆(α) = lcoeff(D ′ (X 1 , . . .., X n−1 , α))29

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

Saved successfully!

Ooh no, something went wrong!