Calculer un reste à l'aide de congruences
Situation
On cherche à déterminer le reste de la division euclidienne d'un très grand entier par un autre entier.
Par exemple, on recherche le reste de la division euclidienne de
par 7.
Une calculatrice ne permet pas de répondre (les nombres sont trop grands) mais il est possible de résoudre le problème en utilisant les congruences.
Méthode
Pour trouver le reste de la division euclidienne de
par
on va utiliser la caractérisation du reste à l'aide de congruence :
et le reste de la division euclidienne de
par
![syst(r==m..[n];0 <= r < |n|)](/files/formules/f_eff230d79d95cb955a8bed81d6d45c40.gif)
et on va chercher à remplacer
et
par deux autres entiers plus petits
et
tels que ![a^b==u^v..[n]](/files/formules/f_746b201e7030991738ac43b0d867765f.gif)
1.On utilise la propriété :
![a==u..[n] => a^b==u^b..[n]](/files/formules/f_cf85921018f7b33be04a2836669f29d0.gif)
pour remplacer
par un entier
plus petit, par exemple le reste de la division euclidienne de
par
![a==u..[n] => a^b==u^b..[n]](/files/formules/f_cf85921018f7b33be04a2836669f29d0.gif)
pour remplacer
par un entier
plus petit, par exemple le reste de la division euclidienne de
par
2.On calcule ensuite les puissances successives de
(
) et on cherche un entier k tel que
(un tel entier existe si
et
sont premiers entre eux - l'exemple 2 traite un cas où il n'est pas possible de trouver un tel entier)
On effectue alors la division euclidienne de
par
:

donc :
![u^b=u^(kq+v)=u^(kq)*u^(v)=[u^k]^q*u^(v)](/files/formules/f_b4d0c196b57421bac9523466f2c91050.gif)
(
) et on cherche un entier k tel que
(un tel entier existe si
et
sont premiers entre eux - l'exemple 2 traite un cas où il n'est pas possible de trouver un tel entier)On effectue alors la division euclidienne de
par
:
donc :
![u^b=u^(kq+v)=u^(kq)*u^(v)=[u^k]^q*u^(v)](/files/formules/f_b4d0c196b57421bac9523466f2c91050.gif)
3.On peut conclure :
![a^b==u^b==u^(v)..[n]](/files/formules/f_a23eba3c9ef0c7e2c06c186fa6769355.gif)
Donc
et
ont le même reste dans la division par
. Ce reste est alors facile à calculer car
et
sont "petits".
![a^b==u^b==u^(v)..[n]](/files/formules/f_a23eba3c9ef0c7e2c06c186fa6769355.gif)
Donc
et
ont le même reste dans la division par
. Ce reste est alors facile à calculer car
et
sont "petits".
Exemple 1
On recherche le reste de la division euclidienne de
par 7.
1.On effectue tout d'abord la division euclidienne de 12 345 par 7. Le quotient est 1763 et le reste est 4.
Donc
et
Donc
et
2.
![4^2=16==2..[7]](/files/formules/f_f7db8fef60fc46fcbc9b4642b8304568.gif)
![4^3=64==1..[7]](/files/formules/f_21e6b694d7f6e3a125f9ba60663c5d69.gif)
On effectue la division euclidienne de 2 000 par 3 : 2 000 = 666
3+2
Donc :
![4^2=16==2..[7]](/files/formules/f_f7db8fef60fc46fcbc9b4642b8304568.gif)
![4^3=64==1..[7]](/files/formules/f_21e6b694d7f6e3a125f9ba60663c5d69.gif)
On effectue la division euclidienne de 2 000 par 3 : 2 000 = 666
3+2Donc :
3.Le reste de la division euclidienne de
par 7 est donc le même que le reste de la division euclidienne de 16 par 7 c'est à dire 2.
par 7 est donc le même que le reste de la division euclidienne de 16 par 7 c'est à dire 2.
Exemple 2
On recherche le reste de la division euclidienne de
par 6.
1.On effectue tout d'abord la division euclidienne de 12 344 par 6. Le quotient est 2057 et le reste est 2.
Donc
et
Donc
et
2.
![2^2==4..[6]](/files/formules/f_be0041a018ec5372f700e176c187a71b.gif)
![2^3=8==2..[6]](/files/formules/f_7ce4c0b178fe8cd195122ff1bd84fd40.gif)
![2^4=16==4..[6]](/files/formules/f_98819cf056b3b4ceea775176375a3fc4.gif)
etc.
Ici on ne peut pas trouver d'entier
tel que
mais on remarque que
si k est impair et
si k est pair (ce résultat peut se démontrer facilement par récurrence; faites-le!)
Donc :
![2^(2 000)==4..[6]](/files/formules/f_3a1889d4597f050c522a7b443e71f260.gif)
Le reste de la division euclidienne de
par 6 est donc 4.
![2^2==4..[6]](/files/formules/f_be0041a018ec5372f700e176c187a71b.gif)
![2^3=8==2..[6]](/files/formules/f_7ce4c0b178fe8cd195122ff1bd84fd40.gif)
![2^4=16==4..[6]](/files/formules/f_98819cf056b3b4ceea775176375a3fc4.gif)
etc.
Ici on ne peut pas trouver d'entier
tel que
mais on remarque que
si k est impair et
si k est pair (ce résultat peut se démontrer facilement par récurrence; faites-le!)Donc :
![2^(2 000)==4..[6]](/files/formules/f_3a1889d4597f050c522a7b443e71f260.gif)
Le reste de la division euclidienne de
par 6 est donc 4.