Beruflich Dokumente
Kultur Dokumente
Algorithme d’Euclide
Arithmétique modulaire
Guénaël Renault
SALSA - LIP6/UPMC
25 février 2008
Part I
Bibliographie
Exemples :
Propriété de partitionnement
Soit E un ensemble et R une relation d’équivalence sur E. L’ensemble
des classes d’équivalence pour R forme une partition de E.
Théorème de Lagrange
Soit G un groupe fini et H un sous-groupe de G. Alors le cardinal de H
est un diviseur du cardinal de G. (Le cardinal d’un groupe est aussi
appelé ordre.)
Démonstration
Considérer la relation d’équivalence xRH y ⇔ xy −1 ∈ H
On partitionne le groupe G selon les classes de RH
On établie une application bijective entre les classes
d’équivalence.
Pour le dernier point, il suffit de voir que la classe de x est donnée par
Hx et que la bijection de G dans G définie par y 7→ yx −1 envoie les
éléments de H, la classe de e, sur les éléments de la classe de x.
UPMC - Licence Math/Info - AAEA - 2007/08 10/31
Relation d’équivalence : application au théorème de
Lagrange
Théorème de Lagrange
Soit G un groupe fini et H un sous-groupe de G. Alors le cardinal de H
est un diviseur du cardinal de G. (Le cardinal d’un groupe est aussi
appelé ordre.)
Corollaire
Tout groupe G d’ordre un nombre premier est cyclique, c’est-à-dire
engendré par un unique élément g :
G = hgi := {g k : k ∈ N}
PGCD
Décomposition unique
Pour a ∈ A non nul on a
Y
a=u pvp (a)
p∈P
Décomposition unique
Pour a ∈ A non nul on a
Y
a=u pvp (a)
p∈P
453750 = 226875 × 2
Décomposition unique
Pour a ∈ A non nul on a
Y
a=u pvp (a)
p∈P
453750 = 45375 × 5 × 2
Décomposition unique
Pour a ∈ A non nul on a
Y
a=u pvp (a)
p∈P
453750 = 9075 × 5 × 5 × 2
Décomposition unique
Pour a ∈ A non nul on a
Y
a=u pvp (a)
p∈P
453750 = 1815 × 5 × 5 × 5 × 2
Décomposition unique
Pour a ∈ A non nul on a
Y
a=u pvp (a)
p∈P
453750 = 363 × 5 × 5 × 5 × 5 × 2
Décomposition unique
Pour a ∈ A non nul on a
Y
a=u pvp (a)
p∈P
453750 = 121 × 3 × 5 × 5 × 5 × 5 × 2
Décomposition unique
Pour a ∈ A non nul on a
Y
a=u pvp (a)
p∈P
453750 = 11 × 11 × 3 × 5 × 5 × 5 × 5 × 2
Décomposition unique
Pour a ∈ A non nul on a
Y
a=u pvp (a)
p∈P
453750 = 112 × 3 × 54 × 2
Y
a=u pvp (a)
p∈P
Définition
A tout élément p ∈ P d’un anneau factoriel A est associé une fonction
vp : A 7→ N ∪ {∞} définie comme suit : Pour a 6= 0 l’entier vp (a) est
égal à la puissance de p dans la décomposition de a si p divise a et
pour a = 0 on aura par convention vp (a) = ∞. L’entier vp (a) est la
valuation p-adic de a.
453750 = 11 × 11 × 3 × 5 × 5 × 5 × 5 × 2
v2 (a) = 1
v3 (a) = 1
v5 (a) = 4
v11 (a) = 2
vp (a) = 0 pour tout autre premier p
⇒ vp (0) = ∞ a un sens
UPMC - Licence Math/Info - AAEA - 2007/08 15/31
Valuation p-adic : propriétés
c | ab
Définition
Le plus grand diviseur commun de a et b est l’élément d définit par
Y
d := pmin(vp (a)vp (b))
p∈P
et est noté pgcd(a, b).
Définition
Le plus grand diviseur commun de a et b est l’élément d définit par
Y
d := pmin(vp (a)vp (b))
p∈P
et est noté pgcd(a, b).
pgcd(ab) = 112
Définition
Le plus grand diviseur commun de a et b est l’élément d définit par
Y
d := pmin(vp (a)vp (b))
p∈P
et est noté pgcd(a, b).
pgcd(ac) = a
Définition
Le plus grand diviseur commun de a et b est l’élément d définit par
Y
d := pmin(vp (a)vp (b))
p∈P
et est noté pgcd(a, b).
pgcd(bc) = 112 × 3
Caractérisation
d = pgcd(a, b) si et seulement si l’assertion suivante est vérifiée :
14
2 pgcd
Algorithme d’Euclide
Le dernier reste non nul rn est égal au pgcd de a et b.
UPMC - Licence Math/Info - AAEA - 2007/08 21/31
Algorithme d’Euclide
Ce schéma se traduit immédiatement en C pour les entiers.
#include<s t d i o . h>
#include<math . h>
i n t main ( ) {
i n t a , b , tmp , r0 , r 1 ;
p r i n t f ( ” E n t r e r deux e n t i e r s p o s i t i f s a > b > 0 : ” ) ;
s c a n f ( ”%d ” ,&a ) ;
s c a n f ( ”%d ” ,&b ) ;
r 0 =a ;
r 1 =b ;
while ( r 1 ! = 0 ) {
tmp= r 1 ;
r1=r0 % r1 ;
r 0 =tmp ;
}
p r i n t f ( ” \nLe pgcd de %d e t %d e s t %d\n ” , a , b , r 0 ) ;
return 0;
}
Relation de Bézout
Soit a et b deux éléments d’un anneau euclidien A. Il existe deux
élément u et v tel que
pgcd(a, b) = ua + vb.
r2 = a − q1 b
⇒Représentation matricielle :
u, v , ri+1 −qi 1 u, v , ri
=
u, v , ri 1 0 u, v , ri−1
30003x + 2345y = 15
30003x + 2345y = 15
Calcul pratique du pgcd étendu (à la main):
i ri−1 ri qi ri+1 ui+1 vi+1
1 30003 2345 12 1863 1 -12
2 2345 1863 ? ? ? ?
3 ? ? ? ? ? ?
.. .. .. .. .. .. ..
. . . . . . .
30003x + 2345y = 15
Calcul pratique du pgcd étendu (à la main):
i ri−1 ri qi ri+1 ui+1 vi+1
1 30003 2345 12 1863 1 -12
2 2345 1863 1 482 -1 13
3 1863 482 3 417 4 -51
4 482 417 1 65 -5 64
5 417 65 6 27 34 -435
6 65 27 2 11 -73 934
7 27 11 2 5 180 -2303
8 11 5 2 1 -433 5540
9 5 1 5 0 2345 -30003
UPMC - Licence Math/Info - AAEA - 2007/08 27/31
Algorithme Euclide étendu : mise en pratique !
Comment trouver les solutions (x, y ) (si elles existent) de l’équation
diophantienne ?
30003x + 2345y = 15
Calcul pratique du pgcd étendu (à la main):
i ri−1 ri qi ri+1 ui+1 vi+1
1 30003 2345 12 1863 1 -12
.. .. .. .. .. ..
. . . . . . 2303
8 11 5 2 1 -433 5540
9 5 1 5 0 2345 -30003
30003x + 2345y = 15
13 = 1×8+5
8 = 1×5+3
5 = 1×3+2
3 = 1×2+1
2 = 2×1+0
⇒ Le nombre de calcul est maximal car les quotient sont tous (sauf le
dernier) réduit à 1.
3 2
Définition
F0 = 0
F1 = 1
Fn+2 = Fn+1 + Fn
Propriétés
√ √
(φn −φ̂n ) 1+ 5 1− 5
Fn = √
5
avec φ = 2 et φ̂ = 2 .
Le calcul de pgcd(Fn+2 , Fn+1 ) par l’algorithme d’Euclide demande
exactement n itérations.
De plus pgcd(Fn+2 , Fn+1 ) = 1
Théorème
Soit a > b > 0. Si le calcul pgcd(a, b) demande n itérations alors