Arithmétique modulaire
Guide
La première partie de ce document est une introduction de l'anneau
à partir des congruences.
La deuxième partie met l'accent sur quelques résolutions de problèmes
où l'utilisation des congruences est fondamentale ou simplement pratique.
Ce document n'a aucune prétention à être complet ni même achevé. On espère qu'il
peut être utile ainsi.
Définition et opérations algébriques
Définition
Définition
Une
classe de congruence modulo
n
est un sous-ensemble de
de la forme
avec
a un entier.
L'ensemble des classes de congruences modulo
n est noté
. On note aussi
.
Un entier
b est appelé un
représentant de la
classe
si
b et
a sont congrus modulo
n.
Exemple
-
Les classes
et
sont égales.
-
Les classes
et
sont différentes.
-
L'entier
109 est un représentant de la classe
.
On choisit en général les représentants entre 0 et
n-1,
ce qui est toujours
possible.
Le reste de la division euclidienne de
a par
n est
bien un représentant de
a mod
n qui est compris entre 0 et
n-1.
Mais il est quelquefois commode de prendre les représentants entre
et
et même de les prendre quelconques.
Exercice
Classes
Exemple pour plus tard
Il est quand même
plus facile de calculer la puissance
k-ième de la classe
en utilisant
le représentant de cette classe qu'est -1. Ainsi :
.
Opérations
Définition.
On définit les
opérations algébriques d'addition,
soustraction, multiplication par
Mais nous écrirons souvent
a + b mod
n, par exemple
,
et même
,
.
Théorème.
est un anneau commutatif.
Exercices
-
Opérations
,
-
Carrés
-
Somme et produit
Table d'addition
Voici la table d'addition dans
:
+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |
---|
0 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |
---|
1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 0 |
---|
2 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 0 | 1 |
---|
3 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 0 | 1 | 2 |
---|
4 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 0 | 1 | 2 | 3 |
---|
5 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 0 | 1 | 2 | 3 | 4 |
---|
6 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 0 | 1 | 2 | 3 | 4 | 5 |
---|
7 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 0 | 1 | 2 | 3 | 4 | 5 | 6 |
---|
8 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
---|
9 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
---|
10 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---|
11 | 11 | 12 | 13 | 14 | 15 | 16 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|
12 | 12 | 13 | 14 | 15 | 16 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
---|
13 | 13 | 14 | 15 | 16 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
---|
14 | 14 | 15 | 16 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
---|
15 | 15 | 16 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
---|
16 | 16 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
---|
Table de multiplication
Voici la table de multiplication dans
:
| 0 | 1 | 2 | 3 | 4 |
---|
0 | 0 | 0 | 0 | 0 | 0 |
---|
1 | 0 | 1 | 2 | 3 | 4 |
---|
2 | 0 | 2 | 4 | 1 | 3 |
---|
3 | 0 | 3 | 1 | 4 | 2 |
---|
4 | 0 | 4 | 3 | 2 | 1 |
---|
Les zéros ont été mis en rouge. Pouvez-vous comparer le nombre de zéros avec
le nombre de facteurs premiers de
5?
Inverses et diviseurs de zéro
Existence d'un inverse pour la multiplication
Théorème.
Soit un entier
a premier à
n.
Alors
a est inversible dans
, c'est-à-dire qu'il existe
b tel que
.
En fait, il s'agit d'une
équivalence :
Théorème.
Soit un entier
a. Alors
a est inversible dans
si et seulement si
a est premier à
n.
La démonstration donne aussi un moyen de
calcul de cet inverse.
L'entier
a est premier avec
n si et seulement s'il existe
u et
v dans
tels que
u a + v n = 1
Donc,
- si
a est premier avec
n, il existe un entier
u tel que
et
a est inversible dans
.
- Si
a est inversible dans
, il existe un entier
u tel que
.
Par définition de la congruence, cela signifie qu'il existe un entier
v tel que
u a - 1 = v n et on a
u a + u v = 1, donc
a et
n sont premiers entre eux.
Exemple
Exercices
-
Inverse :
1
2
3
- Division :
I
II
III
Exemples
Exemple
Lorsque
a n'a pas d'inverse, on voit qu'il est alors
diviseur de zéro,
c'est-à-dire que
pour un entier
b.
Exemple
Pour
n = 9
a=0 |
| a=5 |
|
a=1 |
|
a=6 |
|
a=2 |
|
a=7 |
|
a=3 |
| a=8 |
|
a=4 |
|
Cas où n est premier
Théorème.
Si
n = p est un nombre premier, tout nombre non nul dans
a un inverse.
Démonstration.
Comme
p est premier, il est premier avec tout nombre qu'il ne divise pas,
c'est-à-dire avec tout nombre dont la classe de congruence modulo
p n'est pas nul.
On applique alors le
théorème:
Théorème.
Soit un entier
a. Alors
a est inversible dans
si et seulement si
a est premier à
n.
Exercices
-
Puissance
-
Calcul de puissances :
I
II
Diviseurs de 0
Lorsque
a n'a pas d'inverse, on voit qu'il est alors
diviseur de zéro, c'est-à-dire que
pour un entier
b.
Proposition.
Dans
,
a est un diviseur de zéro si et seulement si
a
n'est pas premier avec
n.
Démonstration.
-
Si
a est diviseur de zéro, il n'est pas inversible donc d'après le
théorème
Théorème.
Soit un entier
a. Alors
a est inversible dans
si et seulement si
a est premier à
n.
,
il n'est pas premier avec
n.
-
Si
a n'est pas premier avec
n, soit
d le pgcd de
a et de
n.
Soit
b le quotient de
n par
d; on a
a = d a',
n = d b et
ab = d a'b = n a'.
Donc
a b = 0 mod
n. La classe de
b modulo
n est non nulle, car
b est un diviseur strict de
n.
Exemple
Pour
n = 42
a = 0 |
|
a = 21 |
|
a = 1 |
|
a = 22 |
|
a = 2 |
|
a = 23 |
|
a = 3 |
|
a = 24 |
|
a = 4 |
|
a = 25 |
|
a = 5 |
|
a = 26 |
|
a = 6 |
|
a = 27 |
|
a = 7 |
|
a = 28 |
|
a = 8 |
|
a = 29 |
|
a = 9 |
|
a = 30 |
|
a = 10 |
|
a = 31 |
|
a = 11 |
|
a = 32 |
|
a = 12 |
|
a = 33 |
|
a = 13 |
|
a = 34 |
|
a = 14 |
|
a = 35 |
|
a = 15 |
|
a = 36 |
|
a = 16 |
|
a = 37 |
|
a = 17 |
|
a = 38 |
|
a = 18 |
|
a = 39 |
|
a = 19 |
|
a = 40 |
|
a = 20 |
|
a = 41 |
|
Exercices
Diviseurs de zéro
1
2
3
Résolution de quelques problèmes
Résolution de l'équation linéaire
La question est de trouver tous les entiers
x vérifiant l'équation
.
On peut adopter plusieurs points de vue selon qu'on est à l'aise
ou non dans l'anneau
.
Première étape :
L'équation
a une solution
si et seulement si le pgcd
d de
a et de
n divise
b.
Dans ce cas, on divise l'équation par
d (y compris
n)
et on est ramené au cas où
a et
n sont premiers entre eux.
Deuxième étape :
-
Première méthode : travailler dans
il s'agit de trouver les entiers
x tels qu'il existe
un entier
k vérifiant
a x = b + k n
ou encore
a x - k n = b
On s'est donc ramené à résoudre une équation de Bezout. Elle a une solution
car on a supposé que
a et
n sont premiers entre eux.
-
Deuxième méthode : travailler dans
Comme
a et
n sont premiers entre eux, il existe
u et
v tel que
u a +
v n = 1. En particulier, il existe un entier
u tel que
. On multiplie l'équation
par
u,
ce qui donne
et donc comme
et on a résolu le problème.
En fait il s'agit de la démonstration de ce que
a est inversible dans
et que si
u a + v n = 1,
est l'inverse de
dans
.
L'avantage sur la première méthode : on n'a pas besoin de demander
l'existence de
k tel que ... Il est caché dans
le
: on se souvient que
signifie en fait
.
Exercice rapide
Équation linéaire modulaire
Exercice
Équation linéaire
Petit théorème de Fermat
Théorème.
Soit
p un nombre premier impair. Alors pour tout entier
n,
.
On en déduit le
théorème de Fermat :
Théorème.
Soit
p un nombre premier impair. Alors pour tout entier
n premier à
p,
.
Théorème.
Soit
p un nombre premier impair. Soit
n un entier premier à
p. Alors,
-
il existe un plus petit entier
r > 0 tel que
,
cet entier est un diviseur de
p - 1 ;
- les entiers
s vérifiant
sont exactement les multiples de
r.
Par le petit théorème de Fermat, l'ensemble des entiers
r
strictement positifs vérifiant
est non vide
car il contient
p - 1. Il admet donc un plus petit élément. Notons-le
r0.
Faisons la division euclidienne de
p - 1 par
r0 :
p - 1 =
q r0 +
s avec
s entier positif
<
r0. On a
d'où
Donc, par minimalité de
r0,
s est soit plus grand que
r0, soit nul.
Donc
s est nul, et
r0 divise
p - 1.
Résolution d'équations du type
Il faut quand même préciser qui est l'inconnue ! Cela peut être
a ou
b.
On prend
n =
p un nombre premier.
-
Les équations du type
peuvent être traitées en utilisant
le
Théorème de Fermat
Théorème.
Soit
p un nombre premier impair. Alors pour tout entier
n premier à
p,
.
et ses conséquences :
Les solutions de cette équation sont les multiples d'un diviseur de
p - 1 à trouver.
On prend donc tous les diviseurs de
p - 1 et on les essaye !
(on peut quand même réfléchir au moyen de ne pas faire trop de calculs :
si
a10 n'est pas congru à 1 modulo
p, pas la peine d'essayer
a2 ou
a5 ).
-
Les équations du type
avec
a premier
à
p-1 et
b premier à
p : on va utiliser là encore le fait que
. Pour cela, comme
a et
p - 1
sont premiers entre eux, on calcule l'identité de Bezout associée :
u a + v(p - 1) = 1
On a
et on a résolu l'équation.
Exercice
Équation multiplicative
Exercice
Équation multiplicative II
Équation diophantienne linéaire à 3 inconnues
Soient
a,
b,
c et
d quatre entiers. On désire résoudre l'équation
a x + b y + c z = d
en entiers. Les étapes de résolution peuvent être les suivantes :
-
Étape 1: se ramener au cas où
(a, b, c) sont premiers entre eux :
Explication
On commence par calculer le pgcd
pgcd(a , b, c)
des entiers
(a , b , c).
L'équation a une solution si et seulement si
d divise
pgcd(a, b, c).
Dans ce cas, on peut diviser tous les coefficients par cet entier,
ce qui nous ramène au cas où ce pgcd est 1.
-
Étape 2 :Lorsque
a,
b,
c sont premiers entre eux, on se ramène
au cas où deux des coefficients sont premiers entre eux :
Explication
Soit
r le pgcd de
a et
b . On pose
a =
r a1,
b =
r b1 avec
a1 et
b1 premiers entre eux.
Si
(
x ,
y ,
z) est une solution de l'équation, on a
cz
.
Comme
r et
c sont premiers entre eux, il existe un entier
u tel que
et la congruence est équivalente à
Ainsi, si on choisit
u1 un représentant de
, on a
et
z = u1 + r z1
avec
.
On pose
d -
u1 c =
d1 r avec
.
L'équation devient
r a1 x + r b1 y + r c z1 = d - u1 c
c'est-à-dire
a1 x + b1 y + c z1 = d1
avec maintenant
a1 et
b1 premiers entre eux.
-
Étape 3 :
Supposons
a et
b premiers entre eux. On cherche (et trouve) une solution
particulière avec
z = 0, ce qui revient à résoudre l'équation
a x + b y = d :
Explication
Pour cela, on calcule des entiers
u et
v
tels que
a u +
b v = 1 par l'algorithme d'Euclide.
Une solution particulière est alors donnée par
x0 = u d, y0 = v d, z0 = 0.
-
Étape 4 : Supposons
a et
b premiers entre eux.
On cherche les solutions de l'équation
a x + b y + c z = 0 .
Explication
L'équation est équivalente à
a x + b y = -c z
La discussion dans le cas de deux variables (en considérant
z comme fixé)
implique que si
u et
v sont des entiers tels que
a u +
b v = 1,
x et
y s'écrivent sous la forme
x = -u c z + b j, y = -v c z - a j
c'est-à-dire matriciellement
-
Étape 5 :Supposons
a et
b premiers entre eux et
a u + b v = 1. La solution générale de l'équation
a x + b y + c z = d est donnée
de manière matricielle par
avec
j et
k appartenant à
.
Une équation diophantienne non linéaire sans solution
On désire montrer que
l'équation
x2 +
y3 = 7 n'a pas de solutions entières.
- Soit
p un
nombre premier impair. Montrer que si l'équation
a une solution, alors
p est congru à
.
Solution
Ici,
p est impair, donc
p - 1 est divisible par 2.
Si -1
a2 mod
p, alors
.
La dernière congruence est le petit
théorème de Fermat.
Théorème.
Soit
p un nombre premier impair. Alors pour tout entier
n premier à
p,
.
Donc
est pair,
ce qui signifie que
.
-
Supposons qu'il existe des entiers
x et
y tels
que
x2 + y3 = 7.
-
Montrer que
y est impair.
Solution
Si
y est pair,
, ce qui est impossible
car tout carré est pair ou congru à
.
-
Montrer que le produit d'entiers congrus à
est
congru à
.
Solution
Si les nombres
a1, ... ,
an sont congrus à
, on a
.
-
Factoriser
8 - y3 sous la forme
(2 - y) B. Montrer qu'il existe
un nombre premier
p congru à
divisant
B. En déduire qu'il
existe un nombre premier congru à
et divisant
x2 + 1.
Solution
On a
8 -
y3 = (2 -
y)(4 + 2
y +
y2),
donc
B = 4 + 2
y +
y2. Comme
y est impair,
,
,
donc
B est congru à
. D'après la question précédente,
il existe un nombre premier
p divisant
B et congru à
. Comme il divise
B, il divise aussi
(2 -
y)
B = 8 -
y3 =
x2 + 1.
- Conclure.
Solution
Soit des entiers
x et
y tels que
x2 +
y3 = 7. On a trouvé un nombre premier
p divisant
y3 - 8
et congru à 3 mod 4. Pour ce nombre premier,
.
Donc
-1 est un carré modulo
p, ce qui est absurde, car
p est congru à
.
Pour aller plus loin
Thèmes
- Exercices sur les systèmes linéaires modulaires
- Exercices sur les racines de l'unité dans
- Exercice sur la racine d'un polynôme :
Relèvement
- Exercices sur l'authentification :
Authentification
- Exercices sur l'identité de Bezout
- Exercices sur les critères de divisibilité
-
Algorithme d'exponentiation
-
Nombre de multiplications
-
Exercice sur l'exponentiation
- Exercices sur le logarithme discret
-
Log discret I
-
Log discret I
-
Factorisation par la méthode de Pollard
- Exercices sur les méthodes de cryptologie
-
RSA I
-
RSA analyse
-
RSA création
-
RSA décryptage
-
Diffie-Hellman I
-
Diffie-Hellman II