Plus grand commun diviseur de nombres entiers

From Wikipédia
(Redirected from PGCD de nombres entiers)
Jump to navigation Jump to search
Article général Pour un article plus général, voir Plus grand commun diviseur.

En mathématiques, le PGCD de nombres entiers différents de zéro est, parmi les diviseurs communs à ces entiers, le plus grand d'entre eux. PGCD signifie plus grand commun diviseur.

Par exemple, les diviseurs positifs de 30 sont, dans l'ordre : 1, 2, 3, 5, 6, 10, 15 et 30. Ceux de 18 sont 1, 2, 3, 6, 9 et 18. Les diviseurs communs de 30 et 18 étant 1, 2, 3 et 6, leur PGCD est 6. Ce qui se note : PGCD(30, 18) = 6.

Les diviseurs communs à plusieurs entiers sont les diviseurs de leur PGCD. Connaître le PGCD de deux nombres entiers non nuls a et b permet de simplifier la fraction a/b. Il est possible de le déterminer par divers raisonnements, dont l'algorithme d'Euclide.

Notation[edit | edit source]

Le PGCD de deux nombres entiers a et b est généralement noté PGCD(a, b) ou pgcd(a, b). On trouve parfois l'acronyme équivalent PGDC, mais PGCD est la version officielle[1].

PGCD(a, b) est parfois noté ab. Cette notation fait référence aux ensembles ordonnés : tout diviseur commun à a et b divise leur PGCD.

Les anglophones le nomment greatest common divisor, noté gcd(a, b), ou highest common factor, noté hcf(a, b).

Propriétés[edit | edit source]

Le PGCD peut être défini pour des nombres entiers naturels ou relatifs. Mais tout diviseur d'un nombre entier est également diviseur de son opposé. Les calculs et démonstrations sur le PGCD s'effectuent donc en général sur des nombres entiers positifs, l'extension aux négatifs étant immédiate.

Soient a, b, c trois entiers non nuls.

  • [2]
  • [3]

Cas de zéro[edit | edit source]

En considérant que tout nombre entier est un diviseur de zéro (car 0 × c = 0 quel que soit c) il vient que, pour tout entier a > 0, PGCD(a, 0) = PGCD(0, a) = a.

La définition usuelle ne permet pas de définir PGCD(0, 0) puisqu'il n'existe pas de plus grand diviseur de 0. On pose, par convention, PGCD(0, 0) = 0. Cependant, si l'on envisage une autre façon d'être plus grand (a est plus grand que b quand a est un multiple de b), cette convention est cohérente avec la définition. C'est cette nouvelle approche qui est envisagée dans la définition générale du PGCD.

PGCD et PPCM[edit | edit source]

Le PGCD de deux nombres entiers positifs a et b est lié avec leur PPCM (le plus petit de leurs multiples communs), par la relation

ab = PGCD(a, b)×PPCM(a, b).

Pour trois entiers relatifs non nuls a, b, c :

  • pgcd(a, b) × ppcm(a, b) = |ab|

PGCD de trois nombres entiers[edit | edit source]

. On peut étendre à un nombre arbitraire d'éléments.

Tout diviseur commun divise le PGCD[edit | edit source]

A priori, il faut connaître la liste des diviseurs communs de deux nombres pour pouvoir déterminer le PGCD. Mais l'inverse est également vrai. En effet, les diviseurs communs de deux nombres entiers sont exactement les diviseurs de leur PGCD. Par exemple, si le PGCD de deux nombres entiers a et b est 6, les diviseurs communs à a et b seront ceux de 6, soit : 1, 2, 3, 6 et leurs opposés.

La réciproque est en partie vraie : le seul nombre positif D qui vérifie les deux propriétés :

D divise a et b ;
tout entier qui divise a et b divise aussi D ;

est le PGCD de a et b.

Ces deux phrases sont parfois prises comme définition du PGCD, ce qui permet d'étendre à d'autres ensembles que celui des nombres entiers (voir l'article PGCD). Mais si on ôte l'adjectif positif, un autre nombre entier vérifie cette propriété : l'opposé du PGCD de a et b. Par exemple, deux nombres D vérifient

D divise 30 et 18 ;
tout entier qui divise 30 et 18 divise aussi D ;

sont 6 et -6.

Ceci montre que, si b est un diviseur de a, alors le PGCD de a et b est b.

PGCD et combinaisons linéaires[edit | edit source]

Le PGCD est en partie compatible avec la multiplication :

pour tous nombres entiers non nuls a, b et k, PGCD(ka, kb) = k PGCD(a, b).

Mais il ne l'est pas avec l'addition. Par exemple, PGCD(9, 12) = 3 mais, en ajoutant 2, PGCD(11, 14) = 1, alors qu'en multipliant par 3 on obtient PGCD(27, 36) = 9.

Cependant, il est possible de remplacer l'un de deux nombres a ou b par a + b sans changer le PGCD. Plus généralement, on peut ajouter ou retrancher à l'un des deux un multiple de l'autre. Plus formellement :

Théorème — Soient a, b, v trois entiers, alors PGCD(a, b) = PGCD(a + bv, b).

Cette propriété justifie l'algorithme d'Euclide, une méthode qui permet de déterminer le PGCD de deux nombres (voir plus bas).

Par contre, une combinaison linéaire quelconque de a et b (c'est-à-dire un nombre de la forme au + bv, où u et v sont des entiers) n'est pas forcément égale à PGCD(a, b), mais en est un multiple. Et, réciproquement, un nombre entier c peut s'écrire sous la forme au + bv si et seulement si c est un multiple de PGCD(a, b).

Nombres premiers entre eux[edit | edit source]

Des nombres entiers sont dits premiers entre eux lorsqu'ils n'ont « rien en commun » du point de vue de la divisibilité, autrement dit, leur PGCD est égal à 1.

Si deux nombres entiers a et b ont pour PGCD le nombre d, alors les entiers a/d et b/d sont premiers entre eux[4].

Une erreur classique consiste à croire que, si un nombre entier c divise un produit d'entier ab, alors il divise a ou b. Il n'en est rien, comme le montre l'exemple de 6, qui divise 9×8 = 72, mais ne divise ni 9 ni 8. Mais cela devient vrai si on ajoute l'hypothèse que c est premier avec l'un des deux nombres a ou b. Ce résultat est connu sous le nom de Lemme de Gauss et s'énonce ainsi :

Lemme de Gauss — Soient a, b et c trois nombres entiers tels que c divise ab et c est premier avec a. Alors c divise b.

PGCD et facteurs premiers[edit | edit source]

Tout entier n supérieur ou égal à 2 s'écrit de manière unique à l'ordre près des facteurs et au signe près comme un produit fini de nombres premiers. Le nombre de fois que l'entier premier p apparait dans cette écriture s'appelle la valuation p-adique de n, notée vp(n). Un entier non nul m divise n si et seulement si pour tout p, vp(m) ≤ vp(n).

De fait, le pgcd d'une famille (ai) est donné par :

où le produit porte sur l'ensemble des nombres premiers (presque tous les facteurs du produit, hormis une quantité finie, sont égaux à 1).

Tout diviseur commun à une famille d'entiers non tous nuls divise leur pgcd. Ce constat résulte immédiatement de l'écriture ci-dessus en produit de nombres premiers mais peut aussi se déduire de l'algorithme d'Euclide ou ses variantes :

Suites de Lucas et divisibilité forte[edit | edit source]

Toute suite de Lucas xn = Un(P, Q) associée à des paramètres P, Q premiers entre eux est à divisibilité forte, c.-à-d. : C'est le cas, par exemple, de :

Applications[edit | edit source]

Simplification de fractions[edit | edit source]

Une fraction irréductible est une fraction dans laquelle le numérateur et le dénominateur sont les plus proches possibles de 1. Cela revient à dire que le numérateur et le dénominateur sont premiers entre eux. La fraction irréductible égale à une fraction a/b donnée est celle dont le numérateur est a/d et le dénominateur b/d, où d = PGCD(a, b).

Exemple :

En sachant que PGCD(30, 18) = 6, puis en remarquant que et , on déduit que , cette dernière fraction étant irréductible.

Équations diophantiennes[edit | edit source]

Certaines équations diophantiennes (c'est-à-dire des équations dont les paramètres et les solutions cherchées sont des nombres entiers) se résolvent par une division par un PGCD afin de se ramener à une équation équivalente mettant en jeu des nombres premiers entre eux.

Ainsi l'équation diophantienne ax + by = c d'inconnues x et y admet une infinité de solutions si et seulement si c est un multiple du PGCD de a et b. Lorsque c n'est pas un multiple du PGCD de a et b, elle n'admet aucune solution entière. Ces résultats sont une conséquence du théorème de Bachet-Bézout. La méthode classique de résolution d'une telle équation consiste à diviser l'équation par le PGCD de a et b, puis, en s'appuyant sur le théorème de Gauss, résoudre la nouvelle équation obtenue, de la forme a'x + b'y = c', où a' et b' sont premiers entre eux.

Une autre équation diophantienne classique est la recherche des triplets pythagoriciens. Un triplet pythagoricien est la donnée de trois nombres entiers x, y et z qui vérifient la relation de Pythagore : x2 + y2 = z2. Cela revient à chercher tous les triangles rectangles dont les longueurs des côtés sont des nombres entiers. L'étude de cette équation se ramène à la recherche des nombres x, y et z premiers entre eux : si x, y et z sont des solutions de l'équation et que d est leur PGCD, alors x/d, y/d et z/d sont aussi des solutions de l'équation.

Cryptographie[edit | edit source]

Il n'est pas possible de déterminer a priori le nombre de diviseurs d'un nombre quelconque. Le système de codage RSA s'appuie sur la très grande difficulté qu'il y a, même avec un ordinateur très puissant, à trouver les diviseurs de certains nombres.

Détermination du PGCD[edit | edit source]

Le calcul du PGCD est trivial lorsque l'un des nombres est premier (le PGCD est 1) ou lorsque l'un des nombres est multiple de l'autre (le PGCD est le plus petit des deux).

Recherche exhaustive[edit | edit source]

Cette méthode est particulièrement adaptée pour les petits nombres ou les nombres qui ont beaucoup de petits diviseurs (comme 2, 3, 5, 11). En prenant les nombres entiers dans l'ordre, on teste pour chacun s'ils sont diviseurs communs à a et b. C'est-à-dire que l'on trouve un nombre k tel que a = ka′ et b = kb′, alors il suffit de calculer le PGCD de a′ et b′ car on a :

Exemple : pgcd(60,84). On voit que 60 et 84 sont multiples de 4 donc

.

Ensuite, comme 15 et 21 sont multiples de 3 on a

.

Or, Donc, .

Soustractions successives[edit | edit source]

Animation de la méthode des soustractions successives.

Le PGCD de deux nombres a et b est aussi celui de a et de b - a. Ceci justifie la méthode des soustractions successives.

Cette méthode est particulièrement adaptée pour les nombres grands mais relativement proches. Supposons que a soit plus grand que b, on a :

.

En effet, pour tout diviseur d de b :

  • si a est multiple de d alors a – b également ;
  • réciproquement, si d divise a – b, il divise également (a – b) + b = a.
Exemple :

Déterminons le PGCD de 675 et 660. Il est également celui de 660 et 675 – 660 = 15. Or, en appliquant les critères de divisibilité par 3 et par 5, on voit que 15 divise 660. Donc PGCD(15, 660) = PGCD(675, 660) = 15.

Algorithme d'Euclide[edit | edit source]

L'algorithme d'Euclide utilise la division euclidienne. Étant donnés deux entiers a et b avec b > 0, la division euclidienne de a par b est la recherche des deux nombres q et r tels que :

  1. a = bq + r ;
  2. 0 ≤ r < b.

Le nombre r est appelé le reste de cette division.

L'algorithme d'Euclide s'appuie également sur deux propriétés du PGCD :

  • le PGCD de a et b est égal au PGCD de b et r ;
  • si b divise a, alors le PGCD de a et b est b.

Pour déterminer le PGCD des deux nombres a et b, l'algorithme effectue la division euclidienne de a par b (on trouve alors un reste r1) puis, si r1 ≠ 0, la division euclidienne de b par r1 (on note r2 le reste trouvé), puis, si r2 ≠ 0, celle de r1 par r2, et ainsi de suite. La partie 2. de la définition de la division euclidienne assure que la suite r1, r2, … est strictement décroissante donc finit par un reste nul. Le PGCD de a et b est le reste précédent.

Algorithme du PGCD binaire[edit | edit source]

L'algorithme du PGCD binaire est une variante de l'algorithme d'Euclide qui manipule la représentation binaire des nombres.

Décomposition en facteurs premiers[edit | edit source]

Tout entier supérieur ou égal à 2 s'écrit de façon unique comme produit de nombres premiers. Et nous avons la relation, pour tout nombre premier p,

,

est la valuation p-adique.

La première étape de cette méthode consiste à décomposer a et b en produits de nombres premiers. Il est alors très facile de trouver le PGCD.

Si et où tous les exposants vérifient et alors

Exemple :

360 = 2×2×2×3×3×5, qui se note 360 = 23×32×5.

Connaissant les décompositions en facteurs premiers de deux nombres entiers a et b, la décomposition en facteurs premiers de leur PGCD est constituée des mêmes facteurs que ceux de a et b, en prenant pour chaque facteur l'exposant minimal qui apparaît à la fois dans a et b : le plus petit exposant commun à a et b.

Exemple :

Avec les décompositions en facteurs premiers

360 = 23×32×5

et

48 = 24×3

On remarque que les facteurs premiers communs sont 2 et 3. Le nombre 2 apparaît avec les exposant 3 et 4, donc son plus petit exposant commun est 3. Pour 3, le plus petit exposant commun est 1 (puisque 3 = 31). Le PGCD de 360 et 48 est donc 23×3 = 24.

Notes et références[edit | edit source]

  1. « Programmes du collège : Programmes de l’enseignement de mathématiques », sur education.gouv.fr, Ministère de l'Éducation nationale, (consulté le 25 septembre 2016) : « Connaître et utiliser un algorithme donnant le PGCD de deux entiers (algorithme des soustractions, algorithme d’Euclide) », p. 35.
  2. Car l'ensemble des diviseurs communs est le même pour les deux couples. Cette propriété fonde l'algorithme d'Euclide.
  3. Pour une démonstration, voir par exemple « Propriétés du PGCD » sur Wikiversité.
  4. Pour une démonstration, voir par exemple « Nombres premiers entre eux » sur Wikiversité.
  5. Inspirée de Daniel Perrin, « Une précision sur le pgcd ».