Théorème des restes chinois - Epsilon 2000

Transcription

Théorème des restes chinois - Epsilon 2000
Théorème des restes chinois
1
Enoncé du théorème
Théorème 1.1 (des restes chinois)
Soient p ∈ N∗ , n1 , . . . , np des entiers naturels deux à deux premiers entre eux et (a1 , . . . , ap ) ∈ Zp . Alors
le système de congruences défini par : ∀k ∈ J1, pK, x ≡ ak (mod nk ) admet une unique solution modulo
p
P
N = n1 . . . np , donnée par x ≡
uk Nk ak , où pour tout k ∈ J1, pK, Nk = nNk et uk ≡ Nk−1 (mod nk ).
k=1
Preuve. Soient p ∈ N∗ , n1 , . . . , np des entiers deux à deux premiers entre eux et (a1 , . . . , ap ) ∈ Zp . Notons
(S) le système de congruences défini par :
∀k ∈ J1, pK, x ≡ ak
Pour tout k ∈ J1, pK, on note Nk l’entier
N
Nk .
(mod nk ).
Les entiers nk étant deux à deux premiers entre eux, il en résulte
que pour tout entier k ∈ J1, pK, Nk et nk sont premiers entre eux et donc Nk est inversible modulo nk . Pour
p
P
tout k ∈ J1, pK, notons uk ≡ Nk−1 (mod nk ). Soit x =
uk Nk ak . Soit i ∈ J1, pK. Si k ∈ J1, pK et k 6= i, alors
k=1
Ni ≡ 0 (mod nk ). On a alors x ≡ ui Ni ai (mod ni ). Or ui Ni ≡ 1 (mod ni ) par définition de ui donc x ≡ ai
(mod ni ). Ceci étant vrai pour tout entier i ∈ J1, pK, x est une solution du système (S). D’où l’existence.
Soit y une autre solution de (S). Alors pour tout k ∈ J1, pK, x − y ≡ 0 (mod nk ), c’est-à-dire nk divise x − y.
Les entiers nk étant deux à deux premiers entre eux, il en résulte que N divise x − y, c’est-à-dire x ≡ y
(mod N ), d’où l’unicité de la solution modulo N .
Théorème 1.2
Soient p ∈ N∗ et n1 , . . . , np des entiers naturels deux à deux premiers entre eux. Notons N = n1 . . . np .
Alors Z/N Z est isomorphe à (Z/n1 Z) × · · · × (Z/np Z).
Preuve. Pour ne pas alourdir les notations nous allons faire la démontration dans le cas de deux entiers
naturels premiers entre eux, la démonstration étant analogue pour p entiers naturels deux à deux premiers
entre eux.
Soient a et b deux entiers premiers entre eux. Si x désigne un entier, on notera cla (x) la classe de x modulo a,
clb (x) la classe de x modulo b et clN (x) la classe de x modulo N = ab. Soit f l’application définie sur Z/N Z,
à valeurs dans (Z/aZ) × (Z/bZ) définie par clN (x) 7→ (cla (x); clb (x)). Vérifions que f est bien définie. Soient
x et y tels que clN (x) = clN (y). N divise alors x − y, c’est-à-dire ab divise x − y. Par suite, a divise x − y et
b divise x − y. On a donc cla (x) = cla (y) et clb (x) = clb (y) et donc f (clN (x)) = f (clN (y)).
Montrons maintenant que f est linéaire. Soient x, y ∈ Z.
Théorème des restes chinois
f (clN (x) + clN (y)) = f (clN (x + y))
(définition de l’addition dans Z/N Z)
= (cla (x + y); clb (x + y))
(définition de la fonction f )
= (cla (x) + cla (y); clb (x) + clb (y))
(définition de l’addition dans Z/aZ et Z/bZ)
= (cla (x); clb (x)) + (cla (y); clb (y))
(définition de l’addition sur Z/aZ × Z/bZ)
= f (clN (x)) + f (clN (y)).
De même, on montre que f (clN (x)) = f (clN (x))f (clN (y)). De plus, f (clN (1)) = (cla (1); clb (1)) et (cla (1); clb (1))
est l’unité de Z/aZ × Z/bZ. f est donc un morphisme d’anneaux.
Montrons que f est injective. Soit x ∈ Z tel que f (clN (x)) = (cla (0); clb (0)). Alors cla (x) = cla (0) donc a
divise x. De même, clb (x) = clb (0) donc b divise x. a et b étant premiers entre eux, il en résulte que ab divise
x, c’est-à-dire clN (x) = clN (0). f est donc injective.
Pour terminer, il reste à montrer que f est surjective. Soit (cla (α); clb (β)) ∈ Z/aZ × Z/bZ. On cherche x ∈ Z
tel que f (clN (x)) = (cla (α); clb (β)), c’est-à-dire x tel que x ≡ α (mod a) et x ≡ β (mod b). D’après le
théorème des restes chinois, on sait qu’un tel x existe. f est donc surjective.
Remarque 1.3
On aurait pu conlure également en disant que f est injective et que l’ensemble de départ et l’ensemble
d’arrivée ont le même cardinal donc f est bijective.
2
Exemples de résolution d’un système de congruences
Exemple 2.1
Résoudre dans Z le système suivant :

 x ≡ 4 (mod 5)


x ≡ 3 (mod 6)



x ≡ 2 (mod 7).
5 ∧ 6 ∧ 7 = 1. On applique le théorème des restes chinois, avec n1 = 5, n2 = 6, n3 = 7, N = 210, a1 = 4, a2 = 3
et a3 = 2. On sait que ce système admet une unique solution modulo 210, donnée par x = u1 a1 N1 + u2 a2 N2 +
u3 a3 N3 , où N1 =
N
n1
=
210
5
= 42, N2 =
N
n2
=
210
6
= 35 et N3 =
N
n3
=
210
7
= 30, et u1 , u2 , u3 sont les inverses
respectifs de N1 , N2 , N3 modulo n1 , n2 , n3 .
42∧5 = 1. D’après le théorème de Bézout, il existe (u, v) ∈ Z2 tel que 42u+5v = 1. L’algorithme d’Euclide
donne :
42 = 5 × 8 + 2
5=2×2+1
2=1×2+0
En remontant cet algorithme, on obtient successivement :
1=5−2×2
1 = 5 − (42 − 5 × 8) × 2
1 = 5 − 42 × 2 + 5 × 16
42 × (−2) + 5 × 17 = 1.
On en déduit que u1 = −2.
Un raisonnement analogue conduit à u2 = −1 et u3 = −3.
S. Duchet - http://epsilon.2000.free.fr
2/3
Théorème des restes chinois
Par suite, x ≡ −2 × 4 × 42 + (−1) × 3 × 35 + (−3) × 30 × 2 (mod 210), c’est-à-dire x ≡ 9 (mod 210) (après
simplifications).
Exemple 2.2
Résoudre
dans Z le système suivant :

 x ≡ 3 (mod 4)
 x ≡ 5 (mod 6).
4 et 6 ne sont pas premiers entre eux. Soit x une solution du système. Alors x ≡ 2 (mod 3), de sorte qu’on
peut
 résoudre le système :
 x ≡ 3 (mod 4)
 x ≡ 2 (mod 3).
4 et 3 sont premiers entre eux donc on applique le théorème chinois pour résoudre ce système. On vérifie
ensuite que les solutions trouvées sont solutions du système de départ.
S. Duchet - http://epsilon.2000.free.fr
3/3