MAT1500–Mathématiques discrètes Matilde N. Lalı́n Université de Montréal http://www.dms.umontreal.ca/~mlalin/mat1500 Le 4 octobre 2016 Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 1 / 30 Le menu d’aujourd’hui Annonces Rappel de 1.6 Fonctions et 2.3 Nombres entiers et division 2.3 Nombres entiers et division (on verra l’arithmétique modulaire plus tard) 2.4 Entiers et algorithmes 2.5 Applications (Théorème de Bézout) Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 2 / 30 Annonces Les disponibilités aujourd’hui et demain Cette semaine je serai disponible les jours suivants : aujourd’hui 12h30-13h30 demain 12h30-14h30 Crystel sera disponible le demain 14h-16h Fabrice sera disponible le demain 15h-17h Noé sera disponible le aujourd’hui 14h-16h Nicolas sera disponible le demain 14h-16h Venez aux disponibilités! Il est presque impossible de répondre à des questions par courriel! Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 3 / 30 Rappel de 1.6 Fonctions Rappel de 1.6 Fonctions Fonction strictement croissante et strictement décroissante (=⇒ injective). Soient A, B, C , D des ensembles tels que B ⊆ C et f : A → B, g :C →D La composition est g ◦ f : A → D. f : A → B bijective ⇐⇒ ∃g : B → A telle que f ◦ g = idB et g ◦ f = idA . g est unique, appelée fonction inverse. Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 4 / 30 Rappel de 2.3 Nombres entiers et division Rappel de 2.3 Nombres entiers et division division et propriétés de base nombres premiers : p ∈ N avec exactement deux diviseurs positifs (1 et p). Le théorème fondamental de l’arithmétique Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 5 / 30 Rappel de 2.3 Nombres entiers et division Théorème fondamental de l’arithmétique Théorème : Pour chaque entier n > 1 il existe un entier s ≥ 1 et des nombres premiers p1 , p2 , . . . ps tels que n = p1 p2 · · · ps (Existence). De plus, le produit est unique, c’est-à-dire, si n = p1 p2 · · · ps = q1 q2 · · · qt où p1 ≤ p2 ≤ · · · ≤ ps et q1 ≤ q2 ≤ · · · ≤ qt sont des premiers, alors s = t et p1 = q1 , p2 = q2 , . . . ps = qs (Unicité). La démonstration sera donnée plus tard. Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 6 / 30 2.3 Nombres entiers et division Trouver le décomposition en des facteurs premiers Exemple : Trouver la décomposition en des facteurs premiers de 2142. 2 | 2142 =⇒2142 = 2 · 1071 3 | 1071 =⇒1071 = 3 · 357 3 | 357 =⇒357 = 3 · 119 7 | 119 =⇒119 = 7 · 17 2142 = 2 · 32 · 7 · 17 Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 7 / 30 2.3 Nombres entiers et division L’infinité des nombres premiers Théorème (Euclide) : Il existe une infinité de nombres premiers. Démonstration : Supposons qu’il existe un nombre fini de nombres premiers, disons N. Soient p1 , p2 , p3 ,...,pN les nombres premiers. Considérons le nombre n = 1 + (p1 · p2 · p3 · · · pN−1 · pN ). Par le théorème fondamental de l’arithmétique, il existe un nombre premier p qui divise n. Il existe 1 ≤ i ≤ N tel que p = pi . Donc, p | n = 1 + (p1 · p2 · p3 · · · pN−1 · pN ) et p | (p1 · p2 · p3 · · · pN−1 · pN ) Par conśequent p | 1. 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. Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 8 / 30 2.3 Nombres entiers et division Comment savoir si un entier est premier Théorème : Si n est un entier composé, alors n a un divisor premier plus √ petit ou égal à n. Corollaire : Si n > 1 est un entier, et que n n’a pas de diviseurs ≤ alors n est premier. √ n, Démonstration du Théorème : Si n composé, alors ∃a, 1 < a < n tel que √ a | n. On peut écrire n = ab avec 1 < a, b < n. Si a, b > n, alors, √ √ ab > n, contradiction. Donc, a ≤ n ou b ≤ n. Sans perte de √ généralité, supposons que a ≤ n. Comme a est produit de nombres premiers, alors ∃p tel que p | a. Comme a | n, on a que p | n et que √ p ≤ a ≤ n. Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 9 / 30 2.3 Nombres entiers et division Comment savoir si un entier est premier Exemple : Prouver que 127 est premier. Réponse : √ 127 ∼ = 11, 27. Comme 2, 3, 5, 7, 11 - 127, on a que 127 est premier. Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 10 / 30 2.3 Nombres entiers et division Plus grand commun diviseur Définition : Soient a, b ∈ Z (a et b n’étant pas égaux à 0 à la fois). Le plus grand commun diviseur de a et b est le plus grand entier d tel que d | a et d | b. Il est noté comme pgcd(a, b). (L’ordre de a et de b n’est pas important, pgcd(a, b) = pgcd(b, a).) Exemple : Les diviseurs positifs de 30 sont: 1, 2, 3, 1, 2, 3, 5, 6, 6, 10, 15, 30. Les diviseurs positifs de 42 sont: 1, 2, 3, 6, 1, 2, 3, 6, 7, 14, 21, 42. Donc pgcd(30, 42) = 6. pgcd(30, 0) = 30. Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 11 / 30 2.3 Nombres entiers et division Nombres premiers entre eux Définition : a, b ∈ Z sont dits premiers entre eux, copremiers ou relativement premiers si pgcd(a, b) = 1. Exemple : Les diviseurs positifs de 10 sont: 1, 1, 2, 5, 10. Les diviseurs positifs de −17 sont: 1, 1, 17. Donc pgcd(10, −17) = 1. 10 et −17 sont premiers entre eux. Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 12 / 30 2.3 Nombres entiers et division Nombres premiers deux à deux Définition : a1 , . . . , an ∈ Z sont dits premiers deux à deux si pgcd(ai , aj ) = 1 lorsque i 6= j. Exemples : 10, −17, 21 sont des premiers deux à deux, car pgcd(10, −17) = pgcd(−17, 21) = pgcd(10, 21) = 1. 6, 7, 10 ne sont pas des premiers deux à deux, car pgcd(6, 10) = 2. Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 13 / 30 2.3 Nombres entiers et division Plus petit commun multiple Définition : Soient a, b ∈ Z, a, b 6= 0. Le plus petit commun multiple de a et b est le plus petit entier positif m tel que a | m et b | m. Il est noté comme ppcm(a, b). (L’ordre de a et de b n’est pas important, ppcm(a, b) = ppcm(b, a).) Exemples : ppcm(30, 42) = 210. ppcm(10, −17) = 170. Nous avions, pgcd(30, 42) = 6, pgcd(10, −17) = 1. ppcm(30, 42) · pgcd(30, 42) = 1260 = 30 · 42, ppcm(10, −17) · pgcd(10, −17) = 170 = |10 · (−17)|. Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 14 / 30 2.3 Nombres entiers et division Comme trouver le pgcd et le ppcm à partir de la factorisation des nombres Écrivons a = p1α1 p2α2 · · · pnαn b = p1β1 p2β2 · · · pnβn où 0 ≤ αi , βi . Attention! Ici, on complète les factorisations en ajoutant des facteurs pi0 de telle manière qu’on a les mêmes premiers dans les deux nombres. C’est la raison pour laquelle on permet aux exposants d’être 0. Exemple : 2142 =2 · 32 · 7 · 17 186 =2 · 3 · 31 2142 =2 · 32 · 7 · 17 · 310 186 =2 · 3 · 70 · 170 · 31 Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 15 / 30 2.3 Nombres entiers et division Comme trouver le pgcd et le ppcm à partir de la factorisation des nombres II Écrivons a = p1α1 p2α2 · · · pnαn b = p1β1 p2β2 · · · pnβn où 0 ≤ αi , βi . Donc min{α1 ,β1 } min{α2 ,β2 } min{αn ,βn } p2 · · · pn pgcd(a, b) = p1 max{α1 ,β1 } max{α2 ,β2 } max{αn ,βn } p2 · · · pn ppcm(a, b) = p1 Exemple : 2142 = 2 · 32 · 7 · 17 · 310 , 186 = 2 · 3 · 70 · 170 · 31 pgcd(2142, 186) = 2 · 3 · 70 · 170 · 310 = 6, ppcm(2142, 186) = 2 · 32 · 7 · 17 · 31 = 66402. Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 16 / 30 2.3 Nombres entiers et division Le produit du ppcm et du pgcd Théorème : Soient a, b ∈ Z>0 . Alors, ppcm(a, b) · pgcd(a, b) = ab. Si a < 0 ou b < 0, on peut écrire la formule avec |ab| du côté droit. Démonstration : Avec la notation de la page précédente, max{α1 ,β1 } max{α2 ,β2 } max{αn ,βn } p2 · · · pn min{α1 ,β1 } min{α2 ,β2 } min{αn ,βn } × p1 p2 · · · pn max{α1 ,β1 }+min{α1 ,β1 } max{αn ,βn }+min{αn ,βn } =p1 · · · pn ppcm(a, b) · pgcd(a, b) =p1 Nous avons prouvé (problème 3.1.19) que ∀x, y ∈ R(max{x, y } + min{x, y } = x + y ). ppcm(a, b) · pgcd(a, b) =p1α1 +β1 p2α2 +β2 · · · p1αn +βn = ab. Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 17 / 30 2.4 Entiers et algorithmes 2.4 Entiers et algorithmes Définition (du chapitre 2.1) : Un algorithme est une procédure qui sert à résoudre un problème à l’aide d’un nombre fini d’étapes. Nous étudierons des différents algorithmes pour les entiers. Ces algorithmes donneront des informations sur les entiers en général. Par exemple, on va développer un algorithme pour trouver le pgcd sans factoriser. Comme factoriser est difficile à faire (pour nous, pour l’ordinateur) en général, cet algorithme est très utile. Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 18 / 30 2.4 Entiers et algorithmes L’algorithme de division Théoreme : Soit a, d ∈ Z avec d > 0. Il existent des q, r ∈ Z uniques tels que 0≤r <d et a = dq + r . q est appelé quotient et r est appelé reste. a est appelé dividende et d est appelé diviseur. Noter que d | a ⇐⇒ r = 0. La démonstration de l’algorithme de division sera donnée plus tard. Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 19 / 30 2.4 Entiers et algorithmes L’algorithme de division - Exemple Exemple : Quels sont le quotient et le reste de 127 divisé par 13? −127 divisé par 13? Matilde N. Lalı́n (U de M) 127 = 13 · 9 + 10 −127 = 13 · (−10) + 3 MAT1500 Le 4 octobre 2016 20 / 30 2.4 Entiers et algorithmes Représentations des entiers Exemple : Prenons un entier positif quelconque. Chaque chiffre représente un nombre de puissances de 10, par exemple, 1975 = 1 · 103 + 9 · 102 + 7 · 10 + 5. Peut-on changer le 10 par un autre entier positif? Théoreme : Soit b ∈ Z, b > 1. Tout entier n ∈ Z>0 peut être écrit de façon unique comme n = ak b k + ak−1 b k−1 + · · · + a1 b + a0 , (1) où k est un entier non négatif et ∀i 0 ≤ ai < b, avec ak 6= 0. Définition : On dit que l’équation (1) est la réprésentation de n en base b. On écrit n = (ak ak−1 . . . a1 a0 )b . Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 21 / 30 2.4 Entiers et algorithmes Comment obtenir la représentation en base b? Démonstration (Existence) : On fait l’algorithme de division plusieurs fois, avec 0 ≤ ai < b. n = bq0 + a0 q0 = bq1 + a1 q1 = bq2 + a2 .. . qk−2 = bqk−1 + ak−1 qk−1 = b0 + ak n = bq0 + a0 = b(bq1 + a1 ) + a0 = b 2 (bq2 + a2 ) + ba1 + a0 .. . = b k−1 (bqk−1 + ak−1 ) + · · · + ba1 + a0 = b k ak + b k−1 ak−1 + · · · + ba1 + a0 . On a n > q0 > . . . et on arrête quand qk = 0. On a ak = qk−1 . Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 22 / 30 2.4 Entiers et algorithmes Exemples en base b 6= 10 Exemples : Si b = 2, on a le système binaire, que les ordinateurs utilisent. (101011011)2 =1 · 28 + 0 · 27 + 1 · 26 + 0 · 25 + 1 · 24 + 1 · 23 + 0 · 22 + 1 · 2 + 1 =(347)10 Si b = 16, on a le système hexadécimale, utilisé aussi en informatique. Les chiffres sont 0, 1, 2, . . . , 9, A, B, C , D, E , F . (2AD1B)16 =2 · 164 + A · 163 + D · 162 + 1 · 16 + B =2 · 164 + 10 · 163 + 13 · 162 + 1 · 16 + 11 =(175387)10 Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 23 / 30 2.4 Entiers et algorithmes Exemples en base b 6= 10 Exemple : Représenter (92)10 dans les systèmes ternaire (b = 3) et hexadécimale. 92 = 30 = 10 = 3= 1= 3 · 30 + 2 3 · 10 + 0 3·3+1 3·1+0 3·0+1 92 = 16 · 5 + 12 5 = 16 · 0 + 5 On a donc (92)10 = (10102)3 = (5C )16 . Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 24 / 30 2.4 Entiers et algorithmes Lemme de base pour l’algorithme d’Euclide Lemme : Soient a et b > 0 deux entiers. Par l’algorithme de division, il existent q, r ∈ Z tels que a = bq + r 0 ≤ r < b. Alors, pgcd(a, b) = pgcd(b, r ). Si r = 0, alors pgcd(a, b) = b. Démonstration : Soit d | a et d | b. Alors, d | r = a − bq. Ainsi, les diviseurs de a et de b divisent aussi r . De même, si d | b et d | r , alors, d | a = bq + r . Ainsi, les diviseurs de r et de b divisent aussi a. Comme les diviseurs communs de a et b sont les mêmes que les diviseurs commus de b et r , on a pgcd(a, b) = pgcd(b, r ). Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 25 / 30 2.4 Entiers et algorithmes L’algorithme d’Euclide Le lemme précédent suggère une façon de calculer le pgcd(a, b) par récurrence. a =bq + r b =r q1 + r1 r =r1 q2 + r2 r1 =r2 q3 + r3 .. . rn−2 =rn−1 qn + rn rn−1 =rn qn+1 On arrête quand rn+1 = 0. Par le lemme précédent, on a que pgcd(a, b) = pgcd(b, r ) = pgcd(r , r1 ) = · · · = pgcd(rn−1 , rn ) = rn . Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 26 / 30 2.4 Entiers et algorithmes L’algorithme d’Euclide - Exemple Exemple : Calculer le pgcd(1351, 1064) avec l’algorithme d’Euclide. 1351 =1064 · 1 + 287 1064 =287 · 3 + 203 287 =203 · 1 + 84 203 =84 · 2 + 35 84 =35 · 2 + 14 35 =14 · 2 + 7 14 =7 · 2 + 0 Donc pgcd(1351, 1064) = 7. Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 27 / 30 2.5 Applications 2.5 Applications - Théorème de Bézout Théorème : Si a, b ∈ Z (a, b n’étant pas égaux à 0 à la fois), alors il existe s, t ∈ Z tels que pgcd(a, b) = sa + tb. Exemple : On a vu que pgcd(1351, 1064) = 7. On a 7 = 1064 · 80 − 1351 · 63. Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 28 / 30 2.5 Applications Théorème de Bézout - Démonstration Démonstration : Si a = 0, b > 0, alors b = pgcd(0, b) = 1 · 0 + 1 · b. Si a = 0, b < 0, alors −b = pgcd(0, b) = 1 · 0 + (−1) · b. Sans perte de généralité on peut supposer que a, b ∈ Z>0 . On fait l’algorithme d’Euclide. a = bq + r b = r q1 + r1 .. . rn−4 rn−3 rn−2 rn−1 = = = = Matilde N. Lalı́n rn−3 qn−2 + rn−2 rn−2 qn−1 + rn−1 rn−1 qn + rn rn qn+1 (U de M) rn = rn−2 − rn−1 qn = rn−2 − (rn−3 − rn−2 qn−1 )qn = rn−2 (1 + qn−1 qn ) − rn−3 qn .. . = as + bt MAT1500 Le 4 octobre 2016 29 / 30 2.5 Applications Exemple du théorème de Bézout Exemple : Écrire 7 = pgcd(1351, 1064) comme combinaison linéaire de 1351 et 1064. 1351 = 1064 = 287 = 203 = 84 = 35 = 14 = 1064 · 1 + 287 287 · 3 + 203 203 · 1 + 84 84 · 2 + 35 35 · 2 + 14 14 · 2 + 7 7·2+0 7= = = = = = = = = = = 35 − 14 · 2 35 − (84 − 35 · 2) · 2 35 · 5 − 84 · 2 (203 − 84 · 2) · 5 − 84 · 2 203 · 5 − 84 · 12 203 · 5 − (287 − 203 · 1) · 12 203 · 17 − 287 · 12 (1064 − 287 · 3) · 17 − 287 · 12 1064 · 17 − 287 · 63 1064 · 17 − (1351 − 1064 · 1) · 63 1064 · 80 − 1351 · 63 7 = 1064 · 80 − 1351 · 63 Matilde N. Lalı́n (U de M) MAT1500 Le 4 octobre 2016 30 / 30