Aller au contenu principal
Terminale⏱ 3 semaines

Divisibilité, division euclidienne et congruences

Ce que tu vas apprendre

  • Utiliser la définition de la divisibilité dans ℤ et ses propriétés (transitivité, combinaisons linéaires)
  • Effectuer une division euclidienne, y compris d'un entier négatif, et justifier l'unicité
  • Définir et manipuler les congruences modulo n
  • Utiliser la compatibilité des congruences avec l'addition, la multiplication et les puissances
  • Établir et utiliser des critères de divisibilité, calculer des restes de grandes puissances
  • Résoudre une congruence ax ≡ b [n] par une table de congruences
Notions clésa divise bcombinaison linéairedivision euclidienne a = bq + r, 0 ≤ r < ba ≡ b [n]compatibilité avec + et ×table de congruences

Ce que tu sais déjà. En Seconde, tu as manipulé multiples, diviseurs et parité (Seconde — Multiples, diviseurs et parité) ; en Terminale, tu sais raisonner par récurrence (Terminale — Raisonnement par récurrence). L’arithmétique des maths expertes étudie les entiers relatifs pour eux-mêmes : c’est la base de la cryptographie, des codes de contrôle (ISBN, IBAN, numéro de Sécurité sociale) et de nombreuses énigmes.

1. Divisibilité dans les entiers relatifs

Définition. Soit aa et bb deux entiers relatifs. On dit que aa divise bb, et on note a∣ba \mid b, s’il existe un entier relatif kk tel que b=kab = ka. On dit aussi que bb est un multiple de aa, ou que aa est un diviseur de bb.

Exemples. −6∣42-6 \mid 42 car 42=(−7)×(−6)42 = (-7) \times (-6). Tout entier divise 00 (0=0×a0 = 0 \times a). 11 et −1-1 divisent tout entier. Les diviseurs de 1212 dans Z\mathbb{Z} sont ±1\pm 1, ±2\pm 2, ±3\pm 3, ±4\pm 4, ±6\pm 6, ±12\pm 12.

Propriétés. Soit aa, bb, cc des entiers relatifs.

  1. Transitivité : si a∣ba \mid b et b∣cb \mid c, alors a∣ca \mid c.
  2. Combinaisons linéaires : si a∣ba \mid b et a∣ca \mid c, alors pour tous entiers uu et vv, a∣bu+cva \mid bu + cv.
  3. Si a∣ba \mid b avec b≠0b \neq 0, alors ∣a∣⩽∣b∣|a| \leqslant |b|.
🧠 Démonstration — combinaisons linéaires

Si a∣ba \mid b et a∣ca \mid c, il existe des entiers kk et k′k' tels que b=kab = ka et c=k′ac = k'a. Alors bu+cv=kau+k′av=(ku+k′v)a,bu + cv = kau + k'av = (ku + k'v)a, et ku+k′vku + k'v est un entier : aa divise bu+cvbu + cv.

📋 Méthode — Utiliser une combinaison linéaire pour trouver n

Problème : trouver les entiers nn tels que n+2n + 2 divise 3n+113n + 11.

n+2n + 2 divise n+2n + 2, donc il divise 3(n+2)=3n+63(n + 2) = 3n + 6 ; s’il divise aussi 3n+113n + 11, il divise la différence (3n+11)−(3n+6)=5(3n + 11) - (3n + 6) = 5. Donc n+2∈{−5 ; −1 ; 1 ; 5}n + 2 \in \{-5\,;\,-1\,;\,1\,;\,5\}, soit n∈{−7 ; −3 ; −1 ; 3}n \in \{-7\,;\,-3\,;\,-1\,;\,3\}. Réciproquement, on vérifie que chacune de ces valeurs convient (par exemple, pour n=3n = 3 : 5∣205 \mid 20).

→ S’entraîner : Exercice 1 · Exercice 2

2. Division euclidienne

