Pgcd - ppcm - Bézout

Transcription

Pgcd - ppcm - Bézout
PGCD-PPCM-Bézout.
I PGCD – Algorithme d’Euclide.
II Bézout.
III Gauss et Fermat.
IV PPCM.
V R.S.A.
Une conjecture classique disait que (n17 + 9) ∧ ((n + 1)17 + 9) = 1 . Les machines n’ont pas
trouvé de contre-exemple, mais on en connaît un (n a 20 chiffres).
Trois élèves sont sur une ligne de départ sur un carrelage. On leur attribue à chacun un
nombre entier (a,b,c). Au top, on leur demande d’avancer du nombre de cases correspondant à
leur numéro. Au top suivant, ne peuvent avancer que ceux qui possèdent quelqu’un
strictement devant eux. Et ainsi de suite. Que se passe-t-il à la limite ?
[Ils arrivent sur la ligne du ppcm]
La phrase culte : « L’amour est une drôle d’arithmétique où l’on poursuit le rêve de ne
faire qu’un en étant deux.» Jérôme Touzalin (dramaturge français).
I PGCD – Algorithme d’Euclide.
Définition : Le PGCD de deux nombres entiers naturels a et b est le plus grand
diviseur de a et b. On le note a b.
Exemple : Déterminer les PGCD de 24 et 64 ; de
Définition : Si le PGCD de deux nombres entiers naturels a et b est 1, on dit qu’ils
sont premiers entre eux.
Proposition (3.A) : Si a =
∏
piαi et b =
pi premiers
en facteurs premiers ordonnées, alors a
b=
∏
∏
pi βi , sont deux décompositions
pi premiers
pi min(αi ; βi )
pi premiers
Démonstration : just do it.
Montrer que 47 et 35 sont premiers entre eux.
Déterminer le pgcd de 23256 et 3468. [204]
Lemme (3.B) : Si a=bq+r est la division euclidienne de a par b, alors a
b= b
Démonstration : On va montrer que les diviseurs de a et b sont les diviseurs de b et r.
Si d divise a et b, alors d divise r=a-bq.
Si d divise b et r alors d divise a=bq+r.

Algorithme d’Euclide :
Recherche du PGCD de 3500 et 2485.
1
r.
3500 = 2485 ×1 + 1015
2485 = 1015 × 2 + 455
1015 = 455 × 2 + 105
455 = 105 × 4 + 35
105 = 35 × 3 + 0
Déterminer tous les diviseurs de 2037 et 5238. [pgcd=291, il suffit de chercher les
diviseurs de 291]
Si l’on divise 2897 et 3505 par un même entier positif, on obtient respectivement 13 et 5
comme restes. Quel est cet entier ? [n divise le pgcd 28 et n>13 donc 14 et 28 sont les deux
seules solutions]
Montrer que gcd(n + 13; n − 2) = gcd(n − 2;15) . En déduire les valeurs de n pour lesquelles
n + 13
est irréductible.
n−2
II Bézout (1730-1783).
Théorème de Bézout (3.C) : Deux entiers a et b sont premiers entre eux si et
seulement s’il existe deux entiers relatifs u et v tels que au + bv = 1
Remarque : En fait, il semble que Bachet (1581-1638) connaissait déjà ce théorème…
Démonstration : C.S. S’il existe u et v tels que au + bv = 1 , il est clair que le pgcd vaut 1. En
effet, si on note δ le pgcd de a et b, on a δ qui divise toute combinaison linéaire de a et b.
Donc δ | au + bv ⇒ δ = 1 .
C.N. On considère l’ensemble des entiers E = {au + bv, avec (u , v) ∈ ℤ 2 } . Si l’on considère
les entiers strictement positifs de E, il en est un plus petit, que l’on note d = au0 + bv0
.Montrons que d divise a et b.
Il suffit de faire la division de a par d qui donne :
a = dq + r = (au0 + bv0 )q + r ⇒ r = a (1 − qu0 ) + b(− qv0 )
Ainsi, r est dans E, or on a 0 ≤ r < d . Par la minimalité de d, on a r=0. Donc d divise a.

