La suite des nombres de Fibonacci est définie par induction. On définit au début : F (0) := 0, F (1) := 1. Étape d’induction : Pour n ≥ 1, si F (0), . . . , F (n) sont déjà définis, on définit F (n + 1) := F (n) + F (n − 1). Ainsi la suite F (n) est définie pour chaque n ∈ N. Par exemple : : F (0) = 0, 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, F (10) = 55, .... Il y a un formule pour F (n) =? MAT1500 1 of 37 Supposons G :N→N est une fonction telle que G(0) = 0, G(1) = 1 et G(n) = G(n − 1) + G(n − 2) pour n ≥ 2. Alors nécessairement F = G. Preuve ? MAT1500 2 of 37 Preuve : Posons P(n) := ”F (n) = G(n)”. Montrons ∀n ∈ N P(n), par induction généreuse. Début : P(0) et P(1) sont vraie, en effet. É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, P(n) vraie pour chaque n ∈ N, c.-à-d., F (n) = G(n) pour chaque n ∈ N. D’où F = G comme fonctions. MAT1500 3 of 37 Montrer aussi : F (n) < 2n pour chaque n ∈ N. Preuve : Posons : P(n) := ”F (n) < 2n ”, n ∈ N, ce qui est à montrer par induction. 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. É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. MAT1500 4 of 37 Soit U un ensemble fini de n éléments. On veut montrer P(U) = 2n par une preuve par induction. Une preuve directe existe aussi : On trouve d’abord une bijection f : P(U) →Fonctions(U, {0, 1}). Et puis.... Brouillon : Si x ∈ U. L’ensemble des sous-ensembles de U qui ne contiennent pas x est vraiment P(U\{x }), et |U\{x }| = n − 1. Puis induction ? Il faut connaître aussi la taille de l’ensemble des sous-ensembles de U qui ne contiennent pas x ..... Une préparation est nécessaire avant de commencer la preuve par induction : MAT1500 5 of 37 Soit U un ensemble non-vide et fixons un élément x ∈ U. Rappelons A := U\A, le complément de A ⊆ U. x ∈ A si et seulement si x 6∈ A. Définissons C1 := {A ∈ P(U)| x ∈ A} et C2 := {A ∈ P(U)| x 6∈ A} et fonctions f1 : C1 → C2 par f1 (A) = A et f2 : C2 → C1 par f2 (A) = A. Lemme Les fonctions f2 et f1 sont bijectives. Corollaire Si U est un ensemble fini, alors |C1 | = |C2 | et |P(U)| = 2|C1 |. MAT1500 6 of 37 Démonstration. (lemme) Par un résultat montré en classe il suffit de montrer que f1 ◦ f2 = 1C2 et f2 ◦ f1 = 1C1 . Si A ∈ C2 , alors x 6∈ A et x ∈ A, donc A ∈ C1 , et f2 est une fonction. Puis (f1 ◦ f2 )(A) = f1 (A) = A = A = 1C2 (A). L’autre identité (f2 ◦ f1 ) = 1C1 est montrée de la même façon. (cor.) On a C1 ∪ C2 = P(U) et C1 ∩ C2 = ∅. Alors |P(U)| = |C1 | + |C2 | − |C1 ∩ C2 | = |C1 | + |C2 |. f2 : C2 → C1 est une fonction bijective, donc si U est fini, alors |C2 | = |C1 | comme déjà montré. MAT1500 7 of 37 Lemme La fonction f3 : P(U\{x }) → C2 définie par f3 (A) := A est bijective. Corollaire Si U est un ensemble fini, alors |P(U\{x })| = |C2 |. Démonstration. Si A ∈ P(U\{x }) alors c’est un sous-ensemble de U qui ne contient pas x , donc c’est un élément de C2 . Et vice versa. Etc. MAT1500 8 of 37 Supposons U un ensemble fini et x ∈ U. Conclusion des deux corollaires : |P(U)| = 2 · |P(U\{x })|. Maintenant nous sommes prêt pour la preuve du théorème : Théorème Soit U un ensemble de n éléments. Alors |P(U)| = 2n . MAT1500 9 of 37 Démonstration. Posons P(n) :="Pour chaque ensemble fini U de n éléments, l’ensemble P(U) a 2n éléments". Montrons P(n) par inductio, n ∈ N. Début (n = 0). U = ∅ est le seule ensemble avec 0 éléments et P(U) = {∅} a 20 = 1 élément. Donc en effet P(0) est vraie. Étape d’induction : Soit n ∈ N et supposons P(n) vraie. Soit U un ensemble avec n + 1 éléments. Choisissons un élément x ∈ U, alors U\{x } a n éléments. Par l’hypothèse d’induction |P(U\{x })| = 2n . Par le résultat avant : |P(U)| = 2|P(U\{x })|. Donc |P(U)| = 2 · 2n = 2n+1 . Alors P(n) implique P(n + 1). Conclusion Par induction le théorème est vrai. MAT1500 10 of 37 Il existe un alternatif pour l’induction : • Principe du bon ordre. Definition Soit m, n deux nombres naturels (ou entiers). On écrit m≤n s’il existe un nombre naturel r ∈ N tel que m + r = n. Definition Soit E ⊆ N un sous-ensemble non-vide de l’ensemble des nombres naturels et m ∈ N. On dit : m est un minimum de E si m ∈ E et m ≤ n pour chaque n ∈ E. MAT1500 11 of 37 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 on peut utiliser le principe du bon ordre. Les deux preuves typiques sont logiquement équivalent. Ça change seulement la formulation ! Le principe du bon ordre se joint souvent avec des arguments par l’absurde. MAT1500 12 of 37 Théorème (Principe du bon ordre) Tout sous-ensemble non vide de N a un minimum. Voilà, c’est tout ! MAT1500 13 of 37 Mais ce n’est pas une des propriétés élémentaires de N, donc il faut le montrer ! Un tel minimum est en fait unique. Lemma (Unicité) Soit E ⊆ N un sous-ensemble non-vide. Alors E a un seul minimum. MAT1500 14 of 37 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 de minimum. Posons P(n) = ”n 6∈ E ” , où n ∈ N. À montrer 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. MAT1500 15 of 37 (Suite de la preuve.) É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, c.-à-d., 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 et nous avons complété l’étape d’induction. MAT1500 16 of 37 (Suite de la preuve.) Conclusion : 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, parce que nous avons supposé E non-vide. Cette fois on conclut que l’hypothèse "E n’a pas un minimum" est faux, et alors E a un minimum ! Fin de la preuve. MAT1500 17 of 37 Un minimum est en fait unique. Lemma (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 . MAT1500 18 of 37 Exemple : ” est vraie pour Montrons p(n) := ”0 + 1 + 2 + . . . + n = n(n+1) 2 chaque n ∈ N par le principe du bon ordre. Soit E le sous-ensemble des n ∈ N tel que p(n) est fausse. On veut montrer que E est vide ! Supposons E n’est pas vide. Par le principe du bon ordre, E a un minimum, disons N. N 6= 0, parce que ... Alors N − 1 ∈ N et N − 1 6∈ E (parce que ...) donc p(N − 1) est vraie : . 0 + 1 + 2 + . . . + (N − 1) = (N−1)N 2 En ajoutant N des deux côtés : 0 + 1 + 2 + . . . + (N − 1) + N = (N−1)N + N = N(N+1) 2 2 et p(N) est vraie, et N 6∈ E . Contradiction. Donc E est vide. MAT1500 19 of 37 Définitions de ≤ et | sur Z. Definition Soient n, m deux entiers. On écrit n ≤ m (ou m ≥ n) s’il existe un r ∈ N tel que n + r = m. Definition Soient n, m deux entiers. On écrit n|m s’il existe un r ∈ Z tel que nr = m. Si n ≤ m on dit "n est plus petit que ou égal à m", ou "m est plus grand que ou égal à n". Si n|m on dit que "n divise m", ou "m est divisible par n". MAT1500 20 of 37 Théorème 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 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). MAT1500 21 of 37 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. MAT1500 22 of 37 (suite). (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. MAT1500 23 of 37 (suite). (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. MAT1500 24 of 37 Exemples : Soit n ∈ Z. • n ∈ N si et seulement si 0 ≤ n. • Toujours : 1|n et n|0. • Si n|a et n|b alors pour tous les entiers r et s on a n|(ra + sb). MAT1500 25 of 37 Pour des entiers a, b, m 6= 0 on définit : a ≡m b si m|(a − b). On dit que a est congru à b modulo m MAT1500 26 of 37 Lemme Soit m ∈ Z. Alors ≡m est une relation d’équivalence sur Z,c.à-d, (i) n ≡m n, (ii) (n1 ≡m n2 ) → (n2 ≡m n1 ), (iii) ((n1 ≡m n2 ) ∧ (n2 ≡m n3 )) → (n1 ≡m n3 ). MAT1500 27 of 37 Démonstration. Il faut vérifier le règlement : (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 . MAT1500 28 of 37 Théorème Soit m ∈ Z. Soient a, b, c, d des nombres entiers. Si a ≡m b et c ≡m d, alors (a + c) ≡m (b + d) et (ac) ≡m (bd). MAT1500 29 of 37 Démonstration. Si a ≡m b et c ≡m d alors il existe r , s entiers tels que mr = (a − b) et ms = (c − d). Donc m(r + s) = (a − b) + (c − d) = (a + c) − (b + d) et (a + c) ≡m (b + d). Et aussi a = b + mr et c = d + ms. Donc ac − bd = (b + mr )(d + ms) − bd = m(rd + bs + mrs), ce qui implique que (ac) ≡m (bd). MAT1500 30 of 37 Une conséquence de la longue division de l’école primaire. Théorème (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. MAT1500 31 of 37 Démonstration. Preuve 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. MAT1500 32 of 37 (suite). 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. MAT1500 33 of 37 (suite). (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. MAT1500 34 of 37 (suite). (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 si 0 ≤ N < 1 et N entier, implique N = 0. Donc q1 = q et r = n − qm = n − q1 m = r1 . MAT1500 35 of 37 Corollaire Soit m > 0 un nombre naturel. Pour chaque n ∈ Z il existe un unique r tel que n ≡m r et 0 ≤ r < m. MAT1500 36 of 37 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 ). MAT1500 37 of 37