Théorème (division euclidienne). Soit a∈Za \in \mathbb{Z} et b∈N∗b \in \mathbb{N}^*. Il existe un unique couple d’entiers (q ; r)(q\,;\,r) tel que a=bq+ret0⩽r<b.a = bq + r \qquad\text{et}\qquad 0 \leqslant r < b. qq est le quotient et rr le reste de la division euclidienne de aa par bb.

AAAWgmp1bWIAAAAeanVtZGMycGEAEQAQgAAAqgA4m3EDYzJwYQAAABZcanVtYgAAAEdqdW1kYzJtYQARABCAAACqADibcQN1cm46YzJwYTo2Nzg5MTliZS0yMDdkLTQ0NzktODg4Mi1lZGUzZWQ1YmE3N2YAAAADl2p1bWIAAAApanVtZGMyYXMAEQAQgAAAqgA4m3EDYzJwYS5hc3NlcnRpb25zAAAAALxqdW1iAAAARGp1bWRjYm9yABEAEIAAAKoAOJtxE2MycGEuaW5ncmVkaWVudC52MwAAAAAYYzJzaJvnKvJxR3Ob5KZztfU//1cAAABwY2JvcqNpZGM6Zm9ybWF0bWltYWdlL3N2Zyt4bWxqaW5zdGFuY2VJRHgseG1wOmlpZDo5MzdjZTM1ZS0zNjc3LTQyMWUtOWNjYy00MjQxMTdhNjUyNjBscmVsYXRpb25zaGlwaHBhcmVudE9mAAAB4mp1bWIAAABBanVtZGNib3IAEQAQgAAAqgA4m3ETYzJwYS5hY3Rpb25zLnYyAAAAABhjMnNohVNgB2iRo2JISaIFJBtlIgAAAZljYm9yomdhY3Rpb25zgqJmYWN0aW9ua2MycGEub3BlbmVkanBhcmFtZXRlcnOha2luZ3JlZGllbnRzgaJjdXJseC1zZWxmI2p1bWJmPWMycGEuYXNzZXJ0aW9ucy9jMnBhLmluZ3JlZGllbnQudjNkaGFzaFggr9XeId9vjhqzYBJa+x4IkGWd0sOpci2aPVrG6wPsQDKkZmFjdGlvbngdY29tLmFudGhyb3BpYy5jbGF1ZGUucHJvdmlkZWRqcGFyYW1ldGVyc6F4H2NvbS5hbnRocm9waWMub3JpZ2luLWNvbmZpZGVuY2VndW5rbm93bmtkZXNjcmlwdGlvbnhmQ2xhdWRlIHByb3ZpZGVkIHRoaXMgZmlsZSBhdCB0aGUgcmVxdWVzdCBvZiBhIHVzZXIgYW5kIG1heSBoYXZlIGNyZWF0ZWQgb3IgbW9kaWZpZWQgdGhlIGZpbGUgY29udGVudHMubXNvZnR3YXJlQWdlbnShZG5hbWVmQ2xhdWRlcmFsbEFjdGlvbnNJbmNsdWRlZPUAAADIanVtYgAAAEBqdW1kY2JvcgARABCAAACqADibcRNjMnBhLmhhc2guZGF0YQAAAAAYYzJzaF7gHtECYRTeyHaPqzHAVbcAAACAY2JvcqVjYWxnZnNoYTI1NmNwYWRNAAAAAAAAAAAAAAAAAGRoYXNoWCAZg9YLZLXsn/WIw5k4NlcuPrECRkeFAGWQt20S5qdfGWRuYW1lbmp1bWJmIG1hbmlmZXN0amV4Y2x1c2lvbnOBomVzdGFydBh9Zmxlbmd0aBkeBAAAAj5qdW1iAAAAJ2p1bWRjMmNsABEAEIAAAKoAOJtxA2MycGEuY2xhaW0udjIAAAACD2Nib3KlY2FsZ2ZzaGEyNTZpc2lnbmF0dXJleE1zZWxmI2p1bWJmPS9jMnBhL3VybjpjMnBhOjY3ODkxOWJlLTIwN2QtNDQ3OS04ODgyLWVkZTNlZDViYTc3Zi9jMnBhLnNpZ25hdHVyZWppbnN0YW5jZUlEeCx4bXA6aWlkOjdmOTA2OWNjLWE5NmItNDMyZS1iNWYxLTJlMmJlZWUzMTA1ZHJjcmVhdGVkX2Fzc2VydGlvbnODomN1cmx4LXNlbGYjanVtYmY9YzJwYS5hc3NlcnRpb25zL2MycGEuaW5ncmVkaWVudC52M2RoYXNoWCCv1d4h32+OGrNgElr7HgiQZZ3Sw6lyLZo9WsbrA+xAMqJjdXJseCpzZWxmI2p1bWJmPWMycGEuYXNzZXJ0aW9ucy9jMnBhLmFjdGlvbnMudjJkaGFzaFgggai+AyQS4m0FJ8gxPTQbSoWmvnlSTWU1rBA88FyLkRaiY3VybHgpc2VsZiNqdW1iZj1jMnBhLmFzc2VydGlvbnMvYzJwYS5oYXNoLmRhdGFkaGFzaFgg6PpfKQjZl+cdK9GlCGTVe2nxVvp/rOT7AUWshK0+FHd0Y2xhaW1fZ2VuZXJhdG9yX2luZm+jZG5hbWVvQW50aHJvcGljIEZpbGVzZ3ZlcnNpb25lMS4wLjBrc3BlY1ZlcnNpb25lMi40LjAAABA4anVtYgAAAChqdW1kYzJjcwARABCAAACqADibcQNjMnBhLnNpZ25hdHVyZQAAABAIY2JvctKEWQISogEmGCFZAgowggIGMIIBjaADAgECAhRA5aAK7sI50L64g/oGQgU9Z1UTADAKBggqhkjOPQQDAzBJMRcwFQYDVQQKEw5BbnRocm9waWMsIFBCQzEuMCwGA1UEAxMlQW50aHJvcGljIENvbnRlbnQgQ3JlZGVudGlhbHMgUm9vdCBDQTAeFw0yNjA4MDcxODQzNTZaFw0yODA4MDYxOTQzNTZaMEQxFzAVBgNVBAoTDkFudGhyb3BpYywgUEJDMSkwJwYDVQQDEyBBbnRocm9waWMgQ2xhdWRlIENvbnRlbnQgU2lnbmluZzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABJh6CmvLUBgFFNU0vUKlOVtE6djd17L5SuwX0LemFisBM3dkd/3cyjxFA3Qo5S46fX0/ihY0VZ7mfb9KF703t5OjWDBWMA4GA1UdDwEB/wQEAwIHgDAVBgNVHSUEDjAMBgorBgEEAYPoXgIBMAwGA1UdEwEB/wQCMAAwHwYDVR0jBBgwFoAUzlHiBIFOZFsj+OPEz5o+nMHXXMIwCgYIKoZIzj0EAwMDZwAwZAIwMXMdFJ4BetLLVY7ORuE9noqbbAZOZn/aArXyTwFAZfKrPzxF2vPoJNf1+UCdg1XGAjBwX1zd9WGqYkqmL5SFqw1QySjr1zJfpJM9+1rdDwSPLMOPOjKuiXjoU/pUUeG9RwmhY3BhZFkNngAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPZYQIPF8WMN0yXRnCmHnDIJOWrcbY6+azDMwKaZKpnvV/Gq2I7PMqrCPCQ/tDq69UiJujPfPY7KBn7gpnVhzzhyTjE= b(q − 1) bq b(q + 1) b(q + 2) a r = a − bq longueur b bq ≤ a < b(q + 1) donc 0 ≤ r < b
a se place entre deux multiples consécutifs de b : bq ≤ a < b(q + 1), et le reste r = a − bq est dans [0 ; b[.
🧠 Démonstration — existence et unicité

Existence. Les multiples de bb partagent la droite des réels en intervalles [bk ; b(k+1)[[bk\,;\,b(k + 1)[ ; aa appartient à exactement l’un d’eux : il existe un entier qq tel que bq⩽a<bq+bbq \leqslant a < bq + b. On pose r=a−bqr = a - bq : alors 0⩽r<b0 \leqslant r < b.

Unicité. Si a=bq+r=bq′+r′a = bq + r = bq' + r' avec 0⩽r<b0 \leqslant r < b et 0⩽r′<b0 \leqslant r' < b, alors b(q−q′)=r′−rb(q - q') = r' - r. Donc bb divise r′−rr' - r, et −b<r′−r<b-b < r' - r < b. Le seul multiple de bb strictement compris entre −b-b et bb est 00 : r=r′r = r', puis q=q′q = q'.

Exemples.

  • a=100a = 100, b=7b = 7 : 100=7×14+2100 = 7 \times 14 + 2, quotient 1414, reste 22.
  • a=−100a = -100, b=7b = 7 : −100=7×(−15)+5-100 = 7 \times (-15) + 5, quotient −15-15, reste 55 (et non −2-2 : un reste est toujours positif).

Conséquence. bb divise aa si et seulement si le reste de la division euclidienne de aa par bb est nul. Tout entier s’écrit sous l’une des formes bkbk, bk+1bk + 1, …, bk+(b−1)bk + (b - 1) : c’est la base des disjonctions de cas.

Exemple. Tout entier nn s’écrit 3k3k, 3k+13k + 1 ou 3k+23k + 2. Alors n2n^2 vaut 9k29k^2, 9k2+6k+19k^2 + 6k + 1 ou 9k2+12k+49k^2 + 12k + 4 : le reste de n2n^2 dans la division par 33 est toujours 00 ou 11, jamais 22.

def division(a, b):
    """Quotient et reste de la division euclidienne de a par b > 0."""
    return a // b, a % b     # en Python, a % b est toujours dans [0 ; b[ si b > 0

print(division(100, 7))    # (14, 2)
print(division(-100, 7))   # (-15, 5)

→ S’entraîner : Exercice 3

3. Congruences

Définition. Soit n⩾2n \geqslant 2 un entier. Deux entiers aa et bb sont congrus modulo nn, et on note a≡b [n]a \equiv b\ [n], si nn divise a−ba - b.

Propriété. a≡b [n]a \equiv b\ [n] si et seulement si aa et bb ont le même reste dans la division euclidienne par nn. En particulier, si rr est le reste de la division de aa par nn, alors a≡r [n]a \equiv r\ [n] avec 0⩽r<n0 \leqslant r < n.

Exemples. 38≡3 [5]38 \equiv 3\ [5] ; −4≡8 [12]-4 \equiv 8\ [12] (il est 88 h quand on recule de 44 h depuis midi) ; nn est pair si et seulement si n≡0 [2]n \equiv 0\ [2].

AAAWgmp1bWIAAAAeanVtZGMycGEAEQAQgAAAqgA4m3EDYzJwYQAAABZcanVtYgAAAEdqdW1kYzJtYQARABCAAACqADibcQN1cm46YzJwYTplNTg2NmZlYy0zOTEyLTQ0NWEtODg0ZS1jM2UwZGQ2OWM1ZTUAAAADl2p1bWIAAAApanVtZGMyYXMAEQAQgAAAqgA4m3EDYzJwYS5hc3NlcnRpb25zAAAAALxqdW1iAAAARGp1bWRjYm9yABEAEIAAAKoAOJtxE2MycGEuaW5ncmVkaWVudC52MwAAAAAYYzJzaJsfV/MAckVSsQf5QKCLBK0AAABwY2JvcqNpZGM6Zm9ybWF0bWltYWdlL3N2Zyt4bWxqaW5zdGFuY2VJRHgseG1wOmlpZDpmZmU2ZTRlZi05N2UyLTQwM2QtOGJkNS0yNzgwZGI5M2IzYjJscmVsYXRpb25zaGlwaHBhcmVudE9mAAAB4mp1bWIAAABBanVtZGNib3IAEQAQgAAAqgA4m3ETYzJwYS5hY3Rpb25zLnYyAAAAABhjMnNoNNRMkicafHgM8EOTFV5V0AAAAZljYm9yomdhY3Rpb25zgqJmYWN0aW9ua2MycGEub3BlbmVkanBhcmFtZXRlcnOha2luZ3JlZGllbnRzgaJjdXJseC1zZWxmI2p1bWJmPWMycGEuYXNzZXJ0aW9ucy9jMnBhLmluZ3JlZGllbnQudjNkaGFzaFggWUsVyUlqqMJvLst2+YtK9ox2D33WDPxnROFJGVaQB5SkZmFjdGlvbngdY29tLmFudGhyb3BpYy5jbGF1ZGUucHJvdmlkZWRqcGFyYW1ldGVyc6F4H2NvbS5hbnRocm9waWMub3JpZ2luLWNvbmZpZGVuY2VndW5rbm93bmtkZXNjcmlwdGlvbnhmQ2xhdWRlIHByb3ZpZGVkIHRoaXMgZmlsZSBhdCB0aGUgcmVxdWVzdCBvZiBhIHVzZXIgYW5kIG1heSBoYXZlIGNyZWF0ZWQgb3IgbW9kaWZpZWQgdGhlIGZpbGUgY29udGVudHMubXNvZnR3YXJlQWdlbnShZG5hbWVmQ2xhdWRlcmFsbEFjdGlvbnNJbmNsdWRlZPUAAADIanVtYgAAAEBqdW1kY2JvcgARABCAAACqADibcRNjMnBhLmhhc2guZGF0YQAAAAAYYzJzaNIORye+AC19uSMhyysBg4wAAACAY2JvcqVjYWxnZnNoYTI1NmNwYWRNAAAAAAAAAAAAAAAAAGRoYXNoWCD4Df7ozCRBQpFxQ/NTsyeoQ99W2wpXjwCP+UCBw7R6HWRuYW1lbmp1bWJmIG1hbmlmZXN0amV4Y2x1c2lvbnOBomVzdGFydBh9Zmxlbmd0aBkeBAAAAj5qdW1iAAAAJ2p1bWRjMmNsABEAEIAAAKoAOJtxA2MycGEuY2xhaW0udjIAAAACD2Nib3KlY2FsZ2ZzaGEyNTZpc2lnbmF0dXJleE1zZWxmI2p1bWJmPS9jMnBhL3VybjpjMnBhOmU1ODY2ZmVjLTM5MTItNDQ1YS04ODRlLWMzZTBkZDY5YzVlNS9jMnBhLnNpZ25hdHVyZWppbnN0YW5jZUlEeCx4bXA6aWlkOmJlNTllNTZkLWU0OTQtNGY3Ny1iZmYzLTEzMTZkOTZiNmRiOHJjcmVhdGVkX2Fzc2VydGlvbnODomN1cmx4LXNlbGYjanVtYmY9YzJwYS5hc3NlcnRpb25zL2MycGEuaW5ncmVkaWVudC52M2RoYXNoWCBZSxXJSWqowm8uy3b5i0r2jHYPfdYM/GdE4UkZVpAHlKJjdXJseCpzZWxmI2p1bWJmPWMycGEuYXNzZXJ0aW9ucy9jMnBhLmFjdGlvbnMudjJkaGFzaFgg31ufjeVyDF/jE//AiGfpgcJ9rBuuKxaGypLAW2BnxRmiY3VybHgpc2VsZiNqdW1iZj1jMnBhLmFzc2VydGlvbnMvYzJwYS5oYXNoLmRhdGFkaGFzaFgg5ifmG+JagzPeVwcyJxxvaGHoXIx9s8/f6doL8M7CuCV0Y2xhaW1fZ2VuZXJhdG9yX2luZm+jZG5hbWVvQW50aHJvcGljIEZpbGVzZ3ZlcnNpb25lMS4wLjBrc3BlY1ZlcnNpb25lMi40LjAAABA4anVtYgAAAChqdW1kYzJjcwARABCAAACqADibcQNjMnBhLnNpZ25hdHVyZQAAABAIY2JvctKEWQISogEmGCFZAgowggIGMIIBjaADAgECAhRA5aAK7sI50L64g/oGQgU9Z1UTADAKBggqhkjOPQQDAzBJMRcwFQYDVQQKEw5BbnRocm9waWMsIFBCQzEuMCwGA1UEAxMlQW50aHJvcGljIENvbnRlbnQgQ3JlZGVudGlhbHMgUm9vdCBDQTAeFw0yNjA4MDcxODQzNTZaFw0yODA4MDYxOTQzNTZaMEQxFzAVBgNVBAoTDkFudGhyb3BpYywgUEJDMSkwJwYDVQQDEyBBbnRocm9waWMgQ2xhdWRlIENvbnRlbnQgU2lnbmluZzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABJh6CmvLUBgFFNU0vUKlOVtE6djd17L5SuwX0LemFisBM3dkd/3cyjxFA3Qo5S46fX0/ihY0VZ7mfb9KF703t5OjWDBWMA4GA1UdDwEB/wQEAwIHgDAVBgNVHSUEDjAMBgorBgEEAYPoXgIBMAwGA1UdEwEB/wQCMAAwHwYDVR0jBBgwFoAUzlHiBIFOZFsj+OPEz5o+nMHXXMIwCgYIKoZIzj0EAwMDZwAwZAIwMXMdFJ4BetLLVY7ORuE9noqbbAZOZn/aArXyTwFAZfKrPzxF2vPoJNf1+UCdg1XGAjBwX1zd9WGqYkqmL5SFqw1QySjr1zJfpJM9+1rdDwSPLMOPOjKuiXjoU/pUUeG9RwmhY3BhZFkNngAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPZYQN1f+xxH+g37G8E4ZoX/X0D7OUliyfkOj7xXS7ZDoroPYu82kYbwR00NaerCDYakRv4CavOVOS6fo/yXmFZqVFU= 0 lundi 1 mardi 2 mercredi 3 jeudi 4 vendredi 5 samedi 6 dimanche 3 ≡ 10 ≡ 17 ≡ −4 modulo 7 +7 : un tour complet
Modulo 7, les entiers « tournent en rond » comme les jours de la semaine : 3, 10, 17, −4 occupent la même case.

Propriétés. Pour n⩾2n \geqslant 2 : la congruence est réflexive (a≡aa \equiv a), symétrique et transitive (si a≡ba \equiv b et b≡cb \equiv c modulo nn, alors a≡ca \equiv c).

→ S’entraîner : Exercice 4

4. Compatibilité avec les opérations

Théorème. Soit n⩾2n \geqslant 2. Si a≡b [n]a \equiv b\ [n] et c≡d [n]c \equiv d\ [n], alors :

  • a+c≡b+d [n]a + c \equiv b + d\ [n] et a−c≡b−d [n]a - c \equiv b - d\ [n] ;
  • ac≡bd [n]ac \equiv bd\ [n] ;
  • pour tout entier naturel kk, ak≡bk [n]a^k \equiv b^k\ [n].
🧠 Démonstration — compatibilité avec la multiplication

On a a−b=kna - b = kn et c−d=k′nc - d = k'n. Alors ac−bd=ac−bc+bc−bd=(a−b)c+b(c−d)=n(kc+bk′),ac - bd = ac - bc + bc - bd = (a - b)c + b(c - d) = n(kc + bk'), donc n∣ac−bdn \mid ac - bd. Pour les puissances, on applique ce résultat kk fois (récurrence sur kk).

Attention. On ne peut pas diviser une congruence n’importe comment : 2×3≡2×0 [6]2 \times 3 \equiv 2 \times 0\ [6] mais 3≢0 [6]3 \not\equiv 0\ [6].

📋 Méthode — Reste d'une grande puissance

Reste de 71007^{100} dans la division par 55 :

  1. chercher une puissance simple : 7≡2 [5]7 \equiv 2\ [5], 22=4≡−1 [5]2^2 = 4 \equiv -1\ [5], donc 24≡1 [5]2^4 \equiv 1\ [5] ;
  2. écrire l’exposant avec ce cycle : 100=4×25100 = 4 \times 25 ;
  3. conclure : 7100≡2100=(24)25≡125=1 [5]7^{100} \equiv 2^{100} = \left(2^4\right)^{25} \equiv 1^{25} = 1\ [5]. Le reste est 11.
print(pow(7, 100, 5))   # 1 : pow(a, k, n) calcule a**k modulo n très rapidement

→ S’entraîner : Exercice 5 · Exercice 6

5. Critères de divisibilité et congruences à résoudre

Critères de divisibilité. Un entier N=ak…a1a0‾=ak10k+⋯+a110+a0N = \overline{a_k \dots a_1 a_0} = a_k 10^k + \dots + a_1 10 + a_0 :

  • comme 10≡1 [9]10 \equiv 1\ [9], 10j≡1 [9]10^j \equiv 1\ [9] donc N≡ak+⋯+a1+a0 [9]N \equiv a_k + \dots + a_1 + a_0\ [9] : NN et la somme de ses chiffres ont le même reste modulo 9 (et modulo 3) ;
  • comme 10≡−1 [11]10 \equiv -1\ [11], N≡a0−a1+a2−… [11]N \equiv a_0 - a_1 + a_2 - \dots\ [11] : critère de divisibilité par 1111 (somme alternée des chiffres).

Exemple. N=918 082N = 918\,082 : 2−8+0−8+1−9=−22≡0 [11]2 - 8 + 0 - 8 + 1 - 9 = -22 \equiv 0\ [11], donc 11∣N11 \mid N.

Résoudre une congruence ax≡b [n]ax \equiv b\ [n]. Il suffit de tester les nn restes possibles de xx : c’est une table de congruences.

Exemple. Résoudre 3x≡5 [7]3x \equiv 5\ [7].

x≡x \equiv00112233445566
3x≡3x \equiv00336622551144

Les solutions sont les entiers x≡4 [7]x \equiv 4\ [7], c’est-à-dire x=4+7kx = 4 + 7k, k∈Zk \in \mathbb{Z}.

On lit aussi dans la table que 3×5≡1 [7]3 \times 5 \equiv 1\ [7] : 55 est un inverse de 33 modulo 77. Multiplier 3x≡53x \equiv 5 par 55 donne directement x≡25≡4 [7]x \equiv 25 \equiv 4\ [7].

Remarque. Un inverse de aa modulo nn n’existe pas toujours (il n’y a pas d’inverse de 22 modulo 66) : le chapitre suivant (PGCD, Bézout et Gauss) dira exactement quand.

→ S’entraîner : Exercice 7 · Exercice 8


À retenir.

  • a∣b  ⟺  b=kaa \mid b \iff b = ka ; si a∣ba \mid b et a∣ca \mid c, alors a∣bu+cva \mid bu + cv.
  • Division euclidienne : a=bq+ra = bq + r avec 0⩽r<b0 \leqslant r < b, unique.
  • a≡b [n]  ⟺  n∣a−b  ⟺  a \equiv b\ [n] \iff n \mid a - b \iff même reste modulo nn.
  • Les congruences se conservent par ++, −-, ×\times et puissance, pas par division.
  • Chercher une puissance congrue à ±1\pm 1 pour calculer des restes ; table de congruences pour résoudre ax≡b [n]ax \equiv b\ [n].