L G ité L G lim Faculté des Sciences Appliquées sa ge Algèbre U Deuxième partie Mathématiques discrètes Éric J.M. DELHEZ Juillet 2008 6.1 Ensemble. lim Théorie des ensembles. ité Chapitre 6 U sa ge La théorie des ensembles, d’abord énoncée en 1895 par le mathématicien allemand Georg Cantor (1845-1918), constitue la fondation de la pensée mathématique. En effet, le langage de la théorie des ensembles est utilisé dans tous les domaines des mathématiques. Un ensemble est une collection d’objets distincts, appelés éléments de l’ensemble. Dans ces notes, nous indiquerons les ensembles par des lettres majuscules et les éléments par des lettres minuscules. La relation d’appartenance d’un élément a à un ensemble S s’écrit a∈S (6.1) La négation de a ∈ S s’écrit a 6∈ S. On décrit très souvent un ensemble en donnant la liste de tous ses éléments entre accolades. On dit alors que l’ensemble est défini en extension. E XEMPLE 6.1 L’ensemble des voyelles est décrit par A = {a, e, i, o, u, y} ⋄ E XEMPLE 6.2 La notation {2} désigne un ensemble dont le seul élément est 2. On ne doit cependant pas confondre l’ensemble {2} avec l’élément 2. ⋄ Le principe d’extension affirme qu’un ensemble est complètement défini par ses éléments. Deux ensembles seront donc dits égaux si et seulement s’ils sont constitués des mêmes éléments. Remarquons que l’ordre dans lequel les éléments sont cités ainsi que le fait qu’un même élément soit énuméré à plusieurs reprises sont sans importance. E XEMPLE 6.3 L’ensemble A = {1, 3, 3, 5, 5, 5} est égal à l’ensemble B = {5, 1, 3}, soit A=B ⋄ 176 CHAPITRE 6. THÉORIE DES ENSEMBLES. 177 On peut également définir un ensemble en compréhension, c’est-à-dire en donnant une propriété P(x) qui caractérise les éléments x de cet ensemble. ité E XEMPLE 6.4 La définition en compréhension B = {x|x est un naturel inférieur ou égal à 10} est équivalente à B = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10} ⋄ lim Pour définir un ensemble A en compréhension, il est nécessaire de disposer d’un ensemble de base U parmi les éléments duquel on recherche ceux qui vérifient la propriété P. Cet ensemble U est appelée un univers (ou ensemble universel) 1 . En général, on écrira donc A = {x ∈ U |P(x)} (6.2) ou A = {x|x ∈ U et P(x)} (6.3) U sa ge Dans cette écriture, la barre verticale | (parfois remplacée par “ :”) se lit “tel que”. Les ensembles usuels • N : l’ensemble des naturels = {0, 1, 2, · · ·} • Z : l’ensemble des entiers = {0, 1, −1, +2, −2, · · ·} • Q : l’ensemble des nombres rationnels • R : l’ensemble des nombres réels • C : l’ensemble des nombres complexes apparaissent comme tels ou comme univers en mathématique. Remarquons que l’écriture en extension d’un ensemble n’est possible que si l’ensemble ne contient qu’un nombre limité d’éléments ou si les éléments sont reliés entre eux par un lien logique évident à la vue des quelques premiers éléments de l’ensemble. 1 PARADOXE DE RUSSEL . La définition d’un univers permet d’éviter le paradoxe suivant. La plupart des ensembles ne sont pas des éléments d’eux-mêmes. Par exemple, l’ensemble des entiers n’est pas un entier et l’ensemble des chevaux n’est pas non plus un cheval. Cependant, l’ensemble des idées abstraites est une idée abstraite. Plus généralement, soit A = {X|X est un ensemble et X 6∈ X} La question de savoir si A ∈ A est alors sans réponse puisque les propositions A ∈ A et A 6∈ A sont toutes deux fausses. Si, par contre, on ne définit les ensembles que comme sous-ensembles d’univers, alors le paradoxe disparaı̂t puisque A = {X ∈ U|X 6∈ X} implique alors A 6∈ A. En effet, si A ∈ A, alors A 6∈ A comme élément de A. Par contre, A 6∈ A ne conduit à aucune contradiction mais simplement au fait que A 6∈ U. De façon plus précise encore, on peut développer une théorie des ensembles basée sur une hiérarchie de niveaux T0 , T1 , . . . , Tk , . . . , appelés types. Le type le plus bas, i.e. T0 , correspond aux éléments. À tout autre type Tk correspondent des ensembles constitués d’éléments appartenant au type Tk−1 immédiatement inférieur dans la hiérarchie. Ainsi, dans cette approche, tout ensemble appartient à un et un seul type Tk (k > 0) et, pour tout ensemble A, on a nécessairement A 6∈ A. CHAPITRE 6. THÉORIE DES ENSEMBLES. 178 E XEMPLE 6.5 L’ensemble {1, 3, 5, 7, 9, 11, · · · } désigne manifestement l’ensemble des naturels impairs, soit de façon équivalente k ∈ N} pour ité {n ∈ N|n = 2k + 1 ⋄ L’ensemble qui ne contient aucun élément est l’ensemble vide ou nul. On le représente par φ. Grâce à cette définition, on peut énoncer le principe d’abstraction : lim Étant donné un univers U et une propriété P, il existe toujours un ensemble A dont les éléments sont ceux de U possédant la propriété P. 6.2 Sous-ensemble. Un ensemble A est un sous-ensemble ou une partie d’un ensemble B si tous les éléments de A sont également des éléments de B. Ceci s’écrit A ⊂ B ou B ⊃ A. On dit aussi que A est inclus dans B. Inversement, A n’est pas un sous-ensemble de B si un élément de A au moins n’appartient pas à B. Dans ce cas, on écrit A 6⊂ B. Remarquons que l’on réserve parfois la notation A ⊂ B au cas où A est un sousensemble propre de B, c’est-à-dire si A est un sous-ensemble de B et s’il existe au moins un élément de B n’appartenant pas à A (soit A 6= B). Dans ce cadre, on écrit A ⊆ B pour signaler que A est un sous-ensemble, propre ou non, de B. Nous n’utiliserons pas cette notation dans ces notes. sa ge U E XEMPLE 6.6 Les ensembles N, Z, Q et R définis précédemment vérifient N⊂Z⊂Q⊂R ⋄ D’après la définition d’un sous-ensemble, il est évident que l’on a toujours φ⊂A et A ⊂ A (6.4) On peut également traduire la relation d’égalité entre deux ensembles en termes de sous-ensembles : A=B ⇔ A ⊂ B et B ⊂ A (6.5) Ainsi donc, pour démontrer que deux ensembles sont égaux, on prouvera souvent qu’ils sont des sous-ensembles l’un de l’autre. E XEMPLE 6.7 Pour déterminer si les ensembles A et B définis par A = {n ∈ Z|n = 2p où p ∈ Z} B = {m ∈ Z|m = 2q − 2 où q ∈ Z} CHAPITRE 6. THÉORIE DES ENSEMBLES. 179 sont égaux, on examinera successivement les propositions A ⊂ B et D’une part, si n ∈ A, alors, il existe p ∈ Z tel que B ⊂ A. = 2q − 2 où q = p + 1 ∈ Z. Dès lors, n ∈ B et A ⊂ B. D’autre part, pour tout m ∈ B, il existe q ∈ Z tel que m = 2q − 2 = 2(q − 1) = 2p lim où p = q − 1 ∈ Z de sorte que m ∈ A et B ⊂ A. En conclusion, on trouve donc A = B. ité n = 2p = 2(p + 1) − 2 ⋄ 6.3 Diagramme de Venn. U sa ge Les relations entre des ensembles et les opérations sur ceux-ci peuvent être avantageusement interprétées sur un diagramme de Venn. Un tel diagramme est une représentation graphique des éléments des ensembles par des points dans le plan. L’univers U est représenté (si nécessaire) par l’intérieur d’un rectangle et les autres ensembles par des zones du plan délimitées par des courbes fermées. La construction du diagramme de Venn est régie par les trois règles suivantes : – Si A et B sont disjoints, c’est-à-dire s’ils n’ont aucun élément en commun, les zones représentant A et B sont disjointes. – Si A ⊂ B, la zone représentant A est entièrement contenue dans la zone représentant B. – Si A et B possèdent des éléments en commun (sans que A ⊂ B ni B ⊂ A), alors les zones représentant A et B se chevauchent. E XEMPLE 6.8 La relation entre les ensembles Z, Q et R peut être représentée par Q R Z U F IG . 6.1 ⋄ CHAPITRE 6. THÉORIE DES ENSEMBLES. 180 6.4 Opérations sur les ensembles. 6.4.1 Union et intersection. ité Soient A et B deux ensembles d’un univers U . On peut définir de nouveaux ensembles au moyen des définitions suivantes : – L’union de A et B, notée A ∪B, est l’ensemble de tous les éléments qui appartiennent à A ou à B A ∪ B = {x ∈ U |x ∈ A ou x ∈ B} (6.6) lim – L’intersection de A et B, notée A ∩ B, est l’ensemble des éléments qui appartiennent à la fois à A et à B A ∩ B = {x ∈ U |x ∈ A et x ∈ B} (6.7) – La différence de A et B, notée A\B, est l’ensemble des éléments de A qui n’appartiennent pas à B A\B = {x ∈ U |x ∈ A et x 6∈ B} (6.8) – Le complément2 de A, noté A ou Ac , est l’ensemble des éléments de U qui n’appartiennent pas à A : A = {x ∈ U |x 6∈ A} (6.9) sa ge A∪B A B A∩B A B U A B U U A\B U A B U A F IG . 6.2 2 On dit parfois le complément absolu pour le distinguer de A\B qui est alors appelé le complémentaire relatif de B par rapport à A. Malgré la similitude d’écriture, i.e. A, on évitera de confondre le complément de A avec l’adhérence de A définie en analyse. Le contexte permet en général de lever l’incertitude. CHAPITRE 6. THÉORIE DES ENSEMBLES. 181 Ces opérations possèdent les propriétés suivantes : – Identité : – Domination : A∪φ = A A ∩U = A (6.10) A∩φ = φ A ∪U = U (6.11) A∪A = A A∩A = A (6.12) – Idempotence : – Involution : lim (A) = A – Complémentarité : U =φ A∪B = B∪A (6.13) A∩A = φ (6.14) φ =U (6.15) A∩B = B∩A (6.16) A∪A =U – Commutativité : $ ité ' U sa ge – Associativité : A ∪ (B ∪C) = (A ∪ B) ∪C A ∩ (B ∩C) = (A ∩ B) ∩C (6.17) – Distributivité : A ∪ (B ∩C) = (A ∪ B) ∩ (A ∪C) A ∩ (B ∪C) = (A ∩ B) ∪ (A ∩C) (6.18) – Loi de De Morgan : A∪B = A∩B & A∩B = A∪B (6.19) % Ces différentes lois expriment l’égalité des ensembles situés à gauche et à droite du signe d’égalité. Elles peuvent donc être démontrées en deux étapes en utilisant (6.5). E XEMPLE 6.9 Démontrer la loi de De Morgan A∩B = A∪B a) x ∈ A ∩ B ⇒ x 6∈ A ∩ B ⇒ x ∈ A ou Soit A∩B ⊂ A∪B x ∈ B ⇒ x ∈ A∪B CHAPITRE 6. THÉORIE DES ENSEMBLES. x ∈ A ∪ B ⇒ x ∈ A ou x ∈ B ⇒ x 6∈ A ou ⇒ x 6∈ A ∩ B x 6∈ B ité b) 182 ⇒ x ∈ A∩B Soit A∪B ⊂ A∩B La conjonction de a) et b) établit le résultat. ⋄ lim La méthode la plus simple pour prouver les égalités associées consiste cependant à identifier les ensembles définis par les différentes expressions sur le diagramme de Venn. E XEMPLE 6.10 Reprenons la seconde loi de De Morgan A∩B = A∪B B A U sa ge A∩B U F IG . 6.3 Les deux membres de cette expression identifient la même partie du diagramme de Venn et définissent donc le même ensemble. ⋄ Remarquons que les lois de l’algèbre3 des ensembles peuvent être groupées par paires. Cette constation constitue le fondement de principe de dualité qui établit que lorsqu’une équation E est une identité, l’équation duale E ∗ obtenue en remplaçant respectivement ∪, ∩, U et φ dans E par ∩, ∪, φ et U est également une identité. C’est le cas pour les 3 Le terme ‘algèbre’ désigne ici un ensemble d’éléments, les ensembles dans le cas présent, et les opérations permettant de manipuler ces éléments. D’un point de vue théorique, une algèbre désigne un espace vectoriel E sur un corps K (=R où C) muni d’une loi de multiplication qui en fait un anneau (Cf. section 12.3.6) tel que ∀x, y ∈ E, ∀α ∈ K, α(xy) = (αx)y = x(αy) . CHAPITRE 6. THÉORIE DES ENSEMBLES. 183 A ∪ B ∪C et A ∩ B ∩C sont clairement définis ainsi que n [ Ai n \ Ai i=1 lim A1 ∪ A2 ∪ . . . ∪ An = et ité égalités (6.10) à (6.19) et c’est donc également le cas de toutes les égalités obtenues par application de ces lois. Les opérations ∪ et ∩ peuvent être généralisées pour s’appliquer à un nombre quelconque d’ensembles. En effet, ces opérations étant associatives, les ensembles A1 ∩ A2 ∩ . . . ∩ An = (6.20) (6.21) (6.22) i=1 6.4.2 Parties d’ensembles et produit cartésien. U sa ge Les opérations définies jusqu’ici sur les ensembles donnent pour résultats des ensembles appartenant au même univers que les ensembles de départ, i.e. ils sont formés d’éléments du même type. On peut également définir de nouveaux types d’ensembles. Ainsi, l’ensemble des parties d’un ensemble A (ou puissance de A), noté P (A), est l’ensemble dont les éléments sont les sous-ensembles de A, soit P (A) = {X |X ⊂ A} (6.23) E XEMPLE 6.11 L’ensemble des parties de {0, 1, 2} est {φ, {0}, {1}, {2}, {0, 1}, {0, 2}, {1, 2}, {0, 1, 2}} ⋄ E XEMPLE 6.12 Quel est l’ensemble des parties de l’ensemble vide ? L’ensemble vide a un seul sous-ensemble, lui-même, dès lors P (φ) = {φ} Par contre, P ({φ}) = {φ, {φ}} puisque l’ensemble {φ} comporte deux sous-ensembles, soit φ et l’ensemble {φ} lui-même. Une partition de A est un sous-ensemble {A1 , A2 , . . ., An } de P (A) tel que : • A = A1 ∪ A2 ∪ . . . ∪ An • Les Ai sont mutuellement disjoints, c’est-à-dire tels que ∀i, j ∈ {1, 2, . . ., n} Ai ∩ A j = φ si i 6= j ⋄ CHAPITRE 6. THÉORIE DES ENSEMBLES. 184 Afin de définir une structure de données dans laquelle l’ordre des éléments importe, on définit le produit cartésien de deux ensembles A et B, noté A × B, comme l’ensemble des couples (a, b) où a ∈ A et b ∈ B, soit et b ∈ B} (6.24) ité A × B = {(a, b)|a ∈ A Plus généralement, le produit cartésien des ensembles A1 , A2 . . . An est défini par lim A1 × A2 × · · · × An = {(a1, a2 , . . . , an )|a1 ∈ A1 , a2 ∈ A2 , . . ., an ∈ An } (6.25) Un couple (a, b) et, plus généralement, un n-uple (a1 , a2 , . . ., an ) sont ordonnés, ce qui les distingue des ensembles {a, b} et {a1 , a2 , . . ., an } Deux n-uples sont égaux si et seulement si leurs composantes sont égales, soit (a1 , a2 , . . ., an ) = (b1 , b2 , . . ., bn ) ⇔ ai = bi , ∀i ∈ {1, 2, . . ., n} (6.26) U sa ge E XEMPLE 6.13 Soient A = {1, 2} et B = {a, b, c}, il vient A × B = {(1, a), (1, b), (1, c), (2, a), (2, b), (2, c)} et B × A = {(a, 1), (a, 2), (b, 1), (b, 2), (c, 1), (c, 2)} avec A × B 6= B × A ⋄ Dans le cas particulier où A1 = A2 = · · · = An = A, on écrit An au lieu de A×A×· · · ×A et on dit que An est la nième puissance cartésienne de A. On sera attentif au fait que, par application de la définition du produit cartésien, A0 = {()} = 6 φ et A1 = {(a)|a ∈ A} = 6 A E XEMPLE 6.14 Soit A = {a, b, c}. Il vient • A0 = {()} • A1 = {(a), (b), (c)} • A2 = {(a, a), (a, b), (a, c), (b, a), (b, b), (b, c), (c, a), (c, b), (c, c)} (6.27) ⋄ CHAPITRE 6. THÉORIE DES ENSEMBLES. 185 6.5 Fonction. 6.5.1 Définition. lim ité Une fonction d’un ensemble A vers un ensemble B (non vides) est une loi qui, à tout élément x de A, fait correspondre un et un seul élément y de B. Symboliquement, on écrit f : A → B, x 7→ y = f (x). L’ensemble A est le domaine de f tandis que B en est le co-domaine. L’élément y ∈ B tel que y = f (x) est appelé l’image de x par f . De même, l’image de A est l’ensemble des éléments y de B qui peuvent s’écrire comme l’image d’un élément au moins de A, i.e. f (A) = y ∈ B : ∃x ∈ A tel que y = f (x) (6.28) Le graphe d’une fonction de A vers B est le sous-ensemble du produit cartésien de A et B donné par Gr f = (x, y) : x ∈ A, y = f (x) (6.29) Si f et g sont deux fonctions définies respectivement de A vers B et de B vers C, alors on peut introduire la fonction composée g ◦ f : A → C, x 7→ g[ f (x)] Il est important de remarquer que la définition d’une fonction ne se limite pas à des sous-ensembles A et B de R. On peut définir des fonctions entre n’importe quel type d’ensembles. sa ge U (6.30) E XEMPLE 6.15 SoitA l’ensemble des chaı̂nes de caractères formées d’un nombre quelconque de lettres choisies dans a, b . Le nombre de lettres composant une chaı̂ne de caractères s ∈ A est donné par une fonction f : A → N. ⋄ E XEMPLE 6.16 On peut définir la fonction f : P ({a, b, c}) → N qui à tout sous-ensemble X de {a, b, c} fait correspondre le nombre d’éléments de X . ⋄ 6.5.2 Injection, surjection, bijection. Une fonction injective, ou injection, est une fonction f telle que ∀x1 , x2 ∈ A : x1 6= x2 ⇒ f (x1 ) 6= f (x2 ) (6.31) soit encore f (x1 ) = f (x2 ) ⇔ x1 = x2 (6.32) Une fonction surjective, ou surjection, est une fonction f telle que ∀y ∈ B, ∃x ∈ A : y = f (x) (6.33) Une fonction qui est à la fois injective et surjective est une bijection. On dit aussi qu’elle est bijective. CHAPITRE 6. THÉORIE DES ENSEMBLES. A Fonction surjective B A Fonction bijective B A lim F IG . 6.4 B ité Fonction injective 186 Quel que soit l’ensemble A considéré, la fonction identique 1A telle que 1A : A → A, x 7→ x (6.34) est évidemment bijective. Une fonction f : A → B possède une fonction réciproque à gauche fg−1 : B → A, i.e. une fonction telle que fg−1 ◦ f = 1A i.e. ∀x ∈ A (6.35) si et seulement si elle est injective. De même f possède une fonction réciproque à droite fd−1 : B → A, i.e. une fonction telle que sa ge U fg−1 ( f (x)) = x f ◦ fd−1 = 1B i.e. f ( fd−1 (y)) = y ∀y ∈ B (6.36) si et seulement si elle est surjective. Enfin, f possède une réciproque f −1 : B → A, i.e. une fonction telle que et f −1 ◦ f = 1A i.e. f −1 ( f (x)) = x ∀x ∈ A (6.37) f ◦ f −1 = 1B i.e. f ( f −1 (y)) = y ∀y ∈ B (6.38) si et seulement si elle est bijective. E XEMPLE 6.17 L’opération de codage d’un message avant sa transmission au travers d’un réseau est décrite par une fonction bijective. Un moyen simple de coder un message constitué d’une séquence de 0 et de 1 consiste à copier trois fois chaque bit du message. Ainsi, le message 00101111 deviendrait 000000111000111111111111. Dans ce cas, la fonction de codage f fait correspondre à chaque chaı̂ne de 0 et 1 la chaı̂ne obtenue en écrivant trois fois consécutivement chaque 0 et chaque 1 apparaissant dans le message d’origine. CHAPITRE 6. THÉORIE DES ENSEMBLES. 187 ité La fonction de décodage f −1 fait correspondre à chaque message codé la chaı̂ne de 0 et 1 obtenue en remplaçant chaque groupe de trois bits consécutifs identiques par une seule copie de ce bit. Ce type de transformation permet de corriger les erreurs éventuelles (si elles ne sont pas nombreuses) induites par des interférences dans le canal de transmission de l’information. Il suffit, lorsque trois bits consécutifs ne sont pas identiques, de baser le décodage sur les deux bits identiques. ⋄ 6.6 Ensemble fini, infini et dénombrable. lim Un ensemble A est dit fini si on peut trouver un entier n ∈ N tel que A contient exactement n éléments. Dans le cas contraire, il est dit infini. On appelle cardinal d’un ensemble fini le nombre d’éléments appartenant à cet ensemble. Celui-ci se note |A|. E XEMPLE 6.18 L’ensemble vide et l’ensemble des lettres de l’alphabet sont tous deux finis. Par contre, l’ensemble des entiers est infini. ⋄ On peut étendre le concept de cardinal d’un ensemble à tous les ensembles, qu’ils soient finis ou infinis, en utilisant la définition suivante : Deux ensembles A et B ont le même cardinal si et seulement s’il existe une bijection entre A et B. On dit alors que A et B sont équipotents. ' $ & % sa ge U Cette définition est manifestement compatible avec celle du cardinal d’un ensemble fini non vide. Il suffit en effet de mettre l’ensemble A en bijection avec l’ensemble {1, 2, . . ., n} (où n ∈ N0 ). Le cardinal de l’ensemble infini N0 des naturels strictement positifs est noté ℵ0 4 . Un ensemble A qui est fini ou dont le cardinal est égal à celui de l’ensemble N0 des entiers strictement positifs est appelé dénombrable. Sinon il est non dénombrable. Un ensemble A est donc dénombrable s’il peut être mis en bijection avec N0 ou avec un sous-ensemble de N0 . La bijection est alors une énumération de A. Notons que toute union dénombrable d’ensembles dénombrables est dénombrable.5 Les ensembles dénombrables forment le sujet d’étude essentiel des mathématiques discrètes. E XEMPLE 6.19 L’ensemble des entiers positifs impairs est dénombrable. En effet, la fonction f (n) = 2n − 1 est une bijection de l’ensemble N0 dans l’ensemble considéré. ⋄ 4 “Aleph” 5 Bien est la première lettre de l’alphabet hébraı̈que. qu’intuitivement aisément acceptable, cette proposition n’est pas aisément démontrée. CHAPITRE 6. THÉORIE DES ENSEMBLES. 188 a1 = 0, d11 d12 d13 d14 · · · a2 = 0, d21 d22 d23 d24 · · · lim a3 = 0, d31 d32 d33 d34 · · · .. . ité E XEMPLE 6.20 L’ensemble I de tous les réels compris dans l’intervalle [0, 1] n’est pas dénombrable. L’ensemble I est infini puisqu’il contient 1, 1/2, 1/3, . . .. Si I était dénombrable, alors il existerait une bijection f : N0 → I. Soit a1 = f (1), a2 = f (2), . . . et I = {a1 , a2 , . . .}. Sous forme décimale, les éléments a1 , a2 , . . . s’écrivent où di j ∈ {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}. Formons alors le nombre b = 0, e1 e2 e3 e4 · · · où ( 1 si dii 6= 1 ei = 2 si dii = 1 Alors, b ∈ I mais b 6= a1 car b 6= a3 car b 6= a2 car U sa ge ··· e1 6= d11 e2 6= d22 e3 6= d33 et donc b 6∈ {a1 , a2 , . . .} ce qui est une contradiction. L’hypothèse de départ est donc fausse et I n’est pas dénombrable. ⋄ De la même façon que l’on compare le nombre d’éléments entre deux ensembles finis, on peut également préciser mathématiquement le fait qu’un ensemble infini A possède moins d’éléments qu’un ensemble B. Ainsi, on dira que le cardinal d’un ensemble A est inférieur ou égal au cardinal de l’ensemble B, i.e. |A| ≤ |B| (6.39) lorsqu’on peut construire une injection f : A → B. E XEMPLE 6.21 Soit P l’ensemble des naturels pairs. La fonction f : P → N définie par f (x) = x constitue une injection de P dans N. On écrira donc |P| ≤ |N| ⋄ De même, si A et B sont deux ensembles tels que |A| ≤ |B| et |A| = 6 |B|, on écrira |A| < |B| (6.40) CHAPITRE 6. THÉORIE DES ENSEMBLES. 189 |A| < |P (A)| ité Dans ce cas, il existe une injection de A dans B mais il n’existe pas de bijection entre les deux ensembles. Georg Cantor a démontré que le cardinal d’un ensemble A quelconque est toujours strictement inférieur au cardinal de l’ensemble des ses parties, i.e. (6.41) U sa ge lim On montrera dans la suite qu’il en est bien ainsi dans le cas d’ensembles finis. La propriété est cependant également valable dans le cas d’ensembles infinis6 . 6 Il est aisé de montrer qu’il existe bien une injection de A vers P (A). En effet, à tout élément a ∈ A correspond le singleton {a} ∈ P (A). Dès lors, |A| ≤ |P (A)|. Cantor a aussi démontré qu’il n’existe pas de bijection entre les deux ensembles et que, dès lors, |A| < |P (A)|. ité Chapitre 7 lim Calcul propositionnel et algèbre de Boole. L’ensemble dénombrable le plus simple auquel s’adresse les mathématiques discrètes est celui qui ne contient que deux éléments. En logique, ceux-ci portent les valeurs VRAI et FAUX. En théorie des circuits, ces deux éléments correspondent au circuit fermé et au circuit ouvert. De façon alternative, on peut également utiliser les valeurs 1 et 0. U sa ge 7.1 Propositions et opérateurs logiques. Une proposition est un énoncé, une phrase, une assertion, qui ne peut prendre qu’une des deux valeurs de vérité : VRAI ou FAUX. Par raccourci, nous noterons celles-ci V et F. Dans le contexte plus large de l’algèbre de Boole introduit dans la section 7.8, ces valeurs sont cependant notées respectivement 1 et 0. Si p et q représentent deux propositions, on peut combiner celles-ci pour former une nouvelle proposition au moyen d’opérateurs logiques. La conjonction p ∧ q des propositions p et q est une proposition qui est vraie si p et q sont vraies et fausse dans tous les autres cas. L’opérateur ∧ et appelé l’opérateur et logique et s’énonce simplement ‘et’. Pour représenter la conjonction de deux propositions, on construit la table de vérité : p V V F F q V F V F p∧q V F F F Celle-ci reprend toutes les valeurs possibles de la paire (p, q) et associe à chacune de ces paires la valeur correspondante de p ∧ q. 190 CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. 191 ité La disjonction p ∨ q de deux propositions est fausse uniquement lorsque p et q sont faux : p q p∨q V V V V F V F V V F F F lim Dans l’écriture de la disjonction, l’opérateur ∨ et appelé l’opérateur ou non exclusif et s’énonce simplement ‘ou’. La négation ¬p (prononcez ‘non p’) d’une proposition p est une proposition qui est vraie si p est fausse et fausse si p est vraie : p V F ¬p F V 7.2 Composition de propositions. U sa ge Les opérateurs ∧, ∨ et ¬ peuvent être combinés entre eux pour former des propositions plus complexes dont on peut examiner la valeur en construisant une table de vérité possédant autant d’entrées que de propositions élémentaires formant la proposition complète. En général, on utilise également des colonnes successives de cette table de vérité pour chaque étape élémentaire de la construction de la proposition composée. Deux propositions p et q sont dites logiquement équivalentes lorsqu’elles ont des tables de vérité identiques. On écrira alors p ≡ q. Notons que l’usage de parenthèses est indispensable pour signifier clairement l’ordre de composition des propositions1. E XEMPLE 7.1 L’écriture p ∧ q ∨ r est ambiguë. Il convient d’écrire (p ∧ q) ∨ r ou p ∧ (q ∨ r). On a en effet p V V V V F F F F q V V F F V V F F r V F V F V F V F p∧q V V F F F F F F (p ∧ q) ∨ r V V V F V F V F p V V V V F F F F q V V F F V V F F r V F V F V F V F q∨r V V V F V V V F p ∧ (q ∨ r) V V V F F F F F Ceci prouve que les deux propositions (p ∧ q) ∨ r et p ∧ (q ∨ r) ne sont pas logiquement équivalentes. ⋄ 1 Dans certains cas, on définit des règles hiérarchiques selon lesquelles les différents opérateurs sont appliqués dans l’ordre ¬, ∧, ∨, → (→ est introduit au paragraphe 7.4). CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. 192 7.3 Algèbre de propositions. Pour simplifier les propositions, on peut utiliser les propriétés suivantes qui définissent les règles pratiques de manipulation des propositions. $ ité ' – Identité : p∨F ≡ p p∧V ≡ p (7.1) p∨V ≡ V p∧F ≡ F (7.2) – Domination : lim – Idempotence : p∨ p ≡ p – Involution : p∧ p ≡ p ¬(¬p) ≡ p – Complémentarité : p ∨ ¬p ≡ V ¬V ≡ F (7.3) (7.4) p ∧ ¬p ≡ F (7.5) ¬F ≡ V (7.6) p∧q ≡ q∧ p (7.7) U sa ge – Commutativité : p∨q ≡ q∨ p – Associativité : p ∨ (q ∨ r) ≡ (p ∨ q) ∨ r p ∧ (q ∧ r) ≡ (p ∧ q) ∧ r (7.8) – Distributivité : p ∨(q ∧r) ≡ (p ∨q) ∧(p ∨r) p ∧(q ∨r) ≡ (p ∧q) ∨(p ∧r) (7.9) – Loi de De Morgan : & ¬(p ∨ q) ≡ ¬p ∧ ¬q ¬(p ∧ q) ≡ ¬p ∨ ¬q Ces propriétés sont aisément démontrées en formant les tables de vérité. E XEMPLE 7.2 Démontrons la loi de distributivité p ∧ (q ∨ r) ≡ (p ∧ q) ∨ (p ∧ r) (7.10) % CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. 193 D’une part, on a p V V V V F F F F q V V F F V V F F q∨r V V V F V V V F r V F V F V F V F r V F V F V F V F p∧q V V F F F F F F p∧r V F V F F F F F (p ∧ q) ∨ (p ∧ r) V V V F F F F F Dès lors, les deux tables de vérité étant identiques, l’équivalence logique est démontrée. sa ge U p ∧ (q ∨ r) V V V F F F F F lim D’autre part, il vient q V V F F V V F F ité p V V V V F F F F ⋄ 7.4 Implications logiques. On appelle implication une proposition de la forme “si p alors q” où p et q sont des propositions. Une implication se note p→q (7.11) Les propositions p et q portent le nom, respectivement, d’antécédent et de conséquent. La proposition p → q, comme toutes les propositions, peut être vraie ou fausse. La valeur de vérité de p → q est celle de ¬(p ∧ ¬q), i.e p V V F F q V F V F p→q V F V V Si la proposition p → q est vraie, elle signifie que q est vraie si p est vraie, soit qu’il n’est pas possible que p soit vraie en même temps que q soit fausse. On a (p → q) ≡ (¬(p ∧ ¬q)) ≡ (¬p ∨ q) (7.12) CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. 194 Lorsqu’une implication (p → q) est toujours vraie, on la note p ⇒ q. On dit que p est une condition suffisante de q et que q est une condition nécessaire de p. L’implication q → p est appelée la réciproque de p → q et ¬q → ¬p en est la contraposée. Une implication a toujours la même valeur de vérité que sa contraposée : (p → q) ≡ (¬q → ¬p) ité (7.13) lim Il suffit de former les tables de vérité ou d’utiliser les règles de l’algèbre des propositions. Il vient (¬q → ¬p) ≡ ¬(¬q ∧ ¬¬p) ≡ ¬(¬q ∧ p) ≡ ¬(p ∧ ¬q) ≡ p → q La proposition composée (p → q) ∧ (q → p) est une bi-implication. Elle s’écrit, de façon condensée, p ↔ q, et signifie “p si et seulement si q”. Sa table de vérité est q V F V F U sa ge p V V F F p↔q V F F V Lorsque la proposition p ↔ q est toujours vraie, il y a équivalence entre p et q, ce que l’on note p ⇔ q. On dit aussi que p est une condition nécessaire et suffisante de q (et réciproquement). 7.5 Tautologie et contradiction. Une proposition qui ne prend que la valeur VRAI quelles que soient les valeurs de ses variables est appelée une tautologie. Inversement, une proposition qui est toujours fausse est une contradiction. E XEMPLE 7.3 La proposition p ∨ ¬p est une tautologie. En effet, p V F ¬p F V p ∨ ¬p V V ⋄ CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. 195 p V F ¬p F V p ∧ ¬p F F ité E XEMPLE 7.4 La proposition p ∧ ¬p est une contradiction. En effet, ⋄ Remarquons que la démonstration d’une équivalence p ⇔ q peut être menée en démontrant que p ⇒ q et q ⇒ p ou en transformant successivement les deux propositions formant cette équivalence jusqu’à l’obtention d’une tautologie connue. lim 7.6 Propositions et quantificateurs De nombreuses propositions font usage des quantificateurs existentiel ∃ et universel ∀. Si p(x) désigne une proposition dont la valeur de vérité dépend d’un élément x appartenant à un ensemble E, l’expression ∃x ∈ E : p(x) (7.14) signifie qu’il existe (au moins) un élément x ∈ E tel que la proposition p(x) est vraie. Il s’agit donc d’une écriture simplifiée de la proposition composée U sa ge p(x1 ) ∨ p(x2 ) ∨ p(x3 ) ∨ · · · ∨ p(xn ) où x1 , x2 , x3 . . . , xn représentent tous les éléments de E. La proposition ∀x ∈ E : p(x) (7.15) (7.16) signifie par contre que la proposition p est vraie pour tous les éléments de l’ensemble E. Ceci pourrait également s’écrire p(x1 ) ∧ p(x2 ) ∧ p(x3 ) ∧ · · · ∧ p(xn ) (7.17) où x1 , x2 , x3 . . . , xn représentent tous les éléments de E. Les négations des quantificateurs existentiel et universel s’obtiennent aisément en appliquant la loi de De Morgan aux négations des écritures alternatives (7.15) et (7.17). On a ¬[ ∃x ∈ E : p(x) ] ≡ ∀x ∈ E : ¬p(x) (7.18) et ¬[ ∀x ∈ E : p(x) ] ≡ ∃x ∈ E : ¬p(x) (7.19) De même, la forme alternative (7.15) (resp. de (7.17)) et l’associativité de ∨ (resp. ∧) permettent de justifier l’interversion de quantificateurs d’un même type. Si p(x, y) désigne une proposition dont la valeur de vérité dépend des éléments x et y appartenant respectivement aux ensembles E1 et E2 , on a en effet ∃x ∈ E1 , ∃y ∈ E2 : p(x, y) ≡ ∃y ∈ E2 , ∃x ∈ E1 : p(x, y) (7.20) CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. ∀x ∈ E1 , ∀y ∈ E2 : p(x, y) 196 ≡ ∀y ∈ E2 , ∀x ∈ E1 : p(x, y) (7.21) 6≡ ∀y ∈ E2 , ∃x ∈ E1 : p(x, y) (7.22) ∃x ∈ E1 , ∀y ∈ E2 : p(x, y) ité Par contre, on notera que 7.7 Système de raisonnement formel et méthodes de démonstration. lim Virtuellement, tout théorème mathématique a la forme d’une implication du type (p1 ∧ p2 ∧ · · · ∧ pn ) ⇒ q (7.23) où p1 , p2 , . . ., pn sont les hypothèses et où q est la thèse. Démontrer le théorème consiste à prouver que l’implication est vraie, c’est-à-dire que la proposition (p1 ∧ p2 ∧ · · · ∧ pn ) → q U sa ge est une tautologie. Pour ce faire, il suffit de vérifier que, si les p1 , p2 , . . . , pn sont vraies, alors q est vraie. En effet, si l’une des hypothèses est fausse, alors l’implication est vraie en vertu de la table de vérité de →. Cette partie du raisonnement est toujours omise dans la pratique. En logique, on écrira l’argumentation sous la forme p1 p2 .. . pn ∴q (7.24) où le signe ∴ peut se lire “par conséquent”. Les propositions p1 , p2 , pn sont appelées les hypothèses, antécédents ou prémices tandis que la proposition q est la conclusion ou le conséquent. L’argumentation complète nécessite souvent le recours à des règles d’inférence, c’està-dire à des règles de bases de l’argumentation logique. Toute tautologie de la forme p ⇒ q peut être utilisée comme règle d’inférence. Le tableau de la page suivante donne les règles d’inférence les plus utilisées. CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. ' 197 $ p→q p ∴ q (p → q) ∧ p ⇒ q p→q ¬q ∴ ¬p • Conjonction ∴ p q p∧q lim • Modus tollens ité • Modus ponens (p → q) ∧ ¬q ⇒ ¬p (7.26) (p ∧ q) ⇒ (p ∧ q) (7.27) • Simplification sa ge U (7.25) p∧q ∴ p (p ∧ q) ⇒ p (7.28) p ⇒ (p ∨ q) (7.29) (p ∨ q) ∧ ¬p ⇒ q (7.30) • Addition ∴ p p∨q • Syllogisme disjonctif p∨q ¬p ∴q • Transitivité de l’implication ∴ & p→q q→r p→r (p → q) ∧ (q → r) ⇒ (p → r) (7.31) % CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. 198 lim ité Les règles d’inférence, combinées avec un ensemble d’axiomes, c’est-à-dire de proposition dont la véracité ne peut être établie mais est acceptée a priori, constituent un système de raisonnement formel ou théorie formelle. Établir la preuve formelle d’un théorème, c’est construire une suite de propositions telle que chacune de ces proposition est soit un axiome de la théorie formelle soit peut être déduite des propositions précédentes de la suite. Beaucoup de preuves ne répondent pas à cette définition stricte mais s’appuient sur des hypothèses ou prémices qui sont traités comme des axiomes ; d’une proposition p prise comme hypothèse, on déduit une proposition q. On dit que l’on établit une preuve déductive. Plus précisément, une preuve déductive est une donc suite de propositions telle que chacune de ces proposition est soit un axiome de la théorie formelle, soit une hypothèse, soit peut être déduite des propositions précédentes de la suite. E XEMPLE 7.5 Démontrons que l’implication (p ∨ q) ∧ (p ∨ r) ∧ ¬p → q ∧ r U sa ge est une tautologie. On peut organiser la démonstration de la façon suivante : 1. p ∨ q Prémice 2. p ∨ r Prémice 3. ¬p Prémice 4. q Syllogisme disjonctif (1,3) 5. r Syllogisme disjonctif (2,3) 6. q ∧ r Conjonction (4,5) QED ⋄ E XEMPLE 7.6 Démontrons que l’implication ¬(p ∧ q) ∧ (q ∨ r) ∧ (r → s) → (p → s) est une tautologie. En reprenant l’organisation de la démonstration de l’exemple précédent, on a 1. ¬(p ∧ q) Prémice 2. q ∨ r Prémice 3. r → s Prémice 4. ¬p ∨ ¬q 1 et ¬(p ∧ q) ≡ ¬p ∨ ¬q 5. p Prémice de l’implication (p → s) 6. ¬q Syllogisme disjonctif (4,5) 7. r Syllogisme disjonctif (2,6) 8. s Modus Ponens (3,7) 9. p → s (5,8) QED ⋄ CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. 199 7.7.1 Preuve indirecte. (p → q) ≡ (¬q → ¬p) ité L’équivalence (7.13) i.e. constitue le principe de la démonstration indirecte ou démonstration par l’absurde. Formellement, une démonstration par l’absurde de l’implication p → q est une démonstration de la proposition p ∧ (¬q) → F (7.32) lim Une démonstration par l’absurde d’une proposition quelconque est donc plus aisée que la simple démonstration de sa contraposée. En effet, d’une part, on peut prendre comme hypothèses à la fois p et ¬q et, d’autre part, on a toute liberté de mener la démonstration jusqu’à l’obtention d’une contradiction quelconque. E XEMPLE 7.7 Démontrons par l’absurde que l’implication (p ∨ q) ∧ (p → r) ∧ (q → s) → (¬s → r) est une tautologie. p∨q p→r q→s ¬s ¬r ¬p ¬q q ¬q ∧ q FAUX QED Prémice Prémice Prémice Prémice de l’implication (¬s → r) Prémice pour la démonstration par l’absurde Modus Tollens (2,5) Modus Tollens (3,4) Syllogisme disjonctif (1,6) Conjonction (7,8) Contradiction 9 U sa ge 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ⋄ Le contre-exemple constitue un cas particulier de démonstration indirecte qui peut être utilisé pour démontrer la négation d’une propriété. E XEMPLE 7.8 Soit la proposition 2n − 1 est un nombre premier pour tout entier n ≥ 2. Cette proposition est fausse puisque, pour n = 4, on a 24 − 1 = 15 qui n’est pas premier. ⋄ CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. 200 7.8 Algèbre de Boole. ité Les ensembles et les propositions ont des propriétés semblables. Ceci n’a rien d’étonnant quand on sait qu’ils forment deux cas particuliers de ce que l’on nomme une algèbre de Boole. ' Un ensemble B non vide, deux opérations binaires + et ∗ : (B × B) → B et une opération unaire ′ : B → B forment une algèbre de Boole s’ils sont conformes aux axiomes suivants : $ lim 1) l’opération binaire + est commutative et admet un élément neutre 0, i.e. ∀a, b ∈ B, a + b = b + a (7.33) ∀a ∈ B, a + 0 = a = 0 + a (7.34) 2) l’opération binaire ∗ est commutative et admet un élément neutre 1 différent de 0, i.e. ∀a, b ∈ B, a ∗ b = b ∗ a (7.35) ∀a ∈ B, a ∗ 1 = a = 1 ∗ a (7.36) 3) les opérations binaires + et ∗ se distribuent l’une l’autre, i.e. U sa ge ∀a, b, c ∈ B, a+(b∗c) = (a+b)∗(a+c) a∗(b+c) = (a∗b)+(a∗c) (7.37) 4) b et b′ sont complémentaires, i.e. ∀b ∈ B, b + b′ = 1 et b ∗ b′ = 0 & (7.38) % Une algèbre de Boole est généralement notée (B, +, ∗,′ , 0, 1) en mettant en avant les six composantes de sa définition. Par abus de langage, on dira cependant souvent de l’ensemble B qu’il constitue une algèbre de Boole. Ce raccourci n’est possible que s’il n’y a aucun doute sur les opérations définissant l’algèbre de Boole considérée. E XEMPLE 7.9 Si B = {0, 1} et si on définit les opérations binaires par les tables de Caylay : + 1 0 1 0 1 1 1 0 ∗ 1 0 1 0 1 0 0 0 et l’opération unaire ′ par 0′ = 1 et 1′ = 0, alors B est une algèbre de Boole. ⋄ CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. 201 Comme le montrent les deux exemples suivants, on peut définir une algèbre de Boole sur un ensemble comportant plus de deux éléments. ité E XEMPLE 7.10 L’ensemble P des propositions logiques muni des opérations de conjonction ∧, de disjonction ∨ et de la négation ¬ constitue une algèbre de Boole. Les éléments F et V constituent les éléments neutres pour, respectivement, ∨ et ∧. ⋄ E XEMPLE 7.11 L’ensemble P (A) des parties d’un ensemble A muni des opérations d’union ∪, d’intersection ∩ et de la prise du complémentaire constitue une algèbre de Boole. L’ensemble vide φ et l’ensemble A lui-même constituent les éléments neutres pour, respectivement, ∪ et ∩. ⋄ lim Si (B, +, ∗,′ , 0, 1) désigne une algèbre de Boole quelconque et si C est un sousensemble non vide de B, et si (C, +, ∗,′ , 0, 1) constitue également une algèbre de Boole, alors cette dernière est appelée une sous-algèbre de Boole de (B, +, ∗,′ , 0, 1). À partir d’un sous-ensemble C, on peut donc construire une telle sous-algèbre de Boole si C est stable pour les trois opérations (+, ∗,′ ), i.e. si a + b, a ∗ b et a′ appartiennent à C quels que soient a, b ∈ C. En particulier, les éléments neutres 0 et 1 appartiennent également à C. E XEMPLE 7.12 Si A = {a, b, c} et B = φ, {a, b, c} , on vérifie aisément que (B, ∪, ∩, , φ, A) constitue une sous-algèbre de Boole de (P (A), ∪, ∩, , φ, A). ⋄ U sa ge Deux algèbres de Boole (B, +, ∗, ′ , 0, 1) et (C, ∨, ∧,˚, F, V) sont dites isomorphes s’il existe une bijection f : B → C qui “préserve les trois opérations”, i.e. telle que f (a + b) = f (a) ∨ f (b) f (a ∗ b) = f (a) ∧ f (b) f (a′ ) = f (a)˚ ∀a, b ∈ B (7.39) 7.8.1 Dualité. Le dual d’un énoncé dans une algèbre les substitutions + ∗ 1 0 de Boole B est l’énoncé obtenu en effectuant → → → → ∗ + 0 1 (7.40) Étant donné la symétrie des axiomes de l’algèbre de Boole B, l’ensemble dual des axiomes de B est identique à l’ensemble des axiomes de B. Dès lors : P RINCIPE DE DUALIT É Le dual de tout théorème dans une algèbre de Boole est aussi un théorème. En d’autres termes, si un énoncé quelconque est une conséquence des axiomes d’une algèbre de Boole, alors l’énoncé dual est aussi une conséquence de ces axiomes puisque l’énoncé dual peut être démontré en utilisant, à chaque étape, la forme duale de la preuve de l’énoncé initial. CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. 202 E XEMPLE 7.13 Démontrons que (a ∗ b′ ) + b = a + b (a + b′ ) ∗ b = a ∗ b et ité Ces deux relations sont les duales l’une de l’autre. Leurs démonstrations utilisent les mêmes étapes mais avec, à chaque fois, les relations duales. – D’une part, on a (a ∗ b′ ) + b = (a + b) ∗ (b′ + b) Distributivité = (a + b) ∗ 1 Loi des compléments Neutre de ∗ – D’autre part, on a lim = a+b (a + b′ ) ∗ b = (a ∗ b) + (b′ ∗ b) Distributivité = (a ∗ b) + 0 Loi des compléments = a∗b Neutre de + ⋄ 7.8.2 Propriétés fondamentales. En utilisant les axiomes définissant une algèbre de Boole, on peut démontrer les propriétés suivantes qui sont donc valables quelle que soit l’algèbre de Boole B considérée. ' U sa ge $ Quels que soient les éléments a, b, c ∈ B, 1) Idempotence : a+a = a a∗a = a (7.41) a+1 = 1 a∗0 = 0 (7.42) a ∗ (a + b) = a (7.43) 2) Identités : 3) Absorption : a + (a ∗ b) = a 4) Associativité : a +(b +c) = (a +b) +c = a +b +c a ∗ (b ∗ c) = (a ∗ b) ∗ c = a ∗ b ∗ c (7.44) v. Unicité du complément : Si a + x = 1 vi. Involution : & et a∗x = 0 ′ (a′ ) = a alors x = a′ (7.45) (7.46) % CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. ' 203 $ Quels que soient les éléments a, b ∈ B, vii. Complémentarité des éléments neutres : 1′ = 0 viii. Loi de De Morgan : (a + b)′ = a′ ∗ b′ & (7.47) ité 0′ = 1 (a ∗ b)′ = a′ + b′ (7.48) % 1) Idempotence : lim En raison du principe de dualité, seule la moitié de ces relations doit être démontrée. Il vient a = a ∗ 1 = a ∗ (a + a′) = (a ∗ a) + (a ∗ a′) = (a ∗ a) + 0 = a ∗ a 2) Identités : a ∗ 0 = (a ∗ 0) + 0 = (a ∗ 0) + (a ∗ a′) = a ∗ (0 + a′) = a ∗ a′ = 0 U sa ge 3) Absorption : a ∗ (a + b) = (a + 0) ∗ (a + b) = a + (0 ∗ b) = a + (b ∗ 0) = a + 0 = a 4) Associativité : On démontre d’abord que L = (a ∗ b) ∗ c et R = a ∗ (b ∗ c) sont tels que a +L = a +R. En utilisant la loi d’absorption, on a a + L = a + ((a ∗ b) ∗ c) = (a + (a ∗ b)) ∗ (a + c) = a ∗ (a + c) = a et a + R = a + (a ∗ (b ∗ c)) = a et donc a + L = a + R. De même, on a aussi a′ + L = a′ + R. En effet, a′ + L = a′ + ((a ∗ b) ∗ c) = (a′ + (a ∗ b)) ∗ (a′ + c) = ((a′ + a) ∗ (a′ + b)) ∗ (a′ + c) = (1 ∗ (a′ + b)) ∗ (a′ + c) = (a′ + b) ∗ (a′ + c) = a′ + (b ∗ c) et a′ + R = a′ + (a ∗ (b ∗ c)) = (a′ + a) ∗ (a′ + (b ∗ c)) = 1 ∗ (a′ + (b ∗ c)) = a′ + (b ∗ c) CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. 204 Dès lors, 5) Unicité du complément : ité L = 0 + L = (a ∗ a′) + L = (a + L) ∗ (a′ + L) = (a + R) ∗ (a′ + R) = (a ∗ a′) + R = 0 + R =R a′ = a′ + 0 = a′ + (a ∗ x) = (a′ + a) ∗ (a′ + x) = 1 ∗ (a′ + x) = a′ + x et lim x = x + 0 = x + (a ∗ a′ ) = (x + a) ∗ (x + a′ ) = 1 ∗ (x + a′ ) = x + a′ Dès lors x = x + a′ = a′ + x = a′ . 6) Involution : En raison de la définition du complément, a+a′ = 1 et a∗a′ = 0. Par commutativité, il vient a′ + a = 1 et a′ ∗ a = 0. En raison de l’unicité du complément, a est le complément de a′ soit (a′ )′ = a. U sa ge 7) Complémentarité de 0 et 1 : La définition du neutre pour + donne a + 1 = 1 et donc 0 + 1 = 1. La définition du neutre pour ∗ donne 0 ∗ 1 = 0. En raison de l’unicité du complément, 1 est le complément de 0, soit 1 = 0′ . Par le principe de dualité, 0 = 1′ . 8) Loi de De Morgan : Démontrons que (a + b) + (a′ ∗ b′ ) = 1 et (a + b) ∗ (a′ ∗ b′ ) = 0. On a : (a + b) + (a′ ∗ b′ ) = b + (a + (a′ ∗ b′ )) = b + ((a + a′ ) ∗ (a + b′)) = b + (1 ∗ (a + b′)) = b + (a + b′ ) = b + (b′ + a) = (b + b′ ) + a = 1 + a = 1 (a + b) ∗ (a′ ∗ b′ ) = ((a + b) ∗ a′) ∗ b′ = ((a ∗ a′) + (b ∗ a′)) ∗ b′ = (0 + (b ∗ a′)) ∗ b′ = (b ∗ a′) ∗ b′ = (b ∗ b′) ∗ a′ = 0 ∗ a′ = 0 En vertu de l’unicité du complément, on en déduit que a′ ∗ b′ = (a + b)′ . Toutes ces propriétés peuvent servir de base pour la démonstration d’autres propriétés. CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. 205 7.9 Forme canonique disjonctive. f : Bn → B, ité Dans une algèbre de Boole, on appelle expression booléenne des variables x1 , x2 , . . ., xn toute expression construite à partir de ces variables et des opérateurs booléens ∗, + et ′ . Une telle expression définit donc une fonction booléenne x = (x1 , x2 , . . ., xn ) 7→ f (x) = f (x1 , x2 , . . . , xn ) (7.49) lim des n variables booléennes x1 , x2 , . . . , xn . Pour simplifier l’écriture, nous utiliserons les conventions habituelles régissant les priorités des opérateurs : ′ a priorité sur ∗ qui a lui-même priorité sur +. Nous omettrons également l’écriture de l’opérateur ∗. Introduisons les définitions suivantes : – un littéral est une variable x ou son complément x′ ; – un monôme est un littéral ou le produit de deux ou plusieurs littéraux sans répétition d’une variable ou de son complément ; – un monôme P1 est inclus dans un autre monôme P2 si les littéraux de P1 sont aussi littéraux de P2 . E XEMPLE 7.14 Les expressions booléennes U sa ge xz′ , xy′ z et x sont des monômes. Par contre, xyx′ et xyzy ne sont pas des monômes. Le monôme x′ y est inclus dans x′ yz mais pas dans xy′ z. ⋄ On dit qu’une expression booléenne est écrite sous forme canonique disjonctive si elle est un monôme ou la disjonction d’au moins deux monômes dont aucun n’est inclus dans l’autre. La forme canonique disjonctive est dite totale si chacun des monômes comprend toutes les variables de l’expression (ou leur complément). Ces monômes sont alors appelés des mintermes. E XEMPLE 7.15 L’expression xz′ + x′ yz′ + xy′ z est une forme canonique disjonctive. Ce n’est pas le cas de xz′ + y′ z + xyz′ puisque xz′ est inclus dans xyz′ . ⋄ CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. 206 ité En utilisant les règles de l’algèbre, on peut aisément transformer toute expression booléenne en une forme canonique disjonctive. Il suffit – d’utiliser la loi de De Morgan et l’involution pour déplacer les opérateurs ′ de façon à ce qu’ils ne s’appliquent qu’aux variables ; – d’utiliser la distributivité pour transformer l’expression en une somme de monômes ; – d’utiliser la commutativité, l’idempotence et l’absorption pour regrouper les monômes qui sont inclus l’un dans l’autre. ′ E XEMPLE 7.16 Soit l’expression ((ab)′ c) ((a′ + c)(b′ + c′ ))′ . Il vient d’abord ′ ′ ′ ′ lim ((ab)′ c) ((a′ + c)(b′ + c′ )) = ((ab)′′ + c′ )((a′ + c) + (b′ + c′ ) ) = (ab + c′ )(ac′ + bc) Ensuite, en distribuant, ′ ′ ((ab)′ c) ((a′ + c)(b′ + c′ )) = (ab + c′ )(ac′ + bc) = abac′ + abbc + ac′ c′ + bcc′ = abc′ + abc + ac′ + 0 = abc + (abc′ + ac′ ) = abc + ac′ (b + 1) = abc + ac′ U sa ge qui est une forme canonique disjonctive. On obtient une forme canonique disjonctive totale en remarquant que 1 = b + b′ et donc abc + ac′ = abc + a(b + b′ )c′ = abc + abc′ + ab′ c′ ⋄ L’exemple précédent illustre le théorème suivant (donné sans démonstration) : Toute expression booléenne non nulle peut être écrite de façon unique sous forme canonique disjonctive totale. 7.9.1 Algèbre de Boole et électronique. Les circuits électroniques connaissent seulement deux états différents : circuit ouvert/circuit fermé. Ils sont donc entièrement décrits par l’algèbre de Boole (B, +, ∗,′ , 0, 1) telle que B = {0, 1}, + 1 0 1 1 1 0 1 0 ∗ 1 0 1 1 0 0 0 0 CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. 207 lim ité et 0′ = 1 et 1′ = 0. Examinons le problème de la construction d’un circuit possédant n entrées binaires x1 , x2 , . . ., xn et produisant une sortie binaire y. Les propriétés du circuit que l’on désire construire peuvent être résumées dans une table de vérité présentant l’état de la sortie y désiré selon toutes les entrées possibles x1 , x2 , . . . , xn . Cette table permet de construire l’expression booléenne correspondant au circuit. En effet, chaque ligne de la table de vérité peut être associée univoquement à un minterme égal à la conjonction des variables égales à 1 et du complément des variables égales à 0 dans cette ligne. La sortie est alors représentée par la disjonction de tous les mintermes correspondant à une sortie égale à 1. Puisque toute expression booléenne est entièrement déterminée par sa table de vérité et que tout minterme correspond à une et une seule ligne de cette table, cette construction justifie l’énoncé précédent selon lequel toute expression booléenne admet une et une seule représentation sous forme canonique disjonctive totale. E XEMPLE 7.17 On désire réaliser le circuit électronique à trois entrées x, y, z implémentant la table de vérité suivante : y 0 0 1 1 0 0 1 1 U sa ge x 0 0 0 0 1 1 1 1 z 0 1 0 1 0 1 0 1 f (x, y, z) 0 0 0 0 1 1 0 1 Il vient, directement, f (x, y, z) = xy′ z′ + xy′ z + xyz ⋄ L’expression booléenne ainsi construite peut être réalisée pratiquement en utilisant des composants appropriés correspondants respectivement aux trois opérations de l’algèbre de Boole : ′ , ∗ et +. La figure Fig. 7.1 présente la représentation usuelle des portes logiques habituellement utilisées. On remarque que, en plus des portes logiques AND, OR et NOT correspondant respectivement aux opérations booléennes ∗, + et ′ , on introduit également – le NAND, synonyme de NOT AND, soit (pq)′ = p′ + q′ ; – le NOR, synonyme de NOT OR soit (p + q)′ = p′ q′ ; – le OR Exclusif, p′ q + pq′ . CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. AND pq q p q p NAND NOT p+q q p (pq)′ OR p′ OR Exclusif NOR p (p + q)′ q p ité p 208 lim F IG . 7.1 q p′ q + pq′ Comme on l’a dit précédemment, toute expression booléenne non nulle peut être exprimée sous une forme canonique disjonctive. Elle peut donc s’écrire en fonction des seuls opérateurs booléens ′ , ∗ et +. On dit que ceux-ci constituent un ensemble complet d’opérateurs booléens. 2 Si on tient compte de l’équivalence pq ≡ (p′ + q′ )′ on peut également écrire toute expression booléenne avec les seuls opérateurs ′ et +. Ceux-ci constituent donc également un ensemble complet d’opérateurs. On peut montrer qu’il en est de même de {′ , ∗} et {′ , →}. Enfin, on peut encore montrer que l’opérateur NAND est complet à lui seul. En effet, sa ge U (7.50) p′ ≡ p NAND p pq ≡ (p NAND q) NAND (p NAND q) p + q ≡ (p NAND p) NAND (q NAND q) (7.51) (7.52) (7.53) Tous les opérateurs booléens peuvent donc être exprimés en fonction de NAND uniquement. Il en est de même de l’opérateur NOR. 7.9.2 Expression booléenne minimale. Une même table de vérité peut être représentée par plusieurs expressions booléennes équivalentes. Dans le cadre de la synthèse d’un circuit électronique, il est cependant intéressant de déterminer la représentation la plus simple possible afin d’utiliser un minimum de composants. On utilisera donc les propriétés de l’algèbre booléenne afin de simplifier au maximum les expressions booléennes, i.e. de former une expression booléenne minimale comportant le moins possible de littéraux et de monômes. 2 On notera, par exemple, que l’implication → n’est pas nécessaire puisque p → q ≡ (p′ + q) CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. 209 E XEMPLE 7.18 Dans l’exemple précédent, on a f (x, y, z) = xy′ z′ + xy′ z + xyz = xy′ z′ + x(y′ + y)z = xy′ z′ + xz = x(y′ z′ + z) ité = x(y′ + z) ⋄ E XEMPLE 7.19 On vérifie aisément que xyz′ + xy′ z′ = xz′ (y + y′ ) = xz′ 1 = xz′ lim x′ yzt + x′ yz′ t = x′ yt(z + z′ ) = x′ yt1 = x′ yt Lorsqu’une fonction booléenne ne comporte pas plus de six variables, on peut utiliser la méthode graphique des tableaux de Karnaugh pour identifier les termes à combiner afin de déterminer la représentation la plus simple de cette fonction. Un tableau de Karnaugh est formé d’un nombre de cases égal au nombre maximum de mintermes de l’expression booléenne considérée. Les cases sont agencées de telle façon que deux cases adjacentes correspondent à deux mintermes qui ne diffèrent que d’un littéral qui doit être une variable complémentée dans un minterme et une variable non complémentée dans l’autre. De cette façon, la somme de deux mintermes adjacents est un monôme comportant au moins un littéral. Le principe de la procédure est de traduire dans le tableau de Karnaugh l’expression booléenne à simplifier en portant un 1 dans les cases correspondant aux mintermes présents dans le développement de cette expression puis d’identifier et de regrouper des blocs rectangulaires (qui peuvent se chevaucher) les plus grands possibles composés de 2k (k ∈ N) cases adjacentes. sa ge U ⋄ E XEMPLE 7.20 Soit à simplifier l’expression booléenne xy′ + x′ y + x′ y′ . Il vient y′ x 1 x′ 1 y 1 F IG . 7.2 Le diagramme de Karnaugh comporte deux paires de cases adjacentes. La paire verticale représente y′ et la paire horizontale représente x′ . La forme minimale est donc x′ + y′ . ⋄ CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. 210 E XEMPLE 7.21 Soit à simplifier l’expression booléenne xy′ + x′ y. Il vient y′ 1 x′ ité x y 1 lim F IG . 7.3 Le diagramme de Karnaugh ne comporte que des cases isolées. La forme minimale est donc xy′ + x′ y. ⋄ Dans le cas de trois variables, il y a 8 mintermes différents possibles3. Ceux-ci sont représentés par 8 cases formant un rectangle de 2 lignes et 4 colonnes. Dans cette construction, on doit cependant considérer que les cases de la première colonne sont adjacentes aux cases de la dernière colonne (La représentation idéale de cette situation demande de dessiner le tableau sur la surface latérale d’un cylindre). E XEMPLE 7.22 Soit à simplifier xyz + xyz′ + xy′ z + x′ yz + x′ y′ z. yz′ U sa ge yz x 1 x′ 1 y′ z′ 1 y′ z 1 1 F IG . 7.4 Le tableau de Karnaugh fait apparaı̂tre 2 blocs de cases adjacentes, soit xyz + xyz′ + xy′ z + x′ yz + x′ y′ z = (xyz + xyz′ ) + (xyz + xy′ z + x′ yz + x′ y′ z) = xy + z ⋄ Dans le cas de quatre variables, il y a 16 mintermes différents possibles. Ceux-ci sont représentés par 16 cases formant un carré de 4 lignes et 4 colonnes. Dans cette construction, on doit considérer que les cases de la première colonne sont adjacentes aux cases de la dernière colonne et que celles de la première ligne sont adjacentes à celles de la dernière ligne. 3 En général, pour n variables, on peut former 2n mintermes différents. CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. 211 E XEMPLE 7.23 Simplifions l’expression suivante yz yz′ wx wx′ 1 1 1 1 1 1 y′ z lim w′ x′ y′ z′ ité E = wxy′ z′ + wx′ yz + wx′ yz′ + wx′ y′ z′ + w′ xy′ z′ + w′ x′ yz′ + w′ x′ y′ z′ w′ x 1 F IG . 7.5 En formant le tableau de Karnaugh, on identifie trois blocs, de telle sorte que U sa ge E = y′ z′ + x′ z′ + wx′ y ⋄ Pour 5 et 6 variables, il est encore possible de construire des tables de Karnaugh. Cependant, la représentation graphique est alors nécessairement tridimensionnelle. 7.10 Exercices. 1) Trouvez la table de vérité de ¬p ∧ q 2) Trouvez la table de vérité de ¬(p ∧ q) q 0 1 0 1 p 0 Rép. : 0 1 1 p 0 Rép. : 0 1 1 q 0 1 0 1 ¬p ∧ q 0 1 0 0 ¬(p ∧ q) 1 1 1 0 CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. 3) Trouvez la table de vérité de ¬(p ∧ ¬q) q 0 1 0 1 ¬(p ∧ ¬q) 1 1 0 1 ité p 0 Rép. : 0 1 1 212 4) Vérifiez que la proposition p ∨ ¬(p ∧ q) est une tautologie. 5) Vérifiez que la proposition (p ∧ q) ∧ ¬(p ∨ q) est une contradiction. 6) Démontrez que la disjonction est distributive par rapport à la conjonction, c’est-àdire, démontrez la loi de distributivité : p ∨ (q ∧ r) ≡ (p ∨ q) ∧ (p ∨ r) 8) Simplifiez : a) ¬(p ∧ ¬q), b) ¬(¬p ∨ q), c) ¬(¬p ∧ ¬q) d) p ∧ (p ∨ q). lim 7) Démontrez que l’opération de disjonction peut être écrite en fonction des opérations de conjonction et de négation, en particulier que p ∨ q ≡ ¬(¬p ∧ ¬q) Rép. : a) ¬p ∨ q; b) p ∧ ¬q; c) p ∨ q; d) p U sa ge 9) Démontrez les équivalences suivantes en utilisant les lois de l’algèbre des propositions : a) (p ∧ q) ∨ ¬p ≡ ¬p ∨ q, b) p ∧ (¬p ∨ q) ≡ p ∧ q 10) Trouvez la table de vérité de chaque proposition : a) (¬p ∨ q) → p, b) q ↔ (¬q ∧ p) p 0 Rép. : a) 0 1 1 p 0 b) 0 1 1 q (¬p ∨ q) → p 0 0 1 0 0 1 1 1 q q ↔ ¬q ∧ p 0 1 1 0 0 0 1 0 11) Trouvez la table de vérité de chaque proposition a) (p ↔ ¬q) → (¬p ∧ q), b) (¬q ∨ p) ↔ (q → ¬p) CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. q (p ↔ ¬p) → (¬p ∧ q) 0 1 1 1 0 0 1 1 q (¬q ∨ p) ↔ (q → ¬p) 0 1 1 0 0 1 1 0 12) Démontrez les équivalences suivantes ≡ (∃x ∈ E : p(x)) ∨ (∃x ∈ E : q(x) ) lim a) (∃x ∈ E : [ p(x) ∨ q(x) ] ) ité p 0 Rép. : a) 0 1 1 p 0 b) 0 1 1 b) (∀x ∈ E : [ p(x) ∧ q(x) ] ) c) (∃x ∈ E : [ p(x) → q(x) ] ) ≡ ≡ (∀x ∈ E : p(x)) ∧ (∀x ∈ E : q(x) ) (∀x ∈ E : p(x)) → (∃x ∈ E : q(x)) 13) Trouvez une forme minimale des expressions booléennes suivantes : a) x′ yz + x′ y′ z b) xyz + xyz′ + x′ yz + x′ yz′ c) xyz′ + xy′ z + xy′ z′ + x′ yz + x′ y′ z d) xyz + xy′ z + xy′ z′ + x′ yz + x′ yz′ + x′ y′ z′ e) wxyz + wxy′ z + wxy′ z′ + wx′ yz′ + wx′ y′ z f) wxyz′ + wxy′ z + wx′ yz + w′ xy′ z + w′ x′ yz′ + w′ x′ y′ z sa ge U 213 g) wxyz + wxyz′ + wxy′ z + wx′ y′ z + w′ xy′ z + w′ x′ yz′ + w′ x′ y′ z h) wxyz + wxyz′ + wxy′ z + wx′ yz + wx′ yz′ + w′ xyz + w′ x′ yz + w′ x′ yz′ + w′ x′ y′ z i) xy′ + xyz + x′ y′ z′ + x′ yzt ′ j) xy + x′ y + x′ y′ k) x + x′ yz + xy′ z′ l) y′ z + y′ z′t ′ + z′t m) y′ zt + xzt ′ + xy′ z′ Rép. : a) x′ z b) y c) x′ z + xz′ + y′ z ou xz′ + xy′ + x′ z d) yz + xy′ + x′ z′ ou xz + y′ z′ + x′ y e) wxz + wxy′ + wy′ z + wx′ yz′ f) wxyz′ + wx′ yz + w′ x′ yz′ + xy′ z + w′ y′ z g) y′ z + wxy + w′x′ yz′ h) wy + x′ y + yz + wxz + w′x′ z i) xz + y′ z′ + yzt ′ j) x′ + y k)x + yz l) y′ + z′t m) xy′ + y′ zt + xzt ′ . Les réponses ne sont pas toujours uniques. CHAPITRE 7. CALCUL PROPOSITIONNEL ET ALGÈBRE DE BOOLE. 214 ité 14) Soit un jeu TV impliquant trois candidats. Chacun dispose d’un bouton lui permettant d’exprimer sa réponse aux questions posées par l’animateur. Tous les candidats sont obligés de répondre par oui ou par non. Un affichage général présente l’avis de la majorité des candidats. – Écrivez une table de vérité pour le système d’affichage. lim x 1 1 1 Rép. : 1 0 0 0 0 y 1 1 0 0 1 0 1 0 z 1 0 1 0 1 1 0 0 f (x, y, z) 1 1 1 0 1 0 0 0 – Exprimez l’affichage sous forme canonique disjonctive totale. Rép. : f (x, y, z) = xyz + xyz′ + xy′ z + x′ yz – Formez une expression booléenne minimale de l’affichage. U sa ge Rép. : f (x, y, z) = xy + xz + yz ité Chapitre 8 lim Les entiers. U sa ge La partie des mathématiques discrètes traitant des entiers et de leurs propriétés appartient au vaste domaine de la théorie des nombres. L’ensemble des naturels joue un rôle fondamental en mathématiques discrètes. En effet, tout ensemble dénombrable A pouvant être mis en bijection avec N0 , les opérations sur les éléments d’un tel ensemble peuvent être effectuées par des opérations correspondantes sur N0 . D’autre part, les propriétés particulières de l’ensemble N sont à la base d’un mode de preuve largement utilisé en mathématiques, à savoir la preuve par induction ou par récurrence. 8.1 Principe d’induction mathématique. Tous les éléments de N peuvent être comparés deux à deux au moyen de la relation d’ordre naturel “inférieur ou égal” notée ≤. On dira dans la suite que l’ensemble N est totalement ordonné. L’ensemble N est également dit bien ordonné par la relation ≤ car P RINCIPE DU BON ORDRE Tout sous-ensemble non-vide A ⊂ N contient un plus petit élément, c’est-àdire un élément a ∈ A tel que a ≤ x pour tout x ∈ A. Cette propriété distingue nettement l’ensemble N des ensembles Z et Q+ , par exemple. En effet, les sous-ensembles {0, −1, −2, −3, . . .} ⊂ Z et {1, 1/2, 1/3, . . .} ⊂ Q+ ne contiennent pas de plus petit élément. 215 CHAPITRE 8. LES ENTIERS. 216 ' P RINCIPE D ’ INDUCTION MATH ÉMATIQUE Soit P(n) une proposition définie sur l’ensemble des naturels N. Soit n0 un naturel fixé. Si ité i. cas de base : P(n0 ) est vraie, $ ii. cas inductif : pour tout n ≥ n0 , si P(n) est vraie (hypothèse d’induction) alors P(n + 1) est vraie, alors P(n) est vraie pour tout naturel n ≥ n0 . & % lim Ce principe est parfois posé comme l’un des axiomes de la définition axiomatique de N. On peut cependant démontrer le principe d’induction mathématique par l’absurde. Supposons que l’ensemble F = m ∈ N : m ≥ n0 , P(m) est fausse des valeurs pour lesquelles la proposition est fausse ne soit pas vide. Alors, en vertu du principe du bon ordre, F possède un plus petit élément m0 . Cet élément est nécessairement strictement supérieur à n0 puisque P(n0 ) est vraie. Donc m0 − 1 ≥ n0 et P(m0 − 1) est vraie. Par le cas inductif on en déduit que P(m0 ) est vraie, ce qui est en contradiction avec l’appartenance de m0 à F. On en déduit donc que F est vide, ce qui démontre la proposition. U sa ge E XEMPLE 8.1 Montrons que la somme des n premiers naturels est égale à n(n + 1)/2, soit P(n) : 1 + 2 + 3 + · · · + n = n(n + 1) 2 i. La proposition est vraie pour n = 1 puisque P(1) : 1 = 1. ii. Si la proposition est vraie pour n, elle l’est également pour n + 1, puisqu’il vient P(n + 1) : n+1 n k=1 k=1 ∑ k = (n + 1) + ∑ k = (n + 1) + n(n + 1) (n + 1)(n + 2) = 2 2 Par le principe d’induction, on en déduit que la proposition est vraie pour tout n ∈ N0 . Remarquons que l’on peut établir directement ce résultat en raisonnant comme suit : (k + 1)2 − k2 = 2k + 1 ∀k n n ∑ (k + 1)2 − k2 = ∑ (2k + 1) k=1 k=1 n n (22 + 32 + · · · + n2 + (n + 1)2 ) − (1 + 22 + 32 + · · · + n2 ) = 2 ∑ k + ∑ 1 k=1 n k=1 (n + 1)2 − 1 = 2 ∑ k + n k=1 CHAPITRE 8. LES ENTIERS. 217 Après simplification, on obtient donc ∑k= k=1 n(n + 1) 2 En procédant de la même façon, on obtient aisément n ∑ k2 = k=1 n n(n + 1)(2n + 1) 6 ité n ∑ k3 = et k=1 n(n + 1) 2 2 ⋄ lim E XEMPLE 8.2 Montrons que la somme des n premiers naturels impairs1 est égale à n2 , soit P(n) : 1 + 3 + 5 + · · · + (2n − 1) = n2 i. La proposition est vraie pour n = 1 puisque P(1) : 1 = 12 . ii. Si la proposition est vraie pour n, elle l’est également pour n + 1, puisqu’il vient P(n + 1) : [1 + 3 + 5 + · · · + (2n − 1)] + (2n + 1) = n2 + (2n + 1) = (n + 1)2 Par le principe d’induction, on en déduit que la proposition est vraie pour tout n ∈ N0 . ⋄ U sa ge E XEMPLE 8.3 Prouvons que, pour tout entier n ≥ 3, on a P(n) : 2n + 1 < 2n i. La proposition est vraie pour n = 3 puisque P(3) : 2 · 3 + 1 = 7 < 23 = 8. ii. Si la proposition est vraie pour n, elle l’est également pour n + 1, puisqu’il vient P(n + 1) : 2(n + 1) + 1 = (2n + 1) + 2 < 2n + 2 < 2n + 2n = 2n+1 Par le principe d’induction, on en déduit que la proposition est vraie pour tout n entier ≥ 3. ⋄ E XEMPLE 8.4 Utilisons le principe d’induction pour prouver la généralisation suivante de l’une des lois de De Morgan : n \ k=1 Ak = n [ Ak k=1 pour n ≥ 2 où A1 , A2 , . . . , An ⊂ U . i. Pour n = 2, on retrouve la loi de De Morgan A1 ∩ A2 = A1 ∪ A2 La propriété est donc vérifiée dans le cas de base n = 2. 1 La définition des nombres impairs est donnée à la page 221. CHAPITRE 8. LES ENTIERS. 218 ii. Supposons la proposition vraie pour n. Il vient alors Ak = k=1 = = = n \ k=1 n \ k=1 n [ k=1 n+1 [ Ak ∩ An+1 ité n+1 \ Ak ∪ An+1 (Loi de De Morgan = Cas de base) Ak ∪ An+1 (Hypothèse inductive) Ak lim k=1 Par le principe d’induction, la proposition est donc vraie pour tout n entier ≥ 2. ' On peut encore généraliser ce principe de plusieurs façons : P RINCIPE D ’ INDUCTION MATH ÉMATIQUE G ÉN ÉRALIS É I Soit P(n) une proposition définie sur l’ensemble des naturels N. Soit n0 un naturel fixé. Si ⋄ $ i. cas de base : P(n0 ) est vraie, U sa ge ii. cas inductif : pour tout n ≥ n0 , si P(k) est vraie pour tout k tel que n0 ≤ k ≤ n alors P(n + 1) est vraie, alors P(n) est vraie pour tout naturel n ≥ n0 . & ' P RINCIPE D ’ INDUCTION MATH ÉMATIQUE G ÉN ÉRALIS É II Soit P(n) une proposition définie sur l’ensemble des naturels N. Soit n0 et N deux naturels fixé. Si % $ i. cas de base : P(n0 ), P(n0 + 1), . . . , P(n0 + N) sont vraies, ii. cas inductif : pour tout n ≥ n0 + N, si P(n), P(n − 1), . . . , P(n − N) sont vraies alors P(n + 1) est vraie, alors P(n) est vraie pour tout naturel n ≥ n0 . & % E XEMPLE 8.5 On peut former tout affranchissement de 0.12 e et plus en utilisant uniquement des timbres de 4 et 5 euro-cents. i. On peut former des affranchissements de 12, 13, 14 et 15 euro-cents en utilisant, respectivement 3 timbres à 4 cents, 2 timbres à 4 cents et un timbre à 5 cents, 2 timbres à cinq cents et un timbre à 4 cents et enfin 3 timbres à 5 cents. ii. Pour former tous les montants n supérieurs à 15 euro-cents, on utilise l’affranchissement de n − 4 cents complété par un timbre à 4 cents. Par le principe d’induction généralisé, on forme ainsi tous les affranchissements supérieurs ou égaux à 12 euro-cents. ⋄ CHAPITRE 8. LES ENTIERS. 219 8.2 Opérations sur les entiers. Les entiers, c’est-à-dire les éléments de l’ensemble Z = 0, 1, −1, 2, −2, 3, −3, . . .} ité (8.1) lim se combinent par les règles habituelles de l’addition, de la soustraction, de la multiplication et de la division. Remarquons que l’ensemble Z est stable pour les trois premières opérations, i.e. le résultat de l’addition, de la soustraction ou de la multiplication de deux entiers est encore un entier. Il n’en va cependant pas de même avec la division. En effet, si a et b sont deux entiers, alors a/b n’est, en général, pas un entier ; dans le cas où b 6= 0, a/b est un rationnel (l’expression a/b n’est pas définie si b = 0). De même, on peut définir des fonctions rationnelles ou transcendantes sur tout ou partie de Z. En général, le résultat n’est pas un entier. On peut former un entier à partir d’un réel en appliquant l’une des deux fonctions suivantes : ' U sa ge La fonction plancher attribue à tout réel x le plus grand entier ⌊x⌋ qui est inférieur ou égal à x : ⌊ ⌋ : R → Z, & ' x 7→ ⌊x⌋ tel que ⌊x⌋ ≤ x < ⌊x⌋ + 1 (8.2) La fonction plafond attribue à tout réel x le plus petit entier ⌈x⌉ qui est supérieur ou égal à x : ⌈ ⌉ : R → Z, & x 7→ ⌈x⌉ tel que ⌈x⌉ − 1 < x ≤ ⌈x⌉ $ % $ (8.3) % E XEMPLE 8.6 On a x ⌊x⌋ ⌈x⌉ -2.0 -2 -2 -1.7 -2 -1 -1.3 -2 -1 -1.0 -1 -1 -0.7 -1 0 -0.3 -1 0 0.0 0 0 0.3 0 1 0.7 0 1 Remarquons que ⌊x⌋ = ⌈x⌉ si x ∈ Z et ⌊x⌋ = ⌈x − 1⌉ si x 6∈ Z. 1.0 1 1 1.3 1 2 1.7 1 2 2.0 2 2 ⋄ CHAPITRE 8. LES ENTIERS. 220 ' 8.2.1 Division entière. d|a & ité Si a et d sont des entiers avec d 6= 0, on dit que d divise a, ce qui se note d|a, s’il existe un entier q tel que a = dq : ⇔ ∃q ∈ Z : a = qd (8.4) On dit que d est un facteur ou un diviseur de a et que a est un multiple de d. Si d ne divise pas a, on écrit d6 | a. lim Que d divise a ou non, on a ' A LGORITHME DE DIVISION : Si a ∈ Z et d ∈ N0 , alors il existe deux entiers uniques q et r tels que 0≤r<d & $ et a = dq + r Dans cette expression, r = 0 si et seulement si d divise a. % $ (8.5) % U sa ge On appelle d, a, q et r respectivement le diviseur, le dividende, le quotient et le reste. On écrit aussi q = a div d où “div” désigne l’opérateur de division entière. jak Soit q = le plus grand entier inférieur ou égal au nombre rationnel a/d. On a d a a et donc 0≤ −q < 1 q ≤ < q+1 d d Posant alors r = a − qd, on voit bien que r est un entier positif ou nul tel que a r = a − qd = d −q < d d jak a Remarquons que q = = si d|a et donc r = a − qd = 0. Inversement, si r = 0 d d alors a = qd et d divise a. E XEMPLE 8.7 Puisque 101 = 11 · 9 + 2 le quotient et le reste de la division de 101 par 11 sont égaux respectivement à 9 et 2. ⋄ E XEMPLE 8.8 Le quotient et le reste de la division de −11 par 3 sont égaux respectivement à −4 et 1 puisque −11 = 3(−4) + 1 ⋄ CHAPITRE 8. LES ENTIERS. 221 Un entier est pair si le reste de sa division par deux est 0. Sinon, il est impair. P ROPRI ÉT ÉS DE LA RELATION DE DIVISIBILIT É : Quels que soient les entiers a, b et c, a|b et a|c ⇒ a|(b ± c) (8.6) a|b ⇒ a|bc (8.7) a|b et b|c ⇒ a|c lim & $ ité ' (8.8) % • Si a|b et a|c, il existe des entiers α et β tels que b = αa et c = βa. Dès lors b ± c = (α ± β)a et a|(b ± c). • Si a|b, il existe α ∈ Z tel que b = αa. Dès lors, bc = (αc)a où αc est un entier et a|bc. • Si a|b et b|c, il existe α, β ∈ Z tels que b = aα et c = bβ. Dès lors c = bβ = a(αβ) où (αβ) ∈ Z U sa ge et a|c. Le théorème suivant montre que l’on ne peut pas définir l’inverse entier d’un entier différent de 1 : Quels que soient les entiers positifs m et n, mn = 1 ⇒ m = 1 et n = 1 Supposons que m 6= 1, alors m > 1 et (8.9) mn > n ≥ 1 Dès lors, mn > 1, ce qui est en contradiction avec mn = 1. On doit donc rejeter l’hypothèse m 6= 1. De même, on montre aisément que n = 1. CHAPITRE 8. LES ENTIERS. 222 8.2.2 Nombres premiers. premier2 On remarquera que 1 n’est ni premier ni composé. ité Un entier p > 1 est si les seuls facteurs positifs de p sont 1 et p. Un entier p > 1 qui n’est pas premier est dit composé. E XEMPLE 8.9 L’entier 7 est premier puisqu’il n’est divisible que par 1 et 7. ⋄ ' lim Les nombres premiers jouent un rôle important dans l’étude des entiers en raison du théorème suivant : T H ÉOR ÈME FONDAMENTAL DE L’ ARITHM ÉTIQUE . Tout entier n > 1 peut s’écrire de façon unique comme le produit de nombres premiers (l’ordre des facteurs n’étant pas pris en considération). Cette écriture est appelée la factorisation de n et les nombres premiers qui y apparaissent sont les facteurs premiers de n. & $ % Montrons d’abord que tout entier positif n > 1 peut être exprimé comme le produit de nombres premiers. U sa ge i. La proposition est vraie pour n = 2 puisque 2 est lui-même premier. ii. Si on suppose que l’on peut représenter tout entier k tel que 2 ≤ k ≤ n comme produit de nombres premiers, alors on peut démontrer que n + 1 peut aussi être écrit de la sorte. En effet, si n + 1 est premier, alors la proposition est démontrée. Si n + 1 est composé, il peut s’écrire comme le produit de deux entiers positifs a et b tels que 2 ≤ a ≤ b < n + 1. Selon l’hypothèse inductive, on peut écrire a et b comme des produits de nombres premiers. Donc, on pourra également écrire n + 1 comme produit de nombres premiers, à savoir les facteurs premiers de a et b. Par le principe d’induction généralisée, on en déduit que tout entier n > 1 peut effectivement s’exprimer comme le produit de nombres premiers. La démonstration de l’unicité de la factorisation comme produit de nombre premiers est plus ardue. Supposons que la factorisation ne soit pas unique et qu’il existe donc un plus petit entier n > 1 pour lequel il existe deux factorisations possibles, soit n = p1 p2 . . . pr = q1 q2 . . . qs où les pi (i ∈ {1, 2, . . ., r}) et q j ( j ∈ {1, 2, . . .s}) sont premiers. 2 On peut admettre la généralisation du concept de nombre premier aux entiers p < −1 en disant qu’un tel entier est premier si −p > 1 est premier. Un entier p < −1 est composé si −p est composé. CHAPITRE 8. LES ENTIERS. 223 Manifestement, r et s sont strictement supérieurs à 1 (sinon n serait premier ou bien on aurait l’égalité entre un nombre premier et un nombre composé). – Si, par exemple, p1 = q1 , alors ité n = p2 . . . pr = q2 . . .qs < n p1 lim Puisque tout entier inférieur à n possède une factorisation unique, on a r = s et, pour tout i ∈ {1, 2, . . .r}, pi = q j pour une certaine valeur de j. Il en est de même si pi = q j pour une valeur particulière de (i, j). – Si tous les pi et q j sont différents, supposons (sans perte de généralité) que p1 < q1 et formons N = n − p1 q2 q3 . . . qs = (q1 − p1 )q2 q3 . . . qs = p1 (p2 p3 . . . pr − q2 q3 . . . qs ) Manifestement, 1 < N < n et N possède donc une factorisation unique. Cependant, p1 6 |(q1 − p1 ) puisque p1 < q1 et que q1 est premier. Dès lors, les deux expressions de N sont telles que l’une contient p1 et l’autre pas. Cette contradiction montre qu’il est impossible que les pi diffèrent des q j . En conclusion, la factorisation est donc unique. U sa ge E XEMPLE 8.10 On a 100 = 2 · 2 · 5 · 5 = 22 52 999 = 3 · 3 · 3 · 37 = 33 37 641 = 641 L’ensemble des nombres premiers est infini. ⋄ Démontrons ce théorème par l’absurde en supposant que les nombres premiers puissent être énumérés de 1 à n, où n est fini, par ordre croissant selon p1 = 2, p2 = 3, p3 = 5, p4 = 7, p5 = 11, . . . , pn Formons alors l’entier N = p1 · p2 · p3 · · · pn + 1. Cet entier peut être décomposé en facteurs premiers et est donc divisible par au moins un nombre premier p. Celui-ci doit nécessairement faire partie de {p1 , p2 , p3 , . . . , pn }. Cependant, ceci est impossible puisque, alors, p devrait être un diviseur de 1, ce qui est impossible puisque p > 1. Cette contradiction permet donc de conclure qu’il n’existe pas de plus grand nombre premier pn , i.e. que l’ensemble des nombres premiers est infini. CHAPITRE 8. LES ENTIERS. 224 ité De nombreux énoncés relatifs à la distribution des nombres premiers ont été établis en théorie des nombres. De nombreux autres sont encore à l’état de conjecture, i.e. on ne dispose d’aucune démonstration et d’aucun contre-exemple. • On peut toujours trouver n nombres composés consécutifs quel que soit n ≥ 1. • Tout ensemble de nombres {n + 1, n + 2, . . . , 2n} contient au moins un nombre premier. • Les nombres de Mersenne de la forme M p = 2 p −1 où p est premier sont eux-même premiers pour lim p = 2, 3, 5, 7, 113, 19, 31, 61, 89, 107, 127, 521, 607, 1279, 2203, 2281, 3217, 4253, 9689, 9941, 11213, 19937, 21701, 23209, 44497, 86243, 110503, 132049, 216091, 756839, 859433 n • Longtemps, on a cru que les nombres de Fermat de la forme Fn = 22 + 1 étaient premiers parce que Fn est premier pour n < 5. Cependant, F5 est un entier composé. • On suppose que {n2 + 1, n2 + 2, . . . , (n + 1)2} contient toujours au moins un nombre premier. • On suppose qu’il existe une infinité de nombres premiers jumeaux, i.e. de nombres premiers qui, comme 3 et 5, 5 et 7, 11 et 13 ou 17 et 19, ne diffèrent que de 2 unités. (On sait, par exemple, que 256 200 945 · 23426 ± 1 sont des nombres premiers.) U sa ge En particulier, la distribution des nombres premiers fait l’objet de beaucoup d’énoncés. On désigne généralement par π(x) le nombre de nombres premiers inférieurs ou égaux à x. On a, par exemple x π(x) 1000 2000 3000 4000 5000 6000 7000 8000 9000 168 303 430 550 669 783 900 1007 1117 Hadamard et de la Vallée Poussin on montré, indépendamment l’un de l’autre, que x π(x) ∼ (x → +∞) (8.10) ln x De même, π(x) ∼ Li(x) = et Z x dt 2 lnt (x → +∞) 1 1 1 π(x) ∼ R(x) = Li(x) − Li(x1/2 ) − Li(x1/3 ) − Li(x1/5 ) 2 3 5 (8.11) (x → +∞) (8.12) où Li(x) et R(x) sont appelés respectivement le logarithme intégral et la fonction de Riemann. Cette dernière constitue la meilleure approximation connue de π(x). Remarquons que la formule approchée (8.10) montre que, asymptotiquement, la proportion de nombres premiers inférieurs à n est de l’ordre de 1/ ln n et tend donc vers zéro lorsque n tend vers l’infini. CHAPITRE 8. LES ENTIERS. 225 La technique de base pour déterminer si un entier n > 1 est premier consiste, selon la définition, à tester sa divisibilité par 2, 3, . . ., n − 1. Cette méthode laborieuse peut être simplifiée en utilisant le résultat suivant. Si n est√composé, alors il existe (au moins) un nombre premier p tel que p|n et p ≤ n. Puisque n est composé, il s’exprime sous la forme n = a·b 1 < a, b < n ité lim √ Il est cependant impossible que a et b soient tous deux supérieurs à n ; on aurait alors √ √ n = a · b > n n = n ce√ qui est impossible. Si, par √ exemple, a ≤ n alors tout diviseur premier p de a est un nombre premier tel que p ≤ n et p|n. Dès lors, pour déterminer si un nombre n est premier, il suffit de tester sa divisibilité √ par tous les nombres premiers inférieurs ou égaux à n. U sa ge Pour déterminer la liste des nombres premiers inférieurs ou égaux à un entier n, on aura recours au crible d’Ératosthène. Cette méthode repose sur le fait que tout entier n divisible par un entier d, est également divisible par tous les diviseurs premiers de d. Dès lors, il suffit de dresser la liste des entiers inférieurs ou égaux √ à n et – d’identifier les nombres premiers inférieurs ou égaux à n ; – de supprimer 1 et tous les multiples des ces nombres premiers (mais pas les nombres premiers eux-mêmes). Les entiers qui restent dans la liste sont les nombres premiers recherchés. E XEMPLE 8.11 Identifions les nombres premiers inférieurs ou égaux à 60. Pour ce faire, il suffit de √ supprimer de la liste des entiers de 2 à 60 tous les multiples de nombres premiers inférieurs à 60 = 7.75, soit les multiples de 2, 3, 5 et 7. 61 11 6 26 1 31 41 6 56 1 2 3 64 6 16 2 13 6 16 4 6 26 2 23 6 26 4 6 36 2 6 36 3 6 36 4 6 46 2 43 6 46 4 6 56 2 53 6 56 4 5 6 16 5 6 26 5 6 36 5 6 46 5 6 56 5 66 7 6 8 6 9 6 16 0 6 16 6 17 6 16 8 19 6 26 0 6 26 6 6 26 7 6 26 8 29 6 36 0 6 36 6 37 6 36 8 6 36 9 6 46 0 6 46 6 47 6 46 8 6 46 9 6 56 0 6 56 6 6 56 7 6 56 8 59 6 66 0 Il reste donc 17 nombres premiers, soit 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59 ⋄ CHAPITRE 8. LES ENTIERS. 226 E XEMPLE 8.12 Décomposons 7007 en facteurs premiers. Il vient successivement, 7007 = 7 · 1001 = 7 · (7 · 143) = 7 · 7 · 11 · 13 ité ⋄ lim Les méthodes précédentes sont aisément mises en pratique pour déterminer si de petits nombres sont premiers. Cependant, les utilisations actuelles des nombres premiers, en particulier en cryptographie, demandent de traiter des nombres premiers qui comportent de l’ordre de 200 chiffres. Ainsi, si on désire vérifier qu’un entier n de l’ordre de 10200 est premier, on doit vérifier qu’il n’est divisible par aucun nombre premier √ √ inférieur √ ou égal à n = 10100 . Or, en utilisant (8.10), on sait qu’il existe de l’ordre de n/ ln n = 4 1097 nombres premiers dans cet intervalle. Si on accepte qu’un ordinateur permet d’effectuer 106 tests de division par seconde, cette vérification prendra de l’ordre de 1084 années ! Ceci montre que des techniques plus évoluées (entre autres statistiques) doivent être élaborées pour traiter de tels nombres premiers. 8.2.3 Plus grand commun diviseur. Si a et b sont deux entiers non tous deux nuls, le plus grand commun diviseur, noté pgcd(a, b), de a et b est le plus grand entier d tel que d|a et d|b. E XEMPLE 8.13 Les diviseurs communs de 12 et 18 sont ±1, ±2, ±3, ±6. Le plus grand commun diviseur de 12 et 18 est donc 6. ⋄ sa ge U E XEMPLE 8.14 Les diviseurs communs de −44 et 12 sont ±1, ±2, ±4. Le plus grand commun diviseur de 44 et 12 est donc 4. ⋄ Deux entiers a et b sont premiers entre eux si leur plus grand diviseur commun est 1. E XEMPLE 8.15 Les entiers 17 et 22 sont premiers entre eux puisque leurs diviseurs respectifs sont {±1, ±17} et {±1, ±2, ±11, ±22} de sorte que pgcd(a, b) = 1. ⋄ Pour déterminer le pgcd de deux entiers strictement positifs3 a et b de façon systématique, on peut partir de la décomposition de a et b en facteurs premiers : a = pa11 pa22 . . . pann et b = pb11 pb22 . . . pbnn (8.13) où p1 , p2 , . . . , pn sont tous les facteurs premiers de a et de b et où les exposants a1 , a2 , . . ., an et b1 , b2 , . . . , bn sont des entiers positifs ou nuls (si p j n’est pas un facteur premier d’un des entiers considérés, il suffit de l’affecter d’un exposant nul). Alors min(a1 ,b1 ) min(a2 ,b2 ) min(a ,b ) p2 . . . pn n n pgcd(a, b) = p1 3 Le (8.14) cas où a ou b est négatif se ramène aisément au cas envisagé en remarquant que pgcd(a, b) = pgcd(|a|, |b|). D’autre part si a 6= 0, on a pgcd(a, 0) = |a|. CHAPITRE 8. LES ENTIERS. 227 En effet, l’entier ainsi formé divise bien a et b. C’est aussi le plus grand entier qui possède cette propriété puisque a ou b ne seront pas divisibles par un entier formé en augmentant une puissance quelconque des pi . pgcd(120, 500) = 22 · 5 = 20 ité E XEMPLE 8.16 Puisque 120 = 23 · 3 · 5 et 500 = 22 · 53 , on en déduit que ⋄ L’algorithme d’Euclide est une méthode très efficace pour trouver le plus grand commun diviseur de deux nombres positifs a et b. Cet algorithme est basé sur le résultat suivant : lim Si a = bq + r où a, b, q et r sont des entiers, alors pgcd(a, b) = pgcd(b, r) La propriété provient du fait que les diviseurs communs de a et b sont les mêmes que les diviseurs communs de b et r. D’une part, si d divise a et b, alors d divise également a − bq = r. Donc tout diviseur commun de a et b est aussi un diviseur de b et r. D’autre part, tout diviseur d commun à b et r est aussi un diviseur de a et de b puisque bq + r = a. sa ge U (8.15) En conséquence, pour calculer le pgcd de deux nombres a et b avec a > b, il suffit de diviser a par b, ce qui conduit à rechercher le pgcd de b et du reste r de la division de a par b. En procédant successivement de la sorte, on obtient le pgcd comme le dernier reste non nul dans la suite des divisions. E XEMPLE 8.17 Calculons le pgcd de 414 et 662. Il vient successivement pgcd(662, 414) =? pgcd(414, 248) =? pgcd(248, 166) =? pgcd(166, 82) =? pgcd(82, 2) =? Dès lors, pgcd(662, 414) = 2. 662 = 414 · 1 + 248 414 = 248 · 1 + 166 248 = 166 · 1 + 82 166 = 82 · 2 + 2 82 = 41 · 2 + 0 ⋄ CHAPITRE 8. LES ENTIERS. 228 8.2.4 Équations diophantines linéaires. ité En utilisant les résultats intermédiaires de l’algorithme d’Euclide, on peut aisément exprimer le pgcd de deux nombres a et b sous la forme ax + by où x et y sont deux entiers. E XEMPLE 8.18 En collectant les résultats intermédiaires de l’exemple 8.17 de la fin vers le début, on a 2 = 166 − 82 · 2 = 166 − 2(248 − 166) = 3(414 − 248) − 2 · 248 = 3 · 414 − 5(662 − 414) lim = 8 · 414 − 5 · 662 ⋄ En appliquant le même raisonnement à un couple d’entiers quelconques a et b non simultanément nuls, on voit qu’il existe x, y ∈ Z tels que pgcd(a, b) = ax + by (8.16) Dans le cas général, on dispose du résultat suivant : ' $ L’équation diophantine linéaire U sa ge ax + by = n (8.17) où a, b, n ∈ Z et où a et b ne sont pas tous deux nuls possède des solutions entières x et y si et seulement si pgcd(a, b)|n & (8.18) % La condition est nécessaire. En effet, si ax + by = n alors, puisque pgcd(a, b) divise a et b, il divise également ax et by ainsi que leur somme, n. La condition est suffisante. En effet, si n = t pgcd(a, b) avec t ∈ Z, alors pgcd(a, b) = ax′ + by′ (x′ , y′ ∈ Z), en vertu de (8.16), et n = t pgcd(a, b) = a(tx′ ) + b(ty′) = ax + by où on a posé x = tx′ et y = ty′ . Remarquons que la condition pgcd(a, b)|n est toujours satisfaite si a et b sont premiers entre eux. La démonstration de la condition suffisante montre que l’algorithme d’Euclide pour la recherche du pgcd permet de déterminer une solution d’une équation diophantine linéaire. CHAPITRE 8. LES ENTIERS. 229 E XEMPLE 8.19 Cherchons des entiers x et y vérifiant l’équation 533x + 117y = 65 pgcd(533, 117) =? pgcd(117, 65) =? pgcd(65, 52) =? pgcd(52, 13) =? ité Calculons d’abord le pgcd de 533 et 117. Il vient successivement 533 = 117 · 4 + 65 117 = 65 · 1 + 52 65 = 52 · 1 + 13 52 = 13 · 4 + 0 lim Dès lors, pgcd(533, 117) = 13. Puisque 13|65, on en déduit que l’équation est soluble. Pour calculer une solution, on repart en arrière en écrivant successivement 13 = 65 − 52 = 65 − (117 − 65) = 2 · 65 − 117 = 2(533 − 117 · 4) − 117 = 2 · 533 − 9 · 117 En multipliant cette équation par 5 (= 65/13), on obtient 10 · 533 − 45 · 117 = 65 ⋄ U sa ge et on a donc identifié la solution x = 10, y = −45. E XEMPLE 8.20 La représentation de la droite 14x + 12y = 5 sur un écran d’ordinateur est nécessairement approchée en tout point. En effet, aucun pixel (x, y) ne vérifie exactement cette équation puisque pgcd(14, 12) = 2 6 | 5 ⋄ La solution déterminée par l’algorithme d’Euclide n’est pas la seule possible. Le théorème suivant montre comment obtenir la solution générale d’une équation diophantine. ' Si n 6= 0 et pgcd(a, b)|n, la solution générale de l’équation diophantine linéaire ax + by = n s’écrit x = x0 + tb , pgcd(a, b) y = y0 − (8.19) ta pgcd(a, b) où (x0 , y0 ) désigne une solution quelconque et où t ∈ Z. & $ (8.20) % CHAPITRE 8. LES ENTIERS. 230 L’hypothèse pgcd(a, b)|n assure l’existence d’au moins une solution (x0 , y0 ). Dans ce cas, on vérifie que (x, y) donné par (8.20) est également une solution puisque x et y sont entiers et que tab tab + by0 − = ax0 + by0 = n pgcd(a, b) pgcd(a, b) ité ax + by = ax0 + Pour démontrer que la solution générale s’écrit comme (8.20), considérons la différence membre à membre des équations ax + by = n et ax0 + by0 = n lim On a, après division par pgcd(a, b), a b (x − x0 ) + (y − y0 ) = 0 pgcd(a, b) pgcd(a, b) (⋆) Sans perte de généralité, on peut supposer b 6= 0 (sinon on considère a 6= 0) et, dans ce cas, b a (x − x0 ) divise pgcd(a, b) pgcd(a, b) U sa ge où b/pgcd(a, b) et a/pgcd(a, b) sont premiers entre eux (sinon on pourrait mettre en évidence d’autres facteurs communs aux factorisations de a et b que ceux dont le produit constituent le pgcd.). On en déduit que b/pgcd(a, b) divise (x − x0 ), c’est-à- dire qu’il existe t ∈ Z tel que b (x − x0 ) = t pgcd(a, b) Portant cette expression dans (⋆), il vient a b b t + (y − y0 ) = 0 pgcd(a, b) pgcd(a, b) pgcd(a, b) soit, après simplification (b 6= 0), a t + (y − y0 ) = 0 pgcd(a, b) ce qui achève la démonstration. E XEMPLE 8.21 Déterminons toutes les solutions de l’équation diophantine de l’exemple 8.19. Puisqu’on dispose de la solution x0 = 10, y0 = −45 et que pgcd(533, 117) = 13, il vient 117 t 533 t (x, y) = 10 + , −45 − = (10 + 9t, −45 − 41t) 13 13 quel que soit t ∈ Z. ⋄ CHAPITRE 8. LES ENTIERS. 231 E XEMPLE 8.22 Déterminons les pixels de coordonnées (x, y) qui vérifient exactement l’équation de la droite 14x + 5y = 9 et (x0 , y0 ) = (−9, 27) est une des solutions recherchées. Les autres solutions sont t (5, −14) = (−9 + 5t, 27 − 14t) pgcd(14, 5) ∀t ∈ Z lim (x, y) = (−9, 27) + ité Cette équation possède au moins une solution puisque pgcd(14, 5) = 1|9. Dès lors, 9 = −9 · 14 + 27 · 5 ⋄ 8.2.5 Plus petit commun multiple. Le plus petit commun multiple ppcm(a, b) des entiers strictement positifs a et b est le plus petit entier strictement positif divisible par a et par b. Le ppcm de deux entiers existe toujours. En effet, l’ensemble des entiers positifs divisibles par a et b est non vide. Selon le principe du bon ordre énoncé plus haut, cet ensemble possède un plus petit élément. On peut l’obtenir en partant des décompositions de a et b en facteurs premiers par la formule sa ge U max(a1 ,b1 ) max(a2 ,b2 ) max(an ,bn ) p2 . . . pn ppcm(a, b) = p1 (8.21) puisque ce nombre n’a aucun autre facteur premier que ceux qui se trouvent à la fois dans a et b. En combinant (8.14) avec (8.21) et en tenant compte de min(ai , bi ) max(ai , bi ) = ai bi il vient, Quels que soient les entiers strictement positifs a et b, on a a · b = pgcd(a, b) · ppcm(a, b) (8.22) 8.2.6 Arithmétique modulaire. Si a et b sont deux entiers et si m est un entier strictement positif, on dit que a est congru à b modulo m, ce qui ce note a ≡ b(mod m), lorsque m divise a − b. CHAPITRE 8. LES ENTIERS. 232 E XEMPLE 8.23 On a 17 ≡ 5(mod 6) puisque 6|(17 − 5) ⋄ Notons que la relation de congruence est symétrique, i.e. ⇔ b ≡ a(mod m) (8.23) ité a ≡ b(mod m) Deux entiers a et b sont congrus l’un à l’autre modulo m lorsque les restes des divisions de a et b par m sont égaux. Notant a mod m le reste de la division de a par m, ceci s’écrit a ≡ b(mod m) a mod m = b mod m (8.24) lim ⇔ Si a ≡ b(mod m), alors ∃α ∈ Z t.q a − b = α m, soit a = α m + b. Dès lors a mod m = (α m + b) mod m = b mod m Inversement, si a mod m = b mod m, alors ∃α, β, γ ∈ Z t.q a = α m + γ et b = βm + γ soit U sa ge a − b = (α − β)m et donc a ≡ b(mod m) ' $ Soit m un entier strictement positif, ( ( a ≡ b(mod m) (a + c) ≡ (b + d)(mod m) ⇒ c ≡ d(mod m) ac ≡ bd(mod m) (8.25) & En vertu des hypothèses, ∃α, β ∈ Z tels que b = a + αm et d = c + βm b + d = (a + c) + (α + β)m et bd = ac + m(aβ + cα + αβm) a + c ≡ (b + d)(mod m) et ac ≡ bd(mod m) % Dès lors et donc CHAPITRE 8. LES ENTIERS. 233 Le théorème précédent montre que l’addition et la multiplication conservent les congruences. Cependant, la division par un entier des deux côtés d’une congruence ne préserve pas toujours la congruence. $ ' & ⇒ b ≡ c(mod m) lim Soit m un entier strictement positif, ) pgcd(a, m) = 1 ab ≡ ac(mod m) ité E XEMPLE 8.24 La congruence 14 ≡ 8(mod 6) est valide puisque 6 divise 14 − 8 = 6. Cependant, 7 6≡ 4(mod 6) puisque 6 ne divise pas 7 − 4 = 3. ⋄ (8.26) % En effet, ab ≡ ac(mod m) signifie que m|[a(b − c)]. Comme a et m sont premiers entre eux et ne possèdent donc aucun diviseur commun, on en déduit que m|(b − c), soit b ≡ c(mod m) U sa ge L’arithmétique modulaire possède de nombreuses applications dans le domaine du traitement informatique des grands nombres et de la cryptographie. E XEMPLE 8.25 A LGORITHME DE V ÉRIFICATION . En Belgique, les numéros de comptes en banque sont formés selon abc − de f ghi j − kl où chaque lettre remplace un chiffre. Le nombre formé par les deux derniers chiffres, kl, est utilisé pour vérifier qu’aucune erreur n’a été commise dans l’écriture de la première partie abc − de f ghi j du numéro de compte. Pour être valide un numéro de compte doit être tel que kl = abcde f ghi j mod 97 Par exemple, le numéro de compte 340 − 1957226 − 95 est valide puisque 95 = 3401957226 mod 97. ⋄ E XEMPLE 8.26 N OMBRES PSEUDO - AL ÉATOIRES . Il est parfois nécessaire de disposer de nombres aléatoires dans certaines méthodes numériques (e.g. méthode de Monte-Carlo) ou certaines applications informatiques particulières (e.g. simulation de files d’attente). La procédure la plus couramment employée pour générer des nombres aléatoires est la méthode linéaire de congruence. On choisit quatre entiers, le module m, le multiplicateur a, l’incrément c et la semence x0 avec 2 ≤ a < m, c ≥ 0 et 0 ≤ x0 < m. On engendre ensuite une suite de nombres (xk ) où 0 ≤ xk < m par la relation xk+1 = (axk + c) mod m CHAPITRE 8. LES ENTIERS. 234 8.2.7 Congruences linéaires. Une équation du type (8.27) lim ax ≡ b(mod m) ité Les nombres ainsi créés ne sont pas réellement aléatoires, puisqu’ils découlent d’une règle bien déterminée, on les dit dès lors pseudo-aléatoires. La plupart des ordinateurs utilisent des générateurs linéaires à congruence pour générer des nombres pseudo-aléatoires. On utilise largement le générateur purement multiplicatif où c = 0, m = 231 − 1 et a = 75 . Avec ces valeurs, on peut démontrer que 231 − 2 nombres sont générés avant que ne réapparaisse la même suite. ⋄ où a, b et m sont des entiers connus avec m strictement positif et où x est un entier inconnu est appellée une congruence linéaire. Celle-ci est équivalente à l’équation diophantine ax − my = b y∈Z La solution de (8.27) est donc régie par le résultat suivant : ' $ Si a, b et m sont des entiers et si m est positif, la congruence linéaire U sa ge ax ≡ b(mod m) est soluble si et seulement si pgcd(a, m)|b. Si x0 désigne une solution quelconque, on peut construire exactement pgcd(a, m) solutions x x = x0 + & tm pgcd(a, m) où t = 0, 1, 2, . . ., pgcd(a, m) − 1 (8.28) distinctes modulo m. La solution x0 est donc unique modulo m/pgcd(a, m). % Dans le cas particulier où a et m sont premiers entre eux, i.e. pgcd(a, m) = 1, la solution de la congruence linéaire (8.27) est unique modulo m et permet donc de définir un nombre x. En particulier, la solution de ax ≡ 1(mod m) telle que 1 ≤ x < m est appelée l’inverse de a modulo m. Dans le cas général, la congruence, si elle est soluble, possède pgcd(a, m) solutions modulo m. On peut alors tenter de définir un nombre unique comme solution d’un système de congruences linéaires. CHAPITRE 8. LES ENTIERS. 235 ' x ≡ ci (mod mi ) ité T H ÉOR ÈME DU RESTE CHINOIS . Si les entiers positifs m1 , m2 , . . . , mk sont premiers entre eux deux par deux, le système de congruences4 $ i = 1, 2, . . .k & (8.29) % possède une solution unique modulo m où m = m1 m2 · · · mk . lim Pour qu’une solution existe, il est évidemment nécessaire que chaque congruence linéaire possède au moins une solution. Il faut donc que pgcd(1, mi ) divise ci pour tout i ∈ {1, 2, . . ., k}, ce qui est le cas puisque pgcd(1, mi ) = 1. Pour construire une solution, on procède comme suit. Pour chaque i = 1, 2, . . ., k, on définit m′i = m/mi ∈ Z. Manifestement, mi et m′i sont premiers entre eux. Dès lors, on peut trouver des entiers m′′i qui vérifient la congruence linéaire m′i m′′i ≡ 1(mod mi ) Une solution du système est alors donnée par x = c1 m′1 m′′1 + · · · + ck m′k m′′k U sa ge puisque mi |m′j si i 6= j et donc x ≡ (ci m′i m′′i )(mod mi ) ≡ ci (mod mi ) La solution obtenue est unique modulo m. En effet, si x et y sont deux solutions, alors x − y ≡ 0(mod mi ) i = 1, 2, . . ., k ce qui n’est possible que si x − y est un multiple de m, i.e. x − y ≡ 0(mod m) puisque les mi sont premiers entre eux deux par deux. E XEMPLE 8.27 Déterminons la solution de x ≡ 1(mod 2), x ≡ 2(mod 3), x ≡ 3(mod 5), x ≡ 4(mod 7), x ≡ 5(mod 11) Les entiers 2, 3, 5, 7 et 11 étant premiers entre eux deux par deux, on est assuré de l’existence d’une solution unique modulo m = 2 · 3 · 5 · 7 · 11 = 2310. 4 Remarquons que toute congruence de la forme ax ≡ b(mod m) qui possède au moins une solution peut être amenée à la forme équivalente x ≡ b⋆ (mod m⋆ ). En effet, s’il existe une solution x alors pgcd(a, m)|b et on peut aussi déterminer c ∈ Z tel que ac ≡ pgcd(a, m)(mod m). Dès lors, x ≡ b⋆ (mod m⋆ ) où b⋆ = cb m et m⋆ = pgcd(a, m) pgcd(a, m) CHAPITRE 8. LES ENTIERS. 236 En suivant la voie tracée dans la démonstration précédente, on calcule successivement m2 = 3 m′2 = m3 = 5 m′3 = m4 = 7 m′4 = m5 = 11 m′5 = Finalement, il vient m m1 m m2 m m3 m m4 m m5 = = = = = 2310 2 2310 3 2310 5 2310 7 2310 11 = 1155 1155m′′1 ≡ 1(mod 2) m′′1 = 1 = 770 770m′′2 ≡ 1(mod 3) m′′2 = 2 = 462 462m′′3 ≡ 1(mod 5) m′′3 = 3 = 330 330m′′3 ≡ 1(mod 7) m′′4 = 1 = 210 210m′′5 ≡ 1(mod 11) m′′5 = 1 ité m′1 = lim m1 = 2 x = 1155 + 3080 + 4158 + 1320 + 1050 = 10763 ≡ 1523(mod 2310) ⋄ U sa ge Le théorème du reste chinois montre qu’on peut effectuer indirectement des opérations sur des entiers plus grands que ceux que la représentation interne des nombres dans un ordinateur ne le permet en manipulant ceux-ci modulo un ensemble de nombres premiers mi . Le résultat est alors défini modulo le produit m de ces nombres premiers, i.e. la solution est unique dans 0 ≤ x < m, ce qui suffit si m est plus grand que les nombres qui doivent être manipulés. Les nombres de Mersenne de la forme 2n − 1 où n ∈ N0 sont souvent utilisés comme bases de calcul mi . 8.2.8 Théorèmes d’Euler et de Fermat. Définissons d’abord la fonction d’Euler φ pour n ∈ N0 par φ(n) = nombre d’entiers m tels que 1 ≤ m ≤ n et pgcd(m, n) = 1 Autrement dit, φ(n) représente le nombre d’entiers positifs inférieurs ou égaux à n et premiers avec n. Si p est premier, les nombres premiers avec p et inférieurs ou égaux à p sont simplement {1, 2, 3, 4, . . ., p − 1} et donc φ(p) = p − 1. ' $ T H ÉOR ÈME D ’E ULER . Soit n un entier strictement positif. Pour tout a ∈ Z, & pgcd(a, n) = 1 ⇒ aφ(n) ≡ 1(mod n) (8.30) % CHAPITRE 8. LES ENTIERS. 237 ité Soit k = φ(n) et r1 , r2 , . . ., rk les naturels inférieurs à n qui sont premiers avec n. Formons les entiers ar1 , ar2 , . . . ark . Ces entiers – ne sont pas congrus deux à deux modulo n ; ari ≡ ar j (mod n) impliquerait ri ≡ r j (mod n) puisque a et n sont premiers entre eux. – sont tous premiers avec n ; pgcd(a, n) = pgcd(ri , n) = 1 implique que pgcd(ari , n) = 1 Dès lors, puisqu’il y a exactement φ(n) nombres ar1 , ar2 , . . . ark , ceux-ci sont congrus modulo n aux nombres r1 , r2 , . . . rk (dans un certain ordre) et lim r1 · r2 · · · rk ≡ ar1 · ar2 · · · ark (mod n) Simplifiant par les ri (puisque ceux-ci sont premiers avec n), on obtient bien 1 ≡ ak (mod n) Le théorème d’Euler possède un corollaire important qui est à la base d’une série de méthodes d’identification des nombres premiers. P ETIT TH ÉOR ÈME DE F ERMAT Si p est premier alors a p ≡ a(mod p). Si, de plus, a est premier avec p, alors a p−1 ≡ 1(mod p). U sa ge Si p est premier, alors φ(p) = p − 1. Si, de plus, a et p sont premiers entre eux, le théorème d’Euler donne aφ(p) ≡ a p−1 ≡ 1(mod p) Multipliant par a les deux membres de la congruence ci-dessus, il vient a p ≡ a(mod p) Cette congruence reste valable dans le cas où p divise a puisqu’on a alors a p ≡ 0(mod p) ≡ a(mod p) Les nombres entiers composés impairs n tels que 2n−1 ≡ 1(mod n) sont dits pseudopremiers. Ceux-ci sont relativement rares. Ils sont parfois utilisés, en combinaison avec le petit théorème de Fermat, pour déterminer si un nombre est premier. E XEMPLE 8.28 L’entier 341 est pseudo-premier puisqu’il est composé (341 = 11 · 31) et que 2340 ≡ 1(mod 341) ⋄ CHAPITRE 8. LES ENTIERS. 238 Le théorème d’Euler et le petit théorème de Fermat peuvent être utilisés pour résoudre certaines congruences linéaires et pour manipuler de grands chiffres. 4x ≡ 11(mod 19) ité E XEMPLE 8.29 Recherchons les solutions de Puisque 19 et 4 sont premiers entre-eux et que 19 est premier, il vient, par le petit théorème de Fermat, 418 ≡ 1(mod 19) lim Dès lors, multipliant par 417 les deux membres de la congruence linéaire à résoudre, on a 418 x ≡ 11 · 417 (mod 19) de sorte que x ≡ 11 · 417 ≡ 17(mod 19) et x = 17 + 19k, ⋄ E XEMPLE 8.30 Recherchons le chiffre des unités de 7453 . Une calculatrice normale ne possède pas assez de décimales pour calculer explicitement cette puissance et répondre à la question. Le problème peut cependant être reformulé en remarquant que le chiffre des unités recherché, soit x, est le reste de la division de 7453 par 10. On a donc sa ge U k ∈ Z. x ≡ 7453 (mod 10) Or, par le théorème d’Euler, on a 7φ(10) ≡ 74 ≡ 1(mod 10) et 7452 ≡ (74 )113 ≡ 1113 ≡ 1(mod 10) Dès lors, x ≡ 7 · 7452 ≡ 7 · 1 ≡ 7(mod 10) et le dernière chiffre est donc 7. ⋄ 8.2.9 Cryptographie à clé publique. L’arithmétique modulaire est très utilisée pour le codage de messages. Jules César fut l’un des premiers à utiliser la cryptologie. Il codait ses messages en décalant de 3 places chaque lettre de l’alphabet et en remplaçant les trois dernières lettres par les trois premières. Pour exprimer mathématiquement ce codage, on remplace chaque CHAPITRE 8. LES ENTIERS. 239 lettre par un entier compris entre 0 et 25 selon sa position dans l’alphabet. Ensuite, on remplace chaque entier p ∈ [0, 25] par ité f (p) = (p + 3) mod 26 Pour décoder le message, il suffit d’utiliser la fonction inverse f −1 (p) = (p − 3) mod 26 Selon ce processus, le message Z lim MAT HEMAT IQU ES DANS s’écrit, en remplaçant chaque lettre par un entier 12 0 19 7 4 12 0 19 8 16 20 4 18 3 0 13 18 25 En appliquant la fonction de codage, on trouve 15 3 22 10 7 15 3 22 11 19 23 7 21 6 3 16 21 2 soit, en convertissant les chiffres en lettres, U sa ge PDW KHPDW LT X HV GDQV C Évidemment, une telle méthode de codage est vite déjouée puisque qu’une lettre donnée est toujours codée en une même lettre. Il suffit de comparer la fréquence d’apparition des différentes lettres dans un message codé avec la fréquence d’apparition des lettres en français pour établir la correspondance entre les lettres du message codé et les lettres du message décodé. Pour éviter cela, on peut utiliser l’arithmétique modulaire pour le codage des blocs de lettres et non plus de lettres prises séparément. Pour coder un message, on choisit un nombre premier p et une clé de codage e qui est première avec φ(p) = p − 1. Le texte à coder converti en chiffres est divisé en blocs de nombres dont les valeurs sont strictement inférieures à p. Soit B un tel bloc. Le codage est effectué en remplaçant B par C tel que C ≡ Be (mod p) (0 ≤ C < p) (8.31) Pour décoder le message, on construit d’abord une clé de décodage d telle que d e ≡ 1(mod (p − 1)) (8.32) En vertu des résultats de la section 8.2.7, l’inverse de e modulo p − 1 existe puisque e et p − 1 sont premiers entre eux. Au moyen de cette clé d, on peut ensuite décoder en remarquant que Cd ≡ B(mod p) (8.33) CHAPITRE 8. LES ENTIERS. 240 Cette relation résulte du théorème de Fermat. En effet, puisque p est premier et que B < p, p et B sont premiers entre eux et on a ∀k ∈ Z, Bk(p−1) ≡ 1k ≡ 1(mod p) et ité B p−1 ≡ 1(mod p) Dès lors, tenant compte de (p − 1)|(ed − 1), i.e. ed − 1 = k(p − 1), on a5 Cd ≡ Bed ≡ Bed−1 B ≡ Bk(p−1) B ≡ B(mod p) E XEMPLE 8.31 Soit le message lim Pratiquement, en élevant chacun des blocs codés C à la puissance d et en prenant le reste de la division par p, on retrouve donc toujours le bloc B d’origine. BONJOU R à coder en utilisant le nombre premier p = 3571 et la clé de codage e = 1999. Le codage est effectué en remplaçant d’abord chaque lettre du message par un nombre égal à la place occupée par cette lettre dans l’alphabet (A = 01, B = 02, . . . , Z = 26). On groupe alors les nombres par blocs de deux lettres pour former le message chiffré 0215 1410 1800 Remarquons l’insertion d’un blanc à la fin du message afin de disposer de blocs entier de 4 chiffres. Le codage s’effectue alors par application de (8.31) successivement aux différents blocs de 4 chiffres. Le premier bloc, par exemple, devient sa ge U 1521 C ≡ 02151999 (mod 3571) ⇒ 0 ≤ C < 3571 C = 621 Le message codé complet s’écrit 0621 3121 1603 1630 Pour le décodage du message, on détermine d’abord la clé de décodage d en résolvant (8.32), soit 1999d ≡ 1(mod 3570) ⇒ d = 709 Le décodage proprement dit s’opère en appliquant la formule (8.33) à chacun des blocs. Pour le premier bloc de quatre chiffre, on a 0621709 ≡ B(mod 3571) 0 ≤ B < 3571 ⇒ B = 0215 5 Dans une succession d’équivalences ≡, on peut omettre la répétition de (mod On écrira donc Cd ≡ Bed ≡ B(mod p) au lieu de Cd ≡ Bed (mod p) ≡ B(mod p) p) pour alléger l’écriture. CHAPITRE 8. LES ENTIERS. 241 ce qui restitue la première partie du message. Le message décodé (mais chiffré) complet s’écrit 0215 1410 1521 1800 ité et correspond bien au message de départ. En pratique, bien entendu, on choisira des naturels p et e comportant un beaucoup plus grand nombre de chiffres afin de compliquer la tâche des éventuels pirates tentant de percer le code. ⋄ lim Le problème de cette méthode est que tout émetteur capable de coder un message est aussi capable de le décoder. En effet, il suffit de connaı̂tre p et e pour en calculer d. C’est pourquoi, on a inventé le système de cryptage à clé publique. Dans ce système, on choisit deux grands nombres premiers p et q comportant de l’ordre de 200 chiffres chacun, et une clé de codage e qui est un nombre premier avec6 φ(pq) = (p − 1)(q − 1). Seuls le produit n = pq et la clé e sont rendus publics ; la factorisation de n en les deux nombres premiers p et q étant tenue secrète. La connaissance de n et e suffit à encoder un message selon C ≡ Be (mod n) (8.34) Pour décoder le message, on doit déterminer la clé de décodage d telle que de ≡ 1(mod (p − 1)(q − 1)) Le succès de cette méthode provient du fait qu’il est extrêmement difficile de déterminer l’inverse de e lorsque seuls n et e sont connus. En effet, il faudrait factoriser n, ce qui est très très difficile étant donné que n comporte près de 400 chiffres. Par contre, on peut beaucoup plus aisément déterminer d si p et q sont connus. En appliquant la même méthode que dans le paragraphe précédent, on obtient alors sa ge U (8.35) Cd ≡ B(mod n) (8.36) Remarquons que l’auteur d’un message codé par ce système est incapable de décoder son propre message. E XEMPLE 8.32 Supposons que l’on désire transmettre le message NU MBER T HEORY En associant les lettres de l’alphabet avec les entiers de 1 à 26 (A=1, B=2, C=3. . . ) et en groupant les lettres par blocs de deux, ce message peut être chiffré selon 1421 1302 0518 0020 0805 1518 2500 6 Si p et q sont premiers, les multiples p, 2p, . . . , (q − 1)p, qp et q, 2q, . . . , (p − 1)q de p et q sont les seuls nombres qui ne sont pas premiers avec pq. Dès lors, φ(pq) = pq − 1 − (p − 1) − (q − 1) = pq − p − q + 1 = (p − 1)(q − 1) = φ(p)φ(q) Il s’agit là d’un résultat très général puisque l’on peut montrer que la fonction d’Euler est multiplicative, i.e. si m et n sont premiers entre eux alors φ(mn) = φ(m)φ(n). CHAPITRE 8. LES ENTIERS. 242 Choisissons7 n = 228795851 = 15121 · 15131 = pq et e = 1999. Remarquons que pgcd(1999, 15121) = pgcd(1999, 15131) = 1. Pour envoyer le message, on produit la version codée selon (8.34) soit 88105871 224222666 225218881 On calcule la clé de décodage en résolvant 81617401 48959911 221777037 ité 195417719 1999d ≡ 1(mod 15120 · 15130) soit d = 223043599 et on décode chaque bloc du message en élevant celui-ci à la puissance 223043599 et en simplifiant le résultat modulo 228795851. Par exemple, lim 195417719223043599 ≡ 1421(mod 228795851) ⋄ 8.2.10 Représentation des nombres en base b. On utilise communément la représentation des entiers en base 10. Cependant, il est parfois utile de se servir de bases différentes. En particulier, les ordinateurs utilisent la notation binaire, i.e. en base deux, pour effectuer des opérations arithmétiques. De même, on utilise la notation octale (base 8) ou hexadécimale (base 16) pour représenter les caractères. Cette possibilité est assurée par le théorème suivant (donné sans démonstration) : U sa ge ' Soit b un entier plus grand que 1. Tout entier positif n peut être écrit de façon unique selon n = ak bk + ak−1 bk−1 + · · · + a1 b + a0 (8.37) où k, a0 , a1 , . . ., ak−1 ∈ N et ak ∈ N0 . Cette expression, notée également (ak ak−1 · · · a1 a0 )b est la représentation de n en base b. & E XEMPLE 8.33 La représentation binaire du nombre 351 est (101011111)2 . En effet, $ % (101011111)2 = 28 + 26 + 24 + 23 + 22 + 21 + 20 = 351 ⋄ La représentation hexadécimale, i.e. en base 16, utilise les chiffres hexadécimaux 0,1,2,3,4,5,6,7,8,9,A=10,B=(11)10, C=(12)10 ,D=(13)10 ,E=(14)10 et F=(15)10 . E XEMPLE 8.34 La représentation en base 10 de (2AE0B)16 est (2AE0B)16 = 2 · 164 + 10 · 163 + 14 · 162 + 0 · 16 + 11 = 175 627 7 Évidemment ⋄ ce nombre est trop petit pour être utilisé dans la pratique. De plus la proximité de p et q facilite la recherche de la factorisation. CHAPITRE 8. LES ENTIERS. 243 La multiplication par deux d’un nombre en représentation binaire est effectuée très simplement. En effet, 2n = 2(ak 2k + ak−1 2k−1 + · · · + a1 2 + a0 ) (8.38) ité = ak 2k+1 + ak−1 2k + · · · + a1 22 + a0 2 + 0 016 = (0000)2 116 = (0001)2 216 = (0010)2 316 = (0011)2 lim Dès lors la représentation binaire de 2n est obtenue en ajoutant un zéro à la droite de la représentation binaire de n. On passe aisément de la représentation hexadécimale à la représentation binaire et inversement. En effet, chaque chiffre hexadécimal est représenté par un nombre binaire composé de quatre chiffres binaires puisque 416 = (0100)2 516 = (0101)2 616 = (0110)2 716 = (0111)2 816 = (1000)2 916 = (1001)2 A16 = (1010)2 B16 = (1011)2 C16 = (1100)2 D16 = (1101)2 E16 = (1110)2 F16 = (1111)2 U sa ge Dès lors, on passe de la représentation binaire à la représentation hexadécimale en transformant successivement chaque groupe de 4 chiffres binaires consécutifs en un chiffre hexadécimal, en commençant par la droite. Inversement, on passe de la représentation hexadécimale à la représentation binaire en substituant à chaque chiffre hexadécimal sa représentation binaire. E XEMPLE 8.35 En représentation hexadécimale, l’entier (101011111)2 est donné par (0001 | {z })2 = (15F)16 | {z } 1111 | {z } 0101 F 1 5 ⋄ 8.3 Algorithmes et définitions récursifs. Le principe de l’induction a de nombreuses applications. En algorithmique, il est à la base de la construction des algorithmes récursifs. Ceux-ci consistent à résoudre un problème en le réduisant à un ou plusieurs problèmes du même type mais de taille plus petite jusqu’à ce que cette décomposition du problème aboutisse à un problème de base dont la solution est connue. E XEMPLE 8.36 Le calcul du pgcd selon l’algorithme d’Euclide est réalisé selon un algorithme récursif. En utilisant un pseudo-code dont la signification est intuitivement évidente, on écrira Procédure pgcd (a, b : nombres entiers positifs avec a < b) si a = 0, alors pgcd(a, b) = b sinon pgcd(a, b) = pgcd(b mod a, a) ⋄ CHAPITRE 8. LES ENTIERS. 244 ité E XEMPLE 8.37 A LGORITHME DE FOUILLE BINAIRE R ÉCURSIF. Si on désire trouver l’emplacement d’un élément x dans une liste ordonnée a1 , a2 , . . . , an , on commencera par comparer x avec l’élément central a(n+1) div 2 (où (n + 1) div 2 désigne l’entier ⌊(n + 1)/2⌋). Si x est égal à cet élément, l’algorithme se termine. Sinon, on recherche x dans la première moitié de la liste si x < a(n+1) div 2 ou dans la seconde moitié si x > a(n+1) div 2 . On se ramène donc au même problème appliqué à un tronçon de la liste environ deux fois plus courte que la liste de départ. En pseudo-code, on a lim Procédure fouille (x, i, j) m = (i + j) div 2 si x = am alors emplacement = m sinon si (x < am et i < m) alors fouille (x, i, m − 1) sinon si (x > am et j > m) alors fouille (x, m + 1, j) sinon emplacement = 0 Dans cette procédure, x désigne l’élément recherché dans la liste a1 , a2 , . . . , an et les paramètres i et j sont des pointeurs délimitant le tronçon de la liste dans lequel la recherche est effectuée. ⋄ U sa ge Le principe d’induction peut également être utilisé pour définir des fonctions ou des ensembles de façon récursive ou inductive. Pour définir un ensemble de façon récursive, il suffit : i. de donner un ensemble initial d’éléments ; ii. de donner les règles employées pour former des éléments de l’ensemble à partir d’autres éléments déjà connus de l’ensemble. Il est entendu qu’aucun élément n’appartient à l’ensemble à moins d’appartenir à l’ensemble initial d’éléments ou de pouvoir être formé à partir d’éléments de l’ensemble par application des règles citées dans la définition récursive. E XEMPLE 8.38 F ORMULES MATH ÉMATIQUES BIEN FORM ÉES . Les formules bien formées des variables, des nombres et des opérateurs {+, −, ⋆, /} sont définies selon les conditions suivantes : i. x est une formule bien formée si x est un nombre ou une variable ; ii. ( f + g), ( f − g), ( f ⋆ g), ( f /g) sont des formules bien formées si f et g le sont. Ainsi, x, x + 3, x/3, ((x + 3) + y) sont des formules bien formées. (Remarquons que (x/0) est aussi une formule bien formée du point de vue de la syntaxe). ⋄ E XEMPLE 8.39 E NSEMBLE DES MOTS . Si Σ désigne un ensemble quelconque, on désigne par Σ∗ l’ensemble des mots sur Σ, c’està-dire l’ensemble de toutes les listes finies d’éléments de Σ. L’ensemble Σ est alors appelé un alphabet. Si on désigne par ε le mot vide, alors CHAPITRE 8. LES ENTIERS. 245 i. ε ∈ Σ∗ ii. ux ∈ Σ∗ si u ∈ Σ∗ et x ∈ Σ ité Dans cette définition, ux désigne la concaténation de u et x, c’est-à-dire le mot formé par le mot u suivi de l’élément x. ⋄ De nombreuses fonctions sont aussi définies de façon récursive. Pour être valable, une telle définition doit comprendre : i. la valeur de la fonction dans le cas de base ; ii. une règle permettant de ramener le calcul de la valeur de la fonction au cas de base. i. 0! = 1 ii. (n + 1)! = (n + 1)n! lim E XEMPLE 8.40 La fonction factorielle est définie de façon récursive pour tout naturel n par : ⋄ E XEMPLE 8.41 La longueur l d’un mot est définie par : i. l(ε) = 0 ii. l(ux) = l(u) + 1 si u ∈ Σ∗ et x ∈ Σ ⋄ U sa ge Remarquons que, comme la définition récursive d’une fonction fait intervenir cette même fonction, il est parfois difficile de vérifier que la fonction est bien définie. E XEMPLE 8.42 Soit M(n) = n − 10 si n > 100 M(M(n + 11)) si n ≤ 100 où n ∈ N. Pour n ≥ 101, la fonction est manifestement bien définie. Pour n ≤ 100, il vient M(100) = M(M(111)) = M(101) = 91 M(99) = M(M(110)) = M(100) = M(M(111)) = M(101) = 91 On prouve aisément que M(n − 1) = M(n) pour n > 90. En effet, M(n − 1) = M(M(n + 10)) = M((n + 10) − 10) = M(n) Dès lors, M(n) = 91 pour n ≥ 90. Pour n < 90, on se ramène finalement à une expression du type M(n) = M(M(n + 11)) = M(91) = 91 La fonction est bien définie pour n ∈ N. ⋄ CHAPITRE 8. LES ENTIERS. 246 ité E XEMPLE 8.43 Considérons l’expression 1 si n=1 n 1 + G( ) si n est pair G(n) = 2 G(3n − 1) si n est impair Ceci ne constitue pas la définition récursive d’une fonction. En effet, on a G(1) = 1 lim G(2) = 1 + G(1) = 2 G(3) = G(8) = 1 + G(4) = 1 + [1 + G(2)] = 4 G(4) = 1 + G(2) = 3 mais G(5) = G(14) = 1 + G(7) = 1 + G(20) = 1 + [1 + (1 + G(5))] = 3 + G(5) U sa ge ce qui n’est pas possible. ⋄ 8.4 Exercices. 1) Démontrez les énoncés suivants ou donnez un contre-exemple : a) Le produit de deux rationnels est un rationnel. b) Le quotient de deux rationnels est un rationnel. c) La différence de deux rationnels est un rationnel. Rép. : a) vrai; b) vrai; c) vrai CHAPITRE 8. LES ENTIERS. 247 2) Démontrez les énoncés suivants : a) Le carré de tout entier pair est pair. c) Si n est un entier impair, alors n2 + n est pair. ité b) Le carré de tout entier impair est impair. d) Si r est un rationnel, alors 2r2 − r + 1 est un rationnel. 3) Démontrez les énoncés suivants ou donnez un contre-exemple : a) Quels que soient les entiers a, b et c, si a|(b + c), alors a|b et a|c. lim b) Quels que soient les entiers a et b, si a|b, alors a2 |b2 . c) Quels que soient les naturels a et b, si a ≡ r(mod b), alors pgcd(a, b) ≤ r. Rép. : a) faux; b)vrai; c)vrai 4) Montrez que tout entier n peut être écrit d’une des trois façons : n = 3q, n = 3q + 1 ou n = 3q + 2 où q ∈ Z Déduisez en que le produit de trois entiers consécutifs est toujours divisible par 3. Déduisez en également que le carré d’un entier quelconque peut toujours s’écrire sous la forme 3k ou 3k + 1 où k ∈ Z. U sa ge 5) Montrez que le carré d’un entier quelconque peut toujours s’écrire sous la forme 4k ou 4k + 1 où k ∈ Z. 6) Démontrez les énoncés suivants ou donnez un contre-exemple : a) ∀x, y ∈ R, ⌈x + y⌉ = ⌈x⌉ + ⌈y⌉ b) ∀x, y ∈ R, ⌈xy⌉ = ⌈x⌉⌈y⌉ n n+1 c) ∀n ∈ Z, ⌈ ⌉ = 2 2 d) ∀x, y ∈ R, ⌈xy⌉ = ⌈x⌉⌊y⌋ e) La fonction f (x) = (ax + b) mod n (où a, b et n(> 0) sont des entiers quelconques) définit une bijection de Nn = {0, 1, 2, . . ., n − 1} sur lui-même si a et n sont premiers entre eux. Rép. : a) faux; b) faux; c) faux; d) faux; e) vrai. 7) Déterminez si les énoncés suivants sont vrais ou donnez un contre-exemple : n a) ∑ k2 = k=1 n−1 b) c) n(n + 1)(2n + 1) , ∀n ∈ N0 6 ∑ k(k + 1) = k=1 4n − 1 n(n − 1)(n + 1) , ∀n ≥ 2, n ∈ N 3 est divisible par 3 ∀n ∈ N CHAPITRE 8. LES ENTIERS. 248 n n(n + 1)(2n + 1) , ∀n ∈ N0 2 k=1 1 1 1 n e) + +···+ = , ∀n ∈ N0 1.2 2.3 n(n + 1) n + 1 ∑ k3 = n+1 f) ∑ k 2k = n · 2n+2 + 2, ∀n ∈ N ité d) lim k=1 1 1 1 g) 1 + 1+ ... 1+ = n + 1, ∀n ∈ N0 1 2 n 1 1 n+1 1 1 − 2 . . . 1 − 2 = n , ∀n ≥ 2, n ∈ N h) 1 − 2 2 3 n 2 Rép. : a) vrai b) vrai c) vrai d) faux N.B. = e) vrai f) vrai g) vrai h) faux NB. = n2 (n + 1)2 4 n+1 2n 8) Prouvez les propositions suivantes : U sa ge a) 23n − 1 est divisible par 7 ∀n ∈ N b) 32n − 1 est divisible par 8 ∀n ∈ N c) 2n < (n + 2)! ∀n ∈ N √ 1 1 1 ∀n ≥ 2, n ∈ N d) n < √ + √ + · · · + √ n 1 2 e) n3 > 2n + 1 ∀n ∈ N, n ≥ 2 f) n! > n2 ∀n ∈ N, n ≥ 4 9) En utilisant le principe d’induction généralisé, montrez que le déterminant ∆n de la matrice tridiagonale carrée d’ordre n 5 4 0 0 ··· ··· ··· 0 1 5 4 0 · · · · · · · · · 0 0 1 5 4 . . . 0 .. . 0 0 0 1 5 .. .. . . . . . . . . . . . . . . . . . 0 0 · · · 0 1 5 4 0 0 0 · · · 0 0 1 5 4 0 0 ··· 0 0 0 1 5 CHAPITRE 8. LES ENTIERS. 249 est donné par 41+n − 1 3 10) Soit une suite a1 , a2 , a3 . . . définie comme suit : a1 = 1, a2 = 3 ak = ak−2 + 2ak−1 ∀k ∈ N, Montrez que an est impair ∀n ∈ N 11) Soit la suite e0 , e1 , e2 . . . définie comme suit : ité ∆n = k≥3 lim e0 = 1, e1 = 2, e2 = 3 ek = ek−1 + ek−2 + ek−3 ∀k ∈ N, k≥3 U sa ge Montrez que en ≤ 3n ∀n ∈ N 12) Résolvez les équations suivantes pour x, y ∈ Z. a) 7x + 3y = 17 Rép. : (x, y) = (17, −34) + t(3, −7) b) 6x + 9y = 33 Rép. : (x, y) = (−11, 11) + t(3, −2) c) 6x + 12y = 36 Rép. : (x, y) = (6, 0) + t(2, −1) d) 425x + 153y = 68 Rép. : (x, y) = (16, −44) + t(9, −25) 13) Résolvez les congruences suivantes. a) 2x ≡ 3(mod 7) Rép. : x ≡ 5(mod 7) b) 10x ≡ 6(mod 18) Rép. : x ≡ 6(mod 9) c) 10x ≡ 15(mod 17) Rép. : x ≡ 10(mod 17) d) 2x ≡ 3(mod 15) Rép. : x ≡ 9(mod 15) e) 10x ≡ 3(mod 27) Rép. : x ≡ 3(mod 27) f) 35x ≡ 14(mod 182) Rép. : x ≡ 16(mod 26) 14) Déterminez le naturel x inférieur à 100 qui, multiplié par 7, présente un reste égal à 2 lorsqu’il est divisé par 9 et qui, multiplié par 17, possède un reste de 1 pour la division par 10. Montrez que x est unique dans l’intervalle [0, 100]. Rép. : 53 15) Déterminez une expression bi-paramétrique de toutes les solutions entières de l’équation 2x + 3y + 4z = 10 Suggestion : posez 3y + 4z = u. Rép. : x = t, y = −10 + 2t + 4t ′, z = 10 − 2t − 3t ′ où t,t ′ ∈ Z 16) Sur l’ı̂le de Groland, la monnaie locale est le Grossou. Afin d’éviter de produire des pièces et des billets de trop de valeurs différentes, le ministre des finances propose de n’émettre que des pièces de 5 et de 7 Grossous. Déterminez le nombre de façons différentes de former un montant de 1 000 Grossous avec ces deux sortes de pièces. Rép. : 29 ité Chapitre 9 lim Équations aux différences. Lorsque les éléments d’une suite {an } sont définis par une relation du type an+N = f (n, an, an+1 , . . ., an+N−1 ) (9.1) on dit qu’il s’agit d’une équation aux différences. Ce type de relation apparaı̂t très souvent en mathématiques lorsque l’on désire étudier un problème discret. U sa ge E XEMPLE 9.1 N OMBRES DE F IBONACCI . Au XIIème siècle, Leonardo di Pisa, mieux connu sous le nom de Fibonacci, posa le problème suivant. Un jeune couple de lapins est abandonné sur une ı̂le au début de l’année. Supposons que : – les lapins ne peuvent se reproduire avant l’âge de deux mois mais que, ensuite, chaque couple de lapins donne naissance à un nouveau couple de lapins chaque mois ; – aucun lapin ne meure pendant la première année. Déterminons alors combien de lapins comptera l’ı̂le à la fin de l’année. Soit fn le nombre de couples de lapins après n mois. Initialement f0 = 1. À la fin du premier mois, le nombre de couples de lapins est f1 = 1 puisque les lapins sont encore trop jeunes pour se reproduire. Ensuite, le couple initial de lapins ayant donné naissance à un nouveau couple, au terme du deuxième mois, il vient f2 = 2. Plus généralement, à la fin du mois n, les lapins présents sur l’ı̂le sont ceux présents au mois précédent fn−1 et les lapins nouveau-nés engendrés par les couples de lapins en âge de se reproduire, c’est-à-dire ceux qui étaient présents deux mois plus tôt, soit fn−2 . Donc fn = fn−1 + fn−2 (n ≥ 2) Les nombres fn définis par cette relation de récurrence sont les nombres de Fibonacci. En utilisant de façon répétée la formule, il vient f0 = 1 f1 = 1 f2 = 2 f3 = 3 f4 = 5 f5 = 8 f6 = 13 f7 = 21 f8 = 34 f9 = 55 f10 = 89 f11 = 144 f12 = 233 Ainsi donc l’ı̂le comprendra 466 lapins à la fin de l’année. 250 ⋄ CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 251 ité E XEMPLE 9.2 I NT ÉR ÊT BANCAIRE . Si une personne dépose une somme de 10 000 Euros sur un compte d’épargne qui lui rapporte un intérêt de 4 % par an et s’il n’y a ni nouveau dépôt ni retrait, le montant accumulé après n années est donné par Pn = Pn−1 + i Pn−1 = (1 + i)Pn−1 où i = 0.04 est le taux d’intérêt. Puisque P0 = 10 000 Euros, il vient Pn = (1 + i)Pn−1 = (1 + i)(1 + i)Pn−2 = · · · = (1 + i)n P0 lim Soit, après trente ans, par exemple, P30 = (1 + 0.04)30 10 000 = 32 433.98 Euros Les exemples précédents font apparaı̂tre la nécessité de disposer des quelques premières valeurs a0 , a1 , . . ., aN−1 de la suite des an afin de pouvoir déterminer tous les éléments de la suite par application de la relation de récurrence. Les a0 , a1 , . . ., aN−1 jouent le même rôle que les conditions initiales nécessaires et suffisantes à la détermination d’une solution unique d’une équation différentielle d’ordre N. Elles sont dès lors également appelées les conditions initiales de l’équation aux différences. L’analogie ne s’arrête pas là. En effet, les équations aux différences jouent en mathématiques discrètes un rôle analogue à celui des équations différentielles en analyse. La différence est que la solution d’une équation aux différences est une fonction définie sur les entiers ; l’indice discret n remplace la variable continue de l’équation différentielle. Beaucoup de méthodes analytiques applicables aux équations différentielles (réduction de l’ordre, variation des constantes, facteur intégrand) sont d’ailleurs aussi applicables aux équations aux différences. Enfin, des équations aux différences sont souvent fournies pour résoudre numériquement les équations différentielles. Le passage de la forme continue à la forme discrète d’un problème est appelé la discrétisation. Celle-ci comporte deux étapes : – D’abord, on remplace la variable indépendante x par une variable discrète n définissant un réseau du type sa ge U ⋄ xk = k ∆x + x0 où k ∈ N (9.2) – Ensuite, on remplace la fonction inconnue et ses dérivées par des approximations en fonction des valeurs de l’inconnue aux noeuds du réseau. Pour ce faire, on utilise les approximations suivantes obtenues par application de la formule de Taylor y(xk ) = yk y(xk+1 ) − y(xk ) yk+1 − yk y′ (xk ) = + O(∆x) ∼ ∆x ∆x (9.3) (9.4) CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 252 ou, avec un meilleur degré d’approximation, yk+1 − yk−1 y(xk+1 ) − y(xk−1 ) + O(∆x2 ) ∼ 2∆x 2∆x yk+1 − 2yk + yk−1 y(x ) − 2y(x ) + y(x ) k+1 k k−1 y′′ (xk ) = + O(∆x2 ) ∼ 2 ∆x ∆x2 E XEMPLE 9.3 Soit l’équation (9.5) ité y′ (xk ) = (9.6) d2T dT (x) = K 2 (x) dx dx décrivant la distribution spatiale stationnaire de la température T dans un fluide en mouvement à la vitesse u et caractérisé par un coefficient de diffusion thermique K. Le membre de gauche représente l’advection c’est-à-dire le transport de la chaleur par un mouvement d’ensemble du fluide. Le membre de droite correspond par contre à un échange de chaleur pouvant se produire sans que le fluide ne soit en mouvement : c’est la diffusion. Si on choisit de résoudre cette équation sur un réseau régulier xk = k ∆x, il vient, notant Tk = T (xk ), Tk+1 − Tk−1 Tk+1 − 2Tk + Tk−1 u =K + O(∆x2 ) 2∆x ∆x2 u∆x ou encore, en introduisant le nombre de Peclet Pe = , et en laissant tomber les termes en ∆x2 , K lim u U sa ge (Pe − 2)Tk+1 + 4Tk − (Pe + 2)Tk−1 = 0, ⋄ qui représente l’équation aux différences correspondant à l’équation différentielle initiale. Par analogie avec les formules précédentes, on définit la dérivée discrète d’une fonction définie sur les entiers par D an ≡ an+1 − an (9.7) D2 an = (an+2 − an+1 ) − (an+1 − an ) = an+2 − 2an+1 + an (9.8) La dérivée seconde est donnée par De même, les dérivées d’ordre k(k > 1) quelconque sont définies de façon récursive par Dk an = Dk−1 an+1 − Dk−1 an (9.9) On peut également définir l’opération inverse de la dérivation, i.e. l’intégration d’une fonction discrète. On vérifie aisément que n−1 n−1 k=0 k=0 ∑ Dak = ∑ (ak+1 − ak ) = (a1 − a0 ) + (a2 − a1 ) + (a3 − a2 ) + · · · + (an − an−1 ) = an − a0 (9.10) CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 253 Dès lors, n−1 an = a0 + ∑ Dak (9.11) k=0 E XEMPLE 9.4 Soit la fonction discrète La dérivée discrète de fn est lim fn = n(n + 1) . . . (n + k − 1) ité qui fait apparaı̂tre la possibilité de calculer l’équivalent d’une primitive d’une fonction discrète au moyen d’une somme. Comme dans le cas continu, cette opération fait apparaı̂tre une constante d’intégration a0 . Une somme est donc l’analogue discret d’une intégrale comme le suggère d’ailleurs la définition de l’intégrale de Riemann. D fn = fn+1 − fn = (n + 1)(n + 2) . . . (n + k) − n(n + 1) . . . (n + k − 1) = [(n + 1)(n + 2) . . . (n + k − 1)](n + k − n) = k(n + 1)(n + 2) . . . (n + k − 1) On remarque que la fonction discrète fn est un produit de k facteurs tandis que sa dérivée discrète comporte (k − 1) facteurs dépendant de n. La fonction fn constitue donc l’analogue discret de la fonction continue f (x) = xk qui contient également k facteurs et dont la dérivée f ′ (x) = kxk−1 ne comporte que (k − 1) facteurs. ⋄ U sa ge On définit l’ordre d’une équation aux différences par l’ordre de dérivation le plus élevé apparaissant dans cette équation. Une équation aux différences d’ordre N s’écrit donc F[DN an , DN−1 an , . . . , Dan , an , n] = 0 (9.12) soit, en remplaçant les dérivées discrètes par leurs expressions, G[an+N , an+N−1 , . . ., an+1 , an , n] = 0 (9.13) Cette équation est dite linéaire si la fonction G apparaissant dans (9.13) est linéaire en les an+N , an+N−1 , . . . , an . 9.1 Equations aux différences du premier ordre. Les équations du premier ordre les plus simples sont celles qui peuvent s’écrire sous la forme an+1 = p(n)an n ≥ 0 (9.14) Dans ce cas, il vient, en itérant, an+1 = p(n)an = p(n)[p(n − 1)an−1] = p(n)p(n − 1) . . . p(1)p(0)a0 n = a0 ∏ p(k) k=0 (9.15) CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 254 La solution est donc entièrement déterminée dès que la condition initiale a0 = C est fixée. an+1 = (n + 1)an a0 = 1 Il vient n n+1 k=0 k=1 n≥0 ité E XEMPLE 9.5 Soit an+1 = ∏ (k + 1) = ∏ k = (n + 1)! et donc lim an = n! Dans le cas d’une équation du type an+1 = αan + f (n) a0 = C n ≥ 0, α = constante ⋄ (9.16) on peut aussi obtenir la solution en itérant la formule U sa ge an+1 = αan + f (n) = α[αan−1 + f (n − 1)] + f (n) .. . (9.17) n = αn+1 a0 + ∑ αk f (n − k) soit k=0 n−1 an = α C + ∑ αk f (n − k − 1) n (9.18) k=0 On peut également procéder différemment en sommant l’équation (9.16) pour un ensemble approprié de valeurs de l’indice. Introduisons d’abord le changement d’inconnue an = ãn αn , il vient f (n) ãn+1 = ãn + n+1 α (9.19) ã0 = C Dès lors, n−1 n−1 k=0 n−1 k=0 ∑ ãk+1 = n−1 f (k) k+1 k=0 α ∑ ãk + ∑ n−1 n−1 f (k) k+1 k=0 α ãn + ∑ ãk = ã0 + ∑ ãk + ∑ k=1 k=1 CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 255 soit n−1 f (k) k+1 k=0 α ãn = ã0 + ∑ = αnC + k=0 n−1 ité n−1 an = αnC + ∑ αn−k−1 f (k) (9.20) αk f (n − k′ − 1) ∑ ′ ′ k =0 (9.21) lim en effectuant le changement d’indice k′ = n − k − 1. Le comportement asymptotique de la solution (9.21) pour n grand dépend du paramètre α. En effet, si |α| < 1, le terme αnC tend vers zéro quand n grandit tandis qu’il tend vers l’infini si |α| > 1. Comme le montre l’exemple suivant, une même approche peut être mise en œuvre pour résoudre des systèmes d’équations aux différences du premier ordre. E XEMPLE 9.6 Le transport d’un polluant dans une rivière en aval du point de rejet peut être décrit par l’équation aux dérivées partielles ∂C ∂C +u = −α C ∂t ∂x U sa ge où C(t, x) désigne la concentration du polluant au temps t et à l’abscisse x, où u désigne la vitesse du courant (supposée constante) et où α > 0 désigne le taux avec lequel le polluant est soustrait de la rivière par l’action de réactions chimiques. On discrétise cette équation par rapport au temps t et à la coordonnée spatiale x en notant Cik la concentration au temps t = t0 + i∆t et à l’abscisse x = x0 + k∆x ; ∆t et ∆x désignant respectivement le pas temporel et le pas spatial d’intégration. Approchant les dérivées par des différences finies, il vient k Ck −Ci−1 Cik+1 −Cik +u i = −α Cik ∆t ∆x soit k Cik+1 = β Ci−1 + (1 − β − α∆t)Cik u∆t où β = désigne le nombre de Courant. ∆x Si on s’intéresse au tronçon de rivière situé entre le point de rejet et l’abscisse xn = x0 + n∆x, le problème peut se mettre sous la forme matricielle k+1 γ 0 0 · · · 0 0 k C1 C1 βC0 β γ 0 · · · 0 0 Ck+1 0 C2k 2 .. Ck Ck+1 0 . 3 3 0 β γ . = . .. + .. .. .. .. .. .. . . . . . k Ck+1 0 0 0 β γ 0 Cn−1 0 n−1 Cnk 0 Cnk+1 0 0 0 0 β γ CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 256 le problème prend la forme lim Ck+1 = ACk + f ité où C0 désigne la concentration du polluant au point de rejet (supposée constante) et où on a posé γ = 1 − β − α∆t. Introduisant k γ 0 0 ··· 0 0 C1 βC0 β γ 0 · · · 0 0 Ck 0 2 . k C 0 .. 0 β γ 3 , Ck = . , A= f = . , .. . . . . .. .. .. .. . . k C 0 0 0 0 β γ 0 n−1 k Cn 0 0 0 0 0 β γ semblable à (9.16). La solution se déduit donc de (9.18) : Ck = Ak C0 + (I + A + A2 + · · · + Ak−1 )f où C0 désigne la distribution initiale de la concentration du polluant. Le comportement de la solution pour k → ∞ dépend de la matrice A. D’après la nature du problème, la concentration du polluant doit décroı̂tre monotonément au fil du courant en présentant un maximum au point de rejet. Pour qu’il en soit de même de la solution discrète, il suffit d’exiger que 0 < 1 − β − α∆t < 1 U sa ge Cette condition implique en effet que les valeurs propres de la matrice A (toutes confondues et égales à γ) soient strictement comprises entre 0 et 1 de sorte que Ak converge monotonément vers la matrice nulle. Ces inégalités constituent les conditions de stabilité du schéma d’intégration considéré. Elles induisent une limitation sévère du pas de temps d’intégration ∆t qui ne peut être choisi librement. Dans le cas particulier où α = 0, la condition de Courant u∆t <1 ∆x signifie que le fluide ne peut se déplacer de plus d’un pas spatial ∆x pendant un pas d’intégration ∆t. Une autre façon de dégager des conditions suffisantes de stabilité du schéma d’intégration consiste à exiger que kAk < 1 pour une certaine norme matricielle. Dans ce cas, on a, en effet, β= kAk C0 k = kA(Ak−1 C0 )k ≤ kAk kAk−1 C0 k ≤ · · · ≤ kAkk kC0 k → 0 quand k → ∞ et on peut également montrer que (I + A + A2 + · · · + Ak−1 ) → (I − A)−1 quand k → ∞ de sorte que Ck → (I − A)−1 f On vérifie, par exemple, aisément que la condition kAk∞ < 1 est vérifiée si 0 < 1 − β − α∆t et β>0 ⋄ CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 257 9.2 Equations aux différences linéaires. Une équation aux différences linéaire d’ordre N possède la forme générale ité an+N + pN−1 (n)an+N−1 + pN−2 (n)an+N−2 + · · · + p1 (n)an+1 + p0 (n)an = f (n) (9.22) où p0 , p1 , . . . , pN−1 et f sont des fonctions quelconques de la variable entière n. Des conditions suffisantes d’existence et d’unicité de la solution sont fixées par l’énoncé suivant. ' lim T H ÉOR ÈME D ’ EXISTENCE ET UNICIT É Si les fonctions p0 (n), p1 (n), . . ., pN−1 (n) et f (n) sont définies pour tout n ≥ n0 , alors il existe une solution an unique de l’équation aux différences linéaire an+N + pN−1 (n)an+N−1 + · · · + p1 (n)an+1 + p0 (n)an = f (n) $ (9.23) valable pour n ≥ n0 et vérifiant les conditions initiales an0 = C0 , & an0 +1 = C1 , ..., an0 +N−1 = CN−1 U sa ge quelles que soient les constantes C0 , C1 ,. . . , CN−1 . (9.24) % Si on fixe les conditions initiales (9.24), alors la solution an peut être obtenue pour tout n ≥ n0 + N par applications répétées de (9.23). En effet, utilisant l’équation (9.23) successivement pour n = n0 , n0 + 1,. . . , on détermine univoquement an0 +N , an0 +N+1 ,. . . . Le théorème montre que la solution générale de (9.23) contient N constantes d’intégration qui peuvent être déterminées univoquement par des conditions initiales du type (9.24). On peut également résoudre des problèmes aux limites caractérisés par la données de N valeurs de an (ou de ses dérivées discrètes) réparties dans l’intervalle [n1 , n2 ]. Dans ce cas, cependant, il n’existe aucun critère simple permettant d’assurer le caractère bien posé du problème, i.e. la détermination univoque des constantes d’intégration. Le problème (9.23) étant linéaire en la fonction discrète inconnue an , le théorème de structure des solutions des équations différentielles linéaires est aussi d’application dans le cas discret : la solution générale d’une équation aux différences linéaire s’exprime sous la forme de la somme de la solution générale de l’équation homogène associée, i.e. l’équation obtenue à partir de (9.23) en posant f (n) = 0, et d’une solution particulière de l’équation non homogène. CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 258 9.2.1 Equations aux différences linéaires et homogènes. L’ensemble des solutions de l’équation aux différences linéaire homogène (9.25) ité an+N + pN−1 (n)an+N−1 + · · · + p1 (n)an+1 + p0 (n)an = 0 constitue un espace vectoriel. En effet, si an,1 et an,2 sont deux solutions de (9.25), on vérifie aisément que α an,1 + β an,2 (9.26) lim constitue également une solution de (9.25) quelles que soient les constantes α et β. Reprenant le raisonnement mené dans la démonstration du théorème d’existence et d’unicité de la solution de (9.23), on remarque que la donnée de N conditions initiales du type (9.24) suffit non seulement à définir complètement et univoquement la solution pour tout n ≥ n0 + N mais également pour tout n < n0 appartenant à un intervalle du type1 [n1 , n0 ] sur lequel p0 (n) ne s’annule pas. Sous cette condition, l’équation (9.25) peut en effet être intégrée à rebours en écrivant i 1 h an+N + pN−1 (n)an+N−1 + · · · + p1 (n)an+1 (9.27) an = − p0 (n) et être utilisée sous cette forme pour prolonger univoquement la solution dans [n1 , n0 ]. U sa ge E XEMPLE 9.7 Considérons l’équation aux différences (linéaire du premier ordre) an+1 + (n2 − 4)an = 0 Si la valeur de a0 est donnée, alors, par applications successives de l’équation aux différences, on obtient aisément n=0 : a1 − 4a0 = 0 ⇒ a1 = 4a0 n=1 : a2 − 3a1 = 0 ⇒ a2 = 12a0 Les valeurs de a1 et a2 sont donc univoquement déterminées par la donnée de a0 . À partir de n = 2, par contre, il vient n=2 : a3 − 0a2 = 0 ⇒ a3 = 0 n=3 : a4 + 5a3 = 0 ⇒ a4 = 0 et 0 = a3 = a4 = a5 = · · · . L’annulation du coefficient p0 (2) induit l’indépendance des valeurs de an pour n > 2 par rapport à la condition initiale a0 . En procédant en arrière, on obtient 1 Dans cette n = −1 : a0 − 3a−1 = 0 ⇒ n = −2 : a−1 − 0a−2 = 0 ⇒ a0 3 a−2 = ? a−1 = section, nous utiliserons la notation [n1 , n0 ] pour désigner l’ensemble des valeurs entières de n telles que n1 ≤ n ≤ n0 . CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 259 La solution an est donc indéterminée pour n ≤ −2. ⋄ ∀n ∈ [n1, n2 ]. (9.28) lim p0 (n) 6= 0, ité L’écriture de l’équation aux différences sous la forme canonique (9.25) garantit la possibilité d’intégrer l’équation en avant, i.e. de déterminer an pour des valeurs croissantes de n en partant de n0 . La condition p0 (n) 6= 0 assure quant à elle que l’équation aux différences fonctionne également comme une équation aux différences arrière, i.e. permet de déterminer an pour des valeurs décroissantes de n en partant de n0 . Désignons par [n1 , n2 ] un intervalle tel que Toute solution an est entièrement déterminée (au moins) sur [n1 , n2 ] par la donnée de N de ses valeurs consécutives (on suppose ici que n2 − n1 ≥ N) an0 , an0 +1 , ..., (9.29) an0 +N−1 quel que soit n0 appartenant à [n1 , n2 ]. On en déduit que l’espace vectoriel des solutions de (9.25) dans [n1 , n2 ] est de dimension N et que, dès lors, la solution générale sur [n1 , n2 ] est une combinaison linéaire arbitraire de N solutions an,1 , an,2 , . . . , an,N linéairement indépendantes sur [n1 , n2 ], c’est-à-dire telles que U sa ge k1 an,1 + k2 an,2 + · · · + kN an,N = 0 ∀n ∈ [n1 , n2 ] ⇔ k1 = k2 = · · · = kN = 0 (9.30) Tout ensemble de N solutions linéairement indépendantes sur [n1, n2 ] forme une base de l’espace vectoriel des solutions. On peut tester l’indépendance linéaire des fonctions an,1 , an,2 , . . . , an,N en formant le Wronskien Wn (aussi appelé Casoratien) tel que2 an,1 an,2 ··· an,N an+1,1 an+1,2 · · · an+1,N Wn = W (an,1 , an,2 , . . ., an,N ) = .. .. .. . . ... . an+N−1,1 an+N−1,2 an+N−1,N 2 Adaptant on a (9.31) la définition du Wronskien de la théorie des équations différentielles linéaires au cas discret, an,1 Dan,1 . . . DN−1 a n,1 ··· ··· . . . ··· an,N Dan,N . . . DN−1 an,N an,1 an+1,1 − an,1 = . . . a N−1 a n+N−1,1 − · · · + (−1) n,1 an,1 ··· an,N an+1,1 ··· an+1,N = . . .. . . . . . a an+N−1,N n+N−1,1 ··· ··· . . . ··· an,N an+1,N − an,N . . . an+N−1,N − · · · + (−1)N−1 an,N = W (an,1 , an,2 , . . ., an,N ) par un ensemble d’opérations élémentaires appliquées aux lignes de la matrice. CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 260 ' Soient N solutions an,1 , an,2 , . . .an,N de l’équation linéaire et homogène $ ité an+N + pN−1 (n)an+N−1 + pN−2 (n)an+N−2 + · · · + p1 (n)an+1 + p0 (n)an = 0 et soit un intervalle [n1, n2 ] tel que p0 (n) 6= 0 ∀ n ∈ [n1 , n2 ]. On a : Wn = W (an,1 , an,2 , . . . , an,N ) 6= 0 ∀n ∈ [n1 , n2 ] m lim & an,1 , an,2 . . . , an,N sont linéairement indépendantes sur [n1 , n2 ] % Puisque p0 (n) 6= 0 ∀n ∈ [n1 , n2 ], les solutions an,1 , an,2 , . . . an,N sont entièrement déterminées sur [n1 , n2 ] par les valeurs prises en n, n + 1, . . . , n + N − 1 quelle que soit la valeur fixée de n choisie dans [n1 , n2 ]. En vertu de la propriété fondamentale des déterminants, ces valeurs sont linéairement indépendantes si et seulement si Wn est non nul. U sa ge Les techniques utilisées dans le cadre des équations différentielles sont également utilisées dans le cas discret. Réduction de l’ordre. Dans le cas où l’on connaı̂t une solution An de l’équation linéaire homogène d’ordre N, la substitution an = An xn (9.32) conduit à une équation linéaire homogène d’ordre N − 1 pour Dxn . E XEMPLE 9.8 Soit l’équation (n + 4)an+2 + an+1 − (n + 1)an = 0 Sachant que An = 1 est une solution particulière3 , on pose (n + 1)(n + 2) an = An xn = 3 En (n ≥ 0) xn (n + 1)(n + 2) substituant An dans le premier membre de l’équation aux différences, on obtient n+4 1 (n + 1) (n + 2) + 1 − (n + 3) + − = =0 (n + 3)(n + 4) (n + 2)(n + 3) (n + 1)(n + 2) (n + 3)(n + 2) CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 261 La nouvelle inconnue xn doit donc vérifier l’équation (1) soit, si on note xn = Dxn = xn+1 − xn , (1) (1) xn+1 xn + =0 n+3 n+2 et ité (n + 4)xn+2 xn+1 (n + 1)xn xn+2 − xn+1 xn+1 − xn + − = + =0 (n + 3)(n + 4) (n + 2)(n + 3) (n + 1)(n + 2) (n + 3) (n + 2) n + 3 (1) xn n+2 En itérant, on obtient la solution de cette équation sous la forme n + 2 (1) n+2 n + 1 (1) (1) = − x − xn−2 xn = − n + 1 n−1 n+1 n n+2 n+1 4 3 (1) = − − ··· − − x n+1 n 3 2 0 n + 2 (1) = (−1)n x = (−1)n (n + 2)C1 2 0 (1) lim xn+1 = − U sa ge où C1 est une constante à déterminer en fonction des conditions initiales. Pour obtenir l’expression de xn , il reste à résoudre xn+1 − xn = (−1)n (n + 2)C1 soit, en sommant, n−1 n−1 k=0 k=0 n+1 ∑ (xk+1 − xk ) = C1 ∑ (−1)k (k + 2) xn − x0 = C1 ∑ (−1)k k k=2 ou encore, en utilisant la relation4 n+1 ∑ (−1)k k = k=2 3 + (−1)n+1 (2n + 3) , 4 xn = C1 (−1)n+1 2n + 3 +C2 4 La solution générale est donc an = C1 (−1)n+1 (2n + 3) C2 + 4(n + 1)(n + 2) (n + 1)(n + 2) ⋄ 4 Cette relation peut être démontrée par induction. CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 262 Equation aux différences linéaire homogène à coefficients constants. Dans le cas d’une équation aux différences linéaire, homogène, de degré N et à coefficients constants, on dispose d’une méthode systématique pour déterminer la solution générale. $ ité ' La solution générale de l’équation aux différences linéaire, homogène, de degré N et à coefficients constants an+N + pN−1 an+N−1 + pN−2 an+N−2 + · · · + p1 an+1 + p0 an = 0 (9.33) lim (où pN−1 , pN−2 , . . . , p0 sont des constantes) peut être exprimée comme une combinaison linéaire de N termes de la forme nr λ n , r = 0, 1, 2, . . ., α − 1 (9.34) où λ désigne un zéro de multiplicité α du polynôme caractéristique & q(z) = zN + pN−1 zN−1 + · · · + p1 z + p0 Substituons an = λn dans (9.33). On a (9.35) % U sa ge λn+N + pN−1 λn+N−1 + · · · + p1 λn+1 + p0 λn = 0 ce qui prouve que λn est une solution si λ est un zéro du polynôme caractéristique. Supposons ensuite que λ soit un zéro double du polynôme caractéristique. Dans ce cas, on prouve que an = n λn est aussi une solution puisque λ (n + N)λn+N−1 + pN−1 (n + N − 1)λn+N−2 + · · · + p1 (n + 1)λn + p0 nλn−1 d = λ nλn−1 q(λ) + λnq′ (λ) = 0 = λ [zn q(z)] dz z=λ en tenant compte du fait que q(λ) = q′ (λ) = 0 si λ est un zéro de multiplicité égale à deux. Les zéros de multiplicité supérieure se traitent de la même façon. Cette procédure permet d’identifier autant de solutions que de zéros du polynôme caractéristique, comptés avec leur multiplicité, soit N. On peut montrer que ces solutions sont linéairement indépendantes (elles sont caractérisées par des taux de croissance différents) et forment un ensemble fondamental de solutions. E XEMPLE 9.9 Soit à résoudre an+2 − 5an+1 + 6an = 0 (n ≥ 0) CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 263 z2 − 5z + 6 = (z − 3)(z − 2) possède deux zéros distincts 2, 3 de sorte que an = C1 2n +C2 3n ité avec a0 = 1 et a1 = 1. Le polynôme caractéristique lim où les constantes C1 et C2 sont déterminées à partir des conditions initiales ( ( a0 = 1 = C1 +C2 C1 = 2 ⇒ a1 = 1 = 2 C1 + 3 C2 C2 = −1 Finalement an = 2 2n − 3n = 2n+1 − 3n Remarquons que les deux solutions 2n et 3n sont bien linéairement indépendantes puisque n n 2 1 1 3 n = 6n 6= 0 Wn = n+1 n+1 = 6 2 3 2 3 E XEMPLE 9.10 Soit an+2 − 2an+1 + an = 0 n ≥ 0 a1 = 2 a0 = 1 U sa ge ⋄ Le polynôme caractéristique z2 − 2 z + 1 possède un zéro double pour z = 1. Dès lors an = (C1 + n C2 ) 1n = C1 + n C2 où a0 = 1 = C1 a1 = 2 = C1 +C2 ⇒ C1 = 1 C2 = 1 et an = n + 1 Ici encore, l’évaluation du Wronskien des solutions {1, n} montre que celles-ci sont linéairement indépendantes : 1 n Wn = =1 1 n + 1 ⋄ CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. (n ≥ 2) Le polynôme caractéristique s’écrit z2 − z − 1 dont les zéros sont lim √ 1+ 5 z1 = ≃ 1.61803 . . . 2 ité E XEMPLE 9.11 N OMBRES DE F IBONACCI . Dans le cas du problème de Fibonacci, on a ( fn = fn−1 + fn−2 f0 = f1 = 1 264 √ 1− 5 ≃ −0.61803 . . . z2 = 2 de sorte que fn = C1 √ !n 1+ 5 +C2 2 où les constantes C1 et C2 sont déterminées en exprimant les conditions initiales du problème √ 1 + C1 = √ 5 f0 = C1 +C2 = 1 2 5 ⇒ √ √ C +C C −C 2 1 2 f = 1 1− 5 + 5 = 1 1 C2 = − √ 2 2 2 5 sa ge U √ !n 1− 5 2 et √ !n+1 1 1+ 5 fn = √ − 2 5 √ !n+1 1− 5 2 Remarquons que, lorsque n → ∞, la contribution de zn2 devient négligeable par rapport à celle de (puisque |z2 | < 1 et |z1 | > 1) de sorte que zn1 1 fn ∼ √ 5 et √ !n+1 1+ 5 2 √ fn+1 1 + 5 ∼ fn 2 fn+1 est connue dans les domaines des arts et de l’architecture fn sous le nom de “nombre d’or”. ⋄ Cette valeur limite du ratio CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 265 λ = u ± iv (u, v ∈ R) p = u2 + v2 e±iθ ité Lorsque les zéros du polynôme caractéristique sont complexes, on peut réécrire la solution générale sous une forme différente de (9.34). En effet, si le polynôme caractéristique est à coefficients réels, alors les zéros complexes éventuels apparaissent par paires de zéros conjugués lim de sorte que leurs contributions peuvent être combinées selon h i 2 2 n/2 +inθ −inθ an = (u + v ) αe +β e = (u2 + v2 )n/2 (A cos nθ + B sin nθ) (9.36) (9.37) E XEMPLE 9.12 Recherchons la solution de an+2 − 2an+1 + 5an = 0, a0 = 0, a1 = 1 Le polynôme caractéristique s’écrit z2 − 2z + 5 Ses zéros sont donnés par z2 = 1 + 2i, U sa ge z1 = 1 − 2i, de sorte que la solution générale s’écrit an = C1 (1 − 2i)n +C2 (1 + 2i)n où C1 et C2 sont des constantes complexes. On peut exprimer la solution du problème sous une forme entièrement réelle en notant que √ √ z1 = 5 e−iθ , z2 = 5 eiθ , où θ = arctg 2 Il vient an = 5n/2 C1⋆ cos nθ +C2⋆ sin nθ où C1⋆ et C2⋆ sont de nouvelles constantes d’intégration qui peuvent être déterminées en utilisant les conditions initiales du problèmes a0 = 0 = C1⋆ 1 1 ⇒ C1⋆ = 0, C2⋆ = √ = √ 5 sin θ 2 a = 1 = 5(C⋆ cos θ +C⋆ sin θ) 1 1 2 La solution complète du problème est donc an = 1 n/2 5 sin(n arctg 2) 2 ⋄ CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 266 E XEMPLE 9.13 Revenons à l’équation aux différences (Exemple 9.3) (Pe − 2)Tk+1 + 4Tk − (Pe + 2)Tk−1 = 0, (Pe − 2)z2 + 4z − (Pe + 2) Les zéros sont donnés, en supposant Pe ≥ 0 et Pe 6= 2, par soit z1 = 1 La solution générale s’écrit donc −2 ± Pe Pe − 2 lim z= ité représentant l’approximation discrète de l’équation stationnaire d’advection-diffusion de la chaleur. Le polynôme caractéristique est z2 = et Tk = C1 +C2 2 + Pe 2 − Pe 2 + Pe 2 − Pe k U sa ge où C1 et C2 sont des constantes. On remarque que z2 devient négatif dès que Pe > 2. Dans ce cas, la solution devient oscillatoire, ce qui va à l’encontre de toute logique physique. Par exemple, supposons que la température soit imposée aux extrémités k = 0 et k = 20 du domaine étudié de telle façon que θ0 − θ1 C1 = θ0 + 2 + Pe 20 −1 T0 = θ0 2 − Pe ⇒ θ1 − θ0 T20 = θ1 C2 = 2 + Pe 20 −1 2 − Pe Il est alors aisé de comparer la solution discrète avec la solution continue. En résolvant directement l’équation différentielle, on obtient en effet T (x) = θ0 + (θ1 − θ0 ) eux/K −1 euL/K −1 x ∈ [0, L], L = 20∆x soit, aux points x = k∆x du maillage, T (k∆x) = θ0 + (θ1 − θ0 ) ekPe −1 e20Pe −1 k = 0, 1, 2, . . . , 20, Pe = u∆x K Ces deux solutions sont représentées à la figure 9.1 dans les cas où Pe = 0.4 et Pe = 4. On constate que la solution du problème discret dans le cas Pe = 0.4 est très proche de la solution continue. Par contre, la solution discrète obtenue dans le cas Pe = 4 présente des oscillations importantes que ne CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 267 contient pas la solution continue. On dit que le schéma de discrétisation est instable. Pour résoudre numériquement l’équation différentielle, il faut alors recourir à d’autres types d’approximation des dérivées par des différences finies. ×b ité T − θ0 θ1 − θ0 × × lim × Pe = 0.4 ×b ×b ×b ×b ×b ×b ×b ×b ×b ×b ×b ×b × b × b × b × × b Pe = 4 b b x b b U sa ge F IG . 9.1- Solutions continues (trait continu) et discrètes dans les cas Pe = 0.4 (×) et Pe = 4 (•). Dans le cas particulier où Pe = 2, l’équation aux différences devient simplement Tk = Tk−1 dont la solution Tk = T0 ne permet pas de représenter la réalité car, par exemple, il est alors impossible de représenter des gradients de température. ⋄ E XEMPLE 9.14 Les techniques de résolution des équations aux différences peuvent être utilisées pour calculer le déterminant de la matrice An tri-diagonale d’ordre n β α 0 ··· ··· 0 α β α . . . 0 .. 0 α β . . . . An = .. .. .. . . . 0 .. .. . . α β α 0 ··· ··· 0 α β CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 268 En développant le déterminant selon la première colonne, on établit la formule de récurrence det An = β det An−1 − α2 det An−2 ité Posant ∆n = det An , le calcul du déterminant prend donc la forme du problème aux différences du second ordre (†) ∆n = β∆n−1 − α2 ∆n−2 Les conditions auxiliaires de ce problème sont données par β α = β2 − α2 ∆1 = β = β, ∆2 = α β (‡) lim La solution générale de l’équation aux différence (†) est donnée par (si β 6= ±2α) ∆n = C1 zn1 +C2 zn2 où p p β2 − 4α2 β + β2 − 4α2 z1 = , z2 = 2 2 En appliquant les conditions auxiliaires (‡), on a ( C1 z1 +C2 z2 = β C1 z21 +C2 z22 = β2 − α2 β− U sa ge soit C1 = β − z1 , z2 − z1 C2 = − de sorte que la solution s’exprime sous la forme ∆n = β − z2 z2 − z1 o zn+1 − zn+1 1 n 1 (β − z1 )zn2 − (β − z2 )zn1 = 2 z2 − z1 z2 − z1 ⋄ Comportement asymptotique de la solution. La solution générale d’un équation aux différence homogène à coefficient constant s’écrit an = P 1 (n)zn1 + P 2 (n)zn2 + · · · + P k (n)znk (9.38) où z1 , z2 ,. . . , zk sont les zéros du polynôme caractéristique et où P 1 (n), P 2 (n), . . . , P k (n) sont des polynômes en n. Le comportement asymptotique de la solution pour n → ∞ est donc entièrement déterminé par la valeur du plus grand (en valeur absolue) zéro du polynôme caractéristique. Soit z⋆ ce zéro. On remarque aisément que la solution est non bornée si |z⋆ | > 1. Elle tend par contre vers zéro si |z⋆ | < 1. CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 269 ité D’autre part, si z⋆ < 0, alors les puissances successives zn⋆ sont alternativement positives et négatives et la solution est oscillatoire. Un tel comportement oscillatoire existe pour toute solution z⋆ qui n’est pas purement réelle et positive. Afin de déterminer le comportement asymptotique de la solution sans devoir passer par la détermination explicite des zéros du polynôme caractéristique, on peut utiliser une variante des conditions de Routh-Hurwitz. Les conditions de Routh-Hurwitz sont habituellement introduites pour localiser les zéros d’un polynôme de degré n P (λ) = λn + a1 λn−1 + · · · + an lim dont les coefficients a1 , a2 , . . . , an sont réels (On suppose an 6= 0 sinon λ = 0 est un zéro et on divise le polynôme par λ pour former un nouveau polynôme de degré inférieur.). On montre (Cf. par exemple Willems, 1970) que tous les zéros de P (λ) sont situés dans le demi-plan ℜ(λ) < 0 (ce qui correspond au domaine de stabilité pour les solutions d’une équation différentielle à coefficients constants) si et seulement si toutes les conditions suivantes sont remplies (en posant ak = 0 pour k > n) U sa ge a1 , a2 , . . . an > 0 a1 a3 a5 a1 a3 > 0, 1 a2 a4 > 0 D2 = D = 3 1 a2 0 a1 a3 a1 a3 · · · · · · · · · 1 a2 a4 · · · · · · 0 a1 a3 · · · · · · Dk = 0 1 a · · · · · · > 0, k = 1, 2, . . ., n 2 .. . .. . . .. 0 0 0 · · · ak (9.39) (9.40) (9.41) Ces conditions peuvent être transformées en des conditions nécessaires et suffisantes pour que les zéros d’un polynôme soient inférieurs à l’unité en module en effectuant la substitution (transformation de Möbius) λ= z+1 z−1 (9.42) dans le polynôme étudié et en appliquant les conditions de Routh-Hurwitz au numérateur de la fraction obtenue. E XEMPLE 9.15 Soit le polynôme caractéristique P (λ) = λ3 − 0.2λ + 0.5 Effectuant la substitution (9.42) dans le polynôme caractéristique on obtient 13z3 + 17z2 + 47z + 3 10(z − 1)3 CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 270 Les conditions de Ruth-Hurwitz appliquées au numérateur de cette expression donnent 17 > 0, 13 47 3 > 0, a3 = >0 13 13 17 3 ′ = 760 > 0 D2 = 13 47 a2 = ité a1 = de sorte que les zéros du polynôme caractéristique sont tous compris dans le cercle unité. ⋄ lim 9.2.2 Equations aux différences linéaires non homogènes. Comme dans le cas des équations différentielles, la solution générale d’une équation non homogène an+N + pN−1 (n)an+N−1 + · · · + p1 (n)an+1 + p0 (n)an = f (n) (9.43) peut être exprimée comme la somme de la solution générale de l’équation homogène associée et d’une solution particulière de l’équation non homogène. Une telle solution peut être obtenue en appliquant les méthodes de variation des constantes, de réduction de l’ordre ou des coefficients indéterminés. U sa ge Variation des constantes. Si on connaı̂t N solutions an,1 , an,2 , . . ., an,N linéairement indépendantes de l’équation homogène, la méthode de variation des constantes consiste à rechercher une solution particulière de l’équation non homogène de la forme an = N ∑ xn,k an,k (9.44) k=1 où les xn,k sont les nouvelles inconnues. Pour illustrer le principe de cette méthode, considérons le cas d’une équation d’ordre 2 an+2 + p1 (n)an+1 + p0 (n)an = f (n) (9.45) pour laquelle on connaı̂t deux solutions linéairement indépendantes An et Bn de l’équation homogène associée. Recherchons des solutions de la forme an = An xn + Bn yn (9.46) Substituant cette expression dans (9.45), il vient An+2 xn+2 + Bn+2 yn+2 + p1 (n)An+1 xn+1 + p1 (n)Bn+1 yn+1 + p0 (n)An xn + p0 (n)Bnyn = f (n) (9.47) CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 271 Puisque An et Bn sont deux solutions de l’équation homogène, on peut réécrire cette expression sous la forme Pour simplifier cette équation, introduisons la contrainte ité xn+2 (−p1 (n)An+1 − p0 (n)An ) + yn+2 (−p1 (n)Bn+1 − p0 (n)Bn ) + p1 (n)An+1 xn+1 + p1 (n)Bn+1 yn+1 + p0 (n)Anxn + p0 (n)Bnyn = f (n) (9.48) An+1 (xn+2 − xn+1 ) + Bn+1 (yn+2 − yn+1 ) = 0 (9.49) p0 (n)[An(xn+2 − xn ) + Bn (yn+2 − yn )] = − f (n) (9.50) soit, en utilisant (9.49), lim On a alors p0 (n)[An(xn+2 − xn+1 ) + Bn (yn+2 − yn+1 )] = − f (n) (9.51) Les équations (9.49), (9.51) peuvent être résolues par rapport à xn+2 − xn+1 et yn+2 − yn+1 , soit f (n)Bn+1 p0 (n)Wn f (n)An+1 yn+2 − yn+1 = + p0 (n)Wn U sa ge xn+2 − xn+1 = − (9.52) (9.53) où Wn = An Bn+1 − An+1 Bn 6= 0 et p0 (n) 6= 0. La solution générale de l’équation inhomogène est donc n−2 an = C1 An +C2 Bn − An ∑ k=n0 n−2 f (k)Bk+1 f (k)Ak+1 + Bn ∑ Wk+1 k=n0 Wk+1 en utilisant la relation Ak+1 Bk+1 Ak+1 Bk+1 Wk+1 = = Ak+2 Bk+2 −p1 (k)Ak+1 − p0 (k)Ak −p1 (k)Bk+1 − p0 (k)Bk Ak+1 Bk+1 = = p0 (k) Wk −p0 (k)Ak −p0 (k)Bk E XEMPLE 9.16 Soit (n + 4)an+2 + an+1 − (n + 1)an = 1 Écrivons d’abord cette équation sous la forme (9.45), soit an+2 + 1 n+1 1 an+1 − an = n+4 n+4 n+4 (9.54) (9.55) CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 272 An = 1 (n + 1)(n + 2) Bn = (−1)n+1 (2n + 3) 4(n + 1)(n + 2) En utilisant les résultats généraux, il vient successivement Wn = An Bn+1 − An+1 Bn = (n + 4)(2n + 5) Bn+1 =− , Wn+1 4 (−1)n (n + 1)(n + 2)(n + 3) An+1 = (−1)n+1 (n + 4), Wn+1 1 n+4 f (n) = lim et donc ité Les solutions de l’équation homogène sont données dans l’exemple 9.8 : et une solution particulière de l’équation non homogène est donnée par5 n−2 an = −An ∑ k=n0 n−2 f (k)Bk+1 f (k)Ak+1 + Bn ∑ Wk+1 k=n0 Wk+1 1 = 4(n + 1)(n + 2) " 1 ≃ 4(n + 1)(n + 2) " n−2 ∑ (2k + 5) + (−1) (2n + 3) ∑ (−1) k=n0 k k=n0 n n−2 ∑ (2k + 1) + (−1) (2n + 3) ∑ (−1) sa ge U n−2 n n k=0 k k=0 # # Évaluant les sommes dans cette expression, il vient 1 1 + (−1)n 2 an = (n + 1) + (2n + 3) 4(n + 1)(n + 2) 2 On peut encore simplifier cette expression en tenant compte du fait que (−1)n (2n + 3) = −Bn 4(n + 1)(n + 2) est une solution de l’équation homogène et que tout terme indépendant de n dans l’expression entre crochets donne une contribution proportionnelle à An . Dès lors, une solution particulière de l’équation non homogène est donnée par n(n + 3) 4(n + 1)(n + 2) et la solution générale s’écrit an = C1 5 On 1 (−1)n+1 (2n + 3) n(n + 3) +C2 + (n + 1)(n + 2) 4(n + 1)(n + 2) 4(n + 1)(n + 2) ⋄ utilise ici la notation ≃ pour signaler l’égalité de deux fonctions discrètes à des solutions de l’équation homogène près. CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 273 Réduction de l’ordre. ité La méthode de réduction de l’ordre peut aussi être utilisée pour résoudre l’équation non homogène. Soit an+2 + p1 (n)an+1 + p0 (n)an = f (n) (9.56) Si An est une solution de l’équation homogène associée, recherchons une solution de la forme an = xn An (9.57) En substituant, il vient lim xn+2 An+2 + p1 (n)xn+1 An+1 + p0 (n)xn An = f (n) ou encore (9.58) xn+1 [An+2 + p1 (n)An+1 + p0 (n)An] + An+2 (xn+2 − xn+1 ) − p0 (n)An (xn+1 − xn ) = f (n) (9.59) où le terme entre crochets est nul puisque An est une solution de l’équation homogène. On a donc An+2 (xn+2 − xn+1 ) − p0 (n)An(xn+1 − xn ) = f (n) (9.60) (1) qui constitue une équation du premier ordre pour xn = xn+1 − xn . U sa ge E XEMPLE 9.17 Soit (2n + 1) n an+1 + an = n(n + 1) n n−1 On vérifie aisément que An = n − 1 est une solution de l’équation homogène associée. Posant an = xn (n − 1), il vient an+2 − (n + 1)(xn+2 − xn+1 ) − n(xn+1 − xn ) = n(n + 1) | {z } | {z } yn+1 yn Sommant cette relation de 1 à k − 1, il vient 1 k yk − y1 = (k − 1)k(k + 1) 3 et donc, yk = xk+1 − xk = C1 1 2 + (k − 1) (k ≥ 1) k 3 Une nouvelle somme de 1 à n − 1 donne n−1 1 (n − 2)(n − 1)(2n + 3) +C2 + k 18 k=1 xn = C1 ∑ et la solution générale est donc n−1 1 (n − 2)(n − 1)2 (2n + 3) an = C1 ∑ (n − 1) +C2 (n − 1) + 18 k=1 k ⋄ CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 274 Méthode des coefficients indéterminés. ité Au contraire des deux méthodes précédentes, la méthode des coefficients indéterminés n’est pas une méthode générale de résolution. Elle ne s’applique en fait que lorsque l’on parvient à deviner la forme d’une solution particulière. C’est le cas lorsque le terme non homogène de l’équation aux différences s’écrit sous la forme du produit d’un facteur λn et d’un polynôme de n. On peut alors appliquer l’équivalent discret de la méthode de l’exponentielle-polynôme largement utilisée dans le cas des équations différentielles linéaires à coefficients constants. ' $ lim Dans le cas d’une équation linéaire à coefficients constants de la forme an+N + pN−1 an+N−1 + · · · + p1 an+1 + p0 an = λn P p (n) (9.61) où P p (n) est un polynôme de degré p, on recherchera une solution de l’équation non homogène de la forme nα λn P p∗ (n) (9.62) où α est la multiplicité de λ comme zéro du polynôme caractéristique de l’équation homogène associée. & U sa ge E XEMPLE 9.18 Soit l’équation % 2an+2 = 7an+1 − 3an + 24 L’équation homogène 2ahn+2 − 7ahn+1 + 3ahn = 0 possède la solution générale ahn n 1 = C1 3 +C2 2 n On recherchera une solution particulière de l’équation non homogène de la forme an = γ où γ est une constante. Il vient 2γ = 7γ − 3γ + 24 ⇒ γ = −12 La solution générale est donc de la forme n 1 an = C1 3 +C2 − 12 2 n ⋄ E XEMPLE 9.19 Au chapitre 8, nous avons vu que n ∑k= k=1 n(n + 1) 2 CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 275 Ce résultat peut encore être obtenu comme suit. Notons an = ∑nk=1 k, on a an+1 − an = n + 1, a1 = 1 ⇒ β=γ= 1 2 lim an+1 − an = β(n + 1)2 + γ(n + 1) − βn2 − γn = n + 1 ité L’équation homogène an+1 − an = 0 possède la solution générale ahn = C 1n = C où C est une constante. Conformément à (9.62), on peut rechercher une solution particulière de l’équation nonhomogène de la forme (λ = 1, p = 1), an = n(β n + γ) où β et γ sont des constantes à déterminer. En substituant, il vient La solution générale est donc de la forme an = C + n(n + 1) 2 En imposant la condition initial a1 = 1, on trouve n = 1 et an = comme attendu. n(n + 1) 2 ⋄ E XEMPLE 9.20 L’équation U sa ge 2an+2 = 7an+1 − 3an + 6 · 2n possède la même équation homogène associée que l’équation de l’exemple 9.8. Dès lors, n 1 h n an = C1 3 +C2 2 On recherchera cette fois une solution particulière de la forme an = γ 2n En substituant dans l’équation non homogène, il vient 2γ 2n+2 = 7γ2n+1 − 3γ 2n + 6 2n soit 8γ = 14γ − 3γ + 6 et ⇒ γ = −2 n 1 an = C1 3 +C2 − 2n+1 2 n ⋄ CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 276 E XEMPLE 9.21 Soit an+2 + 2an+1 + an = cos n L’équation homogène possède la solution générale ité ahn = (C1 +C2 n)(−1)n Pour trouver une solution de l’équation non homogène, réécrivons l’équation sous la forme an+2 + 2an+1 + an = ℜein = ℜ[ei ]n Laissant provisoirement tomber ℜ, on recherche une solution de la forme En substituant, il vient lim an = γ ein [γ ein ]e2i + [2γ ein ]ei + [γ ein ] = ein γ= ⇒ 1 (ei + 1)2 et la solution particulière recherchée est donc ein (cos n + i sin n)(1 + cos 1 − i sin 1)2 ℜ =ℜ (ei + 1)2 [(1 + cos 1)2 + sin2 1]2 = cos n[(1 + cos 1)2 − sin2 1] + 2 sin n sin 1(1 + cos 1) cos(n − 1) = 2 4(1 + cos 1) 2(1 + cos 1) Finalement, la solution générale s’écrit U sa ge an = (C1 +C2 n)(−1)n + cos(n − 1) 2(1 + cos 1) ⋄ 9.3 Fonction génératrice. Pour faciliter la résolution d’une équation aux différences, on peut parfois transformer celle-ci en une équation différentielle pour une fonction F d’une variable continue. Étant donné une suite de nombres réels a0 , a1 , a2 ,. . . , l’expression F(x) = a0 + a1 x + a2 x2 + · · · = ∞ ∑ ak xk (9.63) k=0 est appelée la fonction génératrice6 de la suite. Cette appellation constitue en réalité un abus de language puisque l’expression (9.63) ne représente pas nécessairement une série 6 On peut également définir des fonctions génératrices de la suite a0 , a1 , a2 ,. . . , en posant F̃(x) = a0 + ∞ a 1 x a 2 x2 a k xk + + ··· = ∑ 1! 2! k=0 k! ou encore F ⋆ (z) = a0 + a1z−1 + a2z−2 + · · · = La fonction F ⋆ (z) est appelé la transformée en z de la suite. ∞ ∑ ak z−k k=0 CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 277 ité convergente7 et ne définit donc pas nécessairement une fonction. On parle donc de série formelle pour désigner une telle expression. Dans les cas où la série converge, la fonction génératrice est une fonction dont les coefficients du développement en série de Taylor sont les éléments ak de la suite (Table 9.1). ' $ Suite 0, 1, 2, 3, . . ., k, . . . 0, 0, 1, 3, 6, 10, . . .,Ck2 , . . . lim 1, 1, 1, 1, . . ., 1, . . . Fonction génératrice ∞ 1 = ∑ xk 1 − x k=0 ∞ x = ∑ kxk (1 − x)2 k=0 ∞ x2 = ∑ Ck2xk (1 − x)3 k=0 1, N,CN2 , . . . ,CNk , . . . , N, 1, 0, . . . N (1 + x) = N ∑ CNk xk k=0 2 3 k 1, N + 1,CN+2 ,CN+3 , . . . ,CN+k ,... U sa ge 1, 0, 1, 0, . . ., 1, 0, . . . 1, α, α2 , α3 , . . ., αk , . . . 1 1 1 , , . . ., , . . . 2! 3! k! 1 1 1 0, 1, , , . . . , , . . . 2 3 k 1 1 1 0, 1, 1 + , 1 + + , . . . , Hk , . . . 2 2 3 1 1 0, 0, 1, 3 + , . . ., k(Hk − 1), . . . 2 3 1, 1, ∞ 1 k = Ck+N xk ∑ N+1 (1 − x) k=0 ∞ 1 2k = ∑x 1 − x2 k=0 ∞ 1 = ∑ αk xk 1 − αx k=0 ∞ k x ex = ∑ k=0 k! ∞ k 1 x ln =∑ 1 − x k=1 k ∞ 1 1 ln = ∑ Hk xk 1 − x 1 − x k=1 ∞ x 1 ln = ∑ k(Hk − 1)xk (1 − x)2 1 − x k=0 où Hk désigne les nombres harmoniques Hk = k 1 ∑ℓ ℓ=1 & % TAB . 9.1- Fonctions génératrices élémentaires. 7 Bien sûr, on a toujours F(0) = a0 . CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 278 ∞ Si F(x) = ∑ ak xk et G(x) = k=0 ∞ ité Très souvent, les suites que l’on manipule au travers des fonctions génératrices définissent des séries convergentes, au moins dans un certain intervalle. En réalité, cependant, on ne se préoccupe pas de la convergence de la série formelle car les manipulations formelles que l’on réalise sont bien définies même en l’absence de convergence. ∑ bk xk sont deux fonctions génératrices, on peut en k=0 effet calculer leur somme et leur produit par ∞ F(x) + G(x) = ∑ (ak + bk )xk k=0 ℓ=0 ! (9.64) lim ∞ k=0 k F(x)G(x) = ∑ ∑ aℓbk−ℓ xk (9.65) qui représentent, respectivement, les fonctions génératrices des suites (a0 + b0 ), (a1 + b1 ), (a2 + b2 ), . . ., (ak + bk ), . . . (9.66) k (a0 b0 ), (a0b1 + a1 b0 ), (a0b2 + a1 b1 + a2 b0 ), . . ., ∑ aℓ bk−ℓ , . . . (9.67) ℓ=0 U sa ge sans faire intervenir la convergence des séries formelles. La somme et le produit ainsi définis sont des opérations associatives et commutatives. De plus le produit est distributif par rapport à l’addition8 : F(x)(G(x) + H(x)) = F(x)G(x) + F(x)H(x) (9.68) La dérivée F ′ (x) d’une série formelle F(x) est donnée par F ′ (x) = ∞ ∞ k=1 k=0 ∑ kak xk−1 = ∑ (k + 1)ak+1xk (9.69) et représente donc la fonction génératrice de la suite a1 , 2a2 , 3a3 , . . . , (k + 1)ak+1, . . . (9.70) On vérifie que les dérivées d’une série formelle satisfont à (FG)′ = F ′ G + G′ F (9.71) 1 dkF (0) (9.72) k! dxk Cette dernière expression peut être utilisée pour identifier les termes ak d’une série formelle dont on connaı̂t la fonction génératrice. Le tableau 9.2 reprend les principales propriétés des opérations sur les séries formelles. ak = 8 Cette dernière propriété, à la suite des précédentes, fait des séries formelles un anneau commutatif. CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 279 ' $ Soit ∞ F(x) = ∞ ∑ ak xk G(x) = et Opération ∞ k=0 k ∑ ∑ aℓbk−ℓ k=0 ∞ F (x) = ∑ (ak + bk )xk ℓ=0 ∑ (k + 1)ak+1x k k=0 ∞ xF(x) = ∑ ak−1 xk k=1 F(x) − a0 x Z x = 0 F(λx) = ∞ ∞ ∑ ak+1 xk ak−1 k x k=1 k ∑ ∑ λk ak xk k=0 (a0 + b0 ), (a1 + b1 ), . . . , (ak + bk ), . . . k x k (a0 b0 ), (a0b1 + a1 b0 ), . . ., ∑ aℓ bk−ℓ , . . . ℓ=0 a1 , 2a2 , 3a3, . . . , (k + 1)ak+1 , . . . 0, a0 , a1 , . . . , ak−1 , . . . k=0 ∞ F(t)dt = ! lim F(x)G(x) = ′ Suite correspondante ∞ F(x) + G(x) = k=0 ité k=0 a1 , a2 , a3 , . . ., ak+1 , . . . 0, a0 , a1 a2 ak−1 , ,..., ,... 2 3 k a0 , λa1, λ2 a2 , . . ., λk xk , . . . ∞ U sa ge (1 − x)F(x) = a0 + ∑ (ak − ak−1 )xk k=1 ! ∞ k F(x) = ∑ ∑ aℓ xk 1 − x k=0 ℓ=0 & ∑ bk xk a0 , a1 − a0 , . . . , ak − ak−1 , . . . k a1 , a1 + a2 , . . . , ∑ aℓ , . . . ℓ=0 TAB . 9.2- Les principales opérations sur les fonctions génératrices et les suites correspondantes. La procédure utilisée pour résoudre les équations aux différences au moyen d’une fonction génératrice est alors la suivante : i. On multiplie l’équation aux différences par xn et on somme celle-ci sur toutes les valeurs de n pour faire apparaı̂tre la fonction génératrice F. ii. On évalue les sommes à partir des développements en séries connus pour exprimer une équation différentielle vérifiée par F. iii. On résout l’équation différentielle pour F. iv. On développe F en série de Taylor ou en fractions simples afin d’identifier les coefficients à la solution an recherchée. % CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 280 On a ∞ ∞ ∞ n=0 n=0 n=0 ∑ an+1 xn − ∑ xn = ∑ an xn Posons ∞ F(x) = ∑ an xn n=0 ité E XEMPLE 9.22 Soit le problème aux différences finies ( an+1 − 1 = an a0 = 0 (∗) ∞ lim Les deux termes du membre de gauche de l’équation (∗) sont donnés par ∞ an xn 1 ∞ F(x) = ∑ an xn = x n=0 x n=1 x ∑ an+1 xn = ∑ n=0 où on a utilisé la condition initiale a0 = 0. En notant que ∞ 1 ∑ xn = 1 − x n=0 la relation (∗) devient U sa ge F(x) 1 − = F(x) x 1−x x F(x) = (1 − x)2 La solution de l’équation aux différences peut alors être obtenue en appliquant F (n) (x) an = n! x=0 ou en utilisant les développements connus de la table 9.1. En l’occurrence, il vient F(x) = ∞ x = nxn ∑ (1 − x)2 n=0 ⇒ an = n ∀n ⋄ comme attendu. E XEMPLE 9.23 Soit le problème aux différences ( (n + 1)(n + 2)an+2 − 2(n + 1)an+1 − 3an = 0 (n ≥ 0) a0 = 2 et a1 = 2 Multipliant l’équation différentielle par xn et sommant sur n, il vient ∞ ∞ n=0 n=0 ∑ (n + 1)(n + 2)an+2 xn − 2 ∑ (n + 1)an+1 xn = 3F(x) CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. où la fonction génératrice est 281 ∞ F(x) = ∑ an xn On constate que F ′ (x) = F ′′ (x) = ∞ ∞ n=1 n=0 ∑ n anxn−1 = ∑ (n + 1)an+1 xn ∞ ∑ (n + 1)nan+1 xn−1 = ∑ (n + 1)(n + 2)an+2 xn n=0 lim n=1 ∞ ité n=0 Le problème se transforme donc en le problème continu ( F ′′ (x) − 2F ′ (x) − 3F(x) = 0 F(0) = a0 = 2 et F ′ (0) = a1 = 2 dont la solution est donnée par F(x) = e3x + e−x = et U 3n + (−1)n n x n! n=0 3n + (−1)n n! sa ge an = ∞ ∑ ⋄ 9.4 Exercices. Remarque : les exercices marqués d’une étoile ne seront abordés qu’en seconde lecture. 1) Trouvez la solution pour chacune des relations de récurrence suivantes données avec leur condition initiale. a) an = 3an−1 , a0 = 2 b) an = an−1 + 2, a0 = 3 c) an = an−1 + n, a0 = 1 d) an = an−1 + 2n + 3, a0 = 4 e) an = 2an−1 − 1, a0 = 1 f) an = 3an−1 + 1, a0 = 1 g) an = nan−1 , a0 = 5 h) an = 2nan−1 , a0 = 1 Rép. : 2.3n Rép. : 3 + 2n n(n + 1) 2 Rép. : (2 + n)2 Rép. : 1 + Rép. : 1 1 Rép. : (3n+1 − 1) 2 Rép. : 5n! Rép. : 2n n! CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 282 2) Résolvez les relations de récurrence suivantes avec les conditions initiales données. a) an = 2an−1 pour n ≥ 1, a0 = 3 Rép. : 3 2n b) an = an−1 pour n ≥ 1, a0 = 2 Rép. : 2 d) an = 4an−1 − 4an−2 pour n ≥ 2, a0 = 6, a1 = 8 Rép. : 3 2n − 2 3n ité c) an = 5an−1 − 6an−2 pour n ≥ 2, a0 = 1, a1 = 0 Rép. : 2n+1 (3 − n) e) an = −4an−1 − 4an−2 pour n ≥ 2, a0 = 0, a1 = 1 f) an = 4an−2 pour n ≥ 2, a0 = 0, a1 = 4 Rép. : 2n − (−2)n 2n+1 si n impair 0 si n pair lim g) an = an−2 /4 pour n ≥ 2, a0 = 1, a1 = 0 soit Rép. : (−2)n−1 n 1 si n pair 1 1 1 Rép. : [( )n + (− )n ] soit 2n 0 si n impair 2 2 2 h) an = 2(an−1 − an−2 ) pour n ≥ 2, a0 = 1, a1 = 2 √ h nπ nπ i Rép. : ( 2)n cos + sin 4 4 i) an = −an−2 pour n ≥ 2, a0 = 0, a1 = 3 Rép. : 3 sin nπ 2 U sa ge j) an = −2an−1 − 2an−2 pour n ≥ 2, a0 = 1, a1 = 3 √ n 3nπ 3nπ Rép. : ( 2) cos + 4 sin 4 4 3) Résolvez les relations de récurrence suivantes avec les conditions initiales données. a) an = an−1 + 6an−2 pour n ≥ 2, a0 = 3, a1 = 6 b) an = 7an−1 − 10an−2 pour n ≥ 2, a0 = 2, a1 = 1 3 Rép. : ((−2)n + 4.3n) 5 Rép. : 3.2n − 5n Rép. : 3.2n + 4n c) an = 6an−1 − 8an−2 pour n ≥ 2, a0 = 4, a1 = 10 d) an = 2an−1 − an−2 pour n ≥ 2, a0 = 4, a1 = 1 e) an = an−2 pour n ≥ 2, a0 = 5, a1 = −1 f) an = −6an−1 − 9an−2 pour n ≥ 2, a0 = 3, a1 = −3 Rép. : 4 − 3n Rép. : 2 + 3(−1)n Rép. : (−3)n (3 − 2n) g) an = −4an−1 + 56an−2 pour n ≥ 0, a0 = 2, a1 = 8 q h √ Rép. : an = (−2)n 1 + 35 (1 − 15)n + q i √ 1 − 35 (1 + 15)n 4) Trouvez la solution de an = 2an−1 + an−2 − 2an−3 pour n = 3, 4, 5, . . . avec a0 = 3, a1 = 6 et a2 = 0. 5) Trouvez la solution générale de an+2 − 2an+1 + an = n + 1 Rép. : an = 6 − 2(−1)n − 2n Rép. : an = C1 + C2 n + n3 6 CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 283 6) Trouvez la solution générale de an+2 − 4an+1 + 4an = 2n Rép. : an = (C1 + C2 n)2n + n2 2n−3 ité 7) Considérez la relation de récurrence non homogène an = 3an−1 + 2n . Démontrez que an = −2n+1 est une solution de cette relation de récurrence. Rép. : Simple véri f ication par substitution. 8) Déterminez les valeurs des constantes A et B de manière telle que an = An + B soit une solution de la relation de récurrence an = 2an−1 + n + 5. Rép. : an = −n − 7 Une machine distributrice de timbres accepte seulement les pièces d’un dollar, les billets d’un dollar et les billets de cinq dollars. lim ⋆ 9) a) Établissez une relation de récurrence pour calculer le nombre de manières de déposer n dollars dans cette machine si l’ordre dans lequel les pièces et les billets sont donnés est important. b) Quelles sont les conditions initiales ? c) De combien de façons est-il possible de déposer dix dollars pour acheter une feuille de timbres ? Rép. : a) an = 2an−1 + an−5, n ≥ 5; b) a0 = 1, a1 = 2, a2 = 4, a3 = 8, a4 = 16; c) a10 = 1217 Trouvez une relation de récurrence pour calculer le nombre de chaı̂nes binaires de longueur n qui contiennent une paire de 0 consécutifs. Quelles sont les conditions initiales ? Combien existe-t-il de chaı̂nes binaires de longueur 7 qui contiennent au moins deux 0 consécutifs ? U sa ge ⋆ 10) ⋆ 11) Rép. : a) an = 2an−1 − an−3 + 2n−3 n ≥ 4; b) a1 = 0 a2 = 1 a3 = 3; c) a7 = 94 Trouvez une relation de récurrence pour calculer le nombre de chaı̂nes binaires de longueur n qui contiennent au moins trois 0 consécutifs. Quelles sont les conditions initiales ? Combien existe-t-il de chaı̂nes binaires de longueur 7 qui contiennent au moins trois 0 consécutifs ? Rép. : a) an = 2an−1 − an−4 + 2n−4, n ≥ 5 b) a1 = 0 a2 = 0 a3 = 1 a4 = 3 c) a7 = 47. ⋆ 12) Trouvez une relation de récurrence pour calculer le nombre de chaı̂nes binaires de longueur n qui contiennent la chaı̂ne 01. Quelles sont les conditions initiales ? Combien existe-t-il de chaı̂nes binaires de longueur 7 qui contiennent la chaı̂ne 01 ? Rép. : a) an = 2an−1 − an−2 + 2n−2, n ≥ 3; b) a1 = 0 a2 = 1; c) a7 = 120 CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 284 13) Une personne dépose 1000 dollars sur un compte en banque qui rapporte un intérêt annuel de 9 %. ité a) Etablissez une relation de récurrence pour calculer le montant accumulé sur le compte à la fin de n années. b) Trouvez une formule explicite pour calculer le montant sur le compte à la fin de n années. c) Quelle est la valeur du compte après cent ans ? Rép. : a) an = an−1 (1 + 0.09), a0 = 1000; b) an = 1000(1 + 0.09)n; c) 5529040 lim 14) Supposez que la population mondiale en 1995 est de 7 milliards et qu’elle croı̂t à raison de 3% par an. a) Établissez une relation de récurrence pour calculer la population mondiale dans n années après 1995. b) Trouvez une formule explicite pour calculer la population mondiale au bout de n années après 1995. c) Quelle sera la population mondiale en 2010 ? Rép. : a) pn = pn−1 (1 + 0.03), p0 = 7.109 ; b) pn = 7.109(1 + 0.03)n; c) 10.9058 109 U sa ge 15) Une usine construit des voitures de sport à un taux croissant. Au cours du premier mois, elle n’a fabriqué qu’une voiture ; au cours du deuxième mois, deux voitures ; et ainsi de suite avec n voitures fabriquées au cours du n-ième mois. a) Etablissez une relation de récurrence pour le nombre de voitures fabriquées au cours des n premiers mois. b) Combien de voitures sont fabriquées au cours de la première année ? c) Trouvez une formule explicite pour calculer le nombre de voitures fabriquées au cours des n premiers mois. Rép. : a) an = an−1 + n, a1 = 1; b) 78; c) an = n(n + 1) 2 16) Déterminez le nombre rn de régions du plan définies par l’intersection de n lignes droites. On suppose que deux droites ne sont jamais parallèles et que trois droites ne se coupent jamais en un même point. On a, par exemple, r1 = 2 et r2 = 4. Rép. : rn = 1 + n(n + 1) 2 17) Le mouvement erratique des particules au sein d’un fluide est appelé mouvement brownien. Celui-ci est responsable de la diffusion des propriétés du fluide dans tout son volume. On peut donner un modèle unidimensionnel de ce processus en considérant une particule qui, à chaque instant, possède une probabilité p = 1/2 de se déplacer d’une unité vers la droite et une probabilité q = 1/2 de se déplacer d’une unité vers la gauche. Si on considère que les particules peuvent être absorbées par des parois situées en x = 0 et x = ℓ ∈ N, alors, la probabilité Pk pour qu’une particule CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 285 située à l’abscisse x = k ∈ N soit absorbée par la paroi située en x = 0 est la solution de l’équation aux différences (0 < k < ℓ) P0 = 1 et avec Pℓ = 0 ité Pk = pPk+1 + qPk−1 Déterminez la probabilité Pk (0 ≤ k ≤ ℓ). Rép. : Pk = 1 − k l lim 18) Un modèle pour calculer le nombre de homards capturés par année est fondé sur l’hypothèse que le nombre de homards capturés dans une année est la moyenne du nombre capturé au cours des deux années précédentes. a) Trouvez une relation de récurrence pour {Ln } où Ln est le nombre de homards capturés au cours de l’année n en tenant compte de l’hypothèse de ce modèle. 1 Rép. : Ln = (Ln−1 + Ln−2 ) n ≥ 3 2 b) Trouver Ln si 100 000 homards ont été capturés au cours de l’année 1 et 300 000 au cours de l’année 2. Rép. : L1 = 100 000, L2 = 300 000, Ln = 100000 (−1)n 7 + n−3 3 2 19) Soit le circuit électrique i0 b L/2 L/2 b U ∼E C b b b ik b b b L/2 sa ge L/2 i1 b L/2 C b b b b b L/2 L/2 C b b b b b in−1 b b in b L/2 C b b b b b b b b Ce circuit devant fonctionner sous une tension alternative de pulsation ω, on introduit les variables d’état complexes Ik telles que le courant électrique au primaire de chaque section est donné par ik (t) = ℜ(Ik e jωt ) ( j2 = −1) Ces variables d’état vérifient les équations jωL Ik + 1 1 (Ik − Ik+1 ) − (Ik−1 − Ik ) = 0, jωC jωC k = 1, . . ., n − 1 – Dans le cas où ω2 LC < 4, montrez que la solution générale Ik peut s’écrire Ik = C1 e jkθ +C2 e− jkθ 1 où cos θ = 1 − ω2 LC. 2 CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 286 ité – Si on impose une tension alternative à l’entrée du circuit et si on court-circuite la sortie, alors 1 1 jωL I0 + (I0 − I1 ) = E 2 jωC 1 1 jωL In − (In−1 − In ) = 0 2 jωC Déterminez les conditions auxquelles doivent satisfaire les constantes C1 et C2 introduites ci-dessus. – Déterminez C1 et C2 et montrez que jωC E cos[(n − k)θ] sin θ sin nθ 20) Les vibrations des systèmes mécaniques, des atomes dans les molécules, des solides élastiques. . . peuvent souvent être étudiées en établissant des modèles simplifiés constitués d’un assemblage de ressorts et de systèmes d’amortissement. On considère un tel modèle constitué de n particules reliées entre-elles par des ressorts placés en série. Le système est lui même attaché aux deux extrémités à un système rigide par le biais de ressorts. lim Ik = − L k0 k2 U sa ge k1 x1 x2 kr−1 kr kn−1 xr kn xn On désigne par xr la position de la particule r (r ∈ {1, 2, . . ., n}) repérée par rapport à l’extrémité gauche du système. On note kr et ℓr la raideur et la longueur naturelle du ressort r (r ∈ {0, 1, . . ., n}). À l’équilibre, les positions des n particules sont données par k0 (x1 − ℓ0 ) = k1 (x2 − x1 − ℓ1 ) k1 (x2 − x1 − ℓ1 ) = k2 (x3 − x2 − ℓ2 ) .. . kr−1 (xr − xr−1 − ℓr−1 ) = kr (xr+1 − xr − ℓr ) .. . kn−1 (xn − xn−1 − ℓn−1 ) = kn (L − xn − ℓn ) Déterminez les positions des n particules – dans le cas où tous les ressorts sont identiques, i.e. k0 = k1 = . . . = kn = k et ℓ0 = ℓ1 = . . . = ℓn = ℓ ; Rép. : xr = rL n+1 CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 287 – dans le cas où tous les ressorts ont la même longueur naturelle, i.e. ℓ0 = ℓ1 = . . . = ℓn = ℓ, et ont la même raideur sauf le ressort α (0 < α < n), i.e. k0 = k1 = . . . = kα−1 = kα+1 = . . . = kn = k et kα = k/λ. ra Lλ + (1 − λ)nℓ (r − 1)a + n+λ pour r ≤ α où a = L − (1 − λ)ℓ n+λ ité Rép. : xr = pour r > α 21) Tentant de résoudre numériquement le problème différentiel ẍ + 2ωẋ + ω2 x = 0 x(0) = 1, ẋ(0) = 0 (9.73) lim décrivant le comportement d’un oscillateur avec amortissement critique, on établit la discrétisation suivante xk+1 − 2xk + xk−1 xk+1 − xk−1 +ω + ω2 xk = 0, x0 = 1, x1 = 1 2 ∆t ∆t où xk est la solution approchée au temps t = k∆t. Les solutions de (9.74) pour différentes valeurs de ∆t, soit ω∆t = 0.5, ω∆t = 1.6 et ω∆t = 2.1 sont représentées ci-dessous ainsi que la solution du problème continu initial (9.73) (trait interrompu). Expliquez le comportement de la solution discrète pour les différentes valeurs du pas d’intégration ∆t données. En particulier, justifiez le caractère croissant ou décroissant de la solution discrète ainsi que son caractère monotone ou oscillatoire. sa ge U (9.74) x 1 ω∆t = 1.6 0.8 ω∆t = 0.5 0.6 0.4 0.2 2 4 6 8 Ω t x 1 ω∆t = 2.1 0.5 2.5 -0.5 -1 5 7.5 10 12.5 15 17.5 Ω t CHAPITRE 9. ÉQUATIONS AUX DIFFÉRENCES. 288 U sa ge où α ∈ R+ 0. lim ité 22) Écrivez une relation de récurrence pour le déterminant d’ordre n α α 0 0 · · · 0 0 α α α 0 · · · 0 0 .. . . 0 α α α . . Dn = .. . . . . . . . . . . .. . . . . . . . . 0 0 . . α α α 0 0 0 0 α α α 0 0 · · · 0 0 α α nπ 1 nπ Rép. : αn cos + √ sin 3 3 3 ité Chapitre 10 lim Dénombrement. On trouve des problèmes de dénombrement, c’est-à-dire de comptage d’objets, dans de nombreux domaines en mathématique et en informatique. Qu’il s’agisse de déterminer la probabilité de gagner à un jeu de hasard, de déterminer l’efficacité d’un algorithme informatique ou d’énumérer différentes molécules qui correspondent à une formule chimique donnée, la solution passe toujours par la résolution d’un problème de dénombrement et utilise les techniques de ce chapitre. U sa ge 10.1 Principes de la somme et du produit. Les principes de la somme et du produit constituent les bases du dénombrement. 10.1.1 Principe du produit. Si un premier événement peut se produire de n façons différentes et si un second événement, indépendant du premier, peut se produire de m façons différentes, alors le nombre de possibilités de cette suite d’événements est égal à n · m. De même, si une procédure est divisée en deux étapes indépendantes et que ces deux étapes peuvent être réalisées de n et m façons différentes, alors la tâche complète peut être effectuée de n · m façons différentes. En langage ensembliste, l’ensemble des possibilités de combiner un élément d’un ensemble A avec un élément de l’ensemble B est représenté par le produit cartésien A × B. On aura donc, en généralisant, Si A1 , A2 , . . . , AN sont N ensembles finis alors |A1 × A2 × · · · × AN | = |A1 | |A2 | · · · |AN | 289 (10.1) CHAPITRE 10. DÉNOMBREMENT. 290 E XEMPLE 10.1 Soit un code d’accès informatique fait de trois lettres où les répétitions de lettres sont permises. En procédant de la sorte, on peut générer ité 26 · 26 · 26 = 263 = 17 576 codes différents. ⋄ 10.1.2 Principe de la somme. ' lim Si une tâche peut être accomplie de n façons différentes et si une deuxième tâche peut être effectuée de m façons différentes (et si on ne peut effectuer ces deux tâches simultanément), alors il existe n + m façons différentes d’exécuter l’une ou l’autre de ces tâches. De même, si une première expérience peut donner n résultats différents et si une deuxième expérience peut donner m résultats différents, alors le nombre de résultats que l’on peut obtenir en effectuant l’une ou l’autre expérience est égal à n + m. En langage ensembliste, ce principe peut être traduit de la façon suivante : Si A1 , A2 , · · · , AN sont N ensembles finis disjoints, i.e. si, ∀i ∈ {1, 2, . . ., N}, |Ai | ∈ N et Ai ∩ A j = φ ∀i 6= j alors (10.2) % U sa ge & |A1 ∪ A2 ∪ · · · ∪ AN | = |A1 | + |A2 | + · · · + |AN | $ E XEMPLE 10.2 On suppose qu’un professeur ou un étudiant ingénieur peut être choisi pour représenter la Faculté des Sciences Appliquées au concours du plus grand mangeur de saucisses. Sachant qu’il y a 56 professeurs et 860 étudiants, de combien de façons différentes peut-on choisir ce représentant ? On peut choisir un professeur de 56 façons et un étudiant de 860 façons différentes. Il y a donc, au total, 860 + 56 = 916 façons différentes de choisir le représentant de FSA. ⋄ Le principe de la somme peut être utilisé pour dénombrer les sous-ensembles d’un ensemble donné. Si l’ensemble A est fini, i.e. |A| = n ∈ N, alors |P (A)| = 2n (10.3) La démonstration utilise le principe de l’induction. L’énoncé est évident si |A| = 0. L’ensemble A est alors vide et |P (A)| = |{φ}| = 1. CHAPITRE 10. DÉNOMBREMENT. 291 ité Si on suppose l’énoncé vrai pour un ensemble comportant n éléments alors démontrons que la proposition est également vraie pour un ensemble comportant n + 1 éléments. Soit A un tel ensemble. Les sous-ensembles de A sont de deux types : ceux qui comprennent l’élément an+1 et ceux qui ne comprennent pas cet élément. Le nombre total de sous-ensembles de A est donc la somme du nombre de sous-ensembles qui comprennent an+1 et des éléments choisis dans a1 , a2 , . . . , an et du nombre de sous ensembles de a1 , a2 , . . ., an . On a donc |P ( a1 , a2, . . . , an , an+1 )| = 2n + 2n = 2n+1 lim Par induction, la proposition est donc vérifiée pour tout n. On peut encore introduire le principe de la différence suivant : Si A est un ensemble fini et si B est un sous-ensemble de A, alors |A\B| = |A| − |B| (10.4) Ce résultat est une conséquence du principe de la somme. En effet, B et A\B sont deux ensemble disjoints dont l’union n’est autre que A. Dès lors U sa ge |A| = |B ∪ (A\B)| = |B| + |A\B| d’où le résultat. E XEMPLE 10.3 Un code d’accès informatique est constitué d’exactement trois lettres. Combien de codes contiennent des répétitions de lettres ? Le nombre total de codes est égal à 263 = 17 576. Parmi ceux-ci, seuls 26 · 25 · 24 = 15 600 ne comportent pas de répétitions. Le nombre de codes recherché est donc égal à 263 − 26 · 25 · 24 = 1 976 ⋄ 10.2 Principe des tiroirs. Le principe des tiroirs (pigeonhole principle en anglais), est à la base d’un grand nombre de démonstrations et de raisonnements mathématiques. Si m objets sont rangés dans n tiroirs et si m > n alors il y a au moins un tiroir qui contient plus d’un objet. De plus, il y a au moins un tiroir qui contient au moins ⌈m/n⌉ objets. CHAPITRE 10. DÉNOMBREMENT. 292 ité Ce principe apparaı̂t comme un évidence. Si tous les n tiroirs ne comportaient qu’un objet ou moins, alors le nombre maximum d’objet serait inférieur ou égal à n. Si aucun tiroir ne comportait plus de ⌈m/n⌉ − 1 objets, alors le nombre total d’objets serait au plus égal à m m n(⌈ ⌉ − 1) < n(( + 1) − 1) = m n n puisque ⌈m/n⌉ < m/n + 1. On aboutit donc à une contradiction. lim E XEMPLE 10.4 Si chaque étudiant présentant l’examen de mathématiques discrètes reçoit une cote entière exprimée sur un maximum de 20 points, alors, dans tout groupe de 22 étudiants, on trouve au moins deux étudiants ayant la même cote. ⋄ En langage ensembliste, on a : ' Si A et B sont deux ensembles finis non vides, tels que |A| > |B|, alors il n’existe pas de fonction injective de A dans B, i.e. pour toute fonction f : A → B, deux éléments au moins de A doivent avoir la même image par f . U sa ge Si |A| > k|B| avec k ∈ N0 , alors, quelle que soit la fonction f : A → B, il existe au moins un élément b ∈ B qui est l’image d’au moins k + 1 éléments de A. & $ % Soit f : A → B avec |A| > |B|. Si on suppose que f est injective, alors l’image par f des |A| éléments de A est formée de |A| éléments distincts de B. Comme on suppose |A| > |B|, ceci est impossible et l’on doit rejeter l’hypothèse selon laquelle f est injective. Dans le cas où |A| > k|B|, si on suppose qu’il existe une fonction f : A → B telle que chaque élément de B est l’image de k éléments de A au maximum, alors on aboutit aussi à une contradiction. En effet, les |B| éléments de B seraient alors les images d’un maximum de k|B| éléments de A (ces éléments sont distincts puisque f est une fonction, i.e. elle associe à chaque élément de A un seul élément de B) et donc |A| ≤ k|B| ce qui est contraire aux hypothèses. E XEMPLE 10.5 Parmi les habitants de New York, peut-on trouver deux personnes possédant le même nombre de cheveux sur leur tête ? Si on sait que la population de New York est de l’ordre de 5 000 000 et que le nombre de cheveux sur la tête d’un homme ne dépasse pas 300 000, la réponse est affirmative. Soit A l’ensemble des habitants de New York et B l’ensemble des nombres de cheveux sur la tête d’une personne. Comme |A| > |B|, il ne peut y avoir de fonction injective de A dans B. ⋄ CHAPITRE 10. DÉNOMBREMENT. 293 Si le principe des tiroirs apparaı̂t comme une évidence, son application à des cas concrets demande parfois un peu de réflexion. ité E XEMPLE 10.6 Soit S = 1, 2, 3, 4, 5, 6, 7, 8 . Si on choisit librement 5 entiers dans S, est-il possible de trouver parmi ceux-ci deux entiers dont la somme est égale à 9 ? L’ensemble A des paires d’entiers dont la somme est égale à 9 est donné par A = (1, 8), (2, 7), (3, 6), (4, 5) lim Soit B un sous-ensemble de S contenant 5 entiers et soit la fonction f : B → A qui associe à chaque élément de B la paire appartenant à A dans laquelle apparaı̂t l’élément considéré. Puisque |B| > |A|, on en déduit que f n’est pas injective, i.e. deux entiers différents de B au moins auront la même image dans A. Leur somme est donc égale à 9. Dans lecas où |S| = 4 = |B|, le principe des tiroirs ne peut s’appliquer. Par exemple, si on choisit A = 1, 2, 3, 4 alors il est impossible de former 9 par addition de deux éléments de A. ⋄ E XEMPLE 10.7 D ÉVELOPPEMENT D ÉCIMAL D ’ UNE FRACTION . L’écriture décimale d’une fraction, i.e. d’un rationnel, se termine après un nombre fini de chiffres ou bien se répète périodiquement. U sa ge 3.0 0 0 0 0 0 0 0 0 0 14 28 0.2 1 4 2 8 5 7 1 4 2 8 5 7 20 14 60 56 40 28 120 112 80 70 100 98 20 14 60 56 4 .0 .. F IG . 10.1 À chaque étape de la division du numérateur n par le dénominateur d, on obtient un reste r. Si celui-ci est nul, la proposition est vérifiée. Si r n’est pas nul, il est nécessairement inférieur au dénominateur. Le reste ne peut donc prendre que d − 1 valeurs différentes. Après d divisions CHAPITRE 10. DÉNOMBREMENT. 294 successives (après épuisement des chiffres formant le numérateur), au maximum, on doit avoir eu (au moins) deux restes identiques et le développement décimal se répète donc périodiquement. ⋄ Le principe des tiroirs induit aussi la conséquence suivante : ité Soit A et B deux ensembles finis comportant le même nombre d’éléments et f : A → B une fonction de A vers B ; f est injective ⇔ f est surjective lim Si f est injective, alors les images des éléments de A sont distinctes. L’image de A par f est donc un sous-ensemble de B comportant |A| = |B| éléments. Dès lors l’image de A par f est B lui-même et f est surjective. Si f est surjective, alors chaque élément de B est l’image d’un élément de A. Puisque B comporte |B| = |A| éléments, et que chaque élément de A ne peut avoir qu’une seule image par f , on en déduit que deux éléments différents de A ont des images distinctes dans B. Dès lors, f est injective. U sa ge 10.3 Permutations. Tout ensemble fini A de n objets classés dans un certain ordre est appelé une permutation de ces objets. De façon équivalente, on appelle permutation de A toute bijection p : A → A. Si A = a1 , a2 , . . ., an et si p est une permutation de A, on écrit p sous la forme a1 a2 · · · an p= (10.5) p(a1 ) p(a2 ) · · · p(an ) où la suite p(a1 ), p(a2 ), . . ., p(an ) contient tous les éléments de A. De façon équivalente, on peut décrire une permutation par une bijection p : D → A de l’ensemble D des entiers formant une énumération de A vers A, soit 1 2 ··· n p= (10.6) p(1) p(2) · · · p(n) où p(1), p(2), . . ., p(n) sont les éléments de A. Le nombre Pn de permutations d’un ensemble fini de n objets distincts (n > 0) est égal à Pn = n! (10.7) CHAPITRE 10. DÉNOMBREMENT. 295 ité La démonstration peut être effectuée par induction. Le résultat (10.7) sera cependant obtenu dans la suite comme cas particulier d’un problème plus général. On remarquera que le nombre de permutations, c’est-à-dire le nombre de bijections entre deux ensembles, ne dépend que du nombre d’éléments dans ces ensembles. E XEMPLE 10.8 De combien de façons différentes peut-on permuter les lettres du mot DISCRET ? Le mot DISCRET comportant 7 lettres différentes, on a 7! = 5 040 permutations possibles. ⋄ lim 10.4 Arrangements. Un arrangement de r éléments parmi les n éléments d’un ensemble A est une permutation de r éléments de A. E XEMPLE 10.9 Soit A = a, b, c . Les éléments b, a forment un arrangement de deux éléments de A. ⋄ De façon équivalente, on appelle arrangement de A une injection f : D → A où D = {1, 2, . . ., r} soit 1 2 ··· r f= (10.8) f (1) f (2) · · · f (r) U sa ge où f (1), f (2), . . ., f (r) sont r éléments distincts de A. Cette écriture revient à ranger r éléments différents de A dans une liste ordonnée de r cases distinctes. # Le nombre Arn d’arrangements de r éléments d’un ensemble de n (où n ≥ r) éléments est n! Arn = (10.9) (n − r)! " ! On peut choisir le premier élément de l’arrangement de n façons différentes puisqu’il y a n éléments dans l’ensemble. Il y a n − 1 façons de choisir le deuxième élément parmi les n − 1 éléments restants. En général, il y a donc n − k + 1 façons de choisir le k-ème élément. Par conséquent, selon le principe du produit, il y a n! Arn = n(n − 1)(n − 2) · · ·(n − r + 1) = (n − r)! arrangements de r éléments parmi n éléments. Dans le cas particulier où r = n, on retrouve, en tenant compte de la convention 0! = 1, Arn = Pn = n! (10.10) Le nombre de r-arrangements sur un ensemble de n objets est égal au nombre de fonctions injectives f : D → A t.q. |D| = r et |A| = n. CHAPITRE 10. DÉNOMBREMENT. 296 10.5 Combinaisons. E XEMPLE 10.10 Soit ité Une combinaison de r objets parmi les n éléments d’un ensemble A est un sousensemble (non ordonné) de r éléments de A. A = Jeanne, Louis, Élise, Éric, Géraldine lim un ensemble de 5 personnes. Le sous-ensemble B = Jeanne, Louis, Élise est une combinaison particulière de trois éléments de A. ' Le nombre Cnr de combinaisons de r objets parmi les n (où n ≥ r > 0) éléments d’un ensemble est le nombre binomial n n! r Cn = = (10.11) r r!(n − r)! & $ % On peut obtenir les arrangements d’un ensemble en formant les combinaisons de l’ensemble et en considérant toutes les permutations des éléments de chaque combinaison. Dès lors, par le principe du produit sa ge U ⋄ Arn = Cnr Pr Cnr = soit n! Arn = Pr (n − r)!r! E XEMPLE 10.11 De combien de façons peut-on sélectionner 5 joueurs dans une équipe de tennis comportant 12 joueurs pour affronter une autre équipe ? La solution est le nombre de sous-ensembles de 5 joueurs pouvant être définis dans l’ensemble des 12 joueurs disponibles. Soit : 5 C12 = 12! 12 11 10 9 8 = = 792 7! 5! 54321 ⋄ E XEMPLE 10.12 Supposons, dans l’exemple précédent, que deux joueurs a et b ne veulent pas faire partie ensemble de l’équipe. De combien de façon peut-on constituer une équipe de 5 joueurs parmi les 12 joueurs disponibles ? Les équipes sont de trois types : 5 équipes de ce type ; – celles qui ne contiennent ni a ni b : on peut former C10 4 – celles qui contiennent a (et pas b) : on peut former C10 équipes de ce type ; 4 équipes de ce type. – celles qui contiennent b (et pas a) : on peut former C10 CHAPITRE 10. DÉNOMBREMENT. 297 Au total, selon la règle de la somme, on peut donc former 5 4 4 C10 +C10 +C10 = 252 + 210 + 210 = 672 ⋄ ité équipes différentes. E XEMPLE 10.13 Le nombre de mots binaires de longueur n et de poids r, c’est-à-dire dont r composantes sont égales à un, est donné par Cnr . ⋄ lim Les nombres ou coefficients binomiaux Cnr apparaissent souvent en mathématiques. Ils possèdent les propriétés suivantes : – Propriété de symétrie : Cnr = Cnn−r (10.12) – Propriété de récurrence : r r−1 Cnr = Cn−1 +Cn−1 – Propriété d’addition : (10.13) n ∑ Cnr = 2n (10.14) r=0 U sa ge Ces propriétés peuvent être démontrées à partir de l’expression de Cnr . Elles peuvent aussi être démontrées à partir de la théorie du dénombrement. La propriété de symétrie exprime le fait que le nombre de sous-ensembles Sr de r éléments appartenant à un ensemble A de n éléments est égal au nombre des sousensembles de n − r éléments de A. En effet, chaque sous-ensemble Sr définissant un ensemble A\Sr de n − r éléments. La relation de récurrence (10.13) permet de calculer les nombres binomiaux au moyen du triangle de Pascal. C00 1 C10 C11 1 C20 C21 C22 1 C30 C31 C32 C33 1 C50 C51 C52 C53 C54 C55 C60 C61 C62 C63 C64 C65 C66 1 1 4 5 6 2 3 1 C40 C41 C42 C43 C44 1 1 3 6 1 4 10 10 15 20 15 1 5 1 6 1 F IG . 10.2 Elle est obtenue en remarquant que les sous-ensembles de r éléments de A peuvent r−1 r être décomposés en Cn−1 sous-ensembles ne contenant pas l’élément an et en Cn−1 sousensembles contenant an et en appliquant le principe de la somme. CHAPITRE 10. DÉNOMBREMENT. 298 La dernière propriété provient des deux façons différentes de compter le nombre de sous-ensembles de taille quelconque de A. Les coefficients de la ligne n du triangle de Pascal sont les coefficients apparaissant dans le développement de (a + b)n : $ ité ' B IN ÔME DE N EWTON Quels que soient les nombres a et b et pour tout n ≥ 0, on a (a + b)n = n ∑ Cnk an−k bk k=0 n = a +Cn1 an−1 b1 +Cn2 an−2 b2 + · · · +Cnn−1 a1 bn−1 + bn lim & (10.15) % Cette relation est démontrée en analyse. Dans le cas où n > 1, on peut également en donner une démonstration basée sur le dénombrement. Utilisant la distributivité et la commutativité de la multiplication, (a + b)n peut être exprimé comme une somme de produits de puissances de a et b de la forme : an−k bk = a | a a{z· · · a} b | b b{z· · · b} n−k facteurs k facteurs U sa ge Un tel facteur apparaı̂t un nombre de fois égal au nombre de façons de choisir k positions pour les b parmi les n positions possibles. Dès lors (a + b)n = n ∑ Cnk an−k bk k=0 10.6 Permutations et combinaisons généralisées. Jusqu’ici, nous avons considéré des permutations et des combinaisons d’éléments distincts. Il arrive cependant très souvent que l’on considère des éléments indiscernables. 10.6.1 Permutations avec répétition. Les permutations d’objets indiscernables ne peuvent être décrites par le formalisme ensembliste puisqu’un ensemble ne contient que des éléments différents. (Le fait qu’un élément apparaisse plusieurs fois dans l’expression en extension d’un ensemble ne signifie pas que cet ensemble contienne plusieurs fois le même objet.) CHAPITRE 10. DÉNOMBREMENT. 299 ' ité Soit une collection de n = n1 + n2 + · · · + nk objets comportant n1 objets indiscernables de type 1, n2 objets indiscernables de type 2, . . . , nk objets indiscernables de type k. Le nombre de permutations distinctes de ces n objets est n! (10.16) Pn1 ,n2 ,...,nk = n1 !n2 ! . . . nk ! $ & % lim Le nombre total de permutations de n éléments distincts est donné par Pn = n!. Si les n objets ne sont pas distincts mais que n1 objets du type 1 sont indiscernables, alors, parmi les n! permutations, celles qui sont obtenues par permutation des n1 objets indiscernables de type 1 sont indiscernables. Le nombre total de permutations de n objets dont n1 sont indiscernables est donc donné par n! n1 ! De même, si la collection d’objets comporte n2 objets indiscernables de type 2,. . . , nk objets indiscernables de type k, alors n! n1 !n2 ! . . . nk ! U sa ge Pn1 ,n2 ,...,nk = E XEMPLE 10.14 Combien de “mots” de sept lettres peut-on former en mélangeant les lettres du mot BENZENE ? D’après les résultat général, il vient P1,3,2,1 = 7! = 420 1! 3! 2! 1! ⋄ 10.6.2 Arrangements avec répétition. Les arrangements de r éléments d’un ensemble A peuvent être considérés comme les différentes façons de générer une liste ordonnée de r objets à partir des éléments de A. On peut aussi considérer le problème consistant à former une liste ordonnée à partir des éléments de A en autorisant l’utilisation répétée de chacun des éléments de A lors de la constitution de cette liste. On parle alors d’arrangement avec répétition. Le nombre d’arrangements avec répétition éléments est Brn = nr Brn de r éléments choisis parmi n (10.17) CHAPITRE 10. DÉNOMBREMENT. 300 Brn = |n n n{z n . . . n} = nr r facteurs ité Il y a n façons de choisir chaque élément de l’arrangement. Par le principe du produit, le nombre d’arrangements avec répétition est donc E XEMPLE 10.15 Avec les 26 lettres de l’alphabet, on peut construire 26r chaı̂nes de longueur r. ⋄ lim 10.6.3 Combinaisons avec répétition. Une combinaison avec répétition de r objets choisis parmi les n ≥ 1 éléments d’un ensemble A est une collection de r objets choisis dans A dans laquelle les éléments de A peuvent apparaı̂tre plusieurs fois. avec répétition peut donc être vue comme une application f : A → Une combinaison 0, 1, 2, . . ., r qui à chaque élément ai de A fait correspondre un entier f (ai ) ∈ [0, r] telle n que ∑ f (ai) = r. i=1 Drn de combinaisons avec répétition de r objets choisis parmi n U sa ge Le nombre éléments est r Drn = Cn+r−1 (10.18) Représentons une combinaison avec répétition de r objets choisis parmi n éléments de la manière suivante. On utilise n − 1 barres verticales pour identifier les n objets de A. Par exemple, pour n = 5 : . . . | . . . | . . . | . . .| . . . On place alors chacun des r objets de la combinaison dans une des cases en le représentant par une croix. Par exemple, pour r = 6 : × ×| |× × ×|×| Le résultat est une représentation de la combinaison au moyen de n − 1 barres et de r croix. Le nombre de combinaisons avec répétition est égal au nombre de représentations possibles. Ce nombre est lui-même égal au nombre de choix possibles pour placer les r croix dans les n − 1 + r positions possibles soit r Drn = Cn−1+r CHAPITRE 10. DÉNOMBREMENT. 301 D64 = C96 = ité E XEMPLE 10.16 Un magasin de pralines dispose de 4 sortes de pralines différentes et propose à ses clients un mini-assortiment de 6 pralines choisies au hasard. Combien de mini-assortiments différents peut-on réaliser ? On choisit 6 pralines hors de 4 catégories avec répétition éventuelle de ces catégories, soit 9! 987 = = 84 6! 3! 32 ⋄ lim 10.7 Résumé pratique. Les formules de dénombrement établies dans les sections précédentes peuvent être résumées dans un tableau : ' Sans répétition Permutation Pn = n! n! (n − r)! n! Combinaison Cnr = r!(n − r)! Arn = U sa ge Arrangement & $ Avec répétition n! Pn1 ,n2 ,...,nk = n1 ! n2 ! · · · nk ! Brn = nr r Drn = Cn+r−1 = (n + r − 1)! r!(n − 1)! % 10.8 Principe d’inclusion-exclusion. Le principe de la somme ne concerne que des ensembles disjoints. Si on désire compter les éléments de deux ou plusieurs ensembles qui ne sont pas disjoints, on utilisera le principe suivant : Si les ensembles A et B sont finis, alors |A ∪ B| = |A| + |B| − |A ∩ B| (10.19) En effet, dans la somme |A| + |B|, chacun des éléments de A ∩ B est compté deux fois. Pour obtenir |A ∪ B|, il faut donc soustraire |A ∩ B| de la somme |A| + |B|. CHAPITRE 10. DÉNOMBREMENT. 302 Dans le cas d’un petit nombre d’ensembles, on peut raisonner sur le diagramme de Venn pour généraliser la formule à plus de deux ensembles. Par exemple, dans le cas de trois ensembles finis A, B et C, il vient |A ∪ B ∪C| = |A| + |B| + |C| − |A ∩ B| − |A ∩C| − |B ∩C| + |A ∩ B ∩C| ité (10.20) lim E XEMPLE 10.17 Supposons que 100 des 120 étudiants informaticiens connaissent au moins une langue étrangère parmi l’anglais, l’italien et le russe. Supposons encore que – 65 parlent anglais, – 45 parlent italien, – 42 parlent russe, – 20 parlent anglais et italien, – 25 parlent anglais et russe, – 15 parlent italien et russe. Combien d’étudiants trilingues y a-t-il ? Si on note par A, I et R les ensembles des étudiants connaissant, respectivement, l’anglais, l’italien et le russe, on a |A ∪ I ∪ R| = |A| + |I| + |R| − |A ∩ I| − |A ∩ R| − |I ∩ R| + |A ∩ I ∩ R| Soit 100 = 65 + 45 + 42 − 20 − 25 − 15 + |A ∩ I ∩ R| et donc U sa ge |A ∩ I ∩ R| = 8 ⋄ Le principe d’inclusion-exclusion peut être généralisé à un nombre quelconque d’ensembles. $ ' Si A1 , A2 , . . . , An sont des ensembles finis, alors n [ n Ai = ∑ (−1)k+1 ∑ i=1 k=1 1≤i <···<i & La somme ∑ 1≤i1 <···<ik 1 k k \ Ai ℓ ≤n (10.21) ℓ=1 k \ Ai ℓ ≤n % ℓ=1 porte sur toutes les intersections de k ensembles distincts parmi A1 , A2 , . . . , An . L’expression (10.21) peut donc encore s’écrire sous la forme de la somme alternée |A1 ∪ A2 ∪ · · · ∪ An | = + ∑ ∑ 1≤i≤n 1≤i< j<k≤n |Ai | − ∑ 1≤i< j≤n |Ai ∩ A j | |Ai ∩ A j ∩ Ak | − · · · + (−1)n+1 |A1 ∩ A2 ∩ · · · ∩ An | (10.22) CHAPITRE 10. DÉNOMBREMENT. 303 On démontre la propriété par induction. La proposition est vraie pour n = 1 (et même pour n = 2). ! n+1 n [ [ Ai ∪ An+1 Ai = i=1 i=1 lim ! n n [ [ Ai ∩ An+1 = Ai + |An+1 | − i=1 i=1 ité Montrons que, si la proposition est vraie pour n, elle l’est également pour n + 1. On a: n n [ [ = Ai + |An+1 | − (Ai ∩ An+1 ) i=1 i=1 n = ∑ (−1)k+1 k=1 ∑ 1≤i1 <···<ik k \ Aiℓ + |An+1 | ≤n ℓ=1 n U sa ge − ∑ (−1)k+1 k=1 soit n+1 n [ Ai = ∑ (−1)k+1 i=1 k=1 1≤i ∑ 1 <···<ik ∑ 1≤i1 <···<ik k \ Aiℓ + |An+1 | ≤n k \ Aiℓ ∩ An+1 ≤n ℓ=1 ℓ=1 n − ∑ (−1)k+1 k=1 ∑ 1≤i1 <···<ik ! k \ Aiℓ ∩ An+1 ≤n ℓ=1 Les trois termes du membre de droite correspondent, respectivement, à toutes les intersections de k ≤ n ensembles n’impliquant pas An+1 , à l’ensemble An+1 et à toutes les intersections de k ≤ n ensembles avec An+1 . Ceci équivaut à considérer toutes les intersections des n + 1 ensembles A1 , A2 , . . ., An , An+1 et donc k n+1 n+1 \ [ A Ai = ∑ (−1)k+1 i ∑ ℓ i=1 k=1 1≤i <···<i ≤n+1 1 k ℓ=1 CHAPITRE 10. DÉNOMBREMENT. 304 Le principe d’exclusion peut également être reformulé afin de permettre le dénombrement d’éléments qui, à l’intérieur d’un ensemble A, n’ont aucune des propriétés définissant les sous-ensembles A1 , A2 , . . ., An de A Si A1 , A2 , . . . , An sont des sous-ensembles d’un même ensemble fini A, alors le nombre d’éléments de A qui n’appartiennent à aucun des sous-ensembles A1 , A2 , . . . , An est donné par n k [ \ n k+1 (10.23) A\ Ai = |A| − ∑ (−1) Ai ℓ ∑ i=1 1≤i <···<i ≤n k=1 & k ℓ=1 lim 1 En explicitant les différentes sommes, l’expression (10.23) peut encore s’écrire n [ A\ A i = |A| − ∑ |Ai | + ∑ |Ai ∩ A j | i=1 1≤i≤n 1≤i< j≤n − ∑ 1≤i< j<k≤n |Ai ∩ A j ∩ Ak | + · · · + (−1)n |A1 ∩ A2 ∩ · · · ∩ An | % (10.24) Ce résultat est une conséquence du principe de la différence et de (10.21). Nous avons déjà déterminé le nombre de fonctions bijectives (permutations) et injectives (arrangements) d’un ensemble A vers un ensemble B. Le principe d’inclusionexclusion permet de dénombrer les fonctions surjectives : sa ge U $ ité ' ' Le nombre de fonctions surjectives d’un ensemble A de m éléments dans un ensemble B de n éléments (m ≥ n) est $ n ∑ (−1)k−1Cnk−1(n + 1 − k)m (10.25) k=1 & = nm −Cn1 (n − 1)m +Cn2 (n − 2)m − · · · + (−1)n−1Cnn−1 1m % Soit F l’ensemble des fonctions de A → B. Les fonctions surjectives recherchées sont celles appartiennent à F et qui font de tous les éléments de B l’image d’au moins un élément de A. Pour dénombrer les fonctions surjectives, on applique le principe d’inclusionexclusion en considérant que les fonctions recherchées appartiennent à F mais n’appartiennent à aucun de ses sous-ensembles Fi (i = 1, 2, . . ., n) où Fi est l’ensemble des fonctions de A vers B telles que bi ∈ B n’est l’image d’aucun élément de A. On a : • |F| = nm • |Fi | = (n − 1)m CHAPITRE 10. DÉNOMBREMENT. • | k \ j=1 n \ j=1 Fj | = (n − k)m Fj | = 0 ité • | 305 Si on tient compte du fait que le nombre d’intersections de k ensembles est donné par Cnk , il vient, en appliquant (10.23), n n [ F − Fi = nm − ∑ (−1)k+1Cnk (n − k)m k=1 i=1 n−1 lim n−1 = nm − ∑ (−1)k+1Cnk (n − k)m = nm + ∑ (−1)kCnk (n − k)m k=1 n−1 = k=1 n ∑ (−1)kCnk (n − k)m = ∑ (−1)k−1Cnk−1 (n + 1 − k)m k=0 comme annoncé. k=1 E XEMPLE 10.18 Cherchons le nombre de solutions entières de l’équation U sa ge x + y + z = 11 telles que 0 ≤ x ≤ 3, 0 ≤ y ≤ 4 et 0 ≤ z ≤ 6. Soit A l’ensemble des solutions entières telles que 0 ≤ x, y, z. Une telle solution correspond à choisir 11 éléments parmi trois groupes d’éléments correspondant à x, y et z. Dès lors, 11 |A| = D11 3 = C13 = 13 · 12 = 78 2 Soit A1 l’ensemble des solutions telles que x > 3, A2 l’ensemble des solutions telles que y > 4 et A3 l’ensemble des solutions telles que z > 6. En raisonnant comme pour |A|, il vient • |A1 | = D73 = C97 = 36 • |A2 | = D63 = C86 = 28 • |A3 | = D43 = C64 = 15 • |A1 ∩ A2 | = D23 = C42 = 6 • |A1 ∩ A3 | = D03 = C20 = 1 • |A2 ∩ A3 | = 0 • |A1 ∩ A2 ∩ A3 | = 0 Dès lors, le nombre de solutions du type recherché est |A| − |A1 | − |A2 | − |A3 | + |A1 ∩ A2 | + |A1 ∩ A3 | + |A2 ∩ A3 | − |A1 ∩ A2 ∩ A3 | = 78 − 36 − 28 − 15 + 6 + 1 + 0 − 0 = 6 ⋄ CHAPITRE 10. DÉNOMBREMENT. 306 |A| − |A1 | − |A2 | − |A3 | − |A4 | ité E XEMPLE 10.19 C RIBLE D ’ É RATOSTH ÈNE . Le principe d’inclusion permet de déterminer combien de nombres premiers sont inférieurs ou égaux à un entier positif donné. En effet, pour trouver combien d’entiers premiers sont inférieurs à 100, par exemple, il suffit de partir de l’ensemble A des nombres entiers de 2 à 100. Puisque les entiers composés √ inférieurs à 100 doivent avoir un facteur premier inférieur ou égal à 100 = 10, il suffit de retirer successivement de A les sous-ensembles A1 des entiers divisibles par 2 (et inférieurs à 100), A2 des entiers divisibles par 3, A3 des entiers divisibles par 5 et A4 des entiers divisibles par 7. Donc le nombre recherché est lim + |A1 ∩ A2 | + |A1 ∩ A3 | + |A1 ∩ A4 | + |A2 ∩ A3 | + |A2 ∩ A4 | + |A3 ∩ A4 | − |A1 ∩ A2 ∩ A3 | − |A1 ∩ A2 ∩ A4 | − |A1 ∩ A3 ∩ A4 | − |A2 ∩ A3 ∩ A4 | + |A1 ∩ A2 ∩ A3 ∩ A4 | Le nombre d’entiers inférieurs ou égaux à 100 et qui sont divisibles par tous les nombres premiers d’un sous-ensemble de {2, 3, 5, 7} est1 ⌊100/N⌋ où N est le produit des nombres premiers de ce sous-ensemble. En effet, deux entiers quelconques choisis parmi ces nombres premiers ne possèdent pas de diviseur commun. Dès lors, 100 100 100 100 ⌋−⌊ ⌋−⌊ ⌋−⌊ ⌋ 2 3 5 7 100 100 100 100 100 100 +⌊ ⌋+⌊ ⌋+⌊ ⌋+⌊ ⌋+⌊ ⌋+⌊ ⌋ 2·3 2·5 2·7 3·5 3·7 5·7 100 100 100 100 −⌊ ⌋−⌊ ⌋−⌊ ⌋−⌊ ⌋ 2·3·5 2·3·7 2·5·7 3·5·7 100 +⌊ ⌋ 2·3·5·7 = 99 − 50 − 33 − 20 − 14 + 16 + 10 + 7 + 6 + 4 + 2 − 3 − 2 − 1 − 0 + 0 U sa ge 99 − ⌊ = 21 En comptant les nombres premiers 2, 3, 5 et 7, il y a donc 4 + 21 = 25 nombres premiers inférieurs à 100. ⋄ 10.8.1 Dérangement. Un dérangement de A est une permutation de A telle qu’aucun élément de A ne se trouve à la bonne place. ' Le nombre de dérangements d’un ensemble de n éléments est n (−1)k 1 n 1 dn = n! ∑ = n! 1 − 1 + − · · · + (−1) k! 2 n! k=0 & 1 Rappelons si x ≥ 0. $ (10.26) % que ⌊x⌋ désigne le plus grand entier plus petit ou égal à x, c’est-à-dire la partie entière de x CHAPITRE 10. DÉNOMBREMENT. 307 ité Soit S l’ensemble des permutations et soit Si le sous-ensemble de S pour lequel l’élément i n’est pas affecté par la permutation, i.e. p(i) = i en reprenant la notation de (10.6). On peut calculer le nombre de dérangements dn par application du principe d’inclusion-exclusion. On a, |Si1 | = (n − 1)! |Si1 ∩ Si2 | = (n − 2)! .. . k \ Siℓ = (n − k)! (i = 1, 2, . . ., n) (i1 6= i2 ∈ {1, 2, . . ., n}) (iℓ distincts ∈ {1, 2, . . ., n}) lim ℓ=1 Le nombre d’intersections de k ensembles est donné par Cnk = Dès lors, il vient n dn = n! k!(n − k)! n!(n − k)! ∑ (−1)k k!(n − k)! k=0 n U sa ge (−1)k k=0 k! 1 n 1 = n! 1 − 1 + − · · · + (−1) 2 n! = n! ∑ Remarquons que, parmi toutes les permutations de n éléments, la proportion de dérangements est donnée par dn 1 1 n 1 = 1 − 1 + − · · · + (−1) ∼ si n → ∞ (10.27) n! 2 n! e En pratique, tenant compte de la convergence rapide de la série de puissances représentant la fonction exponentielle2, on peut évaluer le nombre de dérangements en arrondissant n!/e à l’entier le plus proche. 2 En effet, n 1 (−1)k =∑ + Rn e k=0 k! et donc dn = n! + R′n e où 1 (n + 1)! où |Rn | ≤ |R′n | ≤ n! 1 = (n + 1)! n + 1 CHAPITRE 10. DÉNOMBREMENT. 308 10.9 Relations de récurrence et dénombrement. 10.9.1 Raisonnement par induction. ité Les relations de récurrence ou équations aux différences introduites au chapitre précédent peuvent aussi servir de base au dénombrement comme en témoigne l’exemple des nombres de Fibonacci. lim Très souvent, une relation de récurrence est obtenue en exprimant la solution d’un problème d’ordre n au moyen des solutions d’un problème du même type mais d’un ordre inférieur. La relation de récurrence obtenue complétée par la solution pour un ou plusieurs cas de base permet alors de résoudre le problème complet. U sa ge E XEMPLE 10.20 L ES TOURS DE H ANO Ï . Selon la légende, il existe un temple bouddhiste dans lequel Dieu a placé, le jour de la création du monde, 64 disques d’or de rayons décroissants enfilés sur une barre de diamant. En utilisant deux autres barres de diamant comme supports intermédiaires, des prêtres se relayent pour transférer les disques d’une barre sur une autre en ne déplaçant jamais qu’un seul disque à la fois et en ne déposant jamais un disque que sur un disque de plus grand rayon. Dès que les prêtres auront reconstitué l’empilement des disques sur la deuxième barre, “le temple s’effondrera et avec lui le monde entier disparaı̂tra en poussière dans un grand tonnerre”. La question qui se pose est de déterminer le nombre de mouvements nécessaires pour réaliser le transfert des 64 disques. La solution pour déplacer un empilement de n disques de la barre n˚1 à la barre n˚2 peut être décomposée en trois : i. Déplacer n − 1 disques de la barre n˚1 à la barre n˚3 ; ii. Déplacer le dernier disque de la barre n˚1 à la barre n˚2 ; iii. Déplacer les n − 1 disques de la barre n˚3 à la barre n˚2. Dès lors, si Hn désigne le nombre de mouvements nécessaires pour déplacer un empilement de n disques, il vient Hn = 2Hn−1 + 1 Cette relation est assortie de la condition initiale évidente H1 = 1. En utilisant les techniques de résolution du chapitre précédent, il vient donc Hn = 2n − 1 Pour déplacer les 64 disques, il faut donc effectuer H64 = 264 − 1 = 18 446 744 073 709 551 615 mouvements. À raison d’un mouvement par seconde, ceci représente environ 585 milliards d’années. ⋄ CHAPITRE 10. DÉNOMBREMENT. 309 lim ité E XEMPLE 10.21 On recherche le nombre de chaı̂nes binaires (formées de 0 et de 1) de longueur n qui ne contiennent pas deux 0 consécutifs. Soit an le nombre de chaı̂nes binaires valides. Ces chaı̂nes se terminent nécessairement par 0 ou par 1. Les chaı̂nes binaires valides se terminant par 1 sont formées en ajoutant 1 à la suite d’une chaı̂ne valide de longueur n − 1. On compte donc an−1 chaı̂nes de ce type. Les chaı̂nes binaires valides se terminant par 0 sont formées en ajoutant 0 aux chaı̂nes valides de longueur n − 1 et se terminant par 1. De façon équivalente, les chaı̂nes binaires valides de longueur n se terminant par 0 sont formées en ajoutant 10 aux chaı̂nes binaires valides de longueur n − 2. On compte donc an−2 chaı̂nes de ce type. Au total, il vient an = an−1 + an−2 qui est valable pour n ≥ 3. D’autre part, on a, évidemment, a1 = 2 et a2 = 3 (les chaı̂nes valides de longueur deux sont 10, 11 et 01). En résolvant, il vient √ !n √ !n 1− 5 1+ 5 +C2 an = C1 2 2 a1 a2 = 2 = C1 = 3 = C1 √ ! √ ! 1− 5 1+ 5 +C2 2 2 √ !2 √ !2 1− 5 1+ 5 +C2 2 2 U sa ge avec soit √ 2(2 5 − 5) an = √ 5( 5 − 1) √ !n √ 1− 5 ( 5 + 3) √ + 2 2 5 √ !n 1+ 5 2 Par exemple, il y a a10 = 144 chaı̂nes de longueur 10. ⋄ 10.9.2 Relation de récurrence avec fractionnement. De nombreux algorithmes informatiques sont basés sur le fractionnement d’un problème de taille n en un ensemble de a problèmes de taille n/b. Une fois ces problèmes résolus (en appliquant la même stratégie), la solution du problème initial demande encore un nombre g(n) d’opérations pour combiner les résultats partiels. Si f (n) désigne le nombre d’opérations nécessaires pour résoudre un problème d’ordre n, il vient donc3 f (n) = a f (n/b) + g(n) qui est appelée relation de récurrence avec fractionnement. Ce type de stratégie est souvent appliqué dans les algorithmes de tri. Examinons le comportement d’une telle relation de récurrence, d’abord dans le cas où g(n) est constant. 3 L’écriture particulière suppose que n est divisible par b. CHAPITRE 10. DÉNOMBREMENT. 310 ' Si f est une fonction croissante qui satisfait à la relation $ ité f (n) = a f (n/b) + c lorsque n est divisible par b où a ≥ 1, b est un entier > 1 et où c est un nombre réel positif, alors ( O(nlogb a ) si a > 1 (10.28) f (n) = O(ln n) si a = 1 & lim Supposons d’abord que n = bk (k ∈ N). Il vient % f (n) = a f (bk−1 ) + c h i k−2 = a a f (b ) + c + c h i = a a a f (bk−3 ) + c + c + c .. . k−1 j=0 U sa ge = ak f (1) + c ∑ a j a=1 Dans le cas où a = 1, on a f (n) = f (1) + ck = f (1) + c logb n Si n n’est pas une puissance de b, alors, il existe un entier k tel que bk < n < bk+1 et, puisque f est croissante, f (n) ≤ f (bk+1 ) = f (1) + c(k + 1) ≤ f (1) + c(1 + logb n) Dans les deux cas, on a donc a>1 f (n) = O(ln n) Si a > 1 et n = bk , alors 1 − ak f (n) = a f (1) + c 1−a logb a = C1 n +C2 k CHAPITRE 10. DÉNOMBREMENT. 311 puisque ak = alogb n = nlogb a ité Dans le cas où bk < n < bk+1 , il vient, puisque f est croissante, f (n) ≤ f (bk+1 ) = C1 ak+1 +C2 ≤ (C1 a)alogb n +C2 ≤ (C1 a)nlogb a +C2 puisque k < logb n < k + 1. Dès lors, lim f (n) = O(nlogb a ) E XEMPLE 10.22 A LGORITHME DE FOUILLE BINAIRE . Si on désire déterminer la position d’un élément particulier dans une liste ordonnée (qu’il s’agisse de nombres ou de mots), on peut utiliser l’algorithme de fouille binaire. Celui-ci consiste à comparer l’élément à repérer avec l’élément au centre de la liste. La liste est ensuite divisée en deux sous-listes de même taille et on poursuit la recherche dans la sous-liste appropriée en fonction de la comparaison avec l’élément central. Le nombre de comparaisons pour réaliser cette opération est donc donné par U sa ge f (n) = f (n/2) + 1 si on tient compte du fait qu’il est nécessaire de comparer l’élément à repérer avec l’élément central avant de poursuivre la procédure avec l’une des deux sous-listes. Le nombre d’opérations pour cet algorithme de fouille est donc O(ln n), c’est-à-dire bien moins que l’algorithme qui consiste à parcourir tous les éléments de la liste un par un (fouille linéaire O(n)). ⋄ Le même raisonnement peut être répété lorsque g(n) = cnd . On a alors : ' Si f est une fonction croissante qui satisfait à la relation $ f (n) = a f (n/b) + cnd lorsque n = bk où k est un entier positif, a ≥ 1, b est un entier > 1 et où c et d sont des nombres réels positifs, alors d si a < bd O(n ) f (n) = O(nd ln n) si a = bd (10.29) O(nlogb a ) si a > bd & % CHAPITRE 10. DÉNOMBREMENT. 312 a = (a2n−1 a2n−2 · · · a1 a0 )2 b = (b2n−1 b2n−2 · · · b1 b0 )2 et Fractionnons les nombres entiers en deux blocs de n bits, soit a = 2n A1 + A0 b = 2n B1 + B0 et où A0 = (an−1 · · · a1 a0 )2 lim A1 = (a2n−1 · · · an+1 an )2 ité E XEMPLE 10.23 M ULTIPLICATION D ’ ENTIERS . Pour multiplier deux entiers représentés par 2n bits, on peut utiliser l’algorithme traditionnel du calcul écrit. Cependant, il est plus efficace d’utiliser la technique de fractionnement décrite cidessous. On suppose que a et b sont des entiers avec un développement binaire de longueur 2n. Soit B1 = (b2n−1 · · · bn+1 bn )2 B0 = (bn−1 · · · b1 b0 )2 L’algorithme de multiplication rapide est basé sur l’identité ab = (22n + 2n )A1 B1 + 2n (A1 − A0 )(B0 − B1 ) + (2n + 1)A0 B0 Cette expression montre que la multiplication peut être réalisée au moyen de trois multiplications d’entiers de n bits avec des additions, soustractions et reports en nombre proportionnel à n. Donc, si f (2n) désigne le nombre d’opérations nécessaires pour multiplier deux entiers de 2n bits, il vient f (2n) = 3 f (n) +Cn U sa ge ou encore f (n) = 3 f (n/2) +C′ n Il s’en suit que le nombre d’opérations nécessaires est f (n) = O(nlog2 3 ) = O(n1.585... ) alors que l’algorithme conventionnel utilise O(n2 ) opérations binaires. ⋄ 10.10 Dénombrement et fonction génératrice. Les fonctions génératrices peuvent également être utilisées dans les problèmes de dénombrement. Les fonctions génératrices peuvent être utilisées chaque fois que l’on s’intéresse à un problème de dénombrement d’un ensemble A = (a1 , a2 , . . ., an )|a1 + a2 + · · · + an = b ∈ N, ai ∈ Si ⊂ N (i = 1, 2, . . ., n) Il suffit alors de former la fonction génératrice n f (x) = ∏ ∑ xk i=1 k∈Si La solution est le coefficient de xb . CHAPITRE 10. DÉNOMBREMENT. 313 ité E XEMPLE 10.24 Recherchons de combien de façons différentes on peut distribuer huit biscuits entre trois enfants de manière à ce que chacun reçoive au moins deux biscuits mais pas plus que quatre. Le problème peut être mis sous la forme de la recherche des entiers a, b, c tels que 2 ≤ a, b, c ≤ 4 et a + b + c = 8. Le nombre de solutions est le coefficient de x8 dans le développement de (x2 + x3 + x4 )(x2 + x3 + x4 )(x2 + x3 + x4 ) où chaque facteur (x2 + x3 + x4 ) représente un enfant et où l’exposant indique le nombre de biscuits reçu par chacun. En effet, le coefficient de x8 représente le nombre de façons de sélectionner trois termes de sorte que la somme des exposants soit égale à 8. Dès lors, puisque lim (x2 + x3 + x4 )3 = x6 + 3x7 + 6x8 + 7x9 + 6x10 + 3x11 + x12 il y a donc 6 possibilités différentes de réaliser le partage. ⋄ E XEMPLE 10.25 F ONCTION G ÉN ÉRATRICE ET COMBINAISON SANS R ÉP ÉTITION . Nous avons déjà utilisé ce raisonnement en justifiant la formule du binôme de Newton. Le polynôme (1 + x)n apparaı̂t comme la fonction génératrice de la suite des nombres binomiaux Cn0 ,Cn1 , Cn2 , . . . ,Cnn , 0, 0 . . . puisque (1 + x)n = n ∑ Cnk xk k=0 Le nombre de combinaisons Cnk U sa ge correspond effectivement au nombre de façons possibles de former un ensemble de k éléments à partir de n éléments différents, chaque combinaison étant représentée par un mot binaire de longueur n et de poids k dans lequel chaque “lettre”, 0 ou 1, indique si l’élément correspondant est inclus ou non dans la combinaison. ⋄ E XEMPLE 10.26 F ONCTION G ÉN ÉRATRICE ET COMBINAISON AVEC R ÉP ÉTITION . Le même principe peut être appliqué aux combinaisons avec répétition de k éléments choisis parmi n objets. Dans ce cas, la fonction génératrice est (1 + x + x2 + x3 + · · · )n = 1 (1 − x)n puisque l’on peut associer un facteur (1 + x + x2 + x3 + · · · ) à chacun des n objets. Par conséquent, on obtient l’identité ∞ 1 = Dk xk ∑ (1 − x)n k=0 n Par ailleurs, puisque (cf. cours d’analyse) ∞ 1 n(n + 1) · · · (n + k − 1) k = x ∑ n (1 − x) k! k=0 on en déduit, en identifiant, Dkn = n(n + 1) · · · (n + k − 1) k = Cn+k−1 k! ⋄ CHAPITRE 10. DÉNOMBREMENT. 314 ∞ 1 = ∑ αk xk 1 − αx k=0 et (10.30) (10.31) lim ∞ 1 = ∑ Dkn xk n (1 − x) k=0 ité On peut parfois obtenir les coefficients de la suite représentée par la fonction génératrice en utilisant les développements en série de fonctions connues. Ainsi, lorsque les ensembles Si sont “simples”, la fonction génératrice peut être exprimée comme une fraction rationnelle dont les coefficients sont obtenus en décomposant f (x) en fractions simples et en utilisant les développements De cette façon la solution du problème de dénombrement est obtenue en utilisant des techniques algébriques simples. E XEMPLE 10.27 Déterminons le nombre de solutions entières positives ou nulles de l’équation x + 4y = n où n est un entier positif ou nul. Le problème est équivalent à la recherche des solutions entières positives ou nulles de U sa ge x+z = n où x ∈ N et z = 4y ∈ 4N. La fonction génératrice est du type f (x) = (1 + x + x2 + x3 + . . .)(1 + x4 + x8 + x12 + . . .) = 1 (1 − x)(1 − x4 ) Pour déterminer les coefficients du développement en série de puissances de f , on peut décomposer f en fractions simples, soit f (x) = 1 1−i 1+i 1 3 + + + + 4(1 − x)2 8(1 − x) 8(1 + x) 8(1 − ix) 8(1 + ix) Utilisant les développements connus de ces fractions, il vient f (x) = ∞ ∑ fk xk k=0 CHAPITRE 10. DÉNOMBREMENT. 315 où lim ité 1 3 1 1−i k 1+i fk = Dk2 + + (−1)k + i + (−i)k 4 8 8 8 8 k+1 3 1 1−i k 1+i = + + (−1)k + i + (−i)k 4 8 8 8 8 4+k si k = 4l, l ∈ N 4 3+k si k = 4l + 1, l ∈ N 4 = 2+k si k = 4l + 2, l ∈ N 4 1 + k si k = 4l + 3, l ∈ N 4 k = ⌊ ⌋+1 4 ⋄ Ce résultat aurait pu être obtenu avec un peu de réflexion. 10.11 Exercices. U sa ge Remarque : les exercices marqués d’une étoile ne seront abordés qu’en seconde lecture. 1) a) Combien de plaques minéralogiques peut-on avoir si le numéro est constitué de trois chiffres différents suivis de deux lettres différentes ? Rép. : 10 × 9 × 8 × 26 × 25 = 468000 b) Que devient ce nombre si le premier chiffre ne peut être zéro ? Rép. : 9 × 9 × 8 × 26 × 25 = 421200 2) Il y a six routes entre A et B et quatre entre B et C. a) Quel est le nombre de trajets offerts entre A et C passant par B ? b) Quel est le nombre de chemins aller et retour offerts entre A et C passant par B? c) Quel est le nombre de chemins aller et retour n’empruntant pas deux fois la même route, offerts entre A et C passant par B ? Rép. : a) 6 × 4 = 24; b) 24 × 24 = 576; c) 24 × 23 = 552 3) On forme des messages avec huit drapeaux dont quatre rouges, deux bleus et deux verts ? Combien de messages différents peut-on former : a) avec exactement 8 drapeaux ? b) avec 1, 2, 3, . . . ou 8 drapeaux ? Rép. : a) 420; b) 1350. CHAPITRE 10. DÉNOMBREMENT. 316 4) Etant donnés tous les nombres positifs de trois chiffres (0 ne peut être le premier chiffre). b) Combien sont impairs ? c) Combien sont pairs ? d) Combien sont divisibles par 5 ? ité a) Combien sont supérieurs ou égaux à 700 ? Rép. : a) 300; b) 450; c) 450; d) 180 5) Une classe comprend neuf garçons et trois filles. lim a) Combien de groupes de quatre peuvent-ils former ? b) Combien d’entre eux comptent au moins une fille ? c) Combien d’entre eux ne comptent qu’une fille ? 4 4 Rép. : a) C12 = 495; b) C12 − C94 = 369; c) C31 × C93 = 252 6) Il y a dix points A, B, . . . dans un plan sans que trois d’entre eux soient alignés. a) Combien de droites définissent-ils ? b) Combien de ces droites ne passent ni par A ni par B ? c) Combien de triangles peut-on construire ? d) Parmi ces triangles, combien ont A pour sommet ? U sa ge e) Combien ont AB pour côté ? 2 3 Rép. : a) C10 = 45; b) 45 − 9 − 9 + 1 = 28; c) C10 = 120; d) d)C92 = 36; e) C81 = 8 7) Un étudiant doit répondre à dix questions sur treize à un examen. a) Quel est le nombre de possibilités ? b) Quel est ce nombre s’il doit répondre aux deux premières ? c) Quel est ce nombre s’il doit répondre à la première ou à la deuxième mais pas aux deux ? d) Quel est ce nombre s’il doit répondre à exactement trois des cinq premières questions ? e) Quel est ce nombre s’il doit répondre à au moins trois des cinq premières questions ? 10 8 9 Rép. : a) C13 = 286; b) C11 = 165; c) 2 × C11 = 110; d) C53 × C87 = 80; e) 276 8) a) Combien de triangles sont définis par les sommets d’un octogone ? b) Quel est ce nombre si les côtés de l’octogone ne peuvent être les côtés d’aucun triangle ? Rép. : a) C83 = 56; b) 16 9) De combien de façons peut-on partager neuf jouets différents entre trois enfants de sorte que chaque enfant reçoive exactement trois jouets ? Rép. : C93 × C63 × C33 = 1680 CHAPITRE 10. DÉNOMBREMENT. 317 10) Combien d’équipes de trois joueurs peuvent former neuf étudiants ? Rép. : C93 = 84 En supposant qu’une partie puisse être vide, quel est le nombre de partitions différentes d’un ensemble de trois éléments en trois parties : a) si on suppose que deux partitions dont les descriptions diffèrent par l’ordre des parties sont différentes ; b) si on suppose que deux partitions dont les descriptions ne diffèrent que par l’ordre des parties sont équivalentes. ité ⋆ 11) Rép. : a) 27; b) 5. lim 12) Les n (n ≥ 10) étudiants de première année d’études de bachelier ingénieur civil inscrits au cours de mathématiques discrètes sont mécontents de l’examen qui leur est imposé et décident de former une délégation pour se plaindre auprès du titulaire du cours. – Combien de délégations différentes de 10 étudiants peuvent être formées ? Rép. : Cn10 – Combien de délégations différentes peuvent être formées si une délégation peut être constituée de 1 à n étudiants ? – Si chaque délégation choisit en son sein un porte-parole, combien de délégations différentes de 10 étudiants peuvent être formées ? (Deux délégations réunissant les mêmes étudiants mais avec des porte-parole différents sont considérées comme différentes.) sa ge U Rép. : 2n − 1 Rép. : 10Cn10 – Combien de délégations avec porte-parole peuvent être créées si une délégation peut être constituée de 1 à n étudiants ? Rép. : n2n−1 – Le titulaire du cours accepte d’annuler l’examen à condition de recevoir les listes des compositions de toutes les délégations avec porte-parole (de 1 à n étudiants) qui peuvent être mises sur pied. Déterminer le nombre total de noms que doivent comporter ces listes. Si les étudiants génèrent ces listes de noms à l’aide d’un ordinateur et impriment celles-ci à raison de 25 = 32 noms par seconde, calculer le temps total nécessaire pour produire toutes les listes sachant que n = 299. Rép. : n(1 + n)2n−2; 7.14 1092s Suggestion : On pourra utiliser la formule du binôme de Newton appliquée aux d d d expressions (1 + x)n , (1 + x)n et [x (1 + x)n ] pour exprimer les solutions dx dx dx sous forme simple. 13) Il y a 345 étudiants dans une université qui ont suivi un cours de calcul intégral, 212 qui ont suivi un cours de mathématiques discrètes et 188 qui ont suivi à la fois un cours de calcul intégral et un cours de mathématiques discrètes. Combien y a-til d’étudiants qui ont suivi un cours soit de calcul intégral, soit de mathématiques discrètes ? CHAPITRE 10. DÉNOMBREMENT. 318 Rép. : 345 + 212 − 188 = 369 ité 14) Une étude de marché démontre que 650 000 propriétaires d’ordinateurs achèteront un modem au cours de la prochaine année et que 1 250 000 achèteront un logiciel. Si ce rapport montre que 1 450 000 propriétaires d’ordinateurs achèteront soit un modem, soit un logiciel, combien achèteront à la fois un modem et un logiciel ? Rép. : 650000 + 1250000 − 1450000 = 450000 lim 15) Il y a 2504 étudiants en informatique dans une université. Parmi ceux-ci, 1876 ont pris un cours de PASCAL, 999 un cours de FORTRAN et 345 un cours de langage C. De plus, 876 ont pris à la fois des cours de PASCAL et de FORTRAN, 231 ont pris à la fois des cours de FORTRAN et de langage C et 290 ont pris à la fois des cours de PASCAL et de langage C. Si 189 de ces étudiants ont pris à la fois des cours de FORTRAN, de PASCAL et de langage C, combien de ces 2504 étudiants n’ont pris aucun cours de programmation ? Rép. : 492 16) Trouvez combien il y a de nombres entiers strictement positifs n’excédant pas 100 et qui ne sont ni impairs ni le carré d’un nombre entier. Rép. : 45 17) Trouvez combien il y a de nombres entiers strictement positifs n’excédant pas 1000 et qui ne sont ni le carré ni le cube d’un nombre entier. Rép. : 962 U sa ge 18) Combien y a-t-il d’éléments dans l’union de quatre ensembles si chacun de ces ensembles a 100 éléments, chaque paire d’ensembles admet 50 éléments communs, chaque triplet d’ensembles admet 25 éléments communs et s’il y a 5 éléments communs aux quatre ensembles ? ⋆ 19) ⋆ 20) ⋆ 21) Rép. : 195 Trouvez combien de nombres premiers sont plus petits que 200 en utilisant le principe d’inclusion-exclusion. Rép. : 46 Combien y a-t-il d’entiers positifs plus petits que 1 000 et qui ne sont ni des carrés parfaits ni des puissances troisièmes ou supérieures d’un entier ? Rép. : 959 Combien y a-t-il de fonctions surjectives d’un ensemble à sept éléments dans un ensemble à cinq éléments ? Rép. : 16800 ⋆ 22) De combien de façons peut-on attribuer sept tâches différentes à quatre employés de sorte que chacun d’eux reçoive au moins une tâche et que la tâche la plus difficile soit attribuée au meilleur employé. Rép. : 2100 23) Combien de dérangements y a-t-il pour un ensemble à sept éléments ? Rép. : 1854 CHAPITRE 10. DÉNOMBREMENT. 319 ité 24) Le jeu de MASTERMIND consiste à trouver, par déductions successives, un code p1 p2 p3 p4 p5 formé de 5 pions choisis parmi des pions de 8 couleurs différentes. Une même couleur peut être utilisée autant de fois que désiré. Le joueur tentant de deviner le code émet des propositions et est informé du nombre de pions qui correspondent au code par leur position et leur couleur et du nombre des autres pions qui correspondent au code uniquement par leur couleur. a) Déterminez le nombre total de codes pouvant être formés. Rép. : B58 = 32 768 lim b) Déterminez le nombre de codes où chaque couleur n’apparaı̂t pas plus d’une fois. Rép. : A58 = 6 720 c) Déterminez le nombre de codes compatibles avec le fait que la proposition p1 = vert, p2 = bleu, p3 = rouge, p4 = rouge, p5 = jaune contienne un seul pion dont la couleur et la position correspondent au code et aucun pion de la bonne couleur mal placé. Rép. : 2 387 sa ge d) Déterminez le nombre de codes compatibles avec le fait que les cinq pions de la proposition p1 = vert, p2 = bleu, p3 = rouge, p4 = noir, p5 = jaune correspondent aux couleurs du code mais qu’aucun des pions ne se trouve à la bonne place. Rép. : d5 = 44 e) Déterminez le nombre de codes compatibles avec le fait que les cinq pions de la proposition p1 = vert, p2 = vert, p3 = rouge, p4 = noir, p5 = jaune U correspondent aux couleurs du code mais qu’aucun des pions ne se trouve à la bonne place. Suggestion. On considérera l’ensemble S0 des dérangements de 5 pions de couleurs différentes, l’ensemble S1 des dérangements de 5 pions tels que le pion p1 se retrouve en seconde position et l’ensemble S2 des dérangements de 5 pions tels que le pion p2 se retrouve en première position. Rép. : 12 ⋆ 25) Combien y a-t-il de solutions entières à l’équation x1 + x2 + x3 = 13 si x1 , x2 et x3 sont des entiers non négatifs plus petits que 6 ? Rép. : 6 CHAPITRE 10. DÉNOMBREMENT. ⋆ 26) 320 Trouvez le nombre de solutions entières à l’équation x1 + x2 + x3 + x4 = 17 où xi , i = 1, 2, 3, 4 sont des entiers non négatifs tels que x1 ≤ 3, x2 ≤ 4, x3 ≤ 5 et x4 ≤ 8. Rép. : 20 ité 27) On considère un algorithme récursif permettant de résoudre un problème de taille n en le fractionnant en deux sous-problèmes de taille n/2. Déterminez une borne supérieure du nombre d’opérations f (n) nécessaires pour résoudre un problème de taille n si on sait que f est une fonction croissante et que f (n) = 2 f (n/2) + 4, f (1) = 1 lim Rép. : f (n) = 5n − 4 si n = 2k , O(5n) sinon 28) Calculez exactement le nombre an d’itérations nécessaires pour effectuer une fouille binaire dans un tableau de longueur n sachant que, dans le pire des cas, U sa ge a1 = 1, an = 1 + a⌊n/2⌋ Rép. : an = ⌊log2 n⌋ + 1 ité Chapitre 11 lim Éléments de la théorie des graphes. 11.1 Introduction et définitions. La théorie des graphes constitue une branche relativement récente des mathématiques discrètes qui s’intéresse aux relations entre des objets. Elle possède de nombreuses applications dans les domaines aussi variés que la chimie, la génétique, la linguistique, l’architecture, les circuits électriques, la géographie. . . U sa ge E XEMPLE 11.1 Le réseau ferroviaire belge peut être schématisé par un ensemble de gares, représentées par des points, et par les voies de chemin de fer qui les joignent (Fig. 11.1). Anvers Ostende F E I Charleroi Bruxelles H D J Namur A G Liège B C Arlon F IG . 11.1 ⋄ 321 CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 322 E XEMPLE 11.2 Un réseau informatique peut être représenté par l’ensemble des ordinateurs situés aux noeuds de ce réseau et l’ensemble des câbles qui les relient (Fig. 11.2). g d e c f b j i k lim a ité h F IG . 11.2 Un graphe G est l’association d’un ensemble V(G) fini et non vide d’éléments appelés noeuds (en anglais vertices) et d’un ensemble fini E(G) de paires d’éléments de V(G) appelées arêtes (en anglais edges). Deux noeuds (pas forcément distincts) mis en relation l’un avec l’autre par une arête sont dits adjacents. Ils sont aussi incidents à cette arête. On dit aussi, de façon symétrique, que l’arête est incidente aux deux noeuds. Plus généralement, on appelle relation d’incidence toute relation entre noeuds et arêtes. On représente un graphe par l’ensemble de ses noeuds et de ses arêtes. Un noeud est représenté par un point. Une arête est matérialisée graphiquement par une ligne joignant les noeuds incidents à cette arête. sa ge U ⋄ E XEMPLE 11.3 Le graphe représenté à la figure 11.1 comporte 7 noeuds et 10 arêtes avec V(G) = Liège, Bruxelles, Arlon, Namur, Charleroi, Ostende, Anvers et E(G) = A, B,C, D, E, F, G, H, I, J ⋄ Dans la théorie des graphes, on s’intéresse souvent uniquement aux propriétés des graphes liées aux relations d’incidence et non pas aux noms des noeuds et des arêtes ni aux détails de la représentation des graphes. Pour exprimer le fait que deux graphes sont semblables, on introduit le concept d’isomorphisme. Deux graphes G et G’ sont dits isomorphes s’il existe une correspondance biunivoque entre les noeuds de G et de G’ telle que le nombre d’arêtes joignant deux noeuds quelconques de G est égal au nombre d’arêtes joignant les noeuds correspondants de G’. Les propriétés communes à deux graphes isomorphes sont appelées des invariants par rapport à l’isomorphisme. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 323 E XEMPLE 11.4 Les graphes présentés à la figure 11.3 sont isomorphes. f γ β δ a α c b ϕ ε lim F IG . 11.3 ité e d En effet, on établit la correspondance biunivoque a b c d e f f : l l l l l l α β γ δ ε ϕ entre les noeuds des deux graphes. On note que, à chaque paire de noeuds adjacents du premier graphe correspond une paire de noeuds adjacents du second graphe et inversement. ⋄ 11.1.1 Graphe simple. sa ge On dit qu’un graphe possède une arête multiple lorsque plusieurs arêtes sont incidentes aux mêmes noeuds. Une boucle est une arête incidente à un seul noeud. Un graphe simple est un graphe qui ne comporte ni boucle ni arête multiple. Dans ce cas, chaque arête peut être identifiée univoquement par la paire de noeuds auxquels elle est incidente (Dans cette section, nous considérons des graphes non orientés de sorte que l’ordre des noeuds est sans importance.). U E XEMPLE 11.5 Les graphes esquissés dans les exemples précédents sont tous des graphes simples. Le graphe de la figure 11.4 n’est pas simple puisqu’il comporte une boucle (en c) ainsi que des arêtes multiples (entre a et b et entre a et c). ⋄ a c d b F IG . 11.4 CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 324 11.1.2 Degré d’un noeud. ité L’ordre d’un graphe est le nombre de ses noeuds. Le degré d’un noeud est le nombre d’arêtes incidentes à ce noeud. En calculant le degré d’un noeud, on considère que toute boucle sur celui-ci contribue pour 2 unités au degré de ce noeud. Tout noeud de degré nul est un noeud isolé. Un noeud de degré un est un noeud terminal. lim L EMME DES POIGN ÉES DE MAINS . La somme des degrés de tous les noeuds d’un graphe est égale à deux fois le nombre d’arêtes. Ce résultat, dû à Euler, est connu en anglais sous le nom de handshaking lemma. On en déduit que, dans un graphe donné, le nombre de noeuds de degré impair est nécessairement pair. U sa ge Un graphe nul est un graphe dont tous les noeuds sont isolés. Le graphe nul de n noeuds est noté Nn . Un graphe régulier de degré r est un graphe dont tous les noeuds sont de degré r. Un graphe complet est un graphe simple dans lequel tous les noeuds pris deux à deux sont adjacents. Le graphe complet Kn comportant n noeuds est un graphe régulier de degré n − 1. Vu le lemme des poignées de mains, il possède n(n − 1)/2 arêtes. E XEMPLE 11.6 Le graphe complet K5 peut être représenté par F IG . 11.5 ⋄ Un graphe biparti est un graphe dont l’ensemble des noeuds V peut être divisé en deux sous-ensembles disjoints V1 et V2 tels qu’il n’existe aucune arête incidente à deux noeuds de V1 ou à deux noeuds de V2 . CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 325 11.1.3 Représentation matricielle. ité E XEMPLE 11.7 Les graphes isomorphes de l’exemple 11.4 sont bipartis. On peut en effet diviser l’ensemble des noeuds en deux sous-ensembles disjoints {a, b, c} ∪ {d, e, f } tels que toutes les arêtes du graphe joignent un noeud de {a, b, c} et un noeud de {d, e, f }. Ce graphe est noté K3,3 car il s’agit du graphe biparti comportant le plus grand nombre d’arêtes possibles parmi les graphes bipartis de deux fois trois noeuds. ⋄ lim Un graphe d’ordre n peut être représenté par une matrice A de dimensions n × n appelée matrice d’adjacence. Cette matrice est construite en numérotant tous les noeuds du graphe et en attribuant à l’élément ai j le nombre d’arêtes incidentes aux noeuds i et j. Dans cette construction, les boucles doivent être comptées deux fois de sorte que l’élément aii de la diagonale de la matrice d’incidence est égal à deux fois le nombre de boucles sur le noeud i. La matrice d’adjacence d’un graphe simple est peuplée uniquement de 0 et de 1. Sa diagonale ne comporte que des 0. La somme de tous les éléments de la matrice d’adjacence est égale à deux fois le nombre d’arêtes du graphe. U sa ge Si on numérote de 1 à m les arêtes du graphe, on peut introduire la matrice d’incidence M, de dimensions n × m dont l’élément mi j est égal à 1 si le noeud i est incident à l’arête j, est égal à 2 si l’arête j est une boucle sur le noeud i et est égal à 0 sinon. Chaque colonne de la matrice d’incidence représente donc une arête du graphe et la somme des éléments de cette colonne est égale à deux. Chaque ligne de la matrice est associée à un noeud et la somme des éléments de chaque ligne est égale au degré de ce noeud. Dans un graphe simple, les matrices d’incidence et d’adjacence sont liées par la relation MMT = A + D (11.1) où D = diag (deg(1), . . ., deg(n)) est la matrice des degrés des différents noeuds. En effet, T n (MM )i j = ∑ mik m jk (11.2) k=1 = nombre d’arêtes reliant i et j (11.3) puisque chaque ligne de M est associée à un noeud du graphe et que, pour i 6= j, la composante mik m jk du membre de gauche est égale à un si et seulement si les noeuds i et j sont reliés par l’arête k. Chaque élément diagonal de MMT est égal à la somme des éléments de la ligne correspondante et représente donc le nombre d’arêtes incidentes au noeud considéré, i.e. le degré du noeud. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 326 E XEMPLE 11.8 Soit le graphe simple e7 e3 e c e6 e2 e4 e5 e1 a b lim F IG . 11.6 ité d En listant les noeuds dans l’ordre alphabétique, il vient 0 1 1 1 1 1 0 1 0 0 A= 1 1 0 1 0 1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 U sa ge D’autre part, la matrice d’incidence est 1 1 M= 0 0 0 1 0 0 1 0 1 0 0 0 1 0 1 1 0 0 0 0 1 1 0 Il vient 1 0 1 0 1 0 1 1 0 1 0 0 0 0 0 1 1 1 0 0 0 1 0 0 0 1 0 0 1 1 0 0 0 1 0 0 1 1 0 0 0 1 0 0 1 1 1 MMT = 0 0 0 1 0 1 0 0 1 0 0 1 0 1 0 0 0 1 0 1 1 0 0 4 1 = 1 1 1 1 2 1 0 0 1 1 3 1 0 1 0 1 3 1 1 0 0 = A + diag (4, 2, 3, 3, 2) 1 2 0 0 1 1 0 ⋄ CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 327 11.2 Parcours dans un graphe. 11.2.1 Chaı̂ne et cycle. ité Soit un graphe G et soit v et w deux noeuds de G. – Une chaı̂ne ou parcours de v à w est une liste finie de noeuds et d’arêtes de G de la forme (v = v0 )e1 v1 e2 · · · vn−1 en (vn = w) lim où v0 , v1 , . . . , vn sont des noeuds de G et e1 , e2 , . . . , en sont des arêtes de G telles que ei est incidente à vi−1 et à vi pour i = 1, 2, . . ., n. Les noeuds v et w sont appelés les extrémités de la chaı̂ne. La longueur d’une chaı̂ne est égale au nombre d’arêtes de celle-ci. Un chaı̂ne est dite ouverte si v 6= w et fermée si v = w. Dans un graphe simple, une chaı̂ne est entièrement déterminée par la liste de ses noeuds. – Une chaı̂ne simple ou piste est une chaı̂ne dont les arêtes sont distinctes. – Un circuit est une chaı̂ne simple fermée, c’est-à-dire une chaı̂ne fermée (w = v0 )e1 v1 e2 · · · vn−1 en (vn = w) U sa ge dont toutes les arêtes sont distinctes. – Une chaı̂ne élémentaire ou chemin est une chaı̂ne dont tous les noeuds sont distincts sauf éventuellement les noeuds d’extrémité. Les arêtes d’un chemin sont nécessairement distinctes. – Un cycle est un chemin fermé (de longueur ≥ 1), c’est-à-dire une chaı̂ne fermée (w = v0 )e1 v1 e2 · · · vn−1 en (vn = w) dont les noeuds et les arêtes sont distincts à l’exception des noeuds d’extrémité. E XEMPLE 11.9 Soit le graphe d e3 e9 e2 f e e6 e7 e8 e4 a e5 e1 b F IG . 11.7 c CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 328 Remarquons la propriété suivante : ité La suite a e2 e e4 b e6 f désigne une chaı̂ne ouverte de longueur 3. Celle-ci peut aussi être identifiée univoquement par la suite des noeuds, soit a e b f . La chaı̂ne est simple puisqu’aucune arête n’est parcourue deux fois. C’est également un chemin puisque tous les noeuds sont distincts. La chaı̂ne b a d c b e est simple. Cependant, elle ne constitue par un chemin car le noeud b y apparaı̂t deux fois. La chaı̂ne fermée a e b f c b a forme un circuit. Il ne s’agit pas d’un cycle car le noeud b est présent deux fois dans cette liste. La chaı̂ne a e b a définit un cycle. ⋄ lim Si le degré de chaque noeud du graphe G est supérieur ou égal à deux, alors G contient un cycle. Si G possède des boucles ou des arêtes multiples, alors le résultat est immédiat. Penchons nous donc sur le cas où G est un graphe simple. Soit v0 un noeud quelconque de G. Construisons alors une chaı̂ne simple v0 → v1 → v2 → . . . vi → vi+1 → . . . en choisissant vi+1 adjacent à vi pour i ≥ 0. Ce choix est possible puisque le degré de chaque noeud est supérieur ou égal à 2. Puisque le graphe G contient un nombre fini de noeuds, on finira par choisir un noeud qui fait déjà partie de la chaı̂ne en construction. La partie de la chaı̂ne située entre les deux occurrences de ce noeud constitue un cycle. U sa ge 11.2.2 Connexité. Le concept de connexité d’un graphe est associé intuitivement à la possibilité d’aller d’un noeud à l’autre de ce graphe en suivant les arêtes. Plus précisément, on introduit les définitions suivantes : ' Un graphe G est dit connexe1 si et seulement si, pour toute paire de noeuds distincts v et w, il existe une chaı̂ne de v à w. Un graphe G est non connexe dès qu’il existe une paire de noeuds v et w qui ne peuvent être reliés par une chaı̂ne dans G. & $ % Remarquons que, s’il existe une chaı̂ne entre v et w, il existe aussi un chemin entre ces noeuds. Il suffit de supprimer les sections de la chaı̂ne comprises entre les occurrences répétées d’un même noeud. 1 Cette définition de la connexité est à rapprocher de celle donnée en analyse. Ainsi, on dit qu’un espace M est connexe par arc si, pour toute paire de points x et y de M, il existe une courbe joignant x à y, i.e. une fonction continue f : [a, b] → M telle que f (a) = x et f (b) = y. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 329 Un graphe connexe est donc “en une pièce”. Par contre, un graphe non connexe peut être décomposé de manière unique en sous-graphes connexes maximaux appelés les composantes connexes du graphe2 . $ ité ' Un graphe H est une composante connexe d’un graphe G si et seulement si – les noeuds et arêtes de H sont des sous-ensembles des noeuds et arêtes de G, i.e. H est un sous-graphe de G ; – H est connexe ; – aucun sous-graphe connexe de G ne contient H comme sous-graphe. lim & % U sa ge Si G est un graphe connexe, tout ensemble d’arêtes de G dont la suppression rend le graphe non connexe et dont aucun sous-ensemble (propre) ne possède cette propriété est appelé une coupure de G. Le degré de connexité d’un graphe connexe est le nombre d’arêtes de sa plus petite coupure. C’est donc le nombre minimum d’arêtes qu’il faut supprimer pour rendre le graphe non connexe. Une coupure constituée d’une seule arête est appelée un pont. Plus généralement, on dit aussi qu’une arête d’un graphe G, connexe ou non, est un pont lorsque sa suppression augmente d’une unité le nombre de composantes connexes de G. E XEMPLE 11.10 Le graphe ci-dessous est non connexe. Il possède deux composantes connexes dont les noeuds sont donnés par {a, e, d} et {b, c, f }. d e5 e3 e1 a f e e2 b e4 c F IG . 11.8 Les arêtes e1 et e5 sont des ponts puisque la suppression de l’une ou l’autre de ces arêtes augmente d’une unité le nombre de composantes connexes du graphe. ⋄ 2 En analyse, un espace métrique M est dit connexe lorsqu’on ne peut trouver des ouverts disjoints et non vides A et B tels que M = A ∪ B. Tout espace M connexe par arc est connexe. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 330 11.2.3 Dénombrement des chaı̂nes. ité Soit A la matrice d’adjacence d’un graphe G de n noeuds. Le nombre de chaı̂nes différentes de longueur r entre les noeuds vi et v j de G est donné par [Ar ]i j . lim Procédons par induction. – Le théorème est vrai pour r = 1, puisque, dans ce cas, le nombre de chaı̂nes de longueur 1 entre les noeuds vi et v j est égal au nombre d’arêtes entre ces deux noeuds et donc est égal à [A]i j par définition de la matrice d’adjacence. – Supposons que [Ar ]i j est égal au nombre de chaı̂nes de longueur r entre les noeuds vi et v j . Chaque chaı̂ne de longueur r + 1 entre vi et v j est constituée d’une chaı̂ne de longueur r depuis vi vers un noeud intermédiaire quelconque vk suivie d’une arête depuis vk vers v j . Le nombre de ces chaı̂nes est le produit du nombre de chaı̂nes de longueur r de vi à vk , soit [Ar ]ik , et du nombre d’arêtes joignant vk et v j , soit [A]k j . En considérant tous les noeuds intermédiaires possibles vk , le nombre total de chaı̂nes de longueur r + 1 entre vi et v j est donc donné par n ∑ [Ar ]ik [A]k j = [Ar+1]i j U sa ge k=1 La formule annoncée est donc valable pour tout r. E XEMPLE 11.11 Considérons le graphe de l’exemple 11.8. On a 0 1 1 1 1 0 1 1 1 1 0 1 0 1 0 01 0 1 0 01 A3 = 1 1 0 1 01 1 0 1 01 1 0 1 0 11 0 1 0 11 1 0 0 1 0 1 0 0 1 0 1 6 6 7 7 6 6 2 5 3 3 = 7 5 4 7 3 7 3 7 4 5 6 3 3 5 2 1 0 1 0 0 1 1 0 1 0 1 0 1 0 1 1 0 0 1 0 Le nombre de chaı̂nes de longueur 3 entre les noeuds a et c est donc égal à 7. Celles-ci sont en effet données par {abac, acac, adac, aeac, aedc, acdc, acbc} ⋄ CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 331 11.2.4 Connexité et graphe simple. n − 1 ≤ m ≤ n(n − 1)/2 ' ité Lorsqu’un graphe connexe simple de n noeuds possède un cycle, on peut toujours supprimer une arête sans modifier la connexité du graphe. Le nombre d’arêtes d’un graphe connexe simple est minimal lorsque ce graphe ne comporte pas de cycle et maximal lorsque le graphe est complet. Dès lors, le nombre m d’arêtes d’un graphe connexe simple de n noeuds vérifie l’inégalité (11.4) Ce résultat peut être étendu aux graphes simples non connexes. & lim Si G est un graphe simple de n noeuds et k composantes connexes, alors le nombre m d’arêtes de G vérifie n−k ≤ m ≤ (n − k)(n − k + 1) 2 $ (11.5) % U sa ge • La borne inférieure, m ≥ n − k peut être prouvée par induction en ajoutant une à une les m arêtes de G. – Dans le cas d’un graphe nul, i.e. m = 0, on a n = k et l’inégalité est vérifiée. – Supposons l’inégalité vérifiée pour m0 arêtes, alors que le graphe comporte k0 composantes connexes, soit n − k0 ≤ m0 Lorsque l’on ajoute une arête, le nombre de composantes connexes du graphe est inchangé ou diminue de une unité par réunion de deux composantes connexes. Dès lors n − k0 ≤ n − (k0 − 1) ≤ m0 + 1 et l’inégalité annoncée est vérifiée. • Pour prouver la borne supérieure, supposons que chaque composante connexe de G est un graphe complet. Si on peut trouver deux composantes connexes Ci et C j comportant respectivement ni et n j noeuds avec ni ≥ n j > 1 et si on remplace Ci et C j par des graphes complets de ni + 1 et n j − 1 noeuds, alors le nombre total de noeuds sera inchangé tandis que le nombre d’arêtes augmentera de (ni + 1)ni − ni (ni − 1) (n j − 1)n j − (n j − 1)(n j − 2) − = ni − n j + 1 2 2 Dès lors, on atteindra le maximum d’arêtes si G est constitué d’un graphe complet de n − k + 1 noeuds et de k − 1 noeuds isolés. Dans ce cas, le nombre d’arêtes est (n − k + 1)(n − k) 2 et la proposition est démontrée. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 332 L’énoncé précédent possède le corollaire intéressant suivant : ' $ Tout graphe simple de n noeuds et plus de ité (n − 1)(n − 2) 2 (11.6) & % arêtes est connexe. 11.2.5 Circuit eulérien. lim Un graphe connexe G est eulérien si G possède un circuit eulérien, c’est-à-dire un circuit qui contient toutes les arêtes de G. Un graphe connexe G est semi-eulérien si G possède une chaı̂ne simple eulérienne, c’est-à-dire une chaı̂ne simple qui contient toutes les arêtes de G. Selon les définitions générales d’un circuit et d’une chaı̂ne simple, un circuit eulérien est une chaı̂ne simple eulérienne fermée contenant une et une seule fois toutes les arêtes de G. Toute chaı̂ne simple eulérienne passe nécessairement par chacun des noeuds du graphe. U sa ge E XEMPLE 11.12 Dans la figure 11.9, A est eulérien, B est semi-eulérien et C n’est pas eulérien. A c d g f a C c d e b B g a g e b c d a b F IG . 11.9 En effet, dabecbgcdga f d constitue un circuit eulérien dans le graphe A. Un tel circuit ne peut être trouvé ni dans B ni dans C. Dans le graphe B, on peut néanmoins trouver une chaı̂ne simple eulérienne comme dabecbgdcga. ⋄ Les problèmes d’existence et de recherche de circuits eulériens apparaissent souvent dans les ouvrages de jeux mathématiques. Un problème typique concerne la possibilité de tracer un diagramme donné sans lever le crayon du papier et sans passer deux fois sur la même ligne. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 333 Un graphe connexe G est eulérien si et seulement si le degré de chaque noeud est pair. ité (Euler, 1736) U sa ge lim – La condition est nécessaire : Dans le cas d’un graphe comportant au moins un noeud, tout circuit eulérien passant par un noeud v “arrive” et “repart” de ce noeud soit par une boucle soit par des arêtes différentes. À chaque passage, il contribue ainsi pour un facteur 2 au degré de ce noeud. Comme le circuit eulérien passe par toutes les arêtes une et une seule fois, chaque noeud doit avoir un degré pair. – La condition est suffisante : La preuve procède par induction sur le nombre d’arêtes de G. L’énoncé est vrai dans le cas d’un graphe constitué d’un noeud. En effet, un circuit eulérien ne peut alors exister que s’il existe au moins une boucle sur ce noeud, c’està-dire si le degré de ce noeud est pair (et égal à deux fois le nombre de boucles sur le noeud). Si le degré de chaque noeud est pair, puisque G est connexe, ce degré doit être au moins égal à deux. D’après le résultat de la section 11.2.1, on en déduit que G possède au moins un circuit C. Si ce circuit est eulérien, la démonstration est finie. Sinon, on supprime de G les arêtes de C et on forme un nouveau graphe H (éventuellement non connexe) qui contient moins d’arêtes que G mais dont tous les noeuds ont toujours un degré pair. Par l’hypothèse inductive, chaque composante de H possède un circuit eulérien. Puisque G est connexe, chaque composante de H possède au moins un noeud en commun avec C. On forme alors un circuit eulérien de G en suivant les arêtes de C jusqu’à ce que l’on rencontre un noeud non isolé de H. À partir de celui-ci, on suit le circuit eulérien de cette composante de H puis on repart le long des arêtes de C. On parcourt ainsi successivement tous les circuits eulériens de toutes les composantes connexes de G rencontrées jusqu’à revenir au noeud initial. Pour les graphes semi-eulériens, on dispose du résultat suivant : Un graphe connexe est semi-eulérien si et seulement s’il possède exactement deux noeuds de degré impair (et tous les autres noeuds de degré pair). Dans un graphe semi-eulérien, les noeuds de degré impair forment les extrémités de la chaı̂ne simple eulérienne. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 334 ité E XEMPLE 11.13 On vérifie que le graphe A de l’exemple précédent ne contient que des noeuds de degré pair. Le graphe B contient deux noeuds de degré impair, i.e. a et d, et tous les autres noeuds sont de degré pair. En conséquence, les chaı̂nes simples eulériennes doivent avoir a et d comme extrémités. Le graphe C contient 4 noeuds de degré impair et n’est donc ni eulérien ni semi-eulérien. ⋄ E XEMPLE 11.14 L ES PONTS DE K ÖNIGSBURG . La ville de Königsburg en Prusse est bâtie en un point où deux branches de la rivière Pregel se rejoignent. La ville consiste en une ı̂le et des bancs de terre de part et d’autre des rives. Celles-ci sont reliées par 7 ponts comme illustré sur la figure 11.10. lim c c a a d d b b U sa ge F IG . 11.10 La question posée est de savoir s’il est possible aux habitants de cette ville de se promener, en partant et en arrivant au même endroit, en empruntant chacun des ponts une et une seule fois. Euler a montré que ceci est impossible. En effet, le plan de la ville peut être schématisé par le graphe dont les noeuds représentent les différentes rives et dont les arêtes correspondent aux ponts. Puisque les degrés de tous les noeuds sont impairs, il n’est pas possible de trouver un circuit eulérien et donc il n’est pas possible d’emprunter une et une seule fois chacun des ponts de la ville. ⋄ Au-delà des aspects ludiques, il est évident que ces concepts sont utiles dans le cadre de nombreux problèmes d’optimisation. Ainsi, un facteur devant faire sa tournée dans toutes les rues voudra passer une et une seule fois dans chacune de celles-ci et recherchera donc (sans le savoir) un circuit eulérien. De même, lors du câblage d’un réseau informatique dans un bâtiment, on devra desservir tous les utilisateurs en évitant de passer deux fois dans le même couloir. On construit un circuit eulérien en suivant les règles suivantes, données sans justification. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 335 ' ité A LGORITHME DE F LEURY. Si G est un graphe eulérien, on peut construire un circuit eulérien en démarrant en un noeud u quelconque de G et en parcourant les arêtes de G selon les règles suivantes : – à chaque étape k de la construction du graphe eulérien, construire le sousgraphe Hk obtenu à partir de G en effaçant les arêtes dèjà prises en compte dans le graphe eulérien en construction ainsi que les noeuds isolés éventuels résultant de ces suppressions ; – à chaque étape, n’emprunter de pont de Hk que lorsqu’il n’y a pas d’autre possibilité. $ lim & 11.2.6 Cycle hamiltonien. % Un graphe connexe G est hamiltonien si G possède un cycle hamiltonien, c’est-à-dire un cycle qui passe une et une seule fois par tous les noeuds de G (à l’exception du noeud de départ qui est identique au noeud d’arrivée). Il est semi-hamiltonien s’il contient un chemin passant une et une seule fois par tous les noeuds. Ce chemin est alors appelé une chaı̂ne hamiltonienne. U sa ge E XEMPLE 11.15 Dans la figure 11.11, A est hamiltonien, B est semi-hamiltonien et C n’est pas hamiltonien. A B C d c d c d c a b a b a b F IG . 11.11 En effet, A contient le cycle hamiltonien abcda tandis que B contient la chaı̂ne hamiltonienne abdc. Le graphe C ne contient aucune chaı̂ne hamiltonienne. ⋄ La recherche d’un cycle hamiltonien est liée au problème du voyageur de commerce, c’est-à-dire la recherche d’un chemin minimal passant par tous les noeuds d’un graphe. Contrairement au circuit eulérien, on ne connaı̂t pas de critère simple permettant de déterminer si un graphe est hamiltonien ou non. Les principaux résultats sont du type : “Si les degrés des noeuds de G sont suffisamment élevés, alors celui-ci est hamiltonien”. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 336 ' $ Si G est un graphe simple de n(≥ 3) noeuds et si deg(v) + deg(w) ≥ n ité (11.7) pour toute paire de noeuds non adjacents v et w, alors G est hamiltonien. & (Ore, 1960) % U sa ge lim Démontrons ce théorème par l’absurde. Si G n’est pas hamiltonien mais qu’il vérifie la condition sur le degré de ses noeuds, on peut toujours supposer que G est “presque hamiltonien” dans ce sens que l’ajout d’une arête quelconque ferait de G un graphe hamiltonien. Si ce n’était pas le cas, il suffirait d’ajouter suffisamment d’arêtes pour qu’il en soit ainsi ce qui, évidemment, ne violerait pas la condition sur le degré des noeuds. Si donc G est “presque hamiltonien”, alors il contient (Fig. 11.12) un chemin v1 v2 . . . vn passant par tous ses noeuds. Mais, puisque G n’est pas hamiltonien, les noeuds v1 et vn ne sont pas adjacents et deg(v1 ) + deg(vn ) ≥ n. Ceci signifie que v1 et vn sont adjacents, respectivement, à n1 noeuds et à n2 noeuds parmi les n − 2 noeuds intermédiaires v2 v3 . . . vn−2 vn−1 . Puisque n1 + n2 ≥ n > n − 2, il est impossible que les n1 noeuds adjacents à v1 et les n2 noeuds adjacents à vn soient distincts et correspondent, respectivement, aux n1 premiers noeuds et aux n2 derniers noeuds de v2 v3 . . . vn−2 vn−1 . On en déduit qu’il doit exister un noeud vi adjacent à v1 et tel que vi−1 est adjacent à vn . v1 vn v2 · · vi−1 vn−1 vi · · F IG . 11.12 Ceci constitue cependant une contradiction puisque, alors, v1 v2 · · · vi−1 vn vn−1 · · · vi+1 vi v1 constitue un cycle hamiltonien. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 337 ' $ Le corollaire de ce théorème est le suivant : Si G est un graphe simple de n(n ≥ 3) noeuds et si n 2 ∀i = 1, 2, . . ., n (11.8) ité deg(vi ) ≥ & % alors G est hamiltonien. lim Plus simplement, on peut observer qu’un graphe simple G de n noeuds est hamiltonien si et seulement si on peut construire un sous-graphe G′ de G composé de n noeuds et n arêtes et dont tous les noeuds sont de degré 2 ; le sous-graphe G′ construit de cette façon correspondant au circuit hamiltonien recherché. Si G comporte m > n arêtes et que la suppression des m − n arêtes en excès ne peut se faire sans respecter la condition sur le degré de chacun des noeuds, alors le graphe G n’est pas hamiltonien. E XEMPLE 11.16 Le graphe ci-dessous, comportant 5 noeuds et 6 arêtes, n’est pas hamiltonien. Si tel était le cas, on pourrait obtenir un circuit hamiltonien en supprimant une arête. Or la suppression de n’importe quelle arête fait apparaı̂tre un noeud de degré un. c e U sa ge a d b F IG . 11.13 ⋄ 11.2.7 Chemin de coût minimum. La résolution de nombreux problèmes pratiques passe par l’identification de chemins particuliers dans un graphe. Ainsi, dans les problèmes de design des réseaux de transport et de communication ou encore de planification des tâches, on s’intéresse souvent à la solution la plus rapide ou la moins coûteuse, c’est-à-dire, selon le cas, celle qui correspond à la distance minimale parcourue ou à l’accomplissement le plus rapide des différentes tâches d’un projet. Pour aborder ces problèmes, considérons un graphe G aux arêtes ei (i = 1, 2, . . ., m) duquel on associe un coût ci > 0. Un tel graphe est parfois appelé un graphe pondéré. Le problème du chemin de coût minimal consiste alors à trouver le chemin v0 ei1 v1 ei2 v2 · · · ein vn (11.9) CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 338 (où ik ∈ {1, 2, . . ., n} et ik 6= iℓ ∀k 6= ℓ) qui, parmi tous les chemins allant d’un noeud v0 à un noeud vn , correspond au coût n ∑ cik k=1 (11.10) ité C = ci1 + ci2 + · · · + cin = minimum. Pour que ce minimum existe, il faut évidemment que les extrémités du chemin recherché appartiennent à une même composante connexe de G. lim E XEMPLE 11.17 Supposons que le réseau aérien américain puisse être représenté par le graphe de la figure 11.14 où la valeur portée par chaque arête du graphe représente la distance entre les deux aéroports incidents à cette arête. Le problème de la recherche du chemin de coût minimum entre Boston et Los Angeles consiste à trouver le chemin du graphe qui correspond à la distance minimale à parcourir (ou le temps de vol ou encore le coût). ⋄ 2534 Chicago San Francisco 957 Denver New York 760 909 834 349 191 722 908 Boston 860 1855 2451 Atlanta Los Angeles 1090 595 U sa ge Miami F IG . 11.14 Ce problème peut être résolu au moyen de l’algorithme de Dijkstra qui permet d’obtenir la solution de façon efficace au moyen d’un nombre fini d’étapes. Manifestement, on peut considérer que G est un graphe simple puisque le chemin de coût minimal ne doit pas contenir de boucles et que, en présence d’arêtes multiples, seule celle correspondant au coût minimal sera utilisée. On procède par induction. À l’étape k, l’ensemble Sk représente les noeuds examinés par l’algorithme et on note Ck (w) le coût associé au chemin minimal de v0 à w contenant seulement des noeuds de Sk (à l’exception de w). i. À l’étape 0, on pose S0 = v0 et on étiquette v0 avec le coût C0 (v0 ) = 0. À chaque noeud v⋆ adjacent à v = 0, on associe un coût C0 (v⋆ ) égal au coût de l’arête incidente à v0 et à v⋆ . Enfin, on associe un coût infini à tous les noeuds qui ne sont pas adjacents à v0 (Ceci est évidemment une écriture qui reflète le fait qu’il n’existe pas de chemin entre un tel noeud et v0 et n’utilisant que des noeuds de S0 ). ii. À l’étape k, on identifie le noeud vk n’appartenant pas à Sk−1 et portant l’étiquette Ck−1 minimale. – On forme Sk = Sk−1 ∪ {vk }. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 339 ité – On met à jour l’étiquette Ck (w) de tous les noeuds w adjacents aux noeuds de Sk et qui ne sont pas dans Sk . Pour ce faire, on remarque que le chemin minimal de v0 à un tel noeud w est soit le chemin minimal de v0 à w qui contient seulement des éléments de Sk−1 soit le chemin minimal de v0 à un u ∈ Sk prolongé par l’arête joignant u et w : Ck (w) = min Ck−1 (w),Ck−1 (u) + c(u, w) À la fin de la procédure, tous les noeuds du graphe sont contenus dans Sn si le graphe initial est connexe. Chaque noeud w porte l’étiquette Ck (w) représentant le coût du chemin minimal de v0 à w. lim L’algorithme de Dijkstra permet de trouver le coût du chemin minimal entre deux noeuds dans un graphe connexe simple. U sa ge Démontrons la validité de l’algorithme par induction. Avant toute itération, S0 = {v0 } et le coût du chemin minimal de v0 à tout autre noeud est infini. Le coût du chemin minimal de v0 à lui-même est nul et l’algorithme est donc valable dans ce cas. À la k − 1-ème itération, considérons la double hypothèse inductive suivante : i. l’étiquette d’un noeud w ∈ Sk−1 est le coût du chemin minimal de v0 à w ; ii. l’étiquette d’un noeud w 6∈ Sk−1 est le coût du chemin minimal de v0 à w qui contient seulement des noeuds de Sk−1 (à l’exception de w). Au début de la k-ème itération, on note vk le noeud portant l’étiquette Ck−1 (vk ) minimale parmi tous les points n’appartenant pas à Sk−1 . Cette étiquette correspond au coût du chemin minimal de v0 à vk contenant uniquement des noeuds de Sk−1 (à l’exception de vk ). L’étiquette Ck−1 (vk ) correspond également au coût du chemin minimal de v0 à vk passant par n’importe quels noeuds du graphe. Autrement dit, le chemin minimal de v0 à vk est entièrement inclus dans Sk−1 à l’exception de la dernière arête de ce chemin. En effet, s’il n’en était pas ainsi, il existerait un chemin de v0 à vk de coût inférieur à Ck−1 (vk ) et qui contiendrait un noeud n’appartenant pas à Sk−1 . Soit u le premier noeud d’un tel chemin qui n’appartient pas à Sk−1 . On aurait donc Ck−1 (u) < Ck−1 (vk ) ce qui est en contradiction avec la méthode de choix du noeud vk . Soit w un noeud n’appartenant pas à Sk . Un chemin minimal de v0 à w contenant seulement des noeuds de Sk peut passer ou non par vk . S’il ne passe pas par vk , alors, selon l’hypothèse inductive, le coût est Ck−1 (w). S’il passe par vk , il doit être constitué du chemin de v0 à vk de coût minimum passant par les noeuds de Sk suivi de l’arête joignant vk à w. Dans ce cas, le coût est Ck−1 (vk ) + c(vk , w). La deuxième hypothèse inductive est donc vraie pour k également puisque Ck (w) = min{Ck−1 (w),Ck−1 (vk ) + c(vk , w)} Par induction, on en déduit que l’algorithme est valide. Remarquons que l’algorithme de Dijkstra ne fonctionne que si les coûts sont positifs. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 340 E XEMPLE 11.18 Soit le réseau routier représenté par le graphe pondéré de la figure 11.15 où chaque arête porte la longueur de la route correspondante. Quel est le plus court chemin pour aller de a à l ? d 2 3 4 6 c 2 5 5 5 h 9 6 1 9 2 j 2 l 3 lim 2 g 1 e 9 a 3 ité b i f k F IG . 11.15 U sa ge On commence par considérer S0 = {a} et par assigner le label 0 au noeud a. À partir de ce noeud, on peut atteindre les noeuds b, e et c en suivant des chemins dont les longueurs sont respectivement égales à 3, 9 et 2. La plus petite de ces longueurs correspond au point c auquel on assigne le label définitif 2. On a alors S1 = {a, c}. À partir des noeuds a et c, on peut atteindre les noeuds b, e et f dont les distances à a (en suivant exclusivement les arêtes joignant les noeuds de S1 sauf une) sont égales à 3, 9 et 11. On forme donc S2 = {a, c, b} et le label définitif de b est donc 3. Pour former S3 , on considère les noeuds d, e et f dont les distances à a sont respectivement égales à 5, 7 et 11. Il vient donc S3 = {a, c, b, d} et le label de d est 5. En continuant de la sorte, on attribue un label à chaque noeud du graphe et on identifie le chemin le plus court abeh f ikl dont la longueur est 17. b 3 2 3 d 5 4 a 0 e 7 9 6 2 2 c 9 10 f 3 g 8 1 2 j 13 5 5 h 9 1 2 5 3 6 12 i l 17 9 2 14 k F IG . 11.16 ⋄ CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 341 Problème du postier chinois. U sa ge lim ité La méthode utilisée pour la recherche du chemin de coût minimum peut être adaptée pour résoudre le problème du postier chinois, discuté par le mathématicien chinois MeiKu Kwan. Un postier désire distribuer le courrier en parcourant la distance minimale et revenant à son point de départ à la fin de sa tournée. Il doit évidemment passer dans chaque rue au moins une fois mais doit éviter, autant que possible, de repasser plusieurs fois dans la même rue. Pour résoudre ce problème, on représente les rues par un graphe et on associe à chaque arête du graphe la longueur de la rue correspondante. Manifestement, si le graphe est eulérien, il suffit de déterminer un circuit eulérien par la méthode de Fleury. Ce circuit eulérien constitue une solution du problème puisque la longueur totale est bornée inférieurement par la somme des longueurs de toutes les rues et que tout circuit eulérien correspond effectivement à cette borne inférieure. Dans le cas où le graphe n’est pas eulérien, le problème est beaucoup plus complexe. Remarquons simplement que, si on peut trouver une chaı̂ne simple eulérienne, alors il suffit de fermer celle-ci par le chemin de longueur minimale entre les deux extrémités de cette chaı̂ne. E XEMPLE 11.19 Recherchons le chemin de coût minimum dans le graphe pondéré b c 5 3 a 8 5 14 10 4 f d 9 6 e F IG . 11.17 Puisque les noeuds b et e sont les seuls noeuds de degré impair, on peut former une chaı̂ne simple eulérienne de b à e. Celle-ci parcourt toutes les arêtes exactement une fois. Pour revenir au point de départ, on identifie le chemin de longueur minimale entre e et b par l’algorithme de Dijkstra. La solution du problème est alors obtenue en combinant la chaı̂ne simple eulérienne ba f bc f ecde avec le chemin minimum e f ab. La longueur totale est donnée par 64 + 13 = 77. ⋄ CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 342 11.2.8 Graphe orienté. lim ité Dans de nombreux problèmes de planification de tâches, on doit réaliser une tâche en combinant plusieurs opérations de base dont certaines peuvent être réalisées en parallèles et d’autres doivent être réalisées l’une après l’autre. Dans ce cas, la suite des opérations est représentée par un graphe orienté, c’est-àdire un graphe dont les arêtes sont des couples ordonnés de noeuds. Les arêtes sont alors appelées des arcs et sont représentés par des flèches. La plupart des concepts introduits pour un graphe non orienté sont applicables à des graphes orientés. On doit cependant tenir compte de l’orientation des arcs dans la définition des chemins. L’algorithme de Dijkstra pour la recherche d’un chemin de coût minimal peut être appliqué aux graphes orientés. E XEMPLE 11.20 A SSEMBLAGE D ’ UNE VOITURE . L’assemblage d’une voiture peut être séparé en plusieurs opérations élémentaires : a) construction du chassis, b) mise en place du moteur, c) installation des freins, des roues et des pneus, d) installation du tableau de bord et des sièges, e) installation électrique, U sa ge f) installation du réservoir et de la pompe à essence, g) installation des commandes de frein, h) mise en place des éléments de carrosserie, i) finitions. d. : 6 heures b. : 6 heures f. : 1 heure e. : 5 heures a. : 7 heures h. : 2 heures c. : 3 heures g. : 1 heure F IG . 11.18 i. : 5 heures CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 343 19 d. : 6 heures ité Le schéma Fig. 11.18 indique le graphe des différentes opérations et le temps nécessaire à leur réalisation. Certaines opérations devant être effectuées avant d’autres, le graphe correspondant est un graphe orienté : les arêtes ne peuvent être parcourue que dans la direction indiquée par la flèche. Pour déterminer le temps minimum pour assembler une voiture, il convient de parcourir le graphe de gauche à droite en notant, pour chaque tâche, le temps minimum requis pour son accomplissement à partir du début de l’assemblage. Ainsi, il faut 7 heures pour accomplir la tâche a. Il faut 7 + 6 = 13 heures avant que la tâche b ne soit terminée alors qu’il ne faut que 10 heures pour accomplir la tâche c. lim 20 f. : 1 heure 13 b. : 6 heures 7 a. : 7 heures 16 e. : 5 heures 21 h. : 2 heures 14 g. : 1 heure U sa ge 10 c. : 3 heures 26 i. : 5 heures F IG . 11.19 En continuant de la sorte, l’analyse montre que, dans le meilleur des cas, 26 heures sont nécessaires pour effectuer le montage complet. Cet optimum correspond à la somme des temps requis pour effectuer les tâches a,b,d,h et i. Tout retard dans l’accomplissement d’une de ces tâches pénalisera le temps d’exécution total de l’assemblage. Pour cette raison, le chemin a b d h i est appelé un chemin critique. ⋄ 11.3 Arbre. 11.3.1 Définition. Un arbre est un graphe connexe qui ne possède pas de cycle. Une forêt est un graphe constitué de l’union d’un ou plusieurs arbres. Les arbres sont utilisés couramment pour représenter les différentes possibilités d’un problème de dénombrement, pour représenter les différentes étapes d’une procédure de décision ou pour représenter les relations hiérarchiques ou familiales. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 344 E XEMPLE 11.21 L’organisation hiérarchique au sein d’une entreprise informatique peut être représentée par un arbre tel que Vice-président Finances Directeur Comptabilité Directeur Gestion matérielle Directeur Relation clientèle Directeur Marketting Directeur Ventes Directeur Système intégré de gestion Vice-président Services lim Vice-président Marketing Directeur Matériel Directeur Logiciel Directeur Recherches Vice-président R & D. ité Président F IG . 11.20 U sa ge ⋄ E XEMPLE 11.22 Arbre de décision pour trier trois éléments a, b et c distincts : a:b a<b a>b a:c a>c a>b>c b>c a<c b<c a>c>b b<c a:c c>a>b b:c b>c b:c a>c b>a>c c>b>a a<c b>c>a F IG . 11.21 ⋄ CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 345 La notion d’arbre est introduite pour représenter un graphe dont la structure n’est pas redondante tout en permettant la circulation complète de l’information entre tous ses noeuds. Ce résultat est précisé par l’énoncé suivant : ité Un graphe est un arbre si et seulement si chaque paire de noeuds est reliée par un chemin unique. lim La condition est nécessaire. En effet, si T est un arbre, alors T est un graphe connexe sans cycle. Quels que soient les noeuds x et y de T, il existe donc un chemin entre x et y puisque T est connexe. Ce chemin est unique car s’il y en avait un autre alors la combinaison de ces deux chemins formerait un cycle, ce qui contredirait le fait que T est un arbre. La condition est suffisante. Si chaque paire de noeuds de T est reliée par un chemin unique, alors T est connexe. De plus, T ne peut avoir de cycle car sinon, on pourrait trouver (au moins) deux noeuds x et y appartenant à un même cycle et donc reliés par deux chemins distincts. Ceci est en contradiction avec l’hypothèse et conduit donc à conclure à l’absence de cycle dans T. U sa ge 11.3.2 Arborescence. Dans de nombreuses applications des arbres, on identifie un noeud r particulier appelé la racine de l’arbre. Puisqu’il existe un chemin unique de la racine à chacun des noeuds du graphe, on peut orienter chaque arête de l’arbre en s’éloignant de la racine. Le graphe orienté qui en résulte est appelé une arborescence3 . La longueur du chemin unique de la racine r à un noeud v est appelée la profondeur de v. La hauteur de l’arbre est la plus grande profondeur de ses noeuds. Les noeuds de degré un sont appelés les feuilles de l’arbre. Un chemin orienté d’un noeud quelconque vers une feuille est une branche de l’arbre. Si v est un noeud différent de la racine, le père de v est le noeud unique u tel qu’il existe une arête orientée de u à v. Lorsque u est le père de v, v est le fils de u. Les noeuds ayant le même père s’appellent des frères. Tous les noeuds qui ont des fils s’appellent des noeuds internes. Dans un arbre de décision tel celui de la figure 11.21, chacun des noeuds internes correspond à un test et chaque feuille correspond à une décision ou une conclusion. Une arborescence est appelée un arbre m-aire si chaque noeud interne n’a pas plus de m fils. L’arbre m-aire est complet si chaque noeud interne possède exactement m fils. Un arbre m-aire avec m = 2 est un arbre binaire. 3 Remarquons que les choix de racines différentes produisent des arborescences différentes. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 346 11.3.3 Propriétés des arbres. ité Un arbre à n noeuds possède n − 1 arêtes. lim La proposition est vérifiée pour n = 1. Si on suppose que la proposition est vraie pour un arbre de n noeuds, alors démontrons qu’il en est de même pour un arbre T de n + 1 noeuds. Puisque T ne comporte pas de cycle, la suppression d’une arête quelconque de T engendre une forêt de deux arbres composés respectivement de n1 et n2 noeuds avec n1 + n2 = n + 1. Selon l’hypothèse d’induction, le nombre total d’arêtes de cette forêt est donc (n1 − 1) + (n2 − 1) = (n1 + n2 ) − 2 = (n + 1) − 2 = n − 1. En comptant l’arête supprimée, le nombre total d’arêtes de T est donc n. Un arbre m-aire complet de k noeuds internes comporte n = m k + 1 noeuds. Chaque noeud, sauf la racine, est le fils d’un noeud interne. Chacun des noeuds internes ayant m fils, il y a bien m k + 1 noeuds au total. U sa ge On en déduit immédiatement que ' $ & % Un arbre m-aire complet ayant n−1 (m − 1)n + 1 i. n noeuds possède noeuds internes et ℓ = feuilles, m m ii. k noeuds internes possède n = m k + 1 noeuds et ℓ = (m − 1)k + 1 feuilles, m ℓ−1 ℓ−1 iii. ℓ feuilles possède n = noeuds et noeuds internes. m−1 m−1 Le nombre de feuilles ℓ d’un arbre m-aire de hauteur h vérifie ℓ ≤ mh La démonstration est aisée par induction. (11.11) CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 347 ité E XEMPLE 11.23 Le nombre Op de comparaisons nécessaires pour trier une liste de n éléments par une algorithme binaire peut être évalué en utilisant (11.11). Le tri de n éléments donne lieu à n! résultats possibles. Si on représente le tri par un arbre binaire semblable à celui de la figure 11.21, celui-ci doit comporter n! feuilles et donc être d’une hauteur h telle que n! ≤ 2h Chacun des noeuds interne représentant une comparaison, la hauteur est égale au nombre de comparaisons. Il vient Op = h ≥ log2 n! En tenant compte de la relation (pouvant être démontrée par induction) lim log n! ≥ n(log n − 1) le nombre de comparaisons peut encore être majoré selon 1 Op ≥ n log2 n − ln 2 ' Soit un graphe T de n noeuds. Les six énoncés suivants sont équivalents : i. T est un arbre ; $ ⋄ ii. T ne contient aucun cycle et possède n − 1 arêtes ; U sa ge iii. T est connexe et possède n − 1 arêtes ; iv. T est connexe et chaque arête de T est un pont ; v. Il existe un et un seul chemin entre deux noeuds quelconques de T ; vi. T est sans cycle mais l’ajout d’une arête quelconque crée un et un seul cycle. & i. % Dans le cas où n = 1, tous les énoncés sont évidents. Si n 6= 1, démontrons les implications successives i. ⇒ ii. ⇒ iii. ⇒ iv. ⇒ v. ⇒ vi.⇒ Cette implication est démontrée plus haut. Si T était non connexe, alors chaque composante connexe de T formerait un graphe connexe sans cycle, i.e. un arbre. En supposant que T n’a que deux composantes connexes, on aurait, dans ces deux composantes connexes, respectivement, n1 et n2 noeuds avec n1 + n2 = n et donc n1 − 1 et n2 − 1 arêtes. Au total, T aurait donc n1 − 1 + n2 − 1 = n − 2 arêtes. Ce résultat est en contradiction avec les hypothèses. Si on supposait que T possède plus de deux composantes connexes, le décompte serait moins favorable encore. Dès lors, on en conclut que T est connexe. i. ⇒ ii. ii. ⇒ iii. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. Si on enlève une arête quelconque d’un graphe connexe de n − 1 arêtes, alors on obtient un graphe qui est non connexe vu que n − 1 est le nombre minimum d’arêtes assurant la connexité d’un graphe de n noeuds. Puisque T est connexe, il existe au moins un chemin entre chaque paire de noeuds de T. Si une paire particulière de noeuds était reliée par deux chemins, ceux-ci formeraient un cycle. Chaque arête de ce cycle ne pourrait alors être un pont. iv. ⇒ v. v. ⇒ vi. Si on supposait T non connexe, alors, on pourrait ajouter une arête entre deux noeuds situés dans des composantes connexes différentes de T sans engendrer de cycle. T est donc connexe et sans cycle : c’est un arbre. sa ge vi. ⇒ i. Si T contenait un cycle, alors toute paire de noeuds de ce cycle serait reliée par au moins deux chemins, en contradiction avec l’hypothèse. Si on ajoute une arête entre deux noeuds quelconques v et w, alors, ces deux noeuds étant déjà reliés par le chemin vu1 u2 · · · uk w de T, on forme le cycle vu1 u2 · · · uk wv. Ce cycle est unique puisque, s’il existait un autre cycle vw1 w2 · · · wk wv, alors vu1 u2 · · · uk wwk · · · w2 w1 v constituerait une chaı̂ne fermés dans T dont on pourrait extraire un cycle. lim ité iii. ⇒ iv. U 348 E XEMPLE 11.24 H YDROCARBURES SATUR ÉS . Les molécules organiques les plus simples sont constituées uniquement d’atomes de carbone et d’hydrogène. En particulier, les hydrocarbures saturés ont tous une formule chimique du type Cn H2n+2 . Une telle molécule peut être représentée par un graphe dans lequel chaque atome de carbone est représenté par un noeud de degré 4 et chaque atome d’hydrogène par un noeud de degré 1 (Fig. 11.22). H H H H H H H C C C C H H H H H C F IG . 11.22 H C H H C H HH H C H CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 349 Dans le graphe d’une molécule Cn H2n+2 , il y a 4n + (2n + 2) = 3n + 1 arêtes 2 ité 3n + 2 noeuds et lim Il s’agit donc nécessairement d’un arbre puisque le graphe d’une telle molécule est connexe et comporte une arête de moins que le nombre de noeuds. Remarquons cependant que plusieurs molécules différentes peuvent correspondre à une même formule du type Cn H2n+2 . Les graphes des molécules de butane et d’iso-butane, toutes deux correspondant à la formule C4 H10 , sont présentés à la figure 11.22. Bien que ces deux molécules possèdent la même formule, elles possèdent des propriétés différentes. ⋄ 11.4 Arbre de recouvrement. U sa ge Étant donné un graphe connexe G, on peut essayer de simplifier ce graphe en supprimant des arêtes tout en gardant un arbre connexe. Si on choisit un cycle de G et que l’on supprime une arête de ce cycle, le graphe qui en résulte est toujours connexe. En répétant cette procédure jusqu’à ce qu’il n’y ait plus de cycle, on aboutit finalement à un graphe connexe sans cycle, c’est-à-dire à un arbre qui relie les n noeuds de G mais ne comporte que n − 1 arêtes parmi celles-de G. Cet arbre est appelé un arbre de recouvrement ou arbre sous-tendant de G. Plus précisément, un arbre de recouvrement de G est un sous-graphe de G qui contient tous les noeuds de G et qui forme un arbre. E XEMPLE 11.25 Soit le graphe G d e a c b F IG . 11.23 Le sous-graphe indiqué en trait épais constitue un arbre de recouvrement de G. ⋄ E XEMPLE 11.26 Une compagnie aérienne désirant rationaliser son offre de services désire supprimer des vols sans diminuer le nombre de destinations. Le problème consiste donc en la suppression des arêtes du graphe G représentant les voies aériennes tout en gardant tous les noeuds (aéroports) et un chemin entre chaque paire de noeuds. La solution est un arbre de recouvrement de G tel celui indiqué en trait gras. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 350 Boston Chicago Denver San Francisco New York ité Atlanta Los Angeles Miami lim F IG . 11.24 ⋄ D’après la procédure de construction exposée ci-dessus, il est clair que chaque graphe connexe possède au moins un arbre de recouvrement et que tous les arbres de recouvrement d’un graphe G possède le même nombre d’arêtes. On montre également qu’un graphe est connexe si seulement s’il possède un arbre de recouvrement. 11.4.1 Nombre d’arbres de recouvrement. U sa ge Nous citons ici quelques résultats dont la démonstration sort du cadre du cours mais qui sont intéressants pour dénombrer les arbres de recouvrement d’un graphe donné. T H ÉOR ÈME DE C AYLAY On peut former nn−2 arbres différents de n noeuds. E XEMPLE 11.27 Voici quatre arbres de 4 noeuds. 1 2 3 4 4 3 2 1 1 2 4 4 3 F IG . 11.25 2 1 3 Si on ne tient pas compte des noms des noeuds, ce qui est le cas si tous les noeuds représentent des objets indiscernables, alors les trois premiers arbres sont identiques. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 351 ité Si on tient compte des labels portés par les noeuds, alors le deuxième arbre est identique au premier. La numérotation inverse des noeuds de l’arbre ne produit pas un nouvel arbre. Par contre, le troisième arbre est différent du premier et du deuxième (il suffit de regarder l’ordre du noeud 3). Dès lors, il y a 4!/2 = 12 arbres différents de ce type. D’autre part, il y a 4 façons différentes de numéroter les noeuds du graphe de droite (puisqu’il y a quatre façons différentes de numéroter le noeud central) qui conduisent à 4 arbres différents. Au total le nombre d’arbres de 4 noeuds est donc égal à 16 = 44−2 conformément au théorème de Caylay. ⋄ ' lim On déduit du théorème de Caylay que le nombre d’arbres de recouvrement différents d’un graphe Kn de n noeuds est égal à nn−2 . En effet, chaque arbre de n noeuds est un arbre de recouvrement du même graphe complet Kn . Inversement, chaque arbre de recouvrement de Kn donne lieu à un arbre de n noeuds. T H ÉOR ÈME DE LA MATRICE - ARBRE Soit G un graphe connexe simple de n noeuds {v1 , v2 , . . . , vn } et soit M′ la matrice n × n telle que m′ii = deg(vi ), m′i j = −1 si vi et v j sont adjacents et m′i j = 0 sinon. Le nombre d’arbres de recouvrement de G est égal au cofacteur de n’importe quel élément de M′ . & U sa ge 11.4.2 Arbres de recouvrement minimum. $ % Parmi tous les arbres de recouvrement d’un graphe G donné, il est souvent utile de choisir celui qui correspond à un minimum d’une certaine expression du coût au sens de la section 11.2.7 si on associe un coût à chacune des arêtes de G. Un arbre de recouvrement minimum d’un graphe connexe G est un arbre de recouvrement dont la somme des coûts est minimale. E XEMPLE 11.28 Dans l’exemple 11.26, la rationalisation de l’offre de services peut-être réalisée en minimisant la distance totale entre les différents aéroports desservis par la compagnie. ⋄ L’identification de l’arbre de recouvrement minimal peut être réalisée par la méthode suivante : ' A LGORITHME DE K RUSKAL. Soit G un graphe connexe de n noeuds. La construction suivante produit un arbre de recouvrement minimum de G : $ i. soit e1 une arête de G de coût minimum ; ii. on définit e2 , e3 , . . . , en−1 en choisissant, à chaque étape, l’arête de coût minimum qui ne forme pas de cycle avec les arêtes ei précédentes. L’arbre de recouvrement est le sous-graphe T de G dont les arêtes sont e1 e2 , e3 , . . . , en−1 & % CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 352 ité On trouvera la démonstration de la validité de cet algorithme dans les références. En particulier, on montre qu’il est possible, à chaque étape, de trouver une arête dont l’ajout ne produit pas de cycle, que toutes les arêtes choisies forment finalement un graphe connexe et que l’arbre qui en résulte est bien de coût minimum. 11.4.3 Ensemble fondamental de cycles et ensemble fondamental de coupures. # " lim Si T est un arbre de recouvrement du graphe connexe G, alors, – toute coupure de G possède une arête en commun avec T ; – tout cycle de G possède une arête en commun avec le complément de T, c’est-à-dire avec le graphe obtenu en supprimant toutes les arêtes de T. ! – La suppression des arêtes d’une coupure C∗ de G sépare G en deux sous-graphes H et K. Puisque T est un arbre de recouvrement, T doit contenir une arête reliant un noeud de H à un noeud de K. Cette arête est donc commune à C∗ et à T. – S’il existait un cycle C de G qui ne possède aucune arête commune avec le complément de T, alors C serait entièrement contenu dans T. Dans ce cas, T ne pourrait être un arbre. Il ne peut donc pas exister de tel cycle C. U sa ge Le concept d’ensemble fondamental de cycles d’un graphe G est étroitement lié à celui d’arbre de recouvrement. Étant donné un arbre de recouvrement T de G, on peut obtenir un cycle unique en ajoutant à T une arête quelconque de G n’appartenant pas à T. L’ensemble de tous les cycles formés de cette façon constitue l’ensemble fondamental de cycles associé à T. Tout ensemble de cycles formé de cette façon à partir d’un arbre quelconque est appelé un ensemble fondamental de cycles de G. De la même façon, on peut définir un ensemble fondamental de coupures associé à T. Chaque arête de T est un pont. Sa suppression divise donc T en deux parties connexes et sépare les noeuds de G en deux ensembles disjoints V1 et V2 . L’ensemble de toutes les arêtes de G reliant un noeud de V1 à un noeud de V2 est une coupure de G. L’ensemble des toutes les coupures définies de cette façon en considérant successivement la suppression des différentes arêtes de T forme l’ensemble fondamental des coupures associées à T. E XEMPLE 11.29 L OIS DE K IRCHHOFF . Soit le circuit électrique représenté à la figure 11.26 par un graphe orienté de 4 noeuds et de 6 arêtes. Afin de déterminer les courants et différences de potentiel, on dispose des lois de Kirchhoff qui expriment que – la somme des courants traversant une surface quelconque séparant le graphe en deux composantes connexes est nulle (loi des coupures) ; – la somme des différences de potentiel aux bornes des différentes arêtes formant un cycle est nulle (loi des mailles). CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 353 La question qui se pose est alors de déterminer le nombre d’équations et de choisir les équations à écrire, par application des lois de Kirchoff, pour décrire complètement le système. L’orientation choisie définit une direction de référence pour chacune des arêtes. 2 1 3 6 b 4 ité a c lim 5 d F IG . 11.26 À chaque arête, on associe le courant ik et la différence de potentiel uk . Ces deux inconnues étant reliées entre elles par la loi d’Ohm, le problème contient donc 6 inconnues. Loi des coupures. U sa ge En examinant le graphe du circuit considéré, on identifie 7 coupures différentes : C1 = {1, 2, 6} C5 = {2, 3, 4, 6} C3 = {2, 3, 5} C7 = {1, 2, 4, 5} C2 = {1, 3, 4} C4 = {4, 5, 6} C6 = {1, 3, 5, 6} Les 7 relations obtenues par application de la première loi de Kirchhoff à chacune de ces coupures peuvent être mise sous forme matricielle en construisant la matrice Q, dite matrice des coupures, comme suit. Le nombre de lignes de la matrice Q est égal au nombre de coupures considérées ; chaque ligne est associée à une coupure. De même, le nombre de colonnes de Q est égal au nombre d’arêtes du graphe ; chaque arête correspond à une seule colonne. Dans l’exemple considéré, la matrice des coupure Q est donc une matrice (7 × 6). Pour déterminer les éléments qi j de Q, on matérialise d’abord chaque coupure par une surface (ou une courbe) fermée et on oriente arbitrairement ces différentes surfaces. On pose ensuite qi j = +1 si l’arête j traverse la surface orientée relative à Ci dans le sens de référence choisi pour cette coupure, qi j = −1 si l’arête j traverse la surface correspondant à Ci dans le sens opposé à la référence choisie et qi j = 0 si l’arête j ne fait pas partie de la coupure Ci . Ainsi, matérialisant, par exemple, la coupure C3 = {2, 3, 5} par la surface C 3 de normale n, on voit que l’arête 2 traverse la surface dans le sens opposé à la normale choisie. On aura donc q32 = −1. Par contre, les arêtes 3 et 5 coupent C 3 dans le même sens que n. On aura donc q33 = q35 = +1. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 354 a C3 2 1 n 4 c 5 lim d F IG . 11.27 ité 3 6 b Procédant de la sorte pour les différentes coupures, il vient 1 1 0 0 0 1 −1 0 −1 1 0 0 0 −1 1 0 1 0 Q= 0 0 0 −1 −1 −1 0 1 −1 1 0 1 1 0 1 0 1 1 −1 −1 0 1 1 0 U sa ge Au moyen de cette matrice, on peut écrire les 7 expressions de la première loi de Kirchhoff sous la forme matricielle 1 1 0 0 0 1 i1 0 −1 0 −1 1 0 0 i2 0 0 −1 1 0 1 0 i3 0 0 0 0 −1 −1 −1 i4 = 0 0 1 −1 1 0 1 i5 0 1 0 1 0 1 1 i6 0 −1 −1 0 1 1 0 On vérifie que ρ (Q) = 3 de sorte que seules 3 équations sont indépendantes. En général, pour un graphe de n noeuds, on compte n − 1 relations indépendantes. Pour générer un ensemble de trois équations indépendantes, on peut se baser sur un arbre de recouvrement T du circuit. Soit T = {1, 3, 5}. Celui-ci permet de former un ensemble fondamental de coupures : {1, 2, 6}, {2, 3, 4, 6}, {4, 5, 6} = {C1 ,C5 ,C4 } On a donc i1 i2 1 1 0 0 0 1 0 0 0 0 −1 −1 −1i3 = 0 i4 0 1 −1 1 0 1 0 i5 i6 CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 355 Ces trois équations sont bien linéairement indépendantes puisque chaque coupure apporte une nouvelle arête qui n’apparaı̂t pas dans les autres coupures. ité Loi des mailles. lim Dans le graphe orienté du circuit étudié, on peut identifier 7 cycles différents (Fig. 11.28) et donc écrire 7 expressions différentes de la seconde loi de Kirchhoff. Sous forme matricielle, on a 1 −1 −1 0 0 0 0 u1 0 0 1 1 −1 0 0 1 0 u2 0 1 0 −1 u3 0 0 1 0 0 1 −1 = 0 1 −1 0 1 −1 0 u4 0 1 0 −1 0 1 −1 u5 0 u6 0 1 1 1 0 −1 0 U sa ge Ces équations sont linéairement dépendantes. F IG . 11.28 Pour en extraire les équations indépendantes en nombre maximal, on considère à nouveau l’arbre de recouvrement T = {1, 3, 5} et on forme l’ensemble fondamental de cycles associé à T. Celui-ci est un sous-ensemble de l’ensemble des cycles utilisés pour construire les secondes lois de Kirchhoff, soit {1, 2, 3}, {3, 4, 5}, {1, 3, 5, 6}} CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 356 En retenant uniquement ces trois cycles, il vient en effet ité u1 u2 1 −1 −1 0 0 0 0 u3 0 0 0 1 1 −1 0 = u4 1 0 −1 0 1 −1 0 u5 u6 lim Ici encore, l’indépendance des équations retenues résulte du fait que chacun des cycles comporte une arête originale qui n’est contenue dans aucun des autres cycles appartenant à l’ensemble fondamental. Au total, on obtient donc 3 + 3 = 6 équations indépendantes qui, complétées par l’expression de la loi d’Ohm pour les 6 arêtes du circuit électrique, permettent de déterminer toutes les inconnues du problème. ⋄ Le calcul du nombre de cycles et de coupures fondamentaux effectué dans l’exemple précédent peut être aisément généralisé. En effet, tous les arbres de recouvrement d’un graphe connexe de n noeuds possèdent n − 1 arêtes. Dès lors, Si un graphe connexe possède n noeuds et m arêtes, – tout ensemble fondamental de coupures comportera n − 1 éléments, – tout ensemble fondamental de cycles comportera m − (n − 1) = m − n + 1 éléments. U sa ge 11.5 Graphe planaire. Un graphe planaire est un graphe qui peut être tracé dans un plan sans que ses arêtes ne se coupent (sauf évidemment à un noeud). Une telle représentation est dite plane. E XEMPLE 11.30 Le graphe complet K4 est planaire. Parmi les trois représentations de la figure 11.29, la première n’est pas plane au contraire des deux autres. d c d c d c a b a b a b F IG . 11.29 ⋄ CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 357 E XEMPLE 11.31 Le graphe biparti K3,3 n’est pas planaire. e d c f a d ité e c f a b lim b F IG . 11.30 En effet, K3,3 contient le cycle abcde f a dont la représentation plane est équivalente à un hexagone. Si on trace l’arête f c à l’intérieur de l’hexagone abcde f a, alors l’arête be doit être tracée à l’extérieur de celui-ci. Ceci étant fait, il est impossible de joindre les noeuds a et d sans couper une arête déjà tracée. ⋄ E XEMPLE 11.32 Le graphe complet K5 n’est pas planaire. U sa ge d e c a b d e c a b F IG . 11.31 En traçant progressivement les arêtes de K5 dans une représentation plane, on ne peut tracer les arêtes ac et eb sans couper l’une des arêtes déjà dessinée. ⋄ À l’évidence, tout sous-graphe d’un graphe planaire est planaire. Inversement, tout graphe possédant un sous-graphe qui n’est pas planaire n’est lui-même pas planaire. Un même graphe peut être tracé de différentes façons. Cependant, grâce au théorème suivant (dont la démonstration sort du cadre de ce cours), il n’est pas nécessaire d’envisager toutes les différentes représentations d’un graphe pour déterminer s’il est planaire ou non. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 358 ité T H ÉOR ÈME DE K URATOWSKI Un graphe est planaire si et seulement s’il ne contient aucun sous-graphe homéomorphe à K3,3 ou à K5 . lim Dans cet énoncé, deux graphes sont dits homéomorphes s’ils peuvent être obtenus à partir d’un même graphe en insérant de nouveaux noeuds de degré deux au milieu d’une ou plusieurs arêtes. Tous les arbres sont des graphes planaires puisqu’ils ne contiennent pas de cycle à l’inverse de K3,3 et de K5 . 11.5.1 Formule d’Euler. Un graphe planaire connexe divise le plan en régions, y compris une région ouverte “à l’extérieur” du graphe. Chaque région est définie par un chaı̂ne fermée dont la longueur est appelée le degré de la région.4 E XEMPLE 11.33 Le graphe planaire représenté à la figure 11.32 divise le plan en 7 régions distinctes. r5 U sa ge r7 r4 r6 r1 r2 r3 F IG . 11.32 ⋄ Euler a démontré que toutes les représentations graphiques planes d’un même graphe planaire divisent le plan en un même nombre de régions. Cette propriété découle de l’existence d’une relation entre le nombre de régions, le nombre de noeuds et le nombre d’arêtes du graphe. 4 Dans certains cas, la définition de la limite de la région demande de passer plusieurs fois par la même arête qui intervient donc deux fois dans le calcul du degré de cette région. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 359 ' & r = m−n+2 ité F ORMULE D ’E ULER . Soit G un graphe simple planaire connexe comportant n noeuds et m arêtes. Le nombre r de régions dans une représentation planaire de G est donné par $ (11.12) % lim La preuve est établie par induction sur le nombre d’arêtes. Si m = 0, alors n = 1 (puisque le graphe est connexe) et le graphe ne possède que la région extérieure. On a bien r = m − n + 2 = 0 − 1 + 2 = 1. Supposons le théorème vérifié pour m − 1 arêtes et examinons le cas d’un graphe G comportant m arêtes. Si G est un arbre, alors m = n − 1 et r = 1 de sorte que r = (n − 1) − n + 2 = 1. Si G n’est pas un arbre, considérons une arête e appartenant à un cycle de G. En supprimant e de G, on obtient un graphe Ge planaire connexe de n noeuds, m − 1 arêtes et (m − 1) − n + 2 = m − n + 1 régions (selon l’hypothèse d’induction). En rajoutant e à Ge , on divise une région de Ge en deux et donc on ajoute une région. Le nombre total des régions de G est donc donné par m − n + 2 comme annoncé. E XEMPLE 11.34 Le graphe planaire de la figure 11.32 possède 9 noeuds et 14 arêtes. Conformément à (11.12), il possède sa ge U r = 14 − 9 + 2 = 7 régions. ⋄ La formule d’Euler relie également le nombre de faces r, d’arêtes m et de sommets n de tout polyèdre convexe, i.e. de tout volume dont les faces sont constituées des polygones plans et dont la totalité du volume est située d’un même côté de chaque face. E XEMPLE 11.35 En utilisant la formule d’Euler, on peut montrer qu’il est impossible d’approcher un volume sphérique en n’utilisant que des faces hexagonales. Ainsi, par exemple, le dôme sphérique de la Géode à Paris, bien que constitué principalement de faces hexagonales comporte également quelques faces pentagonales. Montrons plus précisément que tout polyèdre à faces triangulaires a toujours au moins douze points particuliers où arrivent cinq arêtes. Notons S5 et S6 les nombres de sommets où arrivent, respectivement, cinq et six arêtes. Par la formule d’Euler, on a r = m − S5 − S6 + 2 Puisque toutes les faces sont des triangles et que chaque arête détermine deux faces, on a 3r=2m CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 360 D’autre part, chaque arête donne naissance à deux sommets. Dès lors, En éliminant r en fonction de m dans ces équations, il vient 1 S5 + S6 = m + 2 3 et donc S5 = 12 ité 2m = 5S5 + 6S6 11.6 Coloriage. lim Ainsi, une sphère pavée par des hexagones aura toujours au moins 12 pentagones. Ce résultat peut être observé sur les ballons de football généralement constitués de 30 hexagones et 12 pentagones. ⋄ On appelle nombre chromatique d’un graphe le nombre minimal de couleurs nécessaires pour colorier les noeuds du graphe de telle façon que deux noeuds adjacents ne portent pas la même couleur. Les graphes non planaires peuvent avoir un nombre chromatique arbitrairement grand. Cependant, ainsi que l’on montré Appel et Haken en 1976, les graphes planaires sont beaucoup moins “gourmands” : U sa ge T H ÉOR ÈME DES QUATRES COULEURS : Le nombre chromatique d’un graphe planaire n’est jamais supérieur à 4. Le problème du coloriage des cartes géographiques est étroitement lié au concept de nombre chromatique. En effet, lorsque l’on colorie une carte, on souhaite que les différents pays de cette carte portent des couleurs différentes. Toute carte (Fig. 11.33) peut être représentée5 par un graphe planaire G. À partir de ce graphe, on peut construire le graphe dual G′ (Fig. 11.33) obtenu en associant un noeud de G′ à chaque région de G et en reliant les noeuds de G′ qui correspondent à des régions adjacentes de G′ , i.e. à des pays ayant une frontière commune. (Deux pays qui ne se touchent que par un point unique ne seront pas considérés comme adjacents.) Étant donné la procédure utilisée pour construire le graphe dual, il est clair que toute carte géographique possède un graphe dual planaire. 5 On appelle d’ailleurs carte toute représentation planaire d’un graphe. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. C 361 ité D B A lim F IG . 11.33 Le problème du coloriage des régions d’une carte revient donc au problème du coloriage des noeuds du graphe dual. Le concept de coloriage possède des applications dans les problèmes de planification. U sa ge E XEMPLE 11.36 Le graphe de la figure 11.33 est planaire et ne peut être coloré avec moins de 4 couleurs. ⋄ E XEMPLE 11.37 Comment une université peut-elle programmer les examens de façon à ce qu’aucun étudiant ne doive passer deux examens en même temps ? Ce problème peut être abordé en représentant les différents cours par des noeuds et en plaçant des arêtes entre ces noeuds à chaque fois qu’un ou plusieurs étudiants doivent présenter les deux examens. ⋄ E XEMPLE 11.38 Les canaux de télévision nord-américains sont attribués de telle façon que deux stations distantes de moins de 240 km ne peuvent utiliser la même fréquence. Pour attribuer les canaux, on attribue un noeud à chacune des stations et on relie entre-elles les stations qui sont distantes de moins de 240 km. L’attribution des canaux est alors équivalente au coloriage du graphe. ⋄ CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 362 11.7 Exercices. ité Remarque : les exercices marqués d’une étoile ne seront abordés qu’en seconde lecture. 1) Tracez un graphe possédant les propriétés données ou expliquer pourquoi un tel graphe ne peut exister : a) Graphe de 5 noeuds de degrés 1, 2, 3, 3 et 5. b) Graphe de 4 noeuds de degrés 1, 2, 3 et 3. lim c) Graphe simple de 4 noeuds de degrés 1, 2, 3 et 4. d) Graphe simple de 6 arêtes et dont tous les noeuds sont de degré 3. Rép. : b) impossible car la somme des degrés des noeuds est impaire c) impossible sans boucle ni arête multiple 2) Dans un groupe de 15 personnes, est-il possible que chacune ait exactement 3 amis (en supposant que la relation d’amitié est symétrique) ? Rép. : Non car chaque noeud devrait être de degré 3, donc la somme des degrés des noeuds serait 45 qui est impair. U sa ge 3) Soit un graphe dont les 5 noeuds sont de degrés 0, 2, 2, 3 et 9. Combien d’arêtes comporte ce graphe ? Rép. : 2+2+3+9 =8 2 4) Soit un graphe dont les 5 noeuds sont de degrés 1, 1, 4, 4 et 6. Combien d’arêtes comporte ce graphe ? Rép. : 1+1+4+4+6 =8 2 5) Dessinez tous les graphes simples non isomorphes de 3 noeuds. 6) Dessinez tous les graphes simples non isomorphes de 4 noeuds. 7) Dans le graphe ci-dessous, déterminez si les chaı̂nes suivantes sont des chaı̂nes simples et si elles forment (ou contiennent) des cycles ou des circuits. a) v0 e1 v1 e10 v5 e9 v2 e2 v1 b) v4 e7 v2 e9 v5 e10 v1 e3 v2 e9 v5 c) v2 d) v5 v2 v3 v4 v5 e) e5 e8 e10 e3 CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. v1 v3 e2 e1 e4 e10 ité e3 v0 363 e5 v2 e9 e7 e8 v5 v4 lim Rép. : a) Chaı̂ne simple contenant le cycle v1 e10 v5 e9 v2 e2 v1 b) Chaı̂ne non simple car elle contient deux fois l’arête e9 . Elle contient le cycle v2 e9 v5 e10 v1 e3 v2 c) v2 est un noeud et ne constitue pas une chaı̂ne à lui seul. d) Cette notation est un raccourci pour désigner la chaı̂ne v5 e9 v2 e4 v3 e5 v4 e8 v5 puisqu’il n’y a jamais qu’une arête possible entre deux noeuds successifs cités. Cette chaı̂ne est un cycle. e) Cette notation est un raccourci pour désigner la chaı̂ne simple v3 e5 v4 e8 v5 e10 v1 e3 v2 U sa ge 8) Dans le graphe ci-dessous, déterminez si les chaı̂nes suivantes sont des chaı̂nes simples et si elles forment (ou contiennent) des cycles ou des circuits. a) v1 e2 v2 e3 v3 e4 v4 e5 v2 e2 v1 e1 v0 b) v2 v3 v4 v5 v2 c) v4 v2 v3 v4 v5 v2 v4 d) v0 v5 v2 v3 v4 v2 v1 e) v5 v4 v2 v1 v1 v3 e1 e9 v0 e8 v5 e3 e2 e4 v2 e5 e7 e6 v4 Rép. : a) Chaı̂ne non simple car elle contient deux fois l’arête e2 . Elle contient le cycle v2 e3 v3 e4 v4 e5 v2 . b) Cycle (notation abrégée). c) Chaı̂ne non simple car elle contient deux fois l’arête e5 (entre v2 et v4 ). Elle contient les cycles v4 v2 v3 v4 v4 v5 v2 v4 v2 v3 v4 v5 v2 . d) Chaı̂ne simple contenant le cycle v2 v3 v4 v2 . e) Chaı̂ne simple. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 364 9) Déterminez si les graphes suivants possèdent un circuit eulérien et identifier si possible un tel circuit. a e h c c d a b c d e f c f d sa ge e U b g lim a f e a d b i ité b Rép. : a)Oui : car chaque noeud est de degré pair abebcdeda en allant de b à e par une des deux arêtes incidentes à b et e et en revenant de e à b par l’autre, puis en procédant de même entre d et e. b) Oui : car chaque noeud est de degré pair h f igdcg f cb f ebaeh. c) Non : graphe non connexe. d) Non : certains noeuds sont de degré impair. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 365 10) Déterminez si les graphes suivants possèdent un cycle hamiltonien. c b e h d c a g f e f lim a b ité g d b a e c d f g U sa ge Rép. : a) Oui e f hgdacbe (pas unique). b) Pas de cycle hamiltonien. Seulement chaı̂ne hamiltonienne f edcgab (pas unique). c) Pas de cycle hamiltonien. Seulement chaı̂ne hamiltonienne cbae f gd (pas unique). 11) Montrez qu’un graphe biparti comportant un nombre impair de noeuds ne peut être Hamiltonien. Justifiez. – Montrez que le graphe suivant n’est pas Hamiltonien – Montrez qu’il est impossible à un cavalier de passer une et une seule fois par toutes les cases d’un échiquier de n × n cases où n est impair et de revenir à son point de départ. Remarque. Un cavalier se déplace toujours en formant un “L” de 2 × 3 cases. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. Trouvez le chemin minimal entre a et z dans le graphe ci-dessous b 5 d 2 2 2 a 3 5 z e lim c 1 4 ité ⋆ 12) 366 Rép. : abedz 13) On considère le graphe suivant : a U sa ge d e b c – Déterminez l’ordre du graphe, le degré de chacun des noeuds et le degré de connexité. Rép. : ordre = 5; degrés = {4, 2, 4, 3, 3}; degré de connexité = 2 – Le graphe est-il Eulérien ou semi-Eulérien ? Dans l’affirmative, décrivez un circuit Eulérien ou une chaı̂ne simple Eulérienne. Rép. : semi-eulérien :eabcedcad – Le graphe est-il hamiltonien ou semi-hamiltonien ? Dans l’affirmative, décrivez un cycle hamiltonien ou une chaı̂ne simple hamiltonienne. Rép. : Hamiltonien :abcdea – Déterminez un ensemble fondamental de cycles et un ensemble fondamental de coupures associés à un même arbre de recouvrement. – En général, dans quel cas l’ensemble fondamental de cycles et l’ensemble fondamental de coupures contiennent-ils le même nombre d’éléments ? Rép. : m = 2(n − 1) pour m arêtes et n noeuds CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. 367 14) Déterminez tous les arbres de recouvrement des graphes suivants ainsi que les ensembles fondamentaux de cycles et de coupures associés : a a c c lim d b ité b d Rép. : Premier graphe Vu le théorème de la matrice-arbre (p. 351) avec 2 −1 0 −1 −1 3 −1 −1 , M′ = 0 −1 1 0 −1 −1 0 2 il y a 3 −1 −1 −1 1 0 = 3 arbres de recouvrement −1 0 2 {z } | cofacteur de m′11 U sa ge Vu que le nombre de noeuds vaut 4, il y a, pour chaque arbre, 4 − 1 = 3 arêtes, 3 coupures fondamentales et 1 cycle fondamental. Deuxième graphe Vu le théorème de la matrice-arbre, il y a 8 arbres de recouvrement. Pour chaque arbre : 3 arêtes, 3 coupures fondamentales et 2 cycles fondamentaux. ⋆ 15) Déterminez un arbre de recouvrement minimum pour le graphe suivant b 1 a 9 7 c 4 8 10 e 2 g 6 3 d 5 f Rép. : abcde f g. CHAPITRE 11. ÉLÉMENTS DE LA THÉORIE DES GRAPHES. b a d c ité 16) On considère le graphe suivant 368 f lim e g – Déterminez le nombre de noeuds et d’arêtes. Rép. : n = 7 noeuds, m = 12 arêtes – Le graphe est-il simple ? complet ? biparti ? connexe ? eulérien ? semi-eulérien ? hamiltonien ? un arbre ? Rép. : Graphe simple, connexe, hamiltonien U sa ge – Déterminez un arbre de recouvrement, un ensemble fondamental de coupure et un ensemble fondamental de cycles. Combien d’éléments comportent ces deux ensembles. Rép. : 6 coupures, 6 cycles – Le graphe est-il planaire ? Si oui, déterminez une représentation plane. Rép. : Graphe planaire – Combien de régions comporte le graphe ? Vérifiez la formule d’Euler. Rép. : 7 – Déterminez le nombre chromatique du graphe. Rép. : 3 ité Chapitre 12 12.1 Relations. lim Structures ordonnées et algébriques. Une fonction d’un ensemble A vers un ensemble B fait correspondre un et un seul élément de B à chaque élément de A. Si on veut décrire une situation dans laquelle on associe un ou plusieurs éléments de B à certains éléments de A, on ne peut utiliser le concept de fonction mais on dit qu’il existe une relation de l’ensemble A vers l’ensemble B (qui peut être identique à A). Plus précisément, on introduit la définition suivante : U sa ge Une relation (binaire) R d’un ensemble A vers un ensemble B est un sousensemble de A × B. Si (a, b) ∈ R, on écrit généralement a R b. Inversement, si (a, b) 6∈ R, on le note a /R b. Le domaine d’une relation R de A vers B est l’ensemble des éléments a ∈ A appartenant à un couple (a, b) ∈ R. L’image (ou le champ) de R est l’ensemble des éléments b ∈ B de ces couples. Dans le cas particulier d’une relation R de A vers A, on dit que R est une relation dans A. Une relation n-aire entre les ensembles A1 , A2 , . . . , An est un sous-ensemble de A1 × A2 × · · · × An E XEMPLE 12.1 Disons que deux pays sont adjacents s’ils ont une frontière commune. Dans ce cas, la relation R “est adjacent à” est une relation entre les pays de la planète telle que, par exemple, Italie R Suisse, Italie R France et Canada /R Mexique ⋄ E XEMPLE 12.2 En attribuant une cote à chacun des étudiants du cours de mathématiques discrètes ayant présenté l’examen, on définit une relation de l’ensemble des étudiants de première candidature avec l’ensemble {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10} des cotes exprimées sur 10. 369 CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 370 ité Il ne s’agit pas d’une fonction mais d’une relation si tous les étudiants n’ont pas présenté l’examen. Graphiquement, on peut représenter cette relation à partir du diagramme de Venn des deux ensembles (Fig. 12.1). Étudiants Cotes g f q 10 k e p 9 j d o 8 i h 5 4 3 lim l c n 7 2 b m 6 1 a 0 F IG . 12.1 Le dessin obtenu est le diagramme sagital de la relation. ⋄ U sa ge E XEMPLE 12.3 La relation R définie par l’équation x2 + y2 = 25, soit R = {(x, y) ∈ R × R | x2 + y2 = 25} est représentée graphiquement (Fig. 12.2) par le cercle de centre 0 et de rayon égal à 5 si on associe respectivement l’axe des abscisses et celui des ordonnées aux deux composantes du couple (x, y). Cette représentation est qualifiée de cartésienne. y x2 + y2 = 25 x F IG . 12.2 La relation R n’est pas assimilable à une fonction puisque, pour chaque valeur de x ∈]5, 5[, il existe deux valeurs de y telles que xRy. ⋄ CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 371 Alors que l’on ne peut pas toujours définir la fonction réciproque d’une fonction particulière, à toute relation R de A vers B correspond une relation inverse R−1 de B vers A. Celle-ci consiste en l’ensemble des couples ordonnés inverses de la relation R : Soit b R−1 a ⇔ a R b (12.1) ité R−1 = {(b, a)|(a, b) ∈ R} (12.2) 12.1.1 Propriétés des relations sur un ensemble. – symétrique lorsque – antisymétrique lorsque lim Une relation R sur un ensemble A est – réflexive lorsque ∀a ∈ A, aRa (12.3) ∀a, b ∈ A, aRb ⇔ bRa (12.4) ∀a, b ∈ A, aRb, bRa ⇒ a=b (12.5) aRc (12.6) – transitive lorsque U sa ge ∀a, b, c ∈ A, aRb, bRc ⇒ Remarquons que les concepts de symétrie et d’antisymétrie d’une relation ne sont pas incompatibles. En effet, une relation peut être à la fois symétrique et antisymétrique. Il en est ainsi de la relation d’égalité = entre deux éléments d’un ensemble. E XEMPLE 12.4 Considérons la relation ⊂ d’inclusion d’ensembles dans une collection quelconque d’ensembles. On a • A ⊂ A quel que soit A : ⊂ est donc réflexive ; • A ⊂ B n’implique pas B ⊂ A : ⊂ n’est pas symétrique ; • Si A ⊂ B et B ⊂ A, alors A = B : ⊂ est anti-symétrique ; • A ⊂ B et B ⊂ C, alors A ⊂ C : ⊂ est transitive. ⋄ 12.1.2 Relation et graphe orienté. Toute relation entre deux ensembles finis A et B peut être représentée par un graphe orienté. Pour tout a ∈ A et b ∈ B, il suffit de tracer un arc de a vers b. La représentation d’une relation réflexive comporte des boucles en chacun des noeuds du graphe orienté. Lorsque la relation est symétrique, à chaque arc de a vers b correspond une arête de b à a. CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 372 12.1.3 Relation d’équivalence. ité Certaines relations R peuvent être utilisées pour identifier et regrouper des éléments “semblables” d’un ensemble. E XEMPLE 12.5 La classification du règne animal en espèces est définie par la relation “est de la même espèce que”. ⋄ E XEMPLE 12.6 La relation R contenant les couples d’étudiants (x, y) ayant obtenu la même cote à l’examen de mathématiques discrètes permet d’identifier des groupes homogènes d’étudiants. ⋄ lim Une relation R sur un ensemble A est appelée une relation d’équivalence si elle est réflexive, symétrique et transitive. La relation d’égalité = entre deux éléments d’un ensemble quelconque satisfait manifestement à cette définition. Ce n’est pas la seule. E XEMPLE 12.7 La relation de congruence modulo m entre deux entiers a et b, soit R = (a, b)|a ≡ b(mod m) U sa ge est une relation d’équivalence. En effet, elle est – réflexive : a ≡ a(mod m) puisque a − a = 0 est divisible par m ; – symétrique : si a ≡ b(mod m), alors (a − b) est divisible par m. Il en est alors de même de (b − a) d’où b ≡ a(mod m). – transitive : si a ≡ b(mod m) et b ≡ c(mod m), (a − b) et (b − c) sont tous deux divisibles par m. Il en va alors de même pour a − c = (a − b) + (b − c) et donc a ≡ c(mod m). ⋄ E XEMPLE 12.8 Définissons la relation R dans l’ensemble des chaı̂nes de lettres de l’alphabet de manière telle que aRb si et seulement si le nombre de lettres composant a est égal au nombre de lettres composant b. Cette relation est une relation d’équivalence puisqu’elle est réflexive, symétrique et transitive. ⋄ E XEMPLE 12.9 Soit S l’ensemble des circuits logiques à n entrées et une sortie et soit R la relation binaire sur S telle que, pour tout couple de circuits logiques (C1 ,C2 ), C1 R C2 si et seulement si C1 et C2 possèdent les mêmes tables de vérité. Cette relation R est réflexive, symétrique et transitive. C’est donc une relation d’équivalence. ⋄ Deux éléments reliés par le biais d’une relation d’équivalence sont dits équivalents. La relation d’équivalence étant réflexive, chaque élément est équivalent à lui-même dans une relation d’équivalence. De plus, si a et b sont équivalents, et si b et c sont équivalents, alors, par transitivité, a est équivalent à c. Ceci montre qu’une relation d’équivalence définit une ou plusieurs collections d’objets semblables par certains aspects. Cette constatation est précisée dans la définition suivante : CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. ' E XEMPLE 12.10 Soit lim L’ensemble des classes d’équivalence de A, noté A\R est appelé ensemble quotient de A par R : A/R = {[a]|a ∈ A} (12.8) & $ ité Étant donné une relation d’équivalence R sur un ensemble A, on appelle classe d’équivalence de a ∈ A l’ensemble des éléments de A liés à a par la relation R, ce qui se note [a] = {x ∈ A|a R x} (12.7) 373 % A = 0, 1, 2, 3, 4 et la relation binaire (Fig. 12.3) R = (0, 0), (0, 4), (1, 1), (1, 3), (2, 2), (4, 0), (3, 3), (3, 1), (4, 4) 3 4 U sa ge 2 0 1 F IG . 12.3 On vérifie aisément que R est une relation d’équivalence dans A puisqu’elle est réflexive ((0, 0), (1, 1), (2, 2), (3, 3), (4, 4) ∈ R), symétrique ((0, 4), (4, 0) ∈ R, (1, 3), (3, 1) ∈ R) et transitive. Les classes d’équivalence des différents éléments de A sont données par [0] = 0, 4 , [1] = 1, 3 , [2] = 2 , [3] = 1, 3 , [4] = 0, 4 Puisque [0] = [4] et [1] = [3], on compte donc trois classes d’équivalences distinctes et A/R = 0, 4 , 1, 3 , 2 ⋄ Comme le suggère l’exemple précédent, les différentes classes d’équivalences induites par une relation d’équivalence sont disjointes ou confondues : CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. ' 374 $ Si R est une relation d’équivalence sur A, alors ii. [a] = [b] ⇔ a R b iii. [a] 6= [b] ⇒ [a] ∩ [b] = φ & ité i. a ∈ [a] ∀a ∈ A % i. La première propriété est évidente puisque la relation d’équivalence R est réflexive et donc a R a ∀a ∈ A, soit a ∈ [a]. lim ii. La seconde propriété est démontrée en deux étapes. Prouvons d’abord que [a] ⊂ [b] et [b] ⊂ [a] si a R b. En effet, si a R b, alors ∀x ∈ [a] aRx xRa ⇒ ⇒ x R b ⇒ x ∈ [b] aRb aRb en utilisant successivement la symétrie et la transitivité de R. Dès lors [a] ⊂ [b]. En procédant de la même façon, on montre que [b] ⊂ [a] et donc [a] = [b]. Inversement, si [a] = [b], alors il existe x ∈ [a] ∩ [b], c’est-à-dire tel que aRx aRx ⇒ ⇒aRb bRx xRb U sa ge par la symétrie et la transitivité de R. iii. La troisième propriété est une conséquence de la précédente puisque, si [a]∩[b] 6= φ, alors a R b et donc [a] = [b]. Dès lors, deux classes d’équivalence ne peuvent être que disjointes ou égales. On déduit de cet énoncé que Si R est une relation d’équivalence dans A, alors l’ensemble quotient A/R constitue une partition de A En effet, l’union des classes d’équivalence de A est A lui-même puisque chaque élément a ∈ A se trouve dans sa propre classe d’équivalence. De plus, comme les classes d’équivalence de deux éléments a et b sont soit égales, soit disjointes, on a [a] ∩ [b] = φ si [a] 6= [b]. Les classes d’équivalence forment donc une partition de A. CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 375 E XEMPLE 12.11 Soit R la relation de congruence modulo 3 sur Z ; Pour un entier a quelconque, [a] = {x ∈ Z|a R x} = {x ∈ Z|a ≡ x (mod 3)} ité m R n ⇔ m ≡ n (mod 3) = {x ∈ Z|(∃k ∈ Z) x − a = 3k} Dès lors, lim = {x ∈ Z|x = a + 3k, k ∈ Z} [0] = {x ∈ Z|x = 3k, k ∈ Z} = {· · · , −9, −6, −3, 0, 3, 6, 9, · · · } [1] = {x ∈ Z|x = 3k + 1, k ∈ Z} = {· · · , −8, −5, −2, 1, 4, 7, 10, · · · } [2] = {x ∈ Z|x = 3k + 2, k ∈ Z} = {· · · , −7, −4, −1, 2, 5, 8, 11, · · · } Puisque 3 R 0, il vient [3] = [0] et, plus généralement, U sa ge [0] = [3] = [−3] = [6] = [−6] = · · · [1] = [−2] = [4] = [−5] = [7] = · · · [2] = [−1] = [5] = [−4] = [−7] = · · · Les classes d’équivalence sont donc disjointes et chaque entier se trouve exactement dans une et une seule de ces classes d’équivalence. Autrement dit, conformément à l’énoncé précédent, les classes d’équivalence forment une partition de l’ensemble des entiers. L’ensemble quotient de Z par R est donc Z/R = {[0], [1], [2]} ⋄ E XEMPLE 12.12 Soit l’ensemble S des circuits logiques à 2 entrées et une sortie et la relation d’équivalence R qui associe les circuits possédant la même table de vérité. Déterminons le nombre de classes d’équivalence. Pour un circuit C1 quelconque, la classe d’équivalence de C1 est l’ensemble des circuits possédant la même table de vérité. Puisque celle-ci possède exactement 4 lignes, correspondant aux 4 combinaisons possibles de 2 entrées, et que chaque combinaison peut donner lieu à deux sorties différentes, il y a exactement 24 = 16 tables de vérités différentes. Il y a donc également 16 classes d’équivalence. Chacune de ces classes d’équivalence comporte un nombre infini de circuits différents. ⋄ CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 376 lim ité Nous venons de montrer que toute relation d’équivalence sur un ensemble A définit une partition de cet ensemble. Inversement, toute partition de A induit une relation d’équivalence sur cet ensemble. En effet, il suffit de considérer la relation R qui réunit les couples (x, y) d’éléments appartenant à un même sous-ensemble de la partition de A. Manifestement, cette relation est réflexive (chaque élément appartient au même sousensemble que lui-même), symétrique (si x appartient au même sous-ensemble de la partition que y, alors y appartient au même sous-ensemble de la partition que x) et transitive (si x et y appartiennent au même sous-ensemble de la partition et que y et z appartiennent aussi à ce même sous-ensemble, alors x et z appartiennent au même sousensemble de la partition). 12.1.4 Relation d’ordre partiel. On utilise souvent les relations pour ordonner certains ou tous les éléments d’un ensemble. E XEMPLE 12.13 On ordonne les entiers au moyen de la relation “inférieur ou égal à”, notée ≤. On écrit donc a ≤ b pour signifier que a précède b dans l’ordre (croissant) de Z. ⋄ E XEMPLE 12.14 On peut classer les mots de la langue française d’après leur longueur. Soit la relation R telle que a R b si le mot a comporte au plus autant de lettres que le mot b. La relation permet donc de classer les mots selon leur longueur. ⋄ U sa ge # Une relation d’ordre partiel R sur un ensemble A est une relation réflexive, antisymétrique et transitive. Un ensemble A muni d’une relation d’ordre partiel R est dit partiellement ordonné par la relation R. " ! La relation ≤ est bien une relation d’ordre sur Z puisque – elle est réflexive : x ≤ x – elle est antisymétrique : x ≤ y, y ≤ x ⇒ x = y – elle est transitive : x ≤ y, y ≤ z ⇒ x ≤ z Par similitude avec ≤, les relations d’ordre partiel sont généralement représentées par le symbole1 4. La notation a 4 b se lit “a précède b”. On utilise aussi les notations suivantes : • a ≺ b signifie que a 4 b et a 6= b, soit “a précède strictement b” ; • b < a signifie a 4 b, soit “b succède à a” ; • b ≻ a signifie a ≺ b, soit “b succède strictement à a” ; De même, on introduit encore les notations 64, 6≺, 6≻< 6 . L’ensemble A muni d’une relation d’ordre partiel 4 constitue une structure ordonnée notée (A, 4). 1 On vérifie aisément que la relation ≥ est une relation d’ordre partiel dans Z. On pourra donc écrire 3 4 1 si 4 désigne la relation ≥ ! CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 377 E XEMPLE 12.15 La relation d’inclusion ⊂ est une relation d’ordre partiel dans toute collection d’ensembles. ⋄ ité E XEMPLE 12.16 La relation ”a divise b”, soit a|b, est une relation d’ordre partiel dans l’ensemble N des entiers positifs. On a en effet a|b a|b a|a ; ⇒a=b ; ⇒ a|c b|a b|c Remarquons cependant que la relation a|b n’est pas une relation d’ordre partiel dans Z puisqu’alors a|b et b|a impliquent a = ±b et non a = b. ⋄ lim Remarquons que si 4 est un ordre partiel sur A, alors la relation inverse < est également un ordre partiel sur A et est appelée relation d’ordre partiel inverse. 12.1.5 Relation d’ordre total. Si 4 est une relation d’ordre partiel sur un ensemble A, deux éléments a et b de A sont dits comparables si et seulement si a 4 b ou b 4 a. Dans le cas contraire, a et b ne sont pas comparables. Un ensemble A totalement ordonné est un ensemble partiellement ordonné dont tous les éléments sont comparables deux à deux. La relation d’ordre est alors dite totale. U sa ge E XEMPLE 12.17 L’ensemble Z avec la relation ≤ est totalement ordonné. ⋄ E XEMPLE 12.18 Soit la relation d’ordre ⊂ sur P ({a, b, c}). On a P ({a, b, c}) = {φ, {a}, {b}, {c}, {a, b}, {a, c}, {b, c}, {a, b, c}} La relation ⊂ sur P ({a, b, c}) n’est pas un ordre total puisque les sous-ensembles {a, b} et {a, c} ne sont pas comparables. ⋄ E XEMPLE 12.19 Dans N muni de la relation d’ordre partiel |, les entiers 3 et 9 sont comparables puisque 3|9. Cependant, 5 et 7 ne sont pas comparables puisque 5 6 |7 et 7 6 |5. Dès lors, l’ensemble N n’est pas totalement ordonné par |. ⋄ 12.1.6 Représentation d’un ensemble partiellement ordonné. Le graphe orienté d’une relation d’ordre (partiel ou total) ne comporte aucun cycle hamiltonien. En effet, s’il existait un tel cycle, alors, on aurait n éléments distincts a1 , a2 , . . ., an tels que a1 4 a2 , a2 4 a3 , · · · an−1 4 an , an 4 a1 CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 378 lim ité et donc (par transitivité) a1 4 an . Par antisymétrie, on aurait a1 = an ce qui contredit l’hypothèse. Ceci permet de simplifier la représentation du graphe orienté de la relation. D’abord, on sait que la relation d’ordre est réflexive et donc, on peut omettre la représentation des boucles en chacun des noeuds. Ensuite, on peut laisser tomber toutes les arêtes que l’on pourrait reconstituer par transitivité. Enfin, puisqu’il n’y a pas de cycle hamiltonien, on convient de représenter toutes les arêtes orientées de bas en haut et de se passer des flèches d’orientation des arêtes. On obtient alors un diagramme de Hasse. Celui-ci peut donc être construit comme suit : – à chaque élément de A, on fait correspondre un noeud du diagramme ; – on trace un segment de droite ascendant de x vers y pour tous les x, y tels que x4y 6 ∃z t.q. x 4 z 4 y et L’élément x est alors appelé le prédécesseur immédiat de y dans A. E XEMPLE 12.20 Le diagramme de Hasse correspondant à la relation d’ordre partiel (Cf. exemple 12.18) ⊂ sur P ({a, b, c}) est {a, b, c} {a, b} {b, c} U sa ge {a, c} {a} {c} {b} φ F IG . 12.4 ⋄ Si A est partiellement ordonné par une relation 4, tout sous-ensemble B de A tel que B est totalement ordonné par la relation 4 est appelé une chaı̂ne. La longueur de la chaı̂ne est égale au nombre d’éléments de B moins un. Tout ensemble A totalement ordonné constitue lui-même une chaı̂ne. Le diagramme de Hasse correspondant est constitué d’un segment vertical joignant tous les éléments de A. E XEMPLE 12.21 Dans le cas de la relation d’ordre partiel ⊂ sur P ({a, b, c}), le sous-ensemble B = {φ, {a}, {a, b}, {a, b, c}} constitue une chaı̂ne de longueur 3. ⋄ CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 379 12.1.7 Ordre lexicographique. lim ité Les mots d’un dictionnaire sont présentés par ordre alphabétique. La relation d’ordre total existant sur l’ensemble des lettres de l’alphabet induit une relation d’ordre total sur les mots et, plus généralement, sur les chaı̂nes de caractères. Cette relation d’ordre est appelée l’ordre lexicographique. La démarche consistant à induire un ordre sur un ensemble produit de deux ou plusieurs ensembles ordonnés peut être généralisée à des ensembles quelconques. En effet, si A est un ensemble ordonné (partiellement ou totalement) par la relation 4, on peut définir le produit de (A, 4) par lui-même comme étant l’ensemble A × A = A2 ordonné par la relation (a, b) 4 (c, d) ⇔ (a 4 c) et (b 4 d) (12.9) Même dans le cas où A est totalement ordonné, A2 n’est cependant généralement pas totalement ordonné par la relation d’ordre (12.9). E XEMPLE 12.22 L’ensemble Z est totalement ordonné par la relation ≤. Cependant, Z2 n’est pas totalement ordonné puisque, par exemple, (1, 2) et (3, 1) ne sont pas comparables pour l’ordre produit. ⋄ Pour définir un ordre total, on procédera de la façon suivante : ' $ O RDRE LEXICOGRAPHIQUE DE An U sa ge Si A est un ensemble totalement ordonné, alors l’ensemble An est totalement ordonné comme suit : ( ai = bi i = 1, 2, . . .k < n (a1 , a2 , . . . , an ) ≺ (b1 , b2 , . . . , bn ) si et ak ≺ bk (a1 , a2 , . . . , an ) = (b1 , b2 , . . . , bn ) si ai = bi i = 1, 2, . . ., n (12.10) & % E XEMPLE 12.23 La classement des mots dans le dictionnaire suit un ordre lexicographique. On vérifiera, par exemple, que “bedaine” précède “bedon” et “biceps” conformément à (12.10). ⋄ E XEMPLE 12.24 La relation 4 d’ordre lexicographique dans R2 est telle que, par exemple, (1, 2) 4 (2, 5), (1, 2) 4 (1, 5) et (1, 2) 4 (2, 1) ⋄ 12.1.8 Éléments extrémaux. Les éléments d’un ensemble partiellement ordonné qui ont certaines propriétés extrémales sont importants dans bon nombre d’applications, par exemple dans les CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 380 ité problèmes de tri. Si A est un ensemble partiellement ordonné, on introduit donc les définitions suivantes : – Un élément a de A est un élément maximal de A si et seulement si x 4 a pour tous les x ∈ A comparables à a. Autrement dit, un élément a est maximal dans A s’il n’existe aucun élément x de A tel que a ≺ x. – Un élément a de A est un élément minimal de A si et seulement si a 4 x pour tous les x ∈ A comparables à a. Autrement dit, un élément a est minimal dans A s’il n’existe aucun élément x de A tel que x ≺ a. Les éléments maximal et minimal sont faciles à repérer dans un diagramme de Hasse. Il s’agit en effet des éléments situés “en haut” et “en bas” du diagramme. lim E XEMPLE 12.25 Dans l’exemple 12.18, φ est un élément minimal et {a, b, c} est un élément maximal. ⋄ E XEMPLE 12.26 Soit A = {2, 3, 4, 6, 12}. Dans (A, |), les éléments 2 et 3 sont minimaux ; 12 est le seul élément maximal Fig. 12.5. 12 6 U sa ge 4 2 3 F IG . 12.5 Dans le sous-ensemble B = {2, 3, 4} muni de la même relation d’ordre |, les éléments 2 et 3 sont minimaux et les éléments 3 et 4 sont maximaux. Remarquons que 3 est donc à la fois minimal et maximal. ⋄ E XEMPLE 12.27 Dans (Z, ≤), il n’y a ni élément maximal ni élément minimal. Par contre, dans (N, ≤), l’élément 0 est minimal. ⋄ Tout ensemble (A, 4) ordonné, fini et non vide possède au moins un élément minimal et au moins un élément maximal. En effet, si on choisit un élément quelconque a0 ∈ A et si cet élément n’est pas minimal, alors il existe un élément a1 ∈ A tel que a1 4 a0 . Si a1 n’est pas minimal, il existe un élément a2 ∈ A tel que a2 4 a1 . . . . Puisque A est fini, ce processus doit s’arrêter par un élément minimal. Le même raisonnement s’applique à la recherche d’un élément maximal. CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 381 Cette propriété permet de construire une relation d’ordre total sur n’importe quel ensemble partiellement ordonné fini. ' ∀a, b ∈ A, a 4 b ⇒ ité T RI TOPOLOGIQUE Dans tout ensemble ordonné fini et non vide (A, 4), on peut introduire une relation d’ordre total 4′ telle que a 4′ b′ La relation d’ordre total 4′ sur A est alors dite compatible avec 4. lim & $ (12.11) % De A, on peut extraire un élément minimal a1 . Faisons de cet élément le minimum de notre ordre total. On peut ensuite considérer l’ensemble A\{a} qui est ordonné (comme sous-ensemble de A) et fini. Si cet ensemble est non vide, on peut à nouveau extraire un élément minimal a2 dont on fait le deuxième élément de l’ordre total. En procédant de la sorte jusqu’à épuisement des éléments de A, on construira la chaı̂ne a1 4′ a2 4′ · · · 4′ an avec U sa ge a 4′ b si a 4 b E XEMPLE 12.28 Dans (P (A), ⊂) de l’exemple 12.18, on peut introduire le tri topologique suivant compatible avec ⊂ φ, {a}, {b}, {c}, {a, b}, {a, c}, {b, c}, {a, b, c} Remarquons cependant que φ, {a}, {b}, {a, b}, {c}, {b, c}, {a, c}, {a, b, c} constitue un autre tri topologique du même ensemble. ⋄ Si B est un sous-ensemble d’un ensemble A ordonné, alors on dit que – un élément a ∈ B est un plus grand élément de B si x 4 a ∀x ∈ B ; – un élément a ∈ B est un plus petit élément de B si a 4 x ∀x ∈ B ; Manifestement, tout sous-ensemble d’un ensemble ordonné et tout ensemble ordonné possède au plus un plus grand élément et un plus petit élément. En effet, par exemple, si a et b étaient deux plus grands éléments de A, alors a 4 b et b 4 a et donc, par antisymétrie, a = b. Si B est un sous-ensemble d’un ensemble A ordonné, on introduit encore les définitions suivantes : – un élément a ∈ A est un majorant de B si x 4 a ∀x ∈ B ; – un élément a ∈ A est un minorant de B si a 4 x ∀x ∈ B ; CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 382 ité – si le plus petit des majorants de B existe, on l’appelle la borne supérieure de B ; – si le plus grand des minorants de B existe, on l’appelle la borne inférieure de B. Les bornes supérieure et inférieure sont, respectivement, un plus grand et un plus petit élément. Elles sont donc uniques, si elles existent. 12.2 Treillis. lim Un ensemble partiellement ordonné (A, 4) est un treillis si toute paire {a, b} d’éléments de A admet une borne supérieure et une borne inférieure. Dans ce cas, on utilise les notations a ∨ b et a ∧ b pour désigner, respectivement, la borne supérieure et la borne inférieure de {a, b}. Selon la définition, un treillis est constitué de deux éléments : un ensemble A et une relation d’ordre partiel 4. On dit que ces deux éléments définissent une structure. Cette définition est semblable à celle d’un espace vectoriel qui constitue également une structure. Dans le cas d’un treillis, la structure est donnée par une relation d’ordre partiel. C’est pourquoi on parle de structure ordonnée. U sa ge E XEMPLE 12.29 Si A est un ensemble quelconque, (P (A), ⊂) est un treillis. En effet, la borne supérieure d’une paire {B,C} de parties de A est donnée par B ∪C et la borne inférieure est B ∩C. On écrira donc B ∨C = B ∪C B ∧C = B ∩C ⋄ E XEMPLE 12.30 L’ensemble ordonné (N, |) est un treillis. En effet, quels que soient les entiers a, b ∈ N, on a a ∧ b = pgcd(a, b) a ∨ b = ppcm(a, b) En effet, d’une part, pgcd(a, b) divise a et b et est donc un minorant de {a, b}. D’autre part, pgcd(a, b) est un multiple de tous les diviseurs de a et b. C’est donc le plus grand des minorants, i.e. la borne inférieure. Le raisonnement est identique pour a ∨ b = ppcm(a, b). ⋄ E XEMPLE 12.31 Soit Dn l’ensemble des diviseurs de n avec n ∈ N0 . L’ensemble ordonné (Dn , |) est un treillis. En effet, ∀a, b ∈ Dn , pgcd(a, b) ∈ N0 . D’autre part, comme n est un multiple commun de a et b, ppcm(a, b) divise n, soit ppcm(a, b) ∈ Dn . On peut donc encore écrire a ∧ b = pgcd(a, b) a ∨ b = ppcm(a, b) ⋄ CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 383 E XEMPLE 12.32 Soit un ensemble partiellement ordonné (A, 4) tel que A = {0, a, b, c, d, 1} et d a b lim c ité 1 0 F IG . 12.6 Les éléments a et b admettent trois majorants c, d et 1. Cependant, aucun des trois n’est le plus petit. Donc (A, 4) ne constitue pas un treillis. ⋄ ' U sa ge Tout ensemble (A, 4) totalement ordonné est un treillis avec ( ( a si a 4 b b si a 4 b a∧b = a∨b = b si b 4 a a si b 4 a $ (12.12) & % 12.2.1 Treillis et algèbre de Boole. La définition d’une algèbre de Boole donnée au chapitre 7 n’est pas celle qui est utilisée le plus souvent. ' $ Une algèbre de Boole est un treillis (A, 4) – distributif, i.e. ∀a, b, c ∈ A, a ∧ (b ∨ c) = (a ∧ b) ∨ (a ∧ c) et a ∨ (b ∧ c) = (a ∨ b) ∧ (a ∨ c) (12.13) – complémenté, i.e. A contient un plus petit élément 0 et un plus grand élément 1 et pour tout a ∈ A, il existe un élément a ∈ A, appelé le complément de a, tel que a∧a = 0 et & a∨a = 1 (12.14) % CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 384 E XEMPLE 12.33 Selon cette nouvelle définition, le treillis (P (A), ⊂) est une algèbre de Boole. Nous avons déjà montré que (P (A), ⊂) est un treillis. En utilisant les résultats de la théorie des ensembles, on a, de plus, ∀B,C, D ∈ A, et B ∪ (C ∩ D) = (B ∪C) ∩ (B ∩ D) Le plus petit élément de P (A) est l’ensemble vide φ puisque φ ⊂ X , ∀X ∈ P (A) Le plus grand élément de P (A) est A puisque lim X ⊂ A, ∀X ∈ P (A) ité B ∩ (C ∪ D) = (B ∩C) ∪ (B ∩ D) Enfin, le complément d’un sous-ensemble X quelconque de A est le sous-ensemble complémentaire X = A\X . ⋄ U sa ge À partir de la définition d’une algèbre de Boole comme treillis distributif complémenté, on peut retrouver la définition du chapitre 7 : – D’une part, le plus petit élément et le plus grand élément sont les éléments neutres des opérations ∧ et ∨. En effet, 0 est le plus petit élément de A, donc la borne supérieure de a et 0 est nécessairement a, soit a ∨ 0 = a. De même, la borne inférieure de a et 1 est a, soit a ∧ 1 = a, vu que 1 est le plus grand élément de A. – D’autre part, les opérations ∧ et ∨ sont associatives. Posons u = y ∨ z. On a y 4 x ∨ y 4 (x ∨ y) ∨ z et z 4 (x ∨ y) ∨ z ⇒ u 4 (x ∨ y) ∨ z De plus, x 4 x ∨ y 4 (x ∨ y) ∨ z et donc x ∨ u 4 (x ∨ y) ∨ z c’est-à-dire x ∨ (y ∨ z) 4 (x ∨ y) ∨ z De la même façon, on aura (x ∨ y) ∨ z 4 x ∨ (y ∨ z) et donc (x ∨ y) ∨ z = x ∨ (y ∨ z) L’associativité de ∧ se démontre de la même façon. Dès lors, toutes les propriétés démontrées au chapitre 2 peuvent être retrouvées, y compris l’unicité de 0 et 1 ainsi que le principe de dualité. Si (B, 4) désigne une algèbre de Boole finie, tout sous-ensemble de B est ordonné et possède un élément minimal. On appelle atome de B tout élément minimal du sous-ensemble ordonné B\{0}. Un élément a de B est donc un atome si a succède immédiatement à 0. CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 385 On démontre que ité Toute algèbre de Boole finie (B, 4) est isomorphe à l’algèbre de Boole (P (A), ⊂) où A est l’ensemble des atomes de B. lim Ce théorème possède les conséquences importantes suivantes : – Le cardinal de toute algèbre de Boole finie est une puissance de 2 (puisque l’ensemble des parties d’un ensemble fini de n éléments est 2n ) ; – Si deux algèbres de Boole finies ont même cardinal, leurs diagrammes de Hasse coı̈ncident. 12.3 Groupe. Dans le chapitre deux, et la section précédente, nous avons introduit deux types de structures : l’espace vectoriel et le treillis. Dans cette section, nous considérons un nouveau type de structure algébrique : la structure de groupe. ' Un groupe G est un ensemble non vide muni d’une loi de composition interne ◦ vérifiant les axiomes suivants2 : $ i. fermeture : U sa ge ∀a, b ∈ G, a◦b ∈ G (12.15) ii. associativité : ∀a, b, c ∈ G, a◦(b◦c) = (a◦b)◦c = a◦b◦c (12.16) iii. existence d’un élément neutre e : ∃e ∈ G : ∀a ∈ G, a◦e = e◦a = a, (12.17) iv. existence de l’inverse de tout élement : & ∀a ∈ G, ∃a−1 ∈ G : a−1 ◦a = e = a◦a−1 (12.18) % Remarquons que la définition d’un groupe demande de préciser l’ensemble G et la loi de composition interne. La structure correspondante est généralement notée (G, ◦) voire (G, ◦, e) Un groupe est dit fini si G est fini. Le nombre d’éléments |G| de G est alors appelé l’ordre de G. 2 Lorsqu’on se limite aux trois premières propriétés, i.e. fermeture, associativité et existence d’un élément neutre, on parle d’un monoı̈de. CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 386 Un groupe est dit abélien si, en plus des propriétés (12.15) à (12.18), l’opération binaire ◦ est commutative, c’est-à-dire si ∀a, b ∈ G, a◦b = b◦a ité (12.19) Dans la définition d’un groupe la loi de composition interne ◦ représente n’importe quelle opération binaire sur G, c’est-à-dire n’importe quelle fonction telle que G × G → G : (x, y) 7→ x ◦ y (12.20) lim Dans la suite, nous utiliserons la simplification d’écriture consistant à écrire l’opération de composition interne par juxtaposition ab. On dit alors que le groupe G est décrit multiplicativement. Quand G est abélien, cependant, l’opération binaire est souvent représentée par + et G est alors dit décrit additivement. Dans ce cas, l’élément neutre est représenté par 0 tandis que l’inverse de a est représenté par −a et appelé l’opposé de a. E XEMPLE 12.34 L’ensemble R muni de la loi habituelle d’addition constitute un groupe abélien dont l’élément neutre est 0 et dans lequel l’opposé d’un élément a quelconque est −a. De même (C, +, 0) et (Z, +, 0) sont des groupes abéliens. Par contre, (N, +, 0) n’est pas un groupe car l’inverse d’un élément a 6= 0 quelconque n’est pas défini dans N. ⋄ U sa ge E XEMPLE 12.35 L’ensemble R0 muni de la loi habituelle de multiplication constitue un groupe abélien dont l’élément neutre est 1 et dans lequel l’inverse d’un élément a quelconque est 1/a. De même (C0 , ·, 1) est un groupe abélien. Par contre, (R, ·, 1) n’est pas un groupe car 0 ne possède pas d’inverse. ⋄ E XEMPLE 12.36 L’ensemble des matrices carrées régulières d’ordre n muni de la loi de multiplication matricielle est un groupe dont le neutre est In et l’inverse de A est A−1 . La multiplication matricielle n’étant pas commutative, ce groupe n’est pas abélien. ⋄ E XEMPLE 12.37 On a défini une permutation comme étant une bijection σ de l’ensemble {1, 2, . . . , n} sur lui-même représentée par 1 2 ... n σ= j1 j2 . . . jn où ji = σ(i). L’ensemble des permutations est noté Sn et compte n! éléments. La composition de permutations dans Sn appartient à Sn tout comme l’élément neutre ε et les inverses des permutations. Ainsi Sn , muni de la loi de composition des permutations, est un groupe appelé groupe symétrique d’ordre n. Par exemple, les éléments de S3 sont 1 2 3 1 2 3 1 2 3 ε= σ2 = φ1 = 1 2 3 3 2 1 2 3 1 1 2 3 σ1 = 1 3 2 1 2 3 σ3 = 2 1 3 1 2 3 φ2 = 3 1 2 CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 387 La table de multiplication dans S3 , c’est-à-dire la table décrivant le résultat de la composition interne de deux éléments de S3 est : σ1 σ1 ε φ2 φ1 σ2 σ3 σ2 σ2 φ1 ε φ2 σ3 σ1 σ3 σ3 φ2 φ1 ε σ1 σ2 φ1 φ1 σ2 σ3 σ1 ε φ2 φ2 φ2 σ3 σ1 σ2 φ1 ε ité ε ε ε σ1 σ1 σ2 σ2 σ3 σ3 φ2 φ2 φ1 φ1 ⋄ lim E XEMPLE 12.38 L’ensemble des rotations constitue un groupe. En effet, la composition de deux rotations, c’est-à-dire l’application successive de deux rotations, constitue une nouvelle rotation. Le neutre correspond à une transformation d’identité de l’espace. L’inverse d’une rotation est la rotation dans le sens inverse. La composition de deux rotations n’est pas commutative. Le groupe correspondant n’est donc pas abélien. ⋄ 12.3.1 Propriétés des groupes. U sa ge En utilisant les axiomes (12.15) à (12.18), on montre que tout groupe possède les propriétés suivantes : i. L’élément neutre est unique. Si e et e′ sont deux éléments neutres, alors e = e′ e = e′ ii. L’inverse d’un élément est unique. Si x a = e = a x et y a = e = a y alors x = x e = x (a y) = (x a) y = e y = y = a−1 iii. Quels que soient les éléments a et b de G, (a b)−1 = b−1 a−1 (12.21) puisque (b−1 a−1 ) (a b) = b−1 (a−1 a) b = b−1 e b = b−1 b = e = (a b) (b−1 a−1 ) iv. e−1 = e v. (a−1 )−1 = a vi. Simplifiabilité à gauche : ab = ac ⇒ b=c (12.22) ba = ca ⇒ b=c (12.23) vii. Simplifiabilité à droite : CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 388 12.3.2 Produit direct. ité On peut définir de nouveaux groupes par des opérations sur des groupes. Soient deux groupes (G, ◦, e) et (G′ , ◦′ , e′ ). Le produit direct de ces deux groupes est la structure algébrique (G × G′ , ⋆, (e, e′ )) dans laquelle la loi de composition ⋆ est définie composante par composante, c’est-à-dire telle que (a, a′) ⋆ (b, b′) = (a◦a′ , b◦′ b′ ) (12.24) lim pour tout a, b ∈ G et a′ , b′ ∈ G′ . On vérifie aisément que (G × G′ , ⋆, (e, e′ )) constitue un groupe. Il est abélien si (G, ◦, e) et (G′ , ◦′ , e′ ) le sont. E XEMPLE 12.39 Le groupe abélien (Rn , +, (0, 0, . . . , 0)) est obtenu par produit direct de n copies de (R, +, 0). ⋄ 12.3.3 Sous-groupes. Un sous-groupe d’un groupe G est un sous-ensemble H de G muni de l’opération de composition interne de G et formant un groupe. Évidemment H est un sous-groupe s’il possède les trois propriétés suivantes. U sa ge i. L’élément neutre e appartient à H. ii. H est stable pour la loi de composition interne, c’est-à-dire ∀a, b ∈ H, a b ∈ H (12.25) iii. H est stable pour les inverses, c’est-à-dire ∀a ∈ H, ∃a−1 ∈ H : a−1 a = e = a a−1 (12.26) Notons que, puisque l’opération de composition interne est héritée de G, elle est également associative (et commutative si G est abélien) dans H. Tout groupe G a pour sous-groupes triviaux {e} et G lui-même. Tout autre sous-groupe de G est dit sous-groupe non trivial. 12.3.4 Sous-groupes normaux. Si H est un sous-groupe de G et a ∈ G, l’ensemble Ha = {h a : h ∈ H} (12.27) est appelé classe à droite suivant H. De même, aH = {a h : h ∈ H} est la classe à gauche suivant H. Les classes à gauche et à droite possèdent les propriétés suivantes : (12.28) CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 389 i. Si H est un sous-groupe du groupe G, alors les classes à droite Ha forment une partition de G. ité ii. Si H est un sous-groupe du groupe fini G, alors l’ordre de H divise l’ordre de G. Le nombre de classes à droite de H dans G, appelé index de H dans G est alors égal au nombre de classes à gauche de H dans G et les deux nombres sont égaux à |G| divisé par |H|. lim Un sous-groupe H de G est dit sous-groupe normal si a−1 Ha ⊂ H pour tout a ∈ G. Autrement dit, H est normal si aH = Ha pour tout a ∈ G, c’est-à-dire si les classes à gauche et à droite coı̈ncident. En particulier, tout sous-groupe d’un groupe abélien est normal. Si H est un sous-groupe normal de G, alors les classes suivant H dans G forment un groupe muni de la multiplication des classes. Ce groupe est appelé groupe quotient et est représenté par G|H. E XEMPLE 12.40 Considérons le groupe formé par l’ensemble Z des entiers muni de loi d’addition. Soit H l’ensemble des multiples de 5, c’est-à-dire H = {. . . , −10, −5, 0, 5, 10, . . .} alors H est un sous-groupe (forcément normal) de Z. Les classes suivant H dans Z sont : [0] = 0 + H = {. . . , −10, −5, 0, 5, 10, . . .} U sa ge [1] = 1 + H = {. . . , −9, −4, 1, 6, 11, . . .} [2] = 2 + H = {. . . , −8, −3, 2, 7, 12, . . .} [3] = 3 + H = {. . . , −7, −2, 3, 8, 13, . . .} [4] = 4 + H = {. . . , −6, −1, 4, 9, 14, . . .} Pour tout autre entier n ∈ Z, [n] = n + H est égal à l’une des classes ci-dessus. Ainsi, Z|H = {0, 1, 2, 3, 4} muni de l’addition, est un groupe, dont la table d’addition est : + [0] [1] [2] [3] [4] [0] [1] [2] [3] [4] [0] [1] [2] [3] [4] [1] [2] [3] [4] [0] [2] [3] [4] [0] [1] [3] [4] [0] [1] [2] [4] [0] [1] [2] [3] Ce groupe quotient Z|H est celui des entiers modulo 5 que l’on représente par Z5 . De même, pour tout entier positif n, il existe un groupe quotient Zn des entiers modulo n. ⋄ CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 390 12.3.5 Isomorphisme de groupes. f (a ◦ b) = f (a) ◦ f (b) ité Une application f du groupe G dans le groupe G′ est un homomorphisme si pour tout a, b de G. Si f est bijective, il s’agit d’un isomorphisme et G, G′ sont isomorphes, ce que nous écrivons G ∼ G′ . lim E XEMPLE 12.41 Les groupes (R+ 0 , ·, 1) et (R, +, 0) sont isomorphes. La fonction logarithme est + en effet un isomorphisme de (R0 , ·, 1) sur (R, +, 0) puisqu’elle est bijective et que ∀a, b ∈ R+ 0 , ln(a · b) = ln a + ln b La multiplication de deux éléments de R+ 0 est donc équivalente à l’addition de deux éléments de R. ⋄ E XEMPLE 12.42 Étant donné le groupe (R, +, 0) des nombres réels avec l’addition et le groupe + (R+ 0 , ·, 1) des nombres réels positifs avec la multiplication, l’application f : R → R0 définie par a f (a) = 2 est un homéomorphisme car f (a + b) = 2a+b = 2a 2b = f (a) f (b) U sa ge De plus, f est bijective et donc les groupes (R, +, 0) et (R+ 0 , ·, 1) sont isomorphes. Remarquons que l’on peut définir différents isomorphismes pour deux groupes isomorphes puisque les groupes de cet exemple sont identiques à ceux de l’exemple précédent. ⋄ Le théorème suivant est fondamental pour la théorie des groupes. : G → G′ Soit f un homéomorphisme de noyau K, alors K est un sous-groupe normal de G et le groupe G|K est isomorphe à l’image de f . CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 391 12.3.6 Anneaux, domaines d’intégrité et corps. $ ' i. Fermeture ∀a, b ∈ R, (a + b) ∈ R et ité Un ensemble R non vide muni de deux opérations binaires, une opération d’addition, notée +, et une opération de multiplication, écrite par juxtaposition, est un anneau si les axiomes suivants sont valides : ab ∈ R (12.29) ii. Associativité de l’addition et de la multiplication : lim ∀a, b, c ∈ R, (a + b) + c = a + (b + c) = a + b + c ∀a, b, c ∈ R, (ab)c = a(bc) = abc (12.30) (12.31) iii. Existence d’un élément neutre additif 0 : ∃0 ∈ R : ∀a ∈ R, a + 0 = 0 + a = a (12.32) iv. Existence de l’inverse additif −a : ∀a ∈ R, ∃ − a ∈ R : a + (−a) = (−a) + a = 0 (12.33) U sa ge v. Commutativité de l’addition : ∀a, b, c ∈ R, a + b = b + a (12.34) vi. Distributivité de l’addition par rapport à la multiplication : & ∀a, b, c ∈ R, a(b + c) = ab + ac et (b + c)a = ba + ca Observons que R muni de l’addition est un groupe abélien. À partir des axiomes, on peut montrer que ∀a ∈ R, a · 0 = 0 · a = 0 (12.35) % (12.36) On dit que R est un anneau commutatif si ∀a, b ∈ R, ab = ba (12.37) On dit également que R est un anneau avec un élément neutre multiplicatif s’il existe un élément 1 ∈ R, différent de 0, tel que ∀a ∈ R, a · 1 = 1 · a = a Un sous-ensemble non vide J de l’anneau R est un idéal dans R si : (12.38) CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 392 i. a + b ∈ J pour tout a, b ∈ J {a + J : a ∈ R} qui forment une partition de R ' ité ii. ra, ar ∈ J pour tout r ∈ R, a ∈ J J est donc un sous-anneau de R mais également un sous-groupe (nécessairement normal) du groupe additif R. Ainsi, nous pouvons constituer une collection de classes suivant J (12.39) lim Soit J un idéal d’un anneau R, alors les classes {a + J : a ∈ R} forment un anneau muni des opérations des classes (a + J) + (b + J) = a + b + J & et $ (a + J)(b + J) = ab + J Cet anneau est noté R|J et appelé anneau quotient. % U sa ge Si R est un anneau commutatif avec un élément neutre multiplicatif, pour tout a ∈ R, l’idéal (a) = {ra : r ∈ R} est appelé l’idéal principal généré par a. Si tout idéal dans R est un idéal principal, alors R est un anneau idéal principal. Un élément a 6= 0 dans un anneau commutatif R est un diviseur de zéro s’il existe un élément b 6= 0 tel que ab = 0 Un anneau commutatif R, avec un élément neutre multiplicatif, sans diviseur de zéro, est un domaine d’intégrité, c’est-à-dire que ab = 0 implique a = 0 ou b = 0 Un anneau commutatif R, avec un élément neutre multiplicatif 1 (différent de 0), est un corps, si tout élément a ∈ R, 6= 0 possède un inverse multiplicatif, c’est-à-dire qu’il existe un élément a−1 ∈ R tel que aa−1 = a−1 a = 1. Un corps est nécessairement un domaine d’intégrité car si ab = 0 et a 6= 0 alors b = 1 · b = a−1 ab = a−1 · 0 = 0 On remarque qu’un corps peut être considéré comme un anneau commutatif dans lequel les éléments différents de 0 avec la multiplication forment un groupe. E XEMPLE 12.43 L’ensemble Z des entiers muni de l’addition et de la multiplication est un exemple classique de domaine d’intégrité (avec un élément neutre multiplicatif différent du neutre additif 0). Tout idéal J dans Z est un idéal principal, c’est-à-dire que J = (m) pour un certain entier m. L’anneau quotient Zm = Z/(m) est appelé anneau des entiers modulo m. Si m est premier, alors Zm est un corps. D’un autre point de vue, si m n’est pas premier alors Zm a des diviseurs de zéro. Par exemple, dans l’anneau Z6 , nous avons [2] · [3] = [0] mais [2] 6= [0] et [3] 6= [0] ⋄ E XEMPLE 12.44 Les ensembles des rationnels Q et des réels R munis de l’addition et de la multiplication habituelles forment chacun un corps. ⋄ CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 393 12.4 Exercices. ité 1) Soit R la relation d’équivalence suivante dans l’ensemble A = {1, 2, 3, 4, 5, 6} : R = {(1, 1), (1, 5),(2, 2), (2, 3), (2, 6), (3, 2), (3, 3), (3, 6), (4, 4), (5, 1), (5, 5), (6, 2), (6, 3), (6, 6)} Trouvez la partition de A induite par R, c’est-à-dire trouver les classes d’équivalence de R. lim 2) Soit W = {1, 2, 3, 4} et les relations suivantes dans W : R1 = {(1, 1), (2, 1)} R2 = {(1, 1), (2, 3), (4, 1)} R3 = {(3, 4)} R4 = {(1, 1), (2, 2), (3, 3)} R5 = {(1, 3), (2, 4)} Déterminer lesquelles sont réflexives, symétriques, antisymétriques, transitives. U sa ge 3) Soient R et S deux relations dans l’ensemble A. On suppose que A compte au moins trois éléments. Etablissez la véracité des énoncés ci-dessous. Si l’énoncé est faux, donnez un contre-exemple avec A = {1, 2, 3}. a) Si R et S sont symétriques, alors R ∩ S est symétrique. b) Si R et S sont symétriques, alors R ∪ S est symétrique. c) Si R et S sont réflexives, alors R ∩ S est réflexive. d) Si R et S sont réflexives, alors R ∪ S est réflexive. e) Si R et S sont transitives, alors R ∩ S est transitive. f) Si R et S sont antisymétriques, alors R ∪ S est antisymétrique. g) Si R est antisymétrique, alors R−1 est antisymétrique. h) Si R est réflexive, alors R ∩ R−1 n’est pas vide. i) Si R est symétrique, alors R ∩ R−1 n’est pas vide. 4) Prouvez que si R est une relation d’équivalence dans un ensemble A, alors R−1 est aussi une relation d’équivalence dans A. 5) Étant donnés N = {1, 2, 3, . . .} et la relation ≃ dans N × N définie par (a, b) ≃ (c, d) si ad = bc Démontrez que ≃ est une relation d’équivalence. CHAPITRE 12. STRUCTURES ORDONNÉES ET ALGÉBRIQUES. 394 6) Soient A = {1, 2, 3, . . ., 9} et une relation ¬ dans A × A définie par : (a, b)¬(c, d) si a + d = b + c ité a) Démontrez que ¬ est une relation d’équivalence. U sa ge lim b) Trouvez [(2, 5)], c’est-à-dire la classe d’équivalence de (2, 5). ité lim Bibliographie [1] BENDER C.M. et ORSZAG S.A., 1978. Advanced Mathematical Methods for Scientists and Engineers. McGraw-Hill, 593p. [2] CHUA L.O., DESOER C.A. et KUH E.S., 1987. Linear and Nonlinear Circuits. McGraw-Hill, 842 p. [3] EPP S.S., 1993. Discrete Mathematics with Applications. PWS, 788 p. sa ge [4] FLAJOLET P. et SEDGEWICK R., 1996. An Introduction to the Analysis of Algorithms. Addison-Wesley, 492 p. [5] JAMES G., 1996. Modern Engineering Mathematics. Addison-Wesley, 954 p. [6] LIPSCHUTZ S., 1990. Mathématiques discrètes. McGraw-Hill, 248 p. [7] MARCHAND M., 1989. Mathématique discrète. De Boeck, 499 p. [8] ROSEN K. H., 1998. Mathématiques discrètes. McGraw-Hill, 669 p. [9] WILLEMS J.L., 1970. Stability Theory of Dynamics Systems. John Willey and Sons, 288 p. U [10] WILSON R.J., 1996. Graph Theory. Longman, 171 p. 395 Théorie des ensembles. 6.1 Ensemble. . . . . . . . . . . . . . . . . . . . . 6.2 Sous-ensemble. . . . . . . . . . . . . . . . . . 6.3 Diagramme de Venn. . . . . . . . . . . . . . . 6.4 Opérations sur les ensembles. . . . . . . . . . . 6.4.1 Union et intersection. . . . . . . . . . . 6.4.2 Parties d’ensembles et produit cartésien. 6.5 Fonction. . . . . . . . . . . . . . . . . . . . . 6.5.1 Définition. . . . . . . . . . . . . . . . 6.5.2 Injection, surjection, bijection. . . . . . 6.6 Ensemble fini, infini et dénombrable. . . . . . . U sa ge 6 7 ité lim Table des matières . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Calcul propositionnel et algèbre de Boole. 7.1 Propositions et opérateurs logiques. . . . . . . . . . . . . . . . 7.2 Composition de propositions. . . . . . . . . . . . . . . . . . . . 7.3 Algèbre de propositions. . . . . . . . . . . . . . . . . . . . . . 7.4 Implications logiques. . . . . . . . . . . . . . . . . . . . . . . . 7.5 Tautologie et contradiction. . . . . . . . . . . . . . . . . . . . . 7.6 Propositions et quantificateurs . . . . . . . . . . . . . . . . . . 7.7 Système de raisonnement formel et méthodes de démonstration. 7.7.1 Preuve indirecte. . . . . . . . . . . . . . . . . . . . . . 7.8 Algèbre de Boole. . . . . . . . . . . . . . . . . . . . . . . . . . 7.8.1 Dualité. . . . . . . . . . . . . . . . . . . . . . . . . . . 7.8.2 Propriétés fondamentales. . . . . . . . . . . . . . . . . 7.9 Forme canonique disjonctive. . . . . . . . . . . . . . . . . . . . 7.9.1 Algèbre de Boole et électronique. . . . . . . . . . . . . 7.9.2 Expression booléenne minimale. . . . . . . . . . . . . . 7.10 Exercices. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 176 178 179 180 180 183 185 185 185 187 . . . . . . . . . . . . . . . 190 190 191 192 193 194 195 196 199 200 201 202 205 206 208 211 TABLE DES MATIÈRES 397 8 . . . . . . . . . . . . . . 215 215 219 220 222 226 228 231 231 234 236 238 242 243 246 . . . . . . 250 253 257 258 270 276 281 . . . . . . . . . . . . . 289 289 289 290 291 294 295 296 298 298 299 300 301 301 U . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . lim 10 Dénombrement. 10.1 Principes de la somme et du produit. . . . . 10.1.1 Principe du produit. . . . . . . . . . 10.1.2 Principe de la somme. . . . . . . . 10.2 Principe des tiroirs. . . . . . . . . . . . . . 10.3 Permutations. . . . . . . . . . . . . . . . . 10.4 Arrangements. . . . . . . . . . . . . . . . . 10.5 Combinaisons. . . . . . . . . . . . . . . . 10.6 Permutations et combinaisons généralisées. 10.6.1 Permutations avec répétition. . . . . 10.6.2 Arrangements avec répétition. . . . 10.6.3 Combinaisons avec répétition. . . . 10.7 Résumé pratique. . . . . . . . . . . . . . . 10.8 Principe d’inclusion-exclusion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ité . . . . . . . . . . . . . . Équations aux différences. 9.1 Equations aux différences du premier ordre. . . . . . . . . . 9.2 Equations aux différences linéaires. . . . . . . . . . . . . . 9.2.1 Equations aux différences linéaires et homogènes. . 9.2.2 Equations aux différences linéaires non homogènes. 9.3 Fonction génératrice. . . . . . . . . . . . . . . . . . . . . . 9.4 Exercices. . . . . . . . . . . . . . . . . . . . . . . . . . . . sa ge 9 Les entiers. 8.1 Principe d’induction mathématique. . . . . . . 8.2 Opérations sur les entiers. . . . . . . . . . . . . 8.2.1 Division entière. . . . . . . . . . . . . 8.2.2 Nombres premiers. . . . . . . . . . . . 8.2.3 Plus grand commun diviseur. . . . . . . 8.2.4 Équations diophantines linéaires. . . . . 8.2.5 Plus petit commun multiple. . . . . . . 8.2.6 Arithmétique modulaire. . . . . . . . . 8.2.7 Congruences linéaires. . . . . . . . . . 8.2.8 Théorèmes d’Euler et de Fermat. . . . . 8.2.9 Cryptographie à clé publique. . . . . . 8.2.10 Représentation des nombres en base b. . 8.3 Algorithmes et définitions récursifs. . . . . . . 8.4 Exercices. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TABLE DES MATIÈRES 398 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 308 308 309 312 315 ité 10.8.1 Dérangement. . . . . . . . . . . . . . . . . 10.9 Relations de récurrence et dénombrement. . . . . . 10.9.1 Raisonnement par induction. . . . . . . . . 10.9.2 Relation de récurrence avec fractionnement. 10.10Dénombrement et fonction génératrice. . . . . . . 10.11Exercices. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . fondamental de . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . U sa ge lim 11 Éléments de la théorie des graphes. 11.1 Introduction et définitions. . . . . . . . . . . . . . . . 11.1.1 Graphe simple. . . . . . . . . . . . . . . . . . 11.1.2 Degré d’un noeud. . . . . . . . . . . . . . . . 11.1.3 Représentation matricielle. . . . . . . . . . . . 11.2 Parcours dans un graphe. . . . . . . . . . . . . . . . . 11.2.1 Chaı̂ne et cycle. . . . . . . . . . . . . . . . . . 11.2.2 Connexité. . . . . . . . . . . . . . . . . . . . 11.2.3 Dénombrement des chaı̂nes. . . . . . . . . . . 11.2.4 Connexité et graphe simple. . . . . . . . . . . 11.2.5 Circuit eulérien. . . . . . . . . . . . . . . . . . 11.2.6 Cycle hamiltonien. . . . . . . . . . . . . . . . 11.2.7 Chemin de coût minimum. . . . . . . . . . . . 11.2.8 Graphe orienté. . . . . . . . . . . . . . . . . . 11.3 Arbre. . . . . . . . . . . . . . . . . . . . . . . . . . . 11.3.1 Définition. . . . . . . . . . . . . . . . . . . . 11.3.2 Arborescence. . . . . . . . . . . . . . . . . . . 11.3.3 Propriétés des arbres. . . . . . . . . . . . . . . 11.4 Arbre de recouvrement. . . . . . . . . . . . . . . . . . 11.4.1 Nombre d’arbres de recouvrement. . . . . . . . 11.4.2 Arbres de recouvrement minimum. . . . . . . 11.4.3 Ensemble fondamental de cycles et ensemble coupures. . . . . . . . . . . . . . . . . . . . . 11.5 Graphe planaire. . . . . . . . . . . . . . . . . . . . . . 11.5.1 Formule d’Euler. . . . . . . . . . . . . . . . . 11.6 Coloriage. . . . . . . . . . . . . . . . . . . . . . . . . 11.7 Exercices. . . . . . . . . . . . . . . . . . . . . . . . . 321 321 323 324 325 327 327 328 330 331 332 335 337 342 343 343 345 346 349 350 351 352 356 358 360 362 12 Structures ordonnées et algébriques. 369 12.1 Relations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369 12.1.1 Propriétés des relations sur un ensemble. . . . . . . . . . . . . . 371 12.1.2 Relation et graphe orienté. . . . . . . . . . . . . . . . . . . . . . 371 TABLE DES MATIÈRES 399 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372 376 377 377 379 379 382 383 385 387 388 388 388 390 391 393 U sa ge Bibliographie lim ité 12.1.3 Relation d’équivalence. . . . . . . . . . . . . . . . . 12.1.4 Relation d’ordre partiel. . . . . . . . . . . . . . . . 12.1.5 Relation d’ordre total. . . . . . . . . . . . . . . . . 12.1.6 Représentation d’un ensemble partiellement ordonné. 12.1.7 Ordre lexicographique. . . . . . . . . . . . . . . . . 12.1.8 Éléments extrémaux. . . . . . . . . . . . . . . . . . 12.2 Treillis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12.2.1 Treillis et algèbre de Boole. . . . . . . . . . . . . . 12.3 Groupe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12.3.1 Propriétés des groupes. . . . . . . . . . . . . . . . . 12.3.2 Produit direct. . . . . . . . . . . . . . . . . . . . . . 12.3.3 Sous-groupes. . . . . . . . . . . . . . . . . . . . . . 12.3.4 Sous-groupes normaux. . . . . . . . . . . . . . . . . 12.3.5 Isomorphisme de groupes. . . . . . . . . . . . . . . 12.3.6 Anneaux, domaines d’intégrité et corps. . . . . . . . 12.4 Exercices. . . . . . . . . . . . . . . . . . . . . . . . . . . . 395 TABLE DES MATIÈRES U sa ge lim ité 400