notes4 - Département de mathématiques et de statistique

publicité
4. Induction mathématique
Les propriétés considérées essentielles de l’ensemble des nombres naturels N = {0, 1, 2, 3, . . . , n, n+
1, . . .} sont les suivantes :
(1) Chaque nombre naturel n a un unique successeur dans N, noté n + 1.
(2) Il existe un nombre naturel spécial, noté 0, et
(3) chaque nombre naturel n différent de 0 a un unique prédécesseur dans N, noté n − 1. On a
(n + 1) − 1 = n, pour tout n ∈ N et (n − 1) + 1 = n pour tout n ∈ N tel que n 6= 0.
(4) Si E ⊆ N est un sous-ensemble de N tel que (i) 0 ∈ E et (ii) pour chaque n ∈ E
aussi n + 1 ∈ E, alors nécessairement E = N.
Le successeur de 0 s’appelle 1, le successeur de 1 s’appelle 2, et cétera. Le prédecesseur de 1 est 0,
le prédécesseur de 2 est 1. Mais 0 n’a pas de prédécesseur dans N (l’entier −1 n’est pas un nombre
naturel).
Axiome 4.1. L’ensemble des nombres naturels N = {0, 1, 2, 3, . . . , n, n + 1, . . .} avec ces propriétés
essentielles existe.
Il est impossible de montrer la vérité de cet axiome (sans supposer quelque chose d’autre). On
l’accepte.
À partir de seulement ces propriétés essentielles nous pouvons déduire les autres propriétés bien
connues par vous. Dans la prochaine section nous allons montrer un peu comment on le fait. Ce
n’est pas dur, mais un peu laborieux.
Acceptons encore ces propriétes élémentaires de N et Z bien-connues.
Concentrons maintenant sur la dernière propriété essentielle mentionnée, car ça nous permet
d’utiliser induction dans les preuves et définitions. 10
Théorème 4.1 (Principe d’induction simple). Soit P (n) une fonction propositionnelle avec univers
de discours N. Supposons P (0) vraie et supposons aussi que pour chaque n ∈ N l’implication
P (n) → P (n + 1) est vrai. Alors P (n) est vrai pour chaque n ∈ N.
En formule :
[P (0) ∧ (∀ n (P (n) → P (n + 1)))] → [∀ n P (n)]
Démonstration. Supposons P (0) vraie et pour chaque n ∈ N l’implication P (n) → P (n + 1) est
aussi vrai. Posons E = {n ∈ N| P (n) est vrai} ⊆ N. Par hypothèse P (0) est vrai, donc 0 ∈ E.
Supposons n ∈ E, alors P (n) est vrai. Par hypothèse, l’implication P (n) → P (n + 1) est aussi
vrai. Donc par la règle d’inférence modus ponens il suit que P (n + 1) est aussi vrai. On conclut que
n + 1 ∈ E. Donc E ⊆ N est un sous-ensemble de N tel que (i) 0 ∈ E et (ii) pour chaque n ∈ E
aussi n + 1 ∈ E. Alors par la dernière propriété essentielle de N il suit que E = N. En autres mots,
pour chaque n ∈ N la proposition P (n) est vraie !
10. Voir [R, Ch. 3.2]
38
39
4.1. Autres versions d’induction. Il y d’autres versions du principe d’induction simple. 11
Pour montrer l’étape d’induction on a le droit d’utiliser comme hypothèse d’induction que P (a)
soit vrai pour chaque a ≤ n, ce qui est plus généreuse que de seulement supposer que P (n) soit
vrai. Aussi l’induction peut débuter à un nombre entier négatif !
Théorème 4.2 (Principe d’induction généreuse). Soit a un nombre entier (positif, 0 ou négatif)
et P (n) une fonction propositionnelle avec l’univers de discours Z≥a = {n ∈ Z| n ≥ a}.
Supposons P (a) soit vrai et supposons aussi pour chaque n ≥ a, que la vérité de P (m) pour
chaque a ≤ m ≤ n impliquerait la vérité de P (n + 1), alors que
[P (a) ∧ P (a + 1) ∧ . . . ∧ P (n − 1) ∧ P (n)] → P (n + 1).
Alors nécessairement P (n) est vrai pour chaque n ∈ Z≥a .
Démonstration. On va utiliser l’induction ordinaire avec l’aide d’une autre fonction propositionnelle
Q(n) sur l’univers de discours N définie par :
Q(n) : pour chaque m tel que a ≤ m ≤ a + n on a que P (m) est vrai.
On va montrer par induction ordinaire que Q(n) est vrai pour chaque n ∈ N .
Début : On a Q(0) est vrai car P (m) est vrai pour chaque m tel que a ≤ m ≤ a + 0, c.-à-d. P (a)
est vrai ; ce qui est un des hypothèse sur P .
Étape d’induction : Supposons n ≥ 0 et Q(n) soit vrai, c.-à-d., P (m) soit vrai pour chaque
a ≤ m ≤ a + n. Mais l’hypothèse sur la fonction P impliquerait que P (a + n + 1) soit vrai aussi,
donc pour chaque a ≤ m ≤ a + n + 1 on aurait que P (m) est vrai. Ou : Q(n) vrai impliquerait que
Q(n + 1) vrai aussi.
Par induction ordinaire on conclut que Q(n) est vrai pour chaque n ≥ 0. Donc pour chaque
a ≤ m ≤ a + n la proposition P (m) est vrai. En particulier P (n) est vrai pour chaque n ≥ a. On utilise une autre version encore si on remarque que pour montrer P (n + 1) on a besoin de
pas seulement supposer P (n) mais aussi P (n − 1) et P (n − 2). Dans ce cas il faut vérifier au début
de l’induction les trois premiers cas !
Théorème 4.3. Soit a un nombre entier et P (n) une fonction propositionnelle avec l’univers de
discours Z≥a = {n ∈ Z|n ≥ a}.
Supposons P (a), P (a + 1) et P (a + 2) soient vraies et que pour chaque n ≥ a + 2 (attention !),
la vérité de P (n), P (n − 1) et P (n − 2) impliquerait la vérité de P (n + 1). Alors nécessairement
P (n) est vrai pour chaque n ≥ a.
Démonstration. Introduisons une autre fonction propositionnelle Q(n) = P (n)∧P (n−1)∧P (n−2)
où n ≥ a + 2. C’est à dire, Q(n) est vrai si P (n), P (n − 1) et P (n − 2) sont tous les trois vraies.
On suppose n ≥ a + 2 pour guarantir que n − 2 ≥ a.
Début : Q(a + 2) est vrai car P (a), P (a + 1) et P (a + 2) sont vraies par hypothèse. Supposons
n ≥ a + 2 et Q(n) vraie, c.-à-d, P (n) ∧ P (n − 1) ∧ P (n − 2) vraie. Par hypothèse [P (n) ∧ P (n − 1) ∧
11. Il est recommandé de visiter l’article suivant sur wikipédia : http://fr.wikipedia.org/wiki/Raisonnement_
par_recurrence.
40
P (n − 2)] → P (n + 1) vraie, donc par modus ponens P (n + 1) vrai. On conclut que Q(n) implique
Q(n + 1) = P (n + 1) ∧ P (n) ∧ P (n − 1).
Par induction Q(n) est vraie pour chaque n ≥ a + 2. Donc P (n), P (n − 1) et P (n − 2) sont vraies
si n ≥ a + 2, et P (m) vrai pour chaque m ≥ a.
De la même façon, si on remarque que pour montrer P (n + 1) on a besoin de 2 (ou 4, 5, . . .)
étapes précédentes il faut vérifier les 2 (resp. 4, 5, . . .) premiers cas.
4.2. Principe du bon ordre. Soit E ⊆ N un sous-ensemble non-vide de l’ensemble des nombres
naturels. On dit que l’élément m est un minimum de E si m ∈ E et m ≤ n pour chaque n ∈ E.
Par exemple 0 est le minimum de N.
Un autre exemple : fixons n ∈ N et définissons le sous-ensemble E = {m ∈ N| m 6= n et m ≥ n}.
Son minimum est le successeur n + 1.
À la place d’induction ou directement la dernière propriété essentielle de N on peut souvent
utiliser le principe du bon ordre (souvent avec une preuve par contradiction).
Théorème 4.4 (Principe du bon ordre). Tout sous-ensemble non vide de N a un minimum.
Démonstration. Soit E ⊂ N un ensemble non-vide. On va montrer que E a un minimum, par une
preuve par contradiction : Supposons que E n’a pas un minimum.
Considérons la fonction propositionnelle P (n) = ”n 6∈ E” , où n ∈ N. On va montrer par
induction généreuse que P (n) vraie pour chaque n ∈ N.
Début : Si 0 ∈ E, alors 0 serait un minimum de E (c’est même un minimum pour tout N). Donc
0 6∈ E et P (0) est vraie.
Étape d’induction : Soit n ∈ N et supposons que pour 0 ≤ m ≤ n on a P (m) vraie, c.-à-d.,
m 6∈ E. On va montrer que P (n + 1) est vraie.
Supposons au contraire que P (n + 1) est fausse, ou n + 1 ∈ E mais 0, 1, . . . , n ne sont pas dans
E. Soit a ∈ E. Alors a n’est pas un des 0, 1, . . . , n, qui sont les nombres naturels plus petit que
n + 1. En consèquence a ≥ n + 1. Et on conclut que n + 1 est un minimum de E. Ce qui est une
contradiction. Alors P (n + 1) est vraie.
Par le principe d’induction généreuse, on conclut que P (n) est vraie pour chaque n ∈ N : pour
chaque entier n 6∈ E. Ce qui implique que E est vide ! Une contradiction encore.
Cette fois on conclut que l’hypothèse "E n’a pas un minimum" est faux.
Un minimum est en fait unique.
Lemme 4.1 (Unicité). Soit E ⊆ N un sous-ensemble non-vide. Alors E a un seul minimum.
Démonstration. Par le principe du bon ordre au moins un minimum existe dans E. Soient n1 et n2
deux minima de E. Alors n1 et n2 sont dans E et pour chaque m ∈ E on a que n1 ≤ m et n2 ≤ m.
En particulier n1 ≤ n2 (car n2 ∈ E) et n2 ≤ n1 (car n1 ∈ E). Donc n1 = n2 .
4.3. Exemples. 12
12. Voir [R, §3.2]
41
Lemme 4.2. Pour chaque nombre naturel n ≥ 0 on a
0 + 1 + 2 + 3 + ... + n =
Démonstration. Posons s(n) =
Pn
i=0 i
n(n + 1)
.
2
et définissons la fonction propositionnelle
n(n + 1)
”,
2
P (n) := ”s(n) =
avec univers du discours N. Nous allons montrer par induction que P (n) est vraie pour chaque
n ∈ N. Ça montrera le lemme.
Début (n = 0) : P (0) = ”0 = 0(0+1)
” est vraie, car les deux côtés sont 0.
2
.
Étape d’induction : Soit n ∈ N et supposons P (n) vraie, c.-à-d., 0 + 1 + 2 + 3 + . . . + n = n(n+1)
2
En ajoutant (n + 1) aux deux côtés on obtient :
0 + 1 + 2 + . . . + n + (n + 1) =
=
=
=
n(n + 1)
+ (n + 1)
2
n(n + 1) 2(n + 1)
+
2
2
(n + 2)(n + 1)
2
[n + 1]([n + 1] + 1)
2
Nous avons montré que si P (n) vraie, alors aussi P (n + 1) vraie, alors que P (n) → P (n + 1) est
vraie, et ça pour chaque n ∈ N.
Conclusion : Donc par le principe d’induction, on conclut que ∀n P (n) est vraie.
Lemme 4.3. Pour chaque nombre naturel n on a
n
X
i=0
i2 =
n(n + 1)(2n + 1)
.
6
”. C’est une foncDémonstration. Posons p(n) := ” 02 + 12 + 22 + 32 + . . . + n2 = n(n+1)(2n+1)
6
tion propositionnelle avec univers N. On va montrer par induction que P (n) vraie pour chaque
n ∈ N. Ça montrera le lemme.
Début (n = 0) : P (0) = ”02 = 0(0+1)(2·0+1)
” est vraie (car les deux côtés donnent 0).
6
Étape d"induction : Supposons P (n) est vraie pour un certain n ∈ N, c.-a-d.
12 + 2 2 + 3 2 + . . . + n2 =
n(n + 1)(2n + 1)
.
6
42
Alors en ajoutant (n + 1)2 des deux côtés on obtient :
n(n + 1)(2n + 1)
+ (n + 1)2
6
n(2n + 1) 6n + 6
+
= (n + 1) ·
6
6
12 + 22 + . . . + n2 + (n + 1)2 =
= (n + 1) ·
=
2n2 + 7n + 6)
6
!
[n + 1]([n + 1] + 1)(2[n + 1] + 1))
6
Alors P (n + 1) est aussi vraie. Nous venons de montrer P (n) → P (n + 1) est vraie pour chaque
n ∈ N.
Conclusion : Par le principe d’induction on conclut ∀n P (n), P (n) vraie pour chaque n ∈ N. 4.4. La cardinalité de P (E). Nous voulons montrer par induction que |P (E)| = 2|E| pour un
ensemble fini E. L’idée est le suivant. Si x ∈ E et A ⊂ E alors il y a deux possibilités, soit x ∈ A,
soit x 6∈ A. Si x ∈ A alors A ∈ P (E\{x}) et on pourrait utiliser induction. Mais si x 6∈ A ? On va
d’abord montrer que le nombre de A ∈ P (E) tel que x ∈ A est égal au nombre de A ∈ P (E) tel
que x 6∈ A. Comment faire ça ? Par une bijection !
Ainsi, nous aurons besoin de quelques préparations.
Soit E un ensemble non-vide et fixons un élément x ∈ E. Divisons P (E), l’ensemble des sousensembles de E, dans deux classes (sous-ensembles disjoints). Rappel A := E\A = E − A, le
complément de A ⊆ E. On remarque que x ∈ A si et seulement si x 6∈ A.
Définissons
C1 := {A ∈ P (E)| x∈A};
C2 := {A ∈ P (E)| x 6∈ A}
et les fonctions f1 : C1 → C2 et f2 : C2 → C1 par f1 (A) = A et f2 (A) = A.
Lemme 4.4. Les fonctions f1 et f2 sont bijectives.
Démonstration. Vérifions que f2 est une fonction : Si A ∈ C2 , alors x 6∈ A et x ∈ A, donc f2 (A) =
A ∈ C1 , en effet. Similaire pour f1 .
Par un résultat déjà montré il suffit de montrer que f1 ◦ f2 = 1C2 et f2 ◦ f1 = 1C1 .
Puis (f1 ◦ f2 )(A) = f1 (A) = A = A = 1C2 (A) et (f2 ◦ f1 )(A) = f2 (A) = A = A = 1C1 (A). Donc
en effet f1 ◦ f2 = 1C2 et f2 ◦ f1 = 1C1 .
Corollaire 4.1. Si E est un ensemble fini, alors |C1 | = |C2 | et |P (E)| = 2|C1 |.
Démonstration. On a C1 ∪ C2 = P (E) et C1 ∩ C2 = ∅. Alors |P (E)| = |C1 | + |C2 | − |C1 ∩ C2 | =
|C1 | + |C2 |.
Nous avons montré que f2 : C2 → C1 est une fonction bijective ; donc si E est fini, alors
|C2 | = |C1 |.
43
Lemme 4.5. La fonction
f3 : P (E\{x}) → C2
définie par f3 (A) := A est bijective.
Démonstration. Si A ∈ P (U \{x}) alors A est un sous-ensemble de E\{x}), alors A est un sousensemble de E qui ne contient pas x, c.-à-d., un élément de C2 . Et vice versa. Donc f3 est une
fonction bijective.
Corollaire 4.2. Si E est un ensemble fini, alors |P (E\{x})| = |C2 |.
Conclusion des deux corollaires : Supposons E un ensemble fini et x ∈ E. Alors
|P (E)| = 2 · |P (E\{x})|.
Ce résultat sera utilisé dans la preuve du théorème :
Théorème 4.5. Soit E un ensemble de n éléments. Alors |P (E)| = 2n .
Démonstration. Soit P (n) :="Pour chaque ensemble fini U de n éléments, l’ensemble P (U ) a 2n
éléments", avec univers du discours N.
Montrons P (n) pour chaque n ∈ N par induction.
Début (n = 0). E = ∅ est le seule ensemble avec 0 éléments et P (E) = {∅} a 20 = 1 élément.
Donc en effet P (0) est vraie.
Étape d’induction : Soit n ∈ N et supposons P (n) vraie.
Soit E un ensemble avec n+1 éléments. Choisissons un élément x ∈ E, alors E\{x} a n éléments.
Par l’hypothèse d’induction |P (E\{x})| = 2n .
Par le résultat avant : |P (E)| = 2|P (E\{x})|. Donc |P (E)| = 2 · 2n = 2n+1 . Nous avons montré
que P (n) implique P (n + 1).
Conclusion : Par induction le théorème est vrai.
Remarque. Il y a aussi une preuve directe. Posons encore n = |E|. Rappelons que 2n est aussi le
nombre de fonctions de E dans {0, 1}. On va utiliser ça.
Pour chaque A ∈ P (E) définissons la fonction FA : E → {0, 1} par
(
FA (x) =
1 si x ∈ A ;
0 si x 6∈ A.
Et puis définissons la fonction F : P (E) → Fonctions (E, {0, 1}) par F (A) := FA .
Cette fonction F est bijective (montrer ça vous-même !), alors
|P (E)| = |Fonctions(E, {0, 1})| = 2n .
4.5. Exemple de preuve avec induction généreuse. Pour quels nombres naturel n existe-t-il
deux nombres naturels r et t tels que n = 4r + 5t.
Par inspection on voit que ça fonctionne au moins pour n = 0, 4, 5, 8, 9, 10, 12, 13, 14, 15, 16, 17 et
pas pour n = 1, 2, 3, 6, 7, 11 et on ne vois pas tout de suite autres contre-exemples.
Alors une conjecture se pose : Pour chaque nombre naturel n ≥ 12 il existe deux nombres naturels
r et t tels que n = 4r + 5t.
Maintenant il faut montrer la conjecture.
44
Brouillon : Comment ? Idée : on a un genre de récurrence : si n − 4 = 4r1 + 5t1 alors n =
4(r1 + 1) + 5t1 . Donc si on peut supposer que c’est vraie pour n − 4 alors ce sera aussi vraie pour
n. Donc l’utilisation d’induction généreuse semble être appropriée.
On peut commencer par n = 12, car on sait que c’est vraie. Soit n ≥ 12. Supposons vraie pour
12 ≤ m ≤ n. Est ce que nous pouvons utiliser la récurrence trouvée pour montrer que c’est aussi
vraie pour n+1 ? Est-ce que par notre hypothèse d’induction généreuse c’est vraie pour (n+1)−4 ?
Seulement si 12 ≤ (n + 1) − 4 ≤ n, ou seulement si 15 ≤ n. Il faut faire à la main les cas n = 13 et
n = 14 et n = 15. Après ça marche. Fin brouillon.
Maintenant la version propre !
Démonstration. Posons P (n) :=" il existe deux nombres naturels r et s tels que n = 4r + 5t." On
va montrer par induction que P (n) vraie pour n ≥ 12.
Début : P (12), P (13), P (14) et P (15) sont toutes vraies, car 12 = 4 · 3 + 5 · 0, 13 = 4 · 2 + 5 · 1,
14 = 4 · 1 + 5 · 2, 15 = 4 · 0 + 5 · 3.
Étape d’induction : Supposons n ≥ 15 et P (m) vraies pour tout 12 ≤ m ≤ n. On a 12 ≤ n−3 ≤ n
donc P (n − 3) est vraie par l’hypothèse généreuse, c.-à-d. il existe deux nombres naturels r0 et s0
tels que n − 3 = 4r0 + 5t0 . Alors n + 1 = 4(r0 + 1) + 5t0 . Donc P (n + 1) est aussi vraie.
Conclusion : Par induction généreuse P (n) est vraie pour chaque entier n ≥ 12.
4.6. Nombres de Fibonacci. Nous pouvons aussi utiliser l’induction pour des définitions. Posons
F (0) := 0, F (1) := 1. Il existe une unique fonction F : N → N telle que pour n ≥ 2 on a
F (n) = F (n − 1) + F (n − 2).
F (n) est appelé le n-ième nombre de Fibonacci.
Supposons n ≥ 1 et F (m) est définie pour 0 ≤ m ≤ n. Alors on définit F (n+1) = F (n)+F (n−1).
Ainsi F (n) est définie pour chaque n ∈ N.
F (1) = 1, F (2) = 1, F (3) = 2, F (4) = 3, F (5) = 5, F (6) = 8, F (7) = 13, F (8) = 21, F (9) = 34, . . .
(Vous voyez une formule pour F ?)
Cette définition est sans ambiguités : Supposons G : N → N est une autre fonction aussi avec
G(0) = 0, G(1) = 1 et G(n) = G(n − 1) + G(n − 2). Alors F = G.
Démonstration. Posons P (n) := ”F (n) = G(n)”. Montrons ∀n ∈ N P (n).
Début : P (0) et P (1) sont vraie.
Étape d’induction : Supposons n ≥ 1 et P (m) vraies pour 0 ≤ m ≤ n. En particulier P (n)
et P (n − 1) sont vraies. Donc F (n) = G(n) et F (n − 1) = G(n − 1). Il suit que F (n + 1) =
F (n) + F (n − 1) = G(n) + G(n − 1) = G(n + 1) et donc P (n + 1) vraie.
Conclusion : Par induction généreuse : P (n) vraie pour chaque n ∈ N, c.-à-d., F (n) = G(n) pour
chaque n ∈ N. D’où F = G comme fonctions.
Lemme 4.6. F (n) < 2n pour chaque n ∈ N.
Démonstration. Preuve par induction que P (n) := ”F (n) < 2n ” est vraie pour chaque n ∈ N.
Début (n = 0 et n = 1) : F (0) = 0 et en effet 0 < 20 = 1 et P (0) est vraie. Et F (1) = 1 et en
effet 1 < 21 = 2 et P (1) est vraie.
45
Étape d’induction généreuse : Soit n ≥ 1 et P (m) vraie pour chaque 0 ≤ m ≤ n. En particulier
F (n) < 2n et F (n − 1) < 2n−1 . Donc F (n + 1) = F (n) + F (n − 1) < 2n + 2n−1 < 2n + 2n = 21 · 2n =
2n+1 . Alors en effet P (n + 1) est impliqué par l’hypothèse d’induction.
Conclusion : Par le principe d’induction : P (n) est vraie pour chaque n ∈ N.
46
5. Divisibilité dans Z
Dans Z il y une notion de ≤ et une notion de divisibilité 13. Au niveau des définitions les deux
sont un peu similaires.
Définition 5.1. Soient n, m deux entiers. On écrit n ≤ m (ou m ≥ n) s’il existe un nombre
naturel r ∈ N tel que n + r = m.
Si n ≤ m on dit "n est plus petit que ou égal à m", ou "m est plus grand que ou égal à n".
Définition 5.2. Soient n, m deux entiers. On écrit n|m s’il existe un nombre entier r ∈ Z tel que
nr = m.
Si n|m on dit que "n divise m", ou "m est divisible par n", ou "m est un n-multiple".
Voici quelques propriétés élémentaires.
Théorème 5.1. Soient a, b, c trois nombres entiers.
(i) Si a ≤ b et b ≤ c alors a ≤ c.
(ii) Si a ≤ b alors a + c ≤ b + c.
(iii) Si a ≤ b et b ≤ a alors a = b
(iv) Si a ≤ b et c ∈ N alors ac ≤ bc
(v) Si a ≤ b alors −b ≤ −a.
Théorème 5.2. Soient a, b, c trois nombres entiers.
(i) Si a|b et b|c alors a|c.
(ii) Si a|b alors ac|bc et a|bc.
(iii) Si a|b et b|a alors |a| = |b|.
(iv) Si a|b et a|c alors a|(b + c).
Démonstration. (i) Si a ≤ b et b ≤ c il existe r, s ∈ N tels que a + r = b et b + s = c. Donc
a + (r + s) = b + s = c et r + s ∈ N donc a ≤ c.
Si a|b et b|c il existe r, s ∈ Z tels que ar = b et bs = c. Donc a(rs) = bs = c et rs ∈ Z donc a|c.
(ii) Si a ≤ b alors il existe r ∈ N tel que a + r = b. Donc (a + c) + r = b + c et a + c ≤ b + c.
Si a|b alors il existe r ∈ Z tel que ar = b. Donc (ac)r = bc et ac|bc. Aussi a|ac donc par (i) : a|bc.
(iii) Si a ≤ b et b ≤ a, ils existent r, s ∈ N tels que a+r = b et b+s = a. Donc a+r +s = b+s = a
et r = −s. Mais r, s ∈ N, donc r = s = 0, ou a = b.
Si a|b et b|a, ils existent deux entiers r, s tels que ar = b et bs = a. Donc ars = bs = a et
a(rs − 1) = 0. Si a = 0, alors b = ar = 0 aussi. Si a 6= 0 alors rs = 1 donc r = s = 1 ou r = s = −1.
Donc a = b ou a = −b.
(iv Si a ≤ b il existe r ∈ N tel que a + r = b. Si aussi c ∈ N alors rc ∈ N et ac + rc = (a + r)c = bc,
donc ac ≤ bc.
Si a|b et a|c alors il existe r, s ∈ Z tels que ar = b et as = c. Donc a(r + s) = ar + as = b + c et
a|(b + c).
(v) Si a ≤ b, il existe r ∈ N tel que a + r = b. Donc −b + r = −a et −b ≤ −a.
13. Voir [R, §2.3]
47
Exemple 5.1. Soit n ∈ Z.
(i) On a n ∈ N si et seulement si 0 ≤ n.
(ii) Toujours : 1|n et n|0.
(iii) Si n|a et n|b alors pour tous les entiers r et s on a
n|(ra + sb).
5.1. Modulo m. Pour des entiers a, b, m (m 6= 0) nous allons écrire
a ≡m b si m|(a − b).
On dit "a est équivalent à b modulo m". C’est une relation d’équivalence.
Lemme 5.1. Fixons m 6= 0 un entier. ≡m est une relation d’équivalence sur Z, c.-à.d,
(i) n ≡m n pour chaque a ∈ Z ;
(ii) Si n1 ≡m n2 , alors n2 ≡m n1 , pour chaque n1 , n2 ∈ Z ;
(iii) Si n1 ≡m n2 et n2 ≡m n3 alors n1 ≡m n3 pour chaque n1 , n2 , n3 ∈ Z ;
Démonstration. (i) n ≡m n parce que n − n = 0 et m|0.
(ii) Supposons n1 ≡m n2 , c.-à-d., m|(n1 − n2 ) : il existe r ∈ Z tel que rm = n1 − n2 . Alors
(−r)m = n2 − n1 et −r ∈ Z, donc par définition m|(n2 − n1 ) et n2 ≡m n1 .
(iii) Supposons n1 ≡m n2 et n2 ≡m n3 , c.-à-d., m|(n1 − n2 ) et m|(n2 − n3 ) : il existe r1 , r2 ∈ Z
tel que r1 m = n1 − n2 et r2 m = n2 − n3 . Alors (r1 + r2 )m = (n1 − n2 ) + (n2 − n3 ) = n1 − n3 . Donc
m|(n1 − n3 ) et n1 ≡m n3 .
Le théorème suivant donne une grande flexibilité 14 pour le calcul modulo m.
Théorème 5.3. Soient a, b, c, d, m des nombres entiers.
Si a ≡m c et b ≡m d, alors (a + b) ≡m (c + d) et (ab) ≡m (cd).
Démonstration. Si a ≡m c et b ≡m d alors il existe des entiers r, s tels que mr = (a − c) et
ms = (b − d). Donc m(r + s) = (a − c) + (b − d) = (a + b) − (c + d) et (a + b) ≡m (c + d).
Et aussi a = c + mr et b = d + ms. Donc
ab − cd = (c + mr)(d + ms) − cd = m(rd + cs + mrs),
ce qui implique que (ab) ≡m (cd).
5.2. Division avec reste. On ne peut pas diviser dans Z mais on a un alternatif fiable. C’est
essentiellement la longue division de l’école primaire, une divison partielle avec un petit reste à la
fin.
Théorème 5.4 (Division-avec-reste). Soit m > 0 un nombre naturel non-zéro fixé.
Pour chaque n ∈ Z il existe deux uniques nombres entiers q, r tels que simultanément :
(i) n = qm + r
(ii) 0 ≤ r < m.
On dit : r est le reste et q le quotient de la division partielle de n par m.
14. Voir [R, p.112]
48
n
Remarque. Soient n et m > 0 deux nombres naturels. Considérons la fraction m
. Alors il y un
n
n
unique nombre naturel q tel que q ≤ m
< q + 1. C’est le q du théorème. Ce q est donc presque m
.
Démonstration. La preuve se déroule en plusieurs étapes.
(a) Pour n ∈ Z définissons la fonction propositionnelle
P (n) := ∃q ∈ Z ∃r ∈ Z ([n = qm + r] ∧ [0 ≤ r < m]).
Montrons d’abord P (n) vraie pour chaque n ∈ N, par induction généreuse.
Début : Pour 0 ≤ n < m, prenons q = 0 et r = n, dans ce cas en effet n = qm + r = 0m + n et
0 ≤ r < m sont vraies.
Étape d’induction : Supposons n ≥ m − 1 et P (a) vraie pour chaque 0 ≤ a ≤ n. Prenons
a = n + 1 − m, alors 0 ≤ a ≤ n en effet. Donc par l’hypothèse généreuse P (a) est vraie. C.-à-d.,
il existe des nombres entiers q0 et r0 tels que n + 1 − m = a = q0 m + r0 et 0 ≤ r0 < m. Donc
n + 1 = (q0 + 1)m + r0 . En prenant q = q0 + 1 et r = r0 on obtient n + 1 = qm + r et 0 ≤ r < m.
Alors P (n + 1) est aussi vraie.
Par induction on conclut P (n) vraie pour chaque n ∈ N.
(b) Maintenant on veut montrer P (n) si n < 0. Nous savons que −n > 0 et que P (−n) est vraie.
Il existe des entiers q0 et r0 telles que −n = q0 m + r0 et 0 ≤ r0 < m. Deux cas : r0 = 0 et r0 6= 0.
• Dans le premier cas n = (−q0 )m + 0 est la décomposition voulu et P (n) est vraie.
• Dans l’autre cas : posons r = −r0 + m et q = −q0 − 1. Alors 0 ≤ −r0 + m < m implique
0 ≤ r < m et n = (−q0 − 1)m + (−r0 + m) = qm + r. Ce qui montre que P (n) est vraie aussi.
Conclusion : ∀n ∈ Z P (n) vraie.
(c) Unicité : Supposons n = qm + r = q1 m + r1 et 0 ≤ r < m et 0 ≤ r1 < m. Alors qm + r =
q1 m + r1 , ou r − r1 = (q1 − q)m.
Sans perte de généralité nous pouvons supposer que r ≥ r1 . Et donc 0 ≤ r − r1 < m.
Ça implique que 0 ≤ (q1 − q)m < m et donc 0 ≤ q1 − q < 1.
Mais en général si 0 ≤ N < 1 et N entier, implique N = 0.
Donc q1 = q et r = n − qm = n − q1 m = r1 .
Une première conséquence.
Corollaire 5.1. Soit m > 0 un nombre naturel.
Pour chaque n ∈ Z il existe un unique nombre naturel r tel que n ≡m r et 0 ≤ r < m.
Démonstration. Soit n ∈ Z. Par le thm. il existe deux entiers q et r tels que n = qm + r et
0 ≤ r < m. Alors m|(n − r) et n ≡m r.
Si n ≡m r1 et n ≡m r2 avec 0 ≤ ri < m pour chaque i = 1, 2. Alors il existe deux entiers q1 , q2
tels que n − ri = qi m ou n = qi m + ri , pour i = 1, 2. Par la partie "unicité" du thm : r1 = r2 (et
q1 = q2 ).
Le reste de la preuve est une conséquence directe et est laissé.
5.3. Nombres premiers et composés.
Définition 5.3. Un nombre naturel p > 1 est un nombre appelé premier si les seuls diviseurs
positifs sont 1 et p.
49
Un nombre naturel n > 1 est un nombre appelé composé si n n’est pas premier.
Des nombres premiers :
2, 3, 5, 7, 11, 13, 17, 19, 23, 29, . . .
Des nombres composés :
4, 6, 8, 9, 10, 12, 14, 15, 16, 18, 21, 22, 24, 25, 26, 27, 28 . . .
Théorème 5.5. Pour chaque nombre naturel n > 1 il existe un entier s ≥ 1 et des nombres
premiers p1 , p2 , . . . , ps tels que
n = p1 p2 . . . ps
On dit : "Une décomposition en facteurs premiers existe".
Par exemple : 36 = 2 · 2 · 3 · 3 : ici s = 4, p1 = 2, p2 = 2, p3 = 3 et p4 = 3.
Il y a aussi un aspect d’unicité que nous allons énoncer et montrer plus tard.
Démonstration. Posons P (n) := "il existe un s ≥ 1 et des nombres premiers p1 , . . . , ps tels que
n = p1 p2 · · · ps ".
Début : P (2) est vraie, parce que 2 = p1 ou s = 1 et p1 = 2 est un nombre premier.
Étape d’induction : Soit n ≥ 2 et pour chaque 2 ≤ a ≤ n on suppose P (a) vraie.
Si n + 1 est premier, alors n + 1 = p1 avec s = 1 et p1 = n + 1 premier ; ce qui montre que
P (n + 1) est aussi vraie.
Si n + 1 n’est pas premier, alors il existe un diviseur d > 0 inégal à 1 ou n + 1. Donc il existe
un q tel que n + 1 = dq. Nécessairement 2 ≤ d ≤ n et 2 ≤ q ≤ n. Par l’hypothèse généreuse on a
P (d) et P (q) vraies. Donc d = p1 p2 . . . ps et q = p01 p02 . . . p0s0 où s, s0 > 0 et les pi et p0i des nombres
premiers. Alors n = dq = p1 p2 . . . ps p01 p02 . . . p0s0 est un produit de s + s0 nombres premiers. Donc
P (n + 1) est aussi vraie.
Par le principe d’induction généreuse P (n) est vraie pour chaque entier n ≥ 2.
5.4. Le pgcd et le ppcm. Soient a et b deux entiers. Posons
pgcd(a, b),
le plus grand commun diviseur de a et b, pour le plus grand nombre naturel d qui divise a et b
simultanément. Et posons
ppcm(a, b),
le plus petit commun multiple de a et b, pour le plus petit nombre naturel m qui est un a-multiple
et un b-multiple simultanément.
On dit que a et b sont relativement premier si le pgcd(a, b) = 1.
Si a ≥ 1, alors pgcd(0, a) = a et pgcd(1, a) = 1.
Exemple : pgcd(10, 16) = 2, ppcm(10, 16) = 80. Ici, pgcd(10, 16) ppcm(10, 6) = 10 · 6. Un accident ?
pgcd(10, −21) = 1 donc 10 et −21 sont relativement premier.
Un premier lemme 15 :
15. Voir [R, p. 119]
50
Lemme 5.2. Soit m > 0 et n deux entiers. Par division avec reste il existe des entiers q et r tels
que n = qm + r et 0 ≤ r < m.
Alors pgcd(n, m) = pgcd(m, r). Si r = 0 alors pgcd(n, m) = m.
5.5. L’algorithme d’Euclide. Le lemme suggère un façon de calculer le plus grand commun
diviseur d = pgcd(n, m) par récurrence (m > 0).
Soit n = qm + r et 0 ≤ r < m. Si r = 0 alors d = m et on est prêt avec le calcul.
Sinon 0 < r < m et d = pgcd(m, r). Soit m = q1 r + r1 et 0 ≤ r1 < r. Si r1 = 0, alors
d = pgcd(m, r) = r et on est prêt.
Sinon 0 < r1 < r < m et d = pgcd(r, r1 ). Soit r = q2 r1 + r2 . Si r2 = 0, alors d = pgcd(r, r1 ) = r1
et on est prêt.
Sinon 0 < r2 < r1 < r < m et d = pgcd(r1 , r2 ). Soit r1 = q3 r2 + r3 . Si r3 = 0, alors d =
pgcd(r1 , r2 ) = r2 et on est prêt.
Sinon . . .
Les restes deviennent de plus en plus petit, et après moins que m étapes un reste, disons ri+1 ,
devient 0. Et alors le pgcd est d = ri .
C’est l’algorithme d’Euclide.
Exemple 5.2. Calculons pgcd(1351, 1064) avec l’algorithme d’Euclide 16. On calcule la suite des
restes
1351 = 1 · 1064 + 287
1064 = 3 · 287 + 203
287 = 1 · 203 + 84
203 = 2 · 84 + 35
84 = 2 · 35 + 14
35 = 2 · 14 + 7
14 = 2 · 7 + 0.
Donc ici les restes sont : r = 287, r1 = 203, r2 = 84, r3 = 35, r4 = 14, r5 = 7 et r6 = 0.
Ici : 7 = le dernier reste non-zero = pgcd(1351, 1064).
Et
pgcd(1351, 1064) = pgcd(1064, 287) = pgcd(287, 203) = pgcd(203, 84) =
= pgcd(84, 35) = pgcd(35, 14) = pgcd(14, 7) =
= pgcd(7, 0) = 7
16. Voir aussi [R, p.120]
51
5.6. L’algorithme de Bézout-Euclide. Soient a > b deux nombres naturels. Si b = 0 alors
pgcd(a, b) = 0. Si b 6= 0 il existe nombres naturels q, r tels que a = qb + r et 0 ≤ r < b et
pgcd(a, b) = pgcd(b, r), par lemme 5.2. C’est une étape dans l’algorithme d’Euclide pour calculer
le pgcd(a, b). Nous n’avons par montré ce lemme encore, car nous voulons faire un peu plus !
Lemme 5.3. Soient a > b deux nombres naturels et d = pgcd(a, b).
Si b = 0 alors pgcd(a, b) = a et d = 1 · a + 0 · b.
Si b 6= 0, par division avec reste il existe des entiers q et r tels que a = qb + r et 0 ≤ r < b.
(i) Alors d = pgcd(a, b) = pgcd(b, r).
(ii) Si d = sb + tr, pour deux entiers s, t, alors d = ta + (s − tq)b.
Ou en mots : si on peut écrire d comme une combinaison Z-linéaire de b et r, alors on peut aussi
écrire d comme une combinaison Z-linéaire de a et b.
Démonstration. (i) Soit n ≥ 1 un diviseur de b. Si n|a, alors aussi n|(a − qb) et n|r. par contre si
n|r, aussi d|(qb + r) et n|a. En mots : n est diviseur en commun de a et b si et seulement si n est
diviseur en commun de b et r. En particulier, pgcd(a, b) = pgcd(b, r).
(ii) Par substitution
d = sb + tr = sb + t(a − qb) = ta + (s − tq)b.
Ce lemme nous donne par récurrence un façon de trouver deux entiers s, t tel que sa + tb =
pgcd(a, b). Après avoir utlisé l’algorithme d’Euclide pour calculer le pgcd, on monte du bas vers le
haut.
5.7. Méthode par substitutions. Nous référons au calcul de pgcd(1351, 1064). On avait :
1351 = 1 · 1064 + 287
1064 = 3 · 287 + 203
287 = 1 · 203 + 84
203 = 2 · 84 + 35
84 = 2 · 35 + 14
35 = 2 · 14 + 7
14 = 2 · 7 + 0.
52
Ce qui donne
287 = 1351 − 1 · 1064
203 = 1064 − 3 · 287
84 = 287 − 1 · 203
35 = 203 − 2 · 84
14 = 84 − 2 · 35
7 = 35 − 2 · 14
0 = 14 − 2 · 7.
En commençant par
7 = 35 − 2 · 14,
on monte successivement dans la chaîne des divisions-avec-restes d’Euclide. On substitue le reste
obtenu dans l’étape avant, puis on fait une réarrangement des termes, et on obtient une autre
combinaison Z-linéaire.
En exemple : On substitue 14 = 84 − 2 · 35 dans 7 = 35 − 2 · 14, puis on réarrange, et on obtient
−2·84+5·35. Et on continue. Voir aussi [R, Exemple 1,p. 129], pour cette méthode-par-substitutions.
Explicitement :
7 = 35 − 2 · 14 = 35 − 2 · (84 − 2 · 35) =
= −2 · 84 + 5 · 35 = −2 · 84 + 5 · (203 − 2 · 84) =
= 5 · 203 + (−12) · 84 = 5 · 203 + (−12) · (287 − 203) =
= (−12) · 287 + 17 · 203 = (−12) · 287 + 17 · (1064 − 3 · 287) =
= 17 · 1064 + (−63) · 287 = 17 · 1064 + (−63)(1351 − 1064) =
= (−63) · 1351 + 80 · 1064.
En effet (−63) · 1351 + 80 · 1064 = −85113 + 85120 = 7 est la combinaison Z-linéaire cherchée.
5.8. Méthode de Bézout. Nous préférons une autre méthode. Cette méthode commence en haut
avec deux combinaisons Z-linéaire triviales. On descend à droite du "=" selon l’algorithme d’Euclide,
et on fait les mêmes soustractions à gauche du "=", pour maintenir le =.
En exemple : On commence avec les deux combinaisons Z-linéaires de 1351 et 1064 triviales :
1 · 1351 + 0 · 1064 = 1351
0 · 1351 + 1 · 1064 = 1064
53
Parce que 287 = 1351 − 1064 on a aussi
287 = 1351 − 1064
= [1 · 1351 + 0 · 1064] − [0 · 1351 + 1 · 1064]
= (1 − 0) · 1351 + (0 − 1) · 1064.
D’où une autre combinaison Z-linéaires de 1351 et 1064 :
1 · 1351 + 0 · 1064 = 1351
0 · 1351 + 1 · 1064 = 1064
1 · 1351 + (−1) · 1064 = 287
Parce que 1064 − 3 · 287 = 203 on a aussi
203 = 1064 − 3 · 287
= [0 · 1351 + 1 · 1064] + (−3) · [1 · 1351 + (−1) · 1064]
= (0 − 3) · 1351 + (1 + (−3)(−1)) · 1064.
D’où
1 · 1351 + 0 · 1064 = 1351
0 · 1351 + 1 · 1064 = 1064
1 · 1351 + (−1) · 1064 = 287
(−3) · 1351 + (4) · 1064 = 203
On répète et on obtient :
1 · 1351 + 0 · 1064 = 1351
0 · 1351 + 1 · 1064 = 1064
1 · 1351 + (−1) · 1064 = 287
(−3) · 1351 + (4) · 1064 = 203
(4) · 1351 + (−5) · 1064 = 84
(−11) · 1351 + (14) · 1064 = 35
(26) · 1351 + (−33) · 1064 = 14
(−63) · 1351 + (80) · 1064 = 7
Et voilà : la dernière ligne qui correspond au dernier reste non-zéro donne notre réponse : on a
écrit le pgcd(a, b) comme une combinaison Z-linéaires de a et b. Je vois cet algorithme (appelé
l’algorithme de Bézout) comme l’algorithme de Euclide (la partie droite du "=") renforcé par de
l’administration ( (la partie gauche du "=") . Ça donne aussi une preuve constructive du théorème
54
suivant de Bézout ! C’est presque toujours le cas : si on doit calculer quelque chose avec des entiers,
l’algorithme de Bézout/Euclide joue un role.
Théorème 5.6 (Bézout). Soient n, m deux entiers avec d = pgcd(n, m).
Alors il existe des entiers s, t tel que sn + tm = d.
Démonstration. Sans perte de généralité on peut supposer que n et m sont des nombres naturels.
Si m = 0, alors 1 · n + 0 · m = d, si n ≥ 0 et −1 · n + 0 · m = d, si n < 0. Et le résultat est vrai.
Si m > 0 : l’algorithme de Bézout fonctionne pour calculer tels s et t.
Remarque. On peut aussi donner une preuve par induction. Faire ça !
Une variation en terme d’existence de solutions entières des équations linéaires.
Théorème 5.7. Soient a, b, c trois nombres entiers. Posons d = pgcd(a, b).
Considérons l’équation
ax + by = c.
Il est possible de résoudre cette équation avec des entiers (c.-à-d. de trouver deux entiers x et y tels
que l’équation est satisfaite) si et seulement si d|c.
Démonstration. Supposons deux entiers x, y existent tels que ax + by = c. On a d|a et d|b donc
aussi d|(ax + by) et nécessairement d|c.
Par contre, supposons d|c. Alors il existe un entier n tel que c = dn. Par le théorème de Bézout
ils existent deux entiers s, t tels que d = as + bt donc c = dn = a(sn) + b(tn). Et on voit que le pair
x = sn et y = tn forme une solution de l’équation.
Remarque. En algèbre linéaire on étudie la question si (et comment) on peut résoudre les équations
linéaires, si les coefficients et les solutions sont éléments d’un corps, par exemple Q. Par exemple
avec la méthode de Gauss il est essentiel qu’on peut diviser. Dans notre cas nos coefficients et
solutions doivent être dans Z, qui n’est pas un corps (car on ne peut pas diviser en général).
Pour notre équation on peut facilement trouver une solution dans Q généralement. Par exemple
si a 6= 0, prends pour y un entier quelconque, et puis pour x = c−by
a . Mais il faut bien choisir y
pour que x ∈ Z aussi, et ça n’est pas toujours possible.
Remarque. Soient a, b, c trois entiers. Posons d = pgcd(a, b). Considérons l’équation ax + by = c, et
supposons d|c
(i) Le théorème nous dit seulement qu’il y a une solution entière. Mais la preuve nous donne la
suggestion comment trouver une solution :
Commence par trouver deux nombres entiers n, m tels que an + bm = d, par l’algorithme de
Bézout/Euclide. Il existe un entier q tel que qd = c. Donc a(qn) + b(qm) = qd = c, et on peut
prendre x = qn et y = qm.
(ii) Il y a d’autres solutions que la solution (x, y) trouvée dans (i). Il existe deux entiers a0 et
b0 tels que a0 d = a et b0 d = b, et xa0 + yb0 = 1 (donc pgcd(a, b) = 1) (pourquoi ?). Soit h ∈ Z
quelconque. Posons x0 = x + b0 h et y 0 = y − a0 h. Alors
ax0 + by 0 = a(x + b0 h) + b(y − a0 h) = ax + by + (a0 db0 h − b0 da0 h) = c;
alors (x0 , y 0 ) est aussi une solution entière de l’équation.
55
Exemple 5.3. L’équation 1351x + 1064y = 29 n’a pas de solution entière, car pgcd(1064, 1351) = 7
ne divise pas 29.
L’équation 1351x + 1064y = 21 a une solution entière, car pgcd(1064, 1351) = 7 divise 21.
Heureusement nous savons déjà
(−63) · 1351 + 80 · 1064 = 7,
donc
(−63 · 3) · 1351 + (80 · 3) · 1064 = 7 · 3 = 21,
et la couple x = −189 et y = 240 est une solution.
On a 1351 = 7 · 193 et 1064 = 7 · 152. Donc pour chaque entier h ∈ Z le couple x = −189 + h · 152
et y = 240 − h · 193 est aussi une solution.
Par exemple, h = 1 : x = −37 et y = 47, car
1351 · (−37) + 1064 · 47 = −49987 + 50008 = 21.
5.9. Conséquences théoriques et pratiques. Sans doute vous connaissez la propriété suivante
d’un nombre premier p : Si p divise un produit de deux nombres entiers, alors p divise l’un ou l’autre
(ou tous les deux). Aussi, vous savez probablement que chaque nombre naturel est le produit de
nombres premiers, et que ce produit est essentiellement unique. Est-ce que vous avez jamais vu une
preuve de ces résultats (autre que "le prof (ou le livre) le dit, donc c’est vrai") ?
Pour montrer ces résultats il faut utiliser le théorème de Bézout ! ! Je ne connais aucune autre
méthode. Donc c’est déjà une raison pourquoi ce théorème est très important et utile, et mérite
d’être bien connu par vous.
Théorème 5.8. (i) Soient a, b, c trois entiers tels que a|bc et pgcd(a, b) = 1. Alors a|c.
(ii) Soit p un nombre premier tel que p|bc. Alors p|b ou p|c.
Démonstration. (i) Voir aussi [R, p.130, lemme 1]. Par le théorème de Bézout, th. 5.6, ils existent
deux entiers s, t tels que sa + tb = 1. Donc on a aussi sac + tbc = c. Par hypothèse il existe aussi
un nombre entier u tel que au = bc. Donc en substituant on obtient c = sac + tau = (sc + tu)a, ce
qui montre que a|c.
(ii) Si le nombre premier p ne divise pas b alors le plus grand diviseur en commun est 1. Donc
l’hypothése de (i) est satisfaite et on peut conclure.
Avec plus de facteurs :
Corollaire 5.2. Si p est un nombre premier tel que p|(n1 n2 . . . ns ). Alors il existe un i (1 ≤ i ≤ s)
tel que p|ni .
Voir aussi [R, p.130, lemme 2].
Exercice 5.1. Soient a, b, c trois entiers. Posons d = pgcd(a, b) ; il y a donc deux entiers a0 , b0 tels
que a0 d = a, b0 d = b. Et supposons d|c. Supposons aussi ax + by = c, et ax0 + by 0 = c pour deux
pairs d’entiers (x, y) et (x0 , y 0 ). Utiliser le théorème pour montrer qu’il existe un entier h ∈ Z tel
que (x0 − x) = b0 h et (y 0 − y) = −a0 h.
Pourquoi peut-on conclure que la méthode de la remarque précédente produit tous les solutions
entières de l’équation ax + by = c ?
56
5.10. Factorisation unique. N’importe quel nombre naturel n > 1 s’écrit comme un produit
de nombres premiers, disons n = p1 p2 . . . ps , comme nous avons déjà montré avec une preuve par
induction généreuse. Aprés un réarrangement des facteurs, si nécessaire, on peut supposer que
p1 ≤ p2 ≤ p3 ≤ . . . ≤ ps .
Après, l’expression devient unique. Voir aussi [R, p.105, th. 2 et p.130-131] e
Théorème 5.9. Soit n > 1 un nombre naturel. Si n = p1 p2 . . . ps et n = q1 q2 . . . qt sont deux
factorisations de n comme produits de nombres premiers tels que p1 ≤ p2 ≤ . . . ≤ ps , et q1 ≤ q2 ≤
. . . ≤ qt . Alors s = t et p1 = q1 , p2 = q2 , . . . , ps = qs .
Démonstration. Commençons par remarquer que si n = p1 p2 . . . ps , alors chaque pi est un diviseur
de n. Et si p est un nombre premier, alors p n’a pas de diviseur > 1 sauf p. Donc la seule factorisation
première est trivialement : p = p. Nous allons montrer l’unicité de la factorisation par induction
généreuse.
Le début. Pour n = 2 il n’y a qu’une seule factorisation, car 2 est un nombre premier.
Soit n ≥ 2 et supposons pour chaque 2 ≤ m ≤ n la factorisation première pour m est unique.
Si n + 1 est premier, il y a une seule factorisation, comme déjà remarqué. Supposons n + 1 est
composé et n + 1 = p1 p2 . . . ps = q1 q2 . . . qt sont deux factorisations ordonnées. Les pi et qj sont
tous des nombres premiers qui divisent n. Soit p ≥ 2 le plus petit nombre premier qui divise n.
Alors p|p1 p2 . . . ps implique p = pi pour un i, par cor.5.2. Par minimalité nécessairement p = p1 .
Et de même façon p = q1 . Donc p1 = q1 . Nous avons supposé que n + 1 n’est pas premier, donc si
nous posons m = p2 . . . ps = q2 . . . qt , alors 2 ≤ m ≤ n. Donc par l’hypothèse d’induction, m a une
seule factorization. C’est à dire p2 = q2 , p3 = q3 . . . .. Donc aussi les deux factorisations de n + 1
coïncident.
Par induction généreuse on conclut que l’unicité de la factorisation première est vraie.
Remarque. Soit n > 1 alors on peut aussi écrire uniquement
n = pa11 pa22 . . . pas s ,
où p1 < p2 < . . . < ps sont des nombres premiers et les ai des nombres naturels.
5.11. Une autre manière de calculer le pgcd et le ppcm. En général, trouver une factorisation
première est très laborieux. Mais si on a déjà factorisé n et m on peut facilement calculer pgcd(n, m).
Théorème 5.10. Supposons n = pa11 pa22 . . . pas s , et m = pb11 pb22 . . . pbss , où p1 < p2 < . . . < ps , les
ai ≥ 0 et les bi ≥ 0.
Alors
pgcd(n, m) = pc11 pc22 . . . pcss ,
et
ppcm(n, m) = pd11 pd22 . . . pds s ,
où ci est le minimum de {ai , bi } et di est le maximum de {ai , bi }.
Démonstration. Voir aussi [R, p. 110] Ce résultat suit de l’observation qu’un nombre naturel r =
pe11 pe22 . . . pess divise n si et seulement si e1 ≤ a1 , e2 ≤ a2 , . . . , es ≤ as . (Montrer ça.)
57
Remarque. Probablement on "savait ça" déjà, sans avoir vu une vraie preuve ! Maintenant vous
pouvez utilisez ce résultat à votre guise dans vos propres preuves, car c’est montré. Est-ce que vous
"connaissez" d’autres faits à propos des entiers qui sont encore sans preuve (voir aussi §6.10 plus
tard) ! ?
Exemple 5.4. Par exemple : On a
1064 = 23 · 71 · 191 · 1930 ,
1351 = 20 · 71 · 190 · 1931 ,
pgcd(1064, 1351) = 20 · 71 · 190 · 1930 = 7,
ppcm(1064, 1351) = 23 · 71 · 191 · 1931 = 205352,
205352 · 7 = 1437464 = 1074 · 1351.
Corollaire 5.3. Si n et m sont positifs, alors
n · m = pgcd(n, m) · ppcm(n, m)
Démonstration. Voir aussi [R, p. 111]. Ça suit du théorème, car ai + bi = Min{ai , bi } + Max{ai , bi }.
Donc pour calculer ppcm(n, m) il suffit de calculer pgcd(n, m).
5.12. Vérifier si un nombre est premier. Donné un nombre naturel n > 1, il est un travail
laborieux de tester si n est un nombre premier ou pas. Mais le théorème suivant aide un peu.
Théorème 5.11. Soit n > 1 un nombre naturel tel que p 6 |n pour chaque nombre premier p tel
√
que p ≤ n (ou p2 ≤ n). Alors n est un nombre premier.
Démonstration. Soit n = p1 p2 . . . ps une factorisation, où chaque pi est premier et par hypothèse
p2i > n. Nous allons présenter une preuve par contradiction. Supposons n n’est pas premier, alors
s ≥ 2 et
n2 = p21 p22 . . . p2s > ns ≥ n2 .
Que n2 > n2 est une contradiction. Donc on conclut que n est premier.
Exemple 5.5. Par exemple 193 est premier. Preuve : les nombres premiers ≤
et 13 et aucun divise 193.
√
193 sont 2, 3, 5, 7, 11
5.13. Il existe une infinité de nombres premiers. Nous allons présenter la fameuse preuve
par l’absurde d’Euclide du théorème qu’ll existe une infinité de nombres premiers.
Théorème 5.12. Il existe une infinité de nombres premiers.
Démonstration. Supposons qu’il existe seulement un nombre fini, disons N , de nombres premiers.
Soient p1 , p2 , p3 , . . . , pN ces nombres premiers (parmi eux se trouvent bien sûr 2, 3, 5, 7, 11.)
Considérons le très grand nombre
n = 1 + (p1 · p2 · p3 · · · pN −1 · pN ).
Comme pour chaque nombre naturel, il existe un nombre premier p qui divise n.
58
Ce nombre premier p se trouve nécessairement sur la liste de tous les nombres premiers plus
haut : il existe un 1 ≤ i ≤ N tel que p = pi . Mais n s’écrit comme 1 plus un pi -multiple ; donc pi
ne divise pas n, car il y aura un reste 1 après division par pi .
Alors p divise n ET p = pi ne divise pas n. C’est absurde.
On conclut que l’hypothèse qu’il existe seulement un nombre fini de nombres premiers est fausse !
Le théorème est donc vrai, car c’est l’opposé de cette fausse hypothèse.
√
Remarque. La preuve par l’absurde que 2 n’est pas une fraction était aussi déjà donnée par
Euclide (et autres avant lui), voir[R, ex. 15, p. 164].
5.14. Représenter un entier sur une autre base que 10. Nous avons l’habitude d’écrire les
entiers en forme décimale. Par exemple, 12054 veut dire 4 unités + 5 dix + 0 cent + 2 mille + 1
dix-mille.
12054 = 1 · 104 + 2 · 103 + 0 · 102 + 5 · 101 + 4 · 100 .
On peut aussi utiliser une base autre que 10, par exemple les bases 2 et 16 sont utilisées en
informatique. Voir [R, p. 121, 122].
Soit b > 0 la base choisie, alors on peut écrire n’importe quel nombre naturel n sur la forme
n = [cs cs−1 . . . c1 c0 ]b = cs bs + cs−1 bs−1 + . . . + c1 b1 + c0 b0 ,
et chaque "chiffre" ci est plus petit que b.
Possiblement il faut inventer des notations pour les chiffres ! Par exemple, pour base 16 on utilise
les 16 chiffres
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E
(A = 10, B = 11, C = 12, D = 13, E = 14, F = 15).
Par exemple N = [2AE0B]16 signifie dans notre notation décimale usuelle le nombre
N = 2 · 164 + 10 · 163 + 14 · 162 + 0 · 161 + 11 · 160 = 175627.
Comment écrire un nombre N sur la base b > 1 ? Avec division-avec-reste par b répété !
Par division avec reste il y a q0 et c0 tel que N = q0 b + c0 , et 0 ≤ c0 < b.
Puis il y a q1 et c1 tel que q0 = q1 b + c1 , et 0 ≤ c1 < b.
Puis il y a q2 et c2 tel que q1 = q2 b + c2 , et 0 ≤ c2 < b.
Puis il y a q3 et c3 tel que q2 = q3 b + c3 , et 0 ≤ c3 < b.
Et cetera. On arrête dès que qi devient 0. Alors
N = [cs cs−1 . . . c1 c0 ]b .
Exemple, si b = 16 et N = 357899.
357899 = 22368 · 16 + 11
22368 = 1398 · 16 + 0
1398 = 87 · 16 + 6
87 = 5 · 16 + 7
5 = 0 · 16 + 5
59
Donc
357899 = [5760B]16 .
Exemple 5.6. Soit b > 0 et n = [cs cs−1 . . . c1 c0 ]b . Alors b|n si et seulement si le dernier chiffre c0 est
0. Sur base b = 7 le nombre n = [55563450]7 = 4805661 est divisible par 7. Facile à voir dans la
représentation de base 7 (dernier chiffre est 0) mais pas si facile de voir en forme décimale.
5.15. Conséquences pour Z/mZ. Souvent dans les mathématiques on doit résoudre des équations
linéaires "modulo m". Le suivant est une version "modulo m" du th.5.7.
Théorème 5.13. Fixons trois nombres entiers a, b, m et supposons m > 0. Considérons l’équation
ax ≡m b ou ax ≡ b mod m.
Mettons d = pgcd(a, m). On peut trouver un entier x qui satisfait cette équation si et seulement
si d|b.
Démonstration. Supposons d’abord que pour x ∈ Z on a ax ≡ b( mod m). Alors m|(ax − b) et il
existe un entier c tel que ax − b = cm. On a que d|a et d|m et on conclut que d|(ax − cm) et d|b.
Par contre supposons d|b, donc il existe un entier c tel que b = cd. Par le théorème de Bézout,
th. 5.6, ils existent des entiers s, t tels que sa + tm = d ; et donc aussi csa + ctm = cd = b. Alors
csa − b est divisible par m et
csa ≡m b.
Alors x = cs satisfait l’équation.
Exemple 5.7. La preuve suggère même une méthode pour trouver une solution. Considérons l’équation
1351x ≡ 21 mod 1064
peut-on résoudre modulo 1064 ? Heureusement, nous avons déjà calculé que pgcd(1351, 1074) = 7,
et 7 divise effectivement la partie droite 21 : une solution existe !
Pour trouver une solution, on commence par trouver s, t par la méthode de Bézout, tels que
s1351 + t1064 = 7. Ce que nous avons aussi déjà fait !
(−63) · 1351 + 80 · 1064 = 7
donc en multipliant par 3 :
(−3 · 63) · 1351 + (3 · 80) · 1064 = 3 · 7 = 21
et
(−3 · 63) · 1351 ≡ 21 mod 1064
Donc x = −3 · 63 = −189 est une solution. Si on veut une solution positive on ajoute 1064, c.-à-d.,
x = −189 + 1064 = 875 est aussi une solution.
Par contre l’équation
1351x ≡ 29 mod 1064
on ne peut pas résoudre, car 7 ne divise pas 29 !
60
Corollaire 5.4. Soit m un entier positif, et a, b, c des entiers. Si ac ≡ bc mod m et pgcd(c, m) = 1,
alors a ≡ b mod m.
Démonstration. Voir [R, p.131, Th. 2]. Par Bézout, ils existent s et t tels que sm + tc = 1, donc
tc ≡ 1 mod m. Donc si ac ≡ bc mod m on a aussi atc ≡ btc mod m et a ≡ b mod m.
Remarque. Si a, b, c sont trois entiers et ac = bc. On ne peut pas conclure que a = b, sauf si on sait
que c 6= 0.
Soit m un entier positif, et a, b, c des entiers. Si ac ≡ bc mod m et pgcd(c, m) = 1, alors a ≡
b mod m. On a vraiment besoin de l’hypothèse que pgcd(c, m) = 1. Par exemple : 1 · 2 ≡ 3 · 2 mod 4
mais 1 6≡ 3 mod 4 (et pgcd(2, 4) = 2 6= 1).
5.16. Le petit théorème de Fermat. 17
Théorème 5.14 (Fermat). Soit p un nombre premier et a un entier. Alors
ap ≡p a.
Pour vous c’est seulement une curiosité sans doute. Mais c’est à l’origin de beaucoup d’applications, par exemple pour une communication secure entres les banques.
Nous allons donner la preuve d’Euler plus tard dans le cours.
Exemple 5.8. Le nombre 11 est premier.
1411 ≡11 311 ≡11 32·5+1 ≡11 (9)5 · 3 ≡11 (−2)5 · 3 ≡11 −32 · 3 ≡11 1 · 3 ≡11 3 ≡11 14.
En effet. Nous n’avions pas besoin de calculer 1411 et puis calculer le reste après division par 11. Le
calcul modulaire est beaucoup plus agréable que le calcul ordinaire. Les nombres impliqué restent
petits ! Et ce théorème aide beaucoup pour calculer les hautes puissances.
5.17. La fonction "reste-modulo-m". Soit m > 0 et a un entier. Soit r le reste de a après
division par m. C’est l’unique nombre naturel r tel que m|(a − r) et 0 ≤ r < m. Donc associer r
à a est vraiment une fonction avec domaine Z et avec codomaine les nombres naturels entre 0 et
m − 1. On devrait écrire quelque chose comme
Reste-après-division-par-m(a) = r,
mais pour des raisons historiques on écrit (a mod m) = r, ou même
r = a mod m,
voir aussi [R, p. 111]. Aussi mod est un bouton sur certaines calculatrices, qui calcule le restemodulo-m.
Malheureusement ça introduit possiblement une confusion avec la notation
r ≡ a mod m
pour la relation d’équivalence r ≡m a ! Mais il y a des liens.
On a r = a mod m si et seulement si r ≡ a mod m et 0 ≤ r < m. Et a ≡ b mod m si et
seulement si (a mod m) = (b mod m).
17. Cette sous-section n’est pas obligatoire et ne fait pas partie de la matière examinée.
61
5.18. Le théorème chinois. 18
Exemple 5.9. Un problème très classique est de trouver un nombre N qui est congru à 2 mod 3, à
3 mod 5 et à 2 mod 7 simultanément !
L’idée d’une base de l’algèbre linéaire s’applique ici aussi. Trouvons d’abord un n1 tel que
n1 ≡ 1 mod 3, n1 ≡ 0 mod 5, n1 ≡ 0 mod 7;
puis un n2 tel que
n2 ≡ 0 mod 3, n2 ≡ 1 mod 5, n2 ≡ 0 mod 7;
et un n3 tel que
n3 ≡ 0 mod 3, n3 ≡ 0 mod 5, n3 ≡ 1 mod 7.
Soient a, b, c quelconques et posons n = an1 + bn2 + cn3 , alors
n ≡ a mod 3, n ≡ b mod 5, n ≡ c mod 7.
Donnons les raisons. Par exemple, n1 ≡ 1 mod 3, donc an1 ≡ a mod 3. Puis n2 ≡ 0 mod 3 et
n3 ≡ 0 mod 3, donc (bn2 + cn3 ) ≡ 0 mod 3. Et donc n = an1 + bn2 + cnc ≡ a mod 3. Pareil pour
les deux autres congruences.
Donc il suffit de trouver n1 , n2 et n3 .
On remarque que n1 est multiple de 5 et de 7, donc un multiple de 5 · 7, disons n1 = 5 · 7 · q1 . On
doit encore trouver q1 tel que n1 = 5 · 7 · q1 ≡ 1 mod 3. On a que 5 · 7 = 35 et 3 sont relativement
premier, donc on peut trouver q1 pas Bézout. On voit que q1 = −1 fonctionne, car −35 ≡ 1 mod 3.
Donc prenons n1 = −35.
De façon analogue : prenons n2 = 21 et n3 = 15. Le nombre cherché au début est alors 2n1 +
3n2 + 2n3 = 23. Ce n’est pas la seule solution, parce que par exemple 23 + 3 · 5 · 7 fonctionne aussi.
On obtient du même façon le suivant.
Théorème 5.15 (Théorème Chinois). Soient m1 , m2 , m3 trois nombres naturels positifs, qui sont
deux à deux relativement premier.
(i) ls existent n1 , n2 , n3 tels que
n1 ≡ 1 mod m1 , n1 ≡ 0 mod m2 , n1 ≡ 0 mod m3 ;
n2 ≡ 0 mod m1 , n2 ≡ 1 mod m2 , n2 ≡ 0 mod m3 ;
n3 ≡ 0 mod m1 , n3 ≡ 0 mod m2 , n3 ≡ 1 mod m3 .
Soient a1 , a2 , a3 fois nombres entiers. Alors pour N = an1 + bn2 + cn3 on a
N ≡ a1 mod m1 , N ≡ a2 mod m2 , N ≡ a3 mod m3 .
(ii) Il y a un seul nombre naturel n tel que n ≡ a1 mod m1 , n ≡ a2 mod m2 , n ≡ a3 mod m3 , et
tel que 0 ≤ n < m1 m2 m3 . C’est le reste de N après division par m1 m2 m3 :
n = N mod (m1 m2 m3 ).
18. Cette sous-section n’est pas obligatoire, et ne fait pas partie de la matière examinée.
62
Démonstration. Voir [R, p. 134].
(i) Par hypothèse pgcd(m1 , m2 · m3 ) = 1, donc par Bézout il existe q1 , s1 tels que
q1 m2 m3 + s1 m1 = 1.
Prenons n1 = q1 m2 m3 . Alors n1 ≡ 0 mod m2 , n1 ≡ 0 mod m3 et n1 = 1 − s1 m1 ≡ 1 mod m1 .
On trouve ainsi aussi n2 et n3 . Et parce que bn2 + cn3 ≡ 0 mod n1 et n1 ≡ 1 mod n1 on obtient
N = an1 + bn2 + cn3 ≡ a mod n1 .
Et de même pour les deux autres congruences.
(ii) supposons n ≤ n0 sont deux solutions comme en (ii). Alors pour m = n0 − n on a m ≡
0 mod m1 , m ≡ 0 mod m2 , m ≡ 0 mod m3 , ou m est divisible par m1 , m2 et m3 , donc par leur
plus petit multiple, qui est m1 m2 m3 , car ils sont deux à deux relativement premiers. Mais aussi
0 ≤ n0 − n < m1 m2 m3 , ce qui implique que n = n0 .
125
Département de mathématiques et de statistique, Université de Montréal, C.P. 6128, succursale
Centre-ville, Montréal (Québec), Canada H3C 3J7
E-mail address: [email protected]
Téléchargement