### 6.28.9 Choisir l’algorithme du PGCD de deux polynômes : `ezgcd heugcd modgcd psrgcd`

`ezgcd heugcd modgcd psrgcd` désigne le PGCD (plus grand commun diviseur) de deux polynômes (ou d’une liste de polynômes ou d’une séquence de polynômes) de plusieurs variables.
`ezgcd` est calculé avec l’algorithme ezgcd,
`heugcd` est calculé avec l’algorithme dit du pgcd heuristique,
`modgcd` est calculé avec l’algorithme modulaire,
`psrgcd` est calculé avec l’algorithme du sous résultant.
On tape :

`gcd(x```^```2-2*x*y+y```^```2-1,x-y)`

ou

`ezgcd(x```^```2-2*x*y+y```^```2-1,x-y)`

ou

`heugcd(x```^```2-2*x*y+y```^```2-1,x-y)`

ou

`modgcd(x```^```2-2*x*y+y```^```2-1,x-y)`

ou

`psrgcd(x```^```2-2*x*y+y```^```2-1,x-y)`

On obtient :

`1`

On tape :

`gcd((x+y-1)*(x+y+1),(x+y+1)```^```2)`

ou On tape :

`ezgcd((x+y-1)*(x+y+1),(x+y+1)```^```2)`

ou

`heugcd((x+y-1)*(x+y+1),(x+y+1)```^```2)`

ou

`modgcd((x+y-1)*(x+y+1),(x+y+1)```^```2)`

On obtient :

`x+y+1`

On tape :

`psrgcd((x+y-1)*(x+y+1),(x+y+1)```^```2)`

On obtient :

`-x-y-1`

On tape :

`ezgcd((x+1)```^```4-y```^```4,(x+1-y)```^```2)`

On obtient :

`"GCD not successfull Error: Bad Argument Value"`

Mais si on tape :

`gcd((x+1)```^```4-y```^```4,(x+1-y)```^```2)`

ou

`heugcd((x+1)```^```4-y```^```4,(x+1-y)```^```2)`

ou

`modgcd((x+1)```^```4-y```^```4,(x+1-y)```^```2)`

ou

`psrgcd((x+1)```^```4-y```^```4,(x+1-y)```^```2)`

On obtient :

`x-y+1`