De la même façon, d divise b ; et comme a et b sont premiers entre eux, on a d=1.
Recherche de u et v via l’algorithme d’Euclide.
Dans l’exemple précédent :
3500 = 2485 × 1 + 1015 ⇒ 1015 = 3500 − 2485
2485 = 1015 × 2 + 455
⇒ 455 = 2485 − 2 ×1015
1015 = 455 × 2 + 105
⇒ 105 = 1015 − 455 × 2
455 = 105 × 4 + 35
⇒ 35 = 455 − 105 × 4
105 = 35 × 3 + 0
= 455 − 4 × (1015 − 455 × 2)
= 9 × 455 − 4 × 1015
= 9 × (2485 − 2 × 1015) − 4 × 1015
= 9 × 2485 − 22 × 1015
22 × 3500
= ... = 31
× 2485 −
v
u
2
Si gcd(a,b)=1 et si a=da’ alors gcd(a’,b)=1.
Proposition (3.D) : Si a
b = d, alors il existe u et v tels que au + bv = d .
Démonstration : Même raisonnement que dans la CN du théorème précédent.

La réciproque est fausse ! En effet, si 68 × 17 − 11× 105 = 1 comme trouvé à l’exercice
précédent, on a aussi 68 × 34 − 11× 210 = 2 et pourtant, le pgcd de 68 et 11 n’est pas 2 !...
Corollaire(3.E) : Si d est premier avec a et b, alors il est premier avec ab.
Démonstration : D’après 3.C, il existe u,v,u’,v’ tels que du + av = 1 et du '+ bv ' = 1 . En
multipliant membre à membre, on obtient
d 2uu '+ dubv '+ du ' av + abvv ' = 1 ⇒ d (duu '+ ubv '+ u ' av) + ab(vv ') = 1
Et encore d’après 3.C, d et ab sont premiers entre eux.

En déduire que si a et b sont premiers entre eux, alors a n et b n sont premiers entre eux.
Quel est le pgcd de a = 2n3 + 5n 2 + 4n + 1 et b = 2n 2 + n ? [2n+1]
Corollaire(3.F) : Si α est un entier naturel non nul, on a ( α a) ( α b) = α ( a
b)
Corollaire(3.G) : L’entier d est le pgcd de a et b si et seulement si a = da ' et b = db '
avec a’ b’=1.
On pose α = 11a + 2b et β = 18a + 5b . Montrer que si l’un des deux est divisible par 19,
l’autre aussi. En déduire que si gcd(a, b) = 1 , alors les diviseurs communs à α et β sont
{±1; ±19} .
III Gauss (1777-1855) et Fermat (1601-1665).
Lemme de Gauss (3.H) : Soient a,b et c trois entiers non nuls.
Si a divise bc et si a et b sont premiers entre eux, alors a divise c.
Démonstration : Si a divise bc, alors il existe k tel que ka=bc. D’autre part, d’après Bézout, il
existe u et v tels que au + bv = 1 . Donc acu + bcv = c ⇔ acu + kav = c ⇒ a (cu + kv) = c et a
divise c.
Déterminer m et n tels que 63m=91n. (un autre : 126m=182n)
Cas classique de résolution d’équation du type ax+by=c :
On veut trouver tous les entiers x et y tels que 30 x + 35 y = 100 (E).
- On commence par faire en sorte que les trois coefficients a, b et c soient premiers entre eux.
30 x + 35 y = 100 ⇔ 6 x + 7 y = 20
- Les nombres 6 et 7 étant premiers entre eux (il n’y a pas de solutions dans le cas contraire !),
on cherche les coefficients de Bézout u et v tels que 6u + 7v = 1 . Via l’algorithme d’Euclide si
nécessaire ou directement si la solution est évidente, comme ici : 6 × (−1) + 7 × 1 = 1 .
- En multipliant par 20, on trouve une solution particulière à (E) :
6 × (−20) + 7 × 20 = 20 .
3
- Pour trouver toutes les solutions, il suffit de résoudre le système :
6 x + 7 y = 20
⇔ 6 × ( x + 20) + 7 × ( y − 20) = 0 en soustrayant membre à membre.

6 × (−20) + 7 × 20 = 20
A noter qu’il s’agit bien d’une équivalence (ce qui n’est pas le cas en général) car la deuxième
équation est à peu près équivalente à 0=0…)
- On en déduit 6 × ( x + 20) = 7 × (20 − y ) (E’). D’après le lemme de Gauss, comme
6 | 7 × (20 − y ) et que 6 et 7 sont premiers entre eux, 6 | (20 − y ) . Donc il existe k ∈ ℤ tel que
20 − y = 6k ⇔ y = 20 − 6k .
On recommence le même raisonnement avec 7 | 6 × ( x + 20) et 6 et 7 sont premiers entre eux,
donc 7 | ( x + 20) . Donc il existe k ' ∈ ℤ tel que x + 20 = 7 k ' ⇔ x = 7 k '− 20 .
- En injectant les deux résultats encadrés dans (E’), on trouve k=k’.
On trouve donc des solutions du type (7 k − 20; 20 − 6k ) avec k ∈ ℤ .
- Il faut vérifier que tous ces couples sont solutions : 30 × (7 k − 20) + 35 × (20 − 6k ) = .... = 100 .
(En fait, il en sera toujours ainsi car on utilise deux fois le lemme de Gauss qui n’est qu’une
implication, mais dans les deux sens. Donc on a une équivalence. Le problème est que la
plupart des correcteurs du bac demandent la vérification systématique alors il faut la faire.
Tant pis !)
A vous : Résoudre 13x+19y=4.
(Dû à Nicomaque de Gérase (100 av. JC), on le trouve aussi chez sun Tsu à la même
époque en chine. On connaît une généralité : le lemme chinois) Mon panier peut contenir au
plus 100 œufs. Si je le vide par 3 œufs à la fois, il en reste 1. Par 5 œufs à la fois, il en reste 2.
Par 7 œufs à la fois, il en reste 3. Combien y a-t-il d’œufs dans mon panier ?
α = 7 + 5m
 x ≡ 1 (3)

3α − 5β = 1  β = 4 + 3m

x
≡
2
(5)
⇔
⇔
⇒ 3m − 7 n = 6 ⇒ x = 52 + 105k



β
γ
β
5
−
7
=
1
=
10
+
7
n



 x ≡ 3 (7)
γ = 7 + 5n
Petit théorème de Fermat (3.I) : Si p est premier, soit a ∈ ℕ tel que p ne divise pas a,
alors a p −1 ≡ 1 ( p ) .
Démonstration : Comme p ne divise pas a, on a et p premiers entre eux. On pose
E = {a, 2a,3a,..., ( p − 1)a} . On sait que p ne divise aucun des éléments de E. (Par l’absurde :
on aurait p | ka et d’après le lemme de Gauss, p | k . Mais1 ≤ k ≤ p − 1 . Contradiction).
Ainsi, si on considère les restes des éléments de E dans la division par p, on obtient des
valeurs dans F = {1, 2,3,..., p − 1} . Toute l’astuce est de démontrer qu’ils sont tous atteints.
Autrement dit, que l’application ϕ qui à un entier de E associe son reste dans la division par p
est une bijection de E sur F.
Par l’absurde, là encore. Imaginons qu’il existe deux entiers de E, que l’on appelle ka et k’a
tels que leurs restes soient les mêmes dans la division par p. On a alors ka ≡ k ' a ( p ) . On peut
supposer sans perte de généralité que k>k’. Ce qui donne (k − k ')a ≡ 0 ( p ) . Donc (k − k ')a
est un entier de E divisible par p. Contradiction.
Donc ϕ est une bijection et
4
p −1
p −1
∏ ka ≡ ∏ ϕ (ka) ( p)
k =1
k =1
p −1
p −1


⇔  ∏ k  a p −1 ≡ ∏ k ( p )
k =1
 k =1 
p −1
⇔ ( p − 1)!a ≡ ( p − 1)! ( p )
⇔ ( p − 1)!( a p −1 − 1) ≡ 0 ( p )
Donc p | ( p − 1) !( a p −1 − 1) or gcd( p, ( p − 1)!) = 1 , d’après le lemme de Gauss, p | ( a p −1 − 1) .
La réciproque est fausse ! En effet, si a=7 et p=25, on a 7 24 ≡ 1 (25) mais 25 n’est pas
premier !... C’est que l’on appelle les nombres de Carmichaël.
Le premier nombre de Carmichaël est 561=3*11*17.
Remarque : Ce théorème est néanmoins souvent utilisé (dans sa version contraposée) pour
montrer qu’un nombre est premier. On appelle ce test un test de Rabbin-Miller.
Si p est un premier différent de 2 et 5, alors il existe un multiple de p ne s’écrivant qu’avec
des 9. [ 10 p−1 − 1 ]
Corollaire (3.J) : Si p est premier, soit a ∈ ℕ , alors p | (a p − a ) .
Mais il y a mieux (c’est un peu plus cher !...)
Le théorème d’Euler (3.K) : Si n est un entier, soit a ∈ ℕ tel que n ne divise pas a,
alors aϕ ( n ) ≡ 1 (n) .
Euler était un type extraordinaire. Il n’a jamais fait preuve d’arrogance malgré son génie
incommensurable, comme en témoignent ses formules de politesse qui jalonnent sa
correspondance : « Je doute fort que tout autre que vous soit capable de travailler làdessus. » ou encore : « Je suis quasi-ébloui de l’abondance et de la profondeur de vos
recherches. » D’autre part, il finit souvent par « Votre très humble et très obéissant
serviteur. »
Mais il sait aussi tailler des costumes aux vaniteux : « Je vous avoue que les objections de M.
de d’Alembert ne me paraissent pas assez fortes pour renverser notre solution. Le grand
génie me paraît un peu trop enclin à détruire ce qui n’est pas construit par lui-même. » ou
encore : « M de d’Alembert témoigne partout un empressement à rendre douteux ce qui a été
soutenu par d’autres, et il ne permettra jamais qu’on fasse des objections semblables sur ses
propres travaux. »
IV PPCM.
Définition : Soient a et b deux entiers naturels non nuls. De tous les multiples
simultanés strictement positifs de a et b, le plus petit est le ppcm de a et b. On le note :
a∨b.
Procédé mnémotechnique pour ne pas confondre avec la notation pgcd :
jambes centrales du « M »)
5
(les
Evidemment, on a le pendant de (3.A) :
Proposition (3.L) : Si a = ∏ piαi et b =
pi premiers
en facteurs premiers ordonnées, alors a ∨ b =
∏
∏
pi βi , sont deux décompositions
pi premiers
pi max(αi ;βi )
pi premiers
Démonstration : just do it.
Déterminer le ppcm de 8415 et 9075 [462 825]
On en déduit une égalité bien sympathique :
Corollaire (3.M) : Si a et b sont strictement positifs :
(a ∨ b).(a ∧ b) = ab
Démonstration : On peut utiliser bourrinement (3.A) et (3.K).
Ou faire un raisonnement un peu plus fin : En posant d = a ∧ b et M = a ∨ b . D’autre part,
a=da’ et b=db’ avec a’ et b’ premiers entre eux (3.G).
Tout multiple de a et b s’écrit kda’b’. Et réciproquement, tout entier de cette forme est un
multiple de a et b. Le plus petit est bien sûr da’b’. Donc M=da’b’ et Md = da
' × db
' .
a
b
Trouver a et b sachant que le pgcd est 18 et le ppcm 108.
:
Corollaire (3.N) : Si a et b sont strictement positifs :
(α a ) ∨ (α b) = α (a ∨ b)
V R.S.A. (Rivest, Shamir et Adelman du MIT)
Le principe: On commence par choisir un nombre n tel que n = pq avec p et q deux
premiers. (Dans les protocoles RSA classiques, ces premiers ont 154 à 239 chiffres !!).
Soit e un nombre entier tel que e ∧ (( p − 1)(q − 1)) = 1
Ces nombres n et e sont les clés publiques.
1. a) Montrer qu’il existe (u,v) tels que ue + v( p − 1)(q − 1) = 1 .
b) Montrer qu’il existe d tel que 0 < d < ( p − 1)(q − 1) et ed + w( p − 1)(q − 1) = 1 .
On a alors w<0.
On appelle d la clé privée.
2. Soit x un entier (c’est le message à coder !).
a) Montrer que x ed ≡ x ( p ) et x ed ≡ x (q ) .
b) Montrer que x ed ≡ x (n) .
Ainsi, pour coder un message x, il suffit de l’élever à la puissance e et envoyer la congruence
modulo n. Pour décoder, on élève à la puissance d.
Exemple : On veut coder « BONJOUR ».
On pose p=53 et q=97. On a donc n = 53 × 97 = 5141 . La clé publique e=7 (premier avec
52 × 96 ). [il faut trouver d qui vaut ici 4279]
Il faut maintenant chiffrer le mot. Le plus simple : B=2, O=15, N=14, J=10, U=21 et
R=18. D’où BONJOUR= 2 15 14 10 15 21 18.
On pourrait appliquer le code sur chacun des sept nombres, mais cela ne servirait pas à
grand chose car le codage serait assimilable à un code de substitution facilement décryptable
avec une analyse de fréquences.
Aussi, on utilise une astuce classique : On écrit BONJOUR sous la forme :
002 151 410 152 118
6
On a 27 ≡ 128 (5141) , 1517 ≡ 800 (5141) , 4107 ≡ 3761 (5141) , 1527 ≡ 660 (5141) et
1187 ≡ 204 (5141) . Et on renvoie la séquence codée : 128,800,3761,660,204.
Essayez de décoder le message que je vous ai concocté avec le même codage:
IL Y AURA DU RSA AU PROCHAIN DS.
09 10 25 01 19 16 01 04 19 16 17 01 01 19 14 16 13 03 08 01 09 12 04 17
091 025 011 916 010 419 161 701 011 914 161 303 080 109 120 417
Codage :
2237, 2718, 4179, 204, 755, 1311, 2723, 3763, 4179, 3935, 2723, 2980, 4016, 1657, 1722, 2912.
7