Nothing Special   »   [go: up one dir, main page]

Math Info 2012

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 357

Mathématiques pour informaticien

MAT-1919

François Laviolette, Josée Desharnais,


Pascal Germain

Hiver 2012
Remerciements

Une partie de la matière de ce cours était autrefois enseignée dans le cadre du cours
Logique et techniques de preuve. Merci à Jules Desharnais de nous avoir permis d’emprunter
certains éléments et exercices des notes de cours qu’il a lui-même rédigées.

Nous remercions également les étudiants des sessions précédentes qui nous ont souligné
des coquilles dans les notes de cours, contribuant ainsi à la qualité du document que vous
avez sous les yeux : Simon Arsenault, Michael Audet, Abdoul Aziz A. LOM, Vincent Blais,
Charles-Alexandre Cantin, Sylvain Fillion, Olivier Garant, Jean Bruno Jauvin, Charles Joly
Beauparlant, Patrick Landry, Benjamin Lemelin, Olivier Petit, Karim Sghari, Sandra Sirois
et Joel Trottier-Hébert.

Finalement, les commentaires et corrections des auxiliaires d’enseignement Jean-Francis


Roy et Gildas Syla Déogratias Kouko furent aussi d’une aide considérable.

ii
Table des matières

0 Un peu de motivation 1

1 Théorie des ensembles 5


1.1 Algèbre booléenne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.1 Expressions booléennes . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.2 Opérateurs booléens et tables de vérité . . . . . . . . . . . . . . . . . 7
1.1.3 Propriétés des opérateurs et démonstrations par cas . . . . . . . . . . 11
1.1.4 Démonstrations par succession d’équivalences . . . . . . . . . . . . . 17
1.1.5 Le problème de satisfiabilité d’une équation booléenne . . . . . . . . 20
1.1.6 Exercices sur l’algèbre booléenne . . . . . . . . . . . . . . . . . . . . 24
1.2 Ensembles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
1.2.1 Égalité entre deux ensembles (Axiome d’extensionnalité) . . . . . . . 27
1.2.2 Définition d’un ensemble et opérateur d’appartenance . . . . . . . . . 28
1.2.3 Diagramme de Venn et ensemble universel . . . . . . . . . . . . . . . 31
1.2.4 Quantificateur universel et quantificateur existentiel . . . . . . . . . . 32
1.2.5 Opérateurs ensemblistes . . . . . . . . . . . . . . . . . . . . . . . . . 35
1.2.6 Propriétés des opérateurs et démonstrations . . . . . . . . . . . . . . 39
1.2.7 Exercices sur les ensembles . . . . . . . . . . . . . . . . . . . . . . . . 45
1.3 Techniques de démonstration . . . . . . . . . . . . . . . . . . . . . . . . . . 47
1.3.1 Structure des démonstrations d’un quantificateur universel “∀” . . . . 48
1.3.2 Structure des démonstrations d’un quantificateur existentiel “∃”. . . . 49
1.3.3 Une démonstration avec une implication “⇒” . . . . . . . . . . . . . 49
1.3.4 Une démonstration avec un ssi “⇔” . . . . . . . . . . . . . . . . . . . 51
1.3.5 Démonstration par cas . . . . . . . . . . . . . . . . . . . . . . . . . . 52
1.3.6 Démonstrations utilisant les propriétés de l’arithmétique . . . . . . . 53
1.3.7 Démonstrations avec un “¬∃” ou un “¬∀” . . . . . . . . . . . . . . . 54
1.3.8 Démonstrations par contradiction . . . . . . . . . . . . . . . . . . . . 56
1.3.9 Exercices sur les techniques de démonstration . . . . . . . . . . . . . 58
1.4 Relations et fonctions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

iii
iv TABLE DES MATIÈRES

1.4.1 n-uplet et produit cartésien . . . . . . . . . . . . . . . . . . . . . . . 59


1.4.2 Définitions et représentations des relations . . . . . . . . . . . . . . . 63
1.4.3 Opérateurs sur les relations . . . . . . . . . . . . . . . . . . . . . . . 67
1.4.4 Familles de relations . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
1.4.5 Fonctions (totales) et fonctions partielles . . . . . . . . . . . . . . . . 81
1.4.6 Relations d’équivalence et ordres . . . . . . . . . . . . . . . . . . . . 86
1.4.7 Exercices sur les relations et fonctions . . . . . . . . . . . . . . . . . 92
1.5 Ensembles infinis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
1.5.1 “Avoir autant d’éléments” . . . . . . . . . . . . . . . . . . . . . . . . 98
1.5.2 “Autant” d’éléments que N : Les ensembles infinis dénombrables . . . 102
1.5.3 “Avoir plus d’éléments” . . . . . . . . . . . . . . . . . . . . . . . . . 104
1.5.4 |N| est la plus petite cardinalité infinie . . . . . . . . . . . . . . . . . 109
1.5.5 Donnons-nous des outils . . . . . . . . . . . . . . . . . . . . . . . . . 111
1.5.6 “Plus d’éléments” que N : Les ensembles non dénombrables . . . . . . 114
1.5.7 Exercices sur les ensembles infinis . . . . . . . . . . . . . . . . . . . . 123

2 Relations définies par récurrence 126


2.1 Suites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
2.1.1 Définition par terme général et par récurrence . . . . . . . . . . . . . 127
2.1.2 Notation sigma “Σ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
2.1.3 Temps d’exécution d’un algorithme . . . . . . . . . . . . . . . . . . . 129
2.1.4 Exercices sur les suites . . . . . . . . . . . . . . . . . . . . . . . . . . 133
2.2 Méthode des substitutions à rebours . . . . . . . . . . . . . . . . . . . . . . 135
2.2.1 Description de la méthode . . . . . . . . . . . . . . . . . . . . . . . . 135
2.2.2 Quelques exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
2.2.3 Exercices sur la méthode des substitutions à rebours . . . . . . . . . 143
2.3 Induction mathématique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
2.3.1 Induction mathématique faible . . . . . . . . . . . . . . . . . . . . . . 144
2.3.2 Principe d’induction mathématique à deux cas de base . . . . . . . . 149
2.3.3 Induction mathématique forte . . . . . . . . . . . . . . . . . . . . . . 152
2.3.4 Exercices sur l’induction mathématique . . . . . . . . . . . . . . . . . 156
2.4 Cas particuliers de récurrences . . . . . . . . . . . . . . . . . . . . . . . . . . 158
2.4.1 Les suites arithmétiques . . . . . . . . . . . . . . . . . . . . . . . . . 158
2.4.2 Les suites géométriques . . . . . . . . . . . . . . . . . . . . . . . . . . 159
2.4.3 La suite des sommes de premiers termes d’une suite . . . . . . . . . . 160
2.4.4 Relations de récurrence linéaires et homogènes . . . . . . . . . . . . . 165
2.4.5 Exercices sur les cas particuliers de recurrences . . . . . . . . . . . . 168
2.5 Méthode des séries génératrices . . . . . . . . . . . . . . . . . . . . . . . . . 170
TABLE DES MATIÈRES v

2.5.1 L’idée de la méthode . . . . . . . . . . . . . . . . . . . . . . . . . . . 170


2.5.2 Méthode de résolution et modèles de séries de puissances . . . . . . . 173
2.5.3 Quelques exemples de résolution de récurrences . . . . . . . . . . . . 175
2.5.4 Récurrences linéaires homogènes d’ordre 2 (démonstration) . . . . . . 182
2.5.5 Exercices sur la méthode des séries génératrices . . . . . . . . . . . . 186
2.6 Approximation par une intégrale . . . . . . . . . . . . . . . . . . . . . . . . . 187
2.6.1 Description de la méthode . . . . . . . . . . . . . . . . . . . . . . . . 187
2.6.2 Bref rappel sur le calcul intégral . . . . . . . . . . . . . . . . . . . . . 189
2.6.3 Quelques exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
2.6.4 Exercices sur l’approximation par une intégrale . . . . . . . . . . . . 193

3 Théorie des graphes 194


3.1 Éléments de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
3.1.1 Graphes et digraphes . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
3.1.2 Voisins et degré d’un sommet . . . . . . . . . . . . . . . . . . . . . . 197
3.1.3 Sous-graphes et décompositions . . . . . . . . . . . . . . . . . . . . . 197
3.1.4 Chaı̂nes, chemins et cycles . . . . . . . . . . . . . . . . . . . . . . . . 198
3.1.5 Connexité d’un graphe . . . . . . . . . . . . . . . . . . . . . . . . . . 199
3.1.6 Arbres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
3.1.7 Représentation matricielle . . . . . . . . . . . . . . . . . . . . . . . . 201
3.1.8 Exercices sur les éléments de base . . . . . . . . . . . . . . . . . . . . 203
3.2 Les graphes en tant que relations . . . . . . . . . . . . . . . . . . . . . . . . 205
3.2.1 Opérateurs sur les graphes . . . . . . . . . . . . . . . . . . . . . . . . 205
3.2.2 Isomorphisme de graphes . . . . . . . . . . . . . . . . . . . . . . . . . 207
3.2.3 Exercices sur les graphes en tant que relations . . . . . . . . . . . . . 208
3.3 Degrés des sommets et nombre d’arêtes . . . . . . . . . . . . . . . . . . . . . 209
3.4 Arbres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
3.4.1 Sommets et arêtes d’un arbre . . . . . . . . . . . . . . . . . . . . . . 212
3.4.2 Propriétés des arbres binaires . . . . . . . . . . . . . . . . . . . . . . 214
3.4.3 Exercices sur les arbres . . . . . . . . . . . . . . . . . . . . . . . . . . 216
3.5 Graphes planaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
3.6 Chaı̂nes et chemins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
3.6.1 Propriétés d’un graphe connexe . . . . . . . . . . . . . . . . . . . . . 222
3.6.2 Cycles d’un graphe . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
3.6.3 Algorithmes de recherche du plus court chemin . . . . . . . . . . . . 224
3.6.4 Exercices sur les chaı̂nes et chemins . . . . . . . . . . . . . . . . . . . 227

A Alphabet grec 228


vi TABLE DES MATIÈRES

B Documents LATEX 230

Références et suggestions de lecture 235

Index 236
Chapitre 0

Un peu de motivation

Computer science is no more about computers


than astronomy is about telescopes.

Edsger W. Dijkstra (1930 – 2002)

À l’époque où vous entreprenez un programme d’études en informatique, il serait super-


flu de commencer ce cours en faisant l’éloge de l’utilité de l’informatique, tellement l’usage
des ordinateurs est désormais répandu dans toutes les sphères de l’activité humaine. Ce-
pendant, il nous parait important d’expliquer que les mathématiques sont d’une utilité cru-
ciale pour quelqu’un qui s’intéresse à l’informatique en tant que science. En effet, il subsiste
chez plusieurs étudiants l’impression que l’informatique et les mathématiques sont deux do-
maines d’études indépendants, et qu’il n’est pas nécessaire de posséder des connaissances
mathématiques pour être un bon informaticien 1 . Cela s’explique possiblement par le fait que
la plupart des utilisations que nous faisons d’un ordinateur ne requièrent pas, ou peu, de
connaissances mathématiques. En effet, tant que nous utilisons des programmes créés par
d’autres (que ce soit des outils destinés à tous, tels les traitements de textes, ou des outils
plus spécialisés, telles les librairies hauts niveaux de certains langages de programmation),
les connaissances mathématiques sont souvent facultatives. Cela dit, quiconque s’intéresse à
comprendre le fonctionnement de l’ordinateur, à analyser le comportement des algorithmes
ou à concevoir des programmes pour résoudre des nouvelles tâches a besoin d’outils pour
guider son raisonnement logique. Les prochains paragraphes ont comme ambition de vous
convaincre que, dans chacune de ces circonstances, les mathématiques s’imposent comme la
“boı̂te à outils” de prédilection.

1. Curieusement, il n’existe pas de telles remises en question dans les diverses branches de l’ingénierie.

1
2 CHAPITRE 0. UN PEU DE MOTIVATION

Les mathématiques et les fondements de l’informatique

Les ordinateurs sont, d’abord et avant tout, des calculatrices très sophistiquées. Les pre-
miers ordinateurs ont d’ailleurs été imaginés par des mathématiciens désireux d’automatiser
leurs calculs. De même, le langage binaire à la base des ordinateurs est issu de la logique
booléenne, que nous présenterons dès le début du premier chapitre. Le langage mathématique
fut donc à la base du développement de l’informatique, et il représente toujours un outil es-
sentiel aux informaticiens qui travaillent à l’informatique du futur 2 .

Notons aussi que, malgré la grande diversification des tâches que peut accomplir un ordina-
teur personnel comme outil de travail ou objet de divertissement, il demeure essentiellement
une puissante machine à calculer pour plusieurs scientifiques. En effet, les “superordina-
teurs” sont utilisés dans tous les domaines (physique, météorologie, économie, biologie, ...)
comme des outils permettant de résoudre des problèmes mathématiques comprenant un grand
nombre de variables.

Les mathématiques et l’analyse d’algorithmes

Dans certaines circonstances, peu de connaissances mathématiques sont requises pour


concevoir un programme informatique. Par exemple, les actions de trier un tableau de
nombres, accéder à une base de données, appliquer un filtre à une image, compresser un
vidéo ou crypter un texte font appel à des techniques déjà existantes. Un programmeur peut
implémenter ces techniques sans trop se creuser la tête. Parfois, il peut aussi trouver une
stratégie pour accomplir la tâche désirée sans nécessairement réfléchir dans un formalisme
mathématique.

Cependant, un informaticien sérieux souhaitera analyser le comportement de son nouveau


programme, pour répondre à l’une ou l’autre des questions suivantes :
— Est-ce que le temps d’exécution requis par mon programme est raisonnable, même
quand le nombre de données à traiter est très grand ?
— Quel est l’espace mémoire requis par mon programme ?
— Puis-je fournir la garantie que mon programme accomplira la tâche demandée dans
tous les cas ?
— Est-ce que mon programme comporte des failles de sécurité ?

Dépendamment du contexte, il est très difficile d’obtenir des réponses complètes à ces ques-
2. Il suffit de citer l’exemple d’une compagnie comme Google, qui a bâti son empire sur des idées novatrices
développées majoritairement en utilisant les outils qu’offrent les mathématiques.
3

tions. Plusieurs domaines de recherche en informatique étudient des méthodes pour analyser
les algorithmes 3 . On peut présumer que s’il y a, encore de nos jours, autant de failles dans
les logiciels, c’est en partie parce que ces méthodes ne sont pas encore assez évoluées pour
bénéficier de toute la logique et de la rigueur des mathématiques.

Le deuxième chapitre de ce cours donne un avant-goût de l’analyse d’algorithmes en


introduisant les outils de base qui permettront d’évaluer le temps d’exécution d’un algorithme.

Les mathématiques et la conception d’algorithmes

L’informatique étant une science relativement jeune, il existe encore beaucoup de problèmes
à résoudre reliés à une grande variété de domaines différents : l’intelligence artificielle, la vi-
sion numérique, la création d’horaires, les prévisions économiques, la simulation des systèmes
climatiques, l’assemblage de génomes, la compréhension du langage naturel, la vérification
automatique de logiciels, etc.

Tous ces problèmes complexes nécessitent d’être formulés rigoureusement avant de pouvoir
être résolus à l’aide d’un programme informatique. La plupart du temps, ce sont les mathéma-
tiques qui se révèlent le langage approprié pour formuler ces problèmes. Une fois le problème
bien formulé, on peut profiter des théories mathématiques déjà existantes pour mieux le
comprendre, pour le simplifier ou pour trouver des pistes de solutions possibles.

Cette approche est mise en évidence dans le troisième chapitre de ces notes de cours,
dédié à la théorie des graphes. En effet, un graphe est une structure mathématique simple
qui a été abondamment étudiée. Dans plusieurs cas, il suffit d’exprimer un problème comme
un graphe pour avoir accès à plusieurs algorithmes efficaces pour le résoudre.

Ce qu’il faut retenir de ce cours

Le cours sera l’occasion d’introduire plusieurs concepts mathématiques et, bien sûr, vous
serez évalués sur la maı̂trise des différentes notions. Cependant, la compréhension sera tou-
jours privilégiée plutôt que le “par coeur”. Comme plusieurs notions abordées ici serviront lors
d’autres cours du programme, ces notes de cours pourront aussi servir de référence ultérieure.

3. Bien que nous n’irons pas si loin dans le cours, la branche de la recherche nommée la “théorie de la
complexité” s’intéresse à des questions encore plus “fondamentales”, telles :
– Étant donné un problème, est-ce qu’il existe un algorithme capable de le résoudre en temps raisonnable ?
– Si je trouve un algorithme efficace pour résoudre le problème A, est-ce que ça me permet de résoudre le
problème B efficacement ? (même si les problèmes A et B sont en apparence de natures très différentes.)
4 CHAPITRE 0. UN PEU DE MOTIVATION

Tout le long du cours, nous accorderons une grande importance aux démonstrations
mathématiques. Il s’agit d’un concept qui n’est pas aussi simple qu’on peut le croire au
départ. L’écriture d’une démonstration mathématique requiert beaucoup de rigueur, et sou-
vent une certaine créativité. De même, il faut lire et écrire plusieurs démonstrations pour bien
en comprendre l’esprit. Les étudiants qui poursuivront leurs études aux cycles supérieurs se-
ront appelés à lire et rédiger des démonstrations lors de leurs travaux de recherche. Cela dit,
l’accent mis sur les démonstrations mathématiques ne sera pas seulement utile aux étudiants
qui poursuivront une carrière en recherche, mais permettra à tous d’exercer leur raisonnement
et leur capacité de déduction face à certains problèmes demandant une dose de réflexion.

Finalement, si ce cours peut vous convaincre que les mathématiques en informatique sont
utiles et agréables, nous aurons atteint notre but !
Chapitre 1

Théorie des ensembles

1.1 Algèbre booléenne

Pour débuter, nous introduisons les bases de la logique booléenne, nommée en l’honneur
du mathématicien et philosophe britannique George Boole (1815 – 1864), qui souhaitait
développer un formalisme pour traduire des concepts et des pensées en équations. Comme
nous le verrons, ce paradigme est très près du langage binaire utilisé en électronique et en
informatique.

1.1.1 Expressions booléennes

Une expression booléenne correspond à un regroupement d’affirmations. On désigne


par le terme expression booléenne atomique une expression booléenne contenant une
seule affirmation. Une affirmation est une phrase, généralement de la forme “sujet-verbe-
complément”, à laquelle il est possible d’attribuer une valeur de vérité. Autrement dit, il est
possible de déterminer si l’affirmation est vraie ou fausse. Par exemple, les quatre affirmations
suivantes peuvent être considérées comme des expressions booléennes atomiques :

— Manille est la capitale des Philippines.


— Cinq est un nombre impair.
— La distance entre la terre et la lune est inférieure à trois kilomètres.
— Dix est plus petit que sept.

Les deux premières affirmations sont vraies tandis que les deux dernières sont fausses.

On peut aussi exprimer des expressions booléennes par des formules mathématiques. Par

5
6 CHAPITRE 1. THÉORIE DES ENSEMBLES

exemple :

— 5+5+5=3·5 .
— 10 < 7 .

Dans ce dernier exemple, la première expression est toujours vraie et la deuxième est tou-
jours fausse. Remarquons que ces deux expressions mathématiques correspondent aussi à
des phrases de la forme “sujet-verbe-complément”. Pour la première expression, le membre
de gauche fait office de sujet, “=” est le verbe et le membre de droite est le complément.
Similairement, pour la deuxième expression, on a que “10” est le sujet de la phrase, “est plus
petit que” représente le groupe verbe et “7” le complément”. Notez également qu’on peut
réécrire ces expressions sous forme d’un texte français : “Cinq plus cinq plus cinq égale trois
fois cinq.” et “Dix est plus petit que sept.”.

Certaines expressions booléennes changent de valeur de vérité dépendamment du contexte


dans lequel elles sont évaluées. Par exemple :

— La capitale de ma province est la ville de Québec.


— x<7.

La valeur de la première expression dépend de la province identifiée par les termes “ma
province”. De même, la deuxième expression dépend de la valeur de la variable x. Si aucune
valeur n’est attribuée à la variable x, on dit qu’il s’agit d’une variable libre, auquel cas il est
impossible d’assigner une valeur de vérité à l’expression “x < 7”. Cependant, pour chaque
valeur de x possible, on peut assigner une valeur de vérité à l’expression. Ainsi, l’expression
est fausse si x ≥ 7, sinon elle est vraie.

Nous nous intéressons maintenant à la combinaison d’expressions booléennes atomiques


en expressions booléennes plus complexes. Nous effectuons de telles combinaisons dans nos
conversations de tous les jours, notamment à l’aide des mots “et”, “ou” et “si-alors”. Par
exemple :

— J’habite à Chicoutimi et la capitale de ma province est la ville de Québec.


— Si j’habite à Chicoutimi, alors la capitale de ma province est la ville de Québec.
— Mon prénom contient la lettre P ou mon prénom contient la lettre S.

Pour vérifier la véracité de ces expressions booléennes, il suffit d’évaluer séparément la


véracité de chacune des expressions booléennes atomiques les constituant. Ainsi, dans le cas
du premier exemple, nous évaluons d’abord la véracité de l’expression “J’habite à Chicou-
timi.”, puis nous évaluons ensuite la véracité de l’expression “La capitale de ma province
est la ville de Québec.”. Nous pouvons enfin juger de la véracité de l’expression booléenne
1.1. ALGÈBRE BOOLÉENNE 7

dans son entier en combinant les valeurs des deux expressions atomiques. Nous procéderons
de façon similaire pour évaluer la valeur de toute expression booléenne. Cette méthodologie
permet de mécaniser l’évaluation d’expressions booléennes complexes.

1.1.2 Opérateurs booléens et tables de vérité

L’algèbre booléenne est le domaine qui permet de combiner plusieurs expressions


booléennes atomiques pour former des expressions booléennes plus complexes. Cela est pos-
sible grâce aux opérateurs booléens. Les pages qui suivent présentent les six opérateurs
booléens qui sont utilisés dans ce cours, c’est-à-dire la négation “¬”, la conjonction “∧”, la
disjonction “∨”, l’implication “⇒”, l’implication inverse “⇐” et le si et seulement si “⇔”.
Ces opérateurs sont définis en représentant les expressions booléennes par des variables
booléennes qui prennent la valeur vrai ou faux. De manière équivalente, on choisit parfois
de représenter la valeur vrai par la lettre v ou le chiffre 1, ainsi que la valeur faux par la
lettre f ou le chiffre 0.

Les trois opérateurs booléens de base

Afin de définir les trois premiers opérateurs booléens, nous avons recours à des tables de
vérité, qui associent à chaque combinaison de valeurs booléennes le résultat de l’évaluation
de l’expression formée par l’opérateur. La définition 1.1.1 présente les opérateurs suivants :

— L’opérateur de négation “¬”, correspondant au “non” du français ;


— L’opérateur de conjonction “∧”, correspondant au “et” du français ;
— L’opérateur de disjonction “∨”, correspondant au “ou” du français.

Définition 1.1.1 Définitions des trois opérateurs booléens de base.


Soit p et q des expressions booléennes. Pour chaque combinaison de valeurs de vérité pos-
sibles, les tables de vérité ci-dessous indiquent le résultat de l’évaluation de la négation, de
la conjonction et de la disjonction.

Négation : Conjonction : Disjonction :


p ¬p p q p∧q p q p∨q
v f v v v v v v
f v v f f v f v
f v f f v v
f f f f f f
8 CHAPITRE 1. THÉORIE DES ENSEMBLES

Les opérateurs d’implication

Nous avons défini les trois premiers opérateurs booléens (la négation “¬”, la conjonc-
tion “∧” et la disjonction “∨”) en présentant leur table de vérité. La logique booléenne repose
entièrement sur ces trois premiers opérateurs, puisqu’ils permettent de définir les trois der-
niers opérateurs booléens que nous utiliserons (l’implication “⇒”, l’implication inverse “⇐”
et le si et seulement si “⇔”) 1 . Bien entendu, il est possible de déduire les tables de vérité de
ces trois derniers opérateurs à partir de leur définition.

Introduisons d’abord les opérateurs d’implication “⇒” et d’implication inverse “⇐”.


On définit l’implication par le recours aux opérateurs de négation et de disjonction introduits
précédemment. Nous définirons par la suite l’implication inverse par une simple réécriture de
l’opérateur d’implication.
def
Dans ce document, nous utilisons le symbole de définition “ = ” pour spécifier qu’une
expression mathématique est définie grâce à une autre expression.

Définition 1.1.2 Définitions des opérateurs d’implications


Soit p et q des expressions booléennes, alors :
def
a : p ⇒ q = ¬p ∨ q (Définition de l’implication)
def
b: p ⇐ q = q ⇒ p (Définition de l’implication inverse)

Spécifions que les expressions “p ⇒ q” et “q ⇐ p” se traduisent en français par “p implique


q” ou “si p alors q”. Les tables de vérité suivantes sont obtenues par l’application directe de
la définition 1.1.2.

Implication : Implication inverse :


p q p⇒q p q p⇐q
v v v v v v
v f f v f v
f v v f v f
f f v f f v

1. En fait, grâce à la loi de De Morgan (Proposition 1.1.4), on n’aurait qu’à définir la conjonction “∧” et
la négation ‘‘¬”, car la disjonction “∨” peut être définie comme “p ∨ q ⇔ ¬(¬p ∧ ¬q)”.
1.1. ALGÈBRE BOOLÉENNE 9

Pensez-y!

L’expression “p ⇒ q” est évaluée à faux seulement lorsque p = vrai et q = faux.


Ce fait peut être difficile à accepter au premier abord, mais il est important de bien le
comprendre.

Pour illustrer ce fait, considérez l’expression suivante :

— “Si le Père Noël existe, alors je recevrai un Nintendo en cadeau.”

On peut réécrire cette expression à l’aide de l’opérateur d’implication :

— “Le Père Noël existe.” ⇒ “Je recevrai un Nintendo en cadeau.”

Par la définition 1.1.2-a, ceci est équivalent à l’expression suivante :

— ¬(“Le Père Noël existe.”) ∨ “Je recevrai un Nintendo en cadeau.”

On constate que cette expression est fausse si et seulement si le Père Noël existe et que je
ne reçois pas de Nintendo en cadeau. Aussi, le fait que le Père Noël n’existe pas n’exclut
pas la possibilité que je reçoive un Nintendo en cadeau !

Les enfants comprennent bien ce raisonnement logique lorsqu’ils remettent en question


la parole d’un compère en prononçant une expression telle que :
— “Si tu es capable de traverser le fleuve à la nage, alors moi je suis le Pape !”

Ici, il est clair que, puisque “je” n’est pas le Pape, la seule manière que l’affirmation soit
vraie est que “tu” ne soit pas capable de traverser le fleuve à la nage.

L’opérateur “si et seulement si”

Nous présentons finalement l’opérateur si et seulement si “⇔”, qui est défini par la
conjonction de deux implications.

Définition 1.1.3 Définition de l’opérateur si et seulement si.


Soit p et q des expressions booléennes, alors :

def
p ⇔ q = (p ⇒ q) ∧ (q ⇒ p) (Définition du si et seulement si)

Notez que l’expression “(p ⇒ q)∧(p ⇐ q)” serait une définition équivalente du si et seulement
si. L’expression “p ⇔ q” se dit “p si et seulement si q” et s’écrit de manière abrégée “p ssi q”.
10 CHAPITRE 1. THÉORIE DES ENSEMBLES

La table de vérité suivante est obtenue par l’application directe de la définition 1.1.3.

Si et seulement si :
p q p⇔q
v v v
v f f
f v f
f f v

On constate que l’expression “p ⇔ q” est vraie lorsque les variables p et q sont égales
(c’est-à-dire qu’elles possèdent la même valeur de vérité). De même, l’expression “p ⇔ q” est
fausse lorsque les variables p et q sont différentes. L’opérateur si et seulement si “⇔” permet
donc d’exprimer la notion d’équivalence entre deux expressions booléennes. C’est pourquoi
cet opérateur apparaı̂t fréquemment dans les propriétés présentées à la section 1.1.3.

Évaluation d’une expression booléenne

On évalue une expression booléenne de manière similaire à la plupart des expressions


arithmétiques communes. Ainsi, il faut d’abord donner priorité aux expressions entre pa-
renthèses. Ensuite, on évalue l’expression selon l’ordre de priorité des opérateurs.

La table 1.1 présente la priorité des opérateurs booléens lors de l’évaluation d’une
expression booléenne. On évalue les opérateurs dans l’ordre décroissant de leur priorité.

Table 1.1 – Priorité des opérateurs booléens.

Symbole(s) Nom(s)
¬ Négation (priorité élevée)
∧ ∨ Conjonction, Disjonction
⇒ ⇐ Implication, Implication inverse
⇔ Si et seulement si (priorité faible)

Grâce à cette convention, l’expression “p∧¬q ⇔ r” équivaut à l’expression “(p ∧ (¬q)) ⇔ r”.
Si on pose les valeurs p = vrai et q = r = faux, on évalue l’expression selon la séquence
suivante :

1. p ∧ ¬q ⇔ r ; 4. vrai ⇔ faux ;
2. vrai ∧ ¬faux ⇔ faux ; 5. faux .
3. vrai ∧ vrai ⇔ faux ;
1.1. ALGÈBRE BOOLÉENNE 11

En guise de récapitulation, la table de vérité 1.2 présente la synthèse des six opérateurs
booléens que nous utiliserons dans le cours.

Table 1.2 – Table de vérité présentant une synthèse des opérateurs booléens utiles dans ce
cours.

p q ¬p p∧q p∨q p⇒q p⇐q p⇔q


v v f v v v v v
v f f v f v f
f v v f v v f f
f f f f v v v

De la logique booléenne à l’informatique

La logique booléenne présentée dans cette première section sera un outil essentiel tout au
long du cours, particulièrement lors des démonstrations mathématiques. Bien que cette forme
de logique peut paraı̂tre simpliste à première vue, étant donné qu’une expression booléenne
peut prendre seulement deux valeurs de vérité (vrai ou faux), elle est à la base de l’in-
formatique telle que nous la connaissons. En effet, les circuits électroniques de nos ordina-
teurs sont des agencements savants de “portes logiques” qui sont la matérialisation de nos
trois opérateurs booléens de base, c’est-à-dire la conjonction “∧”, la disjonction “∨” et la
négation “¬”. De même, le langage binaire utilisé par un ordinateur n’est qu’une succession
de 0 et de 1, c’est-à-dire de valeurs booléennes !

1.1.3 Propriétés des opérateurs et démonstrations par cas

Maintenant que nous avons défini les six opérateurs booléens, nous allons énoncer quelques-
unes de leurs propriétés de base. À l’aide de ces propriétés, il sera possible de transformer des
expressions booléennes complexes en des expressions équivalentes. Ce sera des outils essentiels
pour effectuer plusieurs démonstrations mathématiques.

En plus de présenter certaines propriétés des opérateurs booléens, cette section introduit
une première technique de démonstration, qui consiste à vérifier qu’une expression booléenne
est vraie dans tous les cas possibles.
12 CHAPITRE 1. THÉORIE DES ENSEMBLES

Lois de De Morgan

Les premières propriétés que nous présentons permettent de transformer une conjonction
d’expressions booléennes en disjonction d’expressions booléennes (et vice-versa). Il s’agit des
lois de De Morgan, nommées en l’honneur du mathématicien britannique Auguste De
Morgan (1806 – 1871).

Dans l’énoncé des propositions, nous utilisons fréquemment l’opérateur si et seulement


si “⇔” pour signifier que deux expressions sont équivalentes. Notez que, même s’il s’agit
du même opérateur booléen présenté par la définition 1.1.3 (page 9), nous lui attribuons ici
une signification particulière, puisqu’il sert à exprimer que deux expressions ont toujours la
même valeur de vérité.

Proposition 1.1.4 Lois de De Morgan.


Soit p et q des expressions booléennes, alors les expressions suivantes sont vraies :

a : ¬(p ∧ q) ⇔ ¬p ∨ ¬q (Première loi de De Morgan)


b : ¬(p ∨ q) ⇔ ¬p ∧ ¬q (Deuxième loi de De Morgan)

En mathématiques (comme dans la vie !), une bonne pratique est de confronter chaque
nouvel énoncé à son propre sens de la logique. Cela permet de mieux comprendre la signi-
fication de cet énoncé et de juger s’il est plausible 2 . Dans le cas qui nous intéresse, les lois
de De Morgan sont habituellement bien comprises intuitivement. Par exemple, nous pouvons
appliquer ces lois à des expressions formulées sous forme de phrases :

— Exemple illustrant la proposition 1.1.4-a (Première loi de De Morgan).


Les deux expressions suivantes sont équivalentes :
◦ “Il n’est pas vrai que Paul a payé son loyer et son compte d’électricité.”
◦ “Paul n’a pas payé son loyer ou il n’a pas payé son compte d’électricité.”

— Exemple illustrant la proposition 1.1.4-b (Deuxième loi de De Morgan).


Les deux expressions suivantes sont équivalentes :
◦ “Il n’est pas vrai que Paul a voyagé en Italie ou en Suisse.”
◦ “Paul n’a pas voyagé en Italie et Paul n’a pas voyagé en Suisse.”

Même si ces exemples d’énoncés semblent suggérer que les lois de De Morgan sont
cohérentes, ils ne nous assurent pas qu’elles sont valides dans tous les cas. Afin de se convaincre
2. Mais attention, car certaines vérités sont contre-intuitives, et ce n’est pas parce qu’un énoncé semble
invraisemblable qu’il est nécessairement faux (dans les mathématiques comme dans la vie !).
1.1. ALGÈBRE BOOLÉENNE 13

de la véracité d’un énoncé mathématique, il faut en faire la démonstration. Ainsi, nous al-
lons démontrer la première loi de De Morgan en utilisant le seul outil présentement à notre
disposition, c’est-à-dire la table de vérité.

Une démonstration par table de vérité est une façon structurée de faire une démons-
tration par cas 3 . Nous évaluons donc la proposition 1.1.4-a pour toutes les combinaisons
de valeurs de vérité possibles que peuvent prendre les expressions booléennes p et q. Il y a
quatre possibilités, c’est-à-dire : p = v et q = v, p = v et q = f, p = f et q = v, p = f et
q = f (notez que ces 4 cas sont listés dans les deux premières colonnes de la table présentée
dans la démonstration de la proposition 1.1.4-a ci-bas). Pour chacune des combinaisons,
il faut s’assurer que la valeur de vérité de l’expression booléenne à la gauche du symbole
d’équivalence (“¬(p ∧ q)”) est égale à la valeur de vérité à la droite du symbole d’équivalence
(“¬p ∨ ¬q”).

À la fin de la démonstration, l’acronyme “C.Q.F.D.” signifie “Ce qu’il fallait démontrer”,


et indique au lecteur que nous avons complété la démonstration avec succès.

Démonstration de la proposition 1.1.4-a (Première loi de De Morgan)


Soit p et q deux expressions booléennes. Démontrons “¬(p ∧ q) ⇔ ¬p ∨ ¬q” à l’aide d’une
table de vérité :

p q p∧q ¬(p ∧ q) ¬p ¬q (¬p ∨ ¬q)


v v v f f f f
v f f v f v v
f v f v v f v
f f f v v v v

Pour toutes les combinaisons de valeurs de vérité possibles attribuables aux expressions p
et q, les expressions “¬(p ∧ q)” et “¬p ∨ ¬q” sont équivalentes. .
C.Q.F.D.

Notez que nous avons vraiment fait Ce Qu’il Fallait faire pour Démontrer la véracité de
l’énoncé, car nous avons démontré que la première loi de De Morgan est vraie dans tous les
cas. Le lecteur est invité à démontrer la deuxième loi de De Morgan par la même technique.

3. Nous reviendrons sur le principe général d’une démonstration par cas à la section 1.3.5.
14 CHAPITRE 1. THÉORIE DES ENSEMBLES

Propriétés de la négation, de la conjonction et de la disjonction

Les propositions 1.1.5, 1.1.6 et 1.1.7 introduisent quelques équivalences constituées de


négations, de conjonctions et de disjonction. Ces propriétés se révéleront utiles lors de plu-
sieurs démonstrations.

Proposition 1.1.5 Propriétés de la négation.


Soit p une expression booléenne, alors :

a : ¬(¬p) ⇔ p (Double négation)


b : p ∨ ¬p ⇔ vrai (Tiers exclu)
c : p ∧ ¬p ⇔ faux (Contradiction)

Proposition 1.1.6 Propriétés de la conjonction.


Soit p, q et r des expressions booléennes, alors :

a: p ∧ vrai ⇔ p (Élément neutre)


b: p ∧ faux ⇔ faux (Élément absorbant)
c: p∧p ⇔ p (Idempotence)
d: p∧q ⇔ q∧p (Commutativité)
e: (p ∧ q) ∧ r ⇔ p ∧ (q ∧ r) (Associativité)
f: (p ∨ q) ∧ r ⇔ (p ∧ r) ∨ (q ∧ r) (Distributivité)

Proposition 1.1.7 Propriétés de la disjonction.


Soit p, q et r des expressions booléennes, alors :

a: p ∨ faux ⇔ p (Élément neutre)


b: p ∨ vrai ⇔ vrai (Élément absorbant)
c: p∨p ⇔ p (Idempotence)
d: p∨q ⇔ q∨p (Commutativité)
e: (p ∨ q) ∨ r ⇔ p ∨ (q ∨ r) (Associativité)
f: (p ∧ q) ∨ r ⇔ (p ∨ r) ∧ (q ∨ r) (Distributivité)
1.1. ALGÈBRE BOOLÉENNE 15

Essayons de confronter notre propre sens logique aux énoncés de quelques une de ces
propriétés. Par exemple :

— Exemple illustrant la proposition 1.1.5-b (Tiers exclu).


L’expression suivante est toujours vraie 4 :
◦ “La porte est ouverte ou fermée.”

— Exemple illustrant la proposition 1.1.6-d (Commutativité de la conjonction).


Les deux expressions suivantes sont équivalentes :
◦ “J’habite à Chicoutimi et la capitale de ma province est la ville de Québec.”
◦ “La capitale de ma province est la ville de Québec et j’habite à Chicoutimi.”

— Exemple illustrant la proposition 1.1.7-f (Distributivité de la disjonction).


On peut écrire les conditions d’admissibilité à un programme d’études des deux
manières équivalentes suivantes :
◦ “Pour être admis, l’étudiant doit satisfaire l’un ou l’autre des deux critères ci-bas :
i. Détenir un DEC et réussir un examen de français ;
ii. Être âgé de plus de 21 ans.”
◦ “Pour être admis, l’étudiant doit satisfaire à la fois les deux critères ci-bas :
i. Détenir un DEC ou être âgé de plus de 21 ans ;
ii. Réussir un examen de français ou être âgé de plus de 21 ans.”

Le lecteur suspicieux est encouragé à démontrer les autres énoncés des propositions 1.1.5,
1.1.6 et 1.1.7 par la méthode de démonstration par table de vérité.

En guise d’exemple, démontrons la distributivité de la conjonction à l’aide de cette


méthode. Il s’agit de vérifier que les valeurs de vérité des expressions “(p ∨ q) ∧ r” et
“(p ∧ r) ∨ (q ∧ r)” sont égales pour chaque combinaison possible de valeurs pour les va-
riables p, q et r. Il y a 23 = 8 combinaisons possibles, car il y a 2 valeurs possibles pour
chacune des 3 variables.

4. Le lecteur peut objecter qu’une porte peut être entre ouverte (ou presque fermée). Ce scénario est
difficile à modéliser en logique booléenne, parce que cette dernière ne considère que deux valeurs de vérité,
soit le vrai et le faux. Toutefois, il existe d’autres paradigmes en mathématiques qui permettent d’exprimer
davantage. C’est le cas de la “logique floue” ou de la logique modale, par exemple. La logique modale est
particulièrement intéressante en informatique (en fait, plus particulièrement en sécurité et en analyse de
programmes), car elle permet de modéliser des concepts comme ”éventuellement” ou ”il est possible que”,
etc. Mais ceci est une autre histoire que vous aurez l’occasion de voir durant vos études d’informatique.
16 CHAPITRE 1. THÉORIE DES ENSEMBLES

Démonstration de la proposition 1.1.6-f (Distributivité de la conjonction)


Soit p, q et r trois expressions booléennes. Démontrons “(p ∨ q) ∧ r ⇔ (p ∧ r) ∨ (q ∧ r)” à
l’aide d’une table de vérité :

p q r p∨q (p ∨ q) ∧ r p∧r q∧r (p ∧ r) ∨ (q ∧ r)


v v v v v v v v
v v f v f f f f
v f v v v v f v
v f f v f f f f
f v v v v f v v
f v f v f f f f
f f v f f f f f
f f f f f f f f

Pour toutes les combinaisons de valeurs de vérité possibles attribuables aux expressions p, q
et r, les expressions “(p ∨ q) ∧ r” et “(p ∧ r) ∨ (q ∧ r)” sont équivalentes. .
C.Q.F.D.

Contraposition

La proposition 1.1.8 présente la propriété de contraposition, sur laquelle repose la tech-


nique de démonstration par contraposition. Cette technique de démonstration repose
sur l’astuce suivante : Au lieu de démontrer l’expression “p est vrai implique que q est vrai”,
on démontre l’expression “q est faux implique que p est faux”. Cela peut être plus facile dans
certains contextes et, puisque les deux expressions sont équivalentes, démontrer la deuxième
expression équivaut à démontrer la première.

Nous présentons ici une démonstration par table de vérité de la propriété de contraposition
À la prochaine section, nous allons présenter une autre démonstration possible de la même
propriété, qui repose sur une nouvelle technique de démonstration que nous appellerons
“démonstration par succession d’équivalences”.

Proposition 1.1.8 Contraposition.


Soit p et q des expressions booléennes, alors :

p ⇒ q ⇔ ¬q ⇒ ¬p
1.1. ALGÈBRE BOOLÉENNE 17

Démonstration de la proposition (1.1.8) (Contraposition)


Soit p et q deux expressions booléennes.

p q p⇒q ¬q ¬p ¬q ⇒ ¬p
v v v f f v
v f f v f f
f v v f v v
f f v v v v

Pour toutes les combinaisons de valeurs de vérité possibles attribuables aux expressions p
et q, les expressions “p ⇒ q” et “¬q ⇒ ¬p” sont équivalentes. .
C.Q.F.D.

Pensez-y!

L’étude de la propriété de contraposition permet de mieux comprendre l’opérateur


d’implication.

En posant p = “Le Père Noël existe.” et q =“Je recevrai un Nintendo en cadeau.”, la


propriété de contraposition nous permet d’écrire :

“Si le Père Noël existe, alors je recevrai un Nintendo en cadeau.”


⇔ “Si je ne reçois pas de Nintendo en cadeau, alors le Père Noël n’existe pas”.

De la même manière, on obtient :

“Si tu es capable de traverser le fleuve à la nage, alors je suis le Pape.”


⇔ “Si je ne suis pas le Pape, alors tu n’es pas capable de traverser le fleuve à la nage.”

1.1.4 Démonstrations par succession d’équivalences

Les démonstrations par tables de vérité présentées jusqu’à maintenant consistent à valider
la véracité d’une expression booléenne en vérifiant tous les cas possibles. Cette technique peut
être très longue lorsque l’expression booléenne contient plusieurs variables 5 . Dans ce cas, il
5. En effet, pour une expression booléenne à n variables, la table de vérité nécessite 2n lignes !
18 CHAPITRE 1. THÉORIE DES ENSEMBLES

peut être préférable de démontrer l’expression booléenne en se basant sur les propriétés
que nous avons déjà vérifiées. Comme les mathématiciens disent souvent, il s’agit ici d’être
intelligemment paresseux.

Dans le cadre de ce cours, nous désignons par le terme démonstration par succession
d’équivalences une démonstration structurée où chaque ligne est une manière équivalente
d’exprimer le contenu de la ligne qui la précède 6 . Chaque passage d’une ligne à une autre
sera justifié par l’application d’une définition ou d’une propriété déjà démontrée.

Ainsi, chaque nouvelle proposition peut être utilisée dans les démonstrations d’autres
propositions. La démonstration d’une propriété mathématique est comparable à l’ajout d’une
“brique” au “château des mathématiques”. De ce point de vue métaphorique, les mathémati-
ciens de l’Antiquité ont construit les fondations de ce château, et chaque génération de ma-
thématiciens contribue à sa construction en posant sa brique sur celles de ses prédécesseurs...

Contraposition

Nous présentons ci-dessous une démonstration par succession d’équivalences de la pro-


priété de contraposition (Proposition 1.1.8, page 16). Chaque passage d’une expression à l’ex-
pression suivante y correspond à l’application d’une propriété. Comme chaque propriété uti-
lisée est démontrable par une table de vérité, la véracité de chaque étape de la démonstration
est indéniable.

Démonstration de la proposition 1.1.8 (Contraposition)


Soit p et q deux expressions booléennes. Démontrons “p ⇒ q ⇔ ¬q ⇒ ¬p” :
p⇒q
⇔ h Déf 1.1.2-a – Définition de l’implication i
¬p ∨ q
⇔ h Prop 1.1.5-c – Double négation, avec [p := q] i
¬p ∨ ¬(¬q)
⇔ h Prop 1.1.7-d – Commutativité de la disjonction, avec [p := ¬p] et [q := ¬(¬q)] i
¬(¬q) ∨ ¬p
⇔ h Déf 1.1.2-a – Définition de l’implication, avec [p := ¬q] et [q := ¬p] i
¬q ⇒ ¬p
.
C.Q.F.D.

6. Le cours Logique et techniques de preuve se spécialise dans ce type de démonstrations.


1.1. ALGÈBRE BOOLÉENNE 19

Dans la démonstration ci-dessus, nous avons rigoureusement identifié la propriété per-


mettant de transformer une expression en une expression équivalente par un commentaire.
Lorsque les variables utilisées ne sont pas les mêmes dans la démonstration et l’énoncé d’une
propriété, nous le précisons à l’aide du symbole de substitution de variable “ := ”. Par
exemple, le passage de l’expression “¬p ∨ ¬(¬q)” à l’expression “¬(¬q) ∨ ¬p” est justifié
par le commentaire “Prop 1.1.7-d – Commutativité de la disjonction, avec [p := ¬p] et
[q := ¬(¬q)]”, ce qui signifie que les variables p et q sont respectivement remplacées par les
expressions “¬p” et “¬(¬q)” dans l’énoncé de la proposition 1.1.7-d.

La première ligne de la démonstration ci-dessus (“p ⇒ q”) correspond au terme de gauche


de la loi de la commutativité et la dernière ligne (“¬q ⇒ ¬p”) correspond au terme de droite.
La série d’équivalences “⇔” à chaque ligne permet d’affirmer que le premier et le dernier terme
sont équivalents 7 . Comme dans les démonstrations précédentes, l’acronyme “C.Q.F.D.” à
la fin de la démonstration indique que la démonstration est terminée.

Réécriture de l’opérateur si et seulement si

Afin de présenter un autre exemple de démonstration par succession d’équivalences, nous


allons démontrer l’énoncé suivant :

(p ⇔ q) ⇔ (p ∧ q) ∨ (¬p ∧ ¬q) .

Dans la démonstration qui suit, contrairement à la démonstration de la proposition 1.1.8,


nous omettons volontairement de spécifier les changements de variables dans les commentaires
lorsque ceux-ci sont évidents. De même, nous regroupons quelques fois deux opérations en
une seule étape. Il n’y a pas de règles qui dictent la “bonne” manière de présenter une
démonstration et le niveau de détails requis. Il est important cependant que la démarche
demeure très claire pour le lecteur qui veut comprendre la démonstration.

7. Soulignons ici qu’on se permet un abus de notation dans le formalisme utilisé lors des démonstrations.
En effet, comme l’opérateur si et seulement si “⇔” n’est pas conjonctif (l’expression “a ⇔ b ⇔ c” n’est pas
équivalente à “a ⇔ c”), il faudrait plutôt isoler chaque transformation d’une expression équivalente à l’autre
et écrire “(a ⇔ b) ∧ (b ⇔ c)”. Comme cela alourdirait les démonstrations, on juge qu’il est suffisant, dans ce
contexte précis, de disposer en retrait les symboles “⇔” entre les lignes équivalentes.
20 CHAPITRE 1. THÉORIE DES ENSEMBLES

Démonstration de (p ⇔ q) ⇔ (p ∧ q) ∨ (¬p ∧ ¬q) (Réécriture du si et seulement si )


Soit p et q deux expressions booléennes. Démontrons “p ⇔ q ⇔ (p ∧ q) ∨ (¬p ∧ ¬q)” :

p⇔q
⇔ h Déf 1.1.3 – Définition du si et seulement si i
(p ⇒ q) ∧ (q ⇒ p)
⇔ h Déf 1.1.2-a – Définition de l’implication, 2 fois i
(¬p ∨ q) ∧ (¬q ∨ p)
⇔ h Prop 1.1.6-f – Distributivité de la conjonction, avec [p := ¬p] et [r := (¬q ∨ p)] i
(¬p ∧ (¬q ∨ p)) ∨ (q ∧ (¬q ∨ p))
⇔ h Prop 1.1.6-d – Commutativité de la conjonction, 2 fois i
((¬q ∨ p) ∧ ¬p) ∨ ((¬q ∨ p) ∧ q)
⇔ h Prop 1.1.6-f – Distributivité de la conjonction, 2 fois i
((¬q ∧ ¬p) ∨ (p ∧ ¬p)) ∨ ((¬q ∧ q) ∨ (p ∧ q))
⇔ h Prop 1.1.5-c – Contradiction, 2 fois i
((¬q ∧ ¬p) ∨ faux) ∨ (faux ∨ (p ∧ q))
⇔ h Prop 1.1.7-d – Commutativité de la disjonction, 2 fois i
((p ∧ q) ∨ faux) ∨ ((¬q ∧ ¬p) ∨ faux)
⇔ h Prop 1.1.7-a – Elément neutre, 2 fois i
(p ∧ q) ∨ (¬p ∧ ¬q)
.
C.Q.F.D.

Message important !

Il est important de comprendre que les deux types de démonstrations présentées jusqu’à
maintenant sont également valides. En effet, pour démontrer l’équivalence entre deux expres-
sions booléennes, il est aussi valide d’effectuer une démonstration par table de vérité ou une
démonstration par succession d’équivalences.

1.1.5 Le problème de satisfiabilité d’une équation booléenne

Le problème de satisfiabilité d’une équation booléenne, communément appelé le problè-


me SAT, est fondamental en informatique théorique. Ce problème consiste, étant donné une
expression booléenne, à déterminer s’il existe une assignation de variable qui fait que l’expres-
sion est vraie. Bien que très simple dans sa formulation, le problème SAT suscite beaucoup
1.1. ALGÈBRE BOOLÉENNE 21

d’intérêt en informatique, tant du point de vue pratique que théorique. Une raison à cet
intérêt est qu’il est possible de traduire plusieurs autres problèmes en un problème SAT.

Forme normale conjonctive

L’équation définissant une instance du problème SAT est généralement exprimée sous
une forme standard que l’on désigne par forme normale conjonctive. On parle alors d’un
problème SAT-CNF (l’abréviation CNF vient de l’anglais “conjunctive normal form”). Par
exemple, l’instance φa suivante est exprimée sous forme normale conjonctive :

φa : (x1 ∨ x2 ) ∧ (¬x1 ∨ x3 ) ∧ (¬x2 ∨ ¬x3 ) ∧ (x1 ∨ x2 ∨ x3 ) .

En logique mathématique, le terme littéral désigne une variable booléenne ou la négation


d’une variable booléenne (dans l’expression φa , “x1 ” et “¬x1 ” sont des littéraux) et le terme
clause désigne une disjonction de littéraux (l’expression φa comporte quatre clauses, dont
la première est “x1 ∨ x2 ”). Considérant ces définitions, une forme normale conjonctive est
une conjonction de clauses. À moins de spécifications contraires, une clause peut contenir un
nombre quelconque de littéraux.

Une instance d’un problème SAT-CNF comprend exclusivement les opérateurs de base
présentés par la définition 1.1.1 (page 7) : la disjonction “∨”, la conjonction “∧” et la
négation “¬”. Rappelons que les trois autres opérateurs booléens présentés par les défini-
tions 1.1.2 (page 8) et 1.1.3 (page 9), peuvent être réécrits en utilisant seulement les trois
opérateurs de base. Cependant, il est souvent insuffisant de la réécrire à l’aide des trois
opérateurs de base pour transformer une expression booléenne sous forme normale conjonctive
(c’est-à-dire une conjonction de clauses). Pour ce faire, on peut transformer l’expression
en appliquant les lois de De Morgan (proposition 1.1.4) et les propriétés des opérateurs
(propositions 1.1.6, 1.1.7 et 1.1.5).

Satisfiabilité

On dit qu’une instance du problème SAT est satisfiable lorsqu’il existe une assignation
de variables telle que son expression booléenne est évaluée à vrai. L’instance φa ci-dessus
est satisfiable puisque si x1 = vrai, x2 = faux et x3 = vrai, l’expression est évaluée à vrai.

Une instance est insatisfiable lorsqu’aucune assignation de variables ne permet à son


expression booléenne d’être vraie. Par exemple, l’instance φb suivante est insatisfiable :
22 CHAPITRE 1. THÉORIE DES ENSEMBLES

φb : ¬x1 ∧ (x2 ∨ x3 ) ∧ (x2 ∨ ¬x3 ) ∧ (x1 ∨ ¬x2 ) .

Pour montrer qu’une instance du problème SAT est satisfiable, il suffit de trouver une
assignation de variable pour laquelle l’expression est vraie (comme nous l’avons fait pour
l’instance φa ). Par contre, pour montrer qu’une instance est insatisfiable, il faut montrer
que pour toutes les assignations de variables possibles, l’expression est fausse. Une méthode
simple d’accomplir cette tâche est de vérifier tous les cas à l’aide d’une table de vérité. À
titre d’exemple, la table de vérité suivante montre que l’instance φb est insatisfiable :

c c c c φ
1
z }|2 { z }|3 { z }|4 { z }|b {
¬x1 x2 ∨ x3 x2 ∨ ¬x3 x1 ∨ ¬x2 c1 ∧ c2 ∧ c3 ∧ c4
z}|{
x1 x2 x3
v v v f v v v f
v v f f v v v f
v f v f v f v f
v f f f f v v f
f v v v v v f f
f v f v v v f f
f f v v v f v f
f f f v f v v f

La complexité du problème SAT

Lorsqu’une instance du problème SAT comprend peu de variables, un programme infor-


matique peut très rapidement déterminer si cette instance est satisfiable ou non à l’aide d’une
table de vérité. Cependant, le nombre de lignes requis par la table de vérité augmente expo-
nentiellement en fonction du nombre de variables de l’instance (une instance de n variables
nécessite 2n lignes). Ainsi, une instance comportant plusieurs centaines de variables peut être
très longue à résoudre par cette méthode, même sur un ordinateur très rapide.

Chaque année, de nouveaux programmes informatiques s’affrontent lors d’une compétition


internationale dont le but est de résoudre de grandes instances du problème SAT le plus
rapidement possible 8 . Bien que ces programmes emploient des stratégies astucieuses pour
réduire le temps de calcul nécessaire à l’obtention d’une solution, personne n’a découvert,
à ce jour, une méthode “efficace” pour résoudre le problème SAT. Le temps de calcul “en
pire cas” nécessaire à ces programmes SAT croı̂t toujours exponentiellement en fonction
du nombre de variables de l’instance du problème SAT à résoudre. En fait, la découverte
8. Voir http://www.satcompetition.org/
1.1. ALGÈBRE BOOLÉENNE 23

d’un algorithme pour résoudre le problème SAT dont le temps d’exécution serait polynomial
en fonction du nombre de variables d’instance aurait un impact majeur sur l’informatique,
comme nous l’apprennent les recherches en théorie de la complexité.

En informatique théorique, la théorie de la complexité divise les problèmes en familles


de problèmes de complexité similaires. La famille des problèmes “NP-complets” regroupe
plusieurs problèmes dignes d’intérêt dont le temps d’exécution du meilleur algorithme connu
pour les résoudre est exponentiel, même si une fois la solution trouvée, il est facile de vérifier
qu’elle est bonne. Le problème SAT appartient à cette famille 9 , comme l’a montré en 1971
le mathématicien et informaticien Stephen Cook. Il s’agit d’un résultat important dans l’his-
toire de l’informatique théorique, car ce fut le premier problème “NP-complet” identifié.
Depuis, plusieurs autres problèmes se sont joints à la famille des problèmes “NP-complets”.
La découverte d’un algorithme “efficace” pour résoudre un seul de ces problèmes permettrait
de résoudre tous les autres efficacement. Nous arrêtons ici notre court survol de la théorie de
la complexité. Ce passionnant sujet est abordé dans le cadre du cours “Conception et analyse
d’algorithmes”.

9. En effet, pour trouver la solution d’un problème SAT à n variables, on peut être obligé de considérer
les 2n affectations de variables possibles (car si on est malchanceux, ce sera la dernière qui sera la bonne).
Cependant, une fois la solution trouvée, on peut rapidement vérifier qu’elle est bonne en ne considérant que
cette affectation.
24 CHAPITRE 1. THÉORIE DES ENSEMBLES

1.1.6 Exercices sur l’algèbre booléenne

Exercice 1 : Démontrez les propriétés suivantes à l’aide d’une table de vérité :

a) Deuxième loi de De Morgan (Proposition 1.1.4-b) : ¬(p ∨ q) ⇔ ¬p ∧ ¬q.

b) Distributivité de la disjonction (Proposition 1.1.7-f) : (p ∧ q) ∨ r ⇔ (p ∨ r) ∧ (q ∨ r).

Exercice 2 : Démontrez les propriétés de la technique de démonstration par successions


d’équivalences :

a) Deuxième loi de De Morgan (Proposition 1.1.4-b) : ¬(p ∨ q) ⇔ ¬p ∧ ¬q.


NB : Vous pouvez utiliser la Première loi de De Morgan (Proposition 1.1.4-a) et la
propriété de la double négation (Proposition 1.1.5-a).

b) Distributivité de la disjonction (Proposition 1.1.7-f) : (p ∧ q) ∨ r ⇔ (p ∨ r) ∧ (q ∨ r).


NB : Vous pouvez utiliser les lois de De Morgan (Proposition 1.1.4), la distributivité
de la conjonction (Proposition 1.1.6-f) et la propriété de la double négation (Proposi-
tion 1.1.5-a).

c) Contradiction (Proposition 1.1.5-c) : p ∧ ¬p ⇔ faux.

Exercice 3 : Considérez l’opérateur ou exclusif “Y” possédant la table de vérité suivante :

p q pYq
v v f
v f v
f v v
f f f

Écrivez une définition possible de l’opérateur “Y” en utilisant seulement (justifiez brièvement
vos réponses) :

a) L’opérateur de négation “¬”, de disjonction “∨” et de conjonction “∧” ;

b) L’opérateur de négation “¬” et de disjonction “∨” ;

c) L’opérateur de négation “¬” et le si et seulement si “⇔” .


1.1. ALGÈBRE BOOLÉENNE 25

Exercice 4 : Démontrez chacune des propriétés suivantes à l’aide des deux techniques de
démonstration vues jusqu’à maintenant, c’est-à-dire (i) par une table de vérité et (ii) par une
succession d’équivalences :

a) (¬p ⇔ ¬q) ⇔ (p ⇔ q)

b) (¬p ⇔ q) ⇔ (p ⇔ ¬q)

c) (¬p ⇔ q) ⇔ ¬(p ⇔ q)

d) ( ¬p ⇒ (p ⇒ q) ) ⇔ vrai

e) (p ⇒ (¬p ⇒ q) ) ⇔ vrai

f) (p ⇒ faux) ⇔ ¬p

Exercice 5 : Déterminez si les instances suivantes du problème SAT sont satisfiables. Pour les
instances satisfiables, fournissez une assignation de variables telle que l’expression booléenne
est vraie. Pour les instances insatisfiables, démontrez votre résultat à l’aide d’une table de
vérité.

a) ψa = (x1 ∨ x2 ) ∧ x3 ∧ (¬x1 ∨ ¬x3 ) ∧ (¬x2 ∨ ¬x3 ).

b) ψb = (x1 ∨ x2 ) ∧ x3 ∧ (x1 ∨ ¬x3 ) ∧ (¬x2 ∨ ¬x3 ).

c) ψc = (x1 ∨ x2 ) ∧ (¬x1 ∨ x3 ) ∧ (x1 ∨ ¬x2 ) ∧ (¬x2 ∨ x3 ) ∧ (¬x1 ∨ ¬x3 ).

d) ψd = (¬x1 ∨ ¬x2 ∨ x3 ) ∧ (x1 ∨ ¬x3 ∨ x4 ) ∧ (¬x2 ∨ x3 ∨ ¬x4 ).

Exercice 6 : En utilisant les propriétés que nous avons vues dans cette section, réécrivez les
expression suivantes sous forme normale conjonctive :

a) x1 ⇔ x2

b) (x1 ∨ x2 ) ∧ (x3 ∨ x4 )

c) (x1 ∧ x2 ) ∨ (x3 ∧ x4 )

d) (x1 ⇒ x2 ) ⇒ ((x3 ⇒ x4 ) ⇒ x5 )
26 CHAPITRE 1. THÉORIE DES ENSEMBLES

Exercice 7 : Imaginons qu’on vous demande d’écrire un “solveur SAT”, c’est-à-dire un pro-
gramme informatique qui reçoit en entrée une instance du problème SAT (soit une expression
booléenne sous forme normale conjonctive) et détermine si cette instance est satisfiable.
a) Votre programme reçoit en entrée une instance du problème SAT décrite ainsi :
— Un nombre n indiquant le nombre de variables du problème. On représente ces
variables par x1 , x2 , . . . , xn ;
— Une collection de m clauses que l’on représente par C1 , C2 , . . . , Cm .
On vous fournit une fonction déjà programmée “évaluerClause(Cj , a1 , a2 , . . . , an )”
qui retourne le résultat de l’évaluation de la clause Cj (c’est-à-dire vrai ou faux) avec
l’assignation de valeurs x1 = a1 , x2 = a2 , . . . , xn = an .
Expliquez, en vos mots ou à l’aide d’un pseudo-code, la procédure que doit employer
votre programme pour vérifier si une instance est satisfiable ou insatisfiable. Inspirez-
vous de la méthode que vous utilisez pour bâtir une table de vérité.
b) Transformez l’expression booléenne suivante sous forme normale conjonctive afin de
pouvoir déterminer si elle est satisfiable à l’aide de votre solveur SAT :

¬[ (p ∨ q) ∧ r ⇒ (p ∧ r) ∨ (q ∧ r) ] .

c) Serait-il possible d’utiliser votre programme pour vérifier si une expression booléenne
est toujours vraie ? Si oui, expliquez comment. Sinon, expliquez pourquoi.

Exercice 8 : À la page 47 du présent document, la section 1.3 débute par une citation d’une
pièce d’Eugène Ionesco, digne représentant du théâtre de l’absurde. Dans cette citation, un
prétendu logicien affirme : “Tous les chats sont mortels. Socrate est mortel. Donc Socrate est
un chat.”
a) Expliquez dans vos propres mots pourquoi ce raisonnement est erroné ;
b) Réécrivez l’affirmation de l’aspirant logicien en utilisant les opérateurs booléens. Pour
simplifier la tâche, nous vous suggérons d’utiliser les variables c et m pour représenter
les expressions de la manière suivante :

c = Socrate est un chat,


m = Socrate est mortel.

c) À partir de l’expression booléenne trouvée en (b), démontrez à l’aide d’une table de


vérité que l’affirmation du pauvre logicien est fausse ;
d) Suggérez une modification à l’affirmation du dénommé logicien afin qu’elle soit tou-
jours vraie.
1.2. ENSEMBLES 27

1.2 Ensembles
Maintenant que nous sommes ensemble,
ça va mieux.

Wajdi Mouawad, Incendies (2003)

La théorie des ensembles fut amorcée par le mathématicien allemand Georg Cantor
(1845 – 1918). Un ensemble est une structure mathématique très simple qui permet de re-
grouper plusieurs éléments. Au même titre que nous avons défini des opérateurs booléens
et des expressions booléennes à la section précédente, nous allons maintenant définir des
opérateurs ensemblistes et des expressions ensemblistes. Ces notions permettent de manipu-
ler des ensembles pour en créer de nouveaux et de démontrer certaines de leurs propriétés.
Les propriétés ensemblistes sont très similaires aux propriétés de l’algèbre de Boole que nous
avons vu à la section précédente. En fait ces deux domaines sont intimement liés.

1.2.1 Égalité entre deux ensembles (Axiome d’extensionnalité)

Un ensemble est une collection d’éléments non ordonnée et sans répétitions. Les variables
représentant des ensembles sont habituellement des lettres majuscules et les éléments d’un
ensemble sont indiqués entre accolades. Dans l’exemple qui suit, l’ensemble A contient les
nombres entiers compris entre 1 et 5 inclusivement :

A = {1, 2, 3, 4, 5} .

L’ordre des éléments dans la présentation de l’ensemble n’a pas d’importance, de même que la
présence de répétitions. L’ensemble A peut donc s’écrire de plusieurs manières équivalentes :

A = {5, 1, 3, 2, 4} = {1, 2, 2, 3, 3, 3, 4, 4, 5} = {2, 1, 3, 2, 4, 3, 5} .

Ainsi, un ensemble est défini uniquement par la nature de ses éléments. Il s’agit d’un choix
fait lors de la définition de cette structure mathématique 10 . Ce choix est énoncé par l’axiome
d’extensionnalité, qui définit rigoureusement l’opérateur d’égalité entre ensembles “=”.

La définition 1.2.1 présente deux manières équivalentes d’exprimer l’axiome d’extension-


nalité. Le deuxième énoncé fait appel au quantificateur universel “∀” que nous présenterons
ultérieurement à la section 1.2.4.
10. Lorsqu’on souhaite considérer l’ordre des éléments ou leur multiplicité, on peut le faire en se donnant
des axiomes ou définitions supplémentaires. C’est ce qu’on fera dans la section 1.4 sur la théorie des relations,
où nous définirons entre autres la notion d’ordre partiel.
28 CHAPITRE 1. THÉORIE DES ENSEMBLES

Définition 1.2.1 Axiome d’extensionnalité


Soit S et T deux ensembles, alors :
(
def Pour tout élément e, e appartient à l’ensemble S si et seulement si
S=T =
e appartient à l’ensemble T .

De manière équivalente, on écrit :

def
S = T = (∀e | e ∈ S ⇔ e ∈ T ) .

On utilise aussi parfois l’opérateur d’inégalité entre deux ensembles “6=”, qui est
défini par l’équivalence suivante :

def
S 6= T = ¬(S = T ) .

1.2.2 Définition d’un ensemble et opérateur d’appartenance

Bien que nous travaillerons fréquemment avec des ensembles de nombres, les éléments
d’un ensemble peuvent être de type quelconque. On peut définir des ensembles de mots
français, des ensembles de phrases, des ensembles programmes informatiques, des ensembles
d’expressions booléennes, des ensembles d’ensembles, etc. Voici quelques exemples d’en-
sembles :
— B = {a, e, i, o, u, y}, l’ensemble des voyelles de l’alphabet ;
— C = {Laviolette, Desharnais, Germain}, l’ensemble des auteurs de ce document ;
— D = {2, 4, 6, 8, . . .}, l’ensemble des nombres pairs positifs ;
— B = {faux, vrai}, l’ensemble des booléens ;
— N = {0, 1, 2, 3, . . .}, l’ensemble des nombres naturels ;
— Z = {. . . , −3, −2, −1, 0, 1, 2, 3, . . .}, l’ensemble des nombres relatifs ;
— E = {B, C, D, B, N, Z}, l’ensemble des ensembles énumérés dans la présente liste.

L’opérateur d’appartenance “∈” exprime si un élément appartient à un ensemble. L’ex-


pression “e ∈ S” se dit “l’élément e appartient à l’ensemble S”. Il s’agit d’une expression
booléenne. Elle est donc évaluée à vrai ou faux. En utilisant les exemples énumérés plus
haut, on a :

w ∈ B ⇔ faux, 42 ∈ D ⇔ vrai, faux ∈ B ⇔ vrai,


−5 ∈ N ⇔ faux, −5 ∈ Z ⇔ vrai, N ∈ E ⇔ vrai .
1.2. ENSEMBLES 29

Nous écrivons aussi l’expression “l’élément e n’appartient pas à l’ensemble S” avec la notation
“e ∈
/ S”. L’opérateur “∈”/ est donc défini par l’équivalence suivante :

def
e∈
/ S = ¬(e ∈ S) .

Ainsi, toutes les expressions suivantes sont vraies :

w∈
/ B, 42 ∈ D, faux ∈ B, −5 ∈
/ N, −5 ∈ R, N∈E.

Définition par extension versus définition par compréhension

Jusqu’à maintenant, nous avons présenté les ensembles par leur définition par exten-
sion, c’est-à-dire en énumérant les éléments de l’ensemble (par exemple, “A = {1, 2, 3, 4, 5}”).
Nous introduisons maintenant la définition par compréhension qui consiste plutôt à
présenter les propriétés que respectent les éléments d’un ensemble.

Pour définir un ensemble par compréhension, nous utilisons la notation “S = { f (x) | R(x) }”.
où :
— f (x) est une fonction qui décrit les éléments de l’ensemble ;
— R(x) est une expression booléenne qui permet de restreindre le contenu de l’ensemble.
Autrement dit, on a f (x) ∈ S si et seulement si R(x) = vrai.

Voici quelques exemples d’ensembles définis par compréhension :


— A = {x | x ∈ N∧1 ≤ x ≤ 5}, l’ensemble des nombres entiers entre 1 et 5 inclusivement ;
— B = {x | x est une voyelle }, l’ensemble des voyelles de l’alphabet ;
— N∗ = {x | x ∈ N ∧ x 6= 0}, l’ensemble des nombres naturels excluant le zéro ;
— F = {2x | x ∈ N∗ }, l’ensemble des nombres pairs positifs ;
— G = {2x | x ∈ N ∧ x ≤ 8}, l’ensemble des puissances de 2 de 1 à 256 ;
— Z = {x  | x ∈ N ∨ −x ∈ N}, l’ensemble des nombres relatifs ;
x
— Q= | x ∈ Z ∧ y ∈ N∗ , l’ensemble des nombres rationnels.
y

Pensez-y!

La manière dont est défini un ensemble (par extension ou par compréhension) n’a
aucune influence sur sa composition. Par exemple, on peut imaginer une multitude de
manières de définir l’ensemble des nombres pairs positifs :

{2, 4, 6, 8, . . .} = {2x | x ∈ N∗ } = {x | x ∈ N∗ ∧ x % 2 = 0} = {x | x est pair} = . . .


30 CHAPITRE 1. THÉORIE DES ENSEMBLES

Similairement, plusieurs langages de programmation informatiques implémentent un type


de donnée correspondant à un ensemble, habituellement désigné par le mot-clé anglais
“set”. C’est entre autres le cas du C++, du Python et du Java. L’utilisateur du type de
donnée “set” effectue des opérations d’ajout et de retrait d’éléments sans se soucier de
l’ordre dans lequel les données sont emmagasinées dans la mémoire de l’ordinateur.

Notation abrégée

Remarquons que les ensembles définis par compréhension prennent souvent la forme
“{x | x ∈ T ∧ . . .}”, où on peut interpréter l’ensemble T comme le type de la variable x.
En mathématiques, il est fréquent d’utiliser la notation abrégée “{x ∈ T | . . .}” pour faciliter
l’écriture des ensembles. Par exemple, nous pourrions écrire l’ensemble des nombres entiers
entre 1 et 5 de la manière suivante :

A = {x ∈ N | 1 ≤ x ≤ 5} .

Ensemble vide

On utilise le symbole “∅” pour désigner l’ensemble vide, c’est-à-dire l’ensemble qui ne
contient aucun élément. Par exemple, l’ensemble des nombres plus petits que 1 et plus grand
que 5 est vide : {x | x < 1 ∧ x > 5} = ∅.

Pensez-y!

Notons que l’ensemble {∅} ne correspond pas à l’ensemble vide. En effet, l’ensemble
{∅} contient 1 élément, cet élément étant l’ensemble vide. On a donc :

∅ 6= {∅} et ∅ ∈ {∅} .

Cardinalité d’un ensemble

La cardinalité d’un ensemble correspond au nombre d’éléments qu’il contient. On


note |S| la cardinalité de l’ensemble S. En considérant les définitions d’ensembles données en
1.2. ENSEMBLES 31

exemple dans les pages précédentes, on a |A| = 5, |B| = |E| = 6, |G| = 9 et |B| = 2. Comme
l’ensemble vide ne contient aucun élément, on a |∅| = 0. Par contre, |{∅}| = 1.

Notons que les ensembles suivants contiennent un nombre infini d’éléments : F , N, N∗ , R


et Q. Nous reviendrons de la notion de cardinalité d’un ensemble infini à la section 1.5.

1.2.3 Diagramme de Venn et ensemble universel

Bien qu’il ne fut pas le premier à représenter les ensembles par un schéma, on doit au
mathématicien anglais John Venn (1834 – 1923) les diagrammes de Venn utilisés com-
munément aujourd’hui. Un tel diagramme permet d’illustrer les relations entre les ensembles
que l’on étudie.

Tout diagramme de Venn est délimité par un rectangle représentant l’ensemble universel.
L’ensemble universel, désigné par le symbole U, contient tous les éléments possibles du
problème étudié. Par exemple, si on s’intéresse à un problème ne concernant que les nombres
naturels, on détermine que U = N. Par contre, si on s’intéresse aux noms des auteurs possibles
d’un document alors l’ensemble U pourrait représenter tous les noms de famille possibles.

À l’intérieur du diagramme de Venn, chaque ensemble est représenté par une ellipse. La
figure 1.1 présente trois exemples de diagrammes de Venn.
— Figure 1.1a : L’ensemble T est un sous-ensemble de l’ensemble S, c’est-à-dire que S
contient tous les éléments de T .
— Figure 1.1b : L’ensemble S et l’ensemble T peuvent posséder certains éléments en
commun.
— Figure 1.1c : L’ensemble S et l’ensemble T n’ont aucun élément en commun.

La présence d’un élément dans un ensemble est représentée par un point. Au besoin, on
peut attribuer une étiquette à cet élément. La figure 1.2 présente quelques exemples de tels
diagrammes de Venn :
— Figure 1.2a : L’ensemble T est un sous-ensemble strict de l’ensemble S, c’est-à-dire
que S contient tous les éléments de T et au moins un élément appartient à S sans
appartenir à T .
— Figure 1.2b : L’ensemble S et l’ensemble T possédent au moins un élément en commun.
Cet élément est désigné par e.
— Figure 1.2c : L’ensemble S et l’ensemble T n’ont aucun élément en commun et l’en-
semble S contient au moins trois éléments, désignés par les chiffres 1, 2 et 3.
32 CHAPITRE 1. THÉORIE DES ENSEMBLES

(a) T est inclus dans S. (b) S et T peuvent partager cer- (c) S et T sont disjoints.
tains éléments.

Figure 1.1 – Diagrammes de Venn illustrant trois relations possibles entre


deux ensembles.

(a) T est strictement inclus (b) S et T partagent au moins (c) S et T sont disjoints et S
dans S. l’élément e. possède au moins 3 éléments
(désignés par 1, 2 et 3).

Figure 1.2 – Trois autres exemples de diagrammes de Venn.

Remarquons que les diagrammes de Venn représentés par les figures 1.1b et 1.2b sont
semblables. La distinction entre ces deux diagrammes est que, dans la figure 1.1b, il est
possible que les ensembles S et T ne possède aucun élément en commun. Cependant, la
figure 1.1b précise que les deux ensembles partagent au moins un élément.

1.2.4 Quantificateur universel et quantificateur existentiel

Considérons l’ensemble A des nombres entiers compris entre 1 et 5 inclusivement. Cette


section introduit la notation qui permet de formuler des expressions telles que :
— Tous les éléments de A sont inférieurs à la valeur 10.
— Il existe un nombre pair parmi les éléments de l’ensemble A.
Remarquons que ces deux phrases sont des expressions booléennes. Elles possèdent donc
1.2. ENSEMBLES 33

une valeur de vérité (vrai ou faux). Conséquemment, il est possible de les insérer dans des
expressions booléennes plus complexes lors de démonstrations mathématiques.

Quantificateur universel

Le quantificateur universel “∀” permet d’exprimer si tous les éléments d’un ensemble
possèdent une certaine propriété (exprimée sous forme d’expression booléenne). La notation
du quantificateur universel est la suivante :

(∀x | P (x) ) .

Cette expression est évaluée à vrai si l’expression P (x) est vraie pour toutes les valeurs x.
On la traduit habituellement en français par la phrase “Pour tout x, x satisfait P (x)”.

Considérons l’ensemble A = {1, 2, 3, 4, 5}. L’expression “Tous les éléments de A sont


inférieurs à la valeur 10” s’écrit ainsi à l’aide du quantificateur universel :

(∀x | x ∈ A ⇒ x < 10) .

Pour évaluer l’expression, il suffit de vérifier si chaque élément de l’ensemble A est inférieur
à la valeur 10, ce qui est équivalent à évaluer l’expression booléenne suivante :

(1 < 10) ∧ (2 < 10) ∧ (3 < 10) ∧ (4 < 10) ∧ (5 < 10) .

Il y a donc un fort lien entre le quantificateur universel “∀” et l’opérateur de conjonction “∧”
introduit à la section 1.1.2.

Quantificateur existentiel

Le quantificateur existentiel “∃” permet quant à lui d’exprimer si au moins un des


éléments d’un ensemble possède une certaine propriété. La notation du quantificateur exis-
tentiel est la suivante :
(∃x | P (x) ) .

Cette expression est évaluée à vrai si l’expression P (x) est vraie pour au moins une valeur
de x. On la traduit habituellement en français par la phrase “Il existe un x tel que x satisfait
P (x)”.

L’expression “Il existe un nombre pair parmi les éléments de l’ensemble A” se traduit
34 CHAPITRE 1. THÉORIE DES ENSEMBLES

ainsi à l’aide du quantificateur existentiel 11 :

(∃x | x ∈ A ∧ x % 2 = 0) .

Pour évaluer l’expression, il suffit de vérifier si l’un ou l’autre des éléments de l’ensemble A
est pair, ce qui est équivalent à évaluer l’expression booléenne suivante :

(1 % 2 = 0) ∨ (2 % 2 = 0) ∨ (3 % 2 = 0) ∨ (4 % 2 = 0) ∨ (5 % 2 = 0) .

Il y a donc un fort lien entre le quantificateur existentiel “∃” et l’opérateur de disjonction “∨”
introduit à la section 1.1.2.

Notation abrégée

Il est fréquent qu’une expression contenant un quantificateur universel prenne la forme


“(∀x | x ∈ T ⇒ . . .)” et qu’une expression contenant un quantificateur existentiel prenne
la forme “(∃x | x ∈ T ∧ . . .)”, Dans les deux cas, l’ensemble T peut être considéré comme
le type de la variable x. C’est pourquoi nous utilisons fréquemment les notations définies
ci-dessous 12 :

Définition 1.2.2 Notation abrégée des quantificateurs universel et existentiel


Soit T un ensemble et P (x) une expression booléenne qui dépend d’un élément x ∈ T . Alors :

def
a : (∀x ∈ T | P (x) ) = (∀x | x ∈ T ⇒ P (x) ) (Quantificateur universel)
def
b : (∃x ∈ T | P (x) ) = (∃x | x ∈ T ∧ P (x) ) (Quantificateur existentiel)

Ainsi, nous avons les équivalences suivantes :

(∀x | x ∈ A ⇒ x < 10) ⇔ (∀x ∈ A | x < 10) ,


(∃x | x ∈ A ∧ x % 2 = 0) ⇔ (∃x ∈ A | x % 2 = 0) .

11. L’opérateur arithmétique modulo “%” retourne le reste de la division entière. On a donc x % 2 = 0 si
x est pair et x % 2 = 1 si x est impair.
12. Notez qu’en informatique il arrive qu’on remplace les expressions de formes “(∀x | R(x) ⇒ P (x) )” et
“(∃x | R(x) ∧ P (x) )” par “(∀x | R(x) : P (x) )” et “(∃x | R(x) : P (x) )”. Cela dit, nous n’utiliserons pas ces
formes dans ce cours.
1.2. ENSEMBLES 35

Combinaison d’expressions

Il est possible de combiner plusieurs expressions impliquant des quantificateurs universels


et existentiels afin de construire des expressions plus complexes. Par exemple, l’expression
qui suit équivaut à l’affirmation “Il n’existe pas, dans les naturels, un nombre pair qui soit
un nombre premier.” :

¬ ( ∃x ∈ N | x % 2 = 0 ∧ (∀y ∈ N | 1 < y < x ⇒ x % y 6= 0) ) .

Le domaine des mathématiques qui s’intéresse à ce type d’expressions s’appelle la logique


du premier ordre 13 .

1.2.5 Opérateurs ensemblistes

Similairement aux opérateurs booléens qui permettent de combiner des expressions boolé-
ennes atomiques, il existe des opérateurs sur les ensembles permettant de créer de nouveaux
ensembles en combinant des ensembles existants. C’est le cas des opérateurs ensemblistes de
complément “ c ”, d’union “∪”, d’intersection “∩” et de différence “\”.

D’autres opérateurs ensemblistes permettent de créer des expressions booléennes répondant


à la question : “Est-ce qu’un ensemble est le sous-ensemble d’un autre ensemble ?”. Ce sont
les opérateurs d’inclusion “⊆”, d’inclusion stricte “⊂”, d’inclusion inverse “⊇” et d’inclusion
stricte inverse “⊃”.

Les sections suivantes sont consacrées à la présentation des définitions et des propriétés
des opérateurs ensemblistes.

Opérateurs de composition d’ensembles

Les premiers opérateurs ensemblistes présentés permettent de créer de nouveaux en-


sembles en combinant des ensembles existants. La définition 1.2.3 repose sur les opérateurs
booléens (voir définition 1.1.1), mais leur signification est très intuitive :
— Le complément “S c ” d’un ensemble S contient tous les éléments qui n’appartiennent
pas à l’ensemble S, étant donné un contexte bien défini (c’est-à-dire qu’on doit connaı̂tre
la nature de l’ensemble universel U) ;

13. Voir http://fr.wikipedia.org/wiki/Calcul_des_pr%C3%A9dicats


36 CHAPITRE 1. THÉORIE DES ENSEMBLES

— L’intersection “S ∩ T ” des deux ensembles S et T contient les éléments qui appar-


tiennent à la fois à l’ensemble S et à l’ensemble T ;
— L’union “S ∪ T ” des deux ensembles S et T contient les éléments qui appartiennent
à l’ensemble S ou à l’ensemble T (ou encore aux deux ensembles simultanément) ;
— La différence “S \ T ” de l’ensemble S par l’ensemble T contient les éléments qui
appartiennent à l’ensemble S, mais qui n’appartiennent pas à l’ensemble T .

Définition 1.2.3 Définitions des opérateurs de composition d’ensembles.


Soit S et T des ensembles, alors :

Sc
def
a: = {e | e∈/ S} (Complément)
def
b: S∩T = {e | e ∈ S ∧ e ∈ T} (Intersection)
def
c: S∪T = {e | e ∈ S ∨ e ∈ T} (Union)
def
d: S\T = {e | e∈S∧e∈ / T} (Différence)

La figure 1.3 illustre, par des diagrammes de Venn, les ensembles obtenus par l’application
de ces opérateurs. Similairement aux tables de vérité énumérant les résultats de l’évaluation
des opérateurs booléens (section 1.1.2), les diagrammes de Venn sont suffisamment explicites
pour servir de définitions aux opérateurs. Nous verrons bientôt que les diagrammes de Venn
peuvent aussi servir à démontrer l’équivalence entre des ensembles exprimés de manières
différentes. Cependant, comme il peut être fastidieux d’illustrer un grand nombre d’ensembles
à l’aide d’un diagramme de Venn, ces démonstrations ne peuvent vraiment être utilisées que
pour des cas simples.

(a) Complément S c (b) Intersection S ∩ T (c) Union S ∪ T (d) Différence S \ T

Figure 1.3 – Diagrammes de Venn des opérateurs de composition d’ensembles.


Pour chaque opérateur, la zone du diagramme coloriée en rouge correspond au
nouvel ensemble obtenu.

Opérateurs d’inclusion d’ensembles

Les quatre opérateurs d’inclusions permettent de comparer deux ensembles afin de déterminer
si un ensemble est un sous-ensemble d’un autre. Ils forment des expressions booléennes :
1.2. ENSEMBLES 37

— L’inclusion “T ⊆ S” est évaluée à vrai lorsque tous les éléments de l’ensemble T


appartiennent aussi à l’ensemble S (il s’agit de la situation illustrée par le diagramme
de Venn de la figure 1.1a à la page 32). On dit que “l’ensemble T est inclus dans
l’ensemble S” ou que “l’ensemble T est un sous-ensemble de l’ensemble S”.
— L’inclusion stricte “T ⊂ S” est évaluée à vrai lorsque tous les éléments de l’en-
semble T appartiennent aussi à l’ensemble S, mais que les deux ensembles ne sont pas
égaux (il s’agit de la situation illustrée par le diagramme de Venn de la figure 1.2a à
la page 32). On dit que “l’ensemble T est strictement inclus dans l’ensemble S” ou
que “l’ensemble T est un sous-ensemble strict de l’ensemble S”.
— L’inclusion inverse “T ⊇ S” est évaluée à vrai lorsque l’inclusion “S ⊆ T ” est
vraie. On dit que “l’ensemble T inclut l’ensemble S” ou que “l’ensemble T est un
surensemble de l’ensemble S”.
— L’inclusion stricte inverse “T ⊃ S” est évaluée à vrai lorsque l’inclusion stricte
“S ⊂ T ” est vraie. On dit que “l’ensemble T inclut strictement l’ensemble S” ou que
“l’ensemble T est un surensemble strict de l’ensemble S”.

La définition 1.2.4 ci-bas formalise ces concepts :

Définition 1.2.4 Définitions des opérateurs d’inclusions.


Soit S et T des ensembles, alors :
def
a: T ⊆S = (∀e | e ∈ T ⇒ e ∈ S) (Inclusion)
def
b: T ⊂S = T ⊆ S ∧ (∃e | e ∈ S ∧ e ∈
/ T) (Inclusion stricte)
def
c: T ⊇S = S⊆T (Inclusion inverse)
def
d: T ⊃S = S⊂T (Inclusion stricte inverse)

Pour indiquer la négation d’une expression ensembliste d’inclusion, on peut apposer une
barre oblique sur le symbole d’inclusion. Ainsi, nous obtenons les équivalences suivantes :

def def
T * S = ¬(T ⊆ S), T 6⊂ S = ¬(T ⊂ S),
def def
T + S = ¬(T ⊇ S), T 6⊃ S = ¬(T ⊃ S) .

Ensemble puissance

L’ensemble puissance P(S) de l’ensemble S contient tous les sous-ensembles possibles


de l’ensemble S. Dans la définition ci-dessous, il faut bien comprendre que l’élément e s’avère
être un ensemble.
38 CHAPITRE 1. THÉORIE DES ENSEMBLES

Définition 1.2.5 Définition de l’ensemble puissance.


Soit S un ensemble, alors :
def
P(S) = {e | e ⊆ S}.

Voici des exemples d’ensembles puissances :

P({1, 2, 3}) = { ∅, {1}, {2}, {3}, {1, 2}, {1, 3}, {2, 3}, {1, 2, 3} } ,
P({42}) = { ∅, {42} } ,
P(∅) = { ∅ } .

Remarquons que l’ensemble puissance de n’importe quel ensemble E contient l’ensemble


vide ∅ comme élément, parce que l’ensemble vide est nécessairement sous-ensemble de l’en-
semble E. De même, l’ensemble puissance de l’ensemble vide n’est pas égal à l’ensemble vide
(P(∅) 6= ∅). Il s’agit plutôt d’un ensemble contenant un élément : |P(∅)| = |{∅}| = 1.

Priorité des opérateurs

La table 1.3 présente la priorité des opérateurs qui est utilisée lors de la construction
d’une expression ensembliste. Un opérateur ayant une priorité élevée est évalué avant un
opérateur ayant une priorité faible, à moins que l’usage de parenthèses indique un autre
ordre d’évaluation.

Table 1.3 – Priorité des opérateurs ensemblistes.

Symbole(s) Nom(s)
c Complément (priorité élevée)
\ Différence
∩ ∪ Intersection, Union
⊆ ⊂ ⊇ ⊃ Inclusions, Inclusions strictes
∈ = Appartenance, Égalité
Opérateurs booléens (voir table 1.1, page 10) (priorité faible)

Insistons sur le fait que les opérateurs booléens possèdent une priorité plus faible que les
opérateurs ensemblistes. Par exemple, les deux expressions suivantes sont équivalentes :

A ⊆ B ∪ C ⇒ e ∈ A ∧ (e ∈ T ∨ e ∈ U )
⇔ [ A ⊆ (B ∪ C) ] ⇒ [ (e ∈ A) ∧ ( (e ∈ T ) ∨ (e ∈ U ) ) ] .
1.2. ENSEMBLES 39

1.2.6 Propriétés des opérateurs et démonstrations

Cette section présente plusieurs propriétés des opérateurs ensemblistes définis à la section
précédente. De même, nous présentons les démonstrations de quelques-unes de ces propriétés.
Nous verrons d’abord comment faire une démonstration par cas à l’aide de diagrammes de
Venn. Les démonstrations par diagramme de Venn sont à la théorie des ensembles ce que les
démonstrations par tables de vérité sont à algèbre booléenne. Ensuite, nous présenterons des
démonstrations par succession d’équivalences. Cette technique sera très similaire à celle que
nous avons vue dans la section 1.1.4 sur l’algèbre booléenne.

Lois de De Morgan et démonstration par diagrammes de Venn

Les premières propriétés des opérateurs booléens que nous avons présentées sont les lois de
De Morgan (proposition 1.1.4, page 12). Nous présentons maintenant les lois de De Morgan
appliquées aux ensembles. Il est intéressant de remarquer que, dans cette nouvelle proposi-
tion, l’intersection “∩” vient remplacer la conjonction “∧”, l’union “∪” vient remplacer la
disjonction “∨” et le complément “c ” vient remplacer la négation “¬”.

Proposition 1.2.6 Lois de De Morgan (version ensembliste).


Soit S un ensemble, alors les égalités suivantes sont vraies :

a : (S ∩ T )c = S c ∪ T c (Première loi de De Morgan)


b : (S ∪ T )c = S c ∩ T c (Deuxième loi de De Morgan)

À la section 1.1.2, nous avons vu qu’il est possible de démontrer les propriétés des
opérateurs booléens en énumérant toutes les possibilités à l’aide d’une table de vérité. Si-
milairement, nous pouvons démontrer les propriétés des opérateurs ensemblistes à l’aide de
diagrammes de Venn. Dans les deux contextes, il s’agit de la technique de démonstration
par cas. Nous en donnons ici un exemple en démontrant la version ensembliste de la première
loi de De Morgan.
40 CHAPITRE 1. THÉORIE DES ENSEMBLES

Démonstration de la proposition 1.2.6-a (Première loi de De Morgan)


Soit S et T deux ensembles. Démontrons “(S ∩ T )c = S c ∪ T c ” à l’aide de diagrammes de
Venn. Considérons la représentation suivante des ensembles S et T :

Il s’agit de la représentation la plus générale de deux ensembles, car elle contient tous les
cas possibles 14 , c’est-à-dire qu’un élément peut soit : appartenir simultanément à S et T ,
appartenir à S mais pas à T , appartenir à T mais pas à S ou n’appartenir ni à S et ni à T .

Bâtissons d’abord l’ensemble “(S ∩ T )c ” :

 c
 
=
 
 
 
 
S∩T (S ∩ T )c

Bâtissons ensuite l’ensemble “S c ∪ T c ” :

∪ =
Sc Tc Sc ∪ T c

Les diagrammes de Venn obtenus montrent bien que les éléments appartenant à “(S ∩ T )c ”
sont les mêmes que les éléments appartenant à l’ensemble “S c ∪ T c ”. .
C.Q.F.D.

Le lecteur est invité à démontrer la version ensembliste de la deuxième loi de De Morgan


(proposition 1.2.6-b) à l’aide de la même technique.

14. Nous voyons ici qu’une démonstration par diagramme de Venn est, sous la forme d’un diagramme, une
démonstration par cas, tout comme une démonstration par table de vérité est une démonstration par cas en
algèbre booléenne.
1.2. ENSEMBLES 41

Propriétés du complément, de l’intersection, de l’union et de la différence

Les prochaines propositions énumèrent les propriétés des quatre opérateurs de composi-
tion d’ensembles présentés par la définition 1.2.3 (page 36). Remarquons que ces propriétés
sont directement issues des opérateurs booléens que nous avons présentés à la section 1.1.3.

Proposition 1.2.7 Propriétés du complément.


Soit S un ensemble, alors les égalités suivantes sont vraies :

a : (S c )c = S (Complémentarité)
b : S ∪ Sc = U (Tiers exclu)
c : S ∩ Sc = ∅ (Contradiction)

Proposition 1.2.8 Propriétés de l’intersection.


Soit S, T et U des ensembles, alors les égalités suivantes sont vraies :

a: S∩U = S (Élément neutre)


b: S∩∅ = ∅ (Élément absorbant)
c: S∩S = S (Idempotence)
d: S∩T = T ∩S (Commutativité)
e: (S ∩ T ) ∩ U = S ∩ (T ∩ U ) (Associativité)
f: (S ∪ T ) ∩ U = (S ∩ U ) ∪ (T ∩ U ) (Distributivité)

Proposition 1.2.9 Propriétés de l’union.


Soit S, T et U des ensembles, alors les égalités suivantes sont vraies :

a: S∪∅ = S (Élément neutre)


b: S∪U = U (Élément absorbant)
c: S∪S = S (Idempotence)
d: S∪T = T ∪S (Commutativité)
e: (S ∪ T ) ∪ U = S ∪ (T ∪ U ) (Associativité)
f: (S ∩ T ) ∪ U = (S ∪ U ) ∩ (T ∪ U ) (Distributivité)

Proposition 1.2.10 Propriétés de la différence.


Soit S, T et U des ensembles, alors les égalités suivantes sont vraies :

a: S\∅ = S (Élément neutre)


b: S\T = S ∩ Tc (Réécriture de la différence)
c: S ∪ (T \ S) = S∪T (Union d’une différence)
d: S ∩ (T \ S) = ∅ (Intersection d’une différence)
e: S \ (T ∪ U ) = (S \ T ) ∩ (S \ U ) (Différence d’une union)
f: S \ (T ∩ U ) = (S \ T ) ∪ (S \ U ) (Différence d’une intersection)
42 CHAPITRE 1. THÉORIE DES ENSEMBLES

Démonstrations par succession d’équivalences

Étant donné que nous avons défini les opérateurs ensemblistes en nous basant sur les
opérateurs booléens, les propriétés ci-haut se démontrent aisément en référant aux pro-
priétés des opérateurs booléens déjà démontrées à la section 1.1.3. En guise d’exemple, nous
présentons ci-bas la démonstration de la distributivité de l’intersection et la démonstration
de la distributivité de l’intersection sous la forme d’une démonstration par succession
d’équivalences.

La proposition suivante nous aidera à faire le pont entre les propriétés des opérateurs
ensemblistes et les propriétés des opérateurs booléens. Les propriétés présentées à la proposi-
tion 1.2.11 découlent directement de la définition des opérateurs ensemblistes (définition 1.2.3,
page 36) et de l’axiome d’extensionnalité (définition 1.2.1, page 28).

Proposition 1.2.11 Appartenance d’un élément à un ensemble obtenu par composition.


Soit S et T des ensembles et soit e un élément, alors :

a: e ∈ Sc ⇔ ¬(e ∈ S) (Complément)
b: e∈S∩T ⇔ e∈S∧e∈T (Intersection)
c: e∈S∪T ⇔ e∈S∨e∈T (Union)
d: e∈S\T ⇔ e ∈ S ∧ ¬(e ∈ T ) (Différence)

Nous allons maintenant démontrer deux propriétés en procédant par successions d’équi-
valences, en commençant par la propriété de distributivité de l’intersection. L’étape clé de
cette démonstration est l’utilisation de la propriété de distributivité de la conjonction (pro-
priété 1.1.6), qui est un résultat que nous avons déjà démontré (voir page 15). La deuxième
démonstration est celle de la propriété de distributivité de l’union. La démarche employée est
très semblable à celle de la démonstration de la distributivité de l’union. Il est donc intéressant
ici de constater que le fait de bien comprendre la “mécanique” d’une démonstration d’un
énoncé mathématique peut parfois nous aider à démontrer d’autres énoncés mathématiques
similaires.

Démonstration de la proposition 1.2.8-f (Distributivité de l’intersection)


Soit S, T et U des ensembles. Nous voulons démontrer “(S ∪ T ) ∩ U = (S ∩ U ) ∪ (T ∩ U )”. Par
l’axiome d’extensionnalité (définition 1.2.1, avec [S := (S ∪T )∩U ] et [T := (S ∩U )∪(T ∩U )]),
nous savons que cela est équivalent à démontrer :
(∀e | e ∈ (S ∪ T ) ∩ U ⇔ e ∈ (S ∩ U ) ∪ (T ∩ U ) ) .
1.2. ENSEMBLES 43

Démontrons donc “e ∈ (S ∪ T ) ∩ U ⇔ e ∈ (S ∩ U ) ∪ (T ∩ U )” :
Soit e un élément quelconque.
e ∈ (S ∪ T ) ∩ U
⇔ h Prop 1.2.11-b – Intersection, avec [S := S ∪ T ] et [T := U ] i
e ∈ (S ∪ T ) ∧ e ∈ U
⇔ h Prop 1.2.11-c – Union i
∈ S ∨ e ∈ T) ∧ e ∈ U
(e * +
Prop 1.1.6-f – Distributivité de la conjonction, avec [p := e ∈ S], [q := e ∈ T ]

et [r := e ∈ U ]
(e ∈ S ∧ e ∈ U ) ∨ (e ∈ T ∧ e ∈ U )
⇔ h Prop 1.2.11-b – Intersection, 2 fois i
e ∈ (S ∩ U ) ∨ (e ∈ T ∩ U )
⇔ h Prop 1.2.11-c – Union, avec [S := S ∩ U ] et [T := T ∩ U ] i
e ∈ (S ∩ U ) ∪ (T ∩ U ) . C.Q.F.D.
Démonstration de la proposition 1.2.9-f (Distributivité de l’union)
Soit S, T et U des ensembles. Nous voulons démontrer “(S ∩ T ) ∪ U = (S ∪ U ) ∩ (T ∪ U )”. Par
l’axiome d’extensionnalité (définition 1.2.1, avec [S := (S ∩T )∪U ] et [T := (S ∪U )∩(T ∪U )]),
nous savons que cela est équivalent à démontrer :
(∀e | e ∈ (S ∩ T ) ∪ U ⇔ e ∈ (S ∪ U ) ∩ (T ∪ U ) ) .

Démontrons donc “e ∈ (S ∩ T ) ∪ U ⇔ e ∈ (S ∪ U ) ∩ (T ∪ U )” :
Soit e un élément quelconque.
e ∈ (S ∩ T ) ∪ U
⇔ h Prop 1.2.11-c – Union, avec [S := S ∩ T ] et [T := U ] i
e ∈ (S ∩ T ) ∨ e ∈ U
⇔ h Prop 1.2.11-b – Intersection i
∈ S ∧ e ∈ T) ∨ e ∈ U
(e * +
Prop 1.1.7-f – Distributivité de la disjonction, avec [p := e ∈ S], [q := e ∈ T ]

et [r := e ∈ U ]
(e ∈ S ∨ e ∈ U ) ∧ (e ∈ T ∨ e ∈ U )
⇔ h Prop 1.2.11-c – Union, 2 fois i
e ∈ (S ∪ U ) ∧ (e ∈ T ∪ U )
⇔ h Prop 1.2.11-b – Intersection, avec [S := S ∪ U ] et [T := T ∪ U ] i
e ∈ (S ∪ U ) ∩ (T ∪ U ) . C.Q.F.D.

La technique de démonstration par succession d’équivalences peut être utilisée pour


démontrer toutes les propriétés des opérateurs ensemblistes rencontrées jusqu’à maintenant.
44 CHAPITRE 1. THÉORIE DES ENSEMBLES

Propriétés des opérateurs d’inclusions

Les propriétés suivantes permettent de réécrire certaines expressions ensemblistes compre-


nant des opérateurs d’inclusion (voir la définition 1.2.4, page 37). Insistions sur la première
propriété, qui stipule que l’ensemble vide ∅ est un sous-ensemble de tous les ensembles pos-
sibles.

Proposition 1.2.12 Propriétés d’équivalences de l’inclusion.


Soit S, T et U des ensembles, on a :

a: ∅⊆S ⇔ vrai (Omniprésence de l’ensemble vide)


b: S⊆S ⇔ vrai (Réflexivité)
c: S⊂S ⇔ faux (Irréflexivité)
d: S=T ⇔ S ⊆T ∧T ⊆S (Antisymétrie)
e: S⊆T ⇔ S ⊂T ∨S =T (Réécriture de l’inclusion)
f: S⊂T ⇔ S ⊆T ∧T =
6 S (Réécriture de l’inclusion stricte)

La propriété d’antisymétrie (proposition 1.2.12-d) sera démontrée à la section 1.3.4 (page 51)
portant sur les techniques de démonstration.

Alors que la proposition 1.2.12 présente des propriétés d’équivalence entre des expressions
ensemblistes, la proposition qui suit présente des implications. Ainsi, pour chacune de ces
propriétés, le fait que l’expression à gauche de l’implication soit vraie permet de déduire le
terme à droite de l’implication. Par contre, si le terme de droite est vrai, on ne peut rien
déduire du terme de gauche. La figure 1.4 illustre ce phénomène par deux diagrammes de
Venn en prenant comme exemple la propriété de transitivité (proposition 1.2.13-h).

Proposition 1.2.13 Propriétés d’implications de l’inclusion.


Soit S, T et U des ensembles, alors les implications suivantes sont vraies :

a: S⊂T ⇒ S⊆T
b: S⊂T ⇒ T *S
c: S⊂T ⇒ T 6⊂ S
d: S ⊂T ∧U *T ⇒ U *S
e: S ⊆T ∧T ⊆U ⇒ S⊆U (Transitivité (1))
f: S ⊆T ∧T ⊂U ⇒ S⊂U (Transitivité (2))
g: S ⊂T ∧T ⊆U ⇒ S⊂U (Transitivité (3))
h: S ⊂T ∧T ⊂U ⇒ S⊂U (Transitivité (4))
1.2. ENSEMBLES 45

U U

(a) S ⊂ T ∧ T ⊂ U ⇒ S ⊂ U (b) ¬(S ⊂ T ∧T ⊂ U ⇐ S ⊂ U )

Figure 1.4 – Le diagramme de gauche illustre la propriété de transitivité


(proposition 1.2.13-h). Le diagramme de droite illustre un cas où cette propriété
ne peut pas être inversée (Le fait que S ⊂ U ⇔ vrai n’implique pas que
S ⊂ T ⇔ vrai).

1.2.7 Exercices sur les ensembles

Exercice 1 : Définissez les ensembles suivants par compréhension :


a) l’ensemble des entiers non négatifs plus petits que 4 ;
b) l’ensemble des entiers strictement positifs divisibles par 3 et plus petits que 4 ;
c) l’ensemble des nombres impairs ;
d) l’ensemble des carrés dont la racine est située entre 10 et 22 ;
e) l’ensemble des puissances de 2.

Exercice 2 : Donnez une description en langue française des ensembles suivants :


a) {x ∈ Z | 0 < x ∧ x est pair} ;
b) {x ∈ N∗ | 0 < x ∧ x % 2 = 0} ;
c) {p | q ∈ Z ∧ r = 2 ∧ p > 0 ∧ p = q · r} ;
d) {z ∈ N∗ | (∃y ∈ Z | 2y = z)} ;
e) {z ∈ Z | −1 < z ∧ (∃x ∈ Z | z = x · y) ∧ (y = 2 ∨ y = 3)} ;
f) {z ∈ Z | −1 < x ∧ 1 < y < 4 ∧ z = x · y}.

Exercice 3 :
a) Définissez l’ensemble suivant par compréhension. L’ensemble des nombres premiers
compris entre 10 et 30. Vous pouvez utiliser la fonction booléenne premier(i) qui
retourne la valeur de l’expression “i est un nombre premier”, c’est-à-dire vrai si i est
premier, faux sinon.
46 CHAPITRE 1. THÉORIE DES ENSEMBLES

b) Décrivez l’ensemble suivant en français.

{x | y ∈ N ∧ z ∈ {2, 3} ∧ x = y z }

Exercice 4 : Soit l’ensemble de couleurs C = {rouge, vert, bleu}. Écrivez les ensembles
suivants en extensions :
a) P(C) ;
b) P(C) ∩ ∅ ;
c) P(C) ∩ P(∅) ;
d) {c ∈ P(C) | 2 > |c|} ;
e) {c ∈ P(C) | c ⊆ {rouge, bleu}} ;
f) {c ∈ P(C) | {rouge, bleu} ⊆ c} .

Exercice 5 : Démontrez chacune des propriétés suivantes à l’aide des deux techniques de
démonstration vues jusqu’à maintenant, c’est-à-dire (i) à l’aide de diagrammes de Venn
(démonstration par cas) et (ii) par une succession d’équivalences :
a) Complémentarité (Proposition 1.2.7-a) : (S c )c = S ;
b) Deuxième loi de De Morgan appliquée aux ensembles (Proposition 1.2.6-b) :
(S ∪ T )c = S c ∩ T c ;
c) Réécriture de la différence (Proposition 1.2.10-b) : S \ T = S ∩ T c .
d) Différence d’une union (Proposition 1.2.10-e) : S \ (T ∪ U ) = (S \ T ) ∩ (S \ U ) ;
1.3. TECHNIQUES DE DÉMONSTRATION 47

1.3 Techniques de démonstration

Le logicien : Tous les chats sont mortels. Socrate est


mortel. Donc Socrate est un chat.
Le vieux monsieur : [...] Socrate était donc un chat !
Le logicien : La logique vient de nous le révéler.

Eugène Ionesco, Rhinocéros (1959)

Dans les sections précédentes, nous avons introduit certaines techniques de démonstration,
principalement les démonstrations par cas (dans les situations particulières des démonstra-
tions à l’aide des tables de vérité et des diagrammes de Venn) et les démonstrations par
successions d’équivalences. Ces types de démonstrations sont très “mécaniques”. En effet, on
peut concevoir sans trop de difficultés des algorithmes permettant de vérifier si telle ou telle
démonstration est valide ou non.

Les différentes démonstrations présentées dans cette section prennent davantage la forme
d’un véritable texte français. Elles reposent sur les mêmes règles mathématiques que les
démonstrations qu’on a vu jusqu’à maintenant, mais on y met davantage l’accent sur la si-
gnification des énoncés. Ainsi, ces démonstrations sont destinées à être lues (et comprises) par
un humain plutôt qu’un ordinateur. Il s’agit d’une approche plus répandue en mathématique.

Les pages suivantes contiennent une série d’exemples et de stratégies pour effectuer une
démonstration. Les démonstrations mathématiques consistent bien entendu en quelque chose
de plus complexe que les exemples exposés ici. Cependant, ces derniers serviront de balises
pour les démonstrations relativement simples qui seront demandées à l’intérieur de ce cours.
Pour les démonstrations plus costaudes, vous n’aurez pas à les faire par vous-mêmes, mais
seulement (et c’est déjà pas mal) à les comprendre.

L’approche présentée ici est basée principalement sur deux questions importantes :
1. Que faire si l’énoncé qu’on souhaite démontrer contient un quantificateur universel
(c’est-à-dire un “∀”) ?
2. Que faire si l’énoncé qu’on souhaite démontrer contient un quantificateur existentiel
(c’est-à-dire un “∃”) ?
Ce sont les idées les plus importantes, mais il faut quand même savoir quoi faire pour
démontrer la conjonction “∧”, la disjonction “∨”, l’implication “⇒” et le si et seulement
si “⇔”. Ces derniers se raisonnent plus intuitivement que “∀” et “∃”.

Il importe d’être conscient qu’il n’existe pas de techniques de démonstration qui soient
meilleures que d’autres, pourvu que toutes les démonstrations soient effectuées avec la même
48 CHAPITRE 1. THÉORIE DES ENSEMBLES

rigueur mathématique. Pour un certain énoncé, il y aura parfois des démonstrations qu’on
pourra juger plus “élégantes” que d’autres, parce qu’elles sont plus succinctes, plus faciles à
comprendre ou qu’elles nous aident à comprendre le problème auquel on s’intéresse. Souvent,
il s’agira d’une question de préférences personnelles. C’est à force de lire des démonstrations
et d’en écrire soi-même qu’on développe un intérêt pour les “belles” démonstrations.

1.3.1 Structure des démonstrations d’un quantificateur universel “∀”

Supposons que nous devons démontrer une propriété de la forme suivante :

(∀x ∈ X | P (x) ) .

Pour ce faire, il suffit de démontrer que pour une entité inconnue fixée x appartenant à
l’ensemble X, on peut déduire que x satisfait P . Quand on dit une entité inconnue, on
veut dire qu’on ne peut rien présumer sur elle (sauf le fait qu’elle appartient l’ensemble X).
Quand on dit une entité fixée, on veut dire qu’on ne la changera pas en cours de route.

Ainsi, la démonstration d’un énoncé commençant par un quantificateur universel “∀” sera
toujours structurée comme suit :

Démonstration de (∀x ∈ X | P (x)).


Soit x ∈ X.
Alors pour telle raison blablabla.
Ce qui implique ceci et cela...
Et on peut finalement en conclure que P (x) est vrai. .
C.Q.F.D.

Notez que la démonstration commence par une “présentation” de la variable x , de son


type et, le cas échéant, de la ou les propriétés que nous savons que cette variable satisfait.
C’est une étape essentielle. Dans une démonstration, on ne peut utiliser une variable qui n’a
pas été “présentée”, on doit d’abord s’entendre avec le lecteur sur ce qu’est cette inconnue.
En échange, une fois cette étape faite, même si la valeur de la variable est inconnue, elle ne
changera plus jusqu’à la fin de la démonstration. Autrement dit, une fois “présentée”, une
variable reste inconnue, mais ne varie plus. Vous verrez par la suite que le moment où on
choisit ou prend une variable fait une différence. Les lettres C.Q.F.D. signifient “Ce qu’il
fallait démontrer”. Alors avant de les écrire, il est important de s’assurer que ce qu’on a fait
est bien ce qu’il fallait démontrer.
1.3. TECHNIQUES DE DÉMONSTRATION 49

Notez également que la démonstration se termine par le fait qu’après plusieurs étapes
d’argumentation mathématiquement correctes, on en arrive à conclure que cette variable x
doit obligatoirement satisfaire la propriété P .

1.3.2 Structure des démonstrations d’un quantificateur existen-


tiel “∃”.

Supposons que nous voulons démontrer une expression de la forme suivante :

(∃x ∈ X | P (x) ) .

Cela demande de trouver un élément x de l’ensemble X dont on est sûr de l’existence. Il


faut aussi choisir “intelligemment” ce x de telle sorte que ce x satisfasse aussi la propriété P .

Ainsi, la démonstration d’un énoncé commençant par un quantificateur existentiel “∃”


sera toujours structurée comme suit :

Démonstration de (∃x ∈ X | P (x)).


Soit x ∈ X, choisi de telle façon. . h Un tel x existe, car blablabla. i
Alors pour telles et telles raisons, on a donc ceci et cela...
Ce qui nous permet de conclure que P (x) est vrai. .
C.Q.F.D.

Notez qu’ici encore, on n’utilise pas une variable sans l’avoir préalablement présentée.
Mais contrairement à la situation du quantificateur universel “∀”, on doit au moment de sa
présentation être sûr de l’existence d’une telle variable (puisque l’affirmation est justement
qu’elle existe). L’unique raison pour laquelle à la section 1.3.1 on ne se préoccupe pas de
savoir si un tel x existe, c’est que s’il n’existe pas de x ∈ X, alors “(∀x ∈ X | P (x))” est
nécessairement vrai.

1.3.3 Une démonstration avec une implication “⇒”

Pour démontrer “P ⇒ Q”, il suffit de supposer que P est vrai et d’en déduire Q. Nous
présentons d’abord un exemple d’une démonstration avec un quantificateur universel “∀”
puis un autre exemple contenant un quantificateur existentiel “∃”.
50 CHAPITRE 1. THÉORIE DES ENSEMBLES

Démonstration de “Pour tout ensemble S et T , on a S ⊆ T ∪ S”.


On veut démontrer (∀e | e ∈ S ⇒ e ∈ T ∪ S) . h Définition 1.2.4-a – Inclusion i
Soit e un élément, et supposons e ∈ S. . h on veut montrer e ∈ T ∪ S i
Comme e ∈ S, alors “e ∈ T ou e ∈ S” est vrai.
Donc on a e ∈ T ∪ S. . h définition de T ∪ S i
.
C.Q.F.D.

Remarquez qu’au cours d’une démonstration il est très utile, et souvent essentiel pour ne
pas s’embourber, d’écrire spécifiquement ce que nous sommes en train de démontrer dans
cette étape. C’est ce qu’on fait ici lorsqu’on dit “on veut montrer e ∈ T ∪ S”.

La prochaine démonstration utilise la structure des démonstrations avec un quantificateur


existentiel présentée à la section 1.3.2. Notez que nous réutilisons au passage le résultat que
nous venons de démontrer (c’est-à-dire que pour deux ensembles S et T quelconques, on a
S ⊆ T ∪ S). Il est toujours encouragé d’appuyer une nouvelle démonstration sur un résultat
déjà démontré, entre autres puisque cela évite de refaire le travail qui a déjà été fait !

Démonstration de “Pour tout ensemble (fini) S et T , on a |S| < |T | ⇒ S ⊂ T ∪ S”.


On suppose d’abord |S| < |T | et on montre S ⊂ T ∪ S.
Autrement dit, on veut montrer S ⊆ T ∪ S ∧ (∃e | e ∈ T ∪ S ∧ e ∈ / S)
. h Définition 1.2.4-b – Inclusion stricte i
Pour qu’une conjonction soit vraie, chacune des deux expressions qui la composent doivent
être vraies. Nous allons montrer séparément “S ⊆ T ∪ S” et “(∃e | e ∈ T ∪ S ∧ e ∈ / S).”
1 – Montrons d’abord S ⊆ T ∪ S :
Par démonstration précédente, on sait que S ⊆ T ∪ S pour tout ensemble S et T .
. h Point 1 démontré i
2 – Montrons maintenant (∃e | e ∈ T ∪ S ∧ e ∈ / S) :
Soit e un élément choisi tel que e ∈ T mais e ∈ /S
. h Par la supposition de départ, un tel e existe car |S| < |T | i
Comme e ∈ T , alors “e ∈ T ou e ∈ S” est vrai.
On a donc e ∈ T ∪ S . h définition de T ∪ S i
Ainsi, par ce choix de l’élément e, on a bien e ∈ T ∪ S ∧ e ∈ / S.
. h Point 2 démontré i
Puisque les points 1 et 2 ont été démontrés avec succès, nous concluons que S ⊂ T ∪ S.
.
C.Q.F.D.

Une démonstration avec une implication inverse “⇐” se traite de la même façon, symé-
triquement : pour démontrer “P ⇐ Q”, on suppose Q et on en déduit P .
1.3. TECHNIQUES DE DÉMONSTRATION 51

1.3.4 Une démonstration avec un ssi “⇔”

Que fait-on avec les énoncés contenant un si et seulement si “⇔” ? Dans une démonstration
par successions d’équivalences, ceci se démontre en une étape, mais, dans une démonstration
plus “classique”, il est commun de démontrer séparément “P ⇒ Q” et “P ⇐ Q00 . Nous
basons notre technique de démonstration sur la définition de l’opérateur si et seulement si
(voir la définition 1.1.3 à la page 9) :

def
P ⇔Q = (P ⇒ Q) ∧ (P ⇐ Q) .

La démonstration suivante est importante, car c’est cette propriété qui nous permet de
démontrer que deux ensembles sont égaux ssi ils sont inclus l’un dans l’autre, ce qui rend
souvent les démonstrations d’égalité d’ensemble plus faciles.

Démonstration de la propriété 1.2.12-d (Antisymétrie de l’inclusion)


Nous voulons démontrer S ⊆ T ∧ T ⊆ S ⇔ S = T .
⇒ : Supposons (♥) S ⊆ T ∧ T ⊆ S. . h on veut montrer (†)(∀e | e ∈ S ⇔ e ∈ T ) i
Soit e. . h on veut montrer e ∈ S ⇔ e ∈ T i
⇒ : Supposons que e ∈ S alors par (♥) on a e ∈ T . . h le “⇒” de (†) est démontré i
⇐ : Supposons que e ∈ T alors par (♥) on a e ∈ S. . h le “⇐” de (†) est démontré i

. h ⇒ est démontré i
⇐ : Supposons S = T , i.e., (♥♥) (∀e | e ∈ S ⇔ e ∈ T ). .h on veut montrer S ⊆ T ∧ T ⊆ S i

Pour démontrer un ET, on démontre les deux composantes séparément.


— Démontrons S ⊆ T . . h c’est-à-dire (∀e | e ∈ S ⇒ e ∈ T ) i
Soit e ∈ S.
Par (♥♥), on a e ∈ T , comme voulu.

— Démontrons T ⊆ S. . h c’est-à-dire (∀e | e ∈ T ⇒ e ∈ S) i


Soit e ∈ T .
Par (♥♥), on a e ∈ S, comme voulu.
. h ⇐ est démontré i
Conclusion,
. nous avons bien démontré ⇔ dans les 2 directions.
C.Q.F.D.
52 CHAPITRE 1. THÉORIE DES ENSEMBLES

1.3.5 Démonstration par cas

Il arrive qu’on ne réussisse pas à démontrer l’énoncé “(∀x ∈ X | P (x))”, d’un seul coup
pour tous les x. Alors, on peut faire une démonstration par cas : on choisit des ensembles
X1 , X2 , X3 , . . . dont l’union est l’ensemble domaine X (il faut en être certain !) et on vérifie
séparément chacune des expressions suivantes :

(∀x ∈ X1 | P (x)), (∀x ∈ X2 | P (x)), (∀x ∈ X3 | P (x)), . . .

La démonstration par cas est souvent utilisée pour démontrer un OU, comme dans la
deuxième partie de la démonstration suivante, où on veut démontrer la distributivité de
l’union (propriété 1.2.9-f, page 41). Rappelons que nous avons déjà démontré cette pro-
priété en combinant des axiomes dans une série d’équivalences (voir la page 43). Bien que
la démonstration présentée ici se révèle un peu plus longue, les démonstrations par cas sont
parfois très concises.

Démonstration de la propriété 1.2.9-f (Distributivité de l’union)


Nous voulons démontrer :

S ∪ (T ∩ U ) = (S ∪ T ) ∩ (S ∪ U ) .

Utilisons l’antisymétrie de l’inclusion (propriété 1.2.12-d) et démontrons à tour de rôle chaque


inclusion.

⊆ : Soit s ∈ S ∪ (T ∩ U ) . h on veut s ∈ (S ∪ T ) ∩ (S ∪ U ) i
Donc s ∈ S ou s ∈ (T ∩ U ) : ce seront nos 2 cas qui couvrent notre domaine :
— 1er cas s ∈ S :
alors s ∈ S ∪ T et s ∈ S ∪ U . h car on a S ⊆ S ∪ T et S ⊆ S ∪ U i
donc s ∈ (S ∪ T ) ∩ (S ∪ U ) . h 1er cas démontré i
— 2e cas s ∈ T ∩ U :
alors s ∈ T et s ∈ U
donc s ∈ S ∪ T et s ∈ S ∪ U . h car on a T ⊆ S ∪ T et U ⊆ S ∪ U i
donc s ∈ (S ∪ T ) ∩ (S ∪ U ) . h 2e cas démontré i

Les 2 cas ayant couvert toutes les possibilités, l’inclusion est démontrée 15 .

15. Notez que pour le 2e cas, on aurait pu dire “s ∈ (T ∩ U ) \ S” pour avoir une vraie partition, mais ce
n’est pas nécessaire puisque ce qui importe est que tous les s possibles soient vérifiés (ici certains le sont deux
fois).
1.3. TECHNIQUES DE DÉMONSTRATION 53

⊇ : Soit s ∈ (S ∪ T ) ∩ (S ∪ U ) . h on veut s ∈ S ∪ (T ∩ U ) i
donc s ∈ (S ∪ T ) et s ∈ (S ∪ U )
— 1er cas s ∈ S :
alors s ∈ S ∪ (T ∩ U ) . h 1er cas démontré i
— 2e cas s 6∈ S :
alors s ∈ T et s ∈ U . h Par hypothèse, s ∈ (S ∪ T ) et s ∈ (S ∪ U ) i
Donc s ∈ T ∩ U .
alors s ∈ S ∪ (T ∩ U ) . h 2e cas démontré i

Comme S ∪ S c donne l’ensemble universel U, nous avons traité tous les cas. L’inclusion
inverse est démontrée. .
C.Q.F.D.

1.3.6 Démonstrations utilisant les propriétés de l’arithmétique

À l’intérieur de ce cours, nous tiendrons toutes les propriétés de l’arithmétique pour


acquises. Ainsi, les propriétés de base des opérateurs d’addition, de soustraction, de multi-
plication, de division sont supposées connues de tous et n’ont donc pas à être explicitement
justifiées. Par exemple, nous savons tous que si n est un nombre naturel, n + 1 est plus grand
que n. Dans un tel cas, un simple commentaire de la forme “Propriété de l’arithmétique”
suffira.

Il est toutefois important d’être rigoureux dans l’application de ces propriétés. Par exemple,
attardons-nous à l’énoncé suivant :

(∀n ∈ N | (∃m ∈ N | m > n)) .

Nous présentons une première tentative de démonstration incorrecte (qui peut sembler
valide si on ne prend pas le temps d’y réfléchir suffisamment), puis une seconde démonstration
qui est valide.

Démonstration (incorrecte) de (∀n ∈ N | (∃m ∈ N | m > n)).


Soit n ∈ N.
Soit m, un nombre qui est plus grand que tout nombre naturel.
Alors bien sûr, on a que m > n.
C.Q.F.D. (Incorrecte)
54 CHAPITRE 1. THÉORIE DES ENSEMBLES

Bien évidemment, ce qui cloche dans cette démonstration, c’est qu’il n’existe pas de tel
nombre magique m. Cependant, si pour une raison ou une autre, on pouvait démontrer qu’un
tel nombre existe, alors la démonstration deviendrait correcte. En attendant, voici ce qu’il
faut faire :

Démonstration (correcte) de (∀n ∈ N | (∃m ∈ N | m > n)).


Soit n ∈ N.
Soit m = n + 1, . h Un tel m existe et m ∈ N – Voir les propriétés de l’arithmétique. i
Alors bien sûr, on a que m = n + 1 > n. . h Propriété de l’arithmétique. i
.
C.Q.F.D.

Notez que le m qu’on a choisi ici est construit à partir du n qui avait préalablement été
présenté, ce qui est tout à fait légal. On n’aurait cependant pas pu faire un tel argument si
nous avions eu à démontrer “(∃m ∈ N | (∀n ∈ N | m > n))”. D’ailleurs, ce dernier énoncé
est faux, donc impossible à démontrer.

1.3.7 Démonstrations avec un “¬∃” ou un “¬∀”

Que fait-on avec les énoncés contenant un “¬∃” ou un “¬∀” ? Il serait difficile de “présenter”
une variable x qui “n’existe pas”. La stratégie consiste à transformer la négation en énoncé
positif, comme dans l’exemple de démonstration qui suit.

Démonstration de ¬(∃m ∈ N | m > m2 )


Nous devons démontrer :

“il n’est pas vrai qu’il existe un m naturel qui est plus grand que son carré”.

Si ce naturel n’existe pas, c’est que tous les nombres satisfont le contraire. On peut trans-
former l’énoncé en “(∀m ∈ N | ¬(m > m2 ))”, ou encore “(∀m ∈ N | m ≤ m2 ). Démontrons
donc ceci.

Soit m ∈ N. . h on veut monter m ≤ m2 i


Distinguons deux cas :
Cas 1 : m = 0.
On a bien m ≤ m2 , puisque 0 ≤ 02 . . h Cas 1 démontré i
1.3. TECHNIQUES DE DÉMONSTRATION 55

Cas 2 : m ∈ N∗ .
Alors on a m ≥ 1 . h Par la définition de N∗ i
En multipliant par m des deux côtés, on obtient m · m ≥ 1 · m . h Arithmétique i
2
Ce qui est équivalent à m ≤ m . . h Cas 2 démontré i

Puisque N∗ ∪ {0} = N, on a démontré que m ≤ m2 pour toutes les valeurs possibles de m.


.
C.Q.F.D.

La stratégie employée dans cette démonstration repose en fait sur une généralisation des
lois de De Morgan (voir la proposition 1.1.4 à la page 12). Voici les lois de De Morgan,
écrite sous deux nouvelles formes utiles pour nous :

Proposition 1.3.1 Lois de De Morgan (Généralisées aux quantificateurs).


Soit T un ensemble et P (x) une expression booléenne qui dépend de x ∈ T . On a :

a : ¬(∀x ∈ T | P (x)) ⇔ (∃x ∈ T | ¬P (x)) (Première loi de De Morgan)


b : ¬(∃x ∈ T | P (x)) ⇔ (∀x ∈ T | ¬P (x)) (Deuxième loi de De Morgan)

Présentons maintenant une démonstration un peu plus complexe qui utilise ces propriétés.

Démonstration de ¬(∃m ∈ N | (∀n ∈ N | m > n))


Nous devons donc démontrer ¬(∃m ∈ N | (∀n ∈ N | m > n))
Ce qui est équivalent à démontrer (∀m ∈ N | ¬(∀n ∈ N | n < m)). h De Morgan. i
Ce qui est équivalent à démontrer (∀m ∈ N | (∃n ∈ N | ¬(n < m))). h De Morgan i

Démontrons donc (∀m ∈ N | (∃n ∈ N | ¬(n < m))).


Soit m ∈ N.
.. h Pour ce m nous voulons démontrer (∃n ∈ N | ¬(n < m)), c.-à-d., notre m est fixé i
Soit n = m + 1,
.. h Un tel n existe et est bien un nombre de N, car m l’est – Propriétés de l’arithmétique. i
Alors on a que n = m + 1 ≥ m. . h Propriété de l’arithmétique. i
Ce qui implique que ¬(n < m). . h Propriété de l’arithmétique. i
.
C.Q.F.D.
56 CHAPITRE 1. THÉORIE DES ENSEMBLES

Dans la démonstration précédente, on devait démontrer “(∀m ∈ N | (∃n ∈ N | ¬(n < m)) )”
et on a :

1. Choisi un m ∈ N tout à fait quelconque (on a rien dit sur ce m hormis qu’il était
dans N) ;

2. Choisi un n, pas n’importe lequel, mais dont on était sûr de l’existence et de son
appartenance à N ;

3. Grâce à une certaine séquence d’arguments mathématiquement corrects, on a réussi


à démontrer que pour ce m et ce n, on a bien ¬(n < m).

Ce Qu’il Fallait Démontrer.

1.3.8 Démonstrations par contradiction

Dans une démonstration, quand on arrive à une contradiction, on peut conclure que la
dernière hypothèse qu’on a faite était fausse. Ceci arrive souvent dans une démonstration
par cas (on conclut alors que le cas n’est pas possible et on passe au suivant). C’est ce même
raisonnement qui nous permet de faire une démonstration par contradiction : on suppose
que ce qu’on veut démontrer est faux, et on démontre que ça implique une contradiction. Ce
genre de démonstration est basé sur l’équivalence :

(¬p ⇒ faux) ⇔ p .

Nous rencontrerons au fil de ces notes de cours quelques démonstrations importantes


qui reposent sur cette technique, notamment la démonstration du théorème de Cantor dans
la section sur les ensembles infinis (voir la section 1.5.6) et la démonstration du principe
d’induction dans le chapitre sur les relations définies par récurrence (voir section 2.3).

Pour l’instant, nous illustrons la technique de démonstration par contradiction en démon-


√ √
trant que le nombre 2 est un nombre irrationnel, c’est-à-dire 2 ne peut pas s’écrire sous
la forme d’une fraction pq , où p et q sont deux entiers (avec q non nul).
1.3. TECHNIQUES DE DÉMONSTRATION 57

Démonstration : 2 est un nombre irrationnel.

Supposons le contraire, c’est-à-dire supposons que 2 est un nombre rationnel (autrement

dit, 2 ∈ Q). . h Cherchons une contradiction i

Puisque 2 est rationnel, il peut être écrit comme une fraction irréductible.
. h Propriétés de l’arithmétique i
∗ p

Soit p ∈ Z et q ∈ N tels que q = 2 et tels que p et q n’ont aucun facteur commun autre
que 1. . h De tels p et q existent par la définition d’irréductibilité d’une fraction i
2
Alors pq2 = 2.
Ce qui implique 2 · q 2 = p2 . . h Arithmétique i
2
Donc p est pair.
. h Le double d’un nombre entier donne un nombre pair et q 2 est un nombre entier i
Ce qui implique que p est pair. . h Car p serait impair seulement si p2 était impair i

Soit p0 ∈ Z choisi tel que p = 2 · p0 . . h Un tel p0 existe car p est pair i


Alors 2 · q 2 = (2 · p0 )2 .
Donc 2 · q 2 = 4 · (p0 )2 .
Donc q 2 = 2 · (p0 )2 . . h Arithmétique i
2
Donc q est pair.
. h Le double d’un nombre entier donne un nombre pair et (p0 )2 est un nombre entier i
Ce qui implique que q est pair. . h Car q serait impair seulement si q 2 était impair i

Puisque que p et q sont pairs, ils ont 2 comme facteur commun, ce qui est en contradiction
avec nos choix initiaux de p et q (Autrement dit, pq n’est pas une fraction irréductible).

Donc, on ne peut pas supposer que 2 est un nombre rationnel.

Ainsi, 2 est un nombre irrationnel. .
C.Q.F.D.
58 CHAPITRE 1. THÉORIE DES ENSEMBLES

1.3.9 Exercices sur les techniques de démonstration

Important : Pour cette série d’exercices, vous devez écrire vos démonstrations sous la forme
d’un texte français, similairement aux démonstrations présentées tout au long de la sec-
tion 1.3. Nous vous encourageons cependant à vous former une intuition en utilisant les
diagrammes de Venn.

Exercice 1 : Supposons que S, T et U sont des ensembles quelconques. On vous demande de


démontrer trois égalité d’ensembles ci-dessous. Nous vous suggérons deux stratégies possibles
pour démontrer une égalité d’ensemble :
— Utiliser l’axiome d’extensionnalité (Définiton 1.2.1) :
(?) S = T ⇔ (∀e | e ∈ S ⇔ e ∈ T ) .
— Utiliser l’antisymétrie de l’inclusion (Propriété 1.2.12-d) :
(??) S = T ⇔ S ⊆ T ∧ T ⊆ S .

a) De Morgan : (S ∩ T )c = S c ∪ T c
b) De Morgan : (S ∪ T )c = S c ∩ T c
c) S \ T = S ∩ T c

Exercice 2 : Supposons que S et T sont deux ensembles quelconques. Démontrez :


a) S ∩ T ⊆ T
b) S \ T ⊆ S.
c) Transitivité de ⊆ : S ⊆T ∧T ⊆U ⇒S ⊆U;
d) (∀x | P (x) ⇒ Q(x) ) ⇔ {x | P (x) } ⊆ {x | Q(x)}

Exercice 3 : Supposons que S et T sont deux ensembles quelconques. Démontrez :


a) S ⊆ T ⇔ S ∩ T = S ;
b) S ⊆ T ⇔ S ∪ T = T
1.4. RELATIONS ET FONCTIONS 59

1.4 Relations et fonctions


Je suis à la recherche d’une relation
qui soit totale et déterministe.

Anonyme (Probablement un mathématicien.)

À la section 1.2, nous avons défini un ensemble comme étant une collection d’éléments
non ordonnée qui ne contient pas de répétitions. Les ensembles seront le concept de base
pour définir les relations. Une relation entre deux ensembles permet de lier des éléments du
premier ensemble avec les éléments du deuxième.

Les relations ont beaucoup en commun avec les bases de données souvent utilisées dans
les systèmes informatiques. Par exemple, on peut imaginer qu’une base de données contient
un ensemble de noms de réalisateurs et un ensemble de titres de film, et qu’une relation lie
chaque réalisateur aux films dont il est l’artisan.

Nous verrons aussi que les relations permettent d’étudier les fonctions mathématiques
(telle, par exemple, “f (x) = x2 ”) et d’introduire un ordre dans un ensemble (si a ∈ N et
b ∈ N, on pourra évaluer la valeur de vérité de l’expression “a ≤ b”).

1.4.1 n-uplet et produit cartésien

Un n-uplet consiste en une liste contenant n éléments. Nous écrivons les éléments d’un
n-uplet entre les symboles “h” et “i”. Par exemple, le 5-uplet qui suit contient les nombres
entiers de 1 à 5 inclusivement en ordre croissant :

u = h1, 2, 3, 4, 5i .

Contrairement aux ensembles, les éléments d’un n-uplet sont ordonnés et peuvent contenir
des répétitions. Ainsi :

h1, 2, 3, 4, 5i 6= h5, 1, 3, 2, 4i 6= h1, 1, 2, 3, 4, 5i .

Comme pour un ensemble, les éléments d’un n-uplet peuvent être de type quelconque
(nombres, mots, phrases, expressions booléennes...). Généralement, on utilise le terme couple
ou le terme paire pour désigner un 2-uplet (par exemple le couple “hvrai, fauxi”) et le terme
triplet pour désigner un 3-uplet (par exemple le triplet “h 13 , 13 , 31 i”).
60 CHAPITRE 1. THÉORIE DES ENSEMBLES

L’opérateur de produit cartésien “×” entre deux ensembles permet de créer l’ensemble
des couples réunissant un élément du premier ensemble et un élément du deuxième ensemble.

Définition 1.4.1 Produit cartésien de deux ensembles


Soit S et T des ensembles, alors :

def
S × T = {ha, bi | a ∈ S ∧ b ∈ T } .

Voici un exemple de produit cartésien entre deux ensembles :

{1, 2} × {a, b, c} = {h1, ai, h1, bi, h1, ci, h2, ai, h2, bi, h2, ci} .

Insistons sur le fait que {1, 2} × {a, b, c} 6= {a, b, c} × {1, 2}, puisque les éléments d’un
couple sont ordonnés.

La définition qui suit présente le produit cartésien entre plusieurs ensembles. Notez qu’il
s’agit d’une généralisation de la définition 1.4.1, c’est-à-dire que cette nouvelle définition
est compatible avec la définition du produit cartésien de deux ensembles. Ainsi le produit
cartésien des ensembles S et T est l’ensemble de toutes les paires dont le premier membre est
un élément de S et le second un élément de T . On peut facilement généraliser cette définition
à S × T × U comme un ensemble de triplets, à S × T × U × V comme un ensemble de
quadruplets, etc.

Définition 1.4.2 Produit cartésien d’un nombre arbitraire d’ensembles


Soit un nombre n d’ensembles désignés par les variables S1 , S2 , . . . , Sn , on a :

def
S1 × S2 × . . . × Sn = {he1 , e2 , . . . , en i | e1 ∈ S1 ∧ e2 ∈ S2 ∧ . . . ∧ en ∈ Sn } .

Pour désigner un produit cartésien de n fois le même ensemble S par lui même, on utilise la
notation S n :
def
Sn = S | ×S× {z. . . × S} .
n fois

En accord avec cette notation, on désigne les coordonnées du plan cartésien par R2
et l’espace tridimensionnel par R3 . Tel qu’illustré par la figure 1.5, le plan cartésien est
constitué de l’ensemble des couples hx, yi tels que x ∈ R et y ∈ R. Similairement, l’espace
tridimensionnel est constitué de l’ensemble des triplets hx, y, zi tels que x ∈ R, y ∈ R et
z ∈ R.
1.4. RELATIONS ET FONCTIONS 61

Figure 1.5 – Les points d’un plan cartésien correspondent à l’ensemble de


couples {hx, yi | x ∈ R ∧ y ∈ R} = R2 . Les trois points illustrés sur cette figure
forment le sous-ensemble {h−3.5, 1.5i, h0, 0i, h2, 1i} ⊂ R2 .

La proposition suivante présente certaines propriétés du produit cartésien.

Proposition 1.4.3 Propriétés du produit cartésien


Soit S, T , U et V des ensembles, alors les expressions suivantes sont vraies :

a: S×T =T ×S ⇔ S =∅∨T =∅∨S =T


b: S × (T ∪ U ) = (S × T ) ∪ (S × U ) (Distributivité sur l’union)
c: S × (T ∩ U ) = (S × T ) ∩ (S × U ) (Distributivité sur l’intersection)
d: S × (T \ U ) = (S × T ) \ (S × U ) (Distributivité sur la différence)
e: S ⊆U ∧T ⊆V ⇒ S×T ⊆U ×V
f: S×T ⊆S×U ⇒ S =∅∨T ⊆U
g: (S ∩ T ) × (U ∩ V ) = (S × U ) ∩ (T × V )
h: |S × T | = |S| · |T | si S et T sont des ensembles finis.

Nous présentons maintenant la démonstration de deux propriétés du produit cartésien. La


première démonstration (distributivité de l’union) est effectuée par une série d’équivalences,
en appliquant “mécaniquement” (et adéquatement) les définitions et propriétés déjà énoncées.
La deuxième démonstration (distributivité de la différence) est écrite dans un style “textuel”
et fait davantage appel à la compréhension du lecteur.

Démonstration de la proposition 1.4.3-b (Distributivité sur l’union)


Soit S, T et U des ensembles. Nous voulons démontrer “S × (T ∪ U ) = (S × T ) ∪ (S × U )”.
Par l’axiome d’extensionnalité (définition 1.2.1, avec [e := ha, bi], [S := S × (T ∪ U )] et
[T := (S × T ) ∪ (S × U )]), nous savons que cela est équivalent à démontrer :

(∀ ha, bi | ha, bi ∈ S × (T ∪ U ) ⇔ ha, bi ∈ (S × T ) ∪ (S × U ) ) .


62 CHAPITRE 1. THÉORIE DES ENSEMBLES

Démontrons donc “ha, bi ∈ S × (T ∪ U ) ⇔ ha, bi ∈ (S × T ) ∪ (S × U )” :


Soit ha, bi une paire d’éléments.

ha, bi ∈ S × (T ∪ U )
⇔ h Def 1.4.1 – Produit cartésien, avec [T := T ∪ U ] i
a ∈ S ∧ (b ∈ T ∪ U )
⇔ h Prop 1.2.11-c – Union i
a ∈ S ∧ (b ∈ T ∨ b ∈ U )
⇔ h Prop 1.1.6-b – Distributivité de la conjonction i
(a ∈ S ∧ b ∈ T ) ∨ (a ∈ S ∧ b ∈ U )
⇔ h Def 1.4.1 – Produit cartésien, 2 fois i
(ha, bi ∈ S × T ) ∨ (ha, bi ∈ S × U )
⇔ h Prop 1.2.11-c – Union, avec [S := S × T ] et [T := S × U ] i
ha, bi ∈ (S × T ) ∪ (S × U ) .
.
C.Q.F.D.

Démonstration de la propriété 1.4.3-d (Distributivité sur la différence)


Soit S, T et U des ensembles. Nous voulons démontrer “S × (T \ U ) = (S × T ) \ (S × U )”.
Utilisons l’antisymétrie de l’inclusion (propriété 1.2.12-d) et démontrons à tour de rôle chaque
inclusion.

⊆ : Soit ha, bi ∈ S × (T \ U ). . h on veut ha, bi ∈ (S × T ) \ (S × U ) i


Alors par définition on sait que a ∈ S, b ∈ T et b ∈
/ U.
Donc ha, bi ∈ S × T , mais ha, bi ∈
/ S × U.
Donc ha, bi ∈ (S × T ) \ (S × U ) . . h “ ⊆ ” démontré i

⊇ : Soit ha, bi ∈ (S × T ) \ (S × U ). . h on veut ha, bi ∈ S × (T \ U ) i


Alors on sait que ha, bi ∈ S × T et que ha, bi ∈
/ S × U.
Donc a ∈ S, b ∈ T et b ∈ / U.
Autrement dit a ∈ S et b ∈ T \ U .
Il s’en suit que ha, bi ∈ S × (T \ U ). . h “ ⊇ ” démontré i
.
C.Q.F.D.
1.4. RELATIONS ET FONCTIONS 63

1.4.2 Définitions et représentations des relations

Les relations permettent de lier entre eux les éléments de plusieurs ensembles. Dans ce
document, on utilise généralement des lettres minuscules de l’alphabet grec 16 pour désigner
des relations. Dans les énoncés des définitions et des propositions, nous utilisons souvent les
lettres “rhô” ρ, “sigma” σ et “thêta θ pour désigner des relations, au même titre que nous
utilisons, depuis le début de ce document, les lettres p, q et r pour désigner des expressions
booléennes et les lettres S, T et U pour désigner des ensembles. Bien sûr, ceci n’est qu’une
convention. Tout pictogramme (et non seulement une lettre) peut représenter une variable ;
il suffit de bien expliquer le choix qu’on fait.

Considérons n ensembles S1 , S2 , . . . , Sn . Une relation n-aire ρ sur ces ensembles est un


ensemble de n-uplets tel que :

ρ ⊆ S1 × S2 × . . . × Sn .

Dans ce cours, le mot relation est utilisé pour désigner relation binaire, qui est notre
principal objet d’étude. Ainsi, une relation ρ ⊆ S × T est un ensemble de couples (c’est-à-dire
de 2-uplets) qui associent certains éléments de S à certains éléments de T .

Voici quatre exemples de relations binaires :

1. Soit R l’ensemble des réalisateurs d’Hollywood et F l’ensemble des films, la relation


“bêta” β ⊆ R ×F est telle que hr, f i ∈ β si le réalisateur r ∈ R a réalisé le film f ∈ F :
 
 hSpielberg, Jawsi, hSpielberg, Indiana Jonesi, hSpielberg, E.T.i, . . . ,
 

β= hJackson, Braindeadi, hJackson, Lord of the Ringsi, hJackson, King Kongi, . . . , .
 
hMendes, American Beautyi, hMendes, Road to Perditioni, hMendes, Jarheadi, . . .
 

2. Soit E l’ensemble des étudiants d’un cours et N = {A+, A, A−, B+, B, B−, . . .} l’en-
semble des cotes possibles, la relation “gamma” γ ⊆ E × N associe chaque étudiant à
la cote qu’il a obtenu pour ce cours.

γ = {he, ni ∈ E × N | L’étudiant e a obtenu la cote n pour ce cours}

16. En mathématiques et en sciences, il est fréquent d’utiliser des lettres grecques pour nommer des va-
riables. Bien que cela est souvent rébarbatif au premier abord, il ne faut pas se laisser intimider par les lettres
α, β, γ, . . . davantage que par les lettres x, y, z ! Le lecteur est invité à se référer à l’annexe A (page 229) pour
connaı̂tre la prononciation en français de chacune des lettres de l’alphabet grec.
64 CHAPITRE 1. THÉORIE DES ENSEMBLES

3. La relation “thêta” θ ⊆ R2 suivante contient les points d’un cercle de rayon unitaire
et centré à l’origine du plan cartésien :

θ = {hx, yi ∈ R2 | x2 + y 2 = 1} .

4. On peut aussi voir l’opérateur “plus petit ou égal” comme une relation (on définit ici
l’opérateur sur les entiers relatifs Z seulement) :

≤ = {ha, bi ∈ Z2 | (b − a) ∈ N} .

Relation vide et relation triviale

Considérons le produit cartésien S × T . La relation triviale ρ = S × T désigne la


relation dont chaque élément de l’ensemble de départ S forme un couple avec chaque élément
de l’ensemble d’arrivée T .

L’ensemble vide ∅ est une relation constituée d’aucun couple. Il s’agit de la relation
vide. Rappelons que pour n’importe quels ensembles S et T , nous avons ∅ ⊆ S × T .

Opérateur d’appartenance

Nous souhaiterons souvent vérifier l’appartenance d’un couple à une relation. Con-
formément à la définition de l’opérateur d’appartenance “∈” présentée à la section 1.2.2,
l’expression booléenne “ha, bi ∈ ρ” est évaluée à vrai si le couple ha, bi appartient à la rela-
tion ρ, sinon l’expression est évaluée à faux. Par souci de concision, nous utilisons l’expression
“a ρ b” pour désigner la même expression booléenne :

Définition 1.4.4 Appartenance d’un couple à une relation


Soit S et T deux ensembles, soit ρ ⊆ S × T une relation et soit ha, bi un couple tel que a ∈ S
et b ∈ T . On a :
def
a ρ b = ha, bi ∈ ρ .

En considérant les exemples de relations “bêta” β, “thêta” θ et “plus petit ou égal” ≤,


on a :
Spielberg β Jaws ⇔ vrai , Spielberg β Jarhead ⇔ faux ,
√ √
0.5 θ 0.5 ⇔ vrai , 1.0 θ 1.0 ⇔ faux ,
1≤2 ⇔ vrai , 2≤1 ⇔ faux .
1.4. RELATIONS ET FONCTIONS 65

Pensez-y!

Cette nouvelle notation peut sembler étrange à première vue. Certains étudiants ont
tendance à croire que cela va contre le bon sens d’écrire une expression telle “a ρ b” afin
d’exprimer la phrase “Le couple ha, bi appartient à la relation rhô”.

Pourtant, il est naturel à tous d’écrire l’expression “a ≤ b”, ce que nous pouvons
exprimer par la phrase “Le couple ha, bi appartient à la relation plus petit ou égal”. Dans
ce cas-ci, la notation “ha, bi ∈ ≤” peut sembler contre-intuitive, quoiqu’elle soit tout aussi
appropriée.

Il faut bien comprendre ici que la lettre grecque “ρ” et le symbole mathématique “≤”
sont seulement des pictogrammes que nous avons choisis pour représenter des relations. Ce
sont nos habitudes qui nous font préférer une notation plutôt qu’une autre dépendamment
du pictogramme utilisé.

Ensemble de départ et domaine / Ensemble d’arrivée et image

Considérons une relation ρ ⊆ S×T . On dit que S est l’ensemble de départ et l’ensemble
que T est l’ensemble d’arrivée 17 .

La définition suivante établit que le domaine d’une relation est l’ensemble des éléments
figurant comme premier membre d’un couple dans cette relation. De même, l’image d’une
relation est l’ensemble des éléments y figurant comme deuxième membre d’un couple. Le
domaine d’une relation est inclus dans son ensemble de départ. De même, l’image d’une
relation est incluse dans son ensemble d’arrivée.

Définition 1.4.5 Domaine et image d’une relation


Soit S et T deux ensembles et soit ρ ⊆ S × T une relation. On a :
def
a : Dom(ρ) = {a ∈ S | (∃b ∈ T | a ρ b)} (Domaine de la relation ρ)
def
b : Im(ρ) = {b ∈ T | (∃a ∈ S | a ρ b)} (Image de la relation ρ)

17. Certains livres de mathématiques nomment “co-domaine” ce que nous désignons ici par “ensemble
d’arrivée”.
66 CHAPITRE 1. THÉORIE DES ENSEMBLES

En considérant les quatre exemples de relations donnés précédemment, on obtient :


1. Pour la relation β :
— L’ensemble de départ est le même que le domaine. Notez qu’ici, on considère que
chaque réalisateurs a au moins un film à son actif (car sinon, il ne pourrait pas
porter le titre de réalisateur !) ;
— L’ensemble d’arrivée est le même que l’image, en supposant que tous les films sont
associés à au moins un réalisateur.
— Dom(β) = {Spielberg, Jackson, Mendes, . . .} ;
— Im(β) = {Jaws, Indiana Jones, E.T., Braindead, Lord of the Rings, . . .} ;
2. Pour la relation γ :
— L’ensemble de départ est E ;
— L’ensemble d’arrivée est N ;
— Dom(γ) = E, en supposant que tous les étudiants ont assisté à l’examen final ;
— Im(γ) ⊆ N , car on ne sait pas si toutes les cotes possibles ont été attribuées. En
effet, il est envisageable que tous les étudiants de la classe aient obtenu A+.
3. Pour la relation θ :
— L’ensemble des nombres réels R est à la fois l’ensemble de départ et l’ensemble
d’arrivée ;
— Dom(θ) = Im(θ) = [−1, 1] ⊂ R. Notez que l’intervalle des nombres entre x1 et x2
est noté [x1 , x2 ] et correspond à l’ensemble {y ∈ R | x1 ≤ y ≤ x2 }
4. Pour la relation ≤ :
— L’ensemble de départ, le domaine, l’ensemble d’arrivée et l’image sont tous égaux ;
— Dom( ≤ ) = Im( ≤ ) = Z.

Représentation par un graphe

Un graphe est un ensemble de sommets dont certains sont reliés entre eux par des arêtes
ou des arcs 18 . Nous désignons par le terme graphe de relation un diagramme qui représente
une relation à l’aide d’un graphe. On peut imaginer plusieurs légères variantes dans la manière
de dessiner ces diagrammes. Dans le cadre de ce cours, nous utilisons les termes “graphe de
relation sous forme biparti” et “graphe de relation sous forme fusionné” pour distinguer les
deux variantes auxquelles nous avons recours.

Considérons d’abord une relation ρ ⊆ S × T sur deux ensembles possiblement distincts S


et T . Les sommets du graphe de relation sous forme biparti ρ sont regroupés en deux
groupes, celui de gauche représentant les éléments de l’ensemble de départ S et celui de droite
18. Le chapitre 3 de ce document est consacré à la théorie des graphes.
1.4. RELATIONS ET FONCTIONS 67

représentant les éléments de l’ensemble d’arrivée T . Les arêtes relient entre eux les éléments
qui forment un couple dans la relation ρ. Autrement dit, il y a une arête entre a ∈ S et b ∈ T
lorsque ha, bi ∈ ρ. Les figures 1.6a et 1.6b présentent deux exemples de graphes de relations
sous forme bipartis.

Considérons maintenant une relation σ ⊆ S × S partageant le même ensemble de départ


et d’arrivée S. Dans ce cas, le graphe de relation sous forme fusionné σ représente
une seule fois chaque sommet de S. Les arêtes relient entre eux les éléments qui forment un
couple dans la relation σ. Notez que l’orientation des arêtes est ici importante. La figure 1.6c
présente un exemple de graphe de relation sous forme fusionné.

1 1 1
A
2 2 2
B 1 3
3 3 3
C
4 4 4 2 4
(a) Graphe de la (b) Graphe de la (c) Graphe de la re-
relation ρ sous relation σ sous lation σ sous forme
forme biparti. forme biparti. fusionné.

Figure 1.6 – Exemples de représentations d’une relation à l’aide d’un


graphe. On considère les ensembles K = {1, 2, 3, 4} et L = {A, B, C},
ainsi que les relations ρ = {h1, Bi, h3, Ai, h4, Bi, h4, Ci} ⊂ K × L et
σ = {h1, 3i, h1, 4i, h2, 4i, h3, 3i, h4, 2i} ⊂ K 2 . Les figures (b) et (c) illustrent la
relation σ de deux manières différentes, ce qui est possible car l’ensemble de
départ est le même que l’ensemble d’arrivée.

1.4.3 Opérateurs sur les relations

La relation identité “IS ” associée à l’ensemble S est une relation particulière où chaque
couple associe un élément de S avec lui-même.

Définition 1.4.6 Relation identité


Soit S un ensemble. On a :
def
IS = {ha, ai ∈ S 2 | a ∈ S} ,

ou, de manière équivalente :


ha, ai ∈ IS ⇔ a ∈ S .
68 CHAPITRE 1. THÉORIE DES ENSEMBLES

Remarquez que, conformément à la définition 1.4.5, on a Dom(IS ) = Im(IS ) = S.

Composition de relations

La définition suivante présente l’opérateur de composition “◦” qui permet de regrouper


deux relations en une seule. La composition des relations “rhô” ρ et “sigma” σ s’écrit “ρ ◦ σ”.

Définition 1.4.7 Composition de deux relations


Soit S, T et U trois ensembles, soit ρ ⊆ S × T et σ ⊆ T × U deux relations binaires et soit
ha, ci ∈ S × U . On a :

def
ha, ci ∈ ρ ◦ σ = (∃b ∈ T | ha, bi ∈ ρ ∧ hb, ci ∈ σ) ,

ou, de manière équivalente :

def
a (ρ ◦ σ) c = (∃b ∈ T | a ρ b ∧ b σ c) .

À titre d’exemple, si la relation “bêta” β ⊆ R × F associe les réalisateurs aux films qu’ils
ont réalisés et la relation “alpha” α ⊆ F × N associe les films à leur année de parution, la
relation β ◦ α ⊆ R × N associe les réalisateurs aux années de parution de leurs films :
 
 hSpielberg, 1975i, hSpielberg, 1981i, hSpielberg, 1982i, . . . ,
 

β◦α = hJackson, 1992i, hJackson, 2001i, hJackson, 2005i, . . . , .
 
hMendes, 1999i, hMendes, 2002i, hMendes, 2005i, . . .
 

La figure 1.7 illustre un autre exemple de composition de relations.

Figure 1.7 – Exemple illustrant la composition de deux relations ρ et σ.


1.4. RELATIONS ET FONCTIONS 69

La proposition 1.4.8 énonce quelques propriétés de l’opérateur de composition. La première


propriété utilise la relation identité “IS ” présentée par la définition 1.4.6.

Proposition 1.4.8 Propriétés de la composition


Soit ρ, σ et θ des relations. On pose S = Dom(ρ) et T = Im(ρ). Les expressions suivantes
sont vraies :
a: IS ◦ ρ = ρ ◦ IT = ρ (Élément neutre)
b: ∅◦ρ = ρ◦∅ = ∅ (Élément absorbant)
c: (ρ ◦ σ) ◦ θ = ρ ◦ (σ ◦ θ) (Associativité)
d: ρ⊆σ ⇒ ρ◦θ ⊆σ◦θ (Monotonie)

Comme l’opérateur de composition est associatif (propriété 1.4.8-c), l’ordre d’évaluation


des opérateurs de composition consécutifs n’a pas d’influence sur le résultat final. On peut
donc omettre les parenthèses lors de l’écriture. Autrement dit, on a :

ρ ◦ σ ◦ θ = (ρ ◦ σ) ◦ θ = ρ ◦ (σ ◦ θ) .

Puissance d’une relation

On utilise la notation “ρn ” pour désigner la puissance d’une relation 19 , c’est-à-dire


l’application de l’opérateur de composition n fois consécutives sur la relation ρ. La définition
suivante établit la convention que la puissance zéro “ρ0 ” d’une relation ρ ∈ S 2 donne la
relation identité IS .

Définition 1.4.9 Puissance d’une relation


Soit S un ensemble, ρ ⊆ S 2 une relation et n un nombre entier positif ou nul (n ∈ N).
Si n ≥ 1, on a :
def
ρn = ρ ◦ ρ ◦ . . . ◦ ρ ,
| {z }
n fois
sinon (n = 0), on a :
def
ρ0 = IS .

19. Notons ici que nous utilisons la même notation (l’exposant n) pour désigner à la fois la puissance “à la n”
d’une relation (définition 1.4.7) et le produit cartésien “n fois” d’un ensemble par lui-même (définition 1.4.2).
Bien que cela pourrait porter à confusion (une relation étant définie comme un ensemble), le contexte d’uti-
lisation de cette notation empêche habituellement toute ambiguı̈té.
70 CHAPITRE 1. THÉORIE DES ENSEMBLES

En guise d’exemple, considérons la relation “delta” :

δ = {h1, 1i, h1, 2i, h2, 3i, h4, 5i, h5, 6i} ⊂ {1, 2, 3, 4, 5, 6, 7}2 .

Nous avons :

δ 0 = {h1, 1i, h2, 2i, h3, 3i, h4, 4i, h5, 5i, h6, 6i, h7, 7i} ,
δ 1 = {h1, 1i, h1, 2i, h2, 3i, h4, 5i, h5, 6i} ,
δ 2 = {h1, 1i, h1, 2i, h1, 3i, h4, 6i} ,
δ n = {h1, 1i, h1, 2i, h1, 3i} pour tout n ≥ 3.

La figure 1.8 illustre ces différentes relations par des graphes.

2 2 2 2

1 3 1 3 1 3 1 3
7 7 7 7
6 4 6 4 6 4 6 4

5 5 5 5
(a) Relation δ 0 . (b) Relation δ 1 . (c) Relation δ 2 . (d) Relation δ n ,
pour tout n ≥ 3.

Figure 1.8 – Graphes de relation sous formes fusionnés illustrant les


relations obtenues en appliquant l’opérateur puissance sur la relation
δ = {h1, 1i, h1, 2i, h2, 3i, h4, 5i, h5, 6i} pour différentes valeurs d’exposant.

La proposition qui suit présente deux propriétés de l’opérateur puissance qu’il est relati-
vement facile de déduire de l’associativité de la composition (propriété 1.4.8-c).

Proposition 1.4.10 Propriétés de la puissance d’une relation


Soit ρ une relation et soit m et n deux entiers positifs, alors les expressions suivantes sont
vraies :

a : ρm ◦ ρn = ρm+n (Somme des exposants)


b : (ρm )n = ρm·n (Produit des exposants)
1.4. RELATIONS ET FONCTIONS 71

Clôture d’une relation

À partir de la définition de la puissance d’une relation, on définit les concepts de clôture


transitive et de clôture transitive et réflexive 20 . Dans ce document, la clôture transitive
d’une relation ρ est notée “ρ+ ” et la clôture transitive et réflexive de ρ est notée “ρ∗ ”.

Définition 1.4.11 Clôtures d’une relation


Soit ρ une relation. On a :
def
a : ρ+ = ρ1 ∪ ρ2 ∪ ρ3 ∪ . . . (Clôture transitive)
def
b : ρ∗ = ρ0 ∪ ρ1 ∪ ρ2 ∪ ρ3 ∪ . . . (Clôture transitive et réflexive)

Nous verrons à la section 1.4.4 que les relations ρ+ et ρ∗ appartiennent nécessairement à


la famille des relations transitives, ce qui explique le choix du terme “clôture transitive”. De
même, la relation ρ∗ appartient également à la famille des relations réflexives.

La figure 1.9 illustre les deux types de clôtures sur la relation δ donnée en exemple à la
figure 1.8.

2 2

1 3 1 3
7 7
6 4 6 4

5 5
+
(a) Relation δ . (b) Relation δ ∗ .

Figure 1.9 – Graphes de relation sous formes fusionnés illustrant la


clôture transitive δ + et la clôture transitive et réflexive δ ∗ de la relation
δ = {h1, 1i, h1, 2i, h2, 3i, h4, 5i, h5, 6i}.

Inverse d’une relation

L’inverse d’une relation ρ, notée “ρ−1 ”, est obtenu simplement en inversant l’ordre des
éléments de chaque couple appartenant à ρ. Autrement dit, “hb, ai ∈ ρ−1 ⇔ ha, bi ∈ ρ1 ”, ce
qui est équivalent à la définition suivante :
20. Certains auteurs utilisent le terme “fermeture” au lieu de “clôture”.
72 CHAPITRE 1. THÉORIE DES ENSEMBLES

Définition 1.4.12 Inverse d’une relation


Soit S et T deux ensembles et soit ρ ⊆ S × T une relation. On a :

ρ−1 = {hb, ai | ha, bi ∈ ρ} .


def

Ainsi, l’ensemble de départ d’une relation ρ devient l’ensemble d’arrivée de la relation in-
verse ρ−1 et l’ensemble d’arrivée de ρ devient l’ensemble de départ de ρ−1 . Autrement dit, si
ρ ⊆ S × T , alors on a ρ−1 ⊆ T × S.

En guise d’exemple, considérons la relation δ = {h1, 1i, h1, 2i, h2, 3i, h4, 5i, h5, 6i} ⊆ N2 .
Nous avons :

δ −1 = {h1, 1i, h2, 1i, h3, 2i, h5, 4i, h6, 5i} .

La proposition suivante présente quelques propriétés qu’il est possible de démontrer à


partir de la définition de la relation inverse.

Proposition 1.4.13 Propriétés de la relation inverse


Soit ρ et σ deux relations, alors les expressions suivantes sont vraies :

a: Dom(ρ−1 ) = Im(ρ) (Domaine d’une relation inverse)


b: Im(ρ−1 ) = Dom(ρ) (Image d’une relation inverse)
c: ∅−1 = ∅ (Inverse de la relation vide)
d: (ρ ◦ σ)−1 = σ −1 ◦ ρ−1 (Inverse de la composition)
e: (ρ ∪ σ)−1 = σ −1 ∪ ρ−1 (Inverse de l’union)
f: (ρ ∩ σ)−1 = σ −1 ∩ ρ−1 (Inverse de l’intersection)

1.4.4 Familles de relations

Nous allons maintenant définir plusieurs propriétés des relations auxquelles nous ferons
régulièrement référence par la suite. Ces propriétés nous aideront à caractériser la “famille”
à laquelle une relation appartient.

Réflexivité, symétrie et transitivité

Les premières propriétés présentées s’appliquent aux relations dont l’ensemble de départ
et le même que l’ensemble d’arrivée.
1.4. RELATIONS ET FONCTIONS 73

Définition 1.4.14 Relation réflexive, irréflexive, symétrique, asymétrique, antisymétrique


et transitive
Soit ρ ⊆ S 2 une relation. Alors :

a: ρ est réflexif ⇔ (∀a ∈ S | a ρ a )


b: ρ est irréflexif ⇔ (∀a ∈ S | ¬(a ρ a) )
c: ρ est symétrique ⇔ (∀a ∈ S, b ∈ S | a ρ b ⇒ b ρ a )
d: ρ est asymétrique ⇔ (∀a ∈ S, b ∈ S | a ρ b ⇒ ¬(b ρ a) )
e: ρ est antisymétrique ⇔ (∀a ∈ S, b ∈ S | a ρ b ∧ b ρ a ⇒ a = b )
f: ρ est transitif ⇔ (∀a ∈ S, b ∈ S, c ∈ S | a ρ b ∧ b ρ c ⇒ a ρ c )

À titre d’exemple, examinons les propriétés de trois relations bien connues sur l’ensemble
des nombres relatifs Z :

Propriétés ≤ < =
√ √
Réflexivité
def
≤ = {ha, bi ∈ Z2 | (b − a) ∈ N} , √
Irréflexive
< = {ha, bi ∈ Z2 | (b − a) ∈ N∗ } ,
def √
Symétrie
def √
= = {ha, bi ∈ Z2 | (b − a) = 0} . Asymétrie
√ √ √
Antisymétrie
√ √ √
Transitivité

La proposition suivante montre qu’il est possible d’exprimer les propriétés énoncées par
la définition 1.4.14 à l’aide des opérateurs ensemblistes.

Proposition 1.4.15 Définitions équivalentes d’une relation réflexive, irréflexive, symétrique,


asymétrique, antisymétrique et transitive
Soit ρ ⊆ S 2 une relation. Alors :

a: ρ est réflexif ⇔ IS ⊆ ρ
b: ρ est irréflexif ⇔ IS ∩ ρ = ∅
c: ρ est symétrique ⇔ ρ−1 = ρ
d: ρ est asymétrique ⇔ ρ ∩ ρ−1 = ∅
e: ρ est antisymétrique ⇔ ρ ∩ ρ−1 ⊆ IS
f: ρ est transitif ⇔ ρ2 ⊆ ρ
74 CHAPITRE 1. THÉORIE DES ENSEMBLES

Il est formateur de bien comprendre que les énoncés de la dernière proposition et de


la définition 1.4.14 sont deux manières équivalentes d’exprimer les mêmes concepts. Nous
démontrons ici que les deux manières d’exprimer la transitivité sont équivalentes. Rappelons
qu’une technique pour démontrer un si et seulement si “⇔” consiste à démontrer d’abord
l’implication “⇒”, puis à démontrer l’implication inverse “⇐”. Nous avons déjà présenté
cette technique de démonstration à la section 1.3.4 (page 51).

Démonstration de la proposition 1.4.15-f (Définition équivalente de la transitivité)


Nous voulons démontrer “ρ2 ⊆ ρ ⇔ (∀a ∈ S, b ∈ S, c ∈ S | a ρ b ∧ b ρ c ⇒ a ρ c )”.

⇒: Supposons ρ2 ⊆ ρ (c.-à-d. : ρ ◦ ρ ⊆ ρ) et démontrons :

(∀a ∈ S, b ∈ S, c ∈ S | a ρ b ∧ b ρ c ⇒ a ρ c )

Soit a, b, c ∈ S, choisis tels que a ρ b et b ρ c. . h Montrons a ρ c. i


Puisque (∃b ∈ S | a ρ b ∧ b ρ c), on a a (ρ ◦ ρ) c. . h Définition de “ ◦” (déf 1.4.7). i
2
Donc, on a a ρ c. . h Définition de ρ2 . i
C’est-à-dire ha, ci ∈ ρ2 .
Donc, on a ha, ci ∈ ρ. . h Car par hypothèse, on a ρ2 ⊆ ρ. i
Et donc a ρ c. . h “⇒” est démontré. i
⇐: Supposons “(∀a ∈ S, b ∈ S, c ∈ S | a ρ b ∧ b ρ c ⇒ a ρ c )” et démontrons ρ2 ⊆ ρ en .
démontrant que :
(∀ ha, ci | ha, ci ∈ ρ2 ⇒ ha, ci ∈ ρ) .

Soit ha, ci, choisi tel que ha, ci ∈ ρ2 . . h Montrons ha, ci ∈ ρ. i


Alors on a ha, ci ∈ ρ ◦ ρ. . h Définition de ρ2 . i
Soit b, choisi tel que a ρ b et b ρ c. . h Un tel b existe, car ha, ci ∈ ρ ◦ ρ (déf 1.4.7). i
Alors on a a ρ c. . h Car par hypothèse : a ρ b ∧ b ρ c ⇒ a ρ c i
Et donc, on a ha, ci ∈ ρ. . h “⇐” est démontré. i
C.Q.F.D.

Totalité, surjectivité, déterminisme et injectivité

Cette section, ainsi que la suivante, présente (entre autres choses) une des notions les plus
importantes en mathématiques, soit la notion de fonction. En effet, comme nous le verrons,
une fonction peut être vue comme une relation ayant deux propriétés particulières, soit celle
de totalité et celle de déterminisme.
1.4. RELATIONS ET FONCTIONS 75

Considérons une relation ρ ⊆ S × T , où S est l’ensemble de départ et T est l’ensemble


d’arrivée. On dit que :
— ρ est une relation totale lorsque chaque élément de l’ensemble de départ S est associé
à au moins un élément de l’ensemble d’arrivée T (c’est-à-dire que Dom(ρ) = S) ;
— ρ est une relation surjective lorsque chaque élément de l’ensemble d’arrivée T est
associé à au moins un élément de l’ensemble de départ S (c’est-à-dire que Im(ρ) = T ) ;
— ρ est une relation déterministe lorsque chaque élément de l’ensemble de départ S
est associé à au plus un élément de l’ensemble d’arrivée T ;
— ρ est une relation injective lorsque chaque élément de l’ensemble d’arrivée T est
associé à au plus un élément de l’ensemble de départ S .

De plus, on dit que :


— ρ est une relation bijective lorsqu’elle est à la fois surjective et injective ;
— ρ est une fonction lorsqu’elle est à la fois totale et déterministe. La section 1.4.5
s’intéresse plus particulièrement à ce type de relations.

La définition 1.4.16 énonce formellement les quatre propriétés de totalité, surjectivité,


déterminisme et injectivité. La figure 1.10 illustre ces mêmes propriétés par des exemples.

Définition 1.4.16 Relation totale, surjective, déterministe, injective


Soit ρ ⊆ S × T une relation. Alors :

a: ρ est total ⇔ (∀a ∈ S | (∃b ∈ T | a ρ b) )


b: ρ est surjectif ⇔ (∀b ∈ T | (∃a ∈ S | a ρ b) )
c: ρ est déterministe ⇔ (∀a ∈ S, b ∈ T, b0 ∈ T | a ρ b ∧ a ρ b0 ⇒ b = b0 )
d: ρ est injectif ⇔ (∀a ∈ S, a0 ∈ S, b ∈ T | a ρ b ∧ a0 ρ b ⇒ a = a0 )

(a) Totalité (b) Surjectivité (c) Déterminisme (d) Injectivité

Figure 1.10 – Exemples de graphes de relation sous forme bipartis respectant


les propriétés énoncées par la définition 1.4.16.
76 CHAPITRE 1. THÉORIE DES ENSEMBLES

Face à une nouvelle relation, on désirera souvent connaı̂tre ses propriétés, c’est-à-dire
savoir à quelles familles de relations elle appartient et à quelles familles elle n’appartient pas.
À titre d’exemple, considérons la relation “tau” τ ⊆ Z × R définie par l’ensemble suivant (la
figure de droite illustre 20 couples appartenant à l’ensemble τ ) :

j
 
1
τ = hi, ji ∈ Z × R j = .

i i

Avant de se lancer dans la démonstration des propriétés d’une relation, il convient de


l’étudier afin d’avoir une idée (au moins intuitive) de ce que nous voulons démontrer. En
jetant un coup d’oeil à la représentation de la relation sur un plan cartésien, on est porté à
croire que la relation τ est déterministe et injective (car à chaque i est associé au plus un j,
et à chaque j est associé au plus un i), mais non totale et non surjective (car la valeur 0 ne
fait pas partie du domaine ni de l’image de τ ).

Ces intuitions sont confirmées par la démonstration suivante. Remarquons que pour
démontrer qu’une relation ne possède pas une propriété (dans ce cas-ci, la totalité et la
surjectivité), il faut trouver un contre-exemple.

Démonstration :
la relation τ est déterministe, injective, non totale et non surjective

A La relation τ est déterministe.


Démontrons que (∀a ∈ Z, b ∈ R, b0 ∈ R | a τ b ∧ a τ b0 ⇒ b = b0 ).
Soit a ∈ Z, b ∈ R et b0 ∈ R choisis tels que a τ b et a τ b0 . h montrons b = b0 i
Comme a τ b, par définition de τ , on a b = a1 .
Comme a τ b0 , par définition de τ , on a b0 = a1 .
Alors on a b = b0 . . h Arithmétique – Transitivité de “=” i


τ est donc une relation déterministe. . Point A démontré.
.
C.Q.F.D.
1.4. RELATIONS ET FONCTIONS 77

B La relation τ est injective.


Démontrons que (∀a ∈ Z, a0 ∈ Z, b ∈ R | a τ b ∧ a0 τ b ⇒ a = a0 ).
Soit a ∈ Z, a0 ∈ Z et b ∈ R choisis tels que a τ b et a0 τ b . h montrons a = a0 i
Comme a τ b, par définition de τ , on a b = a1 .
Comme a0 τ b, par définition de τ , on a b = a10 .
Alors on a a1 = a10 . . h Arithmétique – Transitivité de “=” i
0
Alors on a a = a . . h Arithmétique i


τ. est bien une relation injective. . Point B démontré.
C.Q.F.D.

C La relation τ n’est pas totale.


Nous devons démontrer que ¬(∀a ∈ Z | (∃b ∈ R | a τ b) ).
Ce qui est équivalent à démontrer que (∃a ∈ Z | ¬(∃b ∈ R | a τ b) ).
. . h Proposition 1.3.1-a (page 55) – De Morgan, avec [P (x) := (∃b ∈ R | a τ b)]. i
Ce qui est équivalent à démontrer que (∃a ∈ Z | (∀b ∈ R | ¬(a τ b) ) ).
. . h Proposition 1.3.1-b (page 55) – De Morgan, avec [P (x) := a τ b]. i
Démontrons que (∃a ∈ Z | (∀b ∈ R | ¬(a τ b) ) ).
Soit a = 0. . h Un tel a existe, car clairement 0 ∈ Z. i
Soit b ∈ R.
Comme 01 n’est pas un élément de R, on ne peut pas avoir b = 10 . . h Arithmétique i
Par la définition de τ , on ne peut pas avoir a τ b.
On a donc ¬(a τ b).


.τ n’est donc pas une relation totale. . Point C démontré.
C.Q.F.D.

D La relation τ n’est pas surjective.


Nous devons démontrer que ¬(∀b ∈ R | (∃a ∈ Z | a τ b) ).
Ce qui est équivalent à démontrer que (∃b ∈ R | ¬(∃a ∈ Z | a τ b) ). . h De Morgan i
Ce qui est équivalent à démontrer que (∃b ∈ R | (∀a ∈ Z | ¬(a τ b) ) ). .h De Morgan i
Démontrons que (∃b ∈ R | ∀(a ∈ Z | ¬(a τ b) ) ).
Soit b = 0. . h Un tel b existe, car 0 ∈ R. i
Soit a ∈ Z.
On a que a1 6= 0 quelle que soit la valeur de a. . h Arithmétique i
On ne peut donc pas avoir b = a1 .
On a donc ¬(a τ b).


τ. n’est donc pas une relation surjective. . Point D démontré.
C.Q.F.D.
78 CHAPITRE 1. THÉORIE DES ENSEMBLES

Pour approfondir la maı̂trise de ce type de démonstration, nous invitons le lecteur à


démontrer que la relation τ 0 = hi, ji ∈ Z × R | j = | 1i | n’est pas injective et que la relation


τ 00 = hi, ji ∈ Z × R | j = 1i ∪ {h0, 42i} est totale.




Propriétés d’une relation inverse

Le théorème suivant fait grandement ressortir la relation de dualité qu’il y a entre la


totalité et la surjectivité et entre le déterminisme et l’injectivité. Cependant pour bien com-
prendre ce qui ce passe ici, il est important de bien comprendre la signification de chacune
des phrases qui composent cette démonstration et non seulement de s’assurer formellement
que c’est bien une démonstration correcte.

Théorème 1.4.17 Dualité totalité–surjectivité et dualité déterminisme–injectivité


Soit ρ une relation. Alors :
a : ρ est total ⇔ ρ−1 est surjectif ;
b : ρ est déterministe ⇔ ρ−1 est injectif ;
c : ρ est injectif ⇔ ρ−1 est déterministe ;
d : ρ est surjectif ⇔ ρ−1 est total.

Démonstration du théorème 1.4.17


Soit ρ ⊆ S × T .

a : ρ est total ⇔ ρ−1 est surjectif.


ρ est total.
⇔ (∀a ∈ S | (∃b ∈ T | a ρ b) ). . h déf. totalité de ρ i
⇔ (∀a ∈ S | (∃b ∈ T | b (ρ−1 ) a) ). . h déf. ρ−1 i
⇔ ρ−1 est surjectif. . h déf. surjectivité de ρ−1 i

b : ρ est déterministe ⇔ ρ−1 est injectif.


ρ est déterministe.
⇔ (∀a ∈ S, b ∈ T, b0 ∈ T | a ρ b ∧ a ρ b0 ⇒ b = b0 ). . h déf. déterminisme de ρ i
⇔ (∀a ∈ S, b ∈ T, b0 ∈ T | b (ρ−1 ) a ∧ b0 (ρ−1 ) a ⇒ b = b0 ). . h définition de ρ−1 i
⇔ (∀b ∈ T, b0 ∈ T, a ∈ S | b (ρ−1 ) a ∧ b0 (ρ−1 ) a ⇒ b = b0 )
⇔ ρ−1 est injectif. . h définition de l’injectivité de ρ−1 i
1.4. RELATIONS ET FONCTIONS 79

c : ρ est injectif ⇔ ρ−1 est déterministe.


ρ est injectif.
⇔ (∀a ∈ S, a0 ∈ S, b ∈ T | a ρ b ∧ a0 ρ b ⇒ a = a0 ) . h définition de l’injectivité de ρ i
⇔ (∀a ∈ S, a0 ∈ S, b ∈ T | b (ρ−1 ) a ∧ b (ρ−1 ) a0 ⇒ a = a0 ) . h définition de ρ−1 i
⇔ (∀b ∈ T, a ∈ S, a0 ∈ S | b (ρ−1 ) a ∧ b (ρ−1 ) a0 ⇒ a = a0 )
⇔ ρ−1 est déterministe. . h déf. déterminisme de ρ−1 i
d : ρ est surjectif ⇔ ρ−1 est total.
ρ est surjectif.
⇔ (∀b ∈ T | (∃a ∈ S | a ρ b) ). . h définition de la surjectivité de ρ i
⇔ (∀b ∈ T | (∃a ∈ S | b (ρ−1 ) a) ). . h définition de ρ−1 i
⇔ ρ−1 est total. . h définition de la totalité de ρ−1 i
.
C.Q.F.D.

Propriétés d’une relation composée

Le théorème suivant stipule que les quatre propriétés des relations énoncées par la défi-
nition 1.4.16 (page 75) se conservent lors de la composition de deux relations.

Pour bien comprendre ce théorème, il peut être utile de réviser la définition de l’opérateur
de composition “◦” (définition 1.4.7, page 68). Ainsi, si ρ ⊆ S × T et σ ⊆ T × U sont deux
relations, la relation composée (ρ ◦ σ) ⊆ S × U sera telle que :

a (ρ ◦ σ) c ⇔ (∃b ∈ T | a ρ b ∧ b σ c) .

Théorème 1.4.18 Composition de relations totales, surjectives, déterministes et injectives.

Soit ρ ⊆ S × T et σ ⊆ T × U deux relations. Alors :


a: ρ et σ sont totaux ⇒ ρ ◦ σ est total ;
b: ρ et σ sont déterministes ⇒ ρ ◦ σ est déterministe ;
c: ρ et σ sont injectifs ⇒ ρ ◦ σ est injectif ;
d: ρ et σ sont surjectifs ⇒ ρ ◦ σ est surjectif.

Nous présentons ici la démonstration des deux premiers points du théorème, soit la com-
position de relations totales et la composition de relations déterministes. Le lecteur est en-
couragé à compléter la démonstration des deux derniers points de l’énoncé. Il est possible
de s’inspirer grandement du travail déjà fait, considérant que, comme nous en informe le
théorème 1.4.17 (page 78) il y a dualité entre les notions de totalité et de surjectivité ainsi
qu’entre les notions de déterminisme et d’injectivité.
80 CHAPITRE 1. THÉORIE DES ENSEMBLES

Démonstration (partielle) du théorème 1.4.18


Soit ρ ⊆ S × T et σ ⊆ T × U .

a: ρ et σ sont totaux ⇒ ρ ◦ σ est total




En supposant (♥) (∀a ∈ S | (∃b ∈ T | a ρ b) )
et (♥♥) (∀b ∈ T | (∃c ∈ U | b σ c) )




Démontrons (∀a ∈ S | (∃c ∈ U | a (ρ ◦ σ) c) )

Soit a ∈ S. . h Montrons (∃c ∈ U | a (ρ ◦ σ) c). i


Soit b ∈ T choisi tel que a ρ b. . h Par (♥) un tel b appartenant à T existe bien. i
Soit c ∈ U choisi tel que b σ c. . h Par (♥♥) un tel c appartenant à U existe bien. i
Alors on a bien que a (ρ ◦ σ) c. . h Par la définition de ◦, car a ρ b et b σ c. i
ρ ◦ σ est donc une relation totale. . h Point “a” démontré i

b: ρ et σ sont déterministes ⇒ ρ ◦ σ est déterministe




En supposant (?) (∀a ∈ S, b ∈ T, b0 ∈ T | a ρ b ∧ a ρ b0 ⇒ b = b0 )
et (??) (∀b ∈ T, c ∈ U, c0 ∈ U | b σ c ∧ b σ c0 ⇒ c = c0 )



(∀a ∈ S, c ∈ U, c0 ∈ U | a (ρ ◦ σ) c ∧ a (ρ ◦ σ) c0 ⇒ c = c0 )

Démontrons

Soit a ∈ S, c ∈ U, c0 ∈ U choisis tels que a (ρ◦σ) c et a (ρ◦σ) c0 .h Montrons que c = c0 . i


Soit b ∈ T choisi tel que a ρ b ∧ b σ c
. . h Comme a (ρ ◦ σ) c, par la définition de ◦, un tel b existe. i
Soit b ∈ T choisi tel que a ρ b0 ∧ b0 σ c0
0

. . h Comme a (ρ ◦ σ) c0 , par la définition de ◦, un tel b0 existe. i


Notons qu’il est a priori possible que b0 soit différent de b.
Comme on a a ρ b et a ρ b0 , on a donc b = b0 . . h Voir (?). i
Ce dernier fait, combiné avec b0 σ c0 , nous donne b σ c0 .
Ainsi, on a à la fois b σ c et b σ c0 .
On a donc c = c0 . h Voir (??). i
ρ ◦ σ est donc une relation déterministe. . h Point “b” démontré i
c : ρ et σ sont injectifs ⇒ ρ ◦ σ est injectif
Cette partie de la démonstration est laissée en exercice au lecteur.
d : ρ et σ sont surjectifs ⇒ ρ ◦ σ est surjectif
Cette partie de la démonstration est laissée en exercice au lecteur.
.
C.Q.F.D.
1.4. RELATIONS ET FONCTIONS 81

1.4.5 Fonctions (totales) et fonctions partielles

Une relation est appelée une fonction (ou fonction totale) si elle est à la fois totale et
déterministe 21 . Autrement dit, une relation f ⊆ X × Y est une fonction lorsque pour chaque
x ∈ X il existe un et un seul y ∈ Y tel que hx, yi ∈ f . En effet :
— le fait que pour chaque x ∈ X il existe un y ∈ Y établit que f est une relation totale ;
— le fait que pour chaque x ∈ X il n’existe qu’un seul y ∈ Y établi que f est une relation
déterministe.

Nous utilisons le terme fonction partielle pour désigner une relation déterministe qui
n’est pas totale. Autrement dit, une relation f ⊆ X × Y est une fonction partielle lorsque
pour chaque x ∈ X il y a au plus un y ∈ Y tel que hx, yi ∈ f et il existe un x ∈ X tel que
(∀y ∈ Y | x ∈/ Y ).

À titre d’exemple, la figure 1.11 présente trois relations dans le plan cartésien (R2 ). La

parabole (y = x2 ) est une fonction, la racine carrée (y = x) est une fonction partielle
et l’inverse de la parabole (y 2 = x) n’est ni une fonction ni une fonction partielle. En fait,
l’inverse de la parabole est une relation bijective.


(a) {hx, yi ∈ R2 | y = x2 } (b) {hx, yi ∈ R2 | x = y 2 } (c) {hx, yi ∈ R2 | y = x}

Figure 1.11 – Exemples d’une fonction (a), d’une relation non déterministe
(b) et d’une fonction partielle (c). Notez que le graphique de l’exemple (c)
peut aussi représenter une fonction si
√ on considère plutôt la relation totale et
+ + def
déterministe {hx, yi ∈ R × R | y = x} avec R = {x ∈ R | x ≥ 0}.

21. Il s’agit d’une convention que nous adoptons pour ce cours et qui est fréquemment utilisée en
mathématiques. Notez cependant que certains auteurs utilisent plutôt le terme “application” pour désigner
une relation totale et déterministe. Dans ce cas, le terme “fonction” désigne une relation déterministe (et pas
nécessairement totale).
82 CHAPITRE 1. THÉORIE DES ENSEMBLES

Notation et règle de correspondance

Lorsqu’une relation f est une fonction, l’expression “hx, yi ∈ f ” pourra être remplacée
par “f (x) = y” (la notation “f.x = y” est aussi utilisée à l’occasion). Ainsi :

def
f (x) = y = x f y
def
= hx, yi ∈ f .

Contrairement au cas où la relation f n’est pas une fonction, cette nouvelle notation
ne comporte ici aucune ambiguı̈té puisque que chaque “x” de l’ensemble de départ est en
relation avec un et un seul “y” de l’ensemble d’arrivée.

On utilise le terme règle de correspondance pour désigner la règle qui permet de savoir
à quel élément y de l’ensemble d’arrivée correspond chacun des éléments x de l’ensemble
de départ. Dans le cadre de ce cours, pour démontrer qu’une relation définie par règle de
correspondance est une fonction, il sera suffisant de dire que cette règle de correspondance
est bien définie (c’est-à-dire que cette règle associe bien à chaque élément de l’ensemble de
départ un et un seul élément de l’ensemble d’arrivée.)

Il y a plusieurs notations permettant de bien définir une fonction, nous utiliserons sou-
vent la suivante, puisqu’elle met clairement en évidence les trois notions nécessaires pour
“connaı̂tre complètement” une fonction (ensemble de départ, ensemble d’arrivée et règle de
correspondance) :
f : X −→ Y
a 7−→ [. . .]
Cette notation signifie : f est une fonction d’ensemble de départ X, d’ensemble d’arrivée Y ,
qui est définie par la règle de correspondance “f (a) = [. . .]”. Par exemple, on définit la
parabole sur le plan cartésien (fréquemment représentée par l’équation “ y = x2 ”) par :

f : R −→ R
x 7−→ x2

Ce qui est équivalent à :


f = {hx, yi ∈ R2 | y = x2 } .
1.4. RELATIONS ET FONCTIONS 83

Pensez-y!

Il ne faut pas perdre de vue qu’une fonction est un ensemble. Ainsi, toutes les notations
utilisées jusqu’ici pour définir un ensemble sont également valides. Comme discuté à la
section 1.2.2 (page 28), on peut toujours définir un ensemble par compréhension ou par
extension.

Par exemple, la fonction d ∈ Z2 qui associe un nombre relatif avec le double de sa


valeur (c’est-à-dire d(x) = 2x) peut-être écrite des manières suivantes :

d : Z −→ Z
(1)
x 7−→ 2x ,

(2) d = {ha, bi ∈ Z2 | b = 2a},

(3) d = {. . . , h−3, −6i, h−2, −4i, h−1, −2i, h0, 0i, h1, 2i, h2, 4i, h3, 6i, . . .}.

Les équations (1) et (2) définissent l’ensemble d par compréhension, tandis que
l’équation (3) définit l’ensemble d par extension. Rappelons qu’il n’y a aucune distinction
entre les ensembles obtenus par les trois définitions.

Cette dernière constatation peut paraı̂tre dérangeante à un regard d’informaticien,


qui conçoit que pour programmer une telle “fonction”, il est beaucoup plus efficace de
multiplier une variable par 2 que de parcourir une liste pour trouver la réponse désirée.
Ici, il importe de distinguer le concept d’une fonction dans la théorie des ensembles et le
concept d’une fonction du point de vue d’un langage de programmation. Bien qu’il s’agisse
d’un problème important, le “temps de calcul” d’une fonction ne nous intéresse pas pour
l’instant, et nous travaillons consciemment avec des outils qui en font abstraction.

Fonctions surjectives, injectives et bijectives

Nous utiliserons parfois les notations suivantes pour mettre en évidence certaines pro-
priétés d’une relation f ⊆ B × C.

— Si f une fonction, c’est-à-dire une relation à la fois déterministe et totale, on peut


écrire :
f : B −→ C .
84 CHAPITRE 1. THÉORIE DES ENSEMBLES

— Si f est une fonction surjective, c’est-à-dire une relation qui est à la fois déterministe,
totale et surjective, on peut écrire :
f :B →
→ C.

— Si f est une fonction injective. c’est-à-dire une relation qui est à la fois déterministe,
totale et injective, on peut écrire :
f :B C.

— Une fonction bijective, c’est-à-dire une relation qui est à la fois déterministe, totale,
surjective et injective, on peut écrire :
→ C.
f :B 

Les deux prochaines propositions montrent que, lorsqu’une relation f est une fonction, la
notation “f (a) = b” permet de réécrire les définitions d’injectivité et de surjectivité.

Proposition 1.4.19 Définitions équivalentes d’une fonction surjective


Soit une fonction f : S −→ T . Les deux expressions suivantes sont équivalentes :

a: (∀b ∈ T | (∃a ∈ S | a f b) )
b: (∀b ∈ T | (∃a ∈ S | f (a) = b )

La proposition 1.4.19-a correspond à la définition originale d’une relation surjective (dé-


finition 1.4.16-b, page 75), tandis que la proposition 1.4.19-b est obtenue en utilisant la
notation “f (a) = b” propre aux fonctions.

Proposition 1.4.20 Définitions équivalentes d’une fonction injective


Soit une fonction f : S −→ T . Les trois expressions suivantes sont équivalentes :

a: (∀a ∈ S, a0 ∈ S, b ∈ T | a f b ∧ a0 f b ⇒ a = a0 )
b: (∀a ∈ S, a0 ∈ S | f (a) = f (a0 ) ⇒ a = a0 )
c: (∀a ∈ S, a0 ∈ S | a 6= a0 ⇒ f (a) 6= f (a0 ))

La proposition 1.4.20-a correspond à la définition originale d’une relation injective (dé-


finition 1.4.16-d, page 75) et la proposition 1.4.20-b est obtenue en utilisant la notation
“f (a) = b” propre aux fonctions. À partir de cette dernière, on obtient la proposition 1.4.20-c
en appliquant la propriété de contraposition (Proposition 1.1.8, page 16).

Les propositions 1.4.19 et 1.4.20 sont bien sûr utiles pour démontrer qu’une fonction
possède (ou non) la propriété de surjectivité ou d’injectivité. À titre d’exemple, considérons
1.4. RELATIONS ET FONCTIONS 85

la fonction suivante :
k : Z −→ Z
x 7−→ 2x
Intuitivement, la fonction k semble être une relation injective (car chaque élément de l’image
“2x” semble associé à un seul élément du domaine “x”) mais non surjective (car les nombres
impairs ne semblent pas faire partie de l’image). Pour en être certain, en voici la démonstration.

Démonstration : la fonction k est injective, mais non surjective

A La fonction k est injective.


Comme k est une fonction, nous allons démontrer :
(∀x ∈ Z, x0 ∈ Z | k(x) = k(x0 ) ⇒ x = x0 ) .

Soit x ∈ Z et x0 ∈ Z choisis tels que k(x) = k(x0 ).


Alors on a 2x = 2x0 . . h Définition de k i
0
Alors on a 2x
2
= 2x2 . . h Arithmétique i
Alors on a x = x0 . . h Arithmétique i


k est bien une fonction injective. . Point A démontré.

B La fonction k est non surjective


Nous devons donc démontrer :
¬(∀y ∈ Z | (∃x ∈ Z | k(x) = y)) .

Ce qui est équivalent à démontrer (∃y ∈ Z | ¬(∃x ∈ Z | k(x) = y)). . h De Morgan i


Ce qui est équivalent à démontrer (∃y ∈ Z | (∀x ∈ Z | k(x) 6= y)). . h De Morgan i
Démontrons donc (∃y ∈ Z | (∀x ∈ Z | k(x) 6= y)).
Soit y = 3. . h Un tel y existe, car clairement 3 ∈ Z. i
Soit x ∈ Z.
Alors clairement, k(x) = 2x 6= 3, car 3 n’est pas un nombre pair. . h Arithmétique i


k n’est pas une fonction surjective. . Point B démontré.
.
C.Q.F.D.
86 CHAPITRE 1. THÉORIE DES ENSEMBLES

Fonctions inverses

Considérons une fonction f : S −→ T . La fonction inverse de f est une fonction


g : T −→ S telle que, pour tout ha, bi ∈ S × T , on a f ( g(b) ) = b et g( f (a) ) = a.
Notons qu’il est toujours possible de calculer la relation inverse f −1 d’une fonction f (voir
la définition 1.4.12), mais que la relation f −1 n’est pas nécessairement une fonction. Plus
précisément, les résultats suivants découlent directement du théorème 1.4.17.

Corollaire 1.4.21 Inverses de fonctions et de relations


Soit f une relation.

a: f est une fonction ⇔ f −1 est une relation bijective ;


b: f est une fonction injective ⇔ f −1 est une relation bijective et déterministe ;
c: f est une fonction surjective ⇔ f −1 est une relation bijective et totale ;
d: f est une fonction bijective ⇔ f −1 est une fonction bijective.

Le théorème suivant établit le lien entre les notions de composition de relations et de


fonctions inverses.

Théorème 1.4.22 Composition de fonctions inverses


Soit ρ ⊆ S × T et σ ⊆ T × S deux relations. On a que ρ et σ sont deux fonctions bijectives
et ρ−1 = σ si et seulement si :

ρ ◦ σ = IS et σ ◦ ρ = IT .

1.4.6 Relations d’équivalence et ordres

Lorsque nous avons introduit les ensembles, nous avons insisté sur le fait que les éléments
de ces ensembles ne sont pas ordonnés. Dans cette section, nous verrons que certaines relations
permettent de comparer les éléments d’un ensemble. Nous parlerons de relations d’équivalence
(qui peuvent être vues comme une généralisation de l’égalité “=”) et d’ordres (qui peuvent
être vus comme une généralisation du plus petit ou égal “≤”). Ces concepts reposent sur
les propriétés de réflexivité, de transitivité et de symétrie dont nous avons discutées à la
section 1.4.4 (voir la définition 1.4.14, page 73).
1.4. RELATIONS ET FONCTIONS 87

Équivalence

Deux éléments d’un ensemble sont équivalents lorsqu’ils possèdent une certaine caracté-
ristique en commun. Cette caractéristique dépend du contexte dans lequel on travaille. Voici
quelques idées d’éléments équivalents :
— Deux personnes sont équivalentes si elles ont le même nom de famille ;
— Deux nombres entiers sont équivalents s’ils possèdent la même parité (pair ou impair) ;
— Deux nombres naturels sont équivalents si leur représentation binaire requiert de même
nombre de bits (le nombre de bit requis pour x ∈ N étant donné par blog2 xc + 1) ;
— Deux fonctions C++ sont équivalentes si elles ont toujours la même valeur de retour.
Par exemple, les trois fonctions suivantes sont équivalentes selon cette définition :

int bleu(int a) int blanc(int b) int rouge(int c)


{ { {
return 2*a; int x = b+b; if (c==5) return 10;
} return x; else return bleu(c);
} }

Une relation d’équivalence sur l’ensemble S est une relation constituée de paires
d’éléments équivalents. Nous utilisons souvent le symbole “'” pour désigner une relation
d’équivalence. Dans ce contexte, l’expression “a ' b” signifie “l’élément a est équivalent à
l’élément b”.

Définition 1.4.23 Relation d’équivalence


La relation ' est une relation d’équivalence si elle possède les propriétés suivantes :

– Réflexivité (Déf 1.4.14-a) : a ' a, pour tout a ∈ S ;


. h c’est-à-dire (∀a ∈ S | a ' a) i

– Symétrie (Déf 1.4.14-c) : Si a ' b alors b ' a, pour tout a, b ∈ S ;


. h c’est-à-dire (∀a, b ∈ S | a ' b ⇒ b ' a) i

– Transitivité (Déf 1.4.14-f ) : Si a ' b et b ' c alors a ' c, pour tout a, b, c ∈ S.


. h c’est-à-dire (∀a, b, c ∈ S | a ' b ∧ b ' c ⇒ a ' c) i

Considérons un ensemble de personnes P , l’ensemble des nombres naturels N et l’en-


semble F des fonctions programmables en langage C++. Voici quelques exemples de relations
d’équivalences pour chacun de ces trois ensembles :
— '1 = {ha, bi ∈ P 2 | a a le même nom de famille que b} est une relation d’équivalence
sur P . On a :
“Réjean Tremblay” '1 “Elvis Tremblay” .
88 CHAPITRE 1. THÉORIE DES ENSEMBLES

— '2 = {hx, yi ∈ N2 | x % 2 = y % 2} est une relation d’équivalence sur N. On a :

¬(8 '2 11) et 8 '2 42 .

— '3 = {hx, yi ∈ N2 | blog2 xc = blog2 yc} est une relation d’équivalence sur N. On a :

8 '3 11 et ¬(8 '3 42) .

— '4 = {hf1 , f2 i ∈ F 2 | f1 et f2 ont toujours la même valeur de retour } est une relation
d’équivalence sur F . On a :

bleu() '4 blanc(), blanc() '4 rouge() et rouge() '4 bleu() .

Le lecteur est encouragé à démontrer que les relations ci-dessus sont bien des relations
d’équivalences. Pour ce faire, il faut démontrer qu’elles possèdent chacune des trois propriétés
de réflexivité, de symétrie et de transitivité.

Étant donné une relation d’équivalence ' sur un ensemble S, une classe d’équivalence
est un sous ensemble qui regroupe tous les éléments de S qui sont équivalents entre eux.
Remarquons que chaque élément de S appartient à une et une seule classe d’équivalence. De
même, l’union de toutes les classes d’équivalences de S égale l’ensemble S lui-même.

À titre d’exemple, les ensembles N1 et N2 ci dessous sont les deux classes d’équivalence
de la relation '2 = {hx, yi ∈ N2 | x % 2 = y % 2} sur l’ensemble N (On a bien N1 ∪ N2 = N.) :

N1 = {0, 2, 4, 6, 8, . . .} ,
N2 = {1, 3, 5, 7, 9, . . .} .

Enfin, remarquons pour compléter que la relation d’égalité “=” est une relation d’équiva-
lence sur N. Cette relation d’équivalence est très stricte, car chaque élément n’est équivalent
qu’à lui-même (c’est une relation à la fois symétrique et antisymétrique !). Autrement dit,
toutes les classes d’équivalences de la relation “=” ne contiennent qu’un seul élément.

Ordre partiel

Un ordre est une relation qui permet d’ordonnancer les éléments d’un ensemble. Le critère
d’ordonnancement dépend du problème étudié. Voici quelques idées de critères sur lequel on
peut baser un ordre :

— Un mot qui en précède un autre selon l’ordre alphabétique ;


1.4. RELATIONS ET FONCTIONS 89

— Une personne qui est l’ancêtre d’une autre ;


— Une tâche qui est préalable à une autre pour assembler une voiture sur une chaı̂ne de
montage.

Nous utiliserons souvent le symbole “” pour désigner une relation d’ordre. Dans ce
contexte, l’expression “a  b” signifie que l’élément a précède l’élément b selon une rela-
tion d’ordre donnée. Nous utiliserons parfois la notation “b  a” pour désigner l’expression
“a  b”.

Définition 1.4.24 Ordre partiel


Une relation  est un ordre partiel sur l’ensemble S si elle possède les trois propriétés
suivantes :

– Réflexivité (Déf 1.4.14-a) : a  a, pour tout a ∈ S ;


. h c’est-à-dire (∀a ∈ S | a  a) i

– Antisymétrie (Déf 1.4.14-e) : Si a  b et b  a alors a = b, pour tout a, b ∈ S ;


. h c’est-à-dire (∀a, b ∈ S | a  b ∧ b  a ⇒ a = b) i

– Transitivité (Déf 1.4.14-f ) : Si a  b et b  c alors a  c, pour tout a, b, c ∈ S.


. h c’est-à-dire (∀a, b, c ∈ S | a  b ∧ b  c ⇒ a  c) i

Voici deux exemples de relations qui sont des ordres partiels, même si ceci demande un
peu de réflexion (ou une démonstration) pour s’en convaincre :

— Considérons l’ensemble puissance des naturels P(N). Nous pouvons redéfinir l’opérateur
ensembliste d’inclusion comme un ordre partiel sur P(N) :
def
⊆ = {hA, Bi ∈ P(N)×P(N) | e ∈ A ⇒ e ∈ B} .

— Considérons l’ensemble des nombres naturels non nuls N∗ et définissons l’ordre partiel
“est un diviseur de” que nous définissons ainsi :
D = {ha, bi ∈ N∗ × N∗ | b % a = 0} .
def

Selon cet ordre partiel, on a entre autres que : 1 D 3 D 9 D 27 D 270 . . .


90 CHAPITRE 1. THÉORIE DES ENSEMBLES

Ordre complet

Une relation  sur un ensemble S est un ordre complet 22 lorsque, en plus d’être un ordre
partiel (c’est-à-dire d’être réflexive, antisymétrique et transitive), elle respecte la propriété
suivante :
(∀a ∈ S, b ∈ S | a  b ∨ b  a) .

Autrement dit,  est un ordre complet si et seulement si tous les éléments de l’ensemble S
sont comparables entre eux.

L’ordre partiel “est un diviseur de” D présenté en exemple plus haut n’est pas un ordre
complet sur N∗ . En effet, on n’a ni 2 D 3 ni 3 D 2. De même, l’ordre partiel d’inclusion ⊆
n’est pas un ordre complet, car {1, 2} * {2, 3} et {2, 3} * {1, 2}.

Un ordre complet bien connu est la relation “plus petit ou égal” ≤ . De même, l’ordre
alphabétique sur l’ensemble des mots du dictionnaire est un ordre complet.

Ordre strict

Un ordre strict est un ordre qui ne contient pas les couples formés de deux fois le
même élément. Nous utilisons souvent le symbole “≺” pour désigner une relation qui est un
ordre strict. Contrairement à un ordre, un ordre strict n’admet jamais “a ≺ a”, pour tout a
appartenant à l’ensemble sur lequel est définie la relation.

Définition 1.4.25 Ordre partiel strict


Une relation ≺ est un ordre partiel strict sur l’ensemble S si elle possède les trois propriétés
suivantes :
– Irréflexivité (Déf 1.4.14-b) : ¬(a ≺ a), pour tout a ∈ S ;
. h c’est-à-dire (∀a ∈ S | ¬(a ≺ a) i

– Asymétrie (Déf 1.4.14-d) : Si a ≺ b alors ¬(b ≺ a), pour tout a, b ∈ S ;


. h c’est-à-dire (∀a, b ∈ S | a ≺ b ⇒ ¬(b ≺ a)) i

– Transitivité (Déf 1.4.14-f ) : Si a ≺ b et b ≺ c alors a ≺ c, pour tout a, b, c ∈ S.


.h c’est-à-dire (∀a, b, c ∈ S | a ≺ b ∧ b ≺ c ⇒ a ≺ c) i

Une relation ≺ sur un ensemble S est un ordre complet strict lorsque, en plus d’être
22. Plusieurs auteurs utilisent plutôt le terme “ordre total”. Dans ce texte, on utilise le terme “ordre
complet” pour éviter toute confusion possible avec le concept de “relation totale”, qui désigne une relation
qui possède la propriété de totalité.
1.4. RELATIONS ET FONCTIONS 91

un ordre partiel strict, tous les éléments de l’ensemble S sont comparables entre eux :

(∀a ∈ S, b ∈ S | a ≺ b ∨ b ≺ a ∨ a = b) .

Nous pouvons redéfinir l’opérateur ensembliste d’inclusion stricte comme un ordre partiel
strict sur P(N) :
def
⊂ = {hA, Bi ∈ P(N)×P(N) | A 6= B ∧ (e ∈ A ⇒ e ∈ B) } .

De même, la relation “strictement plus petit” < est un exemple bien connu d’ordre complet
strict.

Notez que pour passer d’un ordre (partiel ou complet) à un ordre strict, il suffit d’enlever
tous les couples de la forme ha, ai de la relation. Inversement, pour passer d’un ordre strict
à un ordre, il suffit d’ajouter tous les couples de la forme ha, ai à la relation.

Diagrammes de Hasse

On peut représenter un ordre  sur un ensemble S par un diagramme de Hasse (en


autant que la cardinalité de S ne soit pas trop grande). Ce diagramme prend la forme d’un
graphe dont les sommets correspondent aux éléments de S. Si a et b sont deux éléments
distincts de S et que a  b, alors le sommet a est placé plus bas que le sommet b. S’il n’existe
pas d’élément e ∈ S \ {a, b}, tel que a  e  b, alors une arête relie les sommets a et b.

La figure 1.12 présente les diagrammes de Hasse des deux ordres partiels donnés en
exemple plus haut.

{1,2,3} 8 12

{1,2} {1,3} {2,3} 10 4 6 9

5 2 3 7 11
{1} {2} {3}

∅ 1
(a) Ordre ⊆ sur P({1, 2, 3}). (b) Ordre D sur {1, 2, . . . , 12}.

Figure 1.12 – Diagrammes de Hasse des ordres partiels d’inclusion ⊆ (figure


de gauche) et “est un diviseur de” ≺D (figure de droite).
92 CHAPITRE 1. THÉORIE DES ENSEMBLES

1.4.7 Exercices sur les relations et fonctions

Exercice 1 : (Vous pouvez faire cet exercice en représentant vos relations par des graphes.)
Étant données les trois relations ρ, σ, θ ⊆ {1, 2, 3, 4} × {1, 2, 3, 4} suivantes :
— ρ = {h1, 2i, h2, 3i, h3, 4i, h4, 1i}
— σ = {h1, 1i, h1, 2i, h1, 3i, h1, 4i, h2, 1i, h3, 1i, h4, 1i}
— θ = {hx, yi | x ≤ y}

1. Calculez ρ ◦ σ, ρ2 , θc et θ−1 .
2. Déterminez la (ou les) propriété(s) que la relation ρ satisfait parmi les suivantes :
(a) réflexivité (b) irréflexivité (c) symétrie
(d) antisymétrie (e) asymétrie (f) transitivité
3. Même question pour la relation σ.
4. Même question pour la relation θ.
5. Existe-t-il un n pour lequel ρn = {1, 2, 3, 4} × {1, 2, 3, 4} ? Si oui, trouvez le plus petit
de ces n.
6. Même question pour la relation σ.
7. Même question pour la relation θ.

Exercice 2 : (Pour ce numéro, aucune justification n’est demandée.)


Étant données les deux relations ρ, θ ⊆ Z × Z suivantes :
— ρ = {hi, ji | i + 1 = j}
— θ = {hx, yi | (∃z ∈ Z | 2z = x − y)}

a) Donnez ρ2 , θc et θ−1 .
b) Déterminez la (ou les) propriété(s) que la relation ρ satisfait parmi les suivantes :
(a) réflexivité (b) irréflexivité (c) symétrie
(d) antisymétrie (e) asymétrie (f) transitivité
c) Même question pour la relation θ.

Exercice 3 : Quelles propriétés du numéro 2b) ci-haut les relations suivantes possèdent-elles ?
a) b ρ c ssi b et c sont des entiers tous deux négatifs ou tous deux positifs.
b) b ρ c ssi b et c sont des entiers tels que b − c est un multiple de 5.
c) ∅, où ∅ est une relation sur un ensemble non vide B.
1.4. RELATIONS ET FONCTIONS 93

d) IB , la relation identité sur un ensemble non vide B.


e) B × B où B est un ensemble non vide contenant au moins deux éléments.
f) = sur Z.
g) < sur Z.
h) ≤ sur Z.
i) b ρ c ssi b est le pére de c.
j) b ρ c ssi b est le pére de c ou vice-versa.
k) b ρ c ssi b est c ou le pére de c.

Exercice 4 : Démontrez la définition équivalente de l’antisymétrie (Proposition 1.4.15-e) :

(∀a, b ∈ S | a ρ b ∧ b ρ a ⇒ a = b) ⇔ ρ ∩ ρ−1 ⊆ IS .

Exercice 5 : (Pour cet exercice, aucune réponse n’a à être justifiée.) Dites si chacune des
relations suivantes est (i) déterministe, (ii) totale, (iii) injective, (iv) surjective, (v) une fonc-
tion, (vi) une fonction injective, (vii) une fonction surjective ou (viii) une fonction bijective.
a) ρ = {hi, ji ∈ R2 | i + 1 = j} ;
b) σ = {hi, ji ∈ N2 | i + 1 = j} ;
c) θ = {hi, ji ∈ N2 | i − 1 = j} ;
d) d : R −→ R, définie par la règle de correspondance : d(x) = x2 ;
e) la relation inverse de la relation d définie en d) ;
f) f : R+ −→ R, définie par la règle de correspondance : f (x) = x2 ;
g) g : R+ −→ R+ , définie par la règle de correspondance : g(x) = x2 ;
h) h : R −→ [−1, 1], définie par la règle de correspondance : h(x) = sin(x) ;
i) i : R −→ R, définie par la règle de correspondance : i(x) = x3 ;
j) la relation inverse de la relation i définie en i) ;
k) k : R −→ R+ , définie par la règle de correspondance : k(x) = 2x ;

l) l : R −→ R+ , définie par la règle de correspondance : l(x) = log2 (x) ;


m) m : R+ −→ R, définie par la règle de correspondance : m(x) = log2 (x).
94 CHAPITRE 1. THÉORIE DES ENSEMBLES

Exercice 6 : (Pour ce numéro, seuls le c) et le e) nécessitent quelques justifications et vous


pouvez définir toute relation par une représentation graphique.)
a) Construisez une relation ρ ⊆ A × B qui soit une fonction bijective.
b) Construisez une relation θ ⊆ C × D qui ne soit ni totale, ni déterministe, ni injective,
ni surjective.
c) Dans votre réponse en a), est-ce que |A| = |B| ? Si oui, recommencez la question a)
de telle sorte que |A| =
6 |B|. Si vous n’y arrivez pas, expliquez pourquoi.
d) Soit E = {1, 2, 3}. Construisez une fonction f : E −→ P(E).
e) À partir de la fonction f que vous avez fabriquée en d), construisez l’ensemble
T = {e ∈ E | e 6∈ f (e)}.
f) Étant donné le f et le T que vous avez construits, est-ce que T appartient à l’ensemble
d’arrivée de f ?
g) Étant donné le f et le T que vous avez construits, est-ce que T ∈ Im(f ) ?
Si vous avez répondu non, refaites les numéros d) et e) de telle sorte que T ∈ Im(f ).
Si vous n’y arrivez pas, expliquez brièvement pourquoi.

Exercice 7 : (Pour cet exercice, toute réponse doit être pleinement justifiée.)
Soit les cinq relations :
— ρ ⊆ N × N, définie par : ρ = {hi, ji | i + 1 = j}
— θ ⊆ Z × Z, définie par : θ = {hx, yi | (∃z ∈ Z | 2z = x − y)}
— f : Z −→ Z, définie par la règle de correspondance : f (x) = x + 3
— g : N −→ N, définie par la règle de correspondance : g(x) = x + 3
— h : Z −→ Z, définie par la règle de correspondance : h(x) = x2

A) Pour chacune d’elle, déterminez si oui ou non, il s’agit :


1) d’une relation déterministe
2) d’une fonction (c.-à-d. : déterministe et totale) ;
3) d’une fonction injective (c.-à-d. : déterministe, totale et injective) ;
4) d’une fonction surjective (c.-à-d. : déterministe, totale et surjective) ;
5) d’une fonction bijective (c.-à-d. : déterministe, totale, injective et surjective).
B) Donnez la fonction inverse de chacune des fonctions bijectives trouvées en A5).

Exercice 8 :

a) Vous venez de démontrer qu’un élément quelconque d’un ensemble X est aussi élément
d’un ensemble Y. Écrivez la phrase logique que vous venez de démontrer.
1.4. RELATIONS ET FONCTIONS 95

b) Étant donnés deux ensembles A et B. En vous inspirant du numéro a), expliquez


comment “classiquement” on démontrerait l’énoncé : A=B

c) Étant donné deux ensembles U et V. Vous venez de démontrer qu’un élément quel-
conque de l’ensemble V est aussi élément d’un ensemble U. Puis vous avez démontré
qu’il existe un élément de l’ensemble U qui n’appartient pas à l’ensemble V. Écrivez
la phrase logique que vous venez de démontrer.

Exercice 9 :
Étant donnée une fonction h : Z −→ Z
• h est strictement croissante ⇔ (∀x, x0 ∈ Z | x < x0 ⇒ h(x) < h(x0 ))
• h est strictement décroissante ⇔ (∀x, x0 ∈ Z | x < x0 ⇒ h(x) > h(x0 ))

(A) Démontrez que la composition de deux fonctions est encore une fonction

(B) Démontrez l’énoncé suivant :


Si f : Z −→ Z et g : Z −→ Z sont deux fonctions strictement décroissantes alors
f ◦ g est une fonction strictement croissante.
(C) Démontrez l’énoncé suivant :
Si f : Z −→ Z et g : Z −→ Z sont deux fonctions strictement croissantes alors
f ◦ g est une fonction strictement croissante.

Exercice 10 : (Pour fin de réflexion et de discussion) Un hôtel a un nombre infini de


chambres (pour chaque entier i > 0, il y a une chambre portant le numéro (i). L’hôtel est
plein (il y a un voyageur dans chaque chambre). Arrive un nouveau voyageur qui voudrait
bien dormir à l’hôtel lui aussi. Alors l’hôtelier lui dit qu’il va lui trouver une chambre. Il ne
mettra à la porte aucun voyageur, il ne mettra pas deux voyageurs dans une même chambre
et il ne fera pas construire une nouvelle chambre. Alors comment l’hôtelier fera-t-il ?

Exercice 11 : (Pour fin de réflexion et de discussions) Une charrue enlève la neige le long
d’une route qui s’étend jusqu’à l’infini. Tout au long de la route, il y a 15cm de neige. La
pelle de la charrue laisse écouler un quinzième de la neige qui entre dans sa pelle (c.-à-d. :
1cm de neige sur les 15). Supposant que la pelle a une capacité infinie et que les flocons
qu’elle laisse écouler sortent selon un principe “premier entré, premier sorti”, quelle quantité
de neige restera dans la pelle une fois le travail terminé ?

Exercice 12 : (Pour fin de réflexion et de discussions) Vous avez deux ensembles infinis,
comment savoir lequel des deux a le plus grand nombre d’éléments ?
96 CHAPITRE 1. THÉORIE DES ENSEMBLES

1.5 Ensembles infinis


Only two things are infinite, the
universe and human stupidity and
I’m not sure about the former.

Albert Einstein (1879 – 1955)

Dans cette dernière partie du chapitre, nous nous intéressons aux ensembles de taille
infinie. Même en informatique, nous sommes confrontés à de telles structures, entre autres
lorsque l’on se demande quelles sont les possibilités et les limites de l’informatique. Par
exemple, lorsqu’on se pose des questions telles que :

— Qu’est-ce qui est calculable en informatique ?


— Étant donné un problème, pourrons-nous toujours décider si ce problème a une solution
ou non ?

Dans un autre ordre d’idées, si on souhaite développer un système qui aura à interagir avec
le monde réel, on est confronté à la notion d’infini. En effet, ce monde réel, la plupart du
temps, fait appel à des paramètres continus, telles la distance, la température, la vitesse. Ces
paramètres peuvent prendre une infinité de valeurs différentes.

Les structures infinies sont en général beaucoup plus difficiles à étudier que les structures
finies. Notre intuition, généralement solide face aux structures finies, est grandement mise à
mal lorsque l’on s’attaque à l’infini. À titre d’exemple :

Une charrue enlève la neige le long d’une route qui s’étend jusqu’à l’infini. Tout
au long de la route, il y a 15 cm de neige. La pelle de la charrue laisse écouler un
quinzième de la neige qui entre dans sa pelle (c.-à-d. : 1cm de neige sur les 15).
Supposant que la pelle a une capacité infinie et que les flocons qu’elle laisse écouler
sortent selon le principe du premier arrivé, premier servi, quelle quantité de neige
restera dans la pelle pour toujours ?

Cet exemple est bien sûr irréalisable dans notre monde. Si on fait cependant abstraction
de ce petit détail et qu’on analyse logiquement le problème, on est obligé de constater que
chaque flocon qui entre dans la pelle finira par en sortir par en dessous, et donc “qu’une fois
le travail terminé”, il ne restera plus rien dans la pelle.

Dans ce chapitre, nous nous intéresserons plus particulièrement au problème de la car-


dinalité des ensembles. Nous savons déjà que calculer la cardinalité d’un ensemble fini
revient à compter le nombre d’éléments que cet ensemble contient. Il est évident que dans le
1.5. ENSEMBLES INFINIS 97

cas des ensembles infinis, cette approche n’est pas envisageable. Pour les ensembles infinis,
nous ne pourrons faire mieux que de comparer les ensembles infinis les uns avec les autres.
Nous aurons donc des résultats du type :
• un ensemble A a autant d’éléments qu’un ensemble B, ce que nous traduirons par :
la cardinalité de A est égale à celle de B ;
ou encore :
• un ensemble A a moins d’éléments qu’un ensemble B,
ce que nous traduirons par : la cardinalité de A est plus petite que celle de B.

Encore une fois, dans le cas des ensembles finis, dire qu’un ensemble A a moins, autant,
ou plus d’éléments qu’un ensemble B n’est pas compliqué. Il nous suffit de savoir “compter
jusque-là”. Dans le cas des ensembles infinis, on ne sait clairement pas “compter jusque-là”.
Il nous faudra donc développer une autre méthode pour arriver à nos fins.

En plus, quelques surprises nous attendent. L’exemple suivant nous en donne un avant-
goût :

Le problème de l’hôtel de Hilbert :

Un hôtel a un nombre infini de chambres (pour chaque entier i > 0, il y a une


chambre portant le numéro i). L’hôtel est plein (il y a un voyageur dans chaque
chambre). Arrive un nouveau voyageur qui voudrait bien dormir à l’hôtel lui aussi.
Alors l’hôtelier lui dit qu’il va lui trouver une chambre. Il ne mettra à la porte
aucun voyageur, il ne mettra pas deux voyageurs dans une même chambre et il
ne fera pas construire une nouvelle chambre. Alors comment l’hôtelier fera-t-il ?

Si on énumère par N∗ = {1, 2, 3, 4, . . .} l’ensemble des numéros de porte des chambres


de l’hôtel, qu’on donne au nouveau voyageur l’étiquette “0” et à chaque voyageur déjà dans
une chambre l’étiquette correspondant au numéro de sa chambre, voici ce que l’hôtelier peut
faire :
— Installer le voyageur “0” dans la chambre “1” ;
— Déménager le voyageur “1” dans la chambre “2” ;
— Déménager le voyageur “2” dans la chambre “3” ;
— Déménager le voyageur “3” dans la chambre “4” ;
— etc.
Cette solution va bien sûr déranger beaucoup de monde. Mais, en fin de compte, chaque
voyageur dormira seul dans une chambre !

Le fait qu’il y ait une solution à ce problème choque notre intuition. Ce choc vient du
fait que, logiquement, il nous faut conclure qu’il y a autant d’éléments dans N∗ que dans N,
98 CHAPITRE 1. THÉORIE DES ENSEMBLES

alors que le premier ensemble est strictement inclus dans le second ; la notion d’avoir autant
d’éléments semble être plutôt élastique dans le cas des ensembles infinis.

Il devient donc de plus en plus évident que le problème du calcul de la cardinalité d’un en-
semble infini sera un problème difficile à résoudre. En fait, comme il a déjà été dit auparavant,
on ne répondra pas directement à la question “combien tel ensemble infini a-t-il d’éléments ?”.
On comparera plutôt deux à deux les ensembles, en se demandant s’ils ont autant d’éléments
l’un que l’autre ou si l’un en a plus que l’autre. De ces éléments de comparaison, on pourra
déduire une hiérarchie des cardinalités des différents ensembles infinis.

1.5.1 “Avoir autant d’éléments”

À la recherche d’une définition

Si on veut arriver à bien définir cette notion d’ensemble infini ayant autant d’éléments
qu’un autre, il nous faut trouver une méthode qui, dans le cas fini, permet d’établir si oui
ou non deux ensembles ont le “même nombre d’éléments”. Toutefois, cette méthode ne doit
pas reposer sur notre capacité de compter les éléments des ensembles finis. On est en effet en
droit d’espérer qu’une telle méthode soit applicable aux ensembles infinis. Nous sommes donc
face à ce problème un peu comme un jeune enfant qui a dans une main des pierres blanches
et dans l’autre des pierres noires, et qui se demande si, oui ou non, chaque main a autant de
pierres.

Voici une solution qui convient au niveau des capacités de l’enfant (en fait cette solution
a vraiment été proposée à un enfant de trois ans) :

Prends une pierre blanche et une pierre noire et place-les côte à côte, puis prends
une autre pierre blanche et une autre pierre noire et place-les côte à côte, juste
en dessous de celles que tu as déjà placées, continue ce processus tant qu’il reste
de pierres de chacun des deux tas. Si les deux tas se finissent en même temps,
c’est que tu en avais autant dans chaque main, sinon c’est le tas dans lequel il
reste encore des pierres qui en avait le plus.

L’enfant fabrique, par ce procédé, une relation entre le tas de pierres blanches et celui
de pierres noires. Si nous sommes dans la situation où les deux tas sont épuisés en même
temps, c’est que la relation fabriquée est une fonction bijective (voir la définition à la
section 1.4.5). Autrement dit, dans le cas fini, nous avons le résultat suivant :
1.5. ENSEMBLES INFINIS 99

Théorème 1.5.1 Deux ensembles finis A et B ont le même nombre d’éléments si et seule-
→ B.
ment s’il existe une fonction bijective f : A 

Rappelons-nous que pour l’instant, la notion avoir “autant d’éléments” n’a toujours
pour les ensembles infinis aucune signification. Pour remédier à ce problème, nous pourrions
nous baser sur ce dernier théorème et décider que nous dirons que deux ensembles (finis ou
infinis) ont “autant d’éléments” si on peut trouver une fonction bijective de l’un vers l’autre.
Autrement dit :

Définition 1.5.2 Soit A et B, deux ensembles. On dit que A a autant d’éléments que B
(ou, de manière équivalente, que la cardinalité de A est égale à la cardinalité de B) ssi il
existe une fonction bijective de A vers B.

Comme nous l’avons vu à la section 1.2.2 la phrase “la cardinalité de A est égale à la
cardinalité de B” est notée “|A| = |B|”.

Notre définition est-elle correcte ?

À la base, cette définition d’avoir “autant d’éléments” est un choix que nous faisons ici.
On aurait pu retenir une autre définition qui, dans le cas fini, aurait coı̈ncidé avec notre
définition.

Donc, avant d’accepter cette nouvelle définition, il serait bon de nous demander si elle
correspond bien à une notion élargie de la notion d’égalité entre le nombre d’éléments d’un
ensemble et le nombre d’éléments d’un autre ensemble. Car une fois qu’on se l’est donnée,
elle devient un axiome de notre théorie et on doit vivre avec et accepter tous les résultats
que nous démontrerons à partir de cette définition, même si parfois ceci pourrait heurter
l’intuition que nous avons de ce concept d’avoir “autant d’éléments”.

Concrètement, une bonne définition de cette notion “d’égalité” de cardinalités devrait


posséder les trois grandes propriétés que toute relation d’équivalence doit posséder. Tel
que nous l’avons présenté par la définition 1.4.23 (page 87), ces trois propriétés sont :
• la réflexivité Est-ce qu’avec cette définition, un ensemble A a toujours la même car-
dinalité que lui-même ?
Autrement dit, est-ce que pour tout ensemble A, on a |A| = |A| ?
• la symétrie Avec cette définition, le fait qu’un ensemble A ait la même cardinalité
qu’un ensemble B implique-t-il toujours que B a la même cardinalité que A ?
Autrement dit, est-ce que pour tout A, B, on a |A| = |B| ⇒ |B| = |A| ?
100 CHAPITRE 1. THÉORIE DES ENSEMBLES

• la transitivité Est-ce qu’avec cette définition, le fait qu’un ensemble A ait la même
cardinalité qu’un ensemble B combiné au fait que ce B ait la même cardinalité qu’un
troisième ensemble C implique toujours que A a la même cardinalité que C ?
Autrement dit, est-ce que pour tout A, B, C,
on a (|A| = |B|) ∧ (|B| = |C|) ⇒ (|A| = |C|) ?

Il est à souhaiter que chacune de ces trois propriétés soit satisfaite par notre définition. Si
ce n’était pas le cas, il ne serait vraiment pas naturel de parler “d’égalité” des cardinalités.
Montrons donc que c’est le cas, pour les ensembles infinis comme pour les ensembles finis.

La réflexivité de notre relation “autant d’éléments”

Pour démontrer la réflexivité, il faut démontrer que pour tout ensemble A, il existe une
fonction bijective de A vers A. La réflexivité est donc une conséquence de la proposition
suivante :

Proposition 1.5.3 Soit A un ensemble, la relation IA est une fonction bijective.

Démonstration
Rappelons que IA : A −→ A est défini par la règle de correspondance IA (x) = x, ∀x ∈ A.
Le fait que IA soit une fonction (c.-à-d. : totale et déterministe) découle directement du fait
que la relation est définie par une règle de correspondance où, pour chaque élément x de
l’ensemble de départ, ne correspond qu’un et un seul élément de l’ensemble d’arrivée, soit x
lui-même.

• Démontrons l’injectivité, c.-à-d. : (∀x, x0 ∈ A | IA (x) = IA (x0 ) ⇒ x = x0 ).


Soit x, x0 ∈ A, choisis tels que IA (x) = IA (x0 ). . h Montrons x = x0 i
Alors on a immédiatement x = x0 . . h Car IA (x) = x et IA (x0 ) = x0 . i
IA est bien une fonction injective.

• Démontrons la surjectivité, c.-à-d. : (∀y ∈ A | (∃x ∈ A | IA (x) = y)).


Soit y ∈ A. . * h Montrons (∃x ∈ A | IA (x) = y)+i
Un tel x existe et appartient bien à A, car l’ensemble de départ
Et soit x = y. .
coı̈ncide avec l’ensemble d’arrivée.
Alors on a bien IA (x) = y. . h Car IA (x) = x et x = y. i
IA est bien une fonction surjective.
.
IA est bien une fonction bijective. C.Q.F.D.
1.5. ENSEMBLES INFINIS 101

La symétrie de notre relation “autant d’éléments”

Pour montrer la symétrie, il faut montrer que pour toute paire d’ensembles A et B : s’il
existe une fonction bijective de A vers B, alors il existe une fonction bijective de B vers A.

La symétrie est une conséquence du théorème suivant :

Théorème 1.5.4 Soit A et B, deux ensembles, et f ⊆ A × B. Alors

la relation f est une fonction bijective ssi la relation inverse f −1 ⊆ B × A est une fonction
bijective.

Démonstration

Rappelons que la relation inverse de la relation f est : f −1 = {hb, ai | ha, bi ∈ f }.

Soit f ⊆ A × B.
Pour démontrer f est une fonction bijective ⇔ f −1 est une fonction bijective, il faut démontrer :

1.− f est total ⇔ f −1 est surjectif ;





 2.− f est déterministe ⇔ f −1 est injectif ;



 3.− f est injectif ⇔ f −1 est déterministe ;
4.− f est surjectif ⇔ f −1 est total.

Or, nous avons déjà fait cette démonstration (Voir le théorème 1.4.17 à la page 78). .
C.Q.F.D.

La transitivité de notre relation “autant d’éléments”

Pour démontrer la transitivité, il faut démontrer que, pour tout triplet d’ensembles A,
B et C, s’il existe une fonction bijective de A vers B et une fonction bijective de B vers C,
alors il existe une fonction bijective de A vers C.

La transitivité est une conséquence du théorème suivant :

Théorème 1.5.5 Soit A, B et C, trois ensembles, et soit f ⊆ A × B et g ⊆ B × C. Si f


et g sont deux fonctions bijectives, alors f ◦ g sera une fonction bijective de A vers C.

Démonstration Ce théorème est une conséquence directe de la définition d’une fonction


.
bijective et du théorème 1.4.18 présenté à la page 79. C.Q.F.D.
102 CHAPITRE 1. THÉORIE DES ENSEMBLES

1.5.2 “Autant” d’éléments que N : Les ensembles infinis dénom-


brables

Parmi les ensembles infinis, une certaine classe est plus intéressante que les autres, c’est
celle des ensembles infinis dénombrables :

Définition 1.5.6 Un ensemble A est dit dénombrable s’il est fini ou de la même cardinalité
que l’ensemble N. :

Établir une bijection f entre l’ensemble N et un ensemble A donne une énumération


des éléments de A. On peut ainsi analyser A en regardant un à un les éléments de A en
commençant par l’élément f (0), puis en regardant l’élément f (1), etc. Pour cette raison, les
ensembles infinis dénombrables auront sur plusieurs aspects un comportement très semblable
à celui des ensembles finis. Très souvent, il sera facile de généraliser un théorème défini sur
des structures finies aux structures infinies dénombrables, alors qu’une généralisation aux
structures non dénombrables sera très difficile, voire impossible.

D’autre part, il est très souvent possible de définir en extension une fonction bijective dont
le domaine est N. Contrairement à la forme en compréhension qui nécessite l’élaboration d’une
règle de correspondance, la forme en extension permet de montrer la dénombrabilité de
certains ensembles d’une façon plus intuitive et visuelle. Une fonction bijective f : N  →A
qui est ainsi définie est souvent appelée une énumération de l’ensemble A puisqu’en somme
définir une telle fonction consiste à énumérer un à un les différents éléments de l’ensemble
d’arrivée ; f (0) étant le 0ième élément de cette énumération, f (1) étant le 1er élément de cette
énumération, f (2) étant le 2ième élément de cette énumération, etc.

Proposition 1.5.7 L’ensemble Z est dénombrable.


Démonstration Démontrons la dénombrabilité de Z, en construisant la fonction bijective
f :N→ Z, qui est définie en extension par :

··· −4 −3 −2 −1 0 1 2 3 4 ···
↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
··· f (8) f (6) f (4) f (2) f (0) f (1) f (3) f (5) f (7) · · ·

On a donc que |N| = |Z|.


Z est donc un ensemble dénombrable. .
C.Q.F.D.

Cette façon d’exhiber une fonction bijective est une peu moins rigoureuse que la forme en
compréhension, mais, comme l’illustre l’exemple ci-dessus, on comprend clairement comment
f est définie, et on voit bien que
1.5. ENSEMBLES INFINIS 103

— si on nous donne le temps on sera capable de calculer f (n) pour n’importe quel n ∈ N
(f est donc totale) ;
— on ne trouvera, pour chaque n, qu’une seule valeur pour f (n) (f est donc déterministe) ;
— un élément de l’ensemble d’arrivée ne sera jamais utilisé deux fois dans l’énumération
(f est donc injective) ;
— et finalement, on remarque que, éventuellement, tout élément de l’ensemble d’arrivée
sera présent dans l’énumération (f est donc surjective).
Ainsi, une énumération qui a été bien définie est toujours une fonction bijective.

Proposition 1.5.8 L’ensemble N × N est dénombrable.

Démonstration Pour montrer la dénombrabilité de N × N, nous allons construire une


→ N × N en la définissant en extension de la manière suivante :
fonction bijective k : N 

h0, 0i h0, 1i h0, 2i h0, 3i h0, 4i


↑ ↑ ↑ ↑ ↑
k(0) k(2) k(5) k(9) k(14)
···

h1, 0i h1, 1i h1, 2i h1, 3i h1, 4i


↑ ↑ ↑ ↑ ↑
k(1) k(4) k(8) k(13) k(19)
···

h2, 0i h2, 1i h2, 2i h2, 3i h2, 4i


↑ ↑ ↑ ↑ ↑
k(3) k(7) k(12) k(18) k(25)
···

h3, 0i h3, 1i h3, 2i h3, 3i h3, 4i


↑ ↑ ↑ ↑ ↑
k(6) k(11) k(17) k(24) k(32)
···

h4, 0i h4, 1i h4, 2i h4, 3i h4, 4i


↑ ↑ ↑ ↑ ↑
k(10) k(16) k(23) k(31) k(40)
···

.. .. .. .. .. ..
. . . . . .

On a donc que N = N × N .

N × N est donc un ensemble dénombrable. .


C.Q.F.D.

Remarquons que, étant donné que la relation “avoir autant d’éléments” est transitive
(voir le théorème 1.5.5), si nous avons déjà démontré la dénombrabilité d’un ensemble A,
nous pouvons alors démontrer la dénombrabilité d’un nouvel ensemble B en utilisant le
lemme suivant :

Lemme 1.5.9 Étant donné un ensemble infini B. Alors,


B est dénombrable ⇔ (∃A | A est infini dénombrable ⇒ |A| = |B|).
104 CHAPITRE 1. THÉORIE DES ENSEMBLES

1.5.3 “Avoir plus d’éléments”

La notion “d’avoir autant d’éléments” nous a jusqu’ici permis d’explorer un peu l’univers
des ensembles infinis, mais notre exploration serait certainement meilleure si on pouvait raf-
finer cette notion “d’égalité” entre les cardinalités en une notion “d’inégalité”. Avec une telle
notion, on pourrait, comme dans le cas fini, bâtir une hiérarchie des cardinalités d’ensembles
infinis.

À la recherche d’une définition

Lorsque nous avons eu à choisir une définition “d’égalité” de cardinalités, nous avons eu
principalement à tenir compte de deux critères. Il fallait que notre définition (1) coı̈ncide
dans le cas fini avec la définition déjà existante et (2) ne nécessite aucunement notre habileté
à compter les éléments d’un ensemble fini. Dans le cas présent, nous sommes également
confrontés à ces deux mêmes critères avec, en plus, le besoin que cette nouvelle notion
“d’inégalité” des cardinalités soit compatible avec la notion “d’égalité” des cardinalités qu’on
vient de se donner. Ceci implique que, pour définir la notion de “la cardinalité de A est plus
petite ou égale à la cardinalité de B”, on a essentiellement deux possibilités : soit on dit que
c’est équivalent au fait qu’il existe une fonction injective de A vers B, soit on dit que c’est
équivalent au fait qu’il existe une fonction surjective de B vers A.

Dans le cas fini, ces deux définitions seraient équivalentes, car la première signifie que A
a autant ou moins d’éléments que B et la seconde que B a autant ou plus d’éléments que A.
Mais comme le montre le théorème suivant, ces deux définitions sont également équivalentes
en général :

Théorème 1.5.10 Soit A et B, deux ensembles non vides. Alors,


∃ fonction injective f : A  B ssi ∃ fonction surjective g : B →
→ A.

Démonstration

⇒: Supposons qu’il existe une fonction injective de A vers B et démontrons qu’il existe
une fonction surjective de B vers A.
Soit f : A  B, une fonction injective.
Soit a0 ∈ A. . h Un tel a0 existe, car A est un ensemble non vide par hypothèse. i
Soit g = {hf (a), ai | a ∈ A} ∪ {hb, a0 i | b ∈ B \ Im(f )}
Montrons que g est une fonction surjective.
1.5. ENSEMBLES INFINIS 105

• g ⊆ B × A est total. C’est-à-dire (∀b ∈ B | (∃a ∈ A | b g a)).

Soit b ∈ B. . h Montrons (∃a ∈ A | b g a) i


Alors, il y a deux cas à considérer :
Cas 1 : b ∈ Im(f ).
Soit a ∈ A choisis tel que f (a) = b . h Un tel a existe – définition de Im(f ) i
Alors on a bien que hf (a), ai ∈ g
c’est-à-dire que hb, ai ∈ g

Cas 2 : b 6∈ Im(f ).
Soit a = a0 . . h Bien sûr, un tel a existe et est dans A i
Et on a bien que hb, a0 i ∈ g . h Définition de g. i

Donc g est total.


• g ⊆ B × A est déterministe. C’est-à-dire (∀b ∈ B, a, a0 ∈ A | b g a ∧ b g a0 ⇒ a =
a0 ).
Soit b ∈ B et a, a0 ∈ A choisis tels que b g a ∧ b g a0 . . h Montrons a = a0 i
Ici aussi, il y a deux cas à considérer :
Cas 1 : b ∈ Im(f ).
Alors, comme on a b g a, on a donc hb, ai ∈ {hf (a), ai | a ∈ A}.
Ce qui implique que b = f (a).
D’autre part, comme on a b g a0 , on a donc hb, a0 i ∈ {hf (a), ai | a ∈ A}.
Ce qui implique que b = f (a0 ).
Par la transitivité de =, de b = f (a) et b = f (a0 ), on obtient que f (a) = f (a0 ).
Ce qui implique que a = a0 . . h Car f est injectif. i
Cas 2 : b 6∈ Im(f ).
Alors, comme on a b g a, on a donc hb, ai ∈ {hb, a0 i | b 6∈ Im(f )}.
et hb, a0 i ∈ {hb, a0 i | b 6∈ Im(f )}.
Ce qui implique que a = a0 et a0 = a0 .
On a donc que a = a0 . . h Transitivité de =. i
g est donc déterministe.
g est donc une fonction de B vers A.
• g : B −→ A est surjectif. C’est-à-dire (∀a ∈ A | (∃b ∈ B | b g a)).
Soit a ∈ A. . h Montrons (∃b ∈ B | b g a) i
Soit b = f (a). . h Un tel b existe et appartient à B, car f est total. i
Et on a bien b g a. . h Définition de g dans le cas où b ∈ Im(f ). i
106 CHAPITRE 1. THÉORIE DES ENSEMBLES

⇐: Supposons qu’il existe une fonction surjective de B vers A et démontrons qu’il existe
une fonction injective de A vers B.
Soit g : B →
→ A, une fonction surjective.
Nous avons donc que
pour tout a ∈ A, il existe un b ∈ B tel que g(b) = a. . h Car g est surjectif. i
Pour chacun des a ∈ A, nous allons choisir un tel b ∈ B que nous noterons ba .
Alors on a que pour tout a ∈ A, (?) g(ba ) = a et que (??) ba ∈ B.
Soit f : A −→ B défini par la règle de correspondance f (a) = ba .

Alors, clairement cette fonction est bien définie 23 , car (?) et (??) impliquent que pour
tout a ∈ A, il existe un et un seul élément qui est en f -relation avec a, c’est ba . Et ce
ba appartient bien à B, l’ensemble d’arrivée de f . La relation f est donc bien totale
et déterministe.

Il ne reste qu’à démontrer que f est injectif, c’est-à-dire que :

(∀a, a0 ∈ A | f (a) = f (a0 ) ⇒ a = a0 ) .

Soit a, a0 ∈ A choisis tel que f (a) = f (a0 ). . h Montrons a = a0 . i


Alors on a que ba = ba0 . . h Définition de f . i
Et donc que g(ba ) = g(ba0 ). . h Car g est une fonction. i
Et donc que a = a0 . . h Voir (?). i

f est bien une fonction injective. .


C.Q.F.D.

Nous pouvons donc maintenant définir notre notion de “cardinalité plus petite ou égale à” :

Définition 1.5.11 Soit A et B, deux ensembles.


On dit que A a une cardinalité plus petite ou égale à la cardinalité de B
• ssi il existe une fonction injective de A vers B.
Ou, ce qui est équivalent,
• ssi il existe une fonction surjective de B vers A.

On note la phrase “A a une cardinalité plus petite ou égale à la cardinalité de B” par


“|A| ≤ |B|”.
23. en supposant l’axiome du choix. Voir la remarque à ce propos à la fin de cette sous-section.
1.5. ENSEMBLES INFINIS 107

Remarque : Dans la partie “⇐:” de la démonstration du théorème 1.5.10 nous avons tenu
pour acquis qu’il était possible de choisir un élément ba pour chaque élément a, et ce en une
seule étape. En fait, ceci n’est pas aussi évident qu’il y paraı̂t. Ceci utilise un nouvel axiome,
l’axiome du choix qui, en gros, dit que si vous avez une quantité infinie d’ensembles non
vides devant vous et que vous souhaitez choisir un élément dans chacun de ces ensembles,
vous pouvez supposer que vous savez le faire en une seule étape, même si dans les faits
vous ne pourrez jamais faire cette opération puisqu’elle nécessite une infinité d’étapes. Plus
formellement :

Axiome du choix 1.5.12 Soit (Ai )i∈I , une famille infinie d’ensembles non vides. Alors il
existe une famille d’éléments (ai )i∈I telle que pour chaque i ∈ I, ai ∈ Ai .

Nous n’utiliserons pas explicitement cet axiome dans les démonstrations et problèmes de
ce cours. Notez tout de même que nous en ferons encore une fois une utilisation implicite
dans la démonstration du théorème 1.5.16.

Notre définition est-elle correcte ?

D’une façon similaire à ce que nous avons fait à la section 1.5.1, avant de l’accepter,
nous allons nous demander si notre notion de “≤” se comporte vraiment comme une relation
d’ordre telle que nous l’avons présentée à la définition 1.4.24 (page 89). Autrement dit :

• la réflexivité. Est-ce qu’avec cette définition, un ensemble A a toujours une cardinalité


plus petite ou égale à elle-même ?
Autrement dit est que pour tout ensemble A, on a |A| ≤ |A| ?
• l’antisymétrie. Est-ce qu’avec cette définition, le fait qu’un ensemble A ait une car-
dinalité plus petite ou égale à celle d’un ensemble B combiné avec le fait que B ait
une cardinalité plus petite ou égale à celle d’un ensemble A implique toujours que B
a la même cardinalité que A ?
Autrement dit, est-ce que pour tout A, B, on a |A| ≤ |B| ∧ |B| ≤ |A| ⇒ |B| = |A| ?
• la transitivité. Est-ce qu’avec cette définition, le fait qu’un ensemble A ait une car-
dinalité plus petite ou égale à celle d’un ensemble B combiné au fait que ce B ait une
cardinalité plus petite ou égale à celle d’un troisième ensemble C implique toujours
que A a une cardinalité plus petite ou égale à celle de C ?
Autrement dit, est-ce que pour tout A, B, C, on a |A| ≤ |B| ∧ |B| ≤ |C| ⇒ |A| ≤ |C| ?

De plus, voici deux propriétés importantes que l’on aimerait que notre ordre ait :
108 CHAPITRE 1. THÉORIE DES ENSEMBLES

• cet ordre est-il compatible avec la relation “sous-ensemble”. Si un ensemble A


est inclus dans un ensemble B, avons nous toujours que la cardinalité de A est plus
petite ou égale à celle de B ?
Autrement dit, est-ce que pour tout A, B, on a (A ⊆ B) ⇒ (|A| ≤ |B|) ?

• cet ordre est-il partiel ou complet. Est-ce qu’avec cette définition, étant donné
n’importe quelle paire d’ensembles A et B, on a toujours ou bien que A a une cardi-
nalité plus petite que celle de B, ou bien que A a une cardinalité plus grande que celle
de B, ou bien que A a une cardinalité égale à celle de B ?
Autrement dit,
est-ce que pour tout A, B, on a (|A| < |B|) ∨ (|A| > |B|) ∨ (|A| = |B|) ?

Il est à souhaiter que chacune de ces propriétés soit satisfaite par notre définition. Si tel
n’était pas le cas, il ne serait vraiment pas naturel de parler d’une relation du type “plus
petit ou égal” sur les cardinalités. Essayons donc de démontrer que tel est le cas, pour les
ensembles infinis comme pour les ensembles finis.

La réflexivité de notre relation “cardinalité ≤”

Cette propriété est clairement vérifiée puisque, comme on l’a vu à la section 1.5.1 (voir la
proposition 1.5.3, page 100), pour tout ensemble A il existe toujours une fonction bijective
de A vers A. Cette fonction étant par conséquent injective, nous avons bien que pour tout
ensemble A, |A| ≤ |A|.

L’antisymétrie de notre relation “cardinalité ≤”

Cette propriété découle du théorème suivant :

Théorème 1.5.13 (Bernstein-Schröder) Soit A et B, deux ensembles.


S’il existe une fonction injective de A vers B et une fonction injective de B vers A, alors il
existera une fonction bijective de A vers B.
Autrement dit : |A| ≤ |B| ∧ |B| ≤ |A| ⇒ |A| = |B|.

Démonstration Nous ne ferons pas cette démonstration dans le cadre de ce cours.


1.5. ENSEMBLES INFINIS 109

La transitivité de notre relation “cardinalité ≤”

Pour démontrer la transitivité, il faut montrer que, pour tout triplet d’ensembles A, B
et C, s’il existe une fonction injective de A vers B et une fonction injective de B vers C, alors
il existe une fonction injective de A vers C.

La transitivité est une conséquence du théorème suivant :

Théorème 1.5.14 Soit A, B et C, trois ensembles, et


soit f ⊆ A × B et g ⊆ B × C. Si f et g sont deux fonctions injectives, alors f ◦ g sera une
fonction injective de A vers C.

Démonstration h Voir théorème 1.4.18, page 79 i

La relation “cardinalité ≤”est-elle compatible avec ⊆ ?

Le fait que pour toute paire d’ensembles A, B, on ait A ⊆ B ⇒ |A| ≤ |B|, est une
conséquence directe de la proposition suivante :

Proposition 1.5.15 Soit A et B deux ensembles.


Si A ⊆ B alors la fonction IA⊆B : A −→ B est bien définie et est injective.
a 7−→ a

Démonstration Exercice.

Notre relation “cardinalité ≤” est-elle un ordre complet ?

Nous n’allons pas faire cette démonstration. Il est intéressant de savoir tout de même
qu’il a été démontré que pour démontrer

pour toute paire d’ensembles A et B, on a (|A| < |B|) ∨ (|A| > |B|) ∨ (|A| = |B|)

il faut absolument supposer l’axiome du choix.

1.5.4 |N| est la plus petite cardinalité infinie

Intuitivement, on ne voit pas comment un ensemble infini pourrait avoir une cardinalité
plus petite que |N|. Cette intuition est effectivement juste, en voici la démonstration.
110 CHAPITRE 1. THÉORIE DES ENSEMBLES

Théorème 1.5.16 Soit A un ensemble infini. Alors |A| ≥ |N|.

Démonstration

Soit A un ensemble infini. Alors, nous devons démontrer que |A| ≥ |N| et pour ce faire,
nous allons montrer qu’il existe une fonction injective de N vers A.

Construisons la fonction f : N −→ A récursivement de la façon suivante :

Soit a0 ∈ A. . h Un tel a0 existe, car l’ensemble infini A est non vide. i


Définissons f (0) = a0 .
Soit a1 ∈ A \ {a0 }. . h Un tel a1 existe, car l’ensemble infini A contient plus d’un élément. i
Définissons f (1) = a1 .
Soit a2 ∈ A \ {a0 , a1 }.
. h Un tel a2 existe, car l’ensemble infini A contient plus de deux éléments. i
Définissons f (2) = a2 .
Soit a3 ∈ A \ {a0 , a1 , a2 }.
. h Un tel a3 existe, car l’ensemble infini A contient plus de trois éléments. i
Définissons f (3) = a3 .
Continuant cette construction, ad infinitum, on aura défini f (n), pour tout n ∈ N.

Comme ∀n ∈ N, n est en relation f avec un et un seul élément de A (soit l’élément an ),


f est bien une fonction de N vers A.

Il ne reste qu’à démontrer que f est injective. C’est-à-dire que

(∀n, n0 ∈ N | n 6= n0 ⇒ f (n) 6= f (n0 )) .

Soit n, n0 ∈ N choisis tels que n 6= n0 . h Montrons f (n) 6= f (n0 ) i


Et comme N est un ordre complet, sans perte de généralité, supposons que n < n0 .
Et de n < n0 , on déduit que an ∈ {a0 , a1 , . . . , an0 −1 }.
Ce qui implique que an 6= an0 . . h Car par construction, an0 ∈ A \ {a0 , a1 , . . . , an0 −1 }. i

Comme en plus on a an = f (n) et an0 = f (n0 ). . h Voir la définition de f . i


On a donc que f (n) 6= f (n0 ).
f est donc une fonction injective.
.
C.Q.F.D.
1.5. ENSEMBLES INFINIS 111

1.5.5 Donnons-nous des outils

Dans cette section, nous allons énoncer plusieurs résultats qui pourront être utiles lorsque
viendra le temps de démontrer si deux ensembles ont la même cardinalité ou si un des deux
a une cardinalité plus petite que l’autre.

Les deux premiers résultats sont des conséquences directes des définitions de “même
cardinalité” et “cardinalité plus petite ou égale” et des théorèmes 1.5.4, 1.5.10 et 1.5.13 et
de l’axiome du choix 1.5.12.

Théorème 1.5.17 Soit A et B, deux ensembles, alors les énoncés suivants sont équivalents :
1. |A| = |B|.
2. ∃ fonction bijective f : A 
→ B.
3. ∃ fonction bijective g : B 
→ A.
4. |A| ≤ |B| et |A| ≥ |B|.
5. ∃ fonction injective f : A  B et ∃ fonction injective g : B  A.
6. ∃ fonction injective f : A  B et ∃ fonction surjective h : A →
→ B.
7. ∃ fonction surjective k : B →
→A et ∃ fonction surjective h : A →
→ B.
8. ∃ fonction surjective k : B →
→A et ∃ fonction injective g : B  A.

Théorème 1.5.18 Soit A et B, deux ensembles, alors les énoncés suivants sont équivalents :

1. |A| < |B|.


2. |A| ≤ |B| et |A| =
6 |B|.
3. ∃ fonction injective, f : A  B mais 6 ∃ fonction bijective g : B 
→ A.
4. |A| ≤ |B| et |A| 6≥ |B|.
5. ∃ fonction injective, f : A  B mais 6 ∃ fonction injective g : B  A.
6. ∃ fonction injective, f : A  B mais 6 ∃ fonction surjective g : A →
→ B.
7. |A| 6≥ |B|.
8. 6 ∃ fonction injective g : B  A.
9. 6 ∃ fonction surjective g : A →
→ B.

Les deux résultats suivants portent sur la notion de dénombrabilité. Ils découlent essen-
tiellement des théorèmes 1.5.17 et 1.5.18 et du fait que |N| est “la plus petite cardinalité
infinie” (le théorème 1.5.16).
112 CHAPITRE 1. THÉORIE DES ENSEMBLES

Théorème 1.5.19 Soit A un ensemble. Alors les résultats suivants sont équivalents :
1. A est dénombrable.
2. |A| ≤ |N|
3. ∃ fonction surjective f : N →
→ A.
4. ∃ fonction injective f : A  N.
5. |A| < |N| ou |A| = |N|
6. A est fini ou ∃ fonction bijective f : A 
→ N.
7. A est fini ou ∃ fonction bijective f : N 
→ A.

Théorème 1.5.20 Soit A un ensemble. Alors les résultats suivants sont équivalents :
1. A est non dénombrable 24 .
2. |A| > |N|.
3. 6 ∃ fonction surjective f : N →
→ A.
4. 6 ∃ fonction injective f : A  N.
5. A est infini et |A| =
6 |N|.
6. A est infini et 6 ∃ fonction bijective f : A −→ N.
7. A est infini et 6 ∃ fonction bijective f : N 
→ A.

Théorème 1.5.21 Soit A et B, deux ensembles dénombrables (finis ou infinis). Alors


1. A ∪ B est dénombrable,
2. A × B est dénombrable.

Démonstration
Soit f : N →
→ A et g : N →
→ B, deux fonctions surjectives
. h De tels f et g existent, voir Théorème 1.5.19. i
Démontrons que A ∪ B est dénombrable.
Soit h : N −→ A (∪ B
f ( n2 ) si n est pair
n 7−→ n−1
g( 2 ) si n est impair
La fonction h est bien définie, car chaque n ∈ N est en h-relation avec un et un seul
élément de A ∪ B qui est ou bien f ( n2 ) ∈ A, si n est pair, ou bien g( n−1
2
) ∈ B si n
est impair.
24. Dans la prochaine section, nous verrons qu’il existe des ensembles qui sont non dénombrables.
1.5. ENSEMBLES INFINIS 113

Donc, pour démontrer que A ∪ B est dénombrable, il suffit de montrer que h est sur-
jectif. . h Voir Théorème 1.5.19. i
Montrons donc que (∀y ∈ A ∪ B | (∃n ∈ N | h(n) = y)).
Soit y ∈ A ∪ B. . h Il faut montrer (∃n ∈ N | h(n) = y) i
Il y a deux cas (non nécessairement mutuellement exclusifs) à considérer.

Cas 1 : y ∈ A Cas 2 : y ∈ B

Soit i ∈ N choisi tel que f (i) = y. Soit j ∈ N choisi tel que g(j) = y.


→ A est surjectif. i .h Un tel j existe, car g : N →
.h Un tel i existe, car f : N → → A est surjectif. i
Soit n = 2i. Soit n = 2j + 1.


.h Un tel n existe et appartient à N. i
.h Un tel n existe et appartient à N. i

Alors, on a bien Alors, on a bien

2i
h(n) = h(2i) = f ( 2 ) = f (i) = y. h(n) = h(2j + 1) = g( (2j+1)−1 ) = g(j) = y.

2

Dans chacun des deux cas on a bien qu’il existe un n ∈ N tel que h(n) = y. h est donc
une fonction surjective. A ∪ B est donc dénombrable.

Démontrons que A × B est dénombrable.


Nous avons démontré à la proposition 1.5.8 que |N×N| = |N|. Par le théorème 1.5.19, il

est donc suffisant de montrer que A×B| ≤ N×N|. Pour démontrer la dénombrabilité
de A × B, il suffit donc de montrer qu’il existe une fonction surjective de N × N vers
A × B.
Soit la fonction H suivante :

H : N × N −→ A×B
hi,ji 7−→ hf (i),g(j)i

On note que H est bien définie (c’est-à-dire, elle est bien une relation totale et
déterministe), car pour tout couple hi, ji ∈ N × N, H(hi, ji) = hf (i), g(j)i est bien un
élément de A × B puisque f (i) est bien un élément de A et g(j) est bien un élément
de B.
Il existe donc pour chaque couple hi, ji ∈ N × N, un et un seul élément de A × B qui
est en H-relation avec hi, ji.
H est bien une fonction.
Démontrons que H est surjectif.
  
Il faut démontrer que ∀hα, βi ∈ A × B | ∃hi, ji ∈ N × N | H(hi, ji) = hα, βi .

Soit hα, βi ∈ A × B.
114 CHAPITRE 1. THÉORIE DES ENSEMBLES

Soit i ∈ N choisi tel que f (i) = α


.. h Un tel i existe, car f : N →
→ A est une fonction surjective et α ∈ A. i
Soit j ∈ N choisi tel que g(j) = β
.. h Un tel j existe, car g : N →
→ B est une fonction surjective et β ∈ B. i
Alors, on a bien que hi, ji ∈ N × N et que H(hi, ji) = hα, βi.
H est donc surjectif.
On a donc que |N| = |N × N| ≥ |A × B|.
Par
. le théorème 1.5.19–(2 ⇒ 1), A × B est donc un ensemble dénombrable.
C.Q.F.D.

1.5.6 “Plus d’éléments” que N : Les ensembles non dénombrables

En terminant ce chapitre, nous allons essayer de trouver des ensembles infinis non dé-
nombrables. À première vue, on aurait pu croire que tous les ensembles étaient dénombrables
puisque Z est dénombrable et même Q l’est. Cependant, nous allons voir que R, lui, ne l’est
pas. Nous verrons même comment on peut fabriquer des ensembles de cardinalité toujours
plus grande.

Le prochain théorème est dû à Cantor, le père de la théorie des ensembles.

Théorème 1.5.22 (Cantor) Pour tout ensemble A, |A| < |P(A)|.

Ce théorème est démontré à l’aide de la technique de démonstration par contradic-


tion. Comme expliqué à la section 1.3.8 (page 56), ce type de démonstration est basé sur
l’équivalence :
(¬p ⇒ faux) ⇔ p,

c’est-à-dire : pour démontrer que p est vrai, on peut démontrer que la négation de p nous
mène à une contradiction.
1.5. ENSEMBLES INFINIS 115

Démonstration du théorème 1.5.22 (Cantor)

Il faut démontrer l’énoncé suivant : (?) Pour tout ensemble A, on a |A| < |P(A)|.

Supposons le contraire, c’est-à-dire qu’il existe un ensemble A tel que |A| ≥ |P(A)|. Et
cherchons une contradiction.

Soit donc A un tel ensemble.


Soit f : A →
→ P(A), une fonction surjective. . h Une telle fonction existe, voir Déf. 1.5.11. i

Soit T = {a ∈ A | a 6∈ f (a)}.
Remarquons que T ⊆ A et donc que T ∈ P(A).

Soit a0 ∈ A, choisi tel que f (a0 ) = T . h Un tel a0 existe, car f est surjectif. i

Alors il y a deux cas à considérer.

Cas 1 : a0 ∈ T .
Alors a0 6∈ f (a0 ). . h Définition de T . i
Ce qui implique que a0 6∈ T . . h Car f (a0 ) = T . i
Dans ce premier cas on a donc à la fois que a0 ∈ T et que a0 6∈ T ,
ce qui est une contradiction.

Cas 2 : a0 6∈ T .
Alors ¬(a0 6∈ f (a0 )). . h Définition de T . i
Ce qui implique que (a0 ∈ f (a0 )). . h Définition de ∈
6 et Prop 1.1.5-a (Double négation) i
Ce qui implique que a0 ∈ T . . h Car f (a0 ) = T . i
Dans ce deuxième et dernier cas on a aussi à la fois que a0 ∈ T et que a0 6∈ T ,
ce qui est donc ici aussi une contradiction.

Le fait que nous obtenons une contradiction dans chacun des deux cas, nous permet de
conclure qu’on ne pouvait pas supposer le contraire de l’énoncé (?).

Si on ne peut supposer le contraire de l’énoncé (?), c’est qu’il est vrai. .


C.Q.F.D.
116 CHAPITRE 1. THÉORIE DES ENSEMBLES

Définition 1.5.23 Étant donnés deux ensembles A et B, on définit B A comme étant l’en-
semble de toutes les fonctions de A vers B.
Autrement dit : B A = {f : A −→ B | }.


Proposition 1.5.24 Pour tout ensemble A, on a P(A) = {0, 1}A .

Démonstration Soit la fonction G suivante :

G : {0, 1}A −→ P(A)


f :A−→{0,1} 7−→ {a∈A | f (a)=1}

On note que G est bien définie (c’est-à-dire, elle est bien une relation totale et déterministe),
car pour toute fonction f ∈ {0, 1}A , G(f ) = {a ∈ A | f (a) = 1} est bien un élément de
P(A) puisque c’est un sous-ensemble de A.
Il existe donc pour chaque fonction f ∈ Dom(G), un et un seul élément de P(A) qui est en
G-relation avec f .
G est donc une fonction.

Démontrons que G est injectif et surjectif.

 
Injectivité. Il faut démontrer que ∀f1 , f2 ∈ {0, 1}A | f1 6= f2 ⇒ G(f1 ) 6= G(f2 ) .

Soit f1 , f2 ∈ {0, 1}A , choisis tels que f1 6= f2 .


Soit x ∈ A choisi tel que f1 (x) 6= f2 (x). . h Un tel x existe, car f1 6= f2 . i

Comme l’ensemble d’arrivée de f1 et celui de f2 sont tous deux égaux à {0, 1},
sans perte de généralité nous pouvons supposer que f1 (x) = 0 et f2 (x) = 1.
Ce qui implique que x 6∈ {a ∈ A | f1 (a) = 1} et que x ∈ {a ∈ A | f2 (a) = 1}.
On a donc x 6∈ G(f1 ) et x ∈ G(f2 ). * +
Car G(f1 ) et G(f2 ) sont deux ensembles et
Ce qui implique G(f1 ) 6= G(f2 ). .
ils n’ont pas exactement les mêmes éléments.

G est donc injectif.


1.5. ENSEMBLES INFINIS 117

Surjectivité Il faut démontrer que (∀B ∈ P(A) | (∃fB ∈ {0, 1}A | G(fB ) = B)).

Soit B ∈ P(A). h Notons que B ⊆ A. i

Soit fB : A −→ {0, 1}
(
0 si a 6∈ B.
a 7−→
1 si a ∈ B.

La fonction fB est bien définie, car pour chaque élément a, ou bien a ∈ B ou bien
a 6∈ B. Ce qui ici implique que a est en fB -relation avec un et un seul élément de
{0, 1}.
fB est donc bien une fonction (c.-à-d. : totale et déterministe).

De plus,
G(fB )
= {a ∈ A | fB (a) = 1} . h Définition de G. i
= {a ∈ A | a ∈ B} . h Définition de fB . i
= B. . h Car B ⊆ A. i
G est donc surjectif.

A
G est donc une fonction de {0,
bijective 1} vers P(A).
Ce qui implique que {0, 1}A = P(A) . .

C.Q.F.D.

Corollaire 1.5.25 {0, 1}N est un ensemble non dénombrable.

Le résultat précédent se généralise au résultat suivant :

Théorème 1.5.26 Soit A un ensemble ayant au moins deux éléments et B un ensemble


infini.
Alors AB est un ensemble non dénombrable.

Nous ne ferons pas la démonstration du théorème 1.5.26, mais nous allons illustrer l’es-
sentiel des idées qui lui sont rattachées en solutionnant l’exemple suivant :
118 CHAPITRE 1. THÉORIE DES ENSEMBLES

Exemple 1.5.27 Démontrons que {0, 1, 2}N est non dénombrable.


Solution 1 : Remarquons que toute fonction qui est élément de {0, 1}N (l’ensemble de
toutes les fonctions dont le domaine est N et l’image est incluse dans {0, 1}) peut
aussi être interprétée comme un élément de {0, 1, 2}N (l’ensemble de toutes les fonc-
tions dont le domaine est N et l’image est inclus dans {0, 1, 2}).
Autrement dit, il y a une fonction injective “canonique” de {0, 1} vers {0, 1, 2} .
N N

Ce qui implique que {0, 1}N ≤ {0, 1, 2}N .

Comme en plus on a démontré au cours que {0, 1}N est non dénombrable,
.. h Voir le corollaire 1.5.25. i
nous avons donc que {0, 1, 2} est également non dénombrable.
N

{0,
. 1, 2} , l’ensemble de toutes les fonctions de N vers {0, 1, 2} est donc non dénombrable.
N

C.Q.F.D.

Solution 2 : la solution la plus rigoureuse. Nous allons montrer que {0, 1}N ≤


{0, 1, 2}N en construisant explicitement une fonction injective de {0, 1}N vers {0, 1, 2}N ,

et comme on sait par le corollaire 1.5.25 que l’ensemble {0, 1}N est non dénombrable,
nous aurons alors montré que {0, 1, 2}N est également non dénombrable.

Pour démontrer {0, 1}N ≤ {0, 1, 2}N , nous allons construire une fonction injective

H de {0, 1}N vers {0, 1, 2}N de la manière suivante :


H : {0, 1}N −→ {0, 1, 2}N
   
f : N −→ {0, 1} H(f ) : N −→ {0, 1, 2}
7−→
   
n 7−→ f (n) n 7−→ f (n)

Autrement dit, étant donné une fonction f de N vers {0, 1}, H(f ) est la fonction de
N vers {0, 1, 2} qui a la même règle de correspondance que f .

On note que H est bien définie (c’est-à-dire, elle est bien une relation totale et
déterministe), car il existe pour chaque fonction f ∈ Dom(H), un et un seul élément
de {0, 1, 2}N qui est en H-relation avec f .
H est donc une fonction, il ne reste donc qu’à démontrer qu’elle est injective.
 
Il faut donc démontrer que ∀f1 , f2 ∈ {0, 1} | f1 6= f2 ⇒ H(f1 ) 6= H(f2 ) .
N

Soit f1 , f2 ∈ {0, 1}N , choisis tels que f1 6= f2 .


Soit x ∈ N choisi tel que f1 (x) 6= f2 (x). . h Un tel x existe, car f1 6= f2 . i
Alors H(f1 )(x) = f1 (x) . h Par la définition de H. i
Et H(f2 )(x) = f2 (x) . h Par la définition de H. i
On a donc H(f1 )(x) 6= H(f2 )(x) . h Puisque f1 (x) 6= f2 (x). i
On a donc H(f1 ) 6= H(f2 )
1.5. ENSEMBLES INFINIS 119

.
C.Q.F.D.
120 CHAPITRE 1. THÉORIE DES ENSEMBLES

Avant d’énoncer le prochain théorème, nous devons faire un rappel sur les nombres réels.

Rappel 1.5.28 La représentation base 10 d’un nombre réel est de la forme

bn bn−1 . . . b1 b0 , a0 a1 a2 a3 a4 . . .

où les bj et les ai sont des chiffres de 0 à 9.


8
Exemple : 3
= 2, 666 . . .

Cependant, cette représentation n’est pas unique. En effet, le nombre 0, 213 par exemple peut
être représenté par “0, 213000 . . .” et par “0, 212999 . . .”. Pour éviter toute ambiguı̈té, nous
allons supposer ici que nous ne représenterons jamais un nombre réel par une représentation
base 10 qui se terminerait par une séquence infinie de 9.

En particulier, chacun des nombres de l’intervalle [0, 1[ aura une unique représentation
base 10 de la forme 0, a0 a1 a2 a3 a4 a5 . . ., où chacun des ai est un chiffre de 0 à 9 et qui ne
se termine pas par une séquence infinie de 9.

Histoire de bien comprendre ce problème de la non-unicité de la représentation en base


10, voici la démonstration que 0, 9999 . . . = 1 et la démonstration que 0, 212999 . . . =
0, 213000 . . . :
Démontrons que 0, 9999 . . . = 1.
Posons x = 0, 9999 . . . .
10 x = 9, 9999 . . .
Alors on a − x = − 0, 9999 . . .
9x = 9
. qui implique bien que x = 1.
Ce
C.Q.F.D.

Démontrons que 0, 212999 . . . = 0, 213000 . . . .


Posons y = 0, 212999 . . . .
10 000 y = 2129, 9999 . . .
Alors on a − 1 000 y = − 212, 9999 . . .
9000 y = 1917
1917
Ce qui implique que y = 9000
.
.Et on vérifie facilement que 1917
= 0, 213
9000 C.Q.F.D.
1.5. ENSEMBLES INFINIS 121

Théorème 1.5.29 R est non dénombrable.

Démonstration
Étape 1 : Nous allons démontrer que l’intervalle [0, 1[ est non dénombrable.

Démonstration par contradiction.



Supposons le contraire, c’est-à-dire que N ≥ [0, 1[ . .h Et cherchons une contradiction. i



Soit f : N −→ [0, 1[, une fonction surjective. . Un tel f existe, car N ≥ [0, 1[ .
Nous allons maintenant représenter f en extension, en représentant en base 10 chacun
des f (n).

Soit ani n,i∈N , une famille de chiffres de 0 à 9, choisis tels que :

f (0) = 0, a00 a01 a02 a03 a04 a05 . . .


f (1) = 0, a10 a11 a12 a13 a14 a15 . . .
f (2) = 0, a20 a21 a22 a23 a24 a25 . . .
f (3) = 0, a30 a31 a32 a33 a34 a35 . . .
f (4) = 0, a40 a41 a42 a43 a44 a45 . . .
.. .. ..
. . .

Soit bi i∈N
, une famille de chiffres choisis tel que pour chaque i ∈ N :
(
4 si aii 6= 4
bi =
5 si aii = 4

Soit maintenant b = 0, b0 b1 b2 b3 b4 b5 . . ..
Clairement, b est un nombre de l’intervalle [0, 1[, représenté en base 10 par une famille
de chiffres qui ne se termine pas par une séquence infinie de 9.
Soit n ∈ N choisi tel que f (n) = b. . h Un tel n existe, car f est surjectif. i
n n n n n n
Alors on a que 0, b0 b1 b2 b3 b4 b5 . . . = 0, a0 a1 a2 a3 a4 a5 . . ..
. h Car notre représentation base 10 est unique. (Voir le Rappel.) i
En particulier, on doit avoir bn = ann , ce qui en contradiction avec la définition de

bi i∈N .

Ainsi, on ne peut pas supposer que [0, 1[ est dénombrable, c’est donc que [0, 1[ n’est
pas dénombrable.
122 CHAPITRE 1. THÉORIE DES ENSEMBLES

Étape 2 : Nous allons maintenant démontrer que R est non dénombrable.

Comme [0, 1[⊆ R, on a donc que par la proposition 1.5.15, que I[0,1[⊆R : [0, 1[−→ R
est une fonction injective.

Ce qui implique que R ≥ [0, 1[ .

Ce qui, combiné avec l’étape 1, implique que R ≥ [0, 1[ > N .
R est donc non dénombrable.
.
C.Q.F.D.
1.5. ENSEMBLES INFINIS 123

1.5.7 Exercices sur les ensembles infinis

Exercice 1 :
Montrez que les ensembles suivants sont infinis dénombrables (c.-à-d. : qu’ils ont la même
cardinalité que N). Pour ce numéro, vous pouvez, tout comme dans les notes de cours, donner
des définitions en extension de toute fonction bijective dont le domaine est N, et dans ce cas,
vous n’avez pas à démontrer qu’il s’agit effectivement d’une fonction bijective.
a) N × {5, 12, 789}.
b) N \ {5, 12, 789}.
c) N × N.
d) Z × Z.
e) l’ensemble de toutes les puissances de 2.
f) l’ensemble de tous les mots qu’on peut construire avec un alphabet qui soit composé
uniquement des lettres “a”, “b” et “c”.
Exercice 2 :
a) Démontrez que la fonction f : N −→ N × {2, 3},
(
h 2i , 2i si i est pair
définie par la règle de correspondance f (i) =
h i−1
2
, 3i si i est impair
est bijective.
b) En déduire que N × {2, 3} est dénombrable.

Exercice 3 : (Pour ce numéro, aucune justification n’est demandée.) Étant donnés les en-
sembles A, B, C et D, que peut-on conclure sur leurs cardinalités ?
a) — il existe une fonction bijective de A vers C ;
— il existe une fonction surjective de A vers B ;
— il existe une fonction injective de A vers D.
b) — il existe une fonction bijective de A vers C ;
— il existe une fonction surjective de A vers B ;
— il existe une fonction injective de A vers D ;
— il existe une fonction surjective de B vers D.
c) — il existe une fonction surjective de A vers B ;
— il existe une fonction surjective de B vers C ;
— il existe une fonction surjective de C vers D ;
— il existe une fonction surjective de D vers N.
124 CHAPITRE 1. THÉORIE DES ENSEMBLES

d) — il existe une fonction surjective de A vers B,


— il existe une fonction bijective de B vers C,
— il n’existe pas de fonction injective de C vers N.

Exercice 4 : n o
def
Rappel : L’ensemble Q = xy x ∈ Z, y ∈ Z∗ est l’ensemble des nombres rationnels.

a) Démontrez que Z × Z∗ est dénombrable en construisant en extension une fonction


bijective.
b) Démontrez que la relation F suivante est une fonction surjective :
F : Z × Z∗ −→ Q
hx, yi 7−→ xy
c) En utilisant a) et b), démontrez que Q est dénombrable.

Exercice 5 :
(A) Sans justifiez vos réponses, dites si les énoncés suivants sont VRAIS ou FAUX.
a) une relation asymétrique est toujours antisymétrique et irréflexive. .

b) Si ρ = {hx, yi ∈ N2 | x < y}, alors ρ−1 = {hx, yi ∈ N2 | x > y}


et ρc = {hx, yi ∈ N2 | x ≥ y}. .

c) Si θ = {hA, Bi ∈ P(N)2 | A ⊂ B}, alors θ−1 = {hA, Bi ∈ P(N)2 | A ⊃ B}


et θc = {hA, Bi ∈ P(N)2 | A ⊇ B}. .

d) N{0,1} = {0, 1}N . .

e) NZ est dénombrable. .

(B) Complétez et justifiez briévement :

a) S’il n’existe pas de fonction surjective de A vers N, alors A est .


b) S’il n’existe pas de fonction surjective de N vers A, alors A est .
c) Soit (Ai )i∈N , une famille d’ensembles finis, alors l’union de tous les ensembles de
S
cette famille (notée i∈N Ai ) est .
S
d) Soit (Ai )i∈N , une famille d’ensembles infinis dénombrables, alors i∈N Ai est .
1.5. ENSEMBLES INFINIS 125

Exercice 6 :
a) Démontrez que l’ensemble de tous les mots finis sur l’alphabet {“a”, “b”} est dénombrable
alors que l’ensemble de tous les mots infinis sur ce même alphabet ne l’est pas.
b) Est-ce que l’ensemble de tous les mots (finis et infinis) sur l’alphabet {“a”, “b”} est
dénombrable ? Justifiez brièvement.

Exercice 7 :
Démontrez que l’ensemble de tous les sous-ensembles finis de N est dénombrable alors que
l’ensemble de tous les sous-ensembles de N ne l’est pas.

Exercice 8 :
a) Les données d’entrée et de sortie d’un programme sont des séquences de bits. On peut
donc considérer une séquence de bits comme un nombre naturel exprimé en binaire
(en ajoutant un bit “1” au début de la séquence, de sorte que les “0” initiaux du
programme soient significatifs). Donc un programme calcule une fonction de N vers
N.
L’ensemble de toutes les fonctions de N vers N est-il dénombrable ?

b) Un programme en JAVA est construit à partir d’un nombre fini de symboles et est de
longueur finie. On peut donc considérer un programme comme un mot écrit à l’aide
d’un certain alphabet.
L’ensemble de tous les programmes en JAVA est-il dénombrable ?

c) Si on suppose qu’on n’a aucun problème de mémoire, est-ce que n’importe quelle
fonction de N vers N peut-être calculée en JAVA ? (Justifiez brièvement.)

Exercice 9 : Expliquez brièvement pourquoi {0, 1, 2}N est non dénombrable.

Exercice 10 : Soit la fonction f , définie par f : [1, 100] −→ [0, 1]


x 7−→ x−1
100

a) Démontrez que f est injective,


mais pas surjective.

b) Peut-on conclure de a) que [1, 100] ≤ [0, 1] ? Pourquoi ?


c) Peut-on conclure de a) que [1, 100] < [0, 1] ? Pourquoi ?

d) Est-ce que [1,100] est dénombrable ? Justifiez.


Chapitre 2

Relations définies par récurrence

2.1 Suites

Dans ce chapitre, nous étudierons des problèmes reliés à la notion de suite. Une suite est
une séquence infinie de nombres réels. Un élément de cette suite est appelé un terme de la
suite.

Par exemple, h0, 2, 4, 6, 8, . . .i est la représentation en extension de la suite des entiers


naturels pairs ou encore h0, 1, 4, 9, 16, . . .i, celle des carrés parfaits. Voici un exemple plus
complexe, connu sous le nom de suite de Fibonacci : h0, 1, 1, 2, 3, 5, 8, 13, 21, . . .i. Chaque
terme de la suite de Fibonacci est la somme des deux termes précédents.

De façon générale, la suite ha0 , a1 , a2 , a3 , a4 , . . .i se note han in∈N . Une telle suite est en
fait une fonction de N vers R, on peut donc représenter han in∈N en utilisant la notation
introduite à la section 1.4.5 :
f : N −→ R
n 7−→ an

Une suite ne commence pas nécessairement par l’indice 0, elle peut commencer par tout
autre élément n0 ∈ Z. La suite han0 , an0 +1 , an0 +2 , an0 +3 . . .i peut être représentée par la
fonction :
f : {n ∈ Z | n ≥ n0 } −→ R
n 7−→ an
De même, la suite ha1 , a2 , a3 , a4 , . . .i débutant à l’indice 1 se note han in∈N∗ .

126
2.1. SUITES 127

Une suite peut donc être définie en extension (par exemple, h0, 2, 4, 6, 8, . . .i) ou (de
façon plus rigoureuse) en compréhension :

f : N −→ R
n 7−→ 2n

2.1.1 Définition par terme général et par récurrence

La définition en compréhension d’une suite est appelée définition par terme général.
Plutôt que d’utiliser le formalisme des fonctions, on présente généralement une définition par
terme général d’une suite en donnant simplement la formule générique permettant de calculer
directement n’importe quel terme de la suite ainsi que l’ensemble des indices pour lesquels
la formule est valide. Par exemple, le terme général de la suite hbn in∈N des entiers naturels
pairs est
bn = 2n ∀n ∈ N . (2.1)

À part la définition en extension et celle par terme général, il y a une autre façon
(tout aussi rigoureuse que celle par terme général) de définir une suite : la définition par
récurrence, qui consiste à donner directement la valeur du premier terme (ou les valeurs
des quelques premiers termes) de la suite ainsi qu’une méthode pour calculer la valeur de
n’importe quel terme de la suite en fonction de son (ou ses) prédécesseur(s). Ainsi, la suite
hbn in∈N des entiers naturels pairs peut se définir récursivement par
(
b0 = 0
(2.2)
bn = bn−1 + 2 ∀n ∈ N∗ .

La suite de Fibonacci 1 hfn in∈N se définit récursivement par



 f0 = 0

f1 = 1 (2.3)

fn = fn−1 + fn−2 ∀n ∈ N \ {0, 1} .

Nous verrons au cours de ce chapitre que le terme général de la suite de Fibonacci est :
√ !n √ !n
1 1+ 5 1 1− 5
fn = √ −√ ∀n ∈ N .
5 2 5 2

1. Dans la littérature, la suite de Fibonacci est la plupart du temps définie pour n ≥ 1, c’est-à-dire :
f1 = 1, f2 = 1 et fn = fn−1 + fn−2 ∀n ∈ N∗ \ {1, 2}.
128 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

2.1.2 Notation sigma “Σ”

En mathématiques, on représente fréquemment une somme de plusieurs termes un utili-


sant la notation sigma. À l’aide de cette notation, la somme des nombres entiers entre 1 et
5 inclusivement s’écrit :
X 5
i = 1 + 2 + 3 + 4 + 5.
i=1

De manière plus générale, la somme des nombres entiers entre 1 à n inclusivement s’écrit :
n
X
i = 1 + 2 + 3 + . . . + (n−1) + n .
i=1

La définition suivante met en évidence que la notation sigma permet de présenter de façon
concise une somme définie en extension.

Définition 2.1.1 Notation sigma


Soit n, n0 ∈ Z tels que n ≥ n0 et une fonction g : {i ∈ Z | n0 ≤ i ≤ n} −→ R. On écrit :
n
X def
g(i) = g(n0 ) + g(n0 + 1) + g(n0 + 2) + . . . + g(n) .
i=n0

Ainsi, on peut écrire la définition en extension de la suite des entiers naturels pairs hbn in∈N ,
dont le terme général est donné par l’équation (2.1), en utilisant la notation sigma :
n
X
bn = 2 = 2| + 2 +
{z. . . + 2} . (2.4)
i=1 n fois

De même, la suite hcn in∈N de la somme des n premiers entiers naturels mis au carré s’écrit :

n
X
cn = i 2 = 0 2 + 1 2 + 2 2 + 3 2 + . . . + n2 . (2.5)
i=0

La proposition 2.1.2 présente quelques propriétés des sommes qui permettent, dans cer-
taines circonstances, de trouver le terme général d’une suite à partir d’une définition utilisant
la notation sigma.
2.1. SUITES 129

Proposition 2.1.2 Propriétés arithmétiques des sommes en notation sigma.


Soit n, n0 ∈ Z tels que n ≥ n0 , deux fonctions g, h : {i ∈ Z | n0 ≤ i ≤ n} −→ R et une
constante k ∈ R. On a :
Xn n
X
a: 1 = n − n0 + 1 (En particulier, 1 = n)
i=n0 i=1
X n n
X n
X
b: k · g(i) = k· g(i) (En particulier, k = k · n)
i=n0 i=n0 i=1
X n n
X n
X
c: g(i) + h(i) = g(i) + h(i)
i=n0 i=n0 i=n0
n
X n(n + 1)
d: i =
i=1
2
n
X (2n + 1)(n + 1)n
e: i2 =
i=1
6

Par exemple, on retrouve l’expression du terme général des suites hbn in∈N et hcn in∈N que
nous avons définis plus haut à l’aide de la notation sigma par les équations (2.4) et (2.5) :
n
X
bn = 2 = 2·n .h Prop 2.1.2-b, cas particulier avec [k := 2] i
i=1
n
X (2n + 1)(n + 1)n
cn = i2 = .h Prop 2.1.2-e i
i=0
6

2.1.3 Temps d’exécution d’un algorithme

Le concept de suite se retrouve au centre de l’analyse de plusieurs problèmes en mathéma-


tiques et en informatique. On le retrouve entre autres lorsque l’on cherche à calculer le temps
d’exécution tn d’un programme en fonction d’un certain paramètre n qui est généralement
relié à la taille des données fournies en entrée au programme.

En analyse d’algorithmes, on mesure typiquement le temps d’exécution en calculant le


nombre de fois que sera exécutée une instruction baromètre, c’est-à-dire une instruction
qui est exécutée au moins aussi souvent que n’importe quelle autre instruction du programme
(à une constante près). Cette unité de mesure possède l’avantage de ne pas reposer sur
la vitesse de l’ordinateur sur lequel est exécuté un programme, mais évalue seulement la
complexité de l’algorithme 2 .
2. Il s’agit ici d’une présentation très sommaire de l’analyse d’algorithmes. Le cours dédié entièrement à
ce sujet vous en apprendra beaucoup plus !
130 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

À titre d’exemple, le temps d’exécution d’un algorithme triant les n éléments d’un tableau
en ordre croissant dépend généralement de la taille n du tableau (c’est-à-dire le nombre
d’éléments à trier). L’instruction baromètre utilisée est le nombre de comparaisons entre
deux éléments du tableau. Nous présenterons un exemple de calcul du temps d’exécution
d’un algorithme de tri à la section 2.2.2.

Les algorithmes itératifs

Lorsqu’un algorithme est constitué de boucles (possiblement imbriquées), il est souvent


naturel de calculer son temps d’exécution en utilisant la notation sigma “Σ”. Considérons
par exemple l’algorithme suivant :

Algo Jouet Un ( n )
l←0
Pour i = 1 à n Faire
Pour j = 1 à i Faire
l ←l+1
Fin Pour
Fin Pour
Retourner l

Ici, se demander quel sera (en fonction du paramètre n) le temps d’exécution de l’algo-
rithme revient en gros à calculer le nombre de fois que sera exécutée l’instruction baromètre
“l ← l + 1”. Dans ce cas précis, cela est équivalent à se demander quelle sera la valeur re-
tournée par l’algorithme fonction du paramètre n. Soit hdn in∈N la suite qui, pour chaque n,
donne cette valeur finale. En utilisant la notation sigma “Σ”, on peut traduire facilement les
boucles “Pour” en sommations :
Xn X i
dn = 1.
i=1 j=1

En appliquant successivement les propriétés arithmétiques des sommations énoncées par la


proposition 2.1.2, on parvient à la définition par terme général de dn :

X i
n X n
X
dn = 1 = i .h Prop 2.1.2-a i
i=1 j=1 i=1
n(n + 1)
= .h Prop 2.1.2-d i
2
2.1. SUITES 131

On peut aussi exprimer dn en définissant la suite par récurrence. En utilisant la convention


appropriée 3 , on remarque facilement que :

d = 0
0
(2.6)
dn = dn−1 + n ∀n ∈ N∗ .

Les algorithmes récursifs

Pour analyser l’exemple précédent (l’algorithme Algo Jouet Un), la notation sigma semble
plus appropriée que la définition par récurrence de la suite. Il existe cependant plusieurs cas où
la définition par récurrence est la plus naturelle. C’est particulièrement le cas des algorithmes
récursifs, comme dans l’exemple suivant :

Algo Jouet Deux ( n )


Si n < 1 alors
Retourner 1
Sinon
Retourner 2 × Algo Jouet Deux(n − 1)
Fin Si

Désignons par hbn in∈N la suite qui, pour chaque n, donne la valeur retournée par la fonction
décrite dans ce dernier exemple. Ici, il est facile de comprendre ce que sera la valeur de bn si
on connaı̂t celle de bn−1 : 
b = 1;
0
(2.7)
bn = 2 · bn−1 ∀n ∈ N∗ .

Bien que la définition par récurrence soit une définition tout à fait rigoureuse, elle n’est
pas très pratique. En effet, pour calculer b100 dans l’exemple précédent, il nous faut d’abord
calculer b99 et pour calculer b99 , on a besoin de connaı̂tre b98 , etc. Donc, si on souhaite utiliser
la suite han in∈N pour analyser notre petit algorithme “Algo Jouet Deux”, pour chacune des
valeurs de n, on serait mieux de travailler avec la définition par terme général de la suite
(malheureusement plus difficile à obtenir) au lieu de la définition par récurrence.

3. Nous adoptons ici la convention que si n = 0, il n’y a pas d’erreur d’exécution, mais que les instructions
à l’intérieur de la première boucle “Pour” ne sont tout simplement pas exécutées.
132 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

Dans cet exemple simple, on peut “deviner” que le terme général de la suite est bn = 2n
en calculant les premiers termes de la suite :

n 0 1 2 3 4 ··· n
bn 1 2 4 8 16 ··· 2n

La section 2.2 présente la méthode de la substitution à rebours qui nous aidera, dans
certaines circonstances, à déduire le terme général d’une suite à partir de sa définition par
récurrence. Ensuite, la section 2.3 présente la technique de démonstration par induction
mathématique, qui permettra de démontrer que la définition par terme général que nous
avons déduit ou deviné est bien équivalente à sa définition par récurrence.
2.1. SUITES 133

2.1.4 Exercices sur les suites

Exercice 1 : Évaluez la valeur de la sommation suivante :


3 X
X 2
s = ( i2 + j ) .
i=1 j=1

Exercice 2 : En vous servant de la notation en extension des sommes, illustrez les égalités
suivantes (la réponse du premier exercice vous est donnée à titre d’exemple) :

n
X n
X
a) i = 1+ i
i=1 i=2

Solution :
Xn
i = 1 + 2 + 3 + ... + n
i=1
= 1 + (2 + 3 + . . . + n)
Xn
= 1+ i
i=2

n
X n
X
b) i = i
i=0 i=1

n
X n−1
X
c) (n − i) = i
i=1 i=1

n n
X √ X √
d) k i = k· i , pour tout k ∈ R
i=1 i=1

n−1
X n
X
e) 2i + 1 = 2i − 1
i=0 i=1

n−1 X
X n X
n
f) 1 = n3 − n2
i=1 j=1 k=1
134 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

Exercice 3 : Soit la suite hvn in∈N∗ dont le nième terme correspond à la valeur retournée par
l’algorithme suivant exécuté avec le paramètre n en entrée (avec n ≥ 1).

Algo Jouet Trois ( n )


v←0
Pour i = 1 à n Faire
Pour j = i + 1 à n Faire
v ←v+1
Fin Pour
Fin Pour
Retourner v

a) À l’aide de la notation sigma, donnez l’expression permettant de calculer un terme vn


quelconque (avec n ∈ N∗ ).
b) À partir de la réponse précédente, calculez le terme général de la suite hvn in∈N∗ . Pour
ce faire, utilisez les propriétés arithmétiques des sommes en notation sigma.
c) Donnez la définition par récurrence de la suite hvn in∈N∗ .
d) Calculez les 5 premiers termes de la suite hvn in∈N∗ à l’aide de chacune des trois ex-
pressions trouvées en (a), (b) et (c). Assurez-vous que les réponses sont identiques.
2.2. MÉTHODE DES SUBSTITUTIONS À REBOURS 135

2.2 Méthode des substitutions à rebours

La méthode des substitutions à rebours présentée dans cette section est une “recette”
qui nous permet, dans certains cas, de déduire le terme général d’une suite à partir de
sa définition par récurrence. Précisons dès le départ que cette méthode ne permet pas de
démontrer hors de tout doute l’équivalence entre la définition par récurrence d’une suite et
le terme général déduit. Dans le cadre de ce cours, nous considérons cependant que, lorsque
la méthode des substitutions à rebours est appliquée rigoureusement, elle est suffisamment
convaincante pour qu’on puisse tenir son résultat pour acquis.

2.2.1 Description de la méthode

Pour illustrer les différentes étapes de la méthode des substitutions à rebours, considérons
l’exemple (très simple) de la suite hbn in∈N dont nous avons donné la définition par récurrence
à l’équation (2.7) : 
b = 1
0
bn = 2 · bn−1 ∀n ∈ N∗ .

Les équations ci-dessous présentent en détail de la méthode de la substitution à rebours


appliquée à la suite hbn in∈N . Nous discuterons ensuite de chacune des étapes.


bn = 2 · bn−1 .h Définition par récurrence de bn i 


= 2 · 2 · bn−2 .h Car bn−1 = 2bn−2 i 
Substituer
(A)
= 2 · 2 · 2 · bn−3 .h Car bn−2 = 2bn−3 i 


à rebours
2 · 2 · 2 · 2 · bn−4 .h Car bn−3 = 2bn−4 i

=

= ...
Déduire l’expression

= 2| · 2 ·{z. . . · 2} · bn−i .h Pour tout i ≥ 1 i (B)
 après i subtitutions
i fois 
= 2| · 2 ·{z. . . · 2} · b0 .h En utilisant [i := n] i 

Substituer la valeur

n fois (C)
= 2| · 2 ·{z. . . · 2} · 1 .h Car b0 = 1 i 


du cas de base
n fois )
= 2n . .h Arithmétique i Calculer le terme
(D)
général
136 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

Nous avons donc divisé la démarche en quatre étapes clés :


(A) Substituer à rebours.
Nous débutons en considérant la récurrence “bn = 2 · bn−1 ” et en substituant “bn−1 ”
par sa définition, c’est-à-dire par la même expression récursive. Nous répétons cette
opération quelques fois, en substituant successivement les valeurs de “bn−2 ”, “bn−3 ”,
...
(B) Déduire l’expression après i subtitutions.
Après quelques substitutions à rebours, on voit apparaı̂tre une structure dans le
développement de l’expression. Cela nous permet de déduire l’expression (en exten-
sion) de bn après avoir effectué un nombre quelconque i de substitutions.
(C) Substituer la valeur du cas de base.
Maintenant que nous connaissons l’expression obtenue après i substitutions, nous cal-
culons l’expression qui fait apparaı̂tre le cas de base de la récurrence. Ici, le cas de base
“b0 = 1” apparaitra après n substitutions. Cela nous permet d’obtenir une expression
de bn qui n’est plus récursive.
(D) Calculer le terme général
Nous transformons finalement l’expression en extension de bn en une expression en
compréhension. Dans l’exemple de la suite hbn in∈N , cette transformation est obtenue
par une simple propriété arithmétique.

Notez que l’étape (D) ne sera pas toujours réalisable. En effet, déduire le terme général
d’une suite à partir d’une expression en extension (ou en notation sigma) est souvent très
difficile et parfois impossible.

2.2.2 Quelques exemples

Exemple 1 : La récurrence de l’équation (2.6)

Commençons par calculer, par la méthode des substitutions à rebours, le terme général
de la récurrence hdn in∈N présentée par l’équation (2.6) :

d = 0
0
dn = dn−1 + n ∀n ∈ N∗ .

Rappelons que nous avons obtenu cette expression après l’analyse de l’algorithme Algo Jouet Un
de la page 130.
2.2. MÉTHODE DES SUBSTITUTIONS À REBOURS 137

dn = dn−1 + n .h Définition par récurrence de bn i


= dn−2 + (n − 1) + n .h Car dn−1 = dn−2 + (n − 1) i
= dn−3 + (n − 2) + (n − 1) + n .h Car dn−2 = dn−3 + (n − 2) i
= dn−4 + (n − 3) + (n − 2) + (n − 1) + n .h Car dn−3 = dn−4 + (n − 3) i
= ...
= dn−i + (n − (i−1) ) + (n − (i−2) ) + . . . + (n − 1) + n .h ∀i ∈ N∗ i
= d0 + (n − (n−1) ) + (n − (n−2) ) + . . . + (n − 1) + n .h Avec [i := n] i
= (n − (n−1) ) + (n − (n−2) ) + . . . + (n − 1) + n .h Car d0 = 0 i
= 1 + 2 + . . . + (n − 1) + n .h Arithmétique i
Xn
= j .h Réécriturre en notation sigma i
j=1

n(n + 1)
= . .h Proposition 2.1.2-d i
2

Dans cet exemple, la méthode de la substitution à rebours nous a permis de réécrire en


extension la suite hdn in∈N . Nous avons ensuite constaté que l’expression obtenue correspon-
dait à une somme en notation sigma dont nous connaissions le terme général (grâce à la
proposition 2.1.2). Les propriétés des sommes sont en général très utiles lorsqu’on applique
la méthode des substitutions à rebours sur des suites où la règle de récurrence comporte une
addition.

Exemple 2 : Le tri par sélection

Le tri par sélection est un algorithme de tri simple et intuitif. Dans le pseudo-code
ci-dessous, on considère que l’algorithme reçoit en entrée un tableau T contenant n nombres
réels à trier en ordre croissant. Les éléments du tableau sont indexés de 1 à n. Ainsi, T [1]
réfère au premier élément du tableau et T [n] au dernier élément.

Pour calculer le temps d’exécution de l’algorithme Tri Sélection en fonction du nombre n


d’éléments à trier, nous choisissons la comparaison “T [j] < T [min]” en guise d’instruction
baromètre, car cette instruction est exécutée au moins aussi souvent que n’importe quelle
autre instruction de l’algorithme.
138 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

Tri Sélection ( T [1, . . . , n] )


Pour i = 1 à n Faire
min ← i
Pour j = i + 1 à n Faire
Si T [j] < T [min] alors
min ← j
Fin Si
Fin Pour
temp ← T [i]
T [i] ← T [min]
T [min] ← temp
Fin Pour
Retourner T

Désignons par hsn in∈N\{0,1} la suite dont le nième terme correspond au nombre d’exécutions
de l’instruction baromètre pour un tableau de taille n. Nous considérons n ≥ 2, car il est
inutile de trier un tableau de moins de deux éléments. Puisque l’algorithme est de type
itératif, il serait possible de définir la suite à l’aide de la notation sigma et de calculer le
terme général associé en appliquant les propriétés de la proposition 2.1.2 (pourquoi ne pas le
faire en exercice !). Cependant, nous allons ici définir la valeur du terme sn par une règle de
récurrence : 
s = 1
2
sn = sn−1 + (n − 1) ∀n ∈ N \ {0, 1, 2} .

L’expression de la récurrence est obtenue grâce aux deux constatations suivantes :

— Pour un tableau de taille 2, l’instruction baromètre est exécutée une seule fois (c’est
notre cas de base) ;
— Pour un tableau de taille n > 2, la boucle interne est d’abord exécutée (n − 1) fois (il
en va donc de même pour le nombre d’exécutions de l’instruction baromètre). Ensuite,
le nombre d’exécutions de l’instruction est le même que si on exécute l’algorithme sur
un tableau de taille (n − 1).
2.2. MÉTHODE DES SUBSTITUTIONS À REBOURS 139

Utilisons donc la méthode des substitutions à rebours pour trouver le terme général de la
suite hsn in∈N\{0,1} :

sn = sn−1 + (n − 1) .h Définition par récurrence de sn i


= sn−2 + (n − 2) + (n − 1) .h Car sn−1 = sn−2 + (n − 2) i
= sn−3 + (n − 3) + (n − 2) + (n − 1) .h Car sn−2 = sn−3 + (n − 3) i
= sn−4 + (n − 4) + (n − 3) + (n − 2) + (n − 1) .h Car sn−3 = sn−4 + (n − 4) i
= ...
= sn−i + (n − i) + (n − (i−1 )) + . . . + (n − 2) + (n − 1) .h ∀i ∈ N∗ i
= s2 + (n − (n−2)) + (n − (n−3 )) + . . . + (n − 2) + (n − 1) .h Avec [i := n−2 ] i
= s2 + 2 + 3 + . . . + (n − 2) + (n − 1) .h Arithmétique i
= 1 + 2 + 3 + . . . + (n − 2) + (n − 1) .h Car s2 = 1 i
n−1
X
= j .h Réécriturre en notation sigma i
j=1

(n−1) · ( (n−1) + 1 )
= .h Prop 2.1.2-d, avec [n := n−1] i
2
n · (n − 1)
= . .h Arithmétique i
2

Exemple 3 : Le problème des tours de Hanoı̈

Le problème des tours de Hanoı̈ est un jeu de logique qui a été imaginé par le mathé-
maticien français Édouard Lucas (1842 – 1891). Le jeu est constitué de trois tiges (que nous
désignons par les tiges A, B et C) et de n disques. Tous les disques possèdent des diamètres
distincts. Au début du jeu, les disques sont empilés sur la tige A en ordre de taille, de manière
à ce que le disque de plus grand diamètre soit à la base de la pile et que le disque de plus
petit diamètre soit au sommet de la pile (tel qu’illustré à la figure 2.1).

A B C
Figure 2.1 – Le problème des tours de Hanoı̈ (à n = 6 disques).
140 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

Le but du jeu est de transférer tous les disques sur la tige C en respectant les contraintes
suivantes :

— On ne peut déplacer qu’un seul disque à la fois. Les déplacements se font d’une tige à
une autre, et donc du sommet d’une pile au sommet d’une autre pile ;
— Un disque peut seulement être déplacé sur un disque de diamètre supérieur ou encore
sur une tige vide. Autrement dit, il est interdit de déplacer un disque sur une pile
possédant des disques de tailles inférieures à lui même.

Examinons d’abord la stratégie qui permet de résoudre le problème des tours de Hanoı̈.
Nous procédons en débutant par le cas le plus simple (c’est-à-dire déplacer une pile d’un
seul disque) et en déduisant la méthode pour le cas général (c’est-à-dire déplacer une pile
constituée d’un nombre quelconque de disques).

(1) Méthode pour déplacer un seul disque de la tige A vers la tige C. (n = 1)

— Déplacer l’unique disque de la tige A vers la tige C.

(2) Méthode pour déplacer deux disques de la tige A vers la tige C. (n = 2)

— Déplacer le petit disque de la tige A vers la tige B ;


— Déplacer le grand disque de la tige A vers la tige C ;
— Déplacer un petit disque de la tige B vers la tige C ;

(3) Méthode pour déplacer trois disques de la tige A vers la tige C. (n = 3)

— Déplacer deux disques de la tige A vers la tige B ;


. h Appliquer la méthode (2) avec [A := A] et [C := B]. i
— Déplacer le grand disque de la tige A vers la tige C ;
— Déplacer deux disques de la tige B vers la tige C ;
. h Appliquer la méthode (2) avec [A := B] et [C := C]. i

(· · · ) Méthode pour déplacer n disques de la tige A vers la tige C. (n ∈ N∗ )

— Déplacer n − 1 disques de la tige A vers la tige B ; . h Voir figure 2.2a i


— Déplacer l’unique disque de la tige A vers la tige C ; . h Voir figure 2.2b i
— Déplacer n − 1 disques de la tige B vers la tige C ; . h Voir figure 2.2c i
2.2. MÉTHODE DES SUBSTITUTIONS À REBOURS 141

A B C A B C A B C
(a) Déplacer n−1 disques de A vers B. (b) Déplacer 1 disque de A vers C. (c) Déplacer n−1 disques de B vers C.

Figure 2.2 – Illustration de la méthode à employer pour déplacer n disques


de la tige A vers la tige C. Les étapes (a) et (c) se font par appels récursifs.

La stratégie permettant de résoudre le problème des tours de Hanoı̈ s’exprime donc na-
turellement par un algorithme récursif. Le pseudo-code ci-dessous présente cet algorithme.
Pour résoudre une instance du problème à n disques, l’appel initial à l’algorithme doit être :

Déplacer Disques(n, A, C, B)

Prenez note que cette formulation de l’algorithme considère que le cas de base correspond
à la situation où aucun disque n’est déplacé (n = 0). Il aurait été aussi valable de considérer
le cas où un seul disque est déplacé (n = 1).

Déplacer Disques(nbDisques, tigeDépart, tigeArrivée, tigeAuxiliare)


Si nbDisques > 0 alors
(1) Déplacer Disques(nbDisques−1, tigeDépart, tigeAuxiliare, tigeArrivée)
(2) Déplacer le disque de “tigeDépart” à “tigeArrivée”
(3) Déplacer Disques(nbDisques−1, tigeAuxiliare, tigeArrivée, tigeDépart)
Fin Si

On désire maintenant connaı̂tre le nombre de déplacements de disques que l’on doit ef-
fectuer pour résoudre le problème des tours de Hanoı̈ à n disques. Autrement dit, on désire
calculer le nombre de fois que sera exécutée la ligne (2) dans l’algorithme Déplacer Disques
en fonction de la valeur initiale du paramètre “nbDisques”. La suite correspondante hhn in∈N
se définit naturellement par la récurrence suivante :

h = 0
0
(2.8)
hn = 2 · hn−1 + 1 ∀n ∈ N∗ .
142 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

Tentons de déduire le terme général de la suite hhn in∈N à l’aide de la méthode des sub-
stitutions à rebours :

hn = 2 · hn−1 + 1 .h Définition par récurrence de hn i


= 2 · (2 · hn−2 + 1) + 1 .h Car hn−1 = 2 · hn−2 + 1 i
= 2 · 2 · hn−2 + 2 + 1 .h Arithmétique i
= 2 · 2 · (2 · hn−3 + 1) + 2 + 1 .h Car hn−2 = 2 · hn−3 + 1 i
= 2 · 2 · 2 · hn−3 + 2 · 2 + 2 + 1 .h Arithmétique i
= 2 · 2 · 2 · (2 · hn−4 + 1) + 2 · 2 + 2 + 1 .h Car hn−3 = 2 · hn−4 + 1 i
= 2 · 2 · 2 · 2 · hn−4 + 2 · 2 · 2 + 2 · 2 + 2 + 1 .h Arithmétique i
= 24 · hn−4 + 23 + 22 + 21 + 20 .h Arithmétique i
= ...
= 2i · hn−i + 2i−1 + · · · + 22 + 21 + 20 .h ∀i ∈ N∗ i
= 2n · h0 + 2n−1 + · · · + 22 + 21 + 20 .h Avec [i := n] i
= 2n−1 + · · · + 22 + 21 + 20 .h Car h0 = 0 i
n−1
X
= 2j .h Réécriturre en notation sigma i
j=0


= ... ? . À suivre...

À ce moment-ci, nous ne pouvons pas aller plus loin dans la transformation de l’expres-
sion hn . La méthode des substitutions à rebours nous a permis de déduire une sommation
en notation sigma. Pour l’instant, nous ne connaissons aucune propriété qui nous permet
d’exprimer cette sommation sous la forme d’un terme général 4 . Cela met en évidence que
cette méthode ne peut pas à elle seule résoudre n’importe quelles récurrences. Nous avons
besoin d’outils supplémentaires !

4. Le lecteur avide de savoir peut se référer directement à la page 164, où nous calculons le terme général
de la suite hhn in∈N . Nous verrons en effet à la section 2.4.3 que le terme hn correspond à la somme des n
premiers termes d’une suite géométrique de raison 2.
2.2. MÉTHODE DES SUBSTITUTIONS À REBOURS 143

2.2.3 Exercices sur la méthode des substitutions à rebours

Exercice 1 : Calculez le terme général des récurrences suivantes à l’aide de la méthode des
substitutions à rebours :

x = 0
1
a)
xn = xn−1 + 5 ∀n ∈ N∗ \ {1}

y(1) = 4
b)
y(n) = 3 · y(n − 1) ∀n ∈ N∗ \ {1}

z(0) = 0
c)
z(n) = z(n − 1) + 2n − 1 ∀n ∈ N∗
144 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

2.3 Induction mathématique

Supposons que l’on connait la définition par récurrence d’une suite han in∈N et que nous
désirons trouver sa définition par terme général. Dans plusieurs cas de récurrences complexes,
la façon la plus simple de procéder est de calculer les premiers termes de la suite à l’aide de
l’expression de la récurrence et de “deviner” le terme général. Dans cette situation, il faut
ensuite démontrer que l’expression que nous avons “devinée” est valide pour tous les termes
de la suite. Pour ce faire, nous avons souvent recours au principe d’induction mathématique.

Notons que, bien que nous concentrons ici nos efforts sur l’étude des récurrences, le prin-
cipe d’induction mathématique est s’applique à un éventail de problèmes beaucoup plus
large.

2.3.1 Induction mathématique faible

Le principe d’induction mathématique s’énonce de plusieurs façons, la forme la plus


couramment utilisée étant :

Théorème 2.3.1 Principe d’induction mathématique faible.


Soit un prédicat P . Alors,
h i 
a: P (0) ∧ ∀n ∈ N | P (n) ⇒ P (n + 1) ⇒ ∀n ∈ N | P (n)
h i
P (0) ∧ ∀n ∈ N∗ | P (n−1) ⇒ P (n)

b: ⇒ ∀n ∈ N | P (n)

Dans ce document, nous utiliserons surtout la deuxième formulation du théorème (2.3.1-b),


car c’est celle qui se prête le mieux aux démonstrations reliées aux résolutions de récurrences
telles que nous les avons définies. Le prédicat P (n) du théorème correspondra à l’énoncé “Le
nième terme de la suite han in∈N obtenu par le terme général correspond bien au terme obtenu
par la relation de récurrence”.

Structure d’une démonstration par induction

Les démonstrations utilisant le principe d’induction faible se divisent toujours en deux étapes :
(A) Démonstration de P (0).
Il s’agit de montrer que le terme général est valide pour le premier terme de la suite
(c’est-à-dire le terme a0 ).
2.3. INDUCTION MATHÉMATIQUE 145

(B) Démonstration de (∀n ∈ N∗ | P (n−1) ⇒ P (n) ).


La démonstration se fait comme d’habitude lorsqu’on a quantificateur universel “∀”
qui s’applique à une implication “⇒” (relire au besoin la section 1.3.3) :
— On présente un n ∈ N∗ pour lequel on ne suppose qu’une chose, c’est que le prédicat
P (n−1) est vrai pour cette valeur de n.
— Puis on montre que ceci implique que pour cette valeur de n, le prédicat P (n) est
lui aussi vrai.

Une fois ces deux étapes démontrées, on peut conclure :

(A) et (B) impliquent (∀n ∈ N | P (n)).


Autrement dit, le terme général est valide pour tous les termes de la suite han in∈N .

L’exemple suivant devrait rendre cette idée plus précise.

Exemple de la suite des carrés parfaits

Soit hcn in∈N une suite définie par récurrence par


(
c0 = 0
cn = cn−1 + 2n − 1 ∀n ∈ N∗ .

Nous allons démontrer que cette suite correspond à la suite des carrés parfaits, c’est-à-dire
que le terme général de la suite hcn in∈N est :

cn = n2 ∀n ∈ N .

Démonstration. La suite hcn in∈N est la suite des carrés parfaits.


Prenons le prédicat P (n) : cn = n2 .
Alors nous devons démontrer que (∀n ∈ N | P (n)).
Et par le principe d’induction mathématique (théorème 2.3.1-b), il suffit de démontrer que

P (0) ∧ (∀n ∈ N∗ | P (n − 1) ⇒ P (n)) .

Montrons P (0). . h C’est-à-dire, montrons c0 = 02 . i


c0 = 0 = 0 2 .
146 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

Montrons (∀n ∈ N∗ | P (n−1) ⇒ P (n)).


Soit n ∈ N∗ , choisi tel que P (n − 1) est vrai. . h C’est-à-dire, tel que cn−1 = (n − 1)2 i
5

Montrons P (n), c’est à dire cn = n2 :




cn = cn−1 + 2n − 1 . Définition de hcn in∈N
= (n − 1)2 + 2n − 1 .h Hypothèse d’induction. i
= (n2 − 2n + 1) + 2n − 1 .h Développement d’un trinôme carré parfait i
= n2 . .h Simplification algébrique. i

On a démontré ∀n ∈ N∗ | P (n−1) ⇒ P (n) .




Conclusion : On a bien ∀n ∈ N | P (n) , c’est-à-dire : cn = n2 ∀n ∈ N . .
C.Q.F.D.

Démonstration du principe d’induction faible

Nous allons maintenant démontrer le principe d’induction faible. Remarquez que, pour
ce faire, nous utilisons la technique de démonstration par contradiction (voir section 1.3.8).
Nous aurons aussi besoin de l’axiome suivant :

Axiome : N est un ensemble bien ordonné. (C’est-à-dire : tout sous-ensemble non vide de
l’ensemble N a un plus petit élément.)

Démonstration du théorème 2.3.1-a (Principe d’induction mathématique faible)


h i 
Supposons le contraire de P (0) ∧ ∀n ∈ N | P (n) ⇒ P (n + 1) ⇒ ∀n ∈ N | P (n)
h i 
c’est-à-dire que P (0) ∧ ∀n ∈ N | P (n) ⇒ P (n + 1) , mais ¬ ∀n ∈ N | P (n) .
Et cherchons une contradiction.

Soit A, l’ensemble des éléments de N pour lesquels P (n) est faux.


Selon notre hypothèse, A 6= ∅.

Soit na , le plus petit élément de A.


. h Un tel na existe, car N est bien ordonné et A est un sous-ensemble non vide de N. i

Comme, par hypothèse on a que P (0) est vrai, on a donc que na 6= 0.


Donc na − 1 ∈ N.
5. Notons qu’il faut lire cet énoncé ainsi :  tel que cn−1 (tel que défini par la récurrence ci-haut) est bien
égal à (n − 1)2 .  C’est ce qu’on appelle l’hypothèse d’induction.
2.3. INDUCTION MATHÉMATIQUE 147

Et comme na est le plus petit élément de A, on a que P (na − 1) est vrai.

Donc P (na ) est lui aussi vrai.


. h Par l’hypothèse (∀n ∈ N | P (n) ⇒ P (n + 1)), avec [n := na − 1]. i

Donc na 6∈ A.

Le nombre naturel na est donc à la fois le plus petit élément de A et pas un élément de A.
Contradiction.

Ainsi, on ne peut supposer le contraire. C’est donc que l’énoncé à démontrer est vrai.
.
C.Q.F.D.

Remarquons la deuxième forme du théorème (2.3.1-b) est en fait une simple réécriture de
la première forme (2.3.1-a). En effet, nous avons :

∀n ∈ N∗ | P (n−1) ⇒ P (n) .
 
∀n ∈ N | P (n) ⇒ P (n + 1) ⇔

Induction faible avec un indice de base quelconque

Il est important de préciser que la démonstration par induction mathématique faible telle
que nous l’avons présentée jusqu’à maintenant peut ne pas être utilisable dans certains cas,
notamment lorsque la suite définie par récurrence ne commence pas à l’indice 0. Voici donc
une des nombreuses autres variantes du principe d’induction mathématique faible.

Théorème 2.3.2 Principe d’induction mathématique faible sur {n0 , n0 + 1, n0 + 2, . . .}.


Soit un prédicat P et un entier n0 ∈ N. Alors,
h i 
P (n0 ) ∧ ∀n ∈ I\{n0 } | P (n−1) ⇒ P (n) ⇒ ∀n ∈ I | P (n) ,
def
où I = {n0 , n0 + 1, n0 + 2, . . .}.

Remarquons que, si on réécrit le théorème 2.3.2 précédent en substituant [n0 := 0], on


a [I := N] et on retrouve exactement l’énoncé du théorème 2.3.1-b, c’est-à-dire le principe
d’induction mathématique faible que nous utilisons lorsqu’une suite définie par récurrence
commence à l’indice 0. Il est donc possible de démontrer le théorème 2.3.2 en adaptant
légèrement la démonstration du théorème 2.3.1 que nous avons présenté plus haut. Le lecteur
est d’ailleurs encouragé à faire cette démonstration en exercice.
148 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

De même, comme le met en évidence l’exemple suivant, les démonstrations se basant


sur les théorèmes 2.3.1 et 2.3.2 sont très semblables, la différence principale étant qu’elles
débutent en montrant la véracité prédicat P (0) et P (n0 ) respectivement.

Exemple de la somme des nombres entiers positifs consécutifs

Nous allons maintenant démontrer la propriété 2.1.2-d (page 129), qui donne le terme
général permettant de calculer la somme des n premiers nombres entiers positifs :
n
X n(n + 1)
1 + 2 + 3 + ... + n = i = .
i=1
2

Pour cette démonstration, il sera plus naturel d’utiliser l’indice 1 pour désigner le cas de
base (plutôt que 0). C’est pourquoi nous allons utiliser le principe d’induction faible avec un
indice de base quelconque.

Démonstration de la propriété 2.1.2-d (Somme des nombres entiers positifs consécutifs)


n
X n(n + 1)
Prenons le prédicat P (n) : i = .
i=1
2
Alors nous devons démontrer que (∀n ∈ N∗ | P (n)).
Et par le principe d’induction mathématique (théorème 2.3.2, avec [n0 := 1] et donc [I := N∗ ]),
il suffit de démontrer que

P (1) ∧ (∀n ∈ N∗ \{1} | P (n − 1) ⇒ P (n)) .


* +
1
1 · (1 + 1) X
Montrons P (1). . C’est-à-dire, montrons = i.
2
i=1
1
1 · (1 + 1) 2 X
= = 1 = i.
2 2 i=1

Montrons (∀n ∈ N∗ \{1} | P (n−1) ⇒ P (n)).


Soit n ∈ N∗ \{1}, choisi tel que P (n − 1) est vrai. C’est-à-dire :
n−1
X (n−1)( (n−1) + 1 ) n(n − 1)
(?) i = = . . h Hypothèse d’induction i
i=1
2 2
2.3. INDUCTION MATHÉMATIQUE 149

n
X n(n + 1)
Montrons P (n), c’est à dire i = :
i=1
2
n
X
i
i=1

= 1 + 2 + 3 + . . . + (n− 1) + n h Réécriture de la somme de 1 à n i


" n−1 #
X
= i +n h Réécriture de la somme de 1 à (n−1) i
i=1

n(n − 1)
= +n h Voir (?) : Hypothèse d’induction. i
2
n(n − 1) + 2n
= h Arithmétique (dénominateur commun). i
2
n( (n − 1) + 2 )
= h Arithmétique (mise en évidence de n). i
2
n(n + 1)
= . h Arithmétique. i
2
On a démontré ∀n ∈ N∗ \{1} | P (n−1) ⇒ P (n) .


n
 ∗
X n(n + 1)
Conclusion : On a bien ∀n ∈ N | P (n) , c’est-à-dire : i = ..
i=1
2
C.Q.F.D.

2.3.2 Principe d’induction mathématique à deux cas de base

Lorsqu’une suite han in∈N est définie par récurrence, il arrive parfois que le calcul du
terme an repose plusieurs de ses prédécesseurs (et non seulement de son prédécesseur immédiat
an−1 ). Nous présentons maintenant une autre variante du principe d’induction qui est utile
lorsque le terme an d’une suite est défini en fonction de ses deux prédécesseurs an−1 et an−2 .

Théorème 2.3.3 Principe d’induction mathématique à deux cas de base.


Soit un prédicat P . Alors,
h i 
P (0) ∧ P (1) ∧ ∀n ∈ N \ {0, 1} | P (n−2) ∧ P (n−1) ⇒ P (n) ⇒ ∀n ∈ N | P (n) .

Comme nous le verrons dans l’exemple qui suit, une démonstration se basant sur ce dernier
théorème doit donc débuter en démontrant la véracité des deux prédicats P (0) et P (1).
150 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

Exemple de la suite de Fibonacci

À la section 2.1.1, nous avons défini ainsi la suite de Fibonacci hfn in∈N par récurrence :

 f0 = 0

f1 = 1

fn = fn−1 + fn−2 ∀n ∈ N \ {0, 1} .

Nous avons ensuite affirmé que le terme général de cette suite est :
√ !n √ !n
1 1+ 5 1 1− 5
fn = √ − √ ∀n ∈ N .
5 2 5 2

Nous allons maintenant démontrer la validité de cette définition par terme général en
utilisant le principe d’induction à deux cas de bases (théorème 2.3.3).

Démonstration. Terme général de la suite de Fibonacci.


 √ n  √ n
1+ 5
1
Prenons le prédicat P (n) : fn = 5

2
− 5 1−2 5
1
√ ∀n ∈ N.
Alors nous devons démontrer que (∀n ∈ N | P (n)).
Par le principe d’induction mathématique à deux cas de base, il suffit de démontrer que :

P (0) ∧ P (1) ∧ ∀n ∈ N \ {0, 1} | P (n−1) ∧ P (n−2) ⇒ P (n) .

Pour démontrer cet énoncé, nous avons besoin de la remarque suivante :


√ √
Remarque (∗) : Les deux nombres 1+2 5 et 1−2 5 sont les deux zéros 6 du polynôme
√ √
y = x2 − x − 1. Donc, 1+2 5 et 1−2 5 sont les deux seuls nombres réels satisfaisant
l’équation 0 = x2 − x − 1, et donc l’équation x + 1 = x2 . Autrement dit, additionner
1 à l’un de ces deux nombres est équivalent à l’élever au carré.

D  √ 0  √ 0 E
√1 1+ 5 √1 1− 5
Montrons P (0). . C’est-à-dire, montrons f0 = 5 2 − 5 2 .

√ !0 √ !0
1 1+ 5 1 1− 5 1 1
√ −√ = √ − √ = 0 = f0 .
5 2 5 2 5 5

2 −b ± b2 − 4ac
6. Rappelons que les zéros du polynôme y = ax + bx + c, sont donnés par la formule x = .
2a
2.3. INDUCTION MATHÉMATIQUE 151
D  √ 1  √ 1 E
√1 1+ 5 √1 1− 5
Montrons P (1). . C’est-à-dire, montrons f1 = 5 2 − 5 2 .

 √ 1  √ 1  √   √ 
1+ 5 1− 5 1+ 5
√1
5 2
− √1
5 2
= √1
5 2
− 5 1−2 5
√1

 √ √ 
√1 1+ 5 1− 5
= 5 2
− 2
 √ 
√1 2 5
= 5 2
= 1 = f1 .


Montrons ∀n ∈ N \ {0, 1} | P (n−1) ∧ P (n−2) ⇒ P (n) .
Soit n ∈ N \ {0, 1}, choisi tel que P (n−1) et P (n−2) sont vrais.
C’est-à-dire, tel que nous avons :

√ n−1 √ n−1

√1 1+ 5 √1 1− 5
• fn−1 = 5 2
− 5 2
,
 √ n−2  √ n−2
√1 1+ 5 √1 1− 5
• fn−2 = 5 2
− 5 2
.

 √ n  √ n
√1 1+ 5 √1 1− 5
Montrons P (n), c’est-à-dire fn = 5 2
− 5 2
:
fn


= . Définition de hfn in∈N\{0,1} .

fn−1 + fn−2
= . h Hypothèses d’induction. i
 √ n−1  √ n−1  √ n−2  √ n−2
√1 1+ 5 √1 1− 5 √1 1+ 5 √1 1− 5
5 2
− 5 2
+ 5 2
− 5 2

=
 √ n−1  √ n−2  √ n−1  √ n−2
√1 1+ 5 √1 1+ 5 √1 1− 5 √1 1− 5
5 2
+ 5 2
− 5 2
− 5 2

= . h Mise en évidence double. i


 √ n−2  √   √ n−2  √ 
√1 1+ 5 1+ 5 √1 1− 5 1− 5
5 2 2
+1 − 5 2 2
+1
= . h Remarque (∗), deux fois. i
 √ n−2  √ 2  √ n−2  √ 2
√1 1+ 5 1+ 5 √1 1− 5 1− 5
5 2 2
− 5 2 2

= . h Propriété des exposants. i


 √ n  √ n
√1 1+ 5 √1 1− 5
5 2
− 5 2
.


On a démontré ∀n ∈ N \ {0, 1} | P (n−1) ∧ P (n−2) ⇒ P (n) .
152 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

Conclusion : On a bien ∀n ∈N | P (n) ,
√ n √ n
c’est-à-dire : fn = √15 1+2 5 − √15 1−2 5 ∀n ∈ N . .
C.Q.F.D.

Nous sommes maintenant certains que le terme général de la suite de Fibonacci est
 √ n  √ n
√1 1+ 5 √1 1− 5
fn = 5 2
− 5 2
∀n ∈ N .

Mais si ce terme général ne nous avait pas été donné gratuitement, nous aurions été tous
incapables de le deviner. La méthode des séries génératrices présentée plus loin nous permettra
de calculer le terme général de la suite de Fibonacci.

Pour votre culture générale, il est intéressant de constater que le nombre 1+2 5 ≈ 1, 618
est une constante bien connue que l’on appelle le nombre d’or. Le nombre d’or possède
plusieurs propriétés intéressantes. Il est présent dans plusieurs théories mathématiques et il
est même utilisé en architecture 7 .

2.3.3 Induction mathématique forte

Nous présentons maintenant la variante du principe d’induction connue sous le nom


d’induction mathématique forte, que nous formulons ainsi :

Théorème 2.3.4 Principe d’induction mathématique forte.


Soit un prédicat P . Alors,
" #
 
P (0) ∧ ∀n ∈ N∗ ∀k ∈ N | (k < n) ∧ P (k) ⇒ P (n)
 
⇒ ∀n ∈ N | P (n) .

Rappelons que l’idée principale du principe d’induction faible (voir le théorème 2.3.1 à la
page 144) est de supposer que le prédicat P (n−1) est vrai et de montrer que cela implique
que le prédicat P (n) est vrai. C’est ce que signifie l’expression suivante du théorème 2.3.1-b :

∀n ∈ N∗ | P (n−1) ⇒ P (n) .


Dans l’énoncé du principe d’induction forte (théorème 2.3.4), cette expression est rem-

7. Pour en connaı̂tre davantage sur le nombre d’or, voir : http://fr.wikipedia.org/wiki/Nombre_d%


27or
2.3. INDUCTION MATHÉMATIQUE 153

placée par une expression plus générale, c’est-à-dire :


 
∀n ∈ N∗ ∀k ∈ N | (k < n) ∧ P (k) ⇒ P (n) .


Cette dernière expression pourrait aussi se réécrire ainsi :


  
∀n ∈ N∗ P (0) ∧ P (1) ∧ P (2) ∧ . . . ∧ P (n−1) ⇒ P (n) .


Autrement dit, lors de l’utilisation du principe d’induction forte, on suppose que, pour tout
entier positif k plus petit que n, les prédicats P (k) sont vrais. Ensuite, on montre que cela
implique que le prédicat P (n) est vrai.

Bien que le terme “principe d’induction forte” peut donner la fausse indication que cette
nouvelle formulation permet de démontrer plus de résultats que le “principe d’induction fai-
ble”, les deux principes sont dans les faits équivalents. Toutefois, le principe d’induction forte
facilite grandement certaines démonstrations. Dans le cas qui nous intéresse (celui des suites
définies par récurrence), nous utiliserons le principe d’induction forte lorsque la définition
par récurrence du nième terme d’une suite n’est pas donnée en fonction du terme précédant
(le terme d’indice n − 1) mais d’un autre terme d’indice inférieur à n.

Induction forte avec un indice de base quelconque

À la section 2.3.1, nous avons généralisé le principe d’induction faible (théorème 2.3.1-b)
aux suites débutant par un indice quelconque (théorème 2.3.2). Le prochain théorème ap-
plique la même généralisation au principe d’induction forte.

Théorème 2.3.5 Principe d’induction mathématique forte sur {n0 , n0 + 1, n0 + 2, . . .}.


Soit un prédicat P et un entier n0 ∈ N. Alors,
" #
   
P (n0 ) ∧ ∀n ∈ I\{n0 } ∀k ∈ I | (k < n) ∧ P (k) ⇒ P (n) ⇒ ∀n ∈ I | P (n) ,

def
où I = {n0 , n0 + 1, n0 + 2, . . .}.
154 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

Exemple de démonstration utilisant le principe d’induction forte

Considérons la suite h D(n) in∈N∗ définie par la récurrence suivante :



D(1) = 1
D(n) = D( b n c ) + D( d n e ) + 1 ∀n ∈ N \ {0, 1} .
2 2

Nous allons montrer que le terme général de la suite h D(n) in∈N∗ est :

D(n) = 2n − 1 ∀n ∈ N∗ .

Démonstration Terme général de la suite h D(n) in∈N∗


Prenons le prédicat P (n) : D(n) = 2n − 1.
Alors nous devons démontrer que (∀n ∈ N∗ | P (n)).
Par le principe d’induction mathématique (théorème 2.3.5, avec [n0 := 1] et donc [I := N∗ ]),
il suffit de démontrer que
 
P (1) ∧ ∀n ∈ N∗ \ {1} ∀k ∈ N∗ | (k < n) ∧ P (k) ⇒ P (n) .


Montrons P (1). . h C’est-à-dire, montrons D(1) = 2 · 1 − 1 . i


2 · 1 − 1 = 1 = D(1) .

Montrons ∀n ∈ N \ {0, 1} ∀k ∈ N∗ | (k < n) ∧ P (k) ⇒ P (n) .
 

Soit n ∈ N∗ \ {1}, choisi tel que ∀k ∈ N∗ | (k < n) ∧ P (k) est vrai.




Ainsi, pour tout entier k situé entre 1 et n exclusivement, nous avons D(k) = 2k − 1.
. h Il s’agit de notre hypothèse d’induction. i
On remarque que : (∗) 1 ≤ b n2 c < n et (∗∗) 1 ≤ d n2 e < n . . h Car n ≥ 2 i

Montrons maintenant P (n), c’est à dire D(n) = 2n − 1 :


D(n)


= Définition de la suite h D(n) in∈N∗
D( b n2 c ) + D( d n2 e ) + 1
Hypothèse d’induction, avec [ k := b n2 c ], et remarque (∗).


=
2 · b n2 c − 1 + D( d n2 e ) + 1
Hypothèse d’induction, avec [ k := d n2 e ], et remarque (∗∗).


=
2 · b n2 c − 1 + 2 · d n2 e − 1 + 1
= h Arithmétique i
2 b n2 c + d n2 e − 1

2.3. INDUCTION MATHÉMATIQUE 155

Distinguons deux cas :


Cas 1 : n est un nombre pair. Alors,

D(n) = 2 b n2 c + d n2 e − 1 = 2 n n
 
2
+ 2
− 1 = 2n − 1 .

Cas 2 : n est un nombre impair. Alors,

D(n) = 2 b n2 c + d n2 e − 1 = 2 n−1 n+1


 
2
+ 2
− 1 = 2n − 1 .

Dans les deux cas, on a montré que D(n) = 2n − 1.

Conclusion : On a bien ∀n ∈ N∗ | P (n) , c’est-à-dire : Dn = 2n − 1 ∀n ∈ N∗ .




.
C.Q.F.D.

Insistons sur le fait que la dernière démonstration ne se serait pas faite aussi facilement en
ayant recours au principe d’induction faible, puisque la définition par récurrence d’un terme
D(n) de la suite ne dépend pas du terme précédent D(n−1), mais des deux termes situés
“au milieu” de la suite h D(1), D(2), . . . , D(n) i.
156 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

2.3.4 Exercices sur l’induction mathématique

Exercice 1 : Étant donnée la formule :


n
X
2i = n(n + 1) .
i=0

a) Vérifiez cette formule pour n = 1, 2, 5 et 10.


b) Démontrez par induction que cette formule est vraie pour tout n ∈ N.

Exercice 2 : Soit f : N −→ R, une fonction qui satisfait la règle de récurrence suivante :


(
f (0) = 3
f (k + 1) = 2 · f (k) + 2k − 4 ∀k ∈ N∗ .

a) Évaluez f (0), f (1), f (2), f (5) et f (10).


b) Démontrez par induction que f (n) = 2n − 2n + 2 ∀n ∈ N.

Exercice 3 : Soit la suite han in∈N définie par récurrence par :


(
a0 = 2
an = 3an−1 + 2 ∀n ∈ N∗ .

Montrez par induction que le terme général de la suite han in∈N est :

an = 3n+1 − 1 ∀n ∈ N .

Exercice 4 : Soit la suite hbn in∈N définie par récurrence par :


(
b0 = −4
bn = 3 bn−1 + 4n + 4 ∀n ∈ N∗ .

Montrez par induction que le terme général de la suite hbn in∈N est :

bn = 3n − 2n − 5 ∀n ∈ N .
2.3. INDUCTION MATHÉMATIQUE 157

Exercice 5 : Soit la suite hcn in∈N définie par récurrence par :



 c0 = 1

c1 = 1

cn = 4 · cn−1 − 4 · cn−2 ∀n ∈ N \ {0, 1} .

Montrez par induction que le terme général de la suite hcn in∈N est :

cn = 2n−1 · (2 − n) ∀n ∈ N .
158 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

2.4 Cas particuliers de récurrences

L’essentiel de cette section consiste à se donner des outils nous permettant, étant donné
une suite définie par récurrence, de trouver sa définition par terme général. Résoudre ce type
de problème est faire de la résolution de récurrences.

Nous nous intéressons dans cette section à quatre familles particulières de suites. Pour
chacune des suites appartenant à une de ces familles, le terme général est facile à trouver.

2.4.1 Les suites arithmétiques

Définition 2.4.1 Suite arithmétique.


On dit qu’une suite han in∈N est arithmétique de premier terme a et de différence d si :
• a0 = a ;
• la différence entre la valeur du terme an et celle du terme an−1 est égale à d ∀n ∈ N∗ .

Théorème 2.4.2 Terme général d’une suite arithmétique


Soit han in∈N une suite. Alors les énoncés suivants sont équivalents :
1. han in∈N est une suite arithmétique de premier terme a et de différence d.
2. han in∈N est définie par récurrence par :
(
a0 = a
an = an−1 + d ∀n ∈ N∗ .

3. han in∈N est définie par terme général par :

an = a + nd ∀n ∈ N .

Exemple : La suite des nombres pairs

La suite des nombres pairs que nous avons vue en introduction (équation (2.2), page 127)
est une suite arithmétique de premier terme a = 0 et de différence d = 2, et on a bien que :
(
b0 = 0
bn = bn−1 + 2 ∀n ∈ N∗ ,

et que
bn = n · 2 ∀n ∈ N .
2.4. CAS PARTICULIERS DE RÉCURRENCES 159

2.4.2 Les suites géométriques

Définition 2.4.3 Suite géométrique.


On dit qu’une suite han in∈N est géométrique de premier terme a et de raison r si :
• a0 = a ;
• le rapport entre la valeur du terme an et celle du terme an−1 est égal à r ∀n ∈ N∗ .

Notez que le rapport de an sur an−1 est le résultat de la division de an par an−1 , c’est-à-dire :
an
r = .
an−1

Théorème 2.4.4 Terme général d’une suite géométrique


Soit han in∈N une suite. Alors les énoncés suivants sont équivalents :

1. han in∈N est une suite géométrique de premier terme a et de raison r.


2. han in∈N est définie par récurrence par
(
a0 = a
an = an−1 · r ∀n ∈ N∗ .

3. han in∈N est définie par terme général par :

an = a · r n ∀n ∈ N .

Exemple : La suite des puissances de 2

La suite des puissances de 2, c’est-à-dire la suite h1, 2, 4, 8, 16, 32, 64, . . .i, est une suite
géométrique de premier terme a = 1 et de raison r = 2, et on a bien que
(
b0 = 1
bn = bn−1 · 2 ∀n ∈ N∗ ,

et que
bn = 1 · 2n ∀n ∈ N .

Notez que nous avons déjà étudié cette suite en introduction lors de l’analyse de l’algorithme
“Algo Jouet Deux” (voir l’équation (2.7), page 131).
160 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

2.4.3 La suite des sommes de premiers termes d’une suite

Définition 2.4.5 Suite des sommes de premiers termes d’une suite.


Soit han in∈N une suite. La suite des sommes de premiers termes de la suite han in∈N
correspond à la suite hSn in∈N dont le nième terme est :

n
X
Sn = ai ∀n ∈ N .
i=0

Autrement dit, la suite hSn in∈N s’écrit en extension par :

hSn in∈N = h a0 , (a0 + a1 ), (a0 + a1 + a2 ), . . . , (a0 + a1 + · · · + an ), . . . i .

De même, hSn in∈N est définie par récurrence par


(
S0 = a0
Sn = Sn−1 + an ∀n ∈ N∗ .

Les deux prochains théorèmes permettent de trouver directement le terme général de la


somme des premiers termes d’une suite arithmétique (définition 2.4.1) et de la somme des
premiers termes d’une suite géométrique (définition 2.4.3).

Théorème 2.4.6 Terme général des sommes de premiers termes d’une suite arithmétique
Soit han in∈N , une suite arithmétique de premier terme a et de différence d et soit hSn in∈N la
suite des sommes de premiers termes de la suite han in∈N .
Alors, hSn in∈N est définie par terme général par :

(a0 + an )(n + 1)
Sn = ∀n ∈ N .
2

Fréquemment, on s’intéresse à la suite des sommes des premiers termes de la suite arithmétique
han in∈N excluant le premier terme a0 . En désignant cette suite hSn∗ in∈N∗ , on obtient :

n
X (a1 + an ) · n
Sn∗ = an = ∀n ∈ N∗ . (2.9)
i=1
2
2.4. CAS PARTICULIERS DE RÉCURRENCES 161

Théorème 2.4.7 Terme général des sommes de premiers termes d’une suite géométrique
Soit han in∈N une suite géométrique de premier terme a0 et de raison r 6= 1 et soit hSn in∈N la
suite des sommes de premiers termes de la suite han in∈N .
Alors, hSn in∈N est définie par terme général par :

a0 · (1 − rn+1 )
Sn = ∀n ∈ N .
1−r

Lorsqu’on s’intéresse à la suite des sommes des premiers termes de la suite géométrique
han in∈N excluant le premier terme a0 , notée, hSn∗ in∈N∗ , on obtient :

n
X a1 · (1 − rn )
Sn∗ = an = ∀n ∈ N∗ . (2.10)
i=1
1−r

Remarquons que les deux théorèmes 2.4.6 et 2.4.7 contiennent l’expression “(n + 1)”, soit
le nombre de termes de la somme qui donne Sn . Le terme “(n + 1)” est remplacé par “n”
dans les équations 2.9 et 2.10 respectivement, car la somme qui donne Sn∗ contient n termes.

Pensez-y!

Les trois remarques suivantes s’avèrent de bons exercices pour vérifier votre
compréhension de l’arithmétique des sommes en notation sigma.

Remarque 1 : Il n’est pas nécessaire de retenir l’équation 2.9, puisqu’il est possible
de l’obtenir aisément du théorème 2.4.6. En effet, si han in∈N est une suite arithmétique
de premier terme a et de différence d, on a :
Xn Xn

Sn = ai = (a + id) .h Théorème 2.4.2 (3) i
i=1 i=1


= (a + 1d) + (a + 2d) + (a + 3d) + . . . + (a + nd) . Écriture en extension
= (a + d + 0d) + (a + d + 1d) + (a + d + 2d) + . . . + (a + d + (n−1)d)
.h Arithmétique i
n−1
X

= (a + d + id) . Écriture en notation sigma
i=0
* Théorème 2.4.6, somme des n−1 premiers +
(a1 + an )( (n−1) + 1 )
= . termes d’une suite arithmétique de premier
2
terme a1 = a + d et de différence d.
(a1 + an ) · n
= .
2
162 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

Remarque 2 : De manière similaire à la remarque 1, l’équation 2.10 découle du


théorème 2.4.7. Considérons une suite géométrique han in∈N de premier terme a0 et de
raison r. Alors :
n
X n
X
Sn∗ = ai = a · ri .h Théorème 2.4.4 (3) i
i=1 i=1


= a · r1 + a · r2 + a · r3 + . . . + a · rn . Écriture en extension
= a r · r0 + a r · r1 + a r · r2 + . . . + a r · rn−1 .h Arithmétique i
n
X
a r · rn


= . Écriture en notation sigma
i=1
* Théorème 2.4.7, somme des n−1 premiers +
a1 · ( 1 − r(n−1)+1 )
= . termes d’une suite géométrique de premier
1−r
terme a1 = a r et de raison r.
a1 · ( 1 − r n )
= .
1−r

Remarque 3 : La somme (infinie) de tous les termes d’une suite géométrique de premier
terme a et de raison r s’écrit de manière équivalente des deux manières suivantes :

X ∞
X
i
a·r et a · ri−1 .
i=0 i=1

En effet, on voit facilement l’égalité des deux expressions en écrivant les sommes en
extension :

X
a · ri = a · r0 + a · r1 + a · r2 + a · r3 + . . .
i=0

X
a · ri−1 = a · r1−1 + a · r2−1 + a · r3−1 + a · r4−1 + . . .
i=i
2.4. CAS PARTICULIERS DE RÉCURRENCES 163

Exemple 1 : La somme des 100 premiers entiers positifs

Supposons que l’on désire la somme des nombres naturels de 1 à 100 inclusivement, c’est-
à-dire qu’on veut connaı̂tre le résultat de la somme suivante :

100
X
i = 1 + 2 + 3 + 4 + · · · + 100 .
i=1

Remarquons que 1 + 2 + 3 + 4 + · · · + 100 est la somme des 100 premiers termes de la suite
arithmétique de premier terme 1 et de différence 1. Notons cette suite arithmétique hsn in∈N .
Alors, par le théorème 2.4.2, on a :

sn = 1 + n · 1 ∀n ∈ N .

Ainsi,

100
X
i = 1 + 2 + 3 + 4 + · · · + 100
i=1
= s0 + s1 + s2 + s3 + · · · + s99 .h Car sn = 100 si n + 1 = 100, et donc si n = 99 i
(s0 + s99 )(99 + 1)
= .h Théorème 2.4.6 i
2
(1 + 100)(99 + 1)
=
2
= 5050 .

Exemple 2 : Une somme de puissances de 2

On désire calculer la valeur de la somme suivante :

8 + 16 + 32 + 64 + 128 + · · · + 1 048 576 .

Remarquons qu’il s’agit d’une somme de premiers termes de la suite géométrique de premier
terme 8 et de raison 2. Notons cette suite géométrique htn in∈N . Par le théorème 2.4.4, on a :

tn = 8 · 2n ∀n ∈ N .
164 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

Pour calculer le nombre de termes que l’on considère dans la sommation, on cherche d’abord
le i ∈ N tel que ti = 1 048 576. On le trouve par des calculs arithmétiques simples 8 :

ti = 8 · 2i = 1 048 576
⇔ 2i = 131 072
⇔ log2 (2i ) = log2 (131 072)
⇔ i = 17 .

Ainsi, le résultat désiré est obtenu en calculant la somme des 18 premiers termes de la suite
géométrique htn in∈N :

17
X 8 · (1 − 217+1 )
ti = .h Théorème 2.4.7 i
i=0
1−2
= 2 097 144 .

Exemple 3 : Terme général du problème des tours de Hanoı̈

À la section 2.2, nous avons présenté un algorithme qui permet de résoudre le problème
des tours de Hanoı̈ en un nombre minimal de déplacements de disques (voir la page 139).
Nous avons établi que ce nombre optimal de déplacements est donné par une suite hhn in∈N ,
dont la définition par récurrence est la suivante (voir l’équation (2.8), page 141) :

h = 0
0
hn = 2 · hn−1 + 1 ∀n ∈ N∗ .

En appliquant la méthode des substitutions à rebours, nous avons transformé la définition


par récurrence de la suite hhn in∈N en une sommation :

n−1
X
hn = 2j ∀n ∈ N . (2.11)
j=0

Les notions introduites jusqu’alors ne nous permettaient pas de transformer cette sommation
pour obtenir le terme général de la suite hhn in∈N . Désormais, le théorème 2.4.4 permet de
constater que l’équation (2.11) correspond à une somme des n−1 premiers termes de la suite
géométrique de premier terme 1 et de raison 2. Ainsi, par le théorème 2.4.7, on obtient que

log10 (x)
8. Rappelons que log2 (x) = log10 (2)
2.4. CAS PARTICULIERS DE RÉCURRENCES 165

le terme général de la suite hhn in∈N est :

1 · (1 − 2(n−1)+1 ) 1 − 2n
hn = = = 2n − 1 ∀n ∈ N . (2.12)
1−2 −1

Nous sommes donc parvenus à exprimer le nombre de déplacements minimaux nécessaire


pour résoudre le problème des tours de Hanoı̈ par un simple terme général.

2.4.4 Relations de récurrence linéaires et homogènes

Définition 2.4.8 Récurrence linéaire et homogène.


Une relation de récurrence est dite linéaire, homogène d’ordre k si la formule permettant de
calculer nème terme de la suite est une combinaison linéaire des k termes précédents.

Voici quelques exemples de telles relations de récurrences :


— La relation de récurrence de la suite de Fibonacci (équation (2.3), page 127) est une
relation linéaire, homogène d’ordre 2. En effet, la formule permettant de calculer le
nème terme de la suite est une combinaison linéaire des deux termes précédents :

fn = 1 · fn−1 + 1 · fn−2 ∀n ∈ N \ {0, 1} .

— La relation de récurrence suivante est une relation linéaire, homogène d’ordre 4 :




 a0 = 9




 a1 = π

a2 = 3


 a3 = 54

 an = 8 · an−2 + 7 · an−4 ∀n ∈ N \ {0, 1, 2, 3} .


Notons que la formule permettant de calculer an , le nème terme de la suite, est bien
une combinaison linéaire des 4 termes précédents puisque

an = 0 · an−1 + 8 · an−2 + 0 · an−3 + 7 · an−4 .

— La relation de récurrence d’une suite géométrique (définition 2.4.3, page 159) est une
relation linéaire, homogène d’ordre 1.

On peut conclure du dernier exemple qu’il existe une formule permettant de résoudre très
166 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

rapidement les relations de récurrence linéaire et homogènes d’ordre 1 (voir le théorème 2.4.4,
page 159). Le prochain résultat (théorème 2.4.9) nous donne une formule permettant de
résoudre très rapidement les relations de récurrences linéaires, homogènes d’ordre 2.

Théorème 2.4.9 Récurrences linéaires, homogènes d’ordre 2


Soit han in∈N une suite définie récursivement par :

 a0 = a

a1 = b

an = r · an−1 + s · an−2 ∀n ∈ N \ {0, 1} ,

où a, b, r et s sont des constantes réelles.


Soit p, le polynôme caractéristique de la suite han in∈N , (c.-à-d. : p(x) = x2 − rx − s).
Et soit ρ1 et ρ2 les zéros de ce polynôme.
Alors, le terme général de la suite est :
a : an = A · (ρ1 )n + B · (ρ2 )n ∀n ∈ N si ρ1 6= ρ2 ,
b : an = A · (ρ1 )n + B · n · (ρ1 )n ∀n ∈ N si ρ1 = ρ2 ,
où A et B sont deux constantes déterminées par les conditions initiales de la récurrence
(c.-à-d. : par a0 = a et a1 = b).

La démonstration de ce théorème fait appel à la méthode des séries génératrices, à


laquelle est consacrée la prochaine section. Nous présenterons donc la démonstration du
théorème 2.4.9 à la section 2.5.4 (page 182).

Exemple de la suite de Fibonacci

Utilisons le théorème 2.4.9 pour trouver le terme général de la suite de Fibonacci :



 f0 = 0

f1 = 1

fn = fn−1 + fn−2 ∀n ∈ N \ {0, 1} .

(1) Trouvons la “forme” du terme général de la suite.

Le polynôme caractéristique de la suite hfn in∈N est p(x) = x2 − (1) · x − (1).


2.4. CAS PARTICULIERS DE RÉCURRENCES 167

Et les deux zéros de ce polynôme sont


p √
(−1)2 − 4 · 1 · (−1)
−(−1) + 1+ 5
ρ1 = = ,
2·1 2
p √
−(−1) − (−1)2 − 4 · 1 · (−1) 1− 5
ρ2 = = .
2·1 2

Donc, par le théorème 2.4.9, la forme du terme général de la suite est


√ !n √ !n
1+ 5 1− 5
fn = A +B ∀n ∈ N ,
2 2

où A et B sont deux constantes.


(2) Trouvons les valeurs des constantes A et B.
  √ 0  √ 0
 A 1+2 5 + B 1−2 5
 = f0 = 0
On sait que  √ 1  √ 1
 A 1+ 5 + B 1− 5

= f1 = 1
2 2


 A+B = 0
Ce qui donne  √   √ 
 A 1+ 5 + B 1− 5 = 1
2 2

1 −1
En résolvant, on trouve facilement que A = √ et B = √ .
5 5
(3) Le terme général cherché est :
√ !n √ !n
1 1+ 5 −1 1− 5
fn = √ + √ ∀n ∈ N .
5 2 5 2
168 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

2.4.5 Exercices sur les cas particuliers de recurrences

Exercice 1 :
a) Est-ce que la suite hcn in∈N , définie par le terme général cn = 5n − 6 ∀n ∈ N, est une
suite arithmétique ?
b) Donnez c0 , c1 et c200 .
(
S0 = −6
c) Soit la suite hSn in∈N définie par récurrence par :
Sn = Sn−1 + 5n − 6 ∀n ∈ N∗ .
Montrez (sans utiliser l’induction) que le terme général de la suite hSn in∈N est

(n + 1)(5n − 12)
Sn = ∀n ∈ N .
2

Exercice 2 : Soit la suite hdn in∈N définie par récurrence par :


(
d0 = 5 · 23
dn = dn−1 + 5 · 2n+3 ∀n ∈ N∗ .

Montrez (sans utiliser l’induction) que le terme général de la suite hdn in∈N est

5 · 23 (1 − 2n+1 )
dn = ∀n ∈ N .
−1

Exercice 3 : Vous placez $1000.00 dans un compte à intérêt composé de 5% par année.
Ainsi, aprés un an il y aura dans votre compte, $1000.00 +(5% de $1000.00 ), c’est-
à-dire, en tout $1050.00 . Aprés deux ans, il y aura dans votre compte, $1050.00 +
(5% de $1050.00 ), etc...

Soit h$n in∈N , la suite qui donne le montant d’argent qu’il a dans votre compte aprés n années.

a) Définissez h$n in∈N par récurrence.


b) Trouvez le terme général de h$n in∈N .
c) Aprés 10 ans, combien d’argent y aura-t-il dans le compte ?
2.4. CAS PARTICULIERS DE RÉCURRENCES 169

Exercice 4 : Trouvez le terme général des suites suivantes :

a) an = 1 + 3 + 5 + 7 + 9 + · · · + (2n + 1) ∀n ∈ N .

(
b0 = −2
b)
bn = bn−1 + 5n − 2 ∀n ∈ N∗ .
(
b0 = 0
c)
bn = bn−1 + n ∀n ∈ N∗ .

 d0 = 1

d) d1 = 8

dn = 6 · dn−1 − 9 · dn−2 ∀n ∈ N \ {0, 1} .

Exercice 5 : Évaluez la somme suivante :


1 1
32 + 8 + 2 + + ... + .
2 524288

Exercice 6 : En utilisant le théorème sur les récurrences linéaires homogènes d’ordre 2,


exprimez les suites suivantes sous forme de fonctions rationnelles :
 
 f0 = 0
  b0 = 2

a) f1 = 1 b) b1 = 6
 
fn = fn−1 + fn−2 ∀n ∈ N \ {0, 1} bn = bn−1 + bn−2 ∀n ∈ N \ {0, 1}
 

 
 c0 = 1
  d0 = 1

c) c1 = 4 d) d1 = 1
 
cn = 4 · cn−1 − 4 · cn−2 ∀n ∈ N \ {0, 1} dn = 4 · dn−1 − 4 · dn−2 ∀n ∈ N \ {0, 1}
 
170 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

2.5 Méthode des séries génératrices

Dans cette section nous allons développer une méthode plus générale de résolution de
récurrences, la méthode des séries génératrices.

La série génératrice associée à la suite han in∈N est une fonction G : R −→ R qui est
exprimée comme un polynôme contenant un nombre infini de termes :

G(x) = a0 + a1 x + a2 x2 + a3 x3 + . . . + an xn + . . .

Par exemple, la série génératrice associée à la suite des carrés parfaits correspond à la fonction
C : R −→ R suivante :

C(x) = 0 + 1 x + 4 x2 + 9 x3 + . . . + (n2 ) xn + . . .

2.5.1 L’idée de la méthode

Examinons la suite hbn in∈N définie par récurrence par


(
b0 = 1
bn = bn−1 · 2 ∀n ∈ N∗ .

Notez que cette récurrence est très simple à résoudre. En effet, nous avons déjà déterminé
à la section 2.4.2 qu’il s’agit d’une suite géométrique de premier terme 1 et de raison 2. Le
théorème 2.4.4 nous a permis d’énoncer directement que le terme général de la suite est :

bn = 1 · 2n ∀n ∈ N .

Dans le texte qui suit, nous nous servons de la suite hbn in∈N comme premier exemple
pour illustrer le fonctionnement de la méthode des séries génératrices. Nous développerons
les outils nécessaires à l’utilisation de cette méthode par la suite.

Une première série de puissance


Considérons la somme suivante, où x est un élément quelconque de R \ { 21 } :

1 + 2 · x + 22 · x2 + 23 · x3 + . . . + 2n · xn .
2.5. MÉTHODE DES SÉRIES GÉNÉRATRICES 171

Il s’agit de la somme des n + 1 premiers termes de la suite géométrique h1 · (2x)n in∈N , dont
le premier terme est 1 et et la raison est 2x. Par le théorème 2.4.7, on a donc :

1 · (1 − (2x)n+1 )
1 + 2 · x + 22 · x2 + 23 · x3 + . . . + 2n · xn = .
1 − 2x

Supposons maintenant que 2x ∈ ]−1, 1[ , c’est-à-dire que x ∈ −1 , 21 . Alors on remarque


 
2
facilement que dans ce cas, plus n devient grand, plus (2x)n+1 se rapproche de 0. Donc, si on
fait tendre n vers l’infini, la partie droite de l’équation ci-dessus va tendre vers 1·(1−0)
1−2x
, c’est-
1
à-dire vers 1−2x . De plus, la partie de gauche de l’équation ci-dessus deviendra une somme
contenant un nombre de plus en plus grand de termes, à la limite une somme contenant une
infinité de termes.
Autrement dit, à la limite, lorsque n → ∞, et si x ∈ −1 , 12 , l’équation ci-dessus devient :
 
2

1
1 + 2 · x + 22 · x2 + 23 · x3 + . . . = . (2.13)
1 − 2x

On constate que la somme infinie “1 + 2·x + 22 ·x2 + 23 ·x3 + . . . ” est en fait une fonction
de x. En effet, pour tout x ∈ −1 1
 
2
, 2
, cette somme infinie coı̈ncide avec la fonction d’équation
1
f (x) = 1−2x .
1
Précisons que la fonction f (x) = 1−2x est une fonction rationnelle, c’est-à-dire une
fonction qui peut s’exprimer comme le quotient de deux polynômes, les constantes étant ici
vues comme des polynômes de degré 0. Nous disons que la somme infinie “1 + 2·x + 22·x2 +
23 ·x3 + . . . ” est la série de puissances associée à la fonction rationnelle f .

Nous utilisons ce résultat dans la démonstration qui suit afin de trouver le terme général
de la suite hbn in∈N .

Démonstration Terme général de la suite hbn in∈N par la méthode des séries génératrices
1. Fabriquons d’abord la fonction G, correspondant à la série génératrice associée à partir
de la suite hbn in∈N , de la manière suivante :

G(x) = b0 + b1 x + b2 x2 + b3 x3 + · · · + bn xn + · · ·

Remarquons que cette somme infinie est une fonction de x. Cette fonction encode en
quelque sorte la suite hbn in∈N puisque c’est la suite des coefficients de G.

Selon la définition de la suite hbn in∈N , bn = bn−1 · 2 ∀n ∈ N∗ ,


ce qui implique que bn − 2 · bn−1 = 0 ∀n ∈ N∗ ,
172 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

ce qui en extension donne : b 1 − 2 · b0 =0


b 2 − 2 · b1 =0
b3 − 2 · b2 =0
b4 − 2 · b3 =0
etc...

Maintenant, nous allons essayer d’utiliser cette relation de récurrence et nos connais-
sances en algèbre pour arriver à écrire la fonction G sous une forme plus simple.

G(x) = b0 + b1 x + b2 x 2 + b3 x3 + ··· + bn xn + ···


−2x · G(x) = + −2b0 x + −2b1 x2 + −2b2 x3 + ··· + −2bn−1 xn + ···

G(x) − 2xG(x) = b0 + 0x + 0 x2 + 0 x3 + ··· + 0 xn + ···

Ce qui donne G(x) − 2x · G(x) = 1 . h Car b0 = 1. i


Donc, on a G(x)(1 − 2x) = 1
1
Donc, on a G(x) = (1−2x) , ce qui est une forme beaucoup plus simple pour exprimer
la fonction G.
1
2. Remarquons que nous connaissons déjà la série de puissances associée à (1−2x) , c’est
2 2 3 3 n n
1 + 2 · x + 2 · x + 2 · x + ··· + 2 · x + ··· . . h Voir équation (2.13) i

3. Cette constatation nous permet de déduire le terme général de la suite hbn in∈N ,
puisque :
On a d’une part que
G(x) = b0 + b1 x + b2 x2 + b3 x3 + · · · + bn xn + · · ·
et d’autre part que l l l l l
G(x) = 1 + 2 x + 22 x2 + 23 x3 + · · · + 2 n xn + · · ·

Ce qui indirectement implique le résultat cherché :

. bn = 2 n ∀n ∈ N.
C.Q.F.D.

Pour trouver le terme général de la suite hbn in∈N , la solution par la méthode des séries
génératrices que nous venons de présenter est bien sûr nettement plus compliquée que la
solution présentée à la section 2.4.2 sur les suites géométriques. Notre nouvelle solution a
cependant l’avantage d’être généralisable à des récurrences que nous ne pouvions résoudre
jusqu’à maintenant.
2.5. MÉTHODE DES SÉRIES GÉNÉRATRICES 173

2.5.2 Méthode de résolution et modèles de séries de puissances

On peut résumer ainsi la méthode des séries génératrices pour la résolution de récurrences :

Étape 1 : À partir de la suite han in∈N , on construit 9 la série génératrice


X
G(x) = ai x i = a0 + a1 x + a2 x 2 + a3 x 3 + · · · + an x n + · · · (2.14)
i=0

Puis en se servant astucieusement de la relation de récurrence définissant han in∈N , on


exprime G sous la forme d’une fonction rationnelle.

Étape 2 : On décompose la fonction rationnelle trouvée à l’étape 1 en fractions par-


tielles, de façon à ce que pour chacune de ces fractions, on connaisse la série de puis-
sances qui lui est associée. Ensuite, on recompose les différentes séries de puissances
associées aux fractions partielles de façon à obtenir la série de puissances associée à
G.

Étape 3 : À partir de la série de puissance trouvée à l’étape 2, on déduit le terme


général de la suite han in∈N . À cette étape, on doit souvent trouver la valeur de
constantes inconnues. Pour ce faire, on substitue les valeurs des cas de base de la
définition par récurrence de han in∈N et en résolvant le système d’équations linéaire
ainsi obtenu.

Mais avant de pouvoir efficacement résoudre des récurrences par cette méthode, il nous
faut connaı̂tre plusieurs modèles de séries de puissances et savoir comment on décompose en
fractions partielles.

Théorème 2.5.1 Modèles de séries de puissances


Soit a, b ∈ R \ {0}, alors ∀x ∈ −1 1
 
,
|b| |b|
, on a que

9. Notez que dans l’équation (2.14), le théorème 2.5.1 et le corolaire 2.5.2, nous exprimons les sommations
à la fois en notation sigma et en extension. Les deux notations sont équivalentes et il appartient à vous
d’adopter celle que vous préférez lorsque vous appliquez la méthode des séries génératrices.
174 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE


a X
a: = a bi xi = a + a b x + a b2 x2 + a b3 x3 + · · · + a bn xn + · · ·
1 − bx i=0

a X
b: = (i+1)a bi xi = a + 2a b x + 3a b2 · x2 + · · · + (n+1)a bn xn + · · ·
(1 − bx)2 i=0

ax X
c: = i a bi−1 xi = 0 + a x + 2a b x2 + 3a b2 x3 + · · · + n a bn−1 xn + · · ·
(1 − bx)2 i=0

a X (i+2)(i+1) a bi 2 · 1a 3 · 2ab 4 · 3 a b2 2 5 · 4 a b3 3
d: = xi = + x+ x + x
(1 − bx)3 i=0
2 2 2 2 2
(n + 2)(n + 1) a bn n
+ ··· + x + ···
2

En particulier, nous avons donc les séries de puissances suivantes.

Corollaire 2.5.2 Cas particuliers des modèles de séries de puissances



1 X
a: = xi = 1 + x + x2 + x3 + x4 + · · · + xn + · · ·
1−x i=0

1 X
b: = (−1)i xi = 1 + (−1)x + (−1)2 x2 + (−1)3 x3 + · · ·
1+x i=0

1 X
c: = (i + 1) xi = 1 + 2x + 3x2 + 4x3 + · · · + (n + 1) xn + · · ·
(1 − x)2 i=0

x X
d: = i xi = 0 + x + 2x2 + 3x3 + 4x4 + · · · + n xn + · · ·
(1 − x)2 i=0

1 X (i+2)(i+1) 2·1 3·2 4·3 2 (n+2)(n+1) n
e: = xi = + x+ x + ··· + x + ···
(1 − x)3 i=0
2 2 2 2 2

Voici enfin la forme de décomposition en fractions partielles de certaines des familles de


fonctions rationnelles. Remarquons que le numérateur de chacune des fractions partielles est
toujours une constante.

Théorème 2.5.3 Décomposition en fractions partielles


2.5. MÉTHODE DES SÉRIES GÉNÉRATRICES 175

ax + b A B
a: = +
(cx + d)(ex + f ) cx + d ex + f
.h Pourvu que y = cx + d et y = ex + f aient des zéros différents. i

ax + b A B
b: = +
(cx + d)2 cx + d (cx + d)2
ax2 + bx + c A B C
c: = + +
(dx + e)(f x + g)(hx + i) dx + e f x + g hx + i
.h Pourvu que y = dx + e, y = f x + g et y = hx + i aient des zéros tous différents. i

ax2 + bx + c A B C
d: 2
= + 2
+
(dx + e) (f x + g) dx + e (dx + e) fx + g
.h Pourvu que y = dx + e et y = f x + g aient des zéros différents. i

ax2 + bx + c A B C
e: = + +
(dx + e)3 dx + e (dx + e)2 (dx + e)3

Le résultat énoncé au théorème 2.5.3 se généralise à toutes les fonctions rationnelles ;


cependant, dans le cas où il y a au dénominateur des zéros qui soient des nombres complexes,
le problème devient plus difficile. Notez que nous ne démontrons pas ici pourquoi chacune des
fonctions rationnelles appartenant à une de ces familles se décompose effectivement comme
le dit le théorème 2.5.3.

2.5.3 Quelques exemples de résolution de récurrences

Exemple 1-a (en représentant les sommes en extension)

Trouvons le terme général d’une suite han in∈N dont la définition par récurrence est la suivante :
(
a0 = 1
an = 3 · an−1 + 4n ∀n ∈ N∗ .

Prenez note que, au cours de la démarche suivante, nous représentons toutes les sommations
par la notation en extension.

Étape 1 : (on exprime la série génératrice sous la forme d’une fonction rationnelle)

• On remarque que : an − 3 · an−1 − (4n ) = 0 ∀n ∈ N∗ ;


176 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

• ce qui en extension donne : a1 − 3 · a0 − 4 = 0


a2 − 3 · a1 − 42 = 0
a3 − 3 · a2 − 43 = 0
a4 − 3 · a3 − 44 = 0
etc...
• Posons G(x) = a0 + a1 x + a2 x + a3 x3 + · · · + an xn + · · · .
2

Alors,
G(x) = a0 + a1 x + a2 x2 + a3 x3 + · · · + an xn + · · ·
−3x · G(x) = + −3 · a0 x + −3 · a1 x2 + −3 · a2 x3 + · · · + −3 · an−1 xn + · · ·
1
− 1−4x = −1 + −4x + −(42 )x2 + −(43 )x3 + · · · + −(4n )xn + · · ·
1
G(x) − 3xG(x) − 1−4x = a0 − 1 + 0x + 0x2 + 0x3 + · · · + 0xn + · · ·

1
Ce qui donne G(x) − 3x G(x) − 1−4x = 0 h Car a0 − 1 = 1 − 1 = 0.i
1
Donc, on a G(x)(1 − 3x) = 1−4x
1
Donc, on a G(x) = (1−3x)(1−4x) , ce qui est une forme beaucoup plus simple pour exprimer
la fonction G.
2.5. MÉTHODE DES SÉRIES GÉNÉRATRICES 177

Étape 2 : (on trouve la série de puissances associée à G)


Par le théorème 2.5.3-a, on obtient :

1 A B
G(x) = = + .
(1 − 3x)(1 − 4x) 1 − 3x 1 − 4x

On applique ensuite le théorème 2.5.1-a sur chacune des deux fractions partielles :

G(x) = A + A · 3 x + A · 32 x2 + A · 33 x3 + · · · + A · 3n xn + · · ·
+ B + B · 4 x + B · 42 x2 + B · 43 x3 + · · · + B · 4n xn + · · ·

= (A + B) + (3 A + 4 B) · x + (32 A + 42 B) · x2 + (33 A + 43 B) · x3
+ · · · + (3n A + 4n B) · xn + · · ·

Étape 3 : (on trouve le terme général de la suite)


Le terme général de la suite han in∈N est donné par :

an = 3n A + 4n B .

Il ne nous reste plus qu’à calculer les valeurs des constantes A et B. Par la définition
de la récurrence, nous savons que a0 = 1 et a1 = 3 · a0 + 41 = 7. Donc :

a0 = 3 0 A + 40 B = A + B = 1
⇔ B = 1 − A, (∗)

a1 = 3 1 A + 4 1 B = 3 A + 4 B = 7
⇔ 3A = 7 − 4B , (∗∗)

3 A = 7 − 4 (1 − A) = 3 + 4 A .h Substitutions de (*) dans (**) i


⇔ A = −3 , (∗ ∗ ∗)

B = 1 − (−3) = 4 . .h Substitutions de (***) dans (*) i

Avec ces valeurs de A et B, on obtient le terme général suivant :

an = 3n · (−3) + 4n · 4
= −(3n+1 ) + 4n+1 .

Conclusion : La définition par terme général est an = −(3n+1 ) + 4n+1 ∀n ∈ N.


178 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

Exemple 1-b (en représentant les sommes par la notation sigma)

Dans l’exemple précédent, nous avons fait le choix d’écrire toutes les sommations en exten-
sion. Nous reprenons maintenant le même exemple en utilisant cette fois-ci la notation sigma
pour représenter les sommations. Notons immédiatement que, bien que les deux méthodes
sont équivalentes, nous jugeons qu’il est plus naturel d’utiliser la notation en extension pour
l’étape 1 (la démarche qui suit est d’ailleurs la seule du document qui utilise la notation sigma
pour cette étape). Par contre, la notation sigma se prête habituellement bien à l’étape 2.

Rappelons que notre objectif est de trouver le terme général de la suite han in∈N dont la
définition par récurrence est :
(
a0 = 1
an = 3 · an−1 + 4n ∀n ∈ N∗ .

Étape 1 : (on exprime la série génératrice sous la forme d’une fonction rationnelle)

• On remarque que : an − 3 · an−1 − (4n ) = 0 ∀n ∈ N∗ ;


X∞
• Posons G(x) = ai x i .
i=0

Alors,
1
G(x) − 3x · G(x) −
1 − 4x

X ∞
X ∞
X
i i
= ai x − 3x ai x − 4i xi .h Définition de G et théorème 2.5.1-a i
i=0 i=0 i=0
" ∞
# " ∞
# " ∞
#
X X X
i i+1 i i
= a0 + ai x − 3ai x − 1+ 4 x .h Arithmétique i
i=1 i=0 i=1
" ∞
# " ∞
# " ∞
#
∞ ∞
X X X  
i i i i
X X
= a0 + ai x − 3ai−1 x − 1+ 4 x . Car f (x) = f (x−1) ∀f : N → R
i=1 i=1 i=1 i=0 i=1
∞ h
X i
= a0 − 1 + ai − 3ai−1 − 4i · xi .h Arithmétique i
i=1

= a0 − 1 + 0 .h Car an − 3 · an−1 − (4n ) = 0 ∀n ∈ N∗ i


= 1−1+0 .h Car a0 = 1 i
= 0
1
Ce qui donne G(x) − 3x G(x) − 1−4x = 0
1 1
Donc, on a G(x)(1 − 3x) = 1−4x et G(x) = (1−3x)(1−4x)
.
2.5. MÉTHODE DES SÉRIES GÉNÉRATRICES 179

Étape 2 : (on trouve la série de puissances associée à G)

1
G(x) =
(1 − 3x)(1 − 4x)
A B
= + .h Théorème 2.5.3-a i
1 − 3x 1 − 4x

X ∞
X
i i
= A·3 x + B · 4i xi .h Théorème 2.5.1-a (2 fois) i
i=0 i=0
X∞ h i
= A · 3i + B · 4i xi . .h Arithmétique i
i=0

Étape 3 : (on trouve le terme général de la suite)

L’étape 3 est identique à celle présentée par l’exemple 1-a.

Conclusion : La définition par terme général est an = −(3n+1 ) + 4n+1 ∀n ∈ N .

On constate que la démarche demeure essentiellement la même en utilisant la notation


en extension (exemple 1-a) ou la notation sigma (exemple 1-b). Il appartient donc à vous
d’adopter l’une ou l’autre de ces notations.

Pour les exemples présentés dans le reste de ce document, nous allons préférer la notation
en extension pour effectuer l’étape 1 de la méthode des séries génératrices, car elle permet
d’illustrer clairement l’astuce qui permet aux termes de s’annuler entre eux. Cependant, nous
allons adopter l’écriture en notation sigma pour effectuer la deuxième étape de la méthode
des séries génératrices, car elle est plus concise et tout aussi compréhensible que la notation
en extension.

Propriétés des polynômes de degré 2

Avant de faire l’exemple qui suit, nous avons besoin de faire un rappel de certaines
propriétés des polynômes de degré 2. Les propriétés qui suivent sont valides même si les zéros
du polynôme ne sont pas des nombres réels, c’est-à-dire même si b2 − 4ac < 0. Dans ce cas
cependant, les calculs se font dans les nombres complexes.
180 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

Proposition 2.5.4 Propriétés des zéros d’un polynôme de degré 2


Soit p(x) = ax2 + bx + c, un polynôme de degré deux.
√ √
def −b + b2 − 4ac def −b − b2 − 4ac
Soit ρ1 = et ρ2 = .
2a 2a
Alors,
• ρ1 et ρ2 sont appelés les zéros du polynôme p parce que

p(ρ1 ) = 0, p(ρ2 ) = 0 et p(x) 6= 0 ∀x 6= ρ1 , ρ2 .

• Le polynôme p se factorise toujours ainsi :

p(x) = a(x − ρ1 )(x − ρ2 )

• De plus, si le polynôme est unitaire (c’est-à-dire si a = 1), on a toujours que


(
(∗) ρ1 + ρ2 = −b
(∗∗) ρ1 · ρ2 = c.

Pour les calculs que nous aurons à faire dans ce chapitre, la proposition suivante, qui
découle presque directement de la précédente, nous sera très utile.

Proposition 2.5.5 Factorisation d’un polynôme de degré 2


Soit p(x) = x2 − rx − s, un polynôme de degré deux.
Et soit ρ1 et ρ2 les deux zéros (non nécessairement distincts) du polynôme p.
Alors le polynôme q(x) = 1 − rx − sx2 se factorise ainsi :

1 − rx − sx2 = (1 − ρ1 x) (1 − ρ2 x) .

Exemple 2 : La suite de Fibonacci

À l’aide de la méthode des séries génératrices, résolvons la récurrence de Fibonacci :



 f0 = 0

f1 = 1

fn = fn−1 + fn−2 ∀n ∈ N \ {0, 1} .

2.5. MÉTHODE DES SÉRIES GÉNÉRATRICES 181

Étape 1 : (on exprime la série génératrice sous la forme d’une fonction rationnelle)

• On remarque que : fn − fn−1 − fn−2 = 0 ∀n ∈ N \ {0, 1} ;


• ce qui en extension donne : f2 − f1 − f0 = 0
f3 − f2 − f1 = 0
f4 − f3 − f2 = 0
etc...
X∞
• Posons G(x) = f i xi = f 0 + f 1 x + f 2 x2 + f 3 x3 + · · · + f n xn + · · · .
i=0

Alors,
G(x) = f0 + f1 x + f2 x2 + f3 x3 + · · · + fn xn + · · ·
−x · G(x) = + −f0 x + −f1 x2 + −f2 x3 + · · · + −fn−1 xn + · · ·
2
−x · G(x) = + −f0 x2 + −f1 x3 + · · · + −fn−2 xn + · · ·

G(x) − xG(x) − x2 G(x) = f0 + (f1 − f0 )x + 0x2 + 0x3 + · · · + 0xn + · · ·

Ce qui donne G(x) − x G(x) − x2 G(x) = x . h Car f0 = 0 et f1 − f0 = 1 − 0 = 1. i


Donc, on a G(x)(1 − x − x2 ) = x
x
Donc, on a G(x) = .
1 − x − x2
* Voir Proposition 2.5.5, avec q(x) := 1 − x − x2 . +
x
Donc on a G(x) =  √  √ . . Les deux
 zéros dep(x) = x2 + −1 · x − 1
√  √ 
1− ( 1+2 5 )x 1− ( 1−2 5 )x étant 1+2 5 et 1−2 5 .
 √   √ 
1+ 5 1− 5
Pour simplifier l’écriture, posons ρ1 := 2
et ρ2 := 2
.

x
Donc on a G(x) = .
(1 − ρ1 x) (1 − ρ2 x)

Étape 2 : (on trouve la série de puissances associée à G)


x
G(x) =
(1 − ρ1 x)(1 − ρ2 x)
A B
= + .h Théorème 2.5.3-a i
1 − ρ1 x 1 − ρ2 x

X ∞
X
= A· ρi1 i
x + B · ρi2 xi .h Théorème 2.5.1-a (2 fois) i
i=0 i=0
X∞ h i
= A· ρi1 +B· ρi2 xi . .h Arithmétique i
i=0
182 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

Étape 3 : (on trouve le terme général de la suite)

Le terme général de la suite est donné par : fn = A · ρn1 + B · ρn2 .


Calculons les valeurs des constantes A et B. Par la définition de la récurrence de la
suite de Fibonacci, nous savons que f0 = 0 et f1 = 1. Donc :

f0 = 0 = A · ρ01 + B · ρ02 = A + B
⇔ B = −A , (♣)

f1 = 1 = A · ρ11 + B · ρ12
= A · ρ1 + (−A) · ρ2 .h Par l’équation ( ♣ ) i
= A · (ρ1 − ρ2 )
1
⇔ A =
ρ1 − ρ2
1
= √ √ .h Définitions de ρ1 et ρ2 i
1+ 5 1− 5
2
− 2
1
= √ , .h Simplifications arithmétiques i
5
1
B = −√ . .h Substitution de la valeur de A dans ( ♣ ) i
5

Conclusion :

1 −1
Le terme général est fn = √ ρn1 + √ ρn2 ∀n ∈ N .
5 5
√ !n √ !n
1 1+ 5 −1 1 − 5
Autrement dit : fn = √ + √ ∀n ∈ N .
5 2 5 2

2.5.4 Récurrences linéaires homogènes d’ordre 2 (démonstration)

À la section 2.4.4, nous avons discuté du cas particulier de la famille des récurrences
linéaires et homogènes. Nous avons alors énoncé le théorème 2.4.9 (page 166), qui permet de
calculer facilement le terme général des récurrences linéaires et homogènes d’ordre 2. Nous
présentons maintenant une démonstration de ce théorème utilisant la méthode des séries
génératrices.
2.5. MÉTHODE DES SÉRIES GÉNÉRATRICES 183

Démonstration du théorème 2.4.9 (Récurrences linéaires, homogènes d’ordre 2)


Soit han in∈N une suite définie récursivement par :

 a0 = a

a1 = b

an = r · an−1 + s · an−2 ∀n ∈ N \ {0, 1} ,

où a, b, r et s sont des constantes réelles.


Soit p, le polynôme caractéristique de la suite han in∈N , (c.-à-d. : p(x) = x2 − rx − s).
Et soit ρ1 et ρ2 les zéros de ce polynôme.
On désire démontrer que le terme général de la suite est :
a : an = A · (ρ1 )n + B · (ρ2 )n ∀n ∈ N si ρ1 6= ρ2 ,
b : an = A · (ρ1 )n + B · n · (ρ1 )n ∀n ∈ N si ρ1 = ρ2 ,
où A et B sont deux constantes déterminées par les conditions initiales de la récurrence
(c.-à-d. : par a0 = a et a1 = b).

On démontre séparément le cas où ρ1 6= ρ2 et le cas où ρ1 = ρ2 . Précisons que les deux cas
sont des applications de la méthode des séries génératrices.
Cas 1 : ρ1 6= ρ2 .
La démonstration pour ce cas est très semblable à la solution de l’exemple de la suite
de Fibonacci (voir page 180).
Étape 1 :
(on exprime la série génératrice sous la forme d’une fonction rationnelle)
• On remarque que : an − r · an−1 − s · an−2 = 0 ∀n ∈ N \ {0, 1} ;
• ce qui en extension donne : a2 − ra1 − sa0 = 0
a3 − ra2 − sa1 = 0
a4 − ra3 − sa2 = 0
etc...
X∞
• Posons G(x) = ai x i = a0 + a1 x + a2 x 2 + a3 x 3 + · · · + an x n + · · · .
i=0
Alors,
G(x) = a0 + a1 x + a2 x2 + a3 x3 + · · · + an xn + · · ·
−rx · G(x) = + −ra0 x + −ra1 x + −ra2 x + · · · + −ran−1 xn + · · ·
2 3

2
−sx · G(x) = + −sa0 x2 + −sa1 x3 + · · · + −san−2 xn + · · ·

G(x) − rxG(x) − sx2 G(x) = a0 + (a1 − ra0 )x + 0x2 + 0x3 + · · · + 0xn + · · ·

Ce qui donne G(x) − rx G(x) − sx2 G(x) = a0 + (a1 − ra0 )x


184 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

Donc, on a :
G(x)(1 − rx − sx2 ) = a0 + (a1 − ra0 )x
a0 + (a1 − ra0 )x
⇔ G(x) =
1 − rx − sx2
* Proposition 2.5.5, avec q(x) := 1 − rx − sx2 . +
a0 + (a1 − ra0 )x
= . . Les deux zéros de p(x) = x2 − rx − s étant
(1 − ρ1 x) (1 − ρ2 x)
par hypothèse ρ1 et ρ2 .
Étape 2 : (on trouve la série de puissances associée à G)

a0 + (a1 − ra0 )x
G(x) =
(1 − ρ1 x)(1 − ρ2 x)
A B
= + .h Théorème 2.5.3-a i
1 − ρ1 x 1 − ρ2 x

X ∞
X
i i
= A · (ρ1 ) x + B · (ρ2 )i xi .h Théorème 2.5.1-a (2 fois) i
i=0 i=0
X∞ h i
= A · (ρ1 )i + B · (ρ2 )i xi . .h Arithmétique i
i=0

Étape 3 : (on trouve le terme général de la suite)


La définition par terme général est bien : an = A (ρ1 )n + B (ρ2 )n ∀n ∈ N .
. h Cas 1 démontré i
Cas 2 : ρ1 = ρ2 .
Étape 1 :
(on exprime la série génératrice sous la forme d’une fonction rationnelle)

L’étape 1 est presque identique à celle que nous avons faite pour le cas 1.
On pose d’abord

X
G(x) = ai x i = a0 + a1 x + a2 x 2 + a3 x 3 + · · · + an x n + · · · .
i=0

En reproduisant la démarche de l’étape 1 du cas 1, on obtient :


a0 + (a1 − ra0 )x
G(x) = ,
(1 − ρ1 x) (1 − ρ2 x)
où ρ1 et ρ2 sont les zéros du polynôme p(x) = x2 − rx − s.
Comme nous sommes dans le cas où ρ1 = ρ2 , on a :
a0 + (a1 − ra0 )x
G(x) = .
(1 − ρ1 x)2
2.5. MÉTHODE DES SÉRIES GÉNÉRATRICES 185

Étape 2 : (on trouve la série de puissances associée à G)

a0 + (a1 − ra0 )x
G(x) =
(1 − ρ1 x)2
C D
= + .h Théorème 2.5.3-b i
(1 − ρ1 x) (1 − ρ1 x)2
∞ ∞
* +
X X Théorème 2.5.1-a et
= C · (ρ1 )i xi + (i + 1) D · (ρ1 )i xi .
i=0 i=0
théorème 2.5.1-b
X∞ h i
i i
= C · (ρ1 ) + (i + 1) D · (ρ1 ) xi . .h Arithmétique i
i=0

Étape 3 : (on trouve le terme général de la suite)

Le terme général est an = C (ρ1 )n + (n + 1) · D (ρ1 )n ∀n ∈ N.

Ce qui est équivalent à an = C (ρ1 )n + n · D (ρ1 )n + D (ρ1 )n ∀n ∈ N.

Ce qui est équivalent à an = (C + D) (ρ1 )n + n · D (ρ1 )n ∀n ∈ N.

Ce qui, si on pose [A := C + D] et [B := D], est équivalent à :

an = A (ρ1 )n + n · B (ρ1 )n ∀n ∈ N .
. h Cas 2 démontré i
.
C.Q.F.D.
186 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

2.5.5 Exercices sur la méthode des séries génératrices

Exercice 1 : Exprimez les séries génératrices des suites suivantes sous forme de fonctions
rationnelles :
( (
a0 = 1 b0 = 1
a) b)
an = 2 · an−1 + 3n ∀n ∈ N∗ bn = bn−1 + n ∀n ∈ N∗
 
 c0 = 1
  d0 = 1

c) c1 = 1 d) d1 = 1
 
cn = cn−1 + cn−2 ∀n ∈ N \ {0, 1} dn = 4 · dn−1 − 4 · dn−2 ∀n ∈ N \ {0, 1}
 

Exercice 2 : Décomposez en fractions partielles les fonctions rationnelles suivantes :

1 x x
a) a(x) = b) b(x) = c) c(x) =
(x + 4)(x + 3) (1 − x)2 (1 + x) (x − 1)(x − 2)(x − 3)
1 − 3x 1 − 3x x2 + 2x + 3
d) d(x) = e) e(x) = f ) f (x) =
1 − 4x + 4x2 (1 − 2x)2 (x − 1)2 (x − 2)

Exercice 3 : Trouvez la série de puissances associée à chacune des fonctions suivantes.


3 −1
1 3 2 2
a) a(x) = b) b(x) = c) c(x) = +
(1 − 5x) x−5 1 − 2x (1 − 2x)2

Exercice 4 : Pour chacune des suites définies par récurrence suivantes, résolvez la récurrence
par la méthode des séries génératrices.

(
a0 = 2
a)
an = 3an−1 + 2n ∀n ∈ N∗

(
b0 = 0
b)
bn = bn−1 + n ∀n ∈ N∗


 c0 = 1

c) c1 = 8

cn = 6 · cn−1 − 9 · cn−2 + 2n ∀n ∈ N \ {0, 1}

2.6. APPROXIMATION PAR UNE INTÉGRALE 187

2.6 Approximation par une intégrale

Jusqu’à maintenant, ce chapitre a présenté des méthodes permettant de calculer le terme


général exact d’une suite. Ces méthodes ne s’appliquent malheureusement pas dans tous les
cas, et on se contente parfois d’approximer le terme général d’une suite.

La méthode d’approximation par une intégrale présentée dans cette section permet
dans certains cas de calculer une borne inférieure et une borne supérieure d’une suite que ex-
primée sous la forme d’une sommation. Typiquement, on a recours à cette méthode lorsque la
méthode des substitutions à rebours (section 2.2) nous a permis de transformer une définition
par récurrence d’une suite en une somme en notation sigma, mais que nous ne connaissons
aucune propriété qui permet de transformer cette somme en un terme général.

2.6.1 Description de la méthode

Supposons que le terme général d’une suite han in∈N est exprimé par une somme des valeurs
d’une fonction f évaluée de 0 à n. Autrement dit, an = f (0) + f (1) + f (2) + . . . + f (n) ou,
de manière équivalente :
X n
an = f (i) .
i=0

Nous pouvons représenter géométriquement le terme an comme l’aire cumulative de n + 1


rectangles largeur 1 et de hauteurs f (0), f (1), f (2), . . . , f (n). Il parait donc naturel d’approxi-
mer le terme général de la suite han in∈N en calculant l’aire sous la courbe de la fonction f
pour un intervalle de valeurs judicieusement choisies. Il s’agit de l’idée sur laquelle est basée
la méthode d’approximation par une intégrale.

Afin d’appliquer cette méthode, on doit d’abord s’assurer que f est une fonction non
décroissante ou encore une fonction non croissante sur l’intervalle de valeurs qui nous intéresse.
Une fonction non décroissante sur l’intervalle [a, b] est une fonction qui est croissante ou
constante pour tout x ∈ [a, b]. De même, une fonction non croissante sur l’intervalle [a, b]
est une fonction qui est décroissante ou constante pour tout x ∈ [a, b].
188 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

Définition 2.6.1 Fonctions non décroissantes et fonctions non croissantes.


Soit une fonction f ⊂ R2 et un intervalle [a, b] ⊆ Dom(f ). On dit que :

a: f est non décroissant sur [a, b] ⇔ (∀x, y ∈ [a, b] | x < y ⇒ f (x) ≤ f (y) )

b: f est non croissant sur [a, b] ⇔ (∀x, y ∈ [a, b] | x < y ⇒ f (x) ≥ f (y) )

Le théorème 2.6.2 suivant permet de calculer une borne inférieure et une borne supérieure
d’une sommation. Bien que nous ne démontrons pas ce théorème, la figure 2.3 en donne une
interprétation géométrique qui permet de bien comprendre l’astuce derrière cette méthode.

Théorème 2.6.2 Bornes d’une sommation.


Soit une fonction f ⊂ R2 . Alors :
Z b b
X Z b+1
a: f (x)dx ≤ f (i) ≤ f (x)dx si f est non décroissant sur [a−1, b+1]
a−1 i=a a
Z b+1 b
X Z b
b: f (x)dx ≤ f (i) ≤ f (x)dx si f est non croissant sur [a−1, b+1]
a i=a a−1

(a) Borne inférieure d’une sommation. (b) Borne supérieure d’une sommation.

Figure 2.3 – Illustration du théorème 2.6.2-a : Bornes de la sommation des


valeurs d’une fonction f non décroissante évaluée entre a et b.
2.6. APPROXIMATION PAR UNE INTÉGRALE 189

2.6.2 Bref rappel sur le calcul intégral

Voici quelques formules d’intégration couramment utilisées :

xa+1
Z Z
a
a: k · dx = k·x+C b: x · dx = + C pour a 6= −1
a+1
Z Z
1 c c
c: · dx = ln |x| + C d: · dx = ln |a x + b| + C
x ax + b a
ax
Z Z
x
e: e · dx = e +Cx
f: ax · dx = +C
ln a
Z Z
x
g: ln x · dx = x ln x − x + C h: loga x · dx = x loga x − +C
ln a
Z   Z Z
i: f (x) + g(x) · dx = f (x) · dx + g(x) · dx

Z
En notant F = f (x) · dx, l’intégrale selon x de la fonction f (x) sur l’intervalle [a, b] est
donnée par : Z b h ib
f (x) · dx = F (x) = F (b) − F (a) .
a a

4 4
x3 43 (−2)3

64 − (−8)
Z
2 72
Par exemple : x · dx = = − = = = 24 .
−2 3 −2 3 3 3 3

2.6.3 Quelques exemples

Exemple 1 : Somme des nombres cubiques

On s’intéresse à la suite hCn in∈N∗ correspondant à la somme nombres cubiques que l’on
définit ainsi : n
X
Cn = i3 = 13 + 23 + 33 + . . . + n3 ∀n ∈ N∗ .
i=1

En supposant que nous ne connaissons pas la règle qui permet de calculer directement le terme
général de cette suite, nous allons utiliser l’approximation par une intégrale pour obtenir une
borne inférieure et une borne supérieure de Cn .

Remarquons d’abord que f (x) = x3 est une fonction non décroissante sur l’intervalle
190 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

[0, n + 1] pour tout n ≥ 1. Calculons l’intégrale selon la variable x de la fonction f (x) :

x4
Z
x3 · dx = +C.
4

En appliquant le théorème 2.6.2-a, nous obtenons :


n n n+1
x4 x4
 X 
3
≤ i ≤
4 0 i=1
4 1
4 4 n
n 0 X (n + 1)4 14
⇔ − ≤ i3 ≤ −
4 4 i=1
4 4
n
n4 X (n + 1)4 − 1
⇔ ≤ i3 ≤ .
4 i=1
4

n4 (n + 1)4 − 1
Ainsi, ≤ Cn ≤ ∀n ∈ N∗ .
4 4

Exemple 2 : La récurrence des tours de Hanoı̈

À la section 2.2-a, nous avons formulé la définition par récurrence de la suite hhn in∈N , qui
donne le nombre optimal de déplacements nécessaires pour résoudre le problème des tours de
Hanoı̈ (équation (2.8), page 141). Lorsque nous avons appliqué la méthode des substitutions à
rebours à la définition par récurrence de la suite donnant le nombre optimal de déplacements
nécessaires pour résoudre le problème des tours de Hanoı̈ (page 142), nous avons exprimé le
terme hn par une somme :
n−1
X
hn = 2j ∀n ∈ N .
j=0

À la section 2.4.3, nous avons constaté que cette somme correspond à un cas particulier de
récurrence, c’est-à-dire que la suite hhn in∈N est la somme des premiers termes d’une suite
géométrique (équation (2.12), page 165).

Pour les besoins de cet exemple, nous supposons ici que nous n’avons pas connaissance
du cas particulier des sommes de premiers termes de suite géométrique. Dans cette situation,
nous pouvons utiliser la méthode d’approximation par une intégrale pour borner la valeur
des termes de la suite hhn in∈N .

Remarquons d’abord que f (x) = 2x est une fonction non décroissante sur l’intervalle
2.6. APPROXIMATION PAR UNE INTÉGRALE 191

[−1, n] pour tout n ≥ 0. Calculons l’intégrale selon la variable x de la fonction f (x) :

2x
Z
2x · dx = +C.
ln 2

En appliquant le théorème 2.6.2, nous obtenons :


n−1 n−1 n
2x 2x
 X 
j
≤ 2 ≤
ln 2 −1 j=0
ln 2 0
n−1 −1 n−1 n
2 2 X
j 2 20
⇔ − ≤ 2 ≤ −
ln 2 ln 2 j=0
ln 2 ln 2
1 n−1
2n−1 − X 2n − 1
⇔ 2
≤ 2j ≤ .
ln 2 j=0
ln 2

1
2n−1 − 2 2n − 1
Ainsi, ≤ hn ≤ .
ln 2 ln 2

Exemple 3 : Somme des inverses des premiers nombres naturels

Approximons par une intégrale la suite hIn in∈N∗ suivante :

n
X 1 1 1 1 1 1
In = = + + + + ··· + .
i=1
i 1 2 3 4 n

Nous considérons la fonction f (x) = x1 . Calculons l’intégrale de f (x) selon x :


Z
1
· dx = ln x + C .
x

Remarquons que f (0) n’est pas défini (car 01 est indéfini). Pour pouvoir appliquer le
théorème 2.2, réécrivons la définition de hIn in∈N :

n n
X 1 X 1
In = = 1+ .
i=1
i i=2
i

1
Nous appliquons maintenant le 2.2-b. Comme la fonction f (x) = x
est non croissante sur
192 CHAPITRE 2. RELATIONS DÉFINIES PAR RÉCURRENCE

l’intervalle [1, n + 1] pour tout n ≥ 1, nous avons :


n
h in+1 X 1 h in
ln x ≤ ≤ ln x
2
i=2
i 1
n
1 X
⇔ ln(n + 1) − ln(2) ≤ ≤ ln(n) − ln(1)
i=2
i
  n
n+1 X 1
⇔ ln ≤ ≤ ln(n)
2 i=2
i
  n
n+1 X 1
⇔ 1 + ln ≤ 1+ ≤ 1 + ln(n) .
2 i=2
i
 
n+1
Ainsi, 1 + ln ≤ In ≤ 1 + ln(n) .
2
2.6. APPROXIMATION PAR UNE INTÉGRALE 193

2.6.4 Exercices sur l’approximation par une intégrale

Exercice 1 : En vous inspirant de la figure 2.3 (page 188), illustrez le théorème 2.6.2-b qui
permet de borner une sommation possédant la forme suivante :

b
X
f (i), où f est une fonction non croissante sur l’intervalle [a − 1, b + 1] .
i=a

Exercice 2 : En appliquant la méthode d’approximation par une intégrale, trouvez une


borne inférieure et une borne supérieure des suites suivantes.
n
X
a) an = 5 · i4
i=1

n
X
b) bn = 5 · i4
i=−2

n
X
c) cn = ik , pour une constante k ∈ N∗ .
i=1

n
X 1
d) dn = .
i=1
i2
n
X
e) en = (i + ln i − 1).
i=1

f) fn = log(n!).
def
Rappels : n! = 1 · 2 · 3 · . . . · n et log(a · b) = log a + log b ∀a, b > 0 Donc,
n−1 n−1
n log(n) − ≤ fn ≤ (n+1) log(n+1) − log(4) − ∀n ∈ N∗ .
ln(10) ln(10)

Exercice 3 : Décrivez une circonstance où la méthode d’approximation par une intégrale
donne la valeur exacte de la sommation. Autrement dit, exprimez une fonction f pour laquelle
les bornes inférieure et supérieure obtenues par le théorème 2.6.2 sont égales à la valeur de
la sommation.
Chapitre 3

Théorie des graphes

Un graphe est une structure mathématique qui contient des sommets, dont certains sont
reliés entre eux par des arêtes. Selon le contexte, les arêtes d’un graphe peuvent posséder
ou non une orientation. Dans ce document, le terme graphe employé seul désigne un graphe
dont les arêtes ne sont pas orientées et le terme digraphe désigne un graphe dont les arêtes
sont orientées. Le terme arc désigne plus spécifiquement une arête orientée d’un digraphe.

On utilise la notation suivante :

— Étant donné un graphe G1 , on note l’ensemble de ses sommets “V (G1 )” et l’ensemble


de ses arêtes “E(G1 )”. Ainsi, si les sommets a et b de G1 sont reliées par une arête,
on a a ∈ V (G1 ), b ∈ V (G1 ) et [a, b] ∈ E(G1 ). Le choix des lettres V et E provient des
termes anglais “Vertices” et “Edges”.
— Étant donné un digraphe G2 , on note l’ensemble de ses sommets “V (G2 )” et l’ensemble
de ses arcs “A(G2 )”. Ainsi, si G2 possède un arc du sommet e et vers le sommet d, on
a e ∈ V (G2 ), d ∈ V (G2 ) et he, di ∈ A(G2 ).

194
3.1. ÉLÉMENTS DE BASE 195

E(G1 ) = { [a, b], [a, d], [b, d], [c, d] }


V (G1 ) = { a, b, c, d }

A(G2 ) = { hb, bi , hb, ci , hb, di , hc, ei , he, ci , he, di }


V (G2 ) = { a, b, c, d, e }

Figure 3.1 – Exemples d’un graphe G1 et d’un digraphe G2 .

Plusieurs problèmes se représentent naturellement par un graphe. Nous n’avons qu’à pen-
ser à une carte géographique (où les villes sont des sommets et les routes sont des arêtes),
un réseau informatique (constitué d’ordinateurs reliés par des câbles optiques), un circuit
électronique (constitué de puces reliées par des circuits imprimés), etc.

La théorie des graphes est aussi utilisée pour représenter beaucoup d’autres problèmes
qui ne s’apparentent pas à un graphe au premier coup d’oeil. Quelques-uns de ces problèmes
sont la création d’horaires, l’assemblage d’un génome humain et la gestion de l’espacement
entre les mots par un traitement de texte afin que toutes les lignes d’un paragraphe soient
justifiées (de longueur pleine).

3.1 Éléments de base

Cette section présente une série de définitions souvent utilisées en théorie des graphes.
Nous faisons par la suite référence à ces définitions au besoin dans les sections subséquentes.

3.1.1 Graphes et digraphes

Les définitions 3.1.1 et 3.1.2 présentent les graphes et les digraphes comme des cas parti-
culiers de relations. Cependant, une relation est, dans la plupart des cas, présentée par une
règle d’association, liant certains éléments de l’ensemble de départ et de l’ensemble d’arrivé.
Généralement, on considère un graphe (ou un digraphe) comme un objet en soi, et on en
étudie la structure. Ainsi, on réfère habituellement explicitement aux sommets et aux arêtes
pour définir un graphe, que ce soit par des ensembles définis en extension ou par un dessin,
tel qu’illustré par la figure 3.1. Les problèmes étudiés par la théorie des graphes ne sont donc
196 CHAPITRE 3. THÉORIE DES GRAPHES

pas les mêmes que ceux étudiés à l’aide des relations. C’est pourquoi la théorie des graphes
est une branche distincte des mathématiques.

Définition 3.1.1 Graphes, sommets et arêtes


a : Un graphe (ou graphe non orienté) est une relation binaire symétrique et irre-
flexive.
b : Si G est un graphe, les éléments sur lesquels la relation G est définie sont appelés les
sommets du graphe G. L’ensemble de tous les sommets de G est noté V (G).
c : Si deux sommets x et y sont en relation dans un graphe G (autrement dit, hx, yi ∈ G
et hy, xi ∈ G), on dit qu’il y a une arête entre x et y et cette arête est notée [x, y ]G ou
[y, x]G (ou simplement [x, y ] ou [y, x] s’il n’y a aucune confusion possible). L’ensemble
de toutes les arêtes de G est noté E(G).

Les sommets x et y sont appelés les extrémités de l’arête [x, y ]G et cette arête est dite
une arête incidente au sommet x et au sommet y. De plus les sommets x et y seront dit
adjacents (ou voisins) dans G. Insistons sur le fait que [x, y ]G = [y, x]G .

Définition 3.1.2 Digraphes, sommets et arcs.


a : Un digraphe (ou graphe orienté) est une relation binaire.
b : Si G est un digraphe, les éléments sur lesquels la relation G est définie sont appelés
les sommets du digraphe G. L’ensemble de tous les sommets de G est noté V (G).
c : Si deux sommets x et y sont en relation dans un digraphe G tel que x G y (autrement
dit, hx, yi ∈ G), on dit qu’il y a un arc de x vers y et cet arc est noté hx, yiG (ou
simplement hx, yi s’il n’y a aucune confusion possible). L’ensemble de tous les arcs
de G est noté A(G).

Les sommets x et y sont respectivement appelés l’origine et la destination de l’arc


hx, yiG , et cet arc est dit un arc sortant du sommet x et un arc entrant du sommet y. Un
arc hx, xiG ayant le même sommet d’origine et de destination est dit une boucle.

Définition 3.1.3 Cas particuliers de graphes.


a : Un graphe régulier d’ordre k est un graphe dont tous ses sommets sont de degré k.
b : Un graphe complet d’ordre n (noté Kn ) est un graphe qui a exactement n sommets
et où pour tout x, y ∈ V (Kn ) tels que x 6= y, on a [x, y] ∈ E(Kn ).
c : Un graphe G est un graphe biparti de bipartition A et B si
3.1. ÉLÉMENTS DE BASE 197

— A et B forment une bipartition de V (G) (c.-à-d. : A ∩ B = ∅ et V (G) = A ∪ B),


et
— pour toute arête de G, une extrémité appartient à A et l’autre à B.
d : Un graphe biparti complet d’ordres n et m (noté Kn,m ) est un graphe biparti de
bipartition A et B tel que |A| = n et |B| = m, et pour tout hx, yi ∈ A × B, on a
[x, y] ∈ E(Kn,m ).

(a) Graphe K7 (b) Graphe K3,3 (c) Graphe K3,2

Figure 3.2 – Exemples d’un graphe complet (définition 3.1.3-b) et de deux


graphes bipartis complets (définition 3.1.3-d).

3.1.2 Voisins et degré d’un sommet

Définition 3.1.4 Voisins et degré d’un sommet

Étant donné un sommet x d’un graphe G,


a : Un sommet y ∈ V (G) est un voisin du sommet x ∈ V (G) lorsque G possède une
arête [x, y]G . L’ensemble de tous les voisins de x dans G est noté NG (x).
b : Le degré de x dans G est égal au nombre de voisins x dans G, et est noté degG (x).
Autrement dit degG (x) = NG (x) .

À titre d’exemple, le graphe G1 présenté à la figure 3.1 est tel que :


NG1 (a) = {b, d} et NG1 (c) = {d} .

3.1.3 Sous-graphes et décompositions

Définition 3.1.5 Sous-graphes.


a : Un graphe H est dit sous-graphe d’un graphe G (noté : H C G) si :
. V (H) ⊆ V (G) et E(H) ⊆ E(G) .
198 CHAPITRE 3. THÉORIE DES GRAPHES

b : Un graphe H est un sous-graphe couvrant d’un graphe G (ou sous-graphe par-


tiel) si :
. H C G et V (H) = V (G) .
c : Un graphe H est un sous-graphe induit d’un graphe G si :

. H C G et ∀x, y ∈ V (H) | [x, y ] ∈ E(G) ⇒ [x, y ] ∈ E(H) .

La définition 3.1.5 ci-haut se généralise directement au cas des digraphes en remplaçant


simplement les ensembles d’arêtes E(G) et E(H) par les ensembles d’arcs A(G) et A(H).
Comme le montre l’exemple de la figure 3.3, un digraphe H est un sous-digraphe d’un
digraphe G (noté : H C G) si V (H) ⊆ V (G) et A(H) ⊆ A(G).

(a) Digraphe G (b) Digraphe H

Figure 3.3 – Exemples de deux digraphes G et H qui ont la propriété H C G,


c’est-à-dire que H est un sous-graphe de G.

Définition 3.1.6 Décomposition d’un graphe.


Une décomposition d’un graphe G est un ensemble de sous-graphes {H1 , H2 , . . . , Hl } tel
que chaque arête de G appartient à un et un seul membre de la décomposition.

Similairement, une décomposition d’un digraphe G est un ensemble de sous-graphes tel


que chaque arc de G appartient à un et un seul membre de la décomposition.

3.1.4 Chaı̂nes, chemins et cycles

Définition 3.1.7 Chaı̂nes.


Soit G un graphe.
a : Une chaı̂ne de G est une séquence de la forme
h x1 , [x1 , x2 ], x2 , [x2 , x3 ], x3 , . . . , xn−1 , [xn−1 , xn ], xn i .

Les sommets x1 et xn sont appelés les extrémités de la chaı̂ne.


3.1. ÉLÉMENTS DE BASE 199

b : Une chaı̂ne simple de G est une chaı̂ne où chaque arête apparaı̂t au plus une fois.
c : Une chaı̂ne élémentaire de G est une chaı̂ne simple où chaque sommet de G apparaı̂t
au plus une fois, à l’exception des deux extrémités qui peuvent être égales.
d : Étant donnés A, B ⊆ V (G), une AB-chaı̂ne de G est une chaı̂ne dont une extrémité
appartient à A et l’autre à B.
e : Étant donnés x, y ∈ V (G), une xy-chaı̂ne de G est une {x}{y}-chaı̂ne.

Pour simplifier la notation, une chaı̂ne h x1 , [x1 , x2 ], x2 , . . . , xn−1 , [xn−1 , xn ], xn i qui est
simple ou élémentaire pourra être simplement notée h x1 , x2 , x3 , . . . , xn−1 , xn i.

Dans un digraphe, on désigne par le terme chemin une séquence de la forme :


h x1 , hx1 , x2 i , x2 , hx2 , x3 i , x3 , . . . , xn−1 , hxn−1 , xn i , xn i .

Un chemin simple est un chemin où chaque arc apparaı̂t au plus une fois et un chemin
élémentaire est un chemin simpe où chaque sommet de G apparaı̂t au plus une fois.

Définition 3.1.8 Cycles


a : Un cycle (ou cycle simple) est une chaı̂ne simple dont les deux sommets extrémités
sont identiques.
b : Un cycle élémentaire est une chaı̂ne élémentaire dont les deux sommets extrémités
sont identiques.

3.1.5 Connexité d’un graphe

Définition 3.1.9 Graphes connexes.


Un graphe G est connexe si pour toute paire x, y de sommets de G, il existe une chaı̂ne
dont les extrémités sont x et y.

Définition 3.1.10 Digraphes fortement et faiblement connexes.


a : Un digraphe G est fortement connexe si pour toute paire x, y de sommets de G, il
existe un chemin du sommet x au sommet y et un chemin du sommet y au sommet x.
b : Un digraphe G est faiblement connexe si le graphe sous-jacent est connexe,

Dans la dernière définition, on considère qu’un graphe sous-jacent au digraphe G est un


graphe G0 tel que V (G0 ) = V (G) et E(G0 ) = {[x, y] | hx, yi ∈ A(G)}. Autrement dit, le
graphe G0 est obtenu en transformant tous les arcs du digraphe G en arêtes.
200 CHAPITRE 3. THÉORIE DES GRAPHES

Définition 3.1.11 Composante connexe


Une composante connexe (ou composante) d’un graphe G est un sous graphe connexe H
de G qui est maximal (c.-à-d. : que H est connexe et pour tout H 0 tel que H C H 0 C G, H 0
n’est pas connexe).

La dernière définition s’adapte directement aux digraphes. Ainsi, une composante for-
tement connexe d’un digraphe G est un sous-graphe fortement connexe H de G (voir la
définition 3.1.10-a) qui est maximal. De même, une composante faiblement connexe d’un
digraphe G est un sous-graphe faiblement connexe H de G (voir la définition 3.1.10-b) qui
est maximal.

Définition 3.1.12 Graphes k-connexes et k-arêtes-connexes.


Soit k ∈ N∗ et G un graphe
a : Le graphe G est k-connexe si pour tout ensemble S ⊆ V (G) de cardinalité < k, le
graphe formé par les sommets V (G) \ S et les arêtes {[x, y ]G | x, y ∈
/ S} est connexe ;
b : Le graphe G est k-arêtes-connexe si pour tout ensemble S 0 ⊆ E(G) de cardinalité <
k, le graphe formé par les sommets V (G) et les arêtes E(G) \ S 0 est connexe ;

Clairement, un graphe 1-connexe est connexe et un graphe 1-arête-connexe est connexe.


De plus tout graphe k-connexe est aussi k-arête-connexe, mais le contraire n’est pas nécessai-
rement vrai.

3.1.6 Arbres

Définition 3.1.13 Arbres.


Un graphe T est un arbre s’il est connexe et ne contient aucun cycle.

On utilise souvent le mot noeud pour référer aux sommets d’un arbre. De même, il est
parfois naturel de remplacer les arêtes d’un arbre par des arcs (orientés), obtenant ainsi un
digraphe que l’on nomme une arborescence (que l’on peut aussi nommer un arbre enraciné).
Tous les sommets d’une arborescence doivent posséder un seul arc entrant, à l’exception d’un
seul sommet qui ne possède aucun arc entrant. Ce dernier sommet est appelé la racine. Les
sommets de l’arborescence ne possédant aucun arc sortant sont appelés les feuilles. Tous
les sommets possédant au moins un arc sortant (incluant la racine) sont appelés les noeuds
internes.
3.1. ÉLÉMENTS DE BASE 201

3 10

1 6 14

4 7 13
(a) Arbre (b) Arborescence (c) Arbre binaire complet

Figure 3.4 – Les graphes (a) et (c) sont des arbres et le digraphe (b) est une
arborescence. (L’image (b) provient de Wikipédia.)
Définition 3.1.14 Arbres binaires
Un arbre binaire T est un arbre qui contient un sommet de degré 2 et dont tous les autres
sommets sont de degrés 1 ou 3.

On utilise le vocabulaire suivant :


— La racine de T est l’unique sommet de degré 2 ;
— Les sommets de degrés 1 sont les feuilles de T ;
— Les sommets qui ne sont pas des feuilles (incluant la racine) sont appelés les noeuds
internes de T ;
— Soit une chaı̂ne élémentaire hx1 , x2 , . . . , xn i, où x1 est la racine et xn une feuille de
l’arbre T . Pour tout i ∈ {1, . . . , n − 1}, on dit que xi est le père de xi+1 et que xi+1
est le fils de xi ;
— Le niveau d’un sommet x dans l’arbre T équivaut à la longueur de l’unique chaı̂ne
élémentaire allant de la racine de T au sommet x ;
— La hauteur (ou la profondeur ) de l’arbre T est égale au niveau maximal de ses
sommets.

Définition 3.1.15 Arbres binaires complets.


Un arbre binaire complet (ou arbre binaire parfait) est un arbre binaire dont toutes les
feuilles sont toutes au même niveau (ce niveau étant égale à la hauteur de l’arbre).

3.1.7 Représentation matricielle

Définition 3.1.16 Matrice d’ajacence d’un digraphe


Soit un digraphe G dont on numérote les sommets V (S) = {s1 , s2 , . . . , sn } (où n = |V (G|).
La matrice d’ajacence M du digraphe G est une matrice booléenne de taille n × n telle
que :
def
Mi,j = hsi , sj i ∈ A(G) ∀i, j ∈ {1, 2, . . . , n} .
202 CHAPITRE 3. THÉORIE DES GRAPHES

La matrice d’adjacence M d’un graphe G est obtenue de façon similaire, en remplaçant la


notion d’arc par celle d’arête :

def
Mi,j = [si , sj ] ∈ E(G) ∀i, j ∈ {1, 2, . . . , n} .

Les matrices sont l’une des structures de données utilisées en informatique pour représenter
des graphes. Typiquement, on utilise des 1 et des 0 pour représenter les valeurs de vérité vrai
et faux à l’intérieur d’une matrice d’adjacence. À titre d’exemple, voici la matrice d’ajacence
M1 du graphe G1 et la matrice d’adjacence M2 du digraphe G2 :
 
0 1 0 1
 
1 0 0 1
M1 = 
0

 0 0 1

1 1 1 0

 
0 0 0 0 0
0 1 1 1 0
 
 
M2 = 0
 0 0 0 1

0 0 0 0 0
 

0 0 1 1 0

La matrice d’adjacence d’un graphe (telle la matrice M1 ci-haut) est toujours :


— Une matrice symétrique (c’est-à-dire Mi,j = Mj,i ∀i, j ∈ {1, 2, . . . , n}) ;
— Une matrice de diagonale nulle (c’est-à-dire Mi,i = 0 ∀i ∈ {1, 2, . . . , n}).
3.1. ÉLÉMENTS DE BASE 203

3.1.8 Exercices sur les éléments de base

Exercice 1 : Six équipes sont inscrites à un tournoi de Hockey de garage. Dans la première
phase du tournoi, chaque équipe doit affronter toutes les autres une et une seule fois.

a) Construisez un graphe représentant toutes les parties possibles.

b) Quel type de graphe obtenez-vous ?

c) Combien de parties comporte la première phase du tournoi ?

Exercice 2 : Le représentant d’une compagnie de balayeuses centrales doit visiter quatre


résidants d’un même immeuble en une même soirée. Chaque visite dure une heure et le
représentant a suggéré aux résidents quatre plages horaires : 18h00, 19h00, 20h00 et 21h00.
Voici les disponibilités des résidents :

Résident 18h00 19h00 20h00 21h00


Sébastien X X X
Jean-Francis X X
Brice X X
Alexandre X X

a) Représentez cette situation par un graphe.

b) Quel type de graphe obtenez-vous ?

c) Expliquez comment déduire du graphe un horaire possible pour le représentant (notez


qu’on peut voir un horaire comme une fonction bijective entre l’ensemble des résidents
et l’ensemble des plages horaires).

d) Donnez tous les horaires possibles pour ce problème.

Exercice 3 :

a) Sept étudiants vont en vacances. Chacun va envoyer une carte postale à exactement
trois des autres étudiants. Est-ce possible que pour chaque étudiant x, les étudiants
qui écrivent à x soient exactement ceux à qui x a écrit ?

b) Qu’arrive-t-il si on remplace “trois” par un autre nombre entre 0 et 6 (inclusivement)


à l’exercice précédent ?

Exercice 4 : Considérons la matrice d’adjacence M1 d’un digraphe G1 et la matrice d’adja-


204 CHAPITRE 3. THÉORIE DES GRAPHES

cence M2 d’un digraphe G2 :


   
0 1 0 1 0 1 0 0
   
1 0 1 0 0 0 1 1
M1 = 
0
 M2 =  
 0 0 1

1
 0 0 0

0 1 0 1 0 0 1 0

a) Donnez une représentation graphique des digraphes G1 et G2 .


b) Calculez le produit matriciel suivant 1 : M3 = M1 × M2 .
c) En examinant la matrice M3 calculée précédemment, dites comment on peut in-
terpréter le produit matriciel de deux matrices d’adjacence.

1. Pour un rappel sur le produit matriciel, voir : http://fr.wikipedia.org/wiki/Produit_matriciel


3.2. LES GRAPHES EN TANT QUE RELATIONS 205

3.2 Les graphes en tant que relations

Puisque les graphes et les digraphes sont définis comme des relations (voir les défini-
tions 3.1.1 et 3.1.2 à la page 196), nous pouvons étudier les graphes à la lumière des propriétés
des relations définies au chapitre 1 et des résultats mathématiques associés. Considérant cela,
on constate que l’on possède déjà plusieurs outils pour guider notre analyse des graphes. Cette
section présente quelques exemples qui mettent à profit ce lien entre le graphe (ou le digraphe)
G et la relation dont l’ensemble de départ est V (G) et l’ensemble d’arrivée est V (G).

3.2.1 Opérateurs sur les graphes

Les opérateurs sur les relations définis à la section 1.4.3 (page 67) sont aussi applicables
sur des graphes. En fait, les différentes illustrations de cette section présentent toutes des
graphes transformés par l’application de certains opérateurs (voir les figures 1.7, 1.8 et 1.9).

Composition d’un graphe

Attardons-nous d’abord à l’opérateur de composition des relations (voir définition 1.4.7,


page 68). La composition d’un graphe G avec lui-même est notée G ◦ G (ou G2 , en adoptant
la définition 1.4.9 de l’opérateur puissance). On voit facilement que la présence d’une arête
reliant le sommet a et b dans le graphe G ◦ G signifie qu’il existe une chaı̂ne de longueur 2
reliant les sommets a et b dans le graphe G. Autrement dit :

[a, b] ∈ E(G ◦ G) ⇔ ( ∃x ∈ V (G) | [a, x] ∈ E(G) ∧ [x, c] ∈ E(G) ) .

Similairement, si G est un digraphe, on a :

ha, bi ∈ A(G ◦ G) ⇔ ( ∃x ∈ V (G) | ha, xi ∈ A(G) ∧ hx, ci ∈ A(G) ) .

La figure 3.5 illustre le lien entre la composition d’un graphe et le produit matriciel de la
matrice d’adjacence (voir définition 3.1.16, page 201). Rappelons que M × M représente le
produit matriciel entre la matrice M et elle-même.

On a que pour tout graphe (ou digraphe) G de matrice d’adjacence M , il y a une arête
(ou un arc) reliant les sommets si et sj dans G ◦ G si et seulement si l’élément (i, j) de la
matrice M × M est différent de 0. Notons de plus que la valeur de l’élément (i, j) de M × M
206 CHAPITRE 3. THÉORIE DES GRAPHES

 
1 1 0 0 0 0 1
0 0 1 0 0 0 0
 
0 0 0 0 0 0 0
 
M = 0
 0 0 0 1 0 0
0 0 0 0 0 1 0
 
0 0 0 0 0 0 0
0 0 1 0 0 0 0

(a) Graphe G et matrice d’adjacence M correspondante

 
1 1 2 0 0 0 1
0 0 0 0 0 0 0
 
0 0 0 0 0 0 0
M ×M =
 
0 0 0 0 0 1 0
 
0 0 0 0 0 0 0
 
0 0 0 0 0 0 0
0 0 0 0 0 0 0

(b) Graphe G ◦ G et matrice d’adjacence M × M correspondante

Figure 3.5 – Exemple illustrant le lien entre la composition d’un graphe et le


produit matriciel de la matrice d’adjacence.

est toujours un nombre entier et indique le nombre de façons qu’on peut joindre le sommet
sj à partir du sommet si en exactement deux étapes.

Clôture transitive d’un digraphe

Examinons maintenant l’opérateur de clôture (voir définition 1.4.11, page 71). Appliqué
sur un digraphe G, l’opérateur de clôture transitive G+ et l’opérateur de clôture tran-
sitive et réflexive G∗ permettent d’obtenir des digraphes dont les sommets sont inchangés
(c’est-à-dire V (G+ ) = V (G∗ ) = V (G)) et les arcs sont donnés par :

A(G+ ) = A(G) ∪ A(G ◦ G) ∪ A(G ◦ G ◦ G) ∪ A(G ◦ G ◦ G ◦ G) ∪ . . .


A(G∗ ) = IV (G) ∪ A(G+ ) ,

où IV (G) est la relation identité (définition 1.4.6), c’est-à-dire le digraphe qui est exactement
composé de tous les arcs hx, xi, pour x ∈ V (G).
3.2. LES GRAPHES EN TANT QUE RELATIONS 207

3.2.2 Isomorphisme de graphes

Intuitivement, deux graphes sont isomorphes lorsqu’ils possèdent la même forme, même
si leurs sommets possèdent des noms différents ou qu’on les représente de manières distinctes.

Définition 3.2.1 Isomorphisme.


a : Un isomorphisme entre le graphe G1 et le graphe G2 est une fonction bijective
→ V (G2 ) telle que
f : V (G1 ) 

∀x, y | [x, y ] ∈ E(G1 ) ⇔ [f (x), f (y)] ∈ E(G2 ) .

b : Un isomorphisme entre le digraphe G1 et le digraphe G2 est une fonction bijective


→ V (G2 ) telle que
f : V (G1 ) 

∀x, y | hx, yi ∈ A(G1 ) ⇔ hf (x), f (y)i ∈ A(G2 ) .

Deux graphes (ou digraphes) sont isomorphes si et seulement si il existe un isomorphisme


entre ces deux graphes (ou ces deux digraphes).

(a) Graphes isomorphes (b) Digraphes isomorphes

Figure 3.6 – Exemples de deux graphes isomorphes (définition 3.2.1-a) et de


deux digraphes isomorphes (définition 3.2.1-b).

Pour démontrer que deux graphes (ou digraphes) G1 et G2 sont isomorphes, il suffit de
donner un isomorphisme entre G1 et G2 . Autrement dit, il s’agit de trouver une fonction
bijective f associant chacun des sommets de G1 à un et un seul des sommets de G2 et qui
préserve les arêtes.

La figure 3.6a présente un exemple de deux graphes isomorphes. Un isomorphisme entre


ces deux graphes est la fonction {ha, 0i , hb, 1i , hc, 2i , hd, 3i , he, 4i}. De même, la figure 3.6b
présente un exemple de deux digraphes isomorphes. Un isomorphisme entre ces deux di-
graphes est la fonction {h1, di , h2, bi , h3, ci , h4, ai}.
208 CHAPITRE 3. THÉORIE DES GRAPHES

3.2.3 Exercices sur les graphes en tant que relations

Exercice 1 : Considérez l’ensemble de sommets S = {1, 2, 3, 4} et les deux digraphes sui-


vants :

G = {h2, 3i , h3, 3i , h4, 3i} ⊂ S 2 ,


H = {h1, 2i , h2, 4i , h3, 1i , h4, 3i} ⊂ S 2 .

a) Calculez G ∪ H, G ∩ H, Gc , H −1 , G ◦ H, G2 et H 2 .
b) Donnez la représentation graphique des digraphes G, H et H 2 .
c) Donnez la matrice d’adjacence des digraphes G, H et H 2 .
d) Dites lesquelles des propriétés suivantes les relations G et H possèdent :
réflexivité, irréflexivité, symétrie, antisymétrie, asymétrie, transitivité, équiva-
lence, totalité, surjectivité, déterminisme, injectivité, fonction partielle, fonc-
tion, fonction bijective, ordre partiel, ordre partiel strict, ordre total.

Exercice 2 : Montrez que les deux graphes suivants sont isomorphes.


3.3. DEGRÉS DES SOMMETS ET NOMBRE D’ARÊTES 209

3.3 Degrés des sommets et nombre d’arêtes

Théorème 3.3.1 Nombre d’arêtes d’un graphe complet.


Soit Kn le graphe complet à n sommets. Alors
n · (n − 1)
E(Kn ) = .

2
Notez que la notion de graphe complet a été introduite par la définition 3.1.3-b (page 196).

Démonstration du théorème 3.3.1


n · (n − 1)
Considérons le prédicat P (n) : Le graphe complet Kn possède arêtes .
2
Démontrons que P (n) est vrai pour tout n ∈ N∗ . Par le principe d’induction mathématique
(théorème 2.3.2), il suffit de démontrer :
P (1) ∧ (∀n ∈ N \ {0, 1} | P (n − 1) ⇒ P (n)) .
1 · (1 − 1)
Montrons P (1). (C’est-à-dire, montrons que le graphe K1 possède = 0 arête
2
).
Par définition, le graphe K1 possède un seul sommet, donc il est clair que K1 ne
possède aucune arête.
Montrons (∀n ∈ N \ {0, 1} | P (n − 1) ⇒ P (n)).
Soit n ∈ N \ {0, 1},
 choisi tel que P (n − 1) est vrai. 
(n − 1) · (n − 2)
. C’est-à-dire, tel que le graphe Kn−1 possède arêtes
2
 
n · (n − 1)
Montrons P (n). . C’est-à-dire que le graphe Kn possède arêtes
2

Pour créer le graphe complet Kn , on ajoute un nouveau sommet au graphe Kn−1 . On


relie ensuite le nouveau sommet à chacun des sommets de l’ensemble V (Kn−1 ). C’est
donc dire que le graphe Kn possède n − 1 arêtes de plus que le graphe Kn−1 .
Par hypothèse d’induction, on a que Kn−1 possède (n−1)·(n−2)
2
arêtes. Donc :

|E(Kn )| = |E(Kn−1 )| + (n − 1)
(n − 1) · (n − 2)
= + (n − 1) .h Hypothèse d’induction i
2
(n − 1) · (n − 2) + (n − 1) · 2
=
2
n · (n − 1)
= . .h Arithmétique (simplifications) i
2
n · (n − 1)
Conclusion : On a démontré que graphe complet Kn possède arêtes, ∀n ∈
2
210 CHAPITRE 3. THÉORIE DES GRAPHES

N∗ .
.
C.Q.F.D.

Corollaire 3.3.2 Nombre maximal d’arêtes.


Soit G un graphe. Alors
 
V (G) · V (G) − 1

E(G) ≤ ,

2
et il y a égalité si et seulement si G est un graphe complet.

Proposition 3.3.3 Somme des degrés d’un graphe.


Soit G un graphe et V (G) = {x1 , x2 , . . . , x|V (G)| } l’ensemble des sommets de G. Alors :

|V (G)|
X
degG (xi ) = 2 · E(G) .

i=1

Démonstration de la proposition 3.3.3

Une idée de cette démonstration sera faite en classe.

Corollaire 3.3.4 Nombre de sommets de degré impair


Si G a un nombre fini de sommets alors G contient un nombre pair de sommets de degré
impair.

Démonstration du corollaire 3.3.4

Une idée de cette démonstration sera faite en classe.

Clairement, si G est connexe alors son degré minimum est ≥ 1 (sauf si G est le graphe
à un seul sommet). Le lemme suivant établit que réciproquement, si le degré minimum est
suffisamment grand, alors G est connexe.

Lemme 3.3.5 Degré minimum d’un graphe et connexité.


Soit G un graphe de degré minimum k.

|V (G)| − 1
Si k ≥ alors G est connexe.
2
3.3. DEGRÉS DES SOMMETS ET NOMBRE D’ARÊTES 211

Démonstration du lemme 3.3.5


Supposons le contraire et cherchons une contradiction.
|V (G)| − 1
Soit un graphe G de degré minimum k tel que G n’est pas connexe et k ≥ .
2
Soit H la composante connexe de G contenant le moins de sommets.

Considérons les deux arguments suivants :

(A) Comme le graphe G n’est pas connexe, il contient au moins 2 composantes connexes.
Comme H est la plus petite, elle contient au plus la moitié des sommets de G. Donc :

|V (G)|
|V (H)| ≤ . (3.1)
2

(B) Soit un sommet x ∈ V (H) . h Un tel x existe, car H est non-vide i


Comme degG (x) ≥ k, on a que H contient au moins k + 1 sommets
. h C’est-à-dire le sommet x et ses k voisins i
Donc :
|V (H)| ≥ k + 1
|V (G)| − 1 D
|V (G)| − 1
E
≥ +1 . Car par choix de G, on a k ≥ 2
2
|V (G)| + 1
=
2
|V (G)|
> .
2

|V (G)| |V (G)|
Nous avons montré en (A) que |V (H)| ≤ et en (B) que |V (H)| > ,
2 2
ce qui est une contradiction.
.
C.Q.F.D.
212 CHAPITRE 3. THÉORIE DES GRAPHES

3.4 Arbres

Les arbres sont une structure de données souvent utilisée en informatique pour emmaga-
siner de l’information. Cette section présente et démontre quelques propriétés intéressantes
des arbres. Pour bien les comprendre, il est conseillé de reviser la nomenclature propre aux
arbres à la section 3.1.6 (page 200).

3.4.1 Sommets et arêtes d’un arbre

Le premier lemme démontré n’a que peu d’intérêt en soi, mais il sera utile lors de la
démonstration du théorème suivant.

Lemme 3.4.1
Un arbre qui contient au moins une arête a au moins deux sommets de degré 1.

Démonstration du lemme 3.4.1


Soit un arbre T et C une chaı̂ne élémentaire de longueur maximale du graphe T telle que :

C = hx1 , x2 , x3 , . . . , xn i .

Démontrons que les sommets x1 et xn sont des feuilles (autrement dit, des sommets de
degré 1). Pour ce faire, supposons le contraire et cherchons une contradiction.

Supposons que x1 n’est pas une feuille ou xn n’est pas une feuille.
Sans perte de généralité, traitons le cas où x1 n’est pas une feuille
. h Le cas où xn n’est pas une feuille correspond à traiter la chaı̂ne inverse hxn , xn−1 , . . . , x1 i i

Puisque x1 n’est pas une feuille, x1 possède au moins un voisin différent de x2 .


Notons ce voisin y.

Le sommet y doit appartenir à la chaı̂ne C, car sinon la chaı̂ne C ne serait pas de longueur
maximale. . h Puisqu’on obtiendrait une chaı̂ne plus longue en y ajoutant le sommet y. i

Donc y = xi pour un entier i ∈ {3, 4, . . . , n}


Ce qui implique que hy, x1 , x2 , . . . , xi i est un cycle.
Mais, par définition, T est un arbre et ne contient pas de cycles. .
C.Q.F.D.
3.4. ARBRES 213

Théorème 3.4.2 Nombre de sommets d’un arbre.


Soit G un graphe connexe, alors

G est un arbre ⇔ V (G) = E(G) + 1.

Démonstration partielle du théorème 3.4.2 G est un arbre ⇒ |V (G)| = |E(G)| + 1 .


⇒ : Pour effectuer cette démonstration, nous démontrons par induction la véracité du
prédicat suivant pour tout n ∈ N∗ :
P (n) : Tout arbre de n sommets possède n − 1 arêtes

Par le principe d’induction (théorème 2.3.2, avec [n0 := 1]), il suffit de démontrer :
P (1) ∧ (∀n ∈ N∗ \{1} | P (n − 1) ⇒ P (n)) .

Montrons P (1). . h C’est-à-dire, montrons qu’un arbre à 1 sommet possède 1 − 1 arête i


Il n’existe qu’un seul arbre à un sommet (c’est l’arbre • ), et il a zéro arête.
On a bien q’un arbre à 1 sommet possède 1 − 1 = 0 arête
Montrons (∀n ∈ N∗ \{1} | P (n−1) ⇒ P (n)).
Supposons que P (n − 1) est vrai, c’est-à-dire que tous les arbres de n − 1 sommets
possèdent n − 2 arêtes. . h C’est notre hypothèse d’induction i
Montrons maintenant P (n).
Soit T un arbre de n sommets. . h Montrons que T possède n − 1 arête i
On choisit x, une feuille de T .
. h x existe car, par le lemme 3.4.1, on sait que T a au moins une feuille i
Construisons le graphe T ∗ en retirant de T le sommet x et l’unique arête incidente à
x.
Notons que T ∗ est toujours un graphe connexe et sans cycle.
Donc T ∗ est un arbre de n − 1 sommets.
Ce qui implique que T ∗ possède n − 2 arêtes. . h Par l’hypothèse d’induction i
Donc T possède n − 1 arêtes. . h Car T ∗ a été obtenu en enlevant une arête à T i
Conclusion : On a bien ∀n ∈ N∗ | P (n) ,


Autrement dit : Tout arbre de n sommets possède n − 1 arêtes. .


C.Q.F.D.

Le théorème 3.4.2, nous donne immédiatement le corollaire suivant.

Corollaire 3.4.3 Nombre de sommets maximal d’un graphe connexe.


Si G est un graphe connexe, alors
214 CHAPITRE 3. THÉORIE DES GRAPHES


V (G) ≤ E(G) + 1 .

Théorème 3.4.4 Définitions équivalentes d’un arbre.


Soit T un graphe, les énoncés suivants sont équivalents :
1 – T est un arbre ;

2 – V (T ) = E(T ) + 1 et T est connexe ;

3 – pour tout x, y ∈ V (T ), il existe (dans T ) une et une seule chaı̂ne élémentaire dont les
extrémités sont x et y ;
4 – T est connexe, mais pour toute arête e ∈ E(T ), le graphe formé des sommets V (T ) et
des arêtes E(T ) \ {e} ne l’est pas ;
5 – T est acyclique, mais pour toute paire de sommets x, y ∈ V (T ) tel que [x, y ] 6∈ E(G),
le graphe formé des sommets V (T ) et des arêtes E(T ) ∪ [x, y ] ne l’est pas.

Démonstration du théorème 3.4.4

Une idée de cette démonstration sera faite en classe.

3.4.2 Propriétés des arbres binaires

Les arbres binaires sont une structure de données souvent utilisée en informatique pour
emmagasiner de l’information.

Proposition 3.4.5 Propriétés des arbres binaires complets.


Soit T un arbre binaire complet comportant n noeuds. Alors :
n+1
a : T contient feuilles.
2
n−1
b : T contient sommets internes.
2
c : La hauteur de T est : log2 (n + 1) − 1 .

Pour démontrer la proposition 3.4.5, nous allons supposer que nous connaissons la hauteur
de l’arbre T et nous en déduirons les autres quantités. Il sera plus simple de procéder ainsi
que de supposer que nous connaissons le nombre noeuds n. Il suffira d’effectuer de simples
calculs arithmétiques pour retrouver l’énoncé de la proposition.
3.4. ARBRES 215

Démonstration de la proposition 3.4.5


Soit un arbre binaire complet T de hauteur h ∈ N.
(A) Calculons f , le nombre de feuilles de T .
Définissons récursivement la suite h F (x) ix∈N , dont le xième terme correspond au
nombre de feuilles dans un arbre binaire complet de hauteur x. Remarquons que
l’arbre de hauteur 0 possède une feuille (c’est le cas particulier où l’arbre consiste en
un graphe d’un seul sommet) et que l’arbre de hauteur x ≥ 1 possède le double de
feuilles de l’arbre de hauteur x − 1. Nous avons donc :
(
F (0) = 1
F (x) = 2 · F (x − 1) ∀x ∈ N∗ .

La suite h F (x) ix∈N est une suite géométrique de premier terme 1 et de raison 2. Le
théorème 2.4.4 nous permet d’énoncer le terme général de la suite : F (x) = 2x ∀x ∈ N .
Ainsi, l’arbre T de hauteur h possède f = 2h feuilles.
(B) Calculons n, le nombre de noeuds de T .
Comme T est un arbre binaire complet, il contient un nombre de noeuds égal à la
somme du nombre de feuilles des arbres binaires complets de hauteur 0 à h. Ainsi :
h
X
n = F (x) .
x=0

La valeur n est donc donnée par la somme des h premiers termes de la suite géométrique
h F (x) ix∈N . Par le théorème 2.4.7, nous obtenons :
1 · (1 − 2h+1 )
n = = 2h+1 − 1 .
1−2
(C) Calculons i, le nombre de noeuds internes de T .
Le nombre de noeuds internes i de T correspond simplement à la différence entre le
nombre de noeuds total n et le nombre de feuilles. Ainsi, on a :
i = n − f = 2h+1 − 1 − 2h = 2h − 1 = f − 1 .

(D) Exprimons h, f et i en fonction du nombre de noeuds n.


n+1
n = 2h+1 − 1 f = 2h i = f −1 = −1
2
⇔ 2h+1 = n + 1 = 2log2 (n+1)−1 n+1−2
= 2log2 (n+1) · 2−1 =
⇔ log2 (2h+1 ) = log2 (n + 1) 2
n+1 n−1
⇔ h = log2 (n + 1) − 1 , = , = .
2 2
.
C.Q.F.D.
216 CHAPITRE 3. THÉORIE DES GRAPHES

3.4.3 Exercices sur les arbres

Exercice 1 : (Aucune justification n’est demandée pour ce numéro.)


a) Énumérez (à isomorphisme prés) tous les arbres binaires ayant exactement 6 feuilles.
b) Combien de sommets peut avoir un arbre binaire ayant exactement 6 feuilles.
c) Combien de sommets peut avoir un arbre binaire ayant exactement k feuilles (avec
k ≥ 2).

Exercice 2 : Définissons un arbre trinaire comme un arbre qui contient un sommet de degré 3
(la racine) et dont tous les autres sommets sont de degré 1 (les feuilles) ou de degré 4. Comme
pour un arbre binaire, le niveau d’un sommet x d’un arbre trinaire équivaut à la longueur de
l’unique chaı̂ne allant de la racine au sommet x et la hauteur d’un arbre trinaire est égale au
niveau maximal de ses feuilles. Finalement, un arbre trinaire complet est un arbre trinaire
dont toutes les feuilles sont au même niveau.
a) Dessinez trois arbres : un arbre trinaire complet de hauteur 2, un arbre trinaire complet
de hauteur 3 et un arbre trinaire complet de hauteur 4.
b) Donnez l’expression du nombre de feuilles d’un arbre trinaire complet en fonction de
sa hauteur.
c) Donnez l’expression du nombre de noeuds d’un arbre trinaire complet en fonction de
sa hauteur. (Indice : Vous pouvez vous servir du résultat obtenu en (b) et des résultats
présentés à la section 2.4.3 sur les suites des sommes de premiers termes d’une suite.)

Exercice 3 : Un arbre est toujours un graphe biparti. Décrivez une méthode pour créer une
bipartition à partir de n’importe quel arbre (Rappel : les concepts de graphe biparti et de
bipartition ont été introduits par la définition 3.1.3-c).
3.5. GRAPHES PLANAIRES 217

3.5 Graphes planaires

Définition 3.5.1 Graphes planaires et représentations planaires


a : Un graphe planaire est un graphe qui peut être tracé dans un plan sans qu’aucune
de ses arêtes en croise une autre.
b : Une représentation planaire est une représentation dans le plan R2 d’un graphe
planaire.

On considère qu’une représentation planaire est un graphe G tel que :


1. V (G) ⊆ R2 ;
2. ∀e ∈ E(G), e est une portion de courbe de R2 entre deux sommets u, v ∈ V (G) ;
3. il existe au plus une arête entre deux sommets donnés ;
4. l’intérieur d’une arête ne contient pas de sommets et n’intersecte aucune autre arête.

Figure 3.7 – Deux représentations d’un même graphe planaire. Seul le graphe
de droite une représentation planaire. (Version modifiée d’une image provenant de
Wikipédia.)

On désigne par le terme région (ou face) chacun des polygones bornés par les arêtes
d’une représentation planaire. De plus, une représentation planaire (finie) possède une région
qui est non bornée, que l’on nomme la région extérieure (ou face extérieure).

Étant donné une représentation planaire G, comme pour tout graphe :


• V (G) représente l’ensemble des sommets de G ;
• E(G) représente l’ensemble des arêtes de G.

De plus, dans le cas spécifique d’une représentation planaire :


• F (G) représente l’ensemble des régions de G (incluant la région extérieure).
218 CHAPITRE 3. THÉORIE DES GRAPHES

Lemme 3.5.2 Représentations planaires et cycles.


Soit une représentation planaire G et e ∈ E(G).
a : Si e appartient à un cycle de G, alors e fait partie de la frontière d’exactement deux
régions de G.
b : Si e n’est dans aucun cycle de G, alors e fait partie de la frontière d’exactement une
région de G.

Théorème 3.5.3 Formule d’Euler


Soit G une représentation planaire connexe. Alors

V (G) + F (G) − E(G) = 2.

Démonstration du théorème 3.5.3


Supposons le contraire, c’est-à-dire qu’il existe un graphe qui est une représentation planaire
et qui ne satisfait pas la formule d’Euler. Parmi toutes les représentations planaires qui ne
satisfont pas la formule d’Euler, choisissons-en un qui contient le plus petit nombre possible
d’arêtes. Notons ce graphe G0 .
Nous avons donc :
V (G0 ) + F (G0 ) − E(G0 ) 6= 2 . (3.2)

Mais pour tout graphe planaire connexe H :



si E(H) < E(G0 ) alors on a V (H) + F (H) − E(H) = 2 . (3.3)

Alors, il y a deux cas à considérer :


Cas 1 : G0 contient un cycle C.
Soit e ∈ E(C).
Alors par le lemme 3.5.2-a, l’arête e est la frontière d’exactement deux régions.
le graphe H tel que V (H) = V (G0 ) et E(H) = E(G0 ) \ {e}.
Soit * +
C’est à dire, le sous-graphe obtenu de G0 qui a exactement les mêmes sommets que G0
.
et toutes les arêtes de G0 sauf l’arête e.

On a donc :

(i) E(H) = E(G0 ) − 1


(ii) V (H) = V (G0 )


(iii) F (H) = F (G0 ) − 1

. h car les deux régions séparées par e dans G0 n’en forment plus qu’une dans H. i
3.5. GRAPHES PLANAIRES 219

Notons que puisque G0 est connexe, H est lui aussi connexe car s’il existe entre deux
sommets un chemin de G0 qui passe par l’arête e, alors (en faisant un détour par les arêtes
E(C) \ {e}) il existe entre ces deux mêmes sommets, un chemin de G0 qui ne passe pas par
e et qui donc est également un chemin de H.

Donc le graphe H est une représentation planaire connexe ; il découle donc de l’item (i) et
de l’équation (3.3) que H satisfait la formule d’Euler.

Donc,

2 = V (H) + F (H) − E(H)

   
= V (G0 ) + F (G0 ) − 1 − E(G0 ) − 1 .h Voir (i), (ii) et (iii). i


= V (G0 ) + F (G0 ) − E(G0 ) .h Propriétés de l’arithmétique. i

On a donc à la fois que G0 satisfait et ne satisfait pas la formule d’Euler. Ceci est une contra-
diction.

Cas 2 : G0 ne contient pas de cycle.


Comme G0 est connexe, G0 est donc un arbre.

Donc F (G0 ) = 1.

. h Car une représentation planaire qui est un arbre n’a qu’une région, la région extérieure. i

De plus, par le théorème 3.4.2 , on sait que V (G0 ) = E(G0 ) + 1.

Ce qui implique que
V (G0 ) − E(G0 ) = 1

On a donc que
V (G0 ) + F (G0 ) − E(G0 ) = 1 + 1 = 2

Ainsi, dans ce 2ème cas, nous avons également que G0 satisfait et ne satisfait pas la formule
d’Euler.
Encore une fois, donc, nous obtenons une contradiction. .
C.Q.F.D.

Proposition 3.5.4 Nombre d’arêtes maximal d’un


graphe planaire.
Soit G un graphe planaire connexe tel que V (G) ≥ 4, alors


E(G) ≤ 3 V (G) − 6 .

220 CHAPITRE 3. THÉORIE DES GRAPHES

Démonstration de la proposition 3.5.4


Soit G la représentation planaire d’un graphe planaire connexe, tel que V (G) ≥ 4.

Voici deux observations :

1. Comme G est connexe et a au moins 4 sommets, chaque région de G a au moins 3


arêtes. * +
Les seules exceptions étant les graphes •, •—• et •—•—•
.
qui ont tous moins de 4 sommets.

2. Chaque arête de G est contenue dans au plus 2 régions de G. .h Voir le lemme 3.5.2. i

Notons par f1 , f2 , . . . , f|F (G)| les régions de G et par mi le nombre d’arêtes contenues dans la
région fi pour i ∈ {1, 2, . . . , |F (G)|}.
Alors, il découle des deux observations que

3 F (G) ≤ m1 + m2 + · · · + m|F (G)| ≤ 2 E(G)

Ce qui implique que 2


F (G) ≤ E(G) (3.4)

3


Par la formule d’Euler, on sait que 2 = V (G) + F (G) − E(G) .

En combinant avec l’équation (3.4), on obtient


2
2 ≤ V (G) + E(G) − E(G)

3
C’est-à-dire 1
2 ≤ V (G) − E(G)

3
C’est-à-dire
1
E(G) ≤ V (G) − 2

3
C’est-à-dire
E(G) ≤ 3 V (G) − 6 .

.
C.Q.F.D.
3.5. GRAPHES PLANAIRES 221

Proposition 3.5.5 Tout graphe planaire a un sommet de degré ≤ 5.

Démonstration de la proposition 3.5.5


Supposons le contraire.
Soit G un graphe planaire de degré minimum ≥ 6.
Notons par dM ax le degré maximum de G
et par ni le nombre de sommets de degré i pour i = 6, 7, . . . , dM ax .

Alors on a 1
E(G) = (6n6 + 7n7 + 8n8 + · · · + dM ax ndM ax ) (3.5)

2


Par la proposition 3.5.4, on sait que E(G) ≤ 3 V (G) − 6.

En combinant avec l’équation (3.5), on obtient

1
(6n6 + 7n7 + 8n8 + · · · + dM ax ndM ax ) ≤ 3 (n6 + n7 + n8 + · · · + ndM ax ) − 6
2
C’est-à-dire

(6n6 + 7n7 + 8n8 + · · · + dM ax ndM ax ) ≤ 6 (n6 + n7 + n8 + · · · + ndM ax ) − 12

C’est-à-dire

n7 + 2n8 + · · · + (dM ax − 6)ndM ax ≤ −12 (3.6)

Notons que n7 + 2n8 + · · · + (dM ax − 6)ndM ax ≥ 0


. h Car c’est le résultat de sommes et de produits de nombres positifs ou nuls. i

L’équation (3.6) nous donne donc qu’un nombre ≥ 0 est plus petit ou égal à −12,
ce qui est une contradiction. .
C.Q.F.D.
222 CHAPITRE 3. THÉORIE DES GRAPHES

3.6 Chaı̂nes et chemins

3.6.1 Propriétés d’un graphe connexe

Proposition 3.6.1 Connexité et chaı̂ne élémentaires.


Un graphe G est connexe si et seulement si pour toute paire x, y de sommets de G, il existe
une chaı̂ne élémentaire dont les extrémités sont x et y.

Démonstration de la proposition 3.6.1

Une idée de cette démonstration sera faite en classe.

3.6.2 Cycles d’un graphe

Proposition 3.6.2 Connexité d’un cycle


a : Un cycle est toujours 2-arêtes-connexe ;
b : Un cycle élémentaire est toujours 2-connexe (et donc 2-arêtes-connexe).

Démonstration de la proposition 3.6.2

Une idée de cette démonstration sera faite en classe.

Proposition 3.6.3 Connexité d’un cycle


Soit H un graphe (fini), alors les énoncés suivants sont équivalents :
— H est un cycle élémentaire ;
— H est un graphe connexe et régulier d’ordre 2 ;
— H est un cycle qui ne contient pas d’autre cycle.

Démonstration de la proposition 3.6.3

Une idée de cette démonstration sera faite en classe.


3.6. CHAÎNES ET CHEMINS 223

Définition 3.6.4 Graphes eulériens et cycles eulériens.


Un cycle eulérien d’un graphe est un cycle passant par chacune des arêtes du graphe. Un
graphe qui contient un tel cycle est un graphe eulérien.

Autrement dit, un cycle eulérien d’un graphe G est une séquence de la forme
h x1 , [x1 , x2 ], x2 , [x2 , x3 ], x3 , . . . , xn−1 , [xn−1 , xn ], xn , [xn , x1 ], x1 i,
où chaque arête de E(G) apparaı̂t une et une seule fois.

Théorème 3.6.5 (Euler, Hierholzer, Veblen)


Soit G un graphe fini et connexe. Alors les énoncés suivants sont équivalents :
(i) G est eulérien ;
(ii) G n’a pas de sommet de degré impair ;
(iii) G a une décomposition en cycles élémentaires ;

Démonstration du théorème 3.6.5

Une idée de cette démonstration sera faite en classe.

Un cycle eulérien est une promenade qui passe une et une seule fois par chaque arête du
graphe, la définition suivante est l’analogue “sommet” du cycle eulérien en ce sens qu’il s’agit
d’une promenade qui passe une et une seule fois par chaque sommet.

Définition 3.6.6 Graphes hamiltoniens et cycles hamiltoniens


Un cycle hamiltonien d’un graphe est un cycle élémentaire passant par chacun des sommets
du graphe. Un graphe qui contient un tel cycle est un graphe hamiltonien.

Autrement dit, un cycle hamiltonien d’un graphe G est une séquence de la forme
h x1 , [x1 , x2 ], x2 , [x2 , x3 ], x3 , . . . , xn−1 , [xn−1 , xn ], xn , [xn , x1 ], x1 i,
où chaque sommet de V (G) apparaı̂t une et une seule fois.

Théorème 3.6.7 Kn est hamiltonien ∀n ∈ N∗ .

Le théorème suivant présente un résultat intéressant concernant les graphes hamiltoniens.


Ce théorème ne sera pas démontré dans le cadre de ce cours.
224 CHAPITRE 3. THÉORIE DES GRAPHES

Théorème 3.6.8 (Dirac 1952)


n
Tout graphe ayant n ≥ 3 sommets et degré minimum ≥ 2
est hamiltonien.

Le Théorème 3.6.8 est une conséquence évidente du lemme 3.3.5 et du résultat suivant.

Théorème 3.6.9 (Ore 1960)


Soit G un graphe connexe ayant n ≥ 3 sommets tels que pour toute paire x, y de sommets
distincts non adjacents de G, on a degG (x) + degG (y) ≥ n. Alors G est hamiltonien.

3.6.3 Algorithmes de recherche du plus court chemin

Plusieurs problèmes en informatique peuvent s’exprimer comme un problème de recherche


du chemin le plus court dans un digrahe (ou encore de la chaı̂ne le plus courte dans un graphe).
Par exemple, pour connaı̂tre le chemin le plus court entre deux villes, on peut représenter un
réseau de transport par un digraphe, tel que les sommets correspondent à différentes villes
et les arcs correspondent aux liens (terrestres ou aériens) entre les villes.

Graphes valués

Lorsqu’on s’intéresse à ce genre de problème, on a souvent recours à un graphe valué (ou


digraphe valué) 2 , pour lequel chaque arête du graphe (ou arc du digraphe) est associée à une
valeur. Cette valeur est souvent un nombre réel. Dans le cadre de ce cours, on représente un
graphe valué G en spécifiant une fonction w : E(G) −→ R. (ou une fonction w : A(G) −→ R)
dans le cas d’un digrahe). La figure 3.8 donne un exemple de représentation graphique d’un
graphe valué.

Dans le cas où un digraphe représente un réseau de transport, la valeur associée à chaque
arc peut représenter le temps pour se déplacer d’une ville à l’autre, ou encore le coût engendré
par le déplacement.

Algorithme de Dijkstra

L’algorithme de Dijkstra permet de trouver le plus court chemin entre deux sommets
d’un digraphe valué dont les valeurs des arcs sont non-négatives. La première version de cet
algorithme a été publiée en 1959 par l’informaticien hollandais Edsger Dijkstra (1930 – 2002).
2. On utilise parfois les termes graphe pondéré et digraphe pondéré.
3.6. CHAÎNES ET CHEMINS 225

Figure 3.8 – Exemple d’un graphe valué. (Image provenant de Wikipédia)

Le pseudo-code présenté ci-dessus prend en argument un digraphe G, les valeurs (non-


négatives) des arêtes sous la forme d’une fonction w : A(G) −→ R∗ et une paire de sommets
a, z ∈ V (G) spécifiant les deux sommets entre lesquels on désire trouver un chemin.

Notez que l’algorithme retourne la longueur totale du plus court chemin entre les sommets
a et z. Si aucun chemin ne relie a et z, l’algorithme retourne une valeur infinie (∞).

Algorithme Dijkstra ( Digraphe G, valeurs w, origine a, destination z )


Initialiser :
• Q ← V (G) . h Pendant l’exécution, Q contient les sommets non visités i
• dist(v) ← ∞ ∀v ∈ Q \ {a} .h La distance de tous les sommets (sauf a) est inconnue i
• dist(a) ← 0 . h Le sommet source est à une distance nulle de lui-même i

.
Tant que |Q| > 0 Faire h Tant qu’il reste des sommets à visiter... i

u ← Un élément de Q dont la valeur dist(u) est minimale


Q ← Q \ {u} . h On sélectionne le sommet u à visiter i

Si u = z alors
Retourner dist(z) . h On a trouvé la distance minimale de a à z i
Fin Si

.
Pour tout v ∈ N (u) ∩ Q Faire h Mise à jour de la distance des voisins de u i
Si dist(u) + w(hu, vi) < dist(v) alors
dist(v) ← dist(u) + w(hu, vi)
Fin Si
Fin Pour
Fin Tant que
Retourner ∞ . h Aucun chemin trouvé i
226 CHAPITRE 3. THÉORIE DES GRAPHES

Algorithme de Floyd-Warshall

L’algorithme de Dijkstra s’avère une stratégie efficace pour trouver le plus court chemin
entre deux sommets spécifiques dans un graphe. Dans certaines situations, on désire plutôt
connaı̂tre les plus courts chemins entre toutes les paires de sommets dans un graphe. C’est
ce que permet de faire l’algorithme de Floyd-Warshall. Cet algorithme fut présenté en 1962
de manière indépendante par les informaticiens états-uniens Robert W. Floyd (1936 – 2001)
et Stephen Warshall (1935 – 2006). Le même algorithme avait été formulé en 1959 par le
mathématicien français Bernard Roy (1934 – . . . ).

Algorithme Floyd Warshall ( Digraphe G, valeurs w )



w(hvi , vj i) si hvi , vj i ∈ A(G)



2
Initialiser : dist(vi , vj ) ← 0 si vi = vj ∀ hvi , vj i ∈ V (G)


∞

sinon.

Pour tout vi ∈ V (G) Faire


Pour tout vj ∈ V (G) Faire
Pour tout vk ∈ V (G) Faire

dist(vi , vj ) ← min{ dist(vi , vj ), dist(vi , vk ) + dist(vk , vj ) }

Fin Pour
Fin Pour
Fin Pour

Retourner dist . h Retourne les distances entre toutes les paires de sommets i

Notez que si le digraphe G comporte n sommets numérotés tels que V (G) = {v1 , v2 , . . . , vn },
l’étape d’initialisation est équivalente à créer une matrice de taille n × n. Ainsi, l’algo-
rithme Floyd-Warshall est souvent implanté à l’aide d’une matrice et les boucles de la forme
“Pour tout vi ∈ V (G)” sont remplacées par des boucles “Pour tout i de 1 à n”.
3.6. CHAÎNES ET CHEMINS 227

3.6.4 Exercices sur les chaı̂nes et chemins

Exercice 1 : Pour chacun des graphes ci-dessous, dites s’il s’agit d’un graphe
a) eulérien. Si oui, exhibez un cycle eulérien.
b) hamiltonien. Si oui, exhibez un cycle hamiltonien.

K7 K4,2 K3,3 Le dodécaèdre

Le graphe de Petersen Le graphe d’Heawood Le graphe d’Herschel

Exercice 2 : On veut asseoir cinq couples autour d’une table ronde de telle sorte que pour
chaque deux couples, au moins un des membres du premier couple soit assis à côté d’au moins
un membre du deuxième couple. Est-ce possible ?

Exercice 3 : L’algorithme de Dijkstra présenté à la page 225 retourne la longueur du plus


court chemin entre le sommet d’origine et le sommet de destination z, mais ne permet pas de
connaı̂tre la nature de ce chemin. Suggérez une modification à l’algorithme afin qu’il retourne
le chemin le plus court (sous la forme, par exemple, d’une liste de sommets).
228
229

Annexe A

Alphabet grec

Lettre minuscule Lettre majuscule Nom français


α A alpha
β B bêta
γ Γ gamma
δ ∆ delta
 E epsilon
ζ Z zêta
η H êta
θ Θ thêta
ι I iota
κ K kappa
λ Λ lambda
µ M mu
ν N nu
ξ Ξ xi
o O omicron
π Π pi
ρ P rhô
σ Σ sigma
τ T tau
υ Y upsilon
φ Φ phi
χ X chi
ψ Ψ psi
ω Ω omega
Annexe B

Documents LATEX

LaTeX (prononcé “la-tek”) est un langage permettant de rédiger des documents de qualité
professionnelle (dont le présent document !). Son utilisation est particulièrement répandue
en informatique et en mathématiques, car il permet d’inclure facilement des expressions
mathématiques au travers du texte, contrairement à plusieurs éditeurs de texte populaires,
tel Microsoft Word. Mais la relative facilité avec laquelle il est possible de créer de très
beaux documents à l’aide de Latex font que cet outil est aussi utilisé dans plusieurs autres
domaines 1 .

Ce langage peut sembler rébarbatif au premier abord, et son apprentissage demande


une certaine persévérance. Cela dit, une fois qu’on y est habitué, il devient impensable de
rédiger des documents à fort contenu mathématique autrement ! Dans le cadre de ce cours,
l’utilisation de Latex n’est pas obligatoire. Nous pensons toutefois qu’il agit d’un bon ap-
prentissage, particulièrement pour les étudiants qui envisagent de continuer leurs études aux
cycles supérieurs, car ils utiliseront assurément Latex pour rédiger des articles destinés à des
conférences et des journaux scientifiques.

Pour la petite histoire, Latex est basé sur le langage TeX, qui a été développé par l’in-
formaticien célèbre Donald Knuth (récipiendaire d’un prix Turing en 1974), au début de la
rédaction de son ouvrage “The Art of Computer Programming”. Voici ce qu’on en dit sur
Wikipédia 2 :
Mécontent de la façon dont étaient imprimés ses livres, [Knuth] consacra plusieurs
années de sa vie, à partir de 1977, pour écrire un logiciel lui permettant d’obtenir
un rendu correct des formules mathématiques pour la typographie professionnelle.
1. Certaines rumeurs veulent que des étudiants au baccalauréat en histoire et en philosophie aient vu leurs
notes augmentées d’au moins 5% depuis qu’ils utilisent Latex pour rédiger leurs dissertations !
2. http://fr.wikipedia.org/wiki/Donald_Knuth, 10 septembre 2011

230
231

[...] Le but de Knuth quand il a créé TeX était d’avoir un langage de description
de contenu permettant d’obtenir un rendu de grande qualité avec un minimum
d’efforts et qui serait indépendant de l’architecture matérielle. Fourni avec ses
sources, TeX est l’un des premiers logiciels libres, ou presque.

Avant goût de l’environnement mathématique de Latex

Un fichier source Latex n’est qu’un document texte dans lequel on insère différentes
commandes qui seront ensuite traduites lors de la compilation. À l’intérieur d’un para-
graphe, on peut à tout moment entourer une expression de signes de dollar pour invoquer
l’“environnement mathématique”. Par exemple, l’expression “$x^2 + y^2 = z^2$” sera tra-
duite par le compilateur Latex en x2 + y 2 = z 2 . Voici quelques autres exemples d’expressions
mathématiques (l’environnement “itemize” est utilisé pour produire une liste) :

\begin{itemize}
\item $x_1^a \cdot x_2^a = (x_1 \cdot x_2)^a$;
\item $\neg (p \wedge q) \Leftrightarrow \neg p \vee \neg q$;
\item $(S \cup T)^c = S^c \cap T^c$;
\item $A \subseteq B \Leftrightarrow \{ \forall e \ | \ e \in A \Rightarrow e \in B \}$;
\item $\rho \subset \mathbb{N} \times \mathbb{N}^*$.
\end{itemize}

Voici le rendu du code précédent une fois compilé par Latex :


— xa1 · xa2 = (x1 · x2 )a ;
— ¬(p ∧ q) ⇔ ¬p ∨ ¬q ;
— (S ∪ T )c = S c ∩ T c ;
— A ⊆ B ⇔ {∀e | e ∈ A ⇒ e ∈ B} ;
— ρ ⊂ N × N∗ .

Pour écrire des formules mathématiques sur plusieurs lignes, on peut utiliser un bloc “eqnar-
ray” :

\begin{eqnarray*}
\beta_0 + \sum_{\alpha=1}^n \alpha &=& \beta_0 + 1+2+3 + \ldots + n \\
&=& \beta_0 + \frac{n \cdot (n+1)}{2} \\
&=& \beta_0 + \frac{1}{2} \left( n^2 + n \right) \\
&\leq& \beta_0 + n^2 \ .
\end{eqnarray*}
232 ANNEXE B. DOCUMENTS LATEX

Ce qui, une fois compilé, produira le contenu suivant :


n
X
β0 + α = β0 + 1 + 2 + 3 + . . . + n
α=1
n · (n + 1)
= β0 +
2
1 2 
= β0 + n +n
2
≤ β0 + n2 .

La section suivante présente quelques références grâce auxquelles vous pourrez en ap-
prendre davantage. On vous fournira aussi, sur le site web du cours, quelques documents
sources en exemple.

Références Latex

Il existe beaucoup de sites web de références pour apprendre à utiliser Latex. En voici
quelques-uns :
— Wikibooks (la version française ne semble pas être une traduction directe de la version
anglaise. À vous de choisir la version qui vous convient le mieux !)
— En français : http://fr.wikibooks.org/wiki/LaTeX
— En anglais : http://en.wikibooks.org/wiki/LaTeX

— The Not So Short Introduction to Latex : considéré par plusieurs comme LA référence.
Les explications sont très complètes, peut-être même un peu trop si vous voulez vous
en tenir aux connaissances de base :
— Version originale anglaise : http://mirror.ctan.org/info/lshort/english/lshort.
pdf
— Traduction francaise : http://mirror.ctan.org/info/lshort/french/lshort-fr.
pdf

— Art of Problem Solving (en anglais seulement) : ce site web contient des explications
claires et succinctes pour débuter avec Latex, bien qu’il prend parfois en considération
que vous utilisez l’éditeur TeXnicCenter sous Windows.
http://www.artofproblemsolving.com/Wiki/index.php/LaTeX:About

— Detexify2 - LaTeX symbol classifier : il suffit de dessiner un symbole avec la souris et


le système suggère le symbole Latex correspondant (utile et amusant !) :
233

http://detexify.kirelabs.org/

— MαthIM : Un système de clavardage en ligne qui accepte les formules Latex.


http://mathim.com/

Logiciels pour utiliser Latex

Pour pouvoir compiler un fichier Latex, il vous faut une distribution contenant les paquets
définissant les commandes et le compilateur Latex. Une fois que vous possédez cela, il est
possible d’écrire votre document à l’aide d’un simple éditeur de texte (tel “notepad” sous
Windows !), pour ensuite le compiler en ligne de commande à l’aide de l’exécutable pdflatex.
Cette méthode de travail est peu conviviale, c’est pourquoi il existe des éditeurs de code
Latex, qui offrent plusieurs raccourcis pour faciliter la rédaction du document source et pour
exécuter les commandes de compilation. Il s’agit exactement de la même logique que lorsque
vous utilisez un environnement de développement pour écrire le code source d’un programme
informatique.

Linux La distribution Latex est “TeX Live” et un éditeur convivial est “Kile”. Nous vous
suggérons aussi d’installer le paquet “texlive-lang-french” pour pouvoir écrire convenablement
les accents et guillemets. Vous pouvez normalement installer ces programmes à partir de la
plupart des gestionnaires de paquet. Sous Ubuntu, la ligne de commande suivante effectuera
tout le travail nécessaire :
— sudo apt-get install texlive texlive-lang-french kile

Windows La distribution Latex répandue est “MiKTeX” et un éditeur communément


utilisé est “TeXnicCenter”. Lors de la compilation de sources Latex nécessitant des paquets
que vous ne possédez pas, MiKTeX vous suggérera de les installer automatiquement.
— http://miktex.org/
— http://www.texniccenter.org/

MacOS La distribution Latex répandue est “TeX Live” et un éditeur communément utilisé
est “TeXShop”. Sur le site de TeXShop, il est possible de télécharger un gros fichier contenant
tout ce que vous pouvez avoir besoin
— http://pages.uoregon.edu/koch/texshop/
234 ANNEXE B. DOCUMENTS LATEX

Latex et Subversion (SVN)

Étant donné que les fichiers sources d’un document Latex sont des fichiers textes, ils se
prêtent bien à l’utilisation d’un système de versionnage de fichiers, tel SVN (ou encore CVS
ou Git). Cela peut être un bon moyen de travailler en équipe, ou simplement de s’assurer que
vos documents sont conservés en sécurité sur un serveur distant.

Tous les étudiants qui suivent un cours au département d’informatique et de génie logiciel
peuvent demander d’obtenir un dépôt SVN hébergé par les serveurs de la faculté. Il suffit de
remplir un formulaire sur le site web PIXEL (une fois connecté à votre compte PIXEL, allez
dans le menu “Aplications → Logiciels → Création d’un dépôt SVN”).
Références et suggestions de lecture

[1] Cogis, O. et C. Robert, Au-delà des ponts de königsberg théorie des graphes problèmes,
théorèmes, algorithmes, Vuibert, 2003.
[2] Doxiadis, A. et C. H. Papadimitriou, Logicomix : an epic search for truth, Bloomsbury,
2009.
[3] Doxiadis, A. et C. H. Papadimitriou, Logicomix, Vuibert, Paris, 2010, Traduction
française de : Logicomix : an epic search for truth.
[4] Goodaire, E. G. et M. M. Parmenter, Discrete mathematics with graph theory, Prentice
Hall PTR, Upper Saddle River, NJ, USA, 2nd edition, 2001.
[5] Graham, R. L., D. E. Knuth et O. Patashnik, Concrete Mathematics : A Foundation
for Computer Science (2nd Edition), Addison-Wesley Professional, 2nd edition, 1994.
[6] Rosen, K. H., Mathématiques discrètes, Chenelière/McGraw-Hill, Montréal-Toronto,
1998, Traduction de la 3e édition : Discrete Mathematics and its applications.
[7] Velleman, D. J., How to prove it : a structured approach, Cambridge University Press,
2nd edition, 2006.

235
236 RÉFÉRENCES ET SUGGESTIONS DE LECTURE
Section 1.1.6 – Exercices sur l’algèbre booléenne

Exercice 1 : Démontrez les propriétés suivantes à l’aide d’une table de vérité :


a) Deuxième loi de De Morgan (Proposition 1.1.4-b) : ¬(p ∨ q) ⇔ ¬p ∧ ¬q.
Réponse : Soit p et q deux expressions booléennes.

p q p∨q ¬(p ∧ q) ¬p ¬q (¬p ∧ ¬q)


v v v f f f f
v f v f f v f
f v v f v f f
f f f v v v v

Pour toutes les combinaisons de valeurs de vérité possibles attribuables aux expressions
p et q, les expressions “¬(p ∨ q)” et “¬p ∧ ¬q” sont équivalentes. .
C.Q.F.D.

b) Distributivité de la disjonction (Proposition 1.1.7-f) : (p ∧ q) ∨ r ⇔ (p ∨ r) ∧ (q ∨ r).


Réponse : Soit p, q et r des expressions booléennes.

p q r p∧q (p ∧ q) ∨ r p∨r q∨r (p ∨ r) ∧ (q ∨ r)


v v v v v v v v
v v f v v v v v
v f v f v v v v
v f f f f v f f
f v v f v v v v
f v f f f f v f
f f v f v v v v
f f f f f f f f

Pour toutes les combinaisons de valeurs de vérité possibles attribuables aux expressions
p, q et r, les expressions “(p ∧ q) ∨ r” et “(p ∨ r) ∧ (q ∨ r)” sont équivalentes. .
C.Q.F.D.
Exercice 2 : Démontrez les propriétés de la technique de démonstration par successions
d’équivalences :
a) Deuxième loi de De Morgan (Proposition 1.1.4-b) : ¬(p ∨ q) ⇔ ¬p ∧ ¬q.
NB : Vous pouvez utiliser la Première loi de De Morgan (Proposition 1.1.4-a) et la
propriété de la double négation (Proposition 1.1.5-a).
Réponse : Soit p et q deux expressions booléennes. Démontrons “¬(p ∨ q) ⇔ ¬p ∧
¬q” :

¬(p ∨ q)
⇔ h Prop 1.1.5-a – Double négation, 2 fois i
¬( ¬(¬p) ∨ ¬(¬q) )
⇔ h Prop 1.1.4-a – Première loi de De Morgan, avec [p := (¬p)] et [q := (¬q)] i
¬( ¬(¬p ∧ ¬q) )
⇔ h Prop 1.1.5-a – Double négation, avec [p := (¬p ∧ ¬q)] i
¬p ∧ ¬q
C.Q.F.D.
.
b) Distributivité de la disjonction (Proposition 1.1.7-f) : (p ∧ q) ∨ r ⇔ (p ∨ r) ∧ (q ∨ r).
NB : Vous pouvez utiliser les lois de De Morgan (Proposition 1.1.4), la distributivité
de la conjonction (Proposition 1.1.6-f) et la propriété de la double négation (Proposi-
tion 1.1.5-a).
Réponse : Soit p, q et r des expressions booléennes. Démontrons “(p ∧ q) ∨ r ⇔
(p ∨ r) ∧ (q ∨ r)” :
(p ∧ q) ∨ r
⇔ h Prop 1.1.5-c – Double négation i
¬[¬( (p ∧ q) ∨ r) ]
⇔ h Prop 1.1.4-b – Deuxième loi de De Morgan, avec [p := (p ∧ q)] et [q := r)] i
¬[¬(p ∧ q) ∧ ¬r]
⇔ h Prop 1.1.4-a – Première loi de De Morgan i
¬[(¬p ∨ ¬q) ∧ ¬r]
⇔ h Prop 1.1.6-f – Distributivivité de la conjonction, avec [p := ¬p], [q := ¬q] et [r := ¬r] i
¬[(¬p ∧ ¬r) ∨ (¬q ∧ ¬r)]
⇔ h Prop 1.1.4-b – Deuxième loi de De Morgan, deux fois i
¬[¬(p ∨ r) ∨ ¬(q ∨ r)]
⇔ h Prop 1.1.4-a – Première loi de De Morgan, avec [p := (p ∨ r)] et [q := q ∨ r)] i
¬[¬( (p ∨ r) ∧ (q ∨ r) )]
⇔ h Prop 1.1.5-c – Double négation i
(p ∨ r) ∧ (q ∨ r)
C.Q.F.D.
.

c) Contradiction (Proposition 1.1.5-c) : p ∧ ¬p ⇔ faux.


Réponse : Soit p une expressions booléenne. Démontrons “p ∧ ¬p ⇔ faux” :

p ∧ ¬p
⇔ h Prop 1.1.5-c – Double négation i
¬(¬p) ∧ ¬p
⇔ h Prop 1.1.4-b – Deuxième loi de De Morgan i
¬(¬p ∨ p)
⇔ h Prop 1.1.7-d – Commutativité de la disjonction i
¬(p ∨ ¬p)
⇔ h Prop 1.1.5-b – Tiers exclu i
¬(vrai)
⇔ h Def 1.1.1 – Définition de la négation i
faux
. C.Q.F.D.

Exercice 3 : Considérez l’opérateur ou exclusif “Y” possédant la table de vérité suivante :

p q pYq
v v f
v f v
f v v
f f f

Écrivez une définition possible de l’opérateur “Y” en utilisant seulement (justifiez brièvement
vos réponses) :
a) L’opérateur de négation “¬”, de disjonction “∨” et de conjonction “∧” ;
Réponse : On se base sur l’observation suivante : “p Y q” est vraie lorsque p et q
sont différents, c’est-à-dire que l’un est vrai et que l’autre est faux. On obtient :

def
p Y q = (p ∧ ¬q) ∨ (¬p ∧ q) .

b) L’opérateur de négation “¬” et de disjonction “∨” ;


Réponse : À partir de l’expression trouvée en (a), on applique la première loi de De
Morgan sur les deux expressions entre parenthèses. On obtient :

def
p Y q = ¬(¬p ∨ q) ∨ ¬(p ∨ ¬q) .

c) L’opérateur de négation “¬” et le si et seulement si “⇔” .


Réponse : À partir de la solution trouvée en (b), on transforme les deux expression
entre parenthèses en appliquant la définition de l’implication. On obtient :

¬(p ⇒ q) ∨ ¬(q ⇒ p) .

Par la suite, on applique la première loi de De Morgan pour transformer la disjonction


en conjonction :
¬ [ (p ⇒ q) ∧ (q ⇒ p) ] .

Finalement, on applique simplement la définition de l’opérateur si et seulement si :

def
p Y q = ¬(p ⇔ q) .

Exercice 4 : Démontrez chacune des propriétés suivantes à l’aide des deux techniques de
démonstration vues jusqu’à maintenant, c’est-à-dire (i) par une table de vérité et (ii) par une
succession d’équivalences :

a) (¬p ⇔ ¬q) ⇔ (p ⇔ q)
Réponse (i) : Soit p et q deux expressions booléennes.

p q ¬p ¬q (¬p ⇔ ¬q) (p ⇔ q)
v v f f v v
v f f v f f
f v v f f f
f f v v v v

Pour toutes les combinaisons de valeurs de vérité possibles attribuables aux expressions
p et q, les expressions “(¬p ⇔ ¬q)” et “(p ⇔ q)” sont équivalentes. .
C.Q.F.D.
Réponse (ii) : Soit p et q deux expressions booléennes.

p⇔q
⇔ h Def 1.1.3 – Définition du si et seulement si i
(p ⇒ q) ∧ (q ⇒ p)
⇔ h Prop 1.1.8 – Contraposition, 2 fois i
(¬q ⇒ ¬p) ∧ (¬p ⇒ ¬q)
⇔ h Prop 1.1.6-d – Commutativité de la conjonction i
(¬p ⇒ ¬q) ∧ (¬q ⇒ ¬p)
⇔ h Def 1.1.3 – Définition du si et seulement si i
¬p ⇔ ¬q
. C.Q.F.D.

b) (¬p ⇔ q) ⇔ (p ⇔ ¬q)
Réponse (i) :Soit p et q deux expressions booléennes.

p q ¬p ¬q (¬p ⇔ q) (p ⇔ ¬q)
v v f f f f
v f f v v v
f v v f v v
f f v v f f
Pour toutes les combinaisons de valeurs de vérité possibles attribuables aux expressions
p et q, les expressions “(¬p ⇔ q)” et “(p ⇔ ¬q)” sont équivalentes. .
C.Q.F.D.
Réponse (ii) : Soit p et q deux expressions booléennes.

¬p ⇔ q
⇔ h Résultat démontré en (a), avec [p := (¬p)] i
¬(¬p) ⇔ ¬q
⇔ h Prop 1.1.5-a – Double négation i
p ⇔ ¬q
. C.Q.F.D.

c) (¬p ⇔ q) ⇔ ¬(p ⇔ q)
Réponse (i) : Soit p et q deux expressions booléennes.
p q ¬p (¬p ⇔ q) (p ⇔ q) ¬(p ⇔ q)
v v f f v f
v f f v f v
f v v v f v
f f v f v f

Pour toutes les combinaisons de valeurs de vérité possibles attribuables aux expres-
sions p et q, les expressions “(¬p ⇔ q)” et “¬(p ⇔ q)” sont équivalentes. .
C.Q.F.D.
Réponse (ii) : Soit p et q deux expressions booléennes.
¬p ⇔ q
⇔ h Page 20 des notes de cours – Réécriture du si et seulement si i
(¬p ∧ q) ∨ (¬(¬p) ∧ ¬q)
⇔ h Prop 1.1.5-a – Double négation i
(¬p ∧ ¬(¬q)) ∨ (¬(¬p) ∧ ¬q)
⇔ h Prop 1.1.4-b – Loi de De Morgan, 2 fois i
¬(p ∨ ¬q) ∨ ¬(¬p ∨ q)
⇔ h Prop 1.1.4-a – Loi de De Morgan, avec [p := (p ∨ ¬q)] et [q := (¬p ∨ q)] i
¬( (p ∨ ¬q) ∧ (¬p ∨ q) )
⇔ h Prop 1.1.6-d – Commutativité de la conjonction i
¬( (¬p ∨ q) ∧ (p ∨ ¬q) )
⇔ h Def 1.1.2-b – Définition de l’implication, 2 fois i
¬( (p ⇒ q) ∧ (q ⇒ p) )
⇔ h Def 1.1.3 – Définitions du si et seulement si i
¬( p ⇔ q )
. C.Q.F.D.

d) ( ¬p ⇒ (p ⇒ q) ) ⇔ vrai
Réponse : Soit p et q deux expressions booléennes.
p q ¬p (p ⇒ q) ( ¬p ⇒ (p ⇒ q) )
v v f v v
v f f f v
f v v v v
f f v v v

Pour toutes les combinaisons de valeurs de vérité possibles attribuables aux expressions
p et q, l’expression “( ¬p ⇒ (p ⇒ q) )” s’évalue à vrai. .
C.Q.F.D.
Réponse (ii) : Soit p et q deux expressions booléennes.

¬p ⇒ (p ⇒ q)
⇔ h Def 1.1.2-a – Définition de l’implication i
¬p ⇒ (¬p ∨ q)
⇔ h Def 1.1.2-a – Définition de l’implication, avec [p := ¬p] et [q := (¬p ∨ q)] i
¬(¬p) ∨ ¬p ∨ q
⇔ h Prop 1.1.5-a – Double négation i
p ∨ ¬p ∨ q
⇔ h Prop 1.1.5-b – Tiers exclu i
D ∨q
vrai E
⇔ Prop 1.1.7-b – Élément absorbant
vrai
. C.Q.F.D.

e) (p ⇒ (¬p ⇒ q) ) ⇔ vrai
Réponse (i) :Soit p et q deux expressions booléennes.

p q ¬p (¬p ⇒ q) ( p ⇒ (¬p ⇒ q) )
v v f v v
v f f v v
f v v v v
f f v f v
Pour toutes les combinaisons de valeurs de vérité possibles attribuables aux expressions
p et q, l’expression “( p ⇒ (¬p ⇒ q) )” s’évalue à vrai. .
C.Q.F.D.

Réponse (ii) : Soit p et q deux expressions booléennes.

p ⇒ (¬p ⇒ q)
⇔ h Prop 1.1.5-a – Double négation i
¬(¬p) ⇒ (¬p ⇒ q)
⇔ h Résultat démontré en (d), avec p := (¬p)] i
vrai
. C.Q.F.D.
f) (p ⇒ faux) ⇔ ¬p
Réponse (i) : Soit p une expression booléenne.

p p ⇒ faux ¬p
v f f
f v v
Pour les deux valeurs de vérité attribuables à l’expression p, les expressions p ⇒ faux
et ¬p sont équivalentes. .
C.Q.F.D.
Réponse (ii) : Soit p une expression booléenne.

p ⇒ faux
⇔ h Def 1.1.2-a – Définition de l’implication i
¬pD∨ faux E
⇔ Prop 1.1.7-a – Élément neutre
¬p
. C.Q.F.D.

Exercice 5 : Déterminez si les instances suivantes du problème SAT sont satisfiables. Pour les
instances satisfiables, fournissez une assignation de variables telle que l’expression booléenne
est vraie. Pour les instances insatisfiables, démontrez votre résultat à l’aide d’une table de
vérité.
a) ψa = (x1 ∨ x2 ) ∧ x3 ∧ (¬x1 ∨ ¬x3 ) ∧ (¬x2 ∨ ¬x3 ).
Réponse : L’instance ψa est insatisfiable, comme le montre la table de vérité suivante :
c c2 c c ψa
z }|1 { z}|{ z }|3 { z }|4 { z }| {
x1 x2 x3 x1 ∨ x2 x3 ¬x1 ∨ ¬x3 ¬x2 ∨ ¬x3 c1 ∧ c2 ∧ c3 ∧ c4
v v v v v f f f
v v f v f v v f
v f v v v f v f
v f f v f v v f
f v v v v v f f
f v f v f v v f
f f v f v v v f
f f f f f v v f
b) ψb = (x1 ∨ x2 ) ∧ x3 ∧ (x1 ∨ ¬x3 ) ∧ (¬x2 ∨ ¬x3 ).
Réponse : L’instance ψb est satisfiable. En effet, l’assignation de variables suivante
satisfait ψb : x1 = vrai, x2 = faux, x3 = vrai .

c) ψc = (x1 ∨ x2 ) ∧ (¬x1 ∨ x3 ) ∧ (x1 ∨ ¬x2 ) ∧ (¬x2 ∨ x3 ) ∧ (¬x1 ∨ ¬x3 ).


Réponse : L’instance ψa est insatisfiable, comme le montre la table de vérité suivante :

c c c c c ψc
z }|1 { z }|2 { z }|3 { z }|4 { z }|5 { z }| {
x1 x2 x3 x1 ∨ x2 ¬x1 ∨ x3 x1 ∨ ¬x2 ¬x2 ∨ x3 ¬x1 ∨ ¬x3 c1 ∧ c2 ∧ c3 ∧ c4 ∧ c5
v v v v v v v f f
v v f v f v f v f
v f v v v v v f f
v f f v f v v v f
f v v v v f v v f
f v f v v f f v f
f f v f v v v v f
f f f f v v v v f

d) ψd = (¬x1 ∨ ¬x2 ∨ x3 ) ∧ (x1 ∨ ¬x3 ∨ x4 ) ∧ (¬x2 ∨ x3 ∨ ¬x4 ).


Réponse : L’instance ψd est satisfiable. En effet, l’assignation de variables suivante
satisfait ψd : x1 = faux, x2 = faux, x3 = faux, x4 = faux .

Exercice 6 : En utilisant les propriétés que nous avons vues dans cette section, réécrivez les
expression suivantes sous forme normale conjonctive :

a) x1 ⇔ x2
Réponse :

x1 ⇔ x2
⇔ (x1 ⇒ x2 ) ∧ (x2 ⇒ x1 ) h Def 1.1.3 – Définition du si et seulement si i
⇔ (¬x1 ∨ x2 ) ∧ (x1 ∨ ¬x2 ) h Def 1.1.2-a – Définition de l’implication (2 fois) i

b) (x1 ∨ x2 ) ∧ (x3 ∨ x4 )
Réponse : L’expression est déjà sous forme normale conjonctive !
c) (x1 ∧ x2 ) ∨ (x3 ∧ x4 )
Réponse :

(x1*∧ x2 ) ∨ (x3 ∧ x4 ) +
Prop 1.1.7-f – Distributivité de la disjonction, avec [p := x1 ], [q := x2 ]

et [r := (x3 ∧ x4 )]
[x1 ∨ (x3 ∧ x4 )] ∧ [x2 ∨ (x3 ∧ x4 )]
⇔ h Prop 1.1.7-f – Distributivité de la disjonction (2 fois) i
[(x1 ∨ x3 ) ∧ (x1 ∨ x4 )] ∧ [(x2 ∨ x3 ) ∧ (x2 ∨ x4 )]
⇔ h Priorité des opérateurs i
(x1 ∨ x3 ) ∧ (x1 ∨ x4 ) ∧ (x2 ∨ x3 ) ∧ (x2 ∨ x4 )

d) (x1 ⇒ x2 ) ⇒ ((x3 ⇒ x4 ) ⇒ x5 )
Réponse :

(x1 ⇒ x2 ) ⇒ ((x3 ⇒ x4 ) ⇒ x5 )
⇔ h Def 1.1.2 Définition de l’implication (2 fois) i
¬(x1 ⇒ x2 ) ∨ (¬(x3 ⇒ x4 ) ∨ x5 )
⇔ h Def 1.1.2 Définition de l’implication (2 fois) i
¬(¬x1 ∨ x2 ) ∨ (¬(¬x3 ∨ x4 ) ∨ x5 )
⇔ h Prop 1.1.4-b Deuxième loi de De Morgan (2 fois) i
(¬¬x1 ∧ ¬x2 ) ∨ ((¬¬x3 ∧ ¬x4 ) ∨ x5 )
⇔ h Prop 1.1.5-a Double négation (2 fois) i
(x1 ∧ ¬x2 ) ∨ ((x3 ∧ ¬x4 ) ∨ x5 )
⇔ h Prop 1.1.7-f Distributivité de la disjonction i
(x1 ∧ ¬x2 ) ∨ ((x3 ∨ x5 ) ∧ (¬x4 ∨ x5 ))
⇔ h Prop 1.1.7-f Distributivité de la disjonction i
((x1 ∧ ¬x2 ) ∨ (x3 ∨ x5 )) ∧ ((x1 ∧ ¬x2 ) ∨ (¬x4 ∨ x5 ))
⇔ h Prop 1.1.7-f Distributivité de la disjonction (2 fois) i
((x1 ∨ (x3 ∨ x5 )) ∧ (¬x2 ∨ (x3 ∨ x5 ))) ∧ ((x1 ∨ (¬x4 ∨ x5 )) ∧ (¬x2 ∨ (¬x4 ∨ x5 )))
⇔ h Piorité des opérateurs i
(x1 ∨ x3 ∨ x5 ) ∧ (¬x2 ∨ x3 ∨ x5 ) ∧ (x1 ∨ ¬x4 ∨ x5 ) ∧ (¬x2 ∨ ¬x4 ∨ x5 )
Exercice 7 : Imaginons qu’on vous demande d’écrire un “solveur SAT”, c’est-à-dire un pro-
gramme informatique qui reçoit en entrée une instance du problème SAT (soit une expression
booléenne sous forme normale conjonctive) et détermine si cette instance est satisfiable.

a) Votre programme reçoit en entrée une instance du problème SAT décrite ainsi :

— Un nombre n indiquant le nombre de variables du problème. On représente ces


variables par x1 , x2 , . . . , xn ;
— Une collection de m clauses que l’on représente par C1 , C2 , . . . , Cm .

On vous fournit une fonction déjà programmée “évaluerClause(Cj , a1 , a2 , . . . , an )”


qui retourne le résultat de l’évaluation de la clause Cj (c’est-à-dire vrai ou faux) avec
l’assignation de valeurs x1 = a1 , x2 = a2 , . . . , xn = an .

Expliquez, en vos mots ou à l’aide d’un pseudo-code, la procédure que doit employer
votre programme pour vérifier si une instance est satisfiable ou insatisfiable. Inspirez-
vous de la méthode que vous utilisez pour bâtir une table de vérité.

Réponse (sous forme de texte) : Pour chacune des 2n assignations possibles de


valeurs de vérité aux variables x1 , . . . , xn , effectuer la procédure suivante :

— Vérifier à l’aide de la fonction évaluerClause si l’assignation de variables permet


d’évaluer chacune des m clauses C1 , . . . , Cm à vrai.
— Si chacune des m clauses est vraie avec cette assignation de variables, alors le
programme déclare que l’instance est satisfiable.

Si aucune des 2n assignations de variables n’a permis d’évaluer à vrai l’ensemble des
m clauses, alors le programme déclare que l’instance est insatisfiable.

Réponse (sous forme d’un pseudo-code) : Nous présentons ici le pseudo-code


d’un algorithme, sous forme d’une fonction récursive. L’appel initial à la fonction
doit respecter la forme “solveurSAT(0, C1 , . . . , Cm , a1 , . . . , an )”, où a1 , . . . , an sont
initialement des valeurs quelconques (elles sont initialisées au cours de l’exécution de
l’algorithme). L’algorithme retourne la valeur vrai si l’instance est satisfiable et faux
si l’instance est insatisfiable.
solveurSAT(i, C1 , . . . , Cm , a1 , . . . , an )
i←i+1
Si i > n alors
Pour j = 1 à m Faire
Si évaluerClause(Cj , a1 , . . . , an ) = faux alors
Retourner faux
Fin Si
Fin Pour
Retourner vrai
Sinon
ai ← vrai
eval1 ← solveurSAT(i, C1 , . . . , Cm , a1 , . . . , an )
ai ← faux
eval2 ← solveurSAT(i, C1 , . . . , Cm , a1 , . . . , an )
Retourner eval1 ∨ eval2
Fin Si

b) Transformez l’expression booléenne suivante sous forme normale conjonctive afin de


pouvoir déterminer si elle est satisfiable à l’aide de votre solveur SAT :

¬[ (p ∨ q) ∧ r ⇒ (p ∧ r) ∨ (q ∧ r) ] .

Réponse : En appliquant successivement les propositions et les définitions des opérateurs


booléens, on transforme l’expression en une expression équivalente qui respecte la
forme normale conjonctive :

¬[ (p ∨ q) ∧ r ⇒ (p ∧ r) ∨ (q ∧ r) ]
⇔ ¬[ ¬( (p ∨ q) ∧ r ) ∨ (p ∧ r) ∨ (q ∧ r) ] h Def 1.1.2-a – Définition de l’implication i
⇔ ¬¬( (p ∨ q) ∧ r ) ∧ ¬( (p ∧ r) ∨ (q ∧ r) ) h Prop 1.1.4-b – Loi de De Morgan i
⇔ (p ∨ q) ∧ r ∧ ¬( (p ∧ r) ∨ (q ∧ r) ) h Prop 1.1.5-a – Double négation i
⇔ (p ∨ q) ∧ r ∧ ¬(p ∧ r) ∧ ¬(q ∧ r) ) h Prop 1.1.4-a – Loi de De Morgan i
⇔ (p ∨ q) ∧ r ∧ (¬p ∨ ¬r) ∧ (¬q ∨ ¬r) ) h Prop 1.1.4-b – Loi de De Morgan (2 fois) i

Remarquez que l’expression obtenue est la même que l’expression ψa de l’exercice 5a.
On sait donc qu’elle est insatisfiable.
c) Serait-il possible d’utiliser votre programme pour vérifier si une expression booléenne
est toujours vraie ? Si oui, expliquez comment. Sinon, expliquez pourquoi.
Réponse : Oui ! Considérons une expression booléenne A. Pour déterminer si l’expres-
sion A est toujours vraie, il suffit d’exécuter le solveur SAT sur sa négation (c’est-à-dire
¬A).
Si le solveur détermine que l’instance ¬A est insatisfiable, cela signifie qu’il n’existe
pas d’assignation de variables telles que l’expression ¬A est vraie, donc l’expression
¬A est toujours fausse, alors l’expression A est toujours vraie. De même, si le solveur
détermine que l’instance ¬A est satisfiable, cela signifie qu’il existe une assignation de
variables telle que l’expression A est fausse.
Bien sûr, il faut transformer l’instance ¬A sous forme normale conjonctive à l’aide des
définitions et des propriétés des opérateurs booléens avant d’exécuter le solveur SAT.

Exercice 8 : À la page 47 du présent document, la section 1.3 débute par une citation d’une
pièce d’Eugène Ionesco, digne représentant du théâtre de l’absurde. Dans cette citation, un
prétendu logicien affirme : “Tous les chats sont mortels. Socrate est mortel. Donc Socrate est
un chat.”

a) Expliquez dans vos propres mots pourquoi ce raisonnement est erroné ;


Réponse : Il est vrai que tous les chats sont mortels, mais cela ne signifie pas que
tous les mortels sont des chats !

b) Réécrivez l’affirmation de l’aspirant logicien en utilisant les opérateurs booléens. Pour


simplifier la tâche, nous vous suggérons d’utiliser les variables c et m pour représenter
les expressions de la manière suivante :

c = Socrate est un chat,


m = Socrate est mortel.

Réponse : Pour faciliter la tâche, on réécrit d’abord l’affirmation ainsi : “Si Socrate
est un chat, alors il est mortel. Socrate est mortel. Donc Socrate est un chat.” Cette
affirmation est équivalente à :

[ (c ⇒ m) ∧ m ] ⇒ c .
c) À partir de l’expression booléenne trouvée en (b), démontrez à l’aide d’une table de
vérité que l’affirmation du pauvre logicien est fausse ;
Réponse :
c m c⇒m (c ⇒ m) ∧ m [ (c ⇒ m) ∧ m ] ⇒ c
v v v v v
v f f f v
f v v v f
f f v f v

La 3e ligne de la table de vérité montre que l’expression n’est pas vraie dans le cas où
c = faux et m = vrai, c’est-à-dire si on pose comme hypothèse “Socrate n’est pas un
chat” et “Socrate est mortel”.

d) Suggérez une modification à l’affirmation du dénommé logicien afin qu’elle soit tou-
jours vraie.
Réponse : On peut imaginer plusieurs solutions, notamment :
— “Tous les chats, et seulement les chats, sont mortels. Socrate est mortel. Donc
Socrate est un chat.” :
[ (c ⇔ m) ∧ m ] ⇒ c .

— “Tous les chats sont mortels. Socrate est un chat. Donc Socrate est mortel.” :

[ (c ⇒ m) ∧ c ] ⇒ m .

— “Tous les mortels sont des chats. Socrate est mortel. Donc Socrate est un chat.” :

[ (m ⇒ c) ∧ m ] ⇒ c .

Ces affirmations peuvent sembler farfelues, mais il s’agit d’expressions booléennes va-
lides, puisqu’elles sont toujours évaluées à vrai pour toutes les valeurs des expressions
c et m. Par exemple, la dernière affirmation nous dit que si on accepte les hypothèses
que “tous les mortels sont des chats” et que “Socrate est mortel”, alors on peut
conclure que “Socrate est un chat”.
Section 1.2.7 – Exercices sur les ensembles

Exercice 1 : Définissez les ensembles suivants par compréhension :

a) l’ensemble des entiers non négatifs plus petits que 4 ;


Réponse 1 : {n ∈ N | n < 4}
Réponse 2 : {n ∈ Z | 0 ≤ n < 4}
(Ceci n’est pas en compréhension : {0, 1, 2, 3}. )

b) l’ensemble des entiers strictement positifs divisibles par 3 et plus petits que 4 ;
Réponse 1 : {i ∈ N | 0 < i < 4 ∧ i % 3 = 0}
Note : L’opérateur modulo “ % ” correspond au reste de la division entière. Pour a ∈ Z
def
et b ∈ Z \ {0}, nous avons : a % b = a − b · ab
 

Réponse 2 : {3i | i ∈ N∗ ∧ 3i < 4}


(Ceci n’est pas en compréhension : {3}. )

c) l’ensemble des nombres impairs ;


Réponse 1 : {2i + 1 | i ∈ Z}
Réponse 2 : {i ∈ Z | i % 2 = 1}
Réponse 3 : {n | (∃i ∈ Z | 2i + 1 = n)}
(Ceci n’est pas en compréhension : {. . . , −7, −5, −3, −1, 1, 3, 5, 7, . . .}. )

d) l’ensemble des carrés dont la racine est située entre 10 et 22 ;


Réponse 1 : {i2 | i ∈ N ∧ 10 ≤ i ≤ 22}

Réponse 2 : {n ∈ N | 10 ≤ n ≤ 22}
(Ceci n’est pas en compréhension : {102 , 112 , 122 , 132 , . . . , 222 }. )

e) l’ensemble des puissances de 2.


Réponse 1 : {x2 | x ∈ N}
Réponse 2 : {n ∈ N | (∃i ∈ N | n = 2i )}
(Ceci n’est pas en compréhension : {0, 1, 2, 4, 8, 16, 32, 64, 128, . . .}. )
Exercice 2 : Donnez une description en langue française des ensembles suivants :

a) {x ∈ Z | 0 < x ∧ x est pair} ;


Réponse : L’ensemble des entiers strictement positifs pairs.

b) {x ∈ N∗ | 0 < x ∧ x % 2 = 0} ;
Réponse : Même réponse qu’en a)

c) {p | q ∈ Z ∧ r = 2 ∧ p > 0 ∧ p = q · r} ;
Réponse : Même réponse qu’en a)

d) {z ∈ N∗ | (∃y ∈ Z | 2y = z)} ;
Réponse : Même réponse qu’en a)

e) {z ∈ Z | −1 < z ∧ (∃x ∈ Z | z = x · y) ∧ (y = 2 ∨ y = 3)} ;


Réponse : L’ensemble des entiers non négatifs qui sont divisibles par 2 ou par 3.

f) {z ∈ Z | −1 < x ∧ 1 < y < 4 ∧ z = x · y}.


Réponse : Même réponse qu’en e)

Exercice 3 :

a) Définissez l’ensemble suivant par compréhension. L’ensemble des nombres premiers


compris entre 10 et 30. Vous pouvez utiliser la fonction booléenne premier(i) qui
retourne la valeur de l’expression “i est un nombre premier”, c’est-à-dire vrai si i est
premier, faux sinon.
Réponse : {i ∈ Z | 10 ≤ i ≤ 30 ∧ premier(i)}. Si on avait demandé de donner
l’ensemble en extension, la réponse serait {11, 13, 17, 19, 23, 29} .

b) Décrivez l’ensemble suivant en français.

{x | y ∈ N ∧ z ∈ {2, 3} ∧ x = y z }

Réponse : L’ensemble des entiers positifs qui sont des carrés ou cubes. En extension :

{1, 4, 8, 9, 16, 25, 27, 36, 49, . . .} .


Exercice 4 : Soit l’ensemble de couleurs C = {rouge, vert, bleu}. Écrivez les ensembles
suivants en extensions :

a) P(C) ;
Réponse :
( )
∅, {rouge}, {vert}, {bleu}, {rouge, vert}, {rouge, bleu},
P(C) =
{vert, bleu}, {rouge, vert, bleu}

b) P(C) ∩ ∅ ;
Réponse : P(C) ∩ ∅ = ∅

c) P(C) ∩ P(∅) ;
Réponse : P(C) ∩ P(∅) = P(C) ∩ {∅} = {∅}

d) {c ∈ P(C) | 2 > |c|} ;


Réponse : { ∅, {rouge}, {vert}, {bleu} }

e) {c ∈ P(C) | c ⊆ {rouge, bleu}} ;


Réponse : { ∅, {rouge}, {bleu}, {rouge, bleu} }

f) {c ∈ P(C) | {rouge, bleu} ⊆ c} .


Réponse : { {rouge, bleu}, {rouge, vert, bleu} }
Exercice 5 : Démontrez chacune des propriétés suivantes à l’aide des deux techniques de
démonstration vues jusqu’à maintenant, c’est-à-dire (i) à l’aide de diagrammes de Venn
(démonstration par cas) et (ii) par une succession d’équivalences :

a) Complémentarité (Proposition 1.2.7-a) : (S c )c = S ;


Réponse (i) : Soit S un ensemble. Démontrons “(S c )c = S” à l’aide de diagrammes
de Venn. Considérons la représentation suivante :

Démontrons que “(S c )c ” équivaut à “S” :


 c
 
=
 
 
 
 
Sc S

Les diagrammes de Venn obtenus montrent que les éléments appartenant à ‘(S c )c ”
sont les mêmes que les éléments appartenant à l’ensemble “S”.
.
C.Q.F.D.

Réponse (ii) Soit S un ensemble. Par l’axiome d’extensionnalité (définition 1.2.1,


avec [S := (S c )c ] et [T := S]), l’expression à démontrée est équivalente à :
(∀e | e ∈ (S c )c ⇔ e ∈ S ) .

Démontrons donc “e ∈ (S c )c ⇔ e ∈ S” :
Soit e, un élément quelconque.
e ∈ (S c )c
⇔ h Prop 1.2.11-a – Complément, avec [S := S c ] i
¬(e ∈ S c )
⇔ h Prop 1.2.11-a – Complément i
¬¬(e ∈ S)
⇔ h Prop 1.1.5-a – Double négation i
e∈S
C.Q.F.D.
b) Deuxième loi de De Morgan appliquée aux ensembles (Proposition 1.2.6-b) :
(S ∪ T )c = S c ∩ T c ;
Réponse (i) : Soit S et T deux ensembles. Démontrons la deuxième loi de De Margan
à l’aide de diagrammes de Venn. Considérons la représentation suivante des ensembles
S et T :

Bâtissons d’abord l’ensemble “(S ∪ T )c ” :

 c
 
=
 
 
 
 
S∪T (S ∪ T )c

Bâtissons ensuite l’ensemble “S c ∩ T c ” :

∩ =
Sc Tc Sc ∩ T c

Les diagrammes de Venn obtenus montrent bien que les éléments appartenant à
“(S ∪ T )c ” sont les mêmes que les éléments appartenant à l’ensemble “S c ∩ T c ”. .
C.Q.F.D.

Réponse (ii) : Soit S et T deux ensembles. Par l’axiome d’extensionnalité (définition 1.2.1,
avec [S := (S ∪ T )c ] et [T := S c ∩ T c ]), l’expression à démontrée est équivalente à :
(∀e | e ∈ (S ∪ T )c ⇔ e ∈ S c ∩ T c ) .
Démontrons donc “e ∈ (S ∪ T )c ⇔ e ∈ S c ∩ T c ” :
Soit e, un élément quelconque.
e ∈ (S ∪ T )c
⇔ h Prop 1.2.11-a – Complément i
¬(e ∈ (S ∪ T ))
⇔ h Prop 1.2.11-c – Union i
¬(e ∈ S ∨ e ∈ T )
⇔ h Prop 1.1.4-b – De Morgan, avec [p := (e ∈ S)] et [q := (e ∈ T )] i
¬(e ∈ S) ∧ ¬(e ∈ T )
⇔ h Prop 1.2.11-a – Complément, 2 fois i
e ∈ Sc ∧ e ∈ T c
⇔ h Prop 1.2.11-b – Intersection i
e ∈ Sc ∩ T c
C.Q.F.D.

c) Réécriture de la différence (Proposition 1.2.10-b) : S \ T = S ∩ T c .


Réponse (i) : Soit S et T deux ensembles. Considérons la représentation suivante
des ensembles S et T :

Bâtissons d’abord l’ensemble “S \ T ” :

\ =
S T S\T
Bâtissons ensuite l’ensemble “S ∩ T c ” :

∩ =
S Tc S ∩ Tc
Les diagrammes de Venn obtenus montrent bien que les éléments appartenant à “S\T ”
sont les mêmes que les éléments appartenant à l’ensemble “S ∩ T c ”. .
C.Q.F.D.
Réponse (ii) : Soit S et T deux ensembles. Par l’axiome d’extensionnalité, l’expres-
sion à démontrée est équivalente à :
(∀e | e ∈ S \ T ⇔ e ∈ S ∩ T c ) .

Démontrons donc “e ∈ S \ T ⇔ e ∈ S ∩ T c ” :
Soit un élément e quelconque.
e∈S\T
⇔ h Prop 1.2.11-d – Différence i
e ∈ S ∧ ¬(e ∈ T )
⇔ h Prop 1.2.11-a – Complément i
e ∈ S ∧ e ∈ Tc
⇔ h Prop 1.2.11-b – Intersection i
e ∈ S ∩ Tc
C.Q.F.D.

d) Différence d’une union (Proposition 1.2.10-e) : S \ (T ∪ U ) = (S \ T ) ∩ (S \ U ) ;


Réponse (i) : Soit S, T et U trois ensembles. Considérons la représentation suivante :

Bâtissons d’abord l’ensemble “S \ (T ∪ U )” :

U
\ U
= U

S T ∪U S \ (T ∪ U )
Bâtissons ensuite l’ensemble “(S \ T ) ∩ (S \ U )” :

U
∩ U
= U

S\T S\U (S \ T ) ∩ (S \ U )
Les diagrammes de Venn obtenus montrent que les éléments appartenant à “S\(T ∪U )”
sont les mêmes que les éléments appartenant à l’ensemble “(S \ T ) ∩ (S \ U )”.
.
C.Q.F.D.
Réponse (ii) – Voici deux démonstrations possibles :
Démonstration 1 (Par l’axiome d’extensionnalité et les propriétés de l’algèbre booléenne) :
Soit S et T et U des ensembles. Par l’axiome d’extensionnalité (définition 1.2.1, avec
[S := S \(T ∪U )] et [T := (S \T )∩(S \U )]), l’expression à démontrée est équivalente à :
(∀e | e ∈ S \ (T ∪ U ) ⇔ e ∈ (S \ T ) ∩ (S \ U ) ) .

Démontrons donc “e ∈ S \ (T ∪ U ) ⇔ e ∈ (S \ T ) ∩ (S \ U )” :
Soit e, un élément quelconque. On a :
e ∈ S \ (T ∪ U )
⇔ h Prop 1.2.11-d – Différence, avec [T := T ∪ U ] i
e ∈ S ∧ ¬(e ∈ T ∪ U )
⇔ h Prop 1.2.11-c – Union i
e ∈ S ∧ ¬(e ∈ T ∨ e ∈ U )
⇔ h Prop 1.1.4-b – De Morgan, avec [p := e ∈ T ] et [q := e ∈ U ] i
e ∈ S ∧ ¬(e ∈ T ) ∧ ¬(e ∈ U )
⇔ h Prop 1.1.6-c – Idempotence, avec [p := e ∈ S] i
e ∈ S ∧ e ∈ S ∧ ¬(e ∈ T ) ∧ ¬(e ∈ U )
⇔ h Prop 1.1.6-d – Commutativité i
e ∈ S ∧ ¬(e ∈ T ) ∧ e ∈ S ∧ ¬(e ∈ U )
⇔ h Prop 1.2.11-d – Différence, 2 fois i
e ∈ (S \ T ) ∧ e ∈ (S \ U )
⇔ h Prop 1.2.11-b – Intersection i
e ∈ (S \ T ) ∩ (S \ U ) C.Q.F.D.
Démonstration 2 (Utilisant directement les propriétés ensemblistes) :
Soit S et T des ensembles.

S \ (T ∪ U )
= h Prop 1.2.10-b – Réécriture de la différence i
S ∩ (T ∪ U )c
= h Prop 1.2.6-b – De Morgan i
S ∩ T c ∩ Uc
= h Prop 1.2.8-c – Idempotence i
S ∩ S ∩ T c ∩ Uc
= h Prop 1.2.8-d – Commutativité i
S ∩ T c ∩ S ∩ Uc
= h Prop 1.2.10-b – Réécriture de la différence, 2 fois i
(S \ T ) ∩ (S \ U )
C.Q.F.D.
Section 1.3.9 –
Exercices sur les techniques de démonstrations

Important : Pour cette série d’exercices, vous devez écrire vos démonstrations sous la forme
d’un texte français, similairement aux démonstrations présentées tout au long de la sec-
tion 1.3. Nous vous encourageons cependant à vous former une intuition en utilisant les
diagrammes de Venn.

Exercice 1 : Supposons que S, T et U sont des ensembles quelconques. On vous demande de


démontrer trois égalité d’ensembles ci-dessous. Nous vous suggérons deux stratégies possibles
pour démontrer une égalité d’ensemble :
— Utiliser l’axiome d’extensionnalité (Définiton 1.2.1) :
(?) S = T ⇔ (∀e | e ∈ S ⇔ e ∈ T ) .
— Utiliser l’antisymétrie de l’inclusion (Propriété 1.2.12-d) :
(??) S = T ⇔ S ⊆ T ∧ T ⊆ S .

a) De Morgan : (S ∩ T )c = S c ∪ T c
Réponse (utilisant l’antisymétrie de l’inclusion) :
Soit S et T des ensembles. Utilisons l’antisymétrie de l’inclusion (??) et démontrons
à tour de rôle (S ∩ T )c ⊆ S c ∪ T c et (S ∩ T )c ⊇ S c ∪ T c .

⊆ : Soit un élément e ∈ (S ∩ T )c . h On veut e ∈ S c ∪ T c i


Par la définition du complément d’un ensemble, on a donc e ∈ / S ∩ T.
Considérons les trois cas suivant :
— 1er cas, e ∈ S mais e ∈ /T :
Puisque e ∈/ T , on a e ∈ T c .
Donc e ∈ S c ∪ T c . h 1er cas démontré i
— 2e cas, e ∈ T mais e ∈ /S:
Puisque e ∈/ S, on a e ∈ S c .
Donc e ∈ S c ∪ T c . h 2e cas démontré i
— 3e cas, e ∈ / S et e ∈
/T :
Puisque e ∈/ S, on a e ∈ S c .
Donc e ∈ S c ∪ T c . h 3e cas démontré i
Les trois cas ayant couvert toutes les possibilités, l’inclusion est démontrée.
⊇ : Soit un élément e ∈ S c ∪ T c . h On veut e ∈ (S ∩ T )c i
On a donc e ∈ S c ou e ∈ T c . Considérons les deux cas séparément :
— 1er cas, e ∈ S c :
Donc e ∈/ S.
Donc e ∈/ S ∩ T.
Ce qui est équivalent à e ∈ (S ∩ T )c . . h 1er cas démontré i
— 2e cas, e ∈ T : c

Donc e ∈/ T.
Donc e ∈/ S ∩ T.
Ce qui est équivalent à e ∈ (S ∩ T )c . . h 2e cas démontré i
L’inclusion inverse est démontrée. .
C.Q.F.D.

b) De Morgan : (S ∪ T )c = S c ∩ T c
Réponse (utilisant l’axiome d’extensionnalité) :
Soit S et T des ensembles et soit un élément e quelconque. Par l’axiome d’extension-
nalité (?), nous allons démontrer (S ∪ T )c = S c ∩ T c en démontrant

e ∈ (S ∪ T )c ⇔ e ∈ S c ∩ T c .

Démontrons l’implication et l’implication inverse à tour de rôle.

⇒ : Supposons e ∈ (S ∪ T )c est vrai . h On veut e ∈ S c ∩ T c i


Par la définition du complément d’un ensemble, on a donc e ∈ / S ∪ T.
Donc l’élément e n’appartient ni à l’ensemble S ni à l’ensemble T (e ∈/ S et e ∈ / T ).
Ainsi, e ∈ S c et e ∈ T c .
C’est donc dire que e ∈ S c ∩ T c . . h Impication démontrée i

⇐ : Supposons e ∈ S c ∩ T c est vrai . h On veut e ∈ (S ∪ T )c i


On a donc à la fois e ∈ S c et e ∈ T c .
Autrement dit, e ∈/ S et e ∈ / T.
Puisque e n’appartient ni à S ni à T , on écrit e ∈
/ S ∪ T.
Donc e ∈ (S ∪ T )c . . h Impication inverse démontrée i
.
C.Q.F.D.
c) S \ T = S ∩ T c
Réponse (utilisant l’antisymétrie de l’inclusion) :
Soit S et T des ensembles. Utilisons l’antisymétrie de l’inclusion (??) et démontrons
à tour de rôle S \ T ⊆ S ∩ T c et S \ T ⊇ S ∩ T c .

⊆ : Soit un élément e ∈ S \ T . h On veut e ∈ S ∩ T c i


Par la définition de la différence, on a donc e ∈ S et e ∈ / T.
Puisque e ∈ c
/ T , on a e ∈ T .
On a donc à la fois e ∈ S et e ∈ T c , c’est-à-dire e ∈ S ∩ T c .h Inclusion démontrée i
⊇ : Soit un élément e ∈ S ∩ T c . h On veut e ∈ S \ T i
On a e ∈ S et e ∈ T c .
Par la définition du complément, e ∈ T c ⇔ e ∈
/ T.
Puisque e ∈ S et e ∈ / T , on a e ∈ S \ T . h Inclusion inverse démontrée i
.
C.Q.F.D.

Exercice 2 : Supposons que S et T sont deux ensembles quelconques. Démontrez :


a) S ∩ T ⊆ T
Réponse : Selon la définition de l’inclusion (définition 1.2.4-a), il faut démontrer :

(∀e | e ∈ S ∩ T ⇒ e ∈ T ) .

Soit e ∈ S ∩ T . . h On veut e ∈ T i
Alors e ∈ S et e ∈ T , . h Par la définition de l’intersection i
On a donc e ∈ T comme désiré. .
C.Q.F.D.

b) S \ T ⊆ S.
Réponse : Selon la définition de l’inclusion, il faut démontrer :

(∀e | e ∈ S \ T ⇒ e ∈ S) .

Soit e ∈ S \ T . . h On veut e ∈ S i
Alors e ∈ S et e ∈ / T, . h Par la définition de la différence entre deux ensembles i
On a donc e ∈ S comme désiré. .
C.Q.F.D.
c) Transitivité de ⊆ : S ⊆ T ∧ T ⊆ U ⇒ S ⊆ U ;
Réponse :
Supposons (∗) S ⊆ T et (∗∗) T ⊆ U , et montrons S ⊆ U , c’est-à-dire :

(∀e | e ∈ S ⇒ e ∈ U ) .

Soit un élément e ∈ S. . h On veut e ∈ U i


Comme S ⊆ T , on a e ∈ T . . h Voir (*) i
Comme T ⊆ U , on a e ∈ U . . h Voir (**) i
Ainsi, S ⊆ U . . C.Q.F.D.

d) (∀x | P (x) ⇒ Q(x) ) ⇔ {x | P (x) } ⊆ {x | Q(x)}


Réponse : Démontrons successivement l’implication et l’implication inverse :
⇒ : Supposons (1) (∀x | P (x) ⇒ Q(x) ) . h On veut {x | P (x) } ⊆ {x | Q(x)} i
Démontrons (∀e | e ∈ {x | P (x)} ⇒ e ∈ {x | Q(x)} ). . h Définition de l’inclusion i
Soit e ∈ {x | P (x)}.
Comme e ∈ {x | P (x)}, alors P (e) = vrai.
Donc Q(e) = vrai. . h Selon l’hypothèse (1) i
Donc e ∈ {x | Q(x)}. . h Implication démontrée i

⇐ : Supposons (2) {x | P (x) } ⊆ {x | Q(x)} . h On veut (∀x | P (x) ⇒ Q(x) ) i


Soit un élément e choisi tel que P (e) = vrai. . h Montrons Q(e) = vrai i
Alors e ∈ {x | P (x) }
Donc e ∈ {x | Q(x) } . h Selon l’hypothèse (2) i
. Donc Q(e) = vrai. . h Implication inverse démontrée i
C.Q.F.D.
Exercice 3 : Supposons que S et T sont deux ensembles quelconques. Démontrez :
a) S ⊆ T ⇔ S ∩ T = S ;
Réponse : Démontrons successivement l’implication et l’implication inverse :
⇒ : Supposons (♥) S ⊆ T . h Montrons S ∩ T = S i
Démontrons successivement S ∩ T ⊆ S et S ∩ T ⊇ S
. h Par l’antisymétrie de l’inclusion i
⊆ : Soit x ∈ S ∩ T . h Montrons x ∈ S i
Alors x ∈ S et x ∈ T . h Définition de l’intersection i
On a x ∈ S comme désiré. . h Inclusion démontrée i

⊇ : Soit x ∈ S . h Montrons x ∈ S ∩ T i
Comme S ⊆ T , on a que x ∈ T . h Par l’hypothèse (♥) i
Puisque x ∈ S et x ∈ T , on a x ∈ S ∩ T . h Inclusion inverse démontrée i
On a montré S ∩ T ⊆ S et S ∩ T ⊇ S, donc S ∩ T = S. .h Implication démontrée i

⇐ : Supposons (♥♥) S ∩ T = S . h On veut S ⊆ T ) i


Soit x ∈ S. . h Montrons x ∈ T i
Puisque S = S ∩ T , on a x ∈ S ∩ T . . h Par l’hypothèse (♥♥) i
Alors x ∈ S et x ∈ T .
Comme voulu, on a e ∈ T , donc S ⊆ T . h Implication inverse démontrée i
.
C.Q.F.D.
b) S ⊆ T ⇔ S ∪ T = T
Réponse : Démontrons successivement l’implication et l’implication inverse :
⇒ : Supposons (♦) S ⊆ T . h Montrons S ∪ T = T i
Démontrons successivement S ∪ T ⊆ T et S ∪ T ⊇ T
. h Par l’antisymétrie de l’inclusion i
⊆ : Soit x ∈ S ∪ T . h Montrons x ∈ T i
Alors x ∈ S ou x ∈ T . h Définition de l’union i
Examinons les deux cas possibles :
– Cas 1 : Si x ∈ T , on a le résultat désiré.
– Cas 2 : Si x ∈ S, comme S ⊆ T , on a aussi x ∈ T . .h Par l’hypothèse (♦) i
Ainsi, on a nécessairement x ∈ T . . h S ∪ T ⊆ T démontrée i

⊇ : Soit x ∈ T . h Montrons x ∈ S ∪ T i
Peu importe S, On a nécessairement x ∈ S ∪ T . h S ∪ T ⊇ T démontré i

On a montré S ∪ T ⊆ T et S ∪ T ⊇ T , donc S ∪ T = T . . h Implication démontrée i

⇐ : Supposons (♦♦) S ∪ T = T . h On veut S ⊆ T i


Soit x ∈ S. . h Montrons x ∈ T i
Alors x ∈ S ∪ T .
Puisque S ∪ T = T , on a x ∈ T . . h Par l’hypothèse (♦♦) i
On a donc S ⊆ T . . h Implication inverse démontrée i
.
C.Q.F.D.
Section 1.4.7 – Exercices sur les relations et fonctions

Exercice 1 : (Vous pouvez faire cet exercice en représentant vos relations par des graphes.)
Étant données les trois relations ρ, σ, θ ⊆ {1, 2, 3, 4} × {1, 2, 3, 4} suivantes :
— ρ = {h1, 2i, h2, 3i, h3, 4i, h4, 1i}
— σ = {h1, 1i, h1, 2i, h1, 3i, h1, 4i, h2, 1i, h3, 1i, h4, 1i}
— θ = {hx, yi | x ≤ y}

1. Calculez ρ ◦ σ, ρ2 , θc et θ−1 .
2. Déterminez la (ou les) propriété(s) que la relation ρ satisfait parmi les suivantes :
(a) réflexivité (b) irréflexivité (c) symétrie
(d) antisymétrie (e) asymétrie (f) transitivité
3. Même question pour la relation σ.
4. Même question pour la relation θ.
5. Existe-t-il un n pour lequel ρn = {1, 2, 3, 4} × {1, 2, 3, 4} ? Si oui, trouvez le plus petit
de ces n.
6. Même question pour la relation σ.
7. Même question pour la relation θ.
Réponses :
1. ρ ◦ σ = {h1, 1i, h2, 1i, h3, 1i, h4, 1i, h4, 2i, h4, 3i, h4, 4i}
ρ2 = {h1, 3i, h3, 1i, h2, 4i, h4, 2i}
θc = {hx, yi | x > y}
−1
θ = {hy, xi | x ≤ y} ou {hx, yi | x ≥ y}
2. (b), (d) et (e). 3. (c). 4. (a), (d) et (f)
5. NON. 6. OUI, n = 2. 7. NON.

Exercice 2 : (Pour ce numéro, aucune justification n’est demandée.)


Étant données les deux relations ρ, θ ⊆ Z × Z suivantes :
— ρ = {hi, ji | i + 1 = j}
— θ = {hx, yi | (∃z ∈ Z | 2z = x − y)}

a) Donnez ρ2 , θc et θ−1 .
b) Déterminez la (ou les) propriété(s) que la relation ρ satisfait parmi les suivantes :
(a) réflexivité (b) irréflexivité (c) symétrie
(d) antisymétrie (e) asymétrie (f) transitivité
c) Même question pour la relation θ.
Réponses :
a) ρ2 = {hi, ji ∈ Z2 | i + 2 = j}
θc = {hx, yi | (∃z ∈ Z | 2z + 1 = x − y)}
θ−1 = θ
b) (b)irréflexivité, (d)antisymétrie et (e)asymétrie.
c) (a)réflexivité, (c)symétrie et (f)transitivité.

Exercice 3 : Quelles propriétés du numéro 2b) ci-haut les relations suivantes possèdent-elles ?
a) b ρ c ssi b et c sont des entiers tous deux négatifs ou tous deux positifs.
b) b ρ c ssi b et c sont des entiers tels que b − c est un multiple de 5.
c) ∅, où ∅ est une relation sur un ensemble non vide B.
d) IB , la relation identité sur un ensemble non vide B.
e) B × B où B est un ensemble non vide contenant au moins deux éléments.
f) = sur Z.
g) < sur Z.
h) ≤ sur Z.
i) b ρ c ssi b est le pére de c.
j) b ρ c ssi b est le pére de c ou vice-versa.
k) b ρ c ssi b est c ou le pére de c.
Réponses :
réflexivité irréflexivité symétrie antisymétrie asymétrie transitivité
a) x x x
b) x x x
c) x x x x x
d) x x x x
e) x x x
f) x x x x
g) x x x x
h) x x x
i) x x x
j) x x
k) x x
Exercice 4 : Démontrez la définition équivalente de l’antisymétrie (Proposition 1.4.15-e) :

(∀a, b ∈ S | a ρ b ∧ b ρ a ⇒ a = b) ⇔ ρ ∩ ρ−1 ⊆ IS .

Réponses : On peut faire les démonstrations de chaque direction. Ça donne ceci :
⇒ : Supposons (∀a, b ∈ S | a ρ b ∧ b ρ a ⇒ a = b) (♥) . h on veut ρ ∩ ρ−1 ⊆ IS i i
Soit ha, bi ∈ ρ ∩ ρ−1 . Voir note a . . h on veut ha, bi ∈ IS i i
Donc ha, bi ∈ ρ et ha, bi ∈ ρ−1 . h Def de ∩ i
Donc ha, bi ∈ ρ et hb, ai ∈ ρ . h Def de ρ−1 i
Donc a = b . h Par hyp. (♥) i
Donc ha, bi ∈ IS . h Def de IS i i
⇒ est démontré

a. Puisqu’on a affaire à des ensembles, pourquoi ne dit-on pas : soit x ∈ ρ ∩ ρ−1 ? En fait on aurait
pu, mais on voit que ρ est en fait une relation et qu’on a besoin d’utiliser ce fait ; dans ce cas, plus
loin, on aurait été obligé de dire donc x = ha, bi pour un a et un b pour pouvoir continuer. Ça revient
au même, au sauve une étape.

⇐ : Supposons ρ ∩ ρ−1 ⊆ IS (♥♥) . h on veut (∀a, b ∈ S | a ρ b ∧ b ρ a ⇒ a = b) i


Soit a, b tels que ha, bi ∈ ρ et hb, ai ∈ ρ . h On veut a = b i
−1
Donc ha, bi ∈ ρ et ha, bi ∈ ρ . h Def de ρ−1 i
Donc ha, bi ∈ ρ ∩ ρ−1 . h Def de ∩ i
Donc ha, bi ∈ IS . h Par hyp. (♥♥) i
Donc a = b . h Def de IS i i
⇐ est démontré
.
C.Q.F.D.

Toutefois en regardant la démonstration on réalise que les arguments sont exactement les
mêmes dans les 2 directions. La démonstration suivante est moins longue et équivalente. Les
deux démonstrations sont acceptables.
(∀a, b ∈ S | a ρ b ∧ b ρ a ⇒ a = b)
⇔ (∀a, b ∈ S | ha, bi ∈ ρ ∧ hb, ai ∈ ρ ⇒ a = b) . h réécriture i
−1
⇔ (∀a, b ∈ S | ha, bi ∈ ρ ∧ ha, bi ∈ ρ ⇒ a = b) . h Def de ρ−1 i
⇔ (∀a, b ∈ S | ha, bi ∈ ρ ∩ ρ−1 ⇒ a = b) . h Def de ∩ i
−1
⇔ (∀a, b ∈ S | ha, bi ∈ ρ ∩ ρ ⇒ ha, bi ∈ IS ) . h Def de IS i
−1
⇔ ρ ∩ ρ ⊆ IS . .
C.Q.F.D.
Exercice 5 : (Pour cet exercice, aucune réponse n’a à être justifiée.) Dites si chacune des
relations suivantes est (i) déterministe, (ii) totale, (iii) injective, (iv) surjective, (v) une fonc-
tion, (vi) une fonction injective, (vii) une fonction surjective ou (viii) une fonction bijective.
a) ρ = {hi, ji ∈ R2 | i + 1 = j} ;
Réponse : ρ est une fonction (c.-à-d. : une relation déterministe et totale) qui est
bijective (c.-à-d. : injective et surjective).

b) σ = {hi, ji ∈ N2 | i + 1 = j} ;
Réponse : σ est une fonction (c.-à-d. : une relation déterministe et totale) qui est
injective, mais pas surjective (et donc pas bijective).

c) θ = {hi, ji ∈ N2 | i − 1 = j} ;
Réponse : θ est une relation déterministe, mais pas totale (ρ n’est donc pas une
fonction) qui est bijective (c.-à-d. : injective et surjective).

d) d : R −→ R, définie par la règle de correspondance : d(x) = x2 ;


Réponse : d est une fonction (c.-à-d. : une relation déterministe et totale) qui est ni
injective ni surjective (et donc pas bijective).

e) la relation inverse de la relation d définie en d) ;


Réponse : d−1 est une relation qui est ni déterministe, ni totale (et donc pas une
fonction) mais qui est injective et surjective (et donc bijective)

f) f : R+ −→ R, définie par la règle de correspondance : f (x) = x2 ;


Réponse : f est une fonction (c.-à-d. : une relation déterministe et totale) qui est
injective, mais pas surjective (et donc pas bijective).

g) g : R+ −→ R+ , définie par la règle de correspondance : g(x) = x2 ;


Réponse : g est une fonction (c.-à-d. : une relation déterministe et totale) qui est
injective et surjective (et donc bijective).

h) h : R −→ [−1, 1], définie par la règle de correspondance : h(x) = sin(x) ;


Réponse : h est une fonction (c.-à-d. : une relation déterministe et totale) qui est
surjective, mais pas injective (et donc pas bijective).

i) i : R −→ R, définie par la règle de correspondance : i(x) = x3 ;


Réponse : i est une fonction (c.-à-d. : une relation déterministe et totale) qui est
injective et surjective (et donc bijective).
j) la relation inverse de la relation i définie en i) ;
Réponse : i−1 est une fonction (c.-à-d. : une relation déterministe et totale) qui est
injective et surjective (et donc bijective).
Notez que la relation inverse d’une fonction bijective est toujours elle aussi une fonc-
tion bijective.

k) k : R −→ R+ , définie par la règle de correspondance : k(x) = 2x ;


Réponse : k est une fonction (c.-à-d. : une relation déterministe et totale) qui est
injective et surjective (et donc bijective).

l) l : R −→ R+ , définie par la règle de correspondance : l(x) = log2 (x) ;


Réponse : l n’est pas bien défini, car la règle de correspondance l(x) = log2 (x) qui
la définie n’a pas de sens pour les valeurs de x ≤ 0, on ne peut donc pas répondre à
cette question.

m) m : R+ −→ R, définie par la règle de correspondance : m(x) = log2 (x).


Réponse : f est une fonction (c.-à-d. : une relation déterministe et totale) qui est
injective et surjective (et donc bijective).
Notez que, m = k −1

Exercice 6 : (Pour ce numéro, seuls le c) et le e) nécessitent quelques justifications et vous


pouvez définir toute relation par une représentation graphique.)
a) Construisez une relation ρ ⊆ A × B qui soit une fonction bijective.
b) Construisez une relation θ ⊆ C × D qui ne soit ni totale, ni déterministe, ni injective,
ni surjective.
c) Dans votre réponse en a), est-ce que |A| = |B| ? Si oui, recommencez la question a)
de telle sorte que |A| =
6 |B|. Si vous n’y arrivez pas, expliquez pourquoi.
d) Soit E = {1, 2, 3}. Construisez une fonction f : E −→ P(E).
e) À partir de la fonction f que vous avez fabriquée en d), construisez l’ensemble
T = {e ∈ E | e 6∈ f (e)}.
f) Étant donné le f et le T que vous avez construits, est-ce que T appartient à l’ensemble
d’arrivée de f ?
g) Étant donné le f et le T que vous avez construits, est-ce que T ∈ Im(f ) ?
Si vous avez répondu non, refaites les numéros d) et e) de telle sorte que T ∈ Im(f ).
Si vous n’y arrivez pas, expliquez brièvement pourquoi.
Solutions à venir
Exercice 7 : (Pour cet exercice, toute réponse doit être pleinement justifiée.)
Soit les cinq relations :
— ρ ⊆ N × N, définie par : ρ = {hi, ji | i + 1 = j}
— θ ⊆ Z × Z, définie par : θ = {hx, yi | (∃z ∈ Z | 2z = x − y)}
— f : Z −→ Z, définie par la règle de correspondance : f (x) = x + 3
— g : N −→ N, définie par la règle de correspondance : g(x) = x + 3
— h : Z −→ Z, définie par la règle de correspondance : h(x) = x2

A) Pour chacune d’elle, déterminez si oui ou non, il s’agit :


1) d’une relation déterministe
2) d’une fonction (c.-à-d. : déterministe et totale) ;
3) d’une fonction injective (c.-à-d. : déterministe, totale et injective) ;
4) d’une fonction surjective (c.-à-d. : déterministe, totale et surjective) ;
5) d’une fonction bijective (c.-à-d. : déterministe, totale, injective et surjective).
B) Donnez la fonction inverse de chacune des fonctions bijectives trouvées en A5).

Solutions de la question (A) :

h i
(1) – pour ρ (Intuitivement, ρ semble être une relation déterministe.)
Démontrons donc que (∀a, b, b0 ∈ N | a ρ b ∧ a ρ b0 ⇒ b = b0 ).
Soit a, b, b0 ∈ N. Supposons que a ρ b et a ρ b0 . . h et montrons que b = b0 . i
Comme a ρ b, alors par la définition de ρ, on a b = a + 1.
Comme a ρ b0 , alors par la définition de ρ, on a b0 = a + 1.
Donc, par la transitivité de =, on a b = b0 ..
C.Q.F.D.

ρ est donc une relation déterministe.


h i
(2) – pour ρ (Intuitivement, ρ ⊆ N × N semble être une relation totale.)
Démontrons donc que (∀a ∈ N | (∃b ∈ N | a ρ b))
Soit a ∈ N. . h Montrons (∃b ∈ N | a ρ b) i
Soit b = a + 1. . h Un tel b existe et appartient à N, propriété de l’arithmétique. i
Alors, on a bien a ρ b. . h Définition de ρ. i
.
C.Q.F.D.

ρ est donc une relation totale et comme elle est aussi déterministe (Voir [(1)– pour
ρ]), ρ est donc une fonction.
h i
(3) – pour ρ (On a déjà montré en (1) et (2) que ρ est une fonction, et intuitivement,
elle semble être injective.)
Comme ρ est une fonction, nous allons démontrer : (∀x, x0 ∈ N | ρ(x) = ρ(x0 ) ⇒ x =
x0 ).
Soit x, x0 ∈ N et supposons que ρ(x) = ρ(x0 ). . h Montrons x = x0 i
Alors on a x + 1 = x0 + 1. . h Définition de ρ. i
Alors on a x + 1 − 1 = x0 + 1 − 1. . h Propriété de l’arithmétique. i
Alors on a x = x0 . . h Propriété de l’arithmétique. i
.
C.Q.F.D.

ρ est bien une fonction injective.


h i
(4) – pour ρ (On a déjà montré en (1) et (2) que ρ est une fonction, et intuitivement,
elle semble ne pas être surjective, car 0 ne semble pas faire partie de l’image de ρ.)
Comme ρ est une fonction, nous devons donc démontrer :
¬(∀y ∈ N | (∃x ∈ N | ρ(x) = y)) .

Ce qui est équivalent à démontrer (∃y ∈ N | ¬(∃x ∈ N | ρ(x) = y)). .h De Morgan. i


Ce qui est équivalent à démontrer (∃y ∈ N | (∀x ∈ N | ρ(x) 6= y)).
. h De Morgan et définition de 6=. i
Démontrons donc (∃y ∈ N | (∀x ∈ N | ρ(x) 6= y)).
Soit y = 0. . h Un tel y existe, car clairement 0 ∈ N. i
Soit x ∈ N. . h Montrons ρ(x) 6= y i
Alors clairement, ρ(x) = x + 1 6= 0.

. h Car si x ∈ N alors x + 1 > 0 et donc x + 1 6= 0 – propriété de l’arithmétique. i


.
C.Q.F.D.
ρ n’est pas une fonction surjective.
h i
(5) – pour ρ ρ n’est pas une fonction bijective parce qu’elle n’est pas surjective.

h i
(1) – pour θ (Intuitivement, θ semble ne pas être une relation déterministe.)
Nous devons donc démontrer que ¬(∀a, b, b0 ∈ Z | a θ b ∧ a θ b0 ⇒ b = b0 )
Ce qui est équivalent à démontrer (∃a, b, b0 ∈ Z | ¬(a θ b ∧ a θ b0 ⇒ b = b0 )).
. h De Morgan. i
Ce qui est équivalent à démontrer (∃a, b, b0 ∈ Z | ¬(¬(a θ b ∧ a θ b0 ) ∨ b = b0 )).
. h Définition de ⇒. i
Ce qui est équivalent à démontrer (∃a, b, b0 ∈ Z | ¬¬(a θ b ∧ a θ b0 ) ∧ ¬(b = b0 )).
. h De Morgan. i
Ce qui est équivalent à démontrer (∃a, b, b0 ∈ Z | a θ b ∧ a θ b0 ∧ b 6= b0 ). .h Réécriture i
Démontrons donc que (∃a, b, b0 ∈ Z | a θ b ∧ a θ b0 ∧ b 6= b0 ).
Soit a = 2, b = 4, b0 = 6 . h Clairement, de tels a, b et b0 existent et appartiennent à Z. i
Alors on a bien que a θ b. .h Car 2 × −1 = 2 − 4, et -1 appartient à Z– Définition de θ. i
Et que a θ b0 . . h Car 2 × −2 = 2 − 6, et -2 appartient à Z– Définition de θ. i
Et que b 6= b0 . . h Car 4 6= 6. i
.
C.Q.F.D.

θ n’est donc pas une relation déterministe.


h i
(2), (3), (4) et (5) – pour θ Comme θ n’est pas déterministe, elle n’est donc pas
une fonction. La réponse est donc négative pour (2), (3), (4) et (5).
h i
(1) et (2) – pour f f est nécessairement une fonction (à moins d’une erreur faite
par le professeur dans l’énoncé) puisque c’est ce que signifie la notation f : Z −→ Z.
)
h i
(3) – pour f (Intuitivement, f : Z −→ Z semble être une fonction injective.)
Comme f est une fonction, nous allons démontrer :
(∀x, x0 ∈ Z | f (x) = f (x0 ) ⇒ x = x0 ) .

Soit x, x0 ∈ Z et supposons que f (x) = f (x0 ). . h Montrons x = x0 i


Alors on a x + 3 = x0 + 3. . h Définition de f . i
Alors on a x + 3 − 3 = x0 + 3 − 3. . h Propriété de l’arithmétique. i
Alors on a x = x0 . . h Propriété de l’arithmétique. i
.
C.Q.F.D.
f est bien une fonction injective.
h i
(4) – pour f (On a déjà montré en (1) et (2) que f est une fonction, et intuitivement,
elle semble être surjective.)
Comme f est une fonction, nous allons démontrer : (∀y ∈ Z | (∃x ∈ Z | f (x) = y)).
Soit y ∈ Z. . h Montrons (∃x ∈ Z | f (x) = y)) i
Soit x = y − 3. . h Un tel x existe et appartient à Z – Propriété de l’arithmétique. i
Alors on a f (x) = f (y − 3) = (y − 3) + 3 = y..
C.Q.F.D.

h i
(5) – pour f Comme f est une fonction injective et surjective, elle est donc une fonc-
tion bijective.
h i
(1), (2) et (3) – pour g De façon très similaire à ce qui a été fait pour f , on peut
montrer que g est une fonction injective.
h i
(4) – pour g (Intuitivement g semble ne pas être surjective, car ni 0, ni 1, ni 2 ne
semblent faire partie de l’image de g.)
Comme g est une fonction de N vers N, nous devons donc démontrer :
¬(∀y ∈ N | (∃x ∈ N | g(x) = y)) .

Ce qui est équivalent à démontrer (∃y ∈ N | ¬(∃x ∈ N | g(x) = y)). . h De Morgan i


Ce qui est équivalent à démontrer (∃y ∈ N | (∀x ∈ N | g(x) 6= y)).
. h De Morgan et déf de 6= i
Démontrons donc (∃y ∈ N | (∀x ∈ N | g(x) 6= y)).
Soit y = 0. . h Un tel y existe, car clairement 0 ∈ N. i
Soit x ∈ N. . h Montrons g(x) 6= y i
Alors clairement, g(x) = x + 3 6= 0.
. h Car si x ∈ N alors x + 3 > 0 et donc x + 3 6= 0 – propriété de l’arithmétique. i
.
C.Q.F.D.
g n’est pas une fonction surjective.
h i
(5) – pour g g n’est pas une fonction bijective parce qu’elle n’est pas surjective.
h i
(1) et (2) – pour h h est nécessairement une fonction (à moins d’une erreur faite
par le professeur dans l’énoncé) puisque c’est ce que signifie la notation h : Z −→ Z.
)
h i
(3) – pour h (Intuitivement, h : Z −→ Z semble ne pas être une fonction injective.)
Comme h est une fonction, nous devons donc démontrer :
¬(∀x, x0 ∈ Z | h(x) = h(x0 ) ⇒ x = x0 ) .

Ce qui est équivalent à démontrer (∃x, x0 ∈ Z | ¬(h(x) = h(x0 ) ⇒ x = x0 )).


. h De Morgan i
Ce qui est équivalent à démontrer (∃x, x0 ∈ Z | ¬(¬(h(x) = h(x0 )) ∨ x = x0 )).
. h Def de ⇒ i
Ce qui est équivalent à démontrer (∃x, x0 ∈ Z | ¬¬(h(x) = h(x0 )) ∧ ¬(x = x0 )).
. h De Morgan i
Démontrons donc (∃x, x0 ∈ Z | h(x) = h(x0 ) ∧ x 6= x0 ). . h Réécriture i
Soit x = 2 et x0 = −2.
. h De tels x et x0 existent et appartiennent à Z – Propriété de l’arithmétique. i
Alors on a bien que h(x) = h(2) = 22 = (−2)2 = h(−2) = h(x0 )..
C.Q.F.D.
h n’est pas une fonction injective.
h i
(4) – pour h (Intuitivement, h semble ne pas être surjective, car les entiers négatifs
ne semblent pas être dans l’image de h.)
Comme h est une fonction, nous devons donc démontrer :
¬(∀y ∈ Z | (∃x ∈ Z | h(x) = y)) .

Ce qui est équivalent à démontrer (∃y ∈ Z | ¬(∃x ∈ Z | h(x) = y)). . h De Morgan i


Ce qui est équivalent à démontrer (∃y ∈ Z | (∀x ∈ Z | h(x) 6= y)). . h De Morgan i
Démontrons donc (∃y ∈ Z | (∀x ∈ Z | h(x) 6= y)).
Soit y = −1. . h Un tel y existe, car clairement −1 ∈ Z. i
Soit x ∈ Z . h Montrons h(x) 6= y i
2
Alors clairement, h(x) = x ≥ 0
. h Car si x ∈ Z alors x2 ≥ 0 – propriété de l’arithmétique. i
On a donc que h(x) 6= −1. .
h n’est pas une fonction surjective. C.Q.F.D.
h i
(5) – pour h Comme h n’est ni une fonction injective ni une fonction surjective, elle
n’est donc pas une fonction bijective.

Solution de la question (B) : Seule f est une fonction bijective. Nous présentons deux
solutions possibles.
• Solution 1 : Par le corrolaire 1.4.21-d, comme f est une fonction bijective, on sait
que f −1 est aussi une fonction. On calcule l’ensemble f −1 à partir de la définition
d’une relation inverse :
f −1 = {hy, xi | hx, yi ∈ f }. . h Définition 1.4.12 i
−1
C’est-à-dire que f = {hf (x), xi | hx, f (x)i ∈ f }. . h Car f est une fonction. i
C’est-à-dire que f −1 = {hx + 3, xi | x ∈ Z}. . h Définition de f i
C’est-à-dire que f −1 = {h(y − 3) + 3, (y − 3)i | (y − 3) ∈ Z}. . h On pose y := x + 3 i
C’est-à-dire que f −1 = {hy, y − 3i | (y − 3) ∈ Z}. . h Propriété de l’arithmétique. i
−1
C’est-à-dire que f = {hy, y − 3i | y ∈ Z}.
. h Car (y − 3) ∈ Z ⇔ y ∈ Z – propriété de l’arithmétique. i
Réponse : La fonction inverse de f est f −1 = {hy, y − 3i | y ∈ Z}.
• Solution 2 : Soit k : Z −→ Z, défini par la règle de correspondance k(x) = x − 3.
Démontrons que k est la fonction inverse de f . Par le théorème 1.4.22, il suffit de
démontrer f ◦ k = IZ et k ◦ f = IZ
A. f ◦ k = IZ
Il faut ici démontrer que (∀x ∈ Z | (f ◦ k)(x) = IZ (x)).
Autrement dit, démontrons que (∀x ∈ Z | (f ◦ k)(x) = x). . h Définition de IZ i
Soit x ∈ Z. . h On veut (f ◦ k)(x) = x i
On a donc (f ◦ k)(x) = k(f (x)) = k(x + 3) = (x + 3) − 3 = x.

B. k ◦ f = IZ
Il faut ici démontrer que (∀y ∈ Z | (k ◦ f )(y) = IZ (y)).
Autrement dit, démontrons que (∀y ∈ Z | (k ◦ f )(y) = y). . h Définition de IZ i
Soit y ∈ Z. . h On veut (k ◦ f )(y) = y i
On a donc k ◦ f (y) = f (k(y)) = f (y − 3) = (y − 3) + 3 = y.

k est bien la fonction inverse de f . .


C.Q.F.D.

Exercice 8 :

a) Vous venez de démontrer qu’un élément quelconque d’un ensemble X est aussi élément
d’un ensemble Y. Écrivez la phrase logique que vous venez de démontrer.
Réponse : X ⊆ Y .

b) Étant donnés deux ensembles A et B. En vous inspirant du numéro a), expliquez


comment “classiquement” on démontrerait l’énoncé : A=B
Réponse : Une façon de faire serait de d’abord démontrer que A ⊆ B (en démontrant
qu’un élément quelconque de l’ensemble A est aussi élément de l’ensemble B ) et ensuite
de démontrer que B ⊆ A (en démontrant qu’un élément quelconque de l’ensemble B
est aussi élément de l’ensemble A),
c) Étant donné deux ensembles U et V. Vous venez de démontrer qu’un élément quel-
conque de l’ensemble V est aussi élément d’un ensemble U. Puis vous avez démontré
qu’il existe un élément de l’ensemble U qui n’appartient pas à l’ensemble V. Écrivez
la phrase logique que vous venez de démontrer.
Réponse : V ⊂ U .
Exercice 9 :
Étant donnée une fonction h : Z −→ Z
• h est strictement croissante ⇔ (∀x, x0 ∈ Z | x < x0 ⇒ h(x) < h(x0 ))
• h est strictement décroissante ⇔ (∀x, x0 ∈ Z | x < x0 ⇒ h(x) > h(x0 ))

(A) Démontrez que la composition de deux fonctions est encore une fonction
Démonstration Soit deux fonctions f et g.
. h On veut démontrer que f ◦ g est une fonction i
Comme f et g sont des fonctions, elles sont des relations totales et déterministes.
Par le théorème 1.4.18-a f ◦ g est donc totale.
Par le théorème 1.4.18-b, f ◦ g est donc déterministe.
Donc f ◦ g est une fonction..
C.Q.F.D.

(B) Démontrez l’énoncé suivant :


Si f : Z −→ Z et g : Z −→ Z sont deux fonctions strictement décroissantes alors
f ◦ g est une fonction strictement croissante.

Démonstration

En supposant
: (?) (∀x, x0 ∈ Z | x < x0 ⇒ f (x) > f (x0 ))
et : (??) (∀y, y 0 ∈ Z | y < y 0 ⇒ g(y) > g(y 0 ))



Nous allons démontrer : (∀x, x0 ∈ Z | x < x0 ⇒ f ◦ g(x) < f ◦ g(x0 ))

Soit x, x0 ∈ Z. Supposons que x < x0


. h montrons que f ◦ g(x) < f ◦ g(x0 ) ou, autrement dit, montrons que g(f (x)) < g(f (x0 )). i

Alors, on a f (x) > f (x0 ). . h Voir (?). i

Ce qui est équivalent à f (x0 ) < f (x).


   
0
Ce qui implique g f (x ) > g f (x) . . h Voir (??), avec [y := f (x0 )] et [y 0 := f (x)]. i

Ce qui est équivalent à f ◦ g(x0 ) > f ◦ g(x). . h Voir la définition de ◦. i

Ce qui est équivalent à f ◦ g(x) < f ◦ g(x0 ).

f ◦ g est donc une fonction strictement croissante. .


C.Q.F.D.
(C) Démontrez l’énoncé suivant :
Si f : Z −→ Z et g : Z −→ Z sont deux fonctions strictement croissantes alors
f ◦ g est une fonction strictement croissante.

Démonstration

En supposant
: (?) (∀x, x0 ∈ Z | x < x0 ⇒ f (x) < f (x0 ))
et : (??) (∀y, y 0 ∈ Z | y < y 0 ⇒ g(y) < g(y 0 ))



Nous allons démontrer : (∀x, x0 ∈ Z | x < x0 ⇒ f ◦ g(x) < f ◦ g(x0 ))

Soit x, x0 ∈ Z et supposons que x < x0


. h Montrons que f ◦ g(x) < f ◦ g(x0 ) ou autrement dit, montrons que g(f (x)) < g(f (x0 )). i

Alors, on a f (x) < f (x0 ). . h Voir (?). i


   
Ce qui implique g f (x) < g f (x0 ) . . h Voir (??), avec [y := f (x)] et [y 0 := f (x0 )]. i

Ce qui est équivalent à f ◦ g(x) < f ◦ g(x0 ). . h Voir la définition de ◦. i

f ◦ g est donc une fonction strictement croissante. .


C.Q.F.D.

Exercice 10 : (Pour fin de réflexion et de discussion) Un hôtel a un nombre infini de


chambres (pour chaque entier i > 0, il y a une chambre portant le numéro (i). L’hôtel est
plein (il y a un voyageur dans chaque chambre). Arrive un nouveau voyageur qui voudrait
bien dormir à l’hôtel lui aussi. Alors l’hôtelier lui dit qu’il va lui trouver une chambre. Il ne
mettra à la porte aucun voyageur, il ne mettra pas deux voyageurs dans une même chambre
et il ne fera pas construire une nouvelle chambre. Alors comment l’hôtelier fera-t-il ?

Exercice 11 : (Pour fin de réflexion et de discussions) Une charrue enlève la neige le long
d’une route qui s’étend jusqu’à l’infini. Tout au long de la route, il y a 15cm de neige. La
pelle de la charrue laisse écouler un quinzième de la neige qui entre dans sa pelle (c.-à-d. :
1cm de neige sur les 15). Supposant que la pelle a une capacité infinie et que les flocons
qu’elle laisse écouler sortent selon un principe “premier entré, premier sorti”, quelle quantité
de neige restera dans la pelle une fois le travail terminé ?

Exercice 12 : (Pour fin de réflexion et de discussions) Vous avez deux ensembles infinis,
comment savoir lequel des deux a le plus grand nombre d’éléments ?
Section 1.5.7 – Exercices sur les ensembles infinis

Exercice 1 :
Montrez que les ensembles suivants sont infinis dénombrables (c.-à-d. : qu’ils ont la même
cardinalité que N). Pour ce numéro, vous pouvez, tout comme dans les notes de cours, donner
des définitions en extension de toute fonction bijective dont le domaine est N, et dans ce cas,
vous n’avez pas à démontrer qu’il s’agit effectivement d’une fonction bijective.
a) N × {5, 12, 789}.
Solution : Pour montrer la dénombrabilité de N × {5, 12, 789}, nous allons construire
une fonction bijective f : N −→ N × {5, 12, 789}, en la définissant en extension de la
manière suivante :

h0, 5i h1, 5i h2, 5i h3, 5i h4, 5i


↑ ↑ ↑ ↑ ↑
f (0) f (3) f (6) f (9) f (12)
···

h0, 12i h1, 12i h2, 12i h3, 12i h4, 12i
↑ ↑ ↑ ↑ ↑
f (1) f (4) f (7) f (10) f (13)
···

h0, 789i h1, 789i h2, 789i h3, 789i h4, 789i
↑ ↑ ↑ ↑ ↑
f (2) f (5) f (8) f (11) f (14)
···


On a donc que N = N × {5, 12, 789} .

N × {5, 12, 789} est donc un ensemble (infini) dénombrable. .


C.Q.F.D.

b) N \ {5, 12, 789}.


Solution : Pour montrer la dénombrabilité de N \ {5, 12, 789}, nous allons construire
une fonction bijective f : N −→ N \ {5, 12, 789}, en la définissant en extension de la
maniére suivante :
0 1 2 3 4 6 7 11 13 14 788 790 791
↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
f (0) f (1) f (2) f (3) f (4) f (5) f (6)
··· f (10) f (11) f (12)
··· f (786) f (787) f (788)
···


On a donc que N = N \ {5, 12, 789} .

N \ {5, 12, 789} est donc un ensemble (infini) dénombrable. .
C.Q.F.D.
c) N × N.
Solution : Voir dans les notes de cours.

d) Z × Z.
Solution : Pour montrer la dénombrabilité de Z × Z,
nous allons construire une fonction bijective f : N −→ Z × Z, en la définissant en
extension de la manière suivante :
.. .. .. .. .. .. .. .. ·
. . . . . . . . ··
h3, −3i h3, −2i h3, −1i h3, 0i h3, 1i h3, 2i h3, 3i
↑ ↑ ↑ ↑ ↑ ↑ ↑
··· f (36) f (35) f (34) f (33) f (32) f (31) f (30)
···

h2, −3i h2, −2i h2, −1i h2, 0i h2, 1i h2, 2i h2, 3i
↑ ↑ ↑ ↑ ↑ ↑ ↑
··· f (37) f (16) f (15) f (14) f (13) f (12) f (29)
···

h1, −3i h1, −2i h1, −1i h1, 0i h1, 1i h1, 2i h1, 3i
↑ ↑ ↑ ↑ ↑ ↑ ↑
··· f (38) f (17) f (4) f (3) f (2) f (11) f (28)
···

h0, −3i h0, −2i h0, −1i h0, 0i h0, 1i h0, 2i h0, 3i
↑ ↑ ↑ ↑ ↑ ↑ ↑
··· f (39) f (18) f (5) f (0) f (1) f (10) f (27)
···

h−1, −3i h−1, −2i h−1, −1i h−1, 0i h−1, 1i h−1, 2i h−1, 3i
↑ ↑ ↑ ↑ ↑ ↑ ↑
··· f (40) f (19) f (6) f (7) f (8) f (9) f (26)
···

h−2, −3i h−2, −2i h−2, −1i h−2, 0i h−2, 1i h−2, 2i h−2, 3i
↑ ↑ ↑ ↑ ↑ ↑ ↑
··· f (41) f (20) f (21) f (22) f (23) 24(5) f (25)
···

h−3, −3i h−3, −2i h−3, −1i h−3, 0i h−3, 1i h−3, 2i h−3, 3i
↑ ↑ ↑ ↑ ↑ ↑ ↑
··· f (42) f (43) f (44) f (45) f (46) f (47) f (48)
···

· .. .. .. .. .. .. .. ..
·· . . . . . . . .


On a donc que N = Z × Z .

Z × Z est donc un ensemble (infini) dénombrable. .


C.Q.F.D.
e) l’ensemble de toutes les puissances de 2.
Solution : Pour montrer la dénombrabilité de {2n | n ∈ N}, nous allons construire
une fonction bijective f : N −→ {2n | n ∈ N}, en la définissant en extension de la
manière suivante :

1 2 4 8 16 32 64 128 256
↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
f (0) f (1) f (2) f (3) f (4) f (5) f (6) f (7) f (8)
···


n
On a donc que N = {2 | n ∈ N} .

.
{2n | n ∈ N} est donc un ensemble (infini) dénombrable. C.Q.F.D.

f) l’ensemble de tous les mots qu’on peut construire avec un alphabet qui soit composé
uniquement des lettres “a”, “b” et “c”.
Solution : Notons par Ma,b,c , l’ensemble de tous les mots finis sur l’alphabet {“a”, “b”, “c”}.
Soit f : N −→ Ma,b,c , une fonction bijective définie en extension de la maniére sui-
vante :
Longueur
du mot
Mf inis

0 ε

f (0)

1 a b c
↑ ↑ ↑

f (1) f (2) f (3)

2 aa ab ac ba bb bc ca cb cc
↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑

f (4) f (5) f (6) f (7) f (8) f (9) f (10) f (11) f (12)

3 aaa aab aac aba ··· ccc


↑ ↑ ↑ ↑ ↑

f (13) f (14) f (15) f (16) f (39)

.. ..
. .

Ainsi, il existe une fonction bijective de N vers Ma,b,c ,


L’ensemble
. de tous les mots finis sur l’alphabet {“a”, “b”, “c”} est donc dénombrable.
C.Q.F.D.
Exercice 2 :
a) Démontrez que la fonction f : N −→ N × {2, 3},
(
h 2i , 2i si i est pair
définie par la règle de correspondance f (i) =
h i−1
2
, 3i si i est impair
est bijective.
Solution :
• Pour montrer que f est une fonction, il suffit ici de montrer que la règle de corres-
pondance est bien définie, autrement dit qu’à chaque i de l’ensemble de départ N
correspond un et un seul élément de l’ensemble d’arrivée N × {2, 3}.
Comme un élément de N est soit pair soit impair (et jamais les deux en même
temps), on a donc
- si i est pair il y a h 2i , 2i qui lui f -correspond, ce qui est bien un élément de
l’ensemble d’arrivée et comme alors i n’est pas impair, il ne peut y en avoir
d’autre.
- si i est impair il y a h i−1
2
, 3i qui lui f -correspond, ce qui est bien un élément
de l’ensemble d’arrivée et comme alors i n’est pas pair, il ne peut y en avoir
d’autre.
• Comme f est une fonction, pour montrer que f est surjective, nous allons montrer
que
(∀j ∈ N × {2, 3} | (∃i ∈ N | f (i) = j))

Soit j ∈ N × {2, 3}. . h Montrons (∃i ∈ N | f (i) = j) i


Il y a deux cas à considérer.
Cas 1 : La deuxième composante de j est un 2.
Alors j = hk, 2i pour un certain k ∈ N.
Posons i *
= 2k +
Un tel i existe et appartient à N, car un nombre naturel multiplié
.
par 2 donne un nombre naturel – propriété de l’arithmétique.
Alors f (i) = f (2k) = h 2k
2
, 2i = hk, 2i = j.
. h Voir la déf. de f , 2k étant un nombre pair. i
Cas 2 : la deuxième composante de j est un 3.
Alors j = hl, 3i pour un certain l ∈ N.
Posons
* i = 2l + 1 +
Un tel i existe et appartient à N, car multiplier par 2 un nombre naturel
.
et y ajouter 1 donne un nombre naturel – propriété de l’arithmétique.
Alors f (i) = f (2l + 1) = h (2l+1)−1
2
, 2i = h 2l2 , 2i = hl, 2i = j.
. h Voir la déf. de f , 2l+1 étant un nombre impair. i
Dans tous les cas, nous avons trouvé un i ∈ N tel que f (i) = j..
C.Q.F.D.
f est donc une fonction surjective.
b) En déduire que N × {2, 3} est dénombrable.
Solution :

de a), on déduit que N = N × {2, 3} .

N × {2, 3} est donc (infini) dénombrable.

Exercice 3 : (Pour ce numéro, aucune justification n’est demandée.) Étant donnés les en-
sembles A, B, C et D, que peut-on conclure sur leurs cardinalités ?
a) — il existe une fonction bijective de A vers C ;
— il existe une fonction surjective de A vers B ;
— il existe une fonction injective de A vers D.

Réponse : |D| ≥ |C| = |A| ≥ |B|.

b) — il existe une fonction bijective de A vers C ;


— il existe une fonction surjective de A vers B ;
— il existe une fonction injective de A vers D ;
— il existe une fonction surjective de B vers D.

Réponse : |A| = |B| = |C| = |D|.

c) — il existe une fonction surjective de A vers B ;


— il existe une fonction surjective de B vers C ;
— il existe une fonction surjective de C vers D ;
— il existe une fonction surjective de D vers N.

Réponse : |A| ≥ |B| ≥ |C| ≥ |D| ≥ |N|.


Et donc que A, B, C et D sont tous des ensembles infinis.

d) — il existe une fonction surjective de A vers B,


— il existe une fonction bijective de B vers C,
— il n’existe pas de fonction injective de C vers N.

Réponse : |A| ≥ |B| = |C| > |N|.


Et donc que A, B et C sont tous trois non dénombrables.
Exercice 4 : n o
def x ∗
Rappel : L’ensemble Q = y x ∈ Z, y ∈ Z est l’ensemble des nombres rationnels.

a) Démontrez que Z × Z∗ est dénombrable en construisant en extension une fonction


bijective.
Solution :

• Démontrons que Z∗ est dénombrable en construisant la fonction bijective f : N −→ Z∗


suivante :

··· −4 −3 −2 −1 1 2 3 4 ···
↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
··· f (7) f (5) f (3) f (1) f (0) f (2) f (4) f (6) · · ·

• On sait déjà que Z est dénombrable (Voir l’exemple 1.5.7 à la page 102)
• Z × Z∗ est donc dénombrable (Voir le thérorème 1.5.21(2).)

b) Démontrez que la relation F suivante est une fonction surjective :


F : Z × Z∗ −→ Q
hx, yi 7−→ xy
Solution :

• f : Z × Z∗ −→ Q est une fonction surjective, car...


hx, yi 7−→ xy
(Vous êtes capable de le faire vous-même !)

c) En utilisant a) et b), démontrez que Q est dénombrable.


Solution :

• De b), on conclu que |Z × Z∗ | ≥ |Q|.


• De a), on déduit que |N| = |Z × Z∗ |
• Donc |N| = |Z × Z∗ | ≥ |Q|.

Q est donc dénombrable.


Exercice 5 :

(A) Sans justifiez vos réponses, dites si les énoncés suivants sont VRAIS ou FAUX.

a) une relation asymétrique est toujours antisymétrique et irréflexive. V RAI .

b) Si ρ = {hx, yi ∈ N2 | x < y}, alors ρ−1 = {hx, yi ∈ N2 | x > y}


et ρc = {hx, yi ∈ N2 | x ≥ y}. V RAI .

c) Si θ = {hA, Bi ∈ P(N)2 | A ⊂ B}, alors θ−1 = {hA, Bi ∈ P(N)2 | A ⊃ B}


et θc = {hA, Bi ∈ P(N)2 | A ⊇ B}. F AU X .


d) N{0,1} = {0, 1}N . F AU X .

e) NZ est dénombrable. F AU X .

(B) Complétez et justifiez briévement :

a) S’il n’existe pas de fonction surjective de A vers N, alors A est F IN I .



Justification : Par le théorème 1.5.18 (1 ↔9 ), on sait que A < N .


Comme en plus N est la plus petite cardinalité infinie (voir le théorème 1.5.16),

on a donc que l’ensemble A doit être un ensemble fini.

b) S’il n’existe pas de fonction surjective de N vers A, alors A est


. NON DÉNOMBRABLE .

Justification : théorème 1.5.20 (1 ↔3 ).

c) Soit (Ai )i∈N , une famille d’ensembles finis, alors l’union de tous les ensembles de
S
cette famille (notée i∈N Ai ) est DÉNOMBRABLE .

Justification : Notons ni la cardinalité de l’ensemble Ai . Pour chaque Ai , on


considère une fonction bijective ai : {x ∈ N|x < ni } −→ Ai . Une telle fonction
bijective existe car |{x ∈ N|x < ni }| = |Ai |.
S
On peut construire en extension fonction surjective de k : N −→ i∈N Ai :

a0 (0) a0 (1) a0 (2) a0 (n0 −1)


↑ ↑ ↑ ↑
A0 k(0) k(1) k(2)
··· k(n0−1)

a1 (0) a1 (1) a1 (2) a1 (n1 −1)


↑ ↑ ↑ ↑
A1 k(n0 ) k(n0 +1) k(n0 +2)
··· k(n0 +n1−1)

a2 (0) a2 (1) a2 (2) a2 (n1 −1)


↑ ↑ ↑ ↑
A2 k(n0 +n1 ) k(n0 +n1 +1) k(n0 +n1 +2)
··· k(n0 +n1 +n2−1)

a3 (0) a3 (1) a3 (2) a3 (n1 −1)


↑ ↑ ↑ ↑
A3 k(n0 +n1 +n2 ) k(n0 +n1 +n2 +1) k(n0 +n1 +n2 +2)
··· k(n0 +n1 +n2 +n3−1)

.. .. .. .. .. ..
. . . . . .
S S
On en conclu que |N| ≥ | i∈N Ai |, et donc que i∈N Ai est un ensemble dénombrable.

Notez que notre construction montre “seulement” que k est une fonction surjective
(ce qui est suffisant pour démontrer que l’ensemble est dénombrable). On ne peut
pas conclure que k est bijective car il peut y avoir des éléments commun à plusieurs
ensembles Ai . Dans ce cas, il existe deux y, y 0 ∈ N tels que k(y) = k(y 0 ) et y 6= y 0 ,
k n’est donc pas une fonction injective.

S
d) Soit (Ai )i∈N , une famille d’ensembles infinis dénombrables, alors i∈N Ai est
. INFINI DÉNOMBRABLE .

Justification :
S
(1) L’ensemble i∈N Ai est dénombrable :
Pour chaque ensemble Ai , on considère une fonction bijective ai : N −→ Ai .
Une telle fonction bijective existe car |Ai | = |N|.
S
On peut construire en extension fonction surjective de k : N −→ i∈N Ai :

a0 (0) a0 (1) a0 (2) a0 (3) a0 (4)


↑ ↑ ↑ ↑ ↑
A0 k(0) k(2) k(5) k(9) k(14)
···

a1 (0) a1 (1) a1 (2) a1 (3) a1 (4)


↑ ↑ ↑ ↑ ↑
A1 k(1) k(4) k(8) k(13) k(19)
···

a2 (0) a2 (1) a2 (2) a2 (3) a2 (4)


↑ ↑ ↑ ↑ ↑
A2 k(3) k(7) k(12) k(18) k(25)
···

a3 (0) a3 (1) a3 (2) a3 (3) a3 (4)


↑ ↑ ↑ ↑ ↑
A3 k(6) k(11) k(17) k(24) k(32)
···

a4 (0) a4 (1) a4 (2) a4 (3) a4 (4)


↑ ↑ ↑ ↑ ↑
A4 k(10) k(14) k(23) k(31) k(40)
···

.. .. .. .. .. ..
. . . . . .

S S
On en conclu que |N| ≥ | i∈N Ai |, et donc que i∈N Ai est un ensemble
dénombrable.

S
(2) L’ensemble i∈N Ai est infini :
Soit Ak un ensemble de cette famille (k ∈ N). On a nécessairement Ak ⊆
S S
i∈N Ai et donc |Ak | ≤ | i∈N Ai | (Voir la proposition 1.5.15). Comme Ak est
S
un ensemble infini, on en conclu que i∈N Ai est aussi infini.

Exercice 6 :

a) Démontrez que l’ensemble de tous les mots finis sur l’alphabet {“a”, “b”} est dénombrable
alors que l’ensemble de tous les mots infinis sur ce même alphabet ne l’est pas.

b) Est-ce que l’ensemble de tous les mots (finis et infinis) sur l’alphabet {“a”, “b”} est
dénombrable ? Justifiez brièvement.
Solution de 6a – partie I : Il y a un nombre dénombrable de mots finis sur
l’alphabet à deux lettres
On remarque facilement que sur l’alphabet {“a”, “b”},
— il n’y a qu’un nombre fini de mots de longueur 0. En fait il n’y en a qu’un, le
mot vide qui est généralement noté par ε.
— il n’y a qu’un nombre fini de mots de longueur 1. En fait il n’y en a que deux,
a et b.
— et en général pour chaque n ∈ N, il n’y a qu’un nombre fini de de mots de
longueur n.
Notons par Mf inis , l’ensemble de tous les mots finis sur l’alphabet {“a”, “b”}.
Soit f : N −→ Mf inis , une fonction bijective définie en extension de la manière
suivante :
Longueur
Mf inis
du mot

0 ε

f (0)

1 a b
↑ ↑

f (1) f (2)

2 aa ab ba bb
↑ ↑ ↑ ↑

f (3) f (4) f (5) f (6)

3 aaa aab aba abb baa bab bba bbb


↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑

f (7) f (8) f (9) f (10) f (11) f (12) f (13) f (14)

.. ..
. .

Ainsi, il existe une fonction bijective de N vers Mf inis ,


L’ensemble de tous les mots finis sur l’alphabet {“a”, “b”} est donc dénombrable.
.
C.Q.F.D.
Solution de 6a – partie II : Il y a un nombre non dénombrable de mots
infinis sur l’alphabet à deux lettres
Notons par Minf inis , l’ensemble de tous les mots infinis sur l’alphabet {“a”, “b”}.

Ainsi un élément de Minf inis est un élément de la forme

hα0 , α1 , α2 , α3 , . . .i

où chacun des αi est soit la lettre “a” soit la lettre “b”.

Un mot infini hα0 , α1 , α2 , α3 , . . .i est donc une fonction f : N −→ {“a”, “b”} où
f (0) = α0 , f (1) = α1 , f (2) = α2 , f (3) = α3 , . . .
Et inversement, une fonction f : N −→ {“a”, “b”} est le mot hf (0), f (1), f (2), f (3), . . .i

Ainsi, l’ensemble de tous les mots infinis sur l’alphabet {“a”, “b”} est égal à l’en-
semble {“a”, “b”}N .

Comme {“a”, “b”} ≥ 2 et comme N est infini, par le théorème 1.5.26, on a donc

que {“a”, “b”}N est un ensemble non dénombrable.


L’ensemble de tous les mots infinis sur l’alphabet {“a”, “b”} est donc non dénombrable.
.
C.Q.F.D.

Solution de 6b) Puisque Minf inis ⊆ Mf inis ∪ Minf inis , on a donc par Proposi-
tion 1.5.15 que
Minf inis ≤ Mf inis ∪ Minf inis .

Comme on a démontré en (6a– partie II) que Minf inis est non dénombrable,
on a donc que Mf inis ∪ Minf inis est lui aussi un ensemble non dénombrable.
L’ensemble de tous les mots (finis et infinis) sur l’alphabet {“a”, “b”} est donc non
dénombrable.
.
C.Q.F.D.
Exercice 7 :
Démontrez que l’ensemble de tous les sous-ensembles finis de N est dénombrable alors que
l’ensemble de tous les sous-ensembles de N ne l’est pas.

Solution :
1.- P(N) est non dénombrable.
Par le théorème 1.5.22 (Cantor) [avec A := N], on a que |P(N)| > |N|.
P(N) est donc non dénombrable..
C.Q.F.D.

2.- L’ensemble de tous les sous-ensembles finis de N est dénombrable. On remarque


facilement :
— qu’il n’y a qu’un nombre fini de sous-ensembles finis de N dont la somme des
éléments est égale à 0. En fait il n’y en a que deux, ∅ et {0}.
— qu’il n’y a qu’un nombre fini de sous-ensembles finis de N dont la somme des
éléments est égale à 1. En fait il n’y en a que deux, {1} et {0, 1}.
— qu’en général pour chaque n ∈ N, N ne contenant aucun nombre négatif, il n’y a
qu’un nombre fini de sous-ensembles finis de N dont la somme des éléments est
égale à n.

Notons par A, l’ensemble de tous les sous-ensembles finis de N.


Soit f : N −→ A, une fonction bijective définie en extension de la manière illustrée
par le diagramme (*) à la page suivante.

Ainsi, il existe une fonction bijective de N vers A,


A est donc dénombrable. .
C.Q.F.D.
Diagramme (*) : Illustration de la fonction f : N −→ A.

Somme des
éléments du A
sous-ensemble

0 ∅ {0}
↑ ↑

f (0) f (1)

1 {1} {0, 1}
↑ ↑

f (2) f (3)

2 {2} {0, 2}
↑ ↑

f (4) f (5)

3 {3} {0, 3} {1, 2} {0, 1, 2}


↑ ↑ ↑ ↑

f (6) f (7) f (8) f (9)

4 {4} {0, 4} {1, 3} {0, 1, 3}


↑ ↑ ↑ ↑

f (10) f (11) f (12) f (13)

5 {5} {0, 5} {1, 4} {0, 1, 4} {2, 3} {0, 2, 3}


↑ ↑ ↑ ↑ ↑ ↑

f (14) f (15) f (16) f (17) f (18) f (19)

6 {6} {0, 6} {1, 5} {0, 1, 5} {2, 4} {0, 2, 4} {1, 2, 3} {0, 1, 2, 3}


↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑

f (20) f (21) f (22) f (23) f (24) f (25) f (26) f (27)

.. ..
. .
Exercice 8 :

a) Les données d’entrée et de sortie d’un programme sont des séquences de bits. On peut
donc considérer une séquence de bits comme un nombre naturel exprimé en binaire
(en ajoutant un bit “1” au début de la séquence, de sorte que les “0” initiaux du
programme soient significatifs). Donc un programme calcule une fonction de N vers
N.
L’ensemble de toutes les fonctions de N vers N est-il dénombrable ?

b) Un programme en JAVA est construit à partir d’un nombre fini de symboles et est de
longueur finie. On peut donc considérer un programme comme un mot écrit à l’aide
d’un certain alphabet.

L’ensemble de tous les programmes en JAVA est-il dénombrable ?

c) Si on suppose qu’on n’a aucun problème de mémoire, est-ce que n’importe quelle
fonction de N vers N peut-être calculée en JAVA ? (Justifiez brièvement.)

Solution de 8a)
Par le théorème 1.5.26, on obtient directement que NN , (l’ensemble de toutes les fonc-
tions de N vers N) est non dénombrable. .
C.Q.F.D.

Solution de 8b)
Comme L’ensemble des symboles utilisables dans un programme JAVA est fini, On a
donc que pour chaque n ∈ N \ {0}, il y a au plus un nombre fini de programmes JAVA
de longueur n.
• Soit n1 le nombre de programmes JAVA de longueur 1.
Et soit J11 , J21 , . . . Jn11 , ces programmes de longueur 1.
• Soit n2 le nombre de programmes JAVA de longueur 2.
Et soit J12 , J22 , . . . Jn22 , ces programmes de longueur 2.
• Soit n3 le nombre de programmes JAVA de longueur 3.
Et soit J13 , J23 , . . . Jn32 , ces programmes de longueur 3.
• etc...
Soit J , l’ensemble de tous les programmes JAVA.
Et soit f , une fonction bijective de N vers J , définie en extension de la manière
suivante :
Longueur du
programme
J
1 J11 J21 ... Jn11
↑ ↑ ↑
f (0) f (1) f (n1 −1)

2 J12 J21 ... Jn11


↑ ↑ ↑
f (n1 ) f (n1 +1) f (n1 +n2 −1)

3 J13 J21 ... Jn11


↑ ↑ ↑
f (n1 +n2 ) f (n1 +n2 +1) f (n1 +n2 +n3 −1)

.. ..
. .

Ainsi, il existe une fonction bijective de N vers l’ensemble de tous les programmes
JAVA,
cet ensemble est donc dénombrable. .
C.Q.F.D.

Solution de 8c) Non, parce que si chacune de ces fonctions était calculable en JAVA,
il faudrait qu’il y ait au moins “autant” de programmes JAVA que de fonctions de N
vers N. Or il existe un nombre non dénombrable de fonctions de N vers N, mais
seulement un nombre dénombrable de programmes JAVA.

Exercice 9 : Expliquez brièvement pourquoi {0, 1, 2}N est non dénombrable.

Voir le théorème 1.5.26 et l’exemple 1.5.27.

Exercice 10 : Soit la fonction f , définie par f : [1, 100] −→ [0, 1]


x 7−→ x−1
100

a) Démontrez que f est injective, mais pas surjective.


Solutions :
f est injective.
Comme f est une fonction, il suffit de montrer :

(∀x, x0 ∈ [1, 100] | f (x) = f (x0 ) ⇒ x = x0 )


Soit x, x0 ∈ [1, 100] et supposons que f (x) = f (x0 ). . h Montrons x = x0 i
−1 0
Alors on a x−1
100
= x100 . h Définition de f i
0
Donc x−1=x −1 . h Propriété de l’arithmétique i
Donc x = x0 . h Propriété de l’arithmétique i

f est donc une fonction injective. .


C.Q.F.D.

f n’est pas surjective


Comme f est une fonction, il suffit de montrer :

¬(∀y ∈ [0, 1] | (∃x ∈ [1, 100] | f (x) = y))

Ce qui par la loi de De Morgan (pour le ∀) est équivalent à montrer :

(∃y ∈ [0, 1] | ¬(∃x ∈ [1, 100] | f (x) = y))

Ce qui par la loi de De Morgan (pour le ∃) est équivalent à montrer :

(∃y ∈ [0, 1] | (∀x ∈ [1, 100] | f (x) 6= y))

Soit y = 1 . h Clairement, un tel y existe et appartient à [0, 1]. i


Soit x ∈ [1, 100] . h Montrons f (x) 6= y i
Alors,
x−1
f (x) = 100
hDéfinition de f.i
100−1
≤ 100
hCar f est un fonction croissante et x ≤ 100.i
99
= 100
< 1

Donc f (x) 6= 1 . h car f (x) < 1. i


Donc f (x) 6= y

f n’est donc pas une fonction surjective. .


C.Q.F.D.


b) Peut-on conclure de a) que [1, 100] ≤ [0, 1] ? Pourquoi ?

Solution : OUI, voir la définition 1.5.11.

c) Peut-on conclure de a) que [1, 100] < [0, 1] ? Pourquoi ?

Solution :
NON, car ce n’est pas parce que la fonction f : [1, 100] −→ [0, 1] n’est pas surjective
qu’il n’existe pas de fonction surjective de [1, 100] vers [0, 1].

d) Est-ce que [1,100] est dénombrable ? Justifiez.


Solution :
NON.

(1) - Montrons que h : [0, 1[ −→ [1, 100] est une fonction injective.
x 7−→ x + 1
Pour montrer que h est une fonction, il suffit de monter que la règle de corres-
pondance est bien définie, ce qui est clairement le cas, car :
— pour chaque élément x de l’ensemble de départ [0, 1[ il existe un et un seul
élément qui lui correspond, soit l’élément x + 1,
— et cet élément x + 1 est bien dans l’ensemble d’arrivée [1, 100] si x ∈ [0, 1[.

Montrons donc que h est injectif en montrant :

(∀x, x0 ∈ [0, 1[ | h(x) = h(x0 ) ⇒ x = x0 )

Soit x, x0 ∈ [0, 1[ et supposons que h(x) = h(x0 ). . h Montrons x = x0 i


Alors x + 1 = x0 + 1 . h Définition de h. i
Donc x = x0 . h Propriété de l’arithmétique. i
.
C.Q.F.D.
h est donc une fonction injective.

(2) - De (1), on conclu que [0, 1[ ≤ [1, 100] .


(3) - Comme dans les notes on a démontré que N < [0, 1[ .


On a donc que N < [0, 1[ ≤ [1, 100] .

[1, 100] est donc un ensemble non dénombrable.


Section 2.1.4 – Exercices sur les suites

Exercice 1 : Évaluez la valeur de la sommation suivante :


3 X
X 2
s = ( i2 + j ) .
i=1 j=1

Solution 1 : Comme les sommes comportent peu de termes, il est facile de les calculer
“à la main” :
X 3 X2
s = ( i2 + j )
i=1 j=1
3
X
= ( (i2 + 1) + (i2 + 2) )
i=1
3
X
= ( 2i2 + 3 )
i=1
= (2 · 12 + 3) + (2 · 22 + 3) + (2 · 32 + 3)
= 5 + 11 + 21
= 37
Solution 2 : En utilisant les propriétés des sommes en notation sigma, on obtient :
X3 X 2
s = ( i2 + j )
i=1 "
j=1 #
X3 X2 X2
= i2 + j .h Prop 2.1.2-c i
i=1 j=1 j=1
3
XX 2 X3 X2
= i2 + j .h Prop 2.1.2-c i
i=1 j=1 i=1 j=1
3
X 2
X
= 2i2 + 3 j .h Prop 2.1.2-b, cas particulier (2 fois) i
i=1 j=1
X 3 X 2
= 2 i2 + 3 j .h Prop 2.1.2-b i
i=1 j=1
2
(2 · 3 + 1) · (3 + 1) · 3 X
= 2· + 3 j .h Prop 2.1.2-e i
6 j=1
(2 · 3 + 1) · (3 + 1) · 3 2 · (2 + 1)
= 2· + 3· .h Prop 2.1.2-d i
6 2
= 7·4 + 3·3 .h Arithmétique i
= 37
Exercice 2 : En vous servant de la notation en extension des sommes, illustrez les égalités
suivantes (la réponse du premier exercice vous est donnée à titre d’exemple) :

n
X n
X
a) i = 1+ i
i=1 i=2

Solution :
Xn
i = 1 + 2 + 3 + ... + n
i=1
= 1 + (2 + 3 + . . . + n)
Xn
= 1+ i
i=2

n
X n
X
b) i = i
i=0 i=1

Solution :
Xn
i = 0 + 1 + 2 + 3 + ... + n
i=0
= 1 + 2 + 3 + ... + n
Xn
= i
i=1

n
X n−1
X
c) (n − i) = i
i=1 i=1

Solution :
Xn
(n − i) = (n − 1) + (n − 2) + . . . + (n − (n−2)) + (n − (n−1)) + (n − n)
i=1
= (n − 1) + (n − 2) + . . . + 2 + 1 + 0
= 0 + 1 + 2 + . . . + (n − 2) + (n − 1) 

= 1 + 2 + . . . + (n − 2) + (n − 1)
n−1
X
= i
i=1
n n
X √ X √
d) k i = k· i , pour tout k ∈ R
i=1 i=1

Solution :
n
X √ √ √ √ √
k i = k 1 + k 2 + k 3 + ... + k n
i=1 √ √ √ √
= k · ( 1 + 2 + 3 + . . . + n)
n
X √
= k· i.
i=1

n−1
X n
X
e) 2i + 1 = 2i − 1
i=0 i=1

Solution :
n−1
X
2i + 1 = (2 · 0 + 1) + (2 · 1 + 1) + (2 · 2 + 1) + . . . + (2 · (n − 1) + 1)
i=0
= (2 · 1 − 2 + 1) + (2 · 2 − 2 + 1) + (2 · 3 − 2 + 1) + . . . + (2 · n − 2 + 1)
= (2 · 1 − 1) + (2 · 2 − 1) + (2 · 3 − 1) + . . . + (2 · n − 1)
Xn
= 2i − 1 .
i=1

n−1 X
X n X
n
f) 1 = n3 − n2
i=1 j=1 k=1

Solution :
n−1 X
X n Xn n−1 X
X n
1 = {z. . . + 1})
(1| + 1 +
i=1 j=1 k=1 i=1 j=1 n fois
n−1
XX n
= n
i=1 j=1
n−1
X
= (n {z. . . + n})
| +n+
i=1 n fois
n−1
X
= n·n
i=1
n−1
X
= n2
i=1
2 2 2
= n
| +n +{z . . . + n}
(n−1) fois
2
= (n−1) · n
= n3 − n2
Exercice 3 : Soit la suite hvn in∈N∗ dont le nième terme correspond à la valeur retournée par
l’algorithme suivant exécuté avec le paramètre n en entrée (avec n ≥ 1).

Algo Jouet Trois ( n )


v←0
Pour i = 1 à n Faire
Pour j = i + 1 à n Faire
v ←v+1
Fin Pour
Fin Pour
Retourner v

a) À l’aide de la notation sigma, donnez l’expression permettant de calculer un terme vn


quelconque (avec n ∈ N∗ ).
Solution :
Xn X n
vn = 1.
i=1 j=i+1

b) À partir de la réponse précédente, calculez le terme général de la suite hvn in∈N∗ . Pour
ce faire, utilisez les propriétés arithmétiques des sommes en notation sigma.
Solution :
Xn X
n
vn = 1
i=1 j=i+1
Xn
= (n − i) .h Prop 2.1.2-a i
i=1
n−1
X
= i .h Voir l’exercice 2-c ci-haut i
i=1
(n−1) · ( (n−1) + 1 )
= .h Prop 2.1.2-d i
2
n(n − 1)
= .h Arithmétique i
2

c) Donnez la définition par récurrence de la suite hvn in∈N∗ .


Solution : 
v = 0
1
vn = vn−1 + (n − 1) ∀n ∈ N∗ \ {1} .
d) Calculez les 5 premiers termes de la suite hvn in∈N∗ à l’aide de chacune des trois ex-
pressions trouvées en (a), (b) et (c). Assurez-vous que les réponses sont identiques.
Solution :
hvn in∈N∗ = h0, 1, 3, 6, 10, . . .i .
Section 2.2.3 –
Exercices sur la méthode des substitutions à rebours

Exercice 1 : Calculez le terme général des récurrences suivantes à l’aide de la méthode des
substitutions à rebours :

x = 0
1
a)
xn = xn−1 + 5 ∀n ∈ N∗ \ {1}

Solution :
xn = xn−1 + 5 .h Définition par récurrence de xn i
= xn−2 + 5 + 5 .h Car xn−1 = xn−2 + 5 i
= xn−3 + 5 + 5 + 5 .h Car xn−2 = xn−3 + 5 i
= xn−4 + 5 + 5 + 5 + 5 .h Car xn−3 = xn−4 + 5 i
= ...
= xn−i + 5| + 5 +
{z. . . + 5} .h ∀i ∈ N∗ i
i fois
= xn−i + 5i
= x1 + 5 · (n−1) .h Avec [i := n − 1] i
= 5 · (n−1) .h Car x1 = 0 i
= 5n − 5


y(1) = 4
b)
y(n) = 3 · y(n − 1) ∀n ∈ N∗ \ {1}

Solution :
y(n) = 3 · y(n − 1) .h Définition par récurrence de yn i
= 3 · 3 · y(n − 2) .h Car y(n − 1) = 3 · y(n − 2) i
= 3 · 3 · 3 · y(n − 3) .h Car y(n − 2) = 3 · y(n − 3) i
= 3 · 3 · 3 · 3 · y(n − 4) .h Car y(n − 3) = 3 · y(n − 4) i
= ...
= 3| · 3 ·{z. . . · 3} ·y(n − i) .h Pour tout i ∈ N∗ i
i fois
= 3i · y(n − i)
= 3n−1 · y(1) .h Avec [i := n − 1] i
= 4 · 3n−1 .h Car y(1) = 4 i

z(0) = 0
c)
z(n) = z(n − 1) + 2n − 1 ∀n ∈ N∗

Solution :

z(n)
= z(n−1) + 2n − 1 .h Définition de zn i
= z(n−2) + 2(n−1) − 1 + 2n − 1 .h Substitution de z(n − 1) i
= z(n−2) + 2(n−1) + 2n − 2 .h Arithmétique i

= z(n−3) + 2(n−2) − 1 + 2(n−1) + 2n − 2 .h Substitution de z(n − 2) i


= z(n−3) + 2(n−2) + 2(n−1) + 2n − 3 .h Arithmétique i

= z(n−4) + 2(n−3) − 1 + 2(n−2) + 2(n−1) + 2n − 3 .h Substitution de z(n − 3) i


= z(n−4) + 2(n−3) + 2(n−2) + 2(n−1) + 2n − 4 .h Arithmétique i
= z(n−4) + 2 [ (n−3) + (n−2) + (n−1) + n ] − 4 .h Arithmétique i
···
= z(n−i) + 2 [ (n−(i−1)) + (n−(i−2)) + . . . + (n−1) + n ] − i .h ∀i ∈ N∗ i

= z(0) + 2 [ (n−(n−1)) + (n−(n−2)) + . . . + (n−1) + n ] − n .h Avec [i := n] i


= z(0) + 2 [ 1 + 2 + . . . + (n−1) + n ] − n .h Arithmétique i
= z(0) + n + 2 [ 1 + 2 + . . . + (n−1) ] .h Car 2n − n = n i

= n + 2 [ 1 + 2 + . . . + (n−1) ] .h Car z(0) = 0 i


n−1
X
= n+2· j .h Notation sigma i
j=1

(n−1) · ( (n−1) + 1 )
= n+2· .h Prop 2.1.2-d, avec [n := n − 1] i
2
(n−1) · n
= n+2· .h Arithmétique i
2
= n + n2 − n
= n2
Section 2.3.4 – Exercices sur l’induction mathématique

Exercice 1 : Étant donnée la formule :


n
X
2i = n(n + 1) .
i=0

a) Vérifiez cette formule pour n = 1, 2, 5 et 10.


b) Démontrez par induction que cette formule est vraie pour tout n ∈ N.
Démonstration n
X
Prenons le prédicat P (n) : 2i = n(n + 1).
i=0
Alors nous devons démontrer que (∀n ∈ N | P (n)).
Et par le principe d’induction mathématique,
il suffit de démontrer que P (0) ∧ (∀n ∈ N∗ | P (n − 1) ⇒ P (n)).
* +
0
X
Montrons P (0). . C’est-à-dire, montrons 2i = 0 · (0 + 1).
i=0
0
X
2i = 2 · 0 , ce qui est bien égal à 0 · (0 + 1).
i=0

Montrons (∀n ∈ N∗ | P (n − 1) ⇒ P (n)).


Soit n ∈ N∗ , choisi tel que P (n −*1) est vrai. +
n−1
X
. C’est-à-dire, tel que 2i = (n−1)((n−1)+1)
i=0
* +
n
X
Montrons P (n). . C’est à dire 2i = n(n + 1)
i=0

n
X
2i
i=0
= . h Passage de l’écriture en notation sigma à l’écriture en extension i
2 · 0 + 2 · 1 + 2 · 2 + ... + 2 · n
=
2 · 0 + 2 · 1 + 2 · 2 + . . . + 2 · (n − 1) + 2 · n
=  
2 · 0 + 2 · 1 + 2 · 2 + . . . + 2 · (n − 1) + 2 · n
= . ! h Passage de l’écriture en extension à l’écriture notation sigma. i
n−1
X
2i + 2 · n
i=0
= . h Par l’hypothèse d’induction. i
(n − 1)((n − 1) + 1) + 2 · n
= . h Développement de l’expression. i
2
(n − n) + 2n
=
n2 + n
= . h Mise en évidence. i
n(n + 1) .

On a démontré (∀n ∈ N∗ | P (n − 1) ⇒ P (n)).


 
Conclusion : on a bien ∀n ∈ N | P (n) ,
n
X
c’est à dire : 2i = n(n + 1). .
i=0
C.Q.F.D.

Exercice 2 : Soit f : N −→ R, une fonction qui satisfait la règle de récurrence suivante :


(
f (0) = 3
f (k + 1) = 2 · f (k) + 2k − 4 ∀k ∈ N∗ .

a) Évaluez f (0), f (1), f (2), f (5) et f (10).


Réponse : f (0) = 3, f (1) = 2, f (2) = 2, f (5) = 24 et f (10) = 1006.

b) Démontrez par induction que f (n) = 2n − 2n + 2 ∀n ∈ N.


Démonstration
Prenons le prédicat P (n) : f (n) = 2n − 2n + 2.
Alors nous devons démontrer que (∀n ∈ N | P (n)).
Et par le principe d’induction mathématique,
il suffit de démontrer que P (0) ∧ (∀n ∈ N | P (n) ⇒ P (n + 1)). 3

Montrons P (0). . h C’est-à-dire, montrons f (0) = 20 − 2 · 0 + 2 . i


20 − 2 · 0 + 2 = 1 − 0 + 2 = 3 , ce qui est bien égal à la définition de f (0) .

3. Notez que nous avons choisi cette forme du principe d’induction car elle est mieux adaptée à ce problème.
Montrons (∀n ∈ N | P (n) ⇒ P (n + 1)).
Soit n ∈ N, choisi tel que P (n) est vrai. .h C’est-à-dire, tel que f (n) = 2n − 2n + 2. i
Et montrons P (n + 1). . h c’est à dire f (n + 1) = 2n+1 − 2(n + 1) + 2. i

f (n + 1)
= . h Définition de f , car n ∈ N. i
2 · f (n) + 2n − 4
= . h Par l’hypothèse d’induction. i
2(2n − 2n + 2) + 2n − 4
= . h Simplifications algébriques. i
n
2 · 2 − 4n + 4 + 2n − 4
= . h Simplifications algébriques. i
n+1
2 − 2n − 2 + 2
= . h Mise en évidence. i
n+1
2 − 2(n + 1) + 2 .

On a démontré (∀n ∈ N | P (n) ⇒ P (n + 1)).

 
Conclusion : on a bien ∀n ∈ N | P (n) ,
c’est à dire : f (n) = 2n − 2n + 2 ∀n ∈ N. .
C.Q.F.D.
Exercice 3 : Soit la suite han in∈N définie par récurrence par :
(
a0 = 2
an = 3an−1 + 2 ∀n ∈ N∗ .

Montrez par induction que le terme général de la suite han in∈N est :

an = 3n+1 − 1 ∀n ∈ N .

Démonstration
Prenons le prédicat P (n) : an = 3n+1 − 1.
Alors nous devons démontrer que (∀n ∈ N | P (n)).
Et par le principe d’induction mathématique,
il suffit de démontrer que P (0) ∧ (∀n ∈ N? | P (n − 1) ⇒ P (n)).

Montrons P (0). . h C’est-à-dire, montrons a0 = 30+1 − 1. i


30+1 − 1 = 3 − 1 = 2 , ce qui est bien égal à la définition de a0 .
Montrons (∀n ∈ N∗ | P (n − 1) ⇒ P (n)).
Soit n ∈ N? , choisi tel que P (n − 1) est vrai. (C’est-à-dire, tel que an−1 = 3(n−1)+1 − 1.)
h Et montrons P (n). (c’est à dire an = 3n+1 − 1.)

an
= . h Définition de la suite han in∈N , car n ∈ N? . i
3 an−1 + 2
= . h Par l’hypothèse d’induction. i
3(3(n−1)+1 − 1) + 2
= . h Simplification algébrique. i
n
3(3 − 1) + 2
= . h Par distributivité. i
n
3·3 −3+2
= . h Simplifications algébriques. i
n+1
3 − 1.

On a démontré (∀n ∈ N? | P (n − 1) ⇒ P (n)).

 
Conclusion : on a bien ∀n ∈ N | P (n) , c’est à dire : an = 3n+1 − 1 ∀n ∈ N.
.
C.Q.F.D.

Exercice 4 : Soit la suite hbn in∈N définie par récurrence par :


(
b0 = −4
bn = 3 bn−1 + 4n + 4 ∀n ∈ N∗ .

Montrez par induction que le terme général de la suite hbn in∈N est :

bn = 3n − 2n − 5 ∀n ∈ N .

Démonstration
Prenons le prédicat P (n) : bn = 3n − 2n − 5.
Alors nous devons démontrer que (∀n ∈ N | P (n)).
Et par le principe d’induction mathématique,
il suffit de démontrer que P (0) ∧ (∀n ∈ N? | P (n − 1) ⇒ P (n)).

Montrons P (0). . h C’est-à-dire, montrons b0 = 30 − 2 · 0 − 5. i


30 − 2 · 0 − 5 = 1 − 0 − 5 = −4 , ce qui est bien égal à la définition de b0 .
Montrons (∀n ∈ N∗ | P (n − 1) ⇒ P (n)).
Soit n ∈ N? , choisi tel que P (n − 1) est vrai.
(C’est-à-dire, tel que bn−1 = 3n−1 − 2(n − 1) − 5.)
Montrons P (n). (c’est à dire bn = 3n − 2n − 5.)

bn
= . h Définition de la suite hbn in∈N , car car n ∈ N? . i
3 bn−1 + 4n + 4
= . h Par l’hypothèse d’induction. i
n−1
3(3 − 2(n − 1) − 5) + 4n + 4
= . h Simplification algébrique. i
3 · 3n−1 − 6n + 6 − 15 + 4n + 4
= . h Simplifications algébriques. i
n
3 − 2n − 5 .

On a démontré (∀n ∈ N? | P (n − 1) ⇒ P (n)).


 
Conclusion : on a bien ∀n ∈ N | P (n) ,
c’est à dire : bn = 3n − 2n − 5 ∀n ∈ N. .
C.Q.F.D.

Exercice 5 : Soit la suite hcn in∈N définie par récurrence par :



 c0 = 1

c1 = 1

cn = 4 · cn−1 − 4 · cn−2 ∀n ∈ N \ {0, 1} .

Montrez par induction que le terme général de la suite hcn in∈N est :

cn = 2n−1 · (2 − n) ∀n ∈ N .

Démonstration
Prenons le prédicat P (n) : cn = 2n−1 · (2 − n).
Alors nous devons démontrer que (∀n ∈ N | P (n)).
Et par le principe d’induction mathématique à deux cas de base,
il suffit de démontrer que P (0) ∧ P (1) ∧ (∀n ∈ N\{0, 1} | P (n − 2) ∧ P (n − 1) ⇒ P (n)).
Montrons P (0). . h C’est-à-dire, montrons c0 = 20−1 · (2 − 0). i
1
20−1 · (2 − 0) = 2
· 2 = 1 , ce qui est bien égal à la définition de c0 .
Montrons P (1). . h C’est-à-dire, montrons c1 = 21−1 · (2 − 1). i
21−1 · (2 − 1) = 1 · 1 = 1 , ce qui est bien égal à la définition de c1 .

Montrons (∀n ∈ N\{0, 1} | P (n − 2) ∧ P (n − 1) ⇒ P (n)).


Soit n ∈ N? , choisi tel que P (n − 2) et P (n − 1) sont vrais.
Nous avons donc : (
cn−2 = 2(n−2)−1 · (2 − (n − 2))
cn−1 = 2(n−1)−1 · (2 − (n − 1))

Montrons P (n). (c’est à dire cn = 2n−1 · (2 − n).)

cn
= . h Définition de la suite hcn in∈N , car n ∈ N\{0, 1}. i
4 · cn−1 − 4 · cn−2
= .    h Par l’hypothèse d’induction. i
4 2(n−1)−1 · (2 − (n − 1)) − 4 2(n−2)−1 · (2 − (n − 2))
= .     h Simplification algébrique. i
n−2 n−3
4 2 · (3 − n) − 4 2 · (4 − n)
= . h Simplifications algébriques. i
n−2 n−2 n−3 n−3
12 · 2 − 4n · 2 − 16 · 2 + 4n · 2
= . h Réécriture de l’expression. i
6 · 2 · 2n−2 − 2n · 2 · 2n−2 − 4 · 4 · 2n−3 + n · 4 · 2n−3
= . h Simplifications algébriques. i
n−1 n−1 n−1 n−1
6·2 − 2n · 2 −4·2 +n·2
= . h Mise en évidence. i
n−1
2 · (6 − 2n − 4 + n))
= . h Simplifications algébriques. i
2n−1 · (2 − n) .
 
On a démontré ∀n ∈ N\{0, 1} | P (n − 2) ∧ P (n − 1) ⇒ P (n) .

 
Conclusion : on a bien ∀n ∈ N | P (n) ,
c’est à dire : cn = 2n−1 · (2 − n) ∀n ∈ N. .
C.Q.F.D.
Section 2.4.5 –
Exercices sur les cas particuliers de recurrences

Exercice 1 :
a) Est-ce que la suite hcn in∈N , définie par le terme général cn = 5n − 6 ∀n ∈ N, est une
suite arithmétique ?
Réponse : oui, voir le théorème 2.4.2 (3. ⇒ 1.)

b) Donnez c0 , c1 et c200 .
Réponse : c0 = −6, c1 = −1 et c200 = 994.
(
S0 = −6
c) Soit la suite hSn in∈N définie par récurrence par :
Sn = Sn−1 + 5n − 6 ∀n ∈ N∗ .
Montrez (sans utiliser l’induction) que le terme général de la suite hSn in∈N est

(n + 1)(5n − 12)
Sn = ∀n ∈ N .
2
Démonstration
Comme la suite han in∈N est une suite arithmétique (voir a)), Sn est donc une suite de
somme de premiers termes d’une suite arithmétique, par le théorème 2.4.6, on obtient
donc
(a0 + an )(n + 1) (−6 + 5n − 6)(n + 1) (n + 1)(5n − 12)
Sn = = = ∀n ∈ N
2 2 2
.
C.Q.F.D.

Exercice 2 : Soit la suite hdn in∈N définie par récurrence par :


(
d0 = 5 · 23
dn = dn−1 + 5 · 2n+3 ∀n ∈ N∗ .

Montrez (sans utiliser l’induction) que le terme général de la suite hdn in∈N est

5 · 23 (1 − 2n+1 )
dn = ∀n ∈ N .
−1
Démonstration
Soit la suite han in∈N définie par le terme général an = 5 · 2n+3 ∀n ∈ N.
Comme 5 · 2n+3 = (5 · 23 ) · 2n et comme a0 = 5 · 23 , par le théorème 2.4.4 (3. ⇒ 1.) on
remarque que :
la suite han in∈N est une suite géométrique de premier terme a = 5 · 23 et de raison
r = 2.
On a donc que la suite Sn est une suite de sommes de premiers termes d’une suite
géométrique, par le théorème 2.4.7, on obtient donc

5 · 23 · (1 − 2n+1 ) 5 · 23 · (1 − 2n+1 )
Sn = = ∀n ∈ N
. 1−2 −1
C.Q.F.D.

Exercice 3 : Vous placez $1000.00 dans un compte à intérêt composé de 5% par année.
Ainsi, aprés un an il y aura dans votre compte, $1000.00 +(5% de $1000.00 ), c’est-
à-dire, en tout $1050.00 . Aprés deux ans, il y aura dans votre compte, $1050.00 +
(5% de $1050.00 ), etc...

Soit h$n in∈N , la suite qui donne le montant d’argent qu’il a dans votre compte aprés n années.

a) Définissez h$(
n in∈N par récurrence.
$0 = 1000
Réponse :
$n = $n−1 + 0.05 · $n−1 ∀n ∈ N?
ou encore (
$0 = 1000
Réponse :
$n = 1.05 · $n−1 ∀n ∈ N?

b) Trouvez le terme général de h$n in∈N .


Démonstration
En se basant sur la deuxiéme réponse du numéro b) et sur le théorème 2.4.4(2. ⇒ 1.),
on constate que h$n in∈N est une suite géométrique de premier terme a0 = 1000 et de
raison r = 1.05.
Par le (2. ⇒ 3.) de ce théorème on obtient donc que le terme général de cette suite
est :
$n = 1000 · 1.05n ∀n ∈ N
.
C.Q.F.D.

c) Aprés 10 ans, combien d’argent y aura-t-il dans le compte ?


Réponse : $10 = 1000 · 1.0510 = 1628.89 dollars.

Exercice 4 : Trouvez le terme général des suites suivantes :

a) an = 1 + 3 + 5 + 7 + 9 + · · · + (2n + 1) ∀n ∈ N .
Réponse : an = (n + 1)2 ∀n ∈ N

(
b0 = −2
b)
bn = bn−1 + 5n − 2 ∀n ∈ N∗ .
(5n − 4)(n + 1)
Réponse : bn = ∀n ∈ N .
2
(
b0 = 0
c)
bn = bn−1 + n ∀n ∈ N∗ .

Solution :
On remarque qu’il est possible que hbn in∈N soit une suite sommes de premiers termes
d’une suite arithmétique. (Voir théorème 2.4.6 et Définition 2.4.5.)

Soit han in∈N , la suite définie par le terme général an = 0 + n · 1 ∀n ∈ N.


Alors,
(1) par le théorème 2.4.2, on a que han in∈N est une suite arithmétique de 1er terme
a = 0 et de différence d = 1.
(
b 0 = a0
(2) Et en plus, on a bien que
bn = bn−1 + an ∀n ∈ N∗
. h Car a0 = 0 et an = 0 + n · 1 = n. i

(a0 + an )(n + 1)
Donc, par le théorème 2.4.6, on a bn = ∀n ∈ N.
2
(0 + 0 + n · 1)(n + 1) n(n + 1)
Réponse : bn = = ∀n ∈ N
2 2

 d0 = 1

d) d1 = 8

dn = 6 · dn−1 − 9 · dn−2 ∀n ∈ N \ {0, 1} .

Solution : (La méthode des récurrences linéaires homogénes )

Nous allons appliquer le théorème 2.4.9.


Soit p(x) = x2 − 6x + 9, le polynôme caractéristique de la suite hdn in∈N .
Par la formule quadratique, on constate facilement que les zéros de du polynôme p
sont x1 = 3 et x2 = 3.

Comme x1 = x2 , on a donc, par le théorème 2.4.9, que le terme général de la suite


hdn in∈N est de la forme

dn = C1 · (3)n + C2 · n · (3)n ∀n ∈ N

où C1 et C2 sont deux constantes.

Déterminons les valeurs de ces deux constantes :

On sait que d0 = 1 et d1 = 8.
Donc on a C1 · (3)0 + C2 · 0 · (3)0 = 1
C1 · (3)1 + C2 · 1 · (3)1 = 8

Donc on a C1 · 1 + 0 = 1
C1 · (3) + C2 · 1 · (3) = 8

Donc on a C1 = 1
3 · C1 + C2 · 1 · 3 = 8

Donc C1 = 1
C2 = 8−3·C
3
1

Donc C1 = 1
C2 = 53

Réponse : Le terme général de la suite hdn in∈N est

dn = 3n + 5n · 3n−1 ∀n ∈ N
Exercice 5 : Évaluez la somme suivante :
1 1
32 + 8 + 2 + + ... + .
2 524288

 
1 12+1

32 · 1 − 4
Réponse : 1 = ···
1− 4

Exercice 6 : En utilisant le théorème sur les récurrences linéaires homogènes d’ordre 2,


exprimez les suites suivantes sous forme de fonctions rationnelles :
 
 f0 = 0
  b0 = 2

a) f1 = 1 b) b1 = 6
 
fn = fn−1 + fn−2 ∀n ∈ N \ {0, 1} bn = bn−1 + bn−2 ∀n ∈ N \ {0, 1}
 

 
 c0 = 1
  d0 = 1

c) c1 = 4 d) d1 = 1
 
cn = 4 · cn−1 − 4 · cn−2 ∀n ∈ N \ {0, 1} dn = 4 · dn−1 − 4 · dn−2 ∀n ∈ N \ {0, 1}
 

Réponses :
√ !n √ !n
1 1+ 5 1 1− 5
a) fn = √ −√ ∀n ∈ N
5 2 5 2
√ !n √ !n
√ 1+ 5 √ 1− 5
b) bn = (1 + 5) + (1 − 5) ∀n ∈ N
2 2

c) cn = 2n · (n + 1) ∀n ∈ N

d) dn = 2n−1 · (2 − n) ∀n ∈ N
Section 2.5.5 –
Exercices sur la méthode des séries génératrices

Exercice 1 : Exprimez les séries génératrices des suites suivantes sous forme de fonctions
rationnelles :
( (
a0 = 1 b0 = 1
a) b)
an = 2 · an−1 + 3n ∀n ∈ N∗ bn = bn−1 + n ∀n ∈ N∗
 
 c0 = 1
  d0 = 1

c) c1 = 1 d) d1 = 1
 
cn = cn−1 + cn−2 ∀n ∈ N \ {0, 1} dn = 4 · dn−1 − 4 · dn−2 ∀n ∈ N \ {0, 1}
 

1 x2 −x+1 1 1−3x
Réponses : a) G(x) = (1−2x)(1−3x)
b) G(x) = (1−x)3
c) G(x) = 1−x−x2
d) G(x) = (1−2x)2
.

Exercice 2 : Décomposez en fractions partielles les fonctions rationnelles suivantes :

1 x x
a) a(x) = b) b(x) = c) c(x) =
(x + 4)(x + 3) (1 − x)2 (1 + x) (x − 1)(x − 2)(x − 3)
1 − 3x 1 − 3x x2 + 2x + 3
d) d(x) = e) e(x) = f ) f (x) =
1 − 4x + 4x2 (1 − 2x)2 (x − 1)2 (x − 2)

Réponses :
A B A B C A B C
a) a(x) = + b) b(x) = + 2
+ c) c(x) = + +
(x + 4) (x + 3) 1 − x (1 − x) (1 + x) x−1 x−2 x−3
A B A B C
d) Voir 2e) e) e(x) = + f ) f (x) = + + .
1 − 2x (1 − 2x)2 x − 1 (x − 1)2 x−2

Exercice 3 : Trouvez la série de puissances associée à chacune des fonctions suivantes.


3 −1
1 3 2 2
a) a(x) = b) b(x) = c) c(x) = +
(1 − 5x) x−5 1 − 2x (1 − 2x)2
Réponses en extension :
a) 1 + 5 · x + 52 · x2 + 53 · x3 + · · · + 5n · xn + · · ·
−3
b) 1−51 x = −3
5
+ −35 5
1
· x + −3
5
( 15 )2 · x2 + −3
5
( 15 )3 · x3 + · · · + −3
5
( 15 )n · xn + · · ·
5
c) 1 + 1·x + (22 −2·21 )·x2 + (23 −3·22 )·x3 + (24 −4·23 )·x4 + · · · + (2n −n·2n−1 )·xn + · · ·

Réponses en notation sigma :


∞ ∞    i ∞
X
i i
X 3 1 X
· xi 2i − i · 2i−1 · xi
 
a) 5 x b) − · c)
i=0 i=0
5 5 i=0
Exercice 4 : Pour chacune des suites définies par récurrence suivantes, résolvez la récurrence
par la méthode des séries génératrices.

(
a0 = 2
a)
an = 3an−1 + 2n ∀n ∈ N∗

Solution :

Étape 1 : (on exprime la série génératrice sous la forme d’une fonction rationnelle)

• On remarque que : an − 3 · an−1 − (2n ) = 0 ∀n ∈ N∗ ;

• ce qui en extension donne : a1 − 3 · a0 − 2 =0


a2 − 3 · a1 − 22 =0
a3 − 3 · a2 − 23 =0
a4 − 3 · a3 − 24 =0
etc...

• Posons G(x) = a0 + a1 x + a2 x2 + a3 x3 + · · · + an xn + · · · .

Alors,
G(x) = a0 + a1 x + a2 x2 + a3 x3 + · · · + an xn + · · ·
−3x · G(x) = + −3 · a0 x + −3 · a1 x2 + −3 · a2 x3 + · · · + −3 · an−1 xn + · · ·
1
− 1−2x = −1 + −2x + −(22 )x2 + −(23 )x3 + · · · + −(2n )xn + · · ·
1
G(x) − 3xG(x) − 1−2x = a0 − 1 + 0x + 0x2 + 0x3 + · · · + 0xn + · · ·

1
Ce qui donne G(x) − 3x G(x) − 1−2x
= 1 . h Car a0 − 1 = 2 − 1 = 1. i
1
Donc, on a G(x)(1 − 3x) = 1 + 1−2x
1−2x+1
Donc, on a G(x)(1 − 3x) = 1−2x
2−2x
Donc, on a G(x)(1 − 3x) = 1−2x
2−2x
Donc, on a G(x) = (1−3x)(1−2x)
−2x+2
Donc, on a G(x) = (1−3x)(1−2x)
,
Étape 2 : (on trouve la série de puissances associée à G)

A B
G(x) = + .h Théorème 2.5.3-a i
1 − 3x 1 − 2x

X ∞
X
i i
= A·3 x + B · 2i xi .h Théorème 2.5.1-a (2 fois) i
i=0 i=0
X∞ h i
= A · 3i + B · 2i xi .h Arithmétique i
i=0

Étape 3 : (on trouve le terme général de la suite)

Le terme général de la suite han in∈N est donné par : an = A · 3n + B · 2n .


Par la définition de la récurrence, nous savons que a0 = 2 et a1 = 3 · a0 + 21 = 8.
Donc :

a0 = 3 0 A + 20 B = A + B = 2
⇔ B = 2 − A, (∗)

a1 = 3 1 A + 2 1 B = 3 A + 2 B = 8
⇔ 3A = 8 − 2B , (∗∗)

3 A = 8 − 2 (2 − A) = 4 + 2 A .h Substitutions de (*) dans (**) i


⇔ A = 4, (∗ ∗ ∗)

B = 2 − 4 = −2 . .h Substitutions de (***) dans (*) i

Avec ces valeurs de A et B, on obtient le terme général suivant :

an = 4 · 3n + (−2) · 2n
= 4 · 3n − 2n+1 .

Réponse : La définition par terme général est an = 4 · 3n − 2n+1 ∀n ∈ N.


(
b0 = 0
b)
bn = bn−1 + n ∀n ∈ N∗

Solution :

Étape 1 : (on exprime la série génératrice sous la forme d’une fonction rationnelle)

• On remarque que : bn − bn−1 − n = 0 ∀n ∈ N∗ ;


• ce qui en extension donne : b 1 − b0 − 1 = 0
b 2 − b1 − 2 = 0
b3 − b2 − 3 = 0
b4 − b3 − 4 = 0
etc...

• Posons G(x) = b0 + b1 x + b2 x2 + b3 x3 + · · · + bn xn + · · · .

Alors,
G(x) = b0 + b1 x + b2 x2 + b3 x 3 + · · · + bn x n + · · ·
−x · G(x) = + −b0 x + −b1 x2 + −b2 x3 + · · · + −bn−1 xn + · · ·
x
− (1−x) 2 = 0 + (−1) · x + (−2) · x2 + (−3) · x3 + · · · + (−n) · xn + · · ·

x
G(x) − xG(x) − (1−x)2 = b0 + 0x + 0x2 + 0x3 + · · · + 0xn + · · ·

x
Ce qui donne G(x) − x G(x) − = 0 . h Car b0 = 0. i
(1 − x)2
x
Donc, on a G(x)(1 − x) =
(1 − x)2
x
Donc, on a G(x) = .
(1 − x)3

Étape 2 : (on trouve la série de puissances associée à G)

A B C
G(x) = + + .h Théorème 2.5.3-e i
1 − x (1 − x)2 (1 − x)3
∞ ∞ ∞
X
i
X
i
X (i + 1)(i + 2)
= A·x + (i + 1)B · x + C · xi .h Théorème 2.5.1-a,b,d i
i=0 i=0 i=0
2
∞ h
X (i + 1)(i + 2) i i
= A + (i + 1)B + C x .h Arithmétique i
i=0
2

Étape 3 : (on trouve le terme général de la suite)

Le terme général de la suite hbn in∈N est donné par :

(n + 1)(n + 2)
bn = A + (n + 1)B + C.
2
Par la définition de la récurrence, nous savons que b0 = 0 et b1 = 1 et b2 = 3. Donc :

0 = A+B+C .h Car b0 = 0 i
⇔ A = −B − C , (∗)

1 = A + 2B + 3C .h Car b1 = 1 i
= −B − C + 2 B + 3 C .h Par l’équation (*) i
⇔ B = 1 − 2C , (∗∗)

3 = A + 3B + 6C .h Car b2 = 3 i
= −B − C + 3 B + 6 C .h Par l’équation (*) i
= 2B + 5C
= 2 (1 − 2 C) + 5 C .h Par l’équation (**) i
⇔ C = 1,

B = 1 − 2 · 1 = −1 , .h Substitution de C dans (**) i

A = −(−1) − (1) = 0 . .h Substitution de B et C dans (*) i

Avec ces valeurs de A et B, on obtient le terme général suivant :

(n + 1)(n + 2)
bn = −(n + 1) +
2
(n + 1) · [ −2 + (n + 2) ]
=
2
n · (n + 1)
= .
2

n (n + 1)
Réponse : La définition par terme général est bn = ∀n ∈ N.
2


 c0 = 1

c) c1 = 8

cn = 6 · cn−1 − 9 · cn−2 + 2n ∀n ∈ N \ {0, 1}

Solution :

Étape 1 : (on exprime la série génératrice sous la forme d’une fonction rationnelle)

• On remarque que : cn − 6 · cn−1 + 9 · cn−2 − 2n = 0 ∀n ∈ N \ {0, 1} ;


• ce qui en extension donne : c2 − 6 · c1 + 9 · c0 − 22 =0
c3 − 6 · c2 + 9 · c1 − 23 =0
c4 − 6 · c3 + 9 · c2 − 24 =0
c5 − 6 · c4 + 9 · c3 − 25 =0
etc...

• Posons G(x) = c0 + c1 x + c2 x2 + c3 x3 + · · · + cn xn + · · · .

Alors,
G(x) = c0 + c1 x + c2 x2 + c3 x3 + ··· + cn x n + ···
−6x · G(x) = + −6 c0 x + −6 c1 x2 + −6 c2 x3 + ··· + −6 cn−1 xn + ···
+9x2 · G(x) = + 9 c0 x 2 + 9 c1 x3 + ··· + 9 cn−2 xn + ···
1
− 1−2x = −1 + −2x + −(22 )x2 + −(23 )x3 + ··· + −(2n )xn + ···

G(x) − 6xG(x)
1
+9x2 G(x) − (1−2x) = (c0 − 1) + (c1 − 6c0 − 2)x + 0x2 + 0x3 + · · · + 0xn + · · ·

1
Ce qui donne G(x) − 6x G(x) + 9x2 G(x) − (1−2x) = 0
. h Car c0 − 1 = 1 − 1 = 0 et c1 − 6c0 − 2 = 8 − 6 · 1 − 2 = 0. i
1
Donc, on a G(x)(1 − 6x + 9x2 ) = (1−2x)
1
Donc, on a G(x)(1 − 3x)2 = (1−2x)
1
Donc, on a G(x) = (1−3x)2 (1−2x)
.

Étape 2 : (on trouve la série de puissances associée à G)

A B C
G(x) = + 2
+ .h Théorème 2.5.3-d i
1 − 3x (1 − 3x) (1 − 2x)

X ∞
X ∞
X
= A 3i · xi + (i + 1) B 3i · xi + C 2i · xi .h Théorème 2.5.1-a,b i
i=0 i=0 i=0
∞ h
X i
= 3i A + 3i (i + 1)B + 2i C xi .h Arithmétique i
i=0

Étape 3 : (on trouve le terme général de la suite)

Le terme général de la suite hcn in∈N est donné par :

cn = 3n A + 3n (n + 1)B + 2n C .
Par la définition de la récurrence, nous savons que :
c0 = 1 et c1 = 8 et c2 = 6 · 8 − 9 · 1 + 22 = 43.

Donc :

1 = A+B+C .h Car c0 = 1 i
⇔ A = 1−B−C, (∗)

8 = 3A + 6B + 2C .h Car c1 = 8 i
= 3(1 − B − C) + 6 B + 2 C .h Par l’équation (*) i
= 3 − 3B − C
⇔ C = 3B − 5, (∗∗)

43 = 9 A + 27 B + 4 C .h Car c2 = 43 i
= 9 (1 − B − C) + 27 B + 4 C .h Par l’équation (*) i
= 9 + 18 B − 5 C
= 9 + 18 B − 5 (3 B − 5) .h Par l’équation (**) i
= 34 + 3 B
⇔ 9 = 3B
⇔ B = 3,

C = 3 · 3 − 5 = 4, .h Substitution de B dans (**) i

A = 1 − 3 − 4 = −6 . .h Substitution de B et C dans (*) i

Avec ces valeurs de A et B, on obtient le terme général suivant :

cn = (−6) · 3n + 3(n + 1) · 3n + 4 · 2n
= (−2) · 3n+1 + (n + 1) · 3n+1 + 2n+2
= (n − 1) · 3n+1 + 2n+2 .

Réponse : La définition par terme général est :

cn = (n − 1) · 3n+1 + 2n+2 ∀n ∈ N .
Section 2.6.4 –
Exercices sur l’approximation par une intégrale

Exercice 1 : En vous inspirant de la figure 2.3 (page 188), illustrez le théorème 2.6.2-b qui
permet de borner une sommation possédant la forme suivante :

b
X
f (i), où f est une fonction non croissante sur l’intervalle [a − 1, b + 1] .
i=a

Solution :

(a) Borne inférieure de la sommation. (b) Borne supérieure de la sommation.

Exercice 2 : En appliquant la méthode d’approximation par une intégrale, trouvez une


borne inférieure et une borne supérieure des suites suivantes.
n
X
a) an = 5 · i4
i=1

Solution : Considérons la fonction f (x) = x4 . Cette fonction est non décroissante sur
l’intervalle [0, n + 1] pour tout n ≥ 1. Calculons l’intégrale selon la variable x de la
fonction f (x) :
x5
Z
x4 · dx = +C.
5
En appliquant le théorème 2.6.2-a, nous obtenons :
n n n+1
x5 x5
 X 
4
≤ i ≤
5 0 i=1
5 1
5 5 n
n 0 X (n + 1)5 15
⇔ − ≤ i4 ≤ −
5 5 i=1
5 5
n
n5 X (n + 1)5 − 1
⇔ ≤ i4 ≤
5 i=1
5
Xn
⇔ n5 ≤ 5 · i4 ≤ (n + 1)5 − 1
i=1

Ainsi, n5 ≤ an ≤ (n + 1)5 − 1 ∀n ∈ N∗ .

n
X
b) bn = 5 · i4
i=−2

Solution : La fonction f (x) = x4 est décroissante pour x ≤ 0 et croissante pour


x ≥ 0. Pour pouvoir appliquer l’approximation par une intégrale, réécrivons bn ainsi :
" n
# n
X X
4 4 4 4
bn = 5 · (−2) + (−1) + 0 + i = 85 + 5 · i4 = 85 + an ,
i=1 i=1

où an est correspond au nième terme de la suite définie à l’exercice précédent. Nous
pouvons donc réutiliser directement le résultat de l’exercice précédent :

85 + n5 ≤ bn ≤ 84 + (n + 1)5 ∀n ∈ N∗ .

n
X
c) cn = ik , pour une constante k ∈ N∗ .
i=1

Solution : Considérons la fonction f (x) = xk . Cette fonction est non décroissante sur
l’intervalle [0, n + 1] pour tout n ≥ 1, peu importe la valeure de la constante k ∈ N∗ .
L’intégrale de f (x) selon la variable x est :

xk+1
Z
xk · dx = +C.
k+1
En appliquant le théorème 2.6.2-a, nous obtenons :
n n n+1
xk+1 xk+1
 X 
k
≤ i ≤
k+1 0 i=1
k+1 1
n
nk+1 0 k+1 X (n + 1)k+1 1k+1
⇔ − ≤ ik ≤ −
k+1 k+1 i=1
k+1 k+1
n
nk+1 X (n + 1)k+1 − 1
⇔ ≤ ik ≤
k+1 i=1
k+1

nk+1 (n + 1)k+1 − 1
Ainsi, ≤ cn ≤ ∀n, k ∈ N∗ .
k+1 k+1

n
X 1
d) dn = .
i=1
i2
n
X 1
Solution : Réécrivons d’abord dn ainsi : dn = 1+ .
i=2
i2
1
Considérons la fonction f (x) = 2 , qui est non croissante sur l’intervalle [0, n + 1]
x
pour tout n ≥ 1. L’intégrale de f (x) selon la variable x est :

x−1
Z Z
1 −2 1
· dx = x · dx = +C = − +C.
x2 −1 x

En appliquant le théorème 2.6.2-b, nous obtenons :


 n
n+1  n
1 X 1 1
1+ − ≤ 1+ 2
≤ 1+ −
2 x i=2
i x 1
n
1 1 X1 1 1
⇔ 1− + ≤ 1+ 2
≤ 1− + .
n+1 2 i=2
i n 1

3 1 1
Ainsi, − ≤ dn ≤ 2 − ∀n ∈ N∗ .
2 n+1 n
n
X
e) en = (i + ln i − 1).
i=1
Xn n
X
Solution : Récrivons en ainsi : en = 1+ln 1−1+ (i + ln i − 1) = (i + ln i − 1) .
i=2 i=2
Considérons la fonction f (x) = x + ln x − 1, qui est non décroissante sur l’intervalle
[0, n + 1] pour tout n ≥ 1. L’intégrale de f (x) selon la variable x est :

x2
Z Z Z Z
(x + ln x − 1) · dx = x · dx + ln x · dx − 1 · dx = + x · ln x − 2x + C .
2
En appliquant le théorème 2.6.2-a, nous obtenons :
n n n+1
x2 x2
 X 
+ x · ln x − 2x ≤ (i + ln i − 1) ≤ + x · ln x − 2x
2 1 i=2
2 2
2 n 2
n 3 X (n + 1)
⇔ + n · ln n − 2n + ≤ (i + ln i − 1) ≤ + (n+1) · ln(n+1) − 2(n + ln 2)
2 2 i=2
2

n2 − 4n + 3 n2 − 2n + 1
Ainsi, +n·ln n ≤ en ≤ +(n+1)·ln(n+1)−2 ln 2 ∀n ∈ N∗ .
2 2

f) fn = log(n!).
def
Rappels : n! = 1 · 2 · 3 · . . . · n et log(a · b) = log a + log b ∀a, b > 0
Solution : Récrivons fn ainsi :
n
X n
X n
X
fn = log(i) = log(1) + log(i) = log(n) .
i=1 i=2 i=2

Considérons la fonction g(x) = log(x), qui est non décroissante sur l’intervalle [0, n + 1]
pour tout n ≥ 1. L’intégrale de g(x) selon la variable x est :
Z
x
log(x) · dx = x log(x) − .
ln(10)

En appliquant le théorème 2.6.2-a, nous obtenons :


 n  n+1
x n
x log(x) − ≤ fn ≤ n log(n) −
ln(10) 1 ln(10) 2
n 1 n+1 2
⇔ n log(n) − + ≤ fn ≤ (n+1) log(n+1) − − 2 log(2) +
ln(10) ln(10) ln(10) ln(10)

n−1 n−1
Donc, n log(n) − ≤ fn ≤ (n+1) log(n+1) − log(4) − ∀n ∈ N∗ .
ln(10) ln(10)

Exercice 3 : Décrivez une circonstance où la méthode d’approximation par une intégrale
donne la valeur exacte de la sommation. Autrement dit, exprimez une fonction f pour laquelle
les bornes inférieure et supérieure obtenues par le théorème 2.6.2 sont égales à la valeur de
la sommation.
Solution : Lorsque la fonction f est constante.
En effet, considérons une constante k ∈ R et une fonction f (x) = k. On veut calculer :

b
X
f (i) .
i=a

On constate que f est non décroissant pour n’importe quel intervalle [a − 1, b + 1]. Ainsi, par
le théorème 2.6.2-a, on obtient :
Z b b
X Z b+1
k · dx ≤ k ≤ k · dx
a−1 i=a a
Xb
⇔ [k · x]ba−1 ≤ k ≤ [k · x]b+1
a
i=a
b
X
⇔ k · b − k · (a − 1) ≤ k ≤ k · (b + 1) − k · a
i=a
b
X
⇔ k · (b − a + 1) ≤ k ≤ k · (b − a + 1)
i=a

b
X
Ainsi, on conclut que : f (i) = k · (b − a + 1) .
i=a
Section 3.1.8 – Exercices sur les éléments de base de la
théorie des graphes

Exercice 1 : Six équipes sont inscrites à un tournoi de Hockey de garage. Dans la première
phase du tournoi, chaque équipe doit affronter toutes les autres une et une seule fois.
a) Construisez un graphe représentant toutes les parties possibles.
Solution : Dans le graphe suivant, chaque équipe est représentée par un sommet et
une partie entre l’équipe x et y est représentée par une arête [x, y].

b) Quel type de graphe obtenez-vous ?


Solution : Il s’agit du graphe complet à 6 sommets, noté K6 .

c) Combien de parties comporte la première phase du tournoi ?


Solution : Pour connaı̂tre le nombre de parties, on compte le nombre d’arêtes. Un peu
plus loin dans les notes, le théorème 3.3.1 (voir page 209) nous permettra de calculer
directement le nombre d’arêtes d’un graphe complet :

6 · (6 − 1)
|E(K6 )| = = 15 .
2
La première phase du tournoi comporte donc 15 parties.

Exercice 2 : Le représentant d’une compagnie de balayeuses centrales doit visiter quatre


résidants d’un même immeuble en une même soirée. Chaque visite dure une heure et le
représentant a suggéré aux résidents quatre plages horaires : 18h00, 19h00, 20h00 et 21h00.
Voici les disponibilités des résidents :
Résident 18h00 19h00 20h00 21h00
Sébastien X X X
Jean-Francis X X
Brice X X
Alexandre X X
a) Représentez cette situation par un graphe.
Solution :

b) Quel type de graphe obtenez-vous ?


Solution : Il s’agit d’un graphe biparti.

c) Expliquez comment déduire du graphe un horaire possible pour le représentant (notez


qu’on peut voir un horaire comme une fonction bijective entre l’ensemble des résidents
et l’ensemble des plages horaires).
Solution : Il suffit de sélectionner quatre arêtes de telle sorte qu’aucune de ces quatre
arêtes ne partage un même sommet. Le graphe suivant donne un exemple :

d) Donnez tous les horaires possibles pour ce problème.


Solution : Il y a trois horaires possibles :

(1) {hJean-Francis, 18h00i , hSébastien, 19h00i , hAlexandre, 20h00i , hBrice, 21h00i}


(2) {hJean-Francis, 18h00i , hSébastien, 20h00i , hAlexandre, 19h00i , hBrice, 21h00i}
(3) {hJean-Francis, 19h00i , hSébastien, 18h00i , hAlexandre, 20h00i , hBrice, 21h00i}

Exercice 3 :
a) Sept étudiants vont en vacances. Chacun va envoyer une carte postale à exactement
trois des autres étudiants. Est-ce possible que pour chaque étudiant x, les étudiants
qui écrivent à x soient exactement ceux à qui x a écrit ?
b) Qu’arrive-t-il si on remplace “trois” par un autre nombre entre 0 et 6 (inclusivement)
à l’exercice précédent ?

La solution à l’exercice 3 sera discutée en classe.

Exercice 4 : Considérons la matrice d’adjacence M1 d’un digraphe G1 et la matrice d’adja-


cence M2 d’un digraphe G2 :
   
0 1 0 1 0 1 0 0
   
1 0 1 0 0 0 1 1
M1 = 
0
 M2 =  
 0 0 1

1
 0 0 0

0 1 0 1 0 0 1 0

a) Donnez une représentation graphique des digraphes G1 et G2 .


Solution :

b) Calculez le produit matriciel suivant 4 : M3 = M1 × M2 .


Réponse :  
0 0 2 1
 
1 1 0 0
M3 = 
0

 0 1 0

0 0 2 1

c) En examinant la matrice M3 calculée précédemment, dites comment on peut in-


terpréter le produit matriciel de deux matrices d’adjacence.
Solution : Le produit matriciel des matrices d’adjacence de deux graphes G1 et G2
correspond à la matrice d’adjacence de la composition G1 ◦ G2 (voir la discussion à la
fin de la section 3.2.1 pour plus de détails.)

4. Pour un rappel sur le produit matriciel, voir : http://fr.wikipedia.org/wiki/Produit_matriciel


Section 3.2.3 – Exercices sur les graphes en tant que
relations

Exercice 1 : Considérez l’ensemble de sommets S = {1, 2, 3, 4} et les deux digraphes sui-


vants :

G = {h2, 3i , h3, 3i , h4, 3i} ⊂ S 2 ,


H = {h1, 2i , h2, 4i , h3, 1i , h4, 3i} ⊂ S 2 .

a) Calculez G ∪ H, G ∩ H, Gc , H −1 , G ◦ H, G2 et H 2 .
Solution :

G ∪ H = { h2, 3i , h3, 3i , h4, 3i , h1, 2i , h2, 4i , h3, 1i }


G ∩ H = { h4, 3i }
Gc = { h1, 1i , h1, 2i , h1, 3i , h1, 4i , h2, 1i , h2, 2i , h2, 4i ,
h3, 1i , h3, 2i , h3, 4i , h4, 1i , h4, 2i , h4, 4i }
−1
H = {h2, 1i , h4, 2i , h1, 3i , h3, 4i}
G ◦ H = { h2, 1i , h3, 1i , h4, 1i }
G2 = G
H 2 = {h1, 4i , h2, 3i , h3, 2i , h4, 1i}

b) Donnez la représentation graphique des digraphes G, H et H 2 .


Solution :

c) Donnez la matrice d’adjacence des digraphes G, H et H 2 .


Solution :
     
0 0 0 0 0 1 0 0 0 0 0 1
     
0 0 1 0 0 0 0 1 0 0 1 0
MG = 
0
 MH =   MH 2 =  
 0 1 0

1
 0 0 0

0
 1 0 0

0 0 1 0 0 0 1 0 1 0 0 0
d) Dites lesquelles des propriétés suivantes les relations G et H possèdent :
réflexivité, irréflexivité, symétrie, antisymétrie, asymétrie, transitivité, équiva-
lence, totalité, surjectivité, déterminisme, injectivité, fonction partielle, fonc-
tion, fonction bijective, ordre partiel, ordre partiel strict, ordre total.

Propriétés de G : antisymétrie, transitivité, déterminisme, fonction partielle.


Propriétés de H : irréflexivité, antisymétrie, asymétrie, totalité, surjectivité, déter-
minisme, injectivité, fonction partielle, fonction, fonction bijective.

Exercice 2 : Montrez que les deux graphes suivants sont isomorphes.

Solution : Désignons le graphe de gauche par G et le graphe de droite par D. Pour montrer
que G et D sont isomorphes, construisons une fonction bijective f : V (G) −→ V (D) :

f = { h0, ai , h1, bi , h2, ci , h3, di , h4, ei , h5, f i , h6, gi , h7, hi } .


Section 3.4.3 – Exercices sur les arbres

Exercice 1 : (Aucune justification n’est demandée pour ce numéro.)


a) Énumérez (à isomorphisme prés) tous les arbres binaires ayant exactement 6 feuilles.
Solution : Il y a 6 arbres possibles :

b) Combien de sommets peut avoir un arbre binaire ayant exactement 6 feuilles.


Solution : 11 sommets.

c) Combien de sommets peut avoir un arbre binaire ayant exactement k feuilles (avec
k ≥ 2).
Solution : Considérons un arbre binaire T comportant n sommets, dont k feuilles.
1. Calculons d’abord la somme des degrés des sommets de T . Par la définition des arbres
binaires (définition 3.1.14) on sait que T compte exactement k sommets de degré 1
(les feuilles), 1 sommet de degré 2 (la racine), et que les autres (n − k − 1) sommets
sont de degré 3. Aussi, par le théorème 3.3.3, on sait que la somme des degrés de T
est égale à deux fois le nombre d’arêtes. Donc :

1 · k + 2 · 1 + 3 · (n − k − 1) 3n − 2k − 1
|E(T )| = = .
2 2

2. Par le théorème 3.4.2, puisque T est un arbre, on sait que |V (T )| = |E(T )| + 1. Ainsi :

3n − 2k − 1 3n − 2k + 1
n = +1 =
2 2
⇔ 2n = 3n − 2k + 1
⇔ n = 2k − 1 .
Exercice 2 : Définissons un arbre trinaire comme un arbre qui contient un sommet de degré 3
(la racine) et dont tous les autres sommets sont de degré 1 (les feuilles) ou de degré 4. Comme
pour un arbre binaire, le niveau d’un sommet x d’un arbre trinaire équivaut à la longueur de
l’unique chaı̂ne allant de la racine au sommet x et la hauteur d’un arbre trinaire est égale au
niveau maximal de ses feuilles. Finalement, un arbre trinaire complet est un arbre trinaire
dont toutes les feuilles sont au même niveau.
a) Dessinez trois arbres : un arbre trinaire complet de hauteur 2, un arbre trinaire complet
de hauteur 3 et un arbre trinaire complet de hauteur 4.
b) Donnez l’expression du nombre de feuilles d’un arbre trinaire complet en fonction de
sa hauteur.
Solution : Considérons la suite L(h) donnant le nombre de feuilles d’un arbre trinaire
en fonction de sa hauteur L(h). La suite se définit naturellement de façon récursive :

L(0) = 1
L(h) = 3 · L(h − 1) ∀h ∈ N∗

Par le théorème 2.4.4, on constate qu’il s’agit d’une somme géométrique de premier
terme 1 et de raison 3. Le terme général est donc :

L(h) = 3h .

c) Donnez l’expression du nombre de noeuds d’un arbre trinaire complet en fonction de


sa hauteur. (Indice : Vous pouvez vous servir du résultat obtenu en (b) et des résultats
présentés à la section 2.4.3 sur les suites des sommes de premiers termes d’une suite.)
Solution : Le nombre de noeuds N (h) d’un arbre trinaire complet de hauteur h sera
égale à la somme du nombre de feuilles des h + 1 arbres trinaires complets de hauteur
0 à h. Ainsi :
h
X
N (h) = L(0) + L(1) + L(2) + . . . + L(h) = L(i) .
i=0

La suite N (h) est donc la suite des sommes des premiers termes de la suite géométrique
L(h) définie en (b). Par le théorème 2.4.7, on obtient :

1 · (1 − 3h+1 ) 3h+1 − 1
N (h) = = .
1−3 2
Exercice 3 : Un arbre est toujours un graphe biparti. Décrivez une méthode pour créer une
bipartition à partir de n’importe quel arbre (Rappel : les concepts de graphe biparti et de
bipartition ont été introduits par la définition 3.1.3-c).

Solution : Soit T un arbre non vide et x ∈ V (T ) un sommet quelconque de cet arbre. Voici
comment on peut séparer les sommets de T en bipartition A et B :

A = {y ∈ V (T ) | La longueur de la chaı̂ne élémentaire entre x et y est de longueur paire }


B = {y ∈ V (T ) | La longueur de la chaı̂ne élémentaire entre x et y est de longueur impaire }

Notez qu’il y a toujours qu’une seule chaı̂ne élémentaire entre x et y (voir le théorème 3.4.4-c).
Section 3.6.4 – Exercices sur les chaı̂nes et chemins

Exercice 1 : Pour chacun des graphes ci-dessous, dites s’il s’agit d’un graphe
a) eulérien. Si oui, exhibez un cycle eulérien.
b) hamiltonien. Si oui, exhibez un cycle hamiltonien.

K7 K4,2 K3,3 Le dodécaèdre

Le graphe de Petersen Le graphe d’Heawood Le graphe d’Herschel

Solution :
a) Seuls les deux graphes K7 et K4,2 sont eulériens :
b) Les graphes K7 , K3,3 , le dodécaèdre et le graphe d’Heawood sont Hamiltoniens. Voici
un cycle hamiltonien pour chacun d’eux :
Exercice 2 : On veut asseoir cinq couples autour d’une table ronde de telle sorte que pour
chaque deux couples, au moins un des membres du premier couple soit assis à côté d’au moins
un membre du deuxième couple. Est-ce possible ?
Solution : Oui ! Voici un raisonnement qui le montre :
1. On considère un graphe G où chaque sommet correspond à un couple (donc, |V (G)| =
5) et chaque arête hx, yi ∈ E(G) correspond à la relation “un des membres du couple
x est assis à côté d’un des membres du couple y”. Le graphe G comporte une arête
entre chaque sommet. Il s’agit donc du graphe K5 , c’est-à-dire le graphe complet à 5
sommets.
2. Il y a une solution au problème si et seulement si il existe un cycle eulérien dans le
graphe G.
3. Un tel cycle eulérien existe car aucun des sommets de G n’est de degré impair (théo-
rème 3.6.5). Plus précisément, degG (x) = 4 ∀x ∈ V (G).
4. De plus, il suffit de parcourir un cycle eulérien de G pour obtenir l’ordre dans lequel
on peut asseoir les membres des couples autour de la table ronde pour satisfaire le
problème.
Exercice 3 : L’algorithme de Dijkstra présenté à la page 225 retourne la longueur du plus
court chemin entre le sommet d’origine et le sommet de destination z, mais ne permet pas de
connaı̂tre la nature de ce chemin. Suggérez une modification à l’algorithme afin qu’il retourne
le chemin le plus court (sous la forme, par exemple, d’une liste de sommets).
Solution : Dans le pseudo-code ci-dessous, le texte en rouge indique les lignes modifiées et/ou
ajoutées par rapport à l’algorithme original. La fonction fusionner effectue la jonction entre
def
deux listes, de telle sorte que : fusionner( [u0 ], [u1 , u2 , . . . , un ) = [u0 , u1 , u2 , . . . , un ] .

Algorithme Dijkstra Modifié ( Digraphe G, valeurs w, origine a, destination z )


Initialiser :
• Q ← V (G) . h Pendant l’exécution, Q contient les sommets non visités i
• dist(v) ← ∞ ∀v ∈ Q \ {a} .h La distance de tous les sommets (sauf a) est inconnue i
• dist(a) ← 0 . h Le sommet source est à une distance nulle de lui-même i

.
Tant que |Q| > 0 Faire h Tant qu’il reste des sommets à visiter... i

u ← Un élément de Q dont la valeur dist(u) est minimale


Q ← Q \ {u} . h On sélectionne le sommet u à visiter i

Si u = z alors
chemin ← [u] . h Reconstruit le chemin en sens inverse i
Tant que u 6= a Faire
u ← prec(u)
chemin ← fusionner( [u], chemin )
Fin Tant que
Retourner chemin
Fin Si

.Pour tout v ∈ N (u) ∩ Q Faire h Mise à jour de la distance des voisins de u i


Si dist(u) + w(hu, vi) < dist(v) alors
dist(v) ← dist(u) + w(hu, vi)
prec(v) ← u . h Le sommet u précède le sommet v i
Fin Si
Fin Pour
Fin Tant que
Retourner [ ] . h Aucun chemin trouvé (retourne une liste vide) i
.
Définition 1.1.1 Opérateurs booléens de base. Définition 1.2.3 Opérateurs de composition d’ensembles.
a : Sc
def
= {e | e ∈/ S} (Complément)
Négation : Conjonction : Disjonction : def
b: S∩T = {e | e ∈ S ∧ e ∈ T } (Intersection)
p ¬p p q p∧q p q p∨q def
c: S∪T = {e | e ∈ S ∨ e ∈ T } (Union)
v f v v v v v v def
d: S\T = {e | e ∈ S ∧ e ∈
/ T} (Différence)
f v v f f v f v
f v f f v v Définition 1.2.4 Opérateurs d’inclusions.
def
f f f f f f a : T ⊆ S = (∀e | e ∈ T ⇒ e ∈ S) (Incl.)
def
b: T ⊂S = T ⊆ S ∧ (∃e | e ∈ S ∧e ∈
/ T ) (Incl. stricte)
def
c: T ⊇S = S⊆T (Incl. inverse)
def
d: T ⊃S = S⊂T (Incl. stricte inverse)
Définition 1.1.2 Opérateurs d’implications
def
a : p ⇒ q = ¬p ∨ q (Implication) Définition 1.2.5 Ensemble puissance.
def
b: p⇐q = q⇒p (Implication inverse) P(S)
def
= {e | e ⊆ S}.

Définition 1.1.3 Opérateur si et seulement si. Proposition 1.2.6 Lois de De Morgan (version ensembliste).
def
p⇔q = (p ⇒ q) ∧ (q ⇒ p) a : (S ∩ T )c = S c ∪ T c (Première loi de De Morgan)
b : (S ∪ T )c = S c ∩ T c (Deuxième loi de De Morgan)
Proposition 1.1.4 Lois de De Morgan.
a : ¬(p ∧ q) ⇔ ¬p ∨ ¬q (1ière loi de De Morgan) Proposition 1.2.7 Propriétés du complément.
b : ¬(p ∨ q) ⇔ ¬p ∧ ¬q (2e loi de De Morgan) a : (S c )c = S (Complémentarité)
b : S ∪ Sc = U (Tiers exclu)
Proposition 1.1.5 Propriétés de la négation. c : S ∩ Sc = ∅ (Contradiction)
a : ¬(¬p) ⇔ p (Double négation)
b : p ∨ ¬p ⇔ vrai (Tiers exclu) Proposition 1.2.8 Propriétés de l’intersection.
c : p ∧ ¬p ⇔ faux (Contradiction) a: S ∩U = S (Él. neutre)
b: S ∩∅ = ∅ (Él. absorbant)
c: S ∩S = S (Idempotence)
Proposition 1.1.6 Propriétés de la conjonction.
d: S ∩T = T ∩S (Commutativité)
a : p ∧ vrai ⇔ p (Él. neutre)
e : (S ∩ T ) ∩ U = S ∩ (T ∩ U ) (Associativité)
b : p ∧ faux ⇔ faux (Él. absorbant)
f : (S ∪ T ) ∩ U = (S ∩ U ) ∪ (T ∩ U ) (Distributivité)
c: p∧p ⇔ p (Idempotence)
d: p∧q ⇔ q∧p (Commutativité) Proposition 1.2.9 Propriétés de l’union.
e : (p ∧ q) ∧ r ⇔ p ∧ (q ∧ r) (Associativité) a: S ∪∅ = S (Él. neutre)
f : (p ∨ q) ∧ r ⇔ (p ∧ r) ∨ (q ∧ r) (Distributivité) b: S ∪U = U (Él. absorbant)
c: S ∪S = S (Idempotence)
Proposition 1.1.7 Propriétés de la disjonction. d: S ∪T = T ∪S (Commutativité)
a : p ∨ faux ⇔ p (Él. neutre) e : (S ∪ T ) ∪ U = S ∪ (T ∪ U ) (Associativité)
b : p ∨ vrai ⇔ vrai (Él. absorbant) f : (S ∩ T ) ∪ U = (S ∪ U ) ∩ (T ∪ U ) (Distributivité)
c: p∨p ⇔ p (Idempotence)
Proposition 1.2.10 Propriétés de la différence.
d: p∨q ⇔ q∨p (Commutativité)
a: S \∅ = S (Élément neutre)
e : (p ∨ q) ∨ r ⇔ p ∨ (q ∨ r) (Associativité) c
b: S \T = S∩T (Réécriture de “\”)
f : (p ∧ q) ∨ r ⇔ (p ∨ r) ∧ (q ∨ r) (Distributivité)
c : S ∪ (T \ S) = S ∪ T (Union de “\”)
d : S ∩ (T \ S) = ∅ (Intersection de “\”)
Proposition 1.1.8 Contraposition. e : S \ (T ∪ U ) = (S \ T ) ∩ (S \ U ) (Différence de “∪”)
p ⇒ q ⇔ ¬q ⇒ ¬p f : S \ (T ∩ U ) = (S \ T ) ∪ (S \ U ) (Différence de “∩”)

Définition 1.2.1 Axiome d’extensionnalité Proposition 1.2.11 Appartenance d’un élément à un en-
def
S = T = (∀e | e ∈ S ⇔ e ∈ T ) . semble obtenu par composition.
a : e ∈ Sc ⇔ ¬(e ∈ S) (Complément)
Définition 1.2.2 Notation abrégée des quantificateurs b: e ∈ S ∩T ⇔ e ∈ S ∧e ∈ T (Intersection)
def
a : (∀x ∈ T | P (x) ) = (∀x | x ∈ T ⇒ P (x) ) c: e ∈ S ∪T ⇔ e ∈ S ∨e ∈ T (Union)
def
b: (∃x ∈ T | P (x) ) = (∃x | x ∈ T ∧ P (x) ) d : e ∈ S \ T ⇔ e ∈ S ∧ ¬(e ∈ T ) (Différence)
Proposition 1.2.12 Propriétés d’équivalences de l’inclusion. Définition 1.4.7 Composition de deux relations
def
a: ∅ ⊆ S ⇔ vrai (Omniprésence de “∅”) ha, ci ∈ ρ ◦ σ = (∃b ∈ T | ha, bi ∈ ρ ∧ hb, ci ∈ σ) ,
def
b: S ⊆ S ⇔ vrai (Réflexivité) De manière équivalente : a (ρ◦σ) c = (∃b ∈ T | a ρ b∧b σ c) .
c: S ⊂ S ⇔ faux (Irréflexivité)
d: S = T ⇔ S ⊆ T ∧ T ⊆ S (Antisymétrie) Proposition 1.4.8 Propriétés de la composition
e: S ⊆ T ⇔ S ⊂ T ∨ S = T (Réécriture de “⊆”) a : IS ◦ ρ = ρ ◦ IT = ρ (Él. neutre)
f: S ⊂ T ⇔ S ⊆ T ∧ T 6= S (Réécriture de “⊂”) b: ∅◦ρ = ρ◦∅ = ∅ (Él. absorbant)
c : (ρ ◦ σ) ◦ θ = ρ ◦ (σ ◦ θ) (Associativité)
Proposition 1.2.13 Propriétés d’implications de l’inclusion. d: ρ ⊆ σ ⇒ ρ◦θ ⊆σ◦θ (Monotonie)
a: S⊂T ⇒ S⊆T
b: S⊂T ⇒ T *S Définition 1.4.9 Puissance d’une relation
def
c: S ⊂ T ⇒ T 6⊂ S Si n ≥ 1 : ρn = ρ ◦ ρ ◦ . . . ◦ ρ (n fois) ,
def
d: S ⊂ T ∧U * T ⇒ U * S sinon (n = 0) : ρ0 = IS .
e: S ⊆ T ∧T ⊆ U ⇒ S ⊆ U (Transitivité (1))
f: S ⊆ T ∧T ⊂ U ⇒ S ⊂ U (Transitivité (2)) Proposition 1.4.10 Propriétés de l’opérateur puissance
g: S ⊂ T ∧T ⊆ U ⇒ S ⊂ U (Transitivité (3)) a : ρm ◦ ρn = ρm+n (Somme des exposants)
m n m·n
h: S ⊂ T ∧T ⊂ U ⇒ S ⊂ U (Transitivité (4)) b : (ρ ) = ρ (Produit des exposants)

Proposition 1.3.1 Lois de De Morgan (Généralisées aux Définition 1.4.12 Inverse d’une relation
def
quantificateurs). ρ−1 = {hb, ai | ha, bi ∈ ρ} .
a : ¬(∀x ∈ T | P (x)) ⇔ (∃x ∈ T | ¬P (x)) (1ère loi)
b : ¬(∃x ∈ T | P (x)) ⇔ (∀x ∈ T | ¬P (x)) (2e loi) Proposition 1.4.13 Propriétés de la relation inverse
a : Dom(ρ−1 ) = Im(ρ) (Domaine d’une rel. inv.)
Définition 1.4.1 Produit cartésien de deux ensembles b : Im(ρ−1 ) = Dom(ρ) (Image d’une rel. inverse.)
def
S × T = {ha, bi | a ∈ S ∧ b ∈ T } . c : ∅−1 = ∅ (Inverse de la rel. vide)
d : (ρ ◦ σ)−1 = σ −1 ◦ ρ−1 (Inverse de la composition)
Définition 1.4.2 Produit cartésien de n ensembles e : (ρ ∪ σ) −1
= σ −1 ∪ ρ−1 (Inverse de l’union)
• S1 × S2 × . . . × Sn f : (ρ ∩ σ)−1 = σ −1 ∩ ρ−1 Inverse de l’intersection)
def
= {he1 , e2 , . . . , en i | e1 ∈ S1 ∧ e2 ∈ S2 ∧ . . . ∧ en ∈
Sn } . Définition 1.4.14 Familles de relation (1)
def
a : ρ est réflexif ⇔ (∀a ∈ S | a ρ a )
• S n = S × S × . . . × S (n fois) . b : ρ est irréflexif ⇔ (∀a ∈ S | ¬(a ρ a) )
Proposition 1.4.3 Propriétés du produit cartésien c : ρ est symétrique ⇔ (∀a, b ∈ S | a ρ b ⇒ b ρ a )
a: S ×T = T ×S ⇔ S = ∅∨T = ∅∨S = T d : ρ est asymétrique ⇔ (∀a, b ∈ S | a ρ b ⇒ ¬(b ρ a) )
b : S × (T ∪ U ) = (S × T ) ∪ (S × U ) (Dist. sur “∪”) e : ρ est antisymétrique ⇔ (∀a, b ∈ S | a ρ b ∧ b ρ a ⇒ a = b )
c : S × (T ∩ U ) = (S × T ) ∩ (S × U ) (Dist. sur “∩”) f : ρ est transitif ⇔ (∀a, b, c ∈ S | a ρ b ∧ b ρ c ⇒ a ρ c )
d : S × (T \ U ) = (S × T ) \ (S × U ) (Dist. sur “\”)
e: S ⊆ U ∧T ⊆ V ⇒ S ×T ⊆ U ×V Proposition 1.4.15 Définitions équivalentes à 1.4.14
f: S ×T ⊆ S ×U ⇒ S = ∅∨T ⊆ U a : ρ est réflexif ⇔ IS ⊆ ρ
g : (S ∩ T ) × (U ∩ V ) = (S × U ) ∩ (T × V ) b : ρ est irréflexif ⇔ IS ∩ ρ = ∅
h : |S × T | = |S| · |T | si S et T sont finis. c : ρ est symétrique ⇔ ρ−1 = ρ
d : ρ est asymétrique ⇔ ρ ∩ ρ−1 = ∅
Définition 1.4.4 Appartenance d’un couple à une relation e : ρ est antisymétrique ⇔ ρ ∩ ρ−1 ⊆ IS
def
a ρ b = ha, bi ∈ ρ . f : ρ est transitif ⇔ ρ2 ⊆ ρ

Définition 1.4.5 Domaine et image d’une relation Définition 1.4.16 Familles de relation (2)
def
a : Dom(ρ) = {a ∈ S | (∃b ∈ T | a ρ b)} (Domaine) a : ρ est total ⇔ (∀a ∈ S | (∃b ∈ T | a ρ b) )
def
b: Im(ρ) = {b ∈ T | (∃a ∈ S | a ρ b)} (Image) b : ρ est surjectif ⇔ (∀b ∈ T | (∃a ∈ S | a ρ b) )
c : ρ est déterministe
Définition 1.4.6 Relation identité ⇔ (∀a ∈ S, b, b0 ∈ T | a ρ b ∧ a ρ b0 ⇒ b = b0 )
def
IS = {ha, ai ∈ S 2 | a ∈ S} , d : ρ est injectif
De manière équivalente : ha, ai ∈ IS ⇔ a ∈ S . ⇔ (∀a, a0 ∈ S, b ∈ T | a ρ b ∧ a0 ρ b ⇒ a = a0 )
Théorème 1.4.17 Dualité totalité–surjectivité et dualité Définition 1.4.25 Ordre partiel strict
déterminisme–injectivité Une relation ≺ est un ordre partiel strict sur l’ensemble S si
a : ρ est total ⇔ ρ−1 est surjectif ; elle possède les trois propriétés suivantes :
b : ρ est déterministe ⇔ ρ−1 est injectif ;
c : ρ est injectif ⇔ ρ−1 est déterministe ; – Irréflexivité : (∀a ∈ S | ¬(a ≺ a) ;
d : ρ est surjectif ⇔ ρ−1 est total. – Asymétrie : (∀a, b ∈ S | a ≺ b ⇒ ¬(b ≺ a)) ;
– Transitivité : (∀a, b, c ∈ S | a ≺ b ∧ b ≺ c ⇒ a ≺ c).
Théorème 1.4.18 Composition de relations totales, surjec-
tives, déterministes et injectives. Théorème 1.5.1 Deux ensembles finis A et B ont le
a : ρ et σ sont totaux ⇒ ρ◦σ est total ; même nombre d’éléments ssi il existe une fonction bijective
b : ρ et σ sont déterministes ⇒ ρ◦σ est déterministe ; f :A→ B.
c : ρ et σ sont injectifs ⇒ ρ◦σ est injectif ;
d : ρ et σ sont surjectifs ⇒ ρ◦σ est Définition 1.5.2 On dit que A a autant d’éléments que B
surjectif.
(ou que la cardinalité de A est égale à la cardinalité de B) ssi
Proposition 1.4.19 Définitions équivalentes d’une fonction il existe une fonction bijective de A vers B.
surjective
a : (∀b ∈ T | (∃a ∈ S | a f b) ) Proposition 1.5.3 Soit A un ensemble, la relation IA est
b : (∀b ∈ T | (∃a ∈ S | f (a) = b ) une fonction bijective.
Proposition 1.4.20 Définitions équivalentes d’une fonction
Théorème 1.5.4 Soit f ⊆ A × B. Alors la relation f est une
injective
fonction bijective ssi la relation inverse f −1 ⊆ B × A est une
a : (∀a ∈ S, a0 ∈ S, b ∈ T | a f b ∧ a0 f b ⇒ a = a0 )
fonction bijective.
b : (∀a ∈ S, a0 ∈ S | f (a) = f (a0 ) ⇒ a = a0 )
c : (∀a ∈ S, a0 ∈ S | a 6= a0 ⇒ f (a) 6= f (a0 ))
Théorème 1.5.5 Soit f ⊆ A × B et g ⊆ B × C. Si f et g
Corollaire 1.4.21 Inverses de fonctions et de relations sont deux fonctions bijectives, alors f ◦ g sera une fonction
a : f est une fonction bijective de A vers C.
⇔ f −1 est une relation bijective ;
b : f est une fonction injective Définition 1.5.6 Un ensemble A est dit dénombrable s’il est
⇔ f −1 est une relation bijective et déterministe ; fini ou de la même cardinalité que l’ensemble N.
c : f est une fonction surjective
⇔ f −1 est une relation bijective et totale ; Proposition 1.5.8 L’ensemble N × N est dénombrable.
d: f est une fonction bijective
Lemme 1.5.9 Étant donné un ensemble infini B. Alors,
⇔ f −1 est une fonction bijective.
B est dénombrable
Théorème 1.4.22 Composition de fonctions inverses ⇔ (∃A | A est infini dénombrable ⇒ |A| = |B|).
Les relations ρ ⊆ S × T et σ ⊆ T × S sont deux fonctions
bijectives et ρ−1 = σ si et seulement si : Théorème 1.5.10 Soit A et B, deux ensembles non vides.
∃ fonction injective f : A  B
ρ ◦ σ = IS et σ ◦ ρ = IT .
ssi ∃ fonction surjective g : B →
→ A.
Définition 1.4.23 Relation d’équivalence
La relation relation ' est une relation d’équivalence si elle Définition 1.5.11 On dit que A a une cardinalité plus pe-
possède les propriétés suivantes : tite ou égale à la cardinalité de B ssi il existe une fonction
injective de A vers B. (ou, ce qui est équivalent, ssi il existe
– Réflexivité : (∀a ∈ S | a ' a) ;
une fonction surjective de B vers A.)
– Symétrie : (∀a, b ∈ S | a ' b ⇒ b ' a) ;
– Transitivité : (∀a, b, c ∈ S | a ' b ∧ b ' c ⇒ a ' c). Axiome 1.5.12 (Axiome du choix) Soit (Ai )i∈I , une fa-
mille infinie d’ensembles non vides. Alors il existe une famille
Définition 1.4.24 Ordre partiel
d’éléments (ai )i∈I telle que pour chaque i ∈ I, ai ∈ Ai .
Une relation  est un ordre partiel sur l’ensemble S si elle
possède les trois propriétés suivantes :
Théorème 1.5.13 (Bernstein-Schröder) S’il existe une fonc-
– Réflexivité : (∀a ∈ S | a  a) ; tion injective de A vers B et une fonction injective de B vers
– Antisymétrie : (∀a, b ∈ S | a  b ∧ b  a ⇒ a = b) ; A, alors il existera une fonction bijective de A vers B.
– Transitivité : (∀a, b, c ∈ S | a  b ∧ b  c ⇒ a  c). Autrement dit : |A| ≤ |B| ∧ |B| ≤ |A| ⇒ |A| = |B|.
Théorème 1.5.14 Soit f ⊆ A × B et g ⊆ B × C. Si f et Théorème 1.5.20 Les résultats suivants sont équivalents :
g sont deux fonctions injectives, alors f ◦ g sera une fonction 1. A est non dénombrable
injective de A vers C.
2. |A| > |N|.
Proposition 1.5.15 Si A ⊆ B alors la fonction 3. 6 ∃ fonction surjective f : N →
→ A.
IA⊆B : A −→ B est bien définie et est injective.
4. 6 ∃ fonction injective f : A  N.
a 7−→ a
5. A est infini et |A| =
6 |N|.
Théorème 1.5.16 Soit A un ensemble infini. Alors |A| ≥ |N|.
6. A est infini et 6 ∃ fonction bijective f : A −→ N.
Théorème 1.5.17 Les énoncés suivants sont équivalents : 7. A est infini et 6 ∃ fonction bijective f : N 
→ A.
1. |A| = |B|. Théorème 1.5.21 Soit A et B, deux ensembles
2. ∃ fonction bijective f : A 
→ B. dénombrables (finis ou infinis). Alors
3. ∃ fonction bijective g : B 
→ A. 1. A ∪ B est dénombrable,
4. |A| ≤ |B| et |A| ≥ |B|. 2. A × B est dénombrable.
5. ∃ fonction injective f : A  B
Théorème 1.5.22 (Cantor)
et ∃ fonction injective g : B  A.
Pour tout ensemble A, |A| < |P(A)|.
6. ∃ fonction injective f : A  B
et ∃ fonction surjective h : A →
→ B. Définition 1.5.23 Étant donnés deux ensembles A et B, on
7. ∃ fonction surjective k : B →
→A définit B A comme étant l’ensemble de toutes les fonctions de
et ∃ fonction surjective h : A →
→ B. A vers B. Autrement dit : B A = {f : A −→ B | }.
8. ∃ fonction surjective k : B →
→A Proposition 1.5.24 Pour tout ensemble A, on a
et ∃ fonction injective g : B  A. |P(A)| = |{0, 1}A |.
Théorème 1.5.18 Les énoncés suivants sont équivalents :
Corollaire 1.5.25 {0, 1}N est un ensemble non dénombrable.
1. |A| < |B|.
2. |A| ≤ |B| et |A| =
6 |B|. Théorème 1.5.26 Soit A un ensemble ayant au moins deux
3. ∃ fonction injective, f : A  B éléments et B un ensemble infini.
mais 6 ∃ fonction bijective g : B 
→ A. Alors AB est un ensemble non dénombrable.
4. |A| ≤ |B| et |A| 6≥ |B|.
Théorème 1.5.29 R est non dénombrable.
5. ∃ fonction injective, f : A  B
mais 6 ∃ fonction injective g : B  A.
6. ∃ fonction injective, f : A  B
mais 6 ∃ fonction surjective g : A →
→ B.
7. |A| 6≥ |B|.
8. 6 ∃ fonction injective g : B  A.
9. 6 ∃ fonction surjective g : A →
→ B.
Théorème 1.5.19 Les résultats suivants sont équivalents :
1. A est dénombrable.
2. |A| ≤ |N|
3. ∃ fonction surjective f : N →
→ A.
4. ∃ fonction injective f : A  N.
5. |A| < |N| ou |A| = |N|
6. A est fini ou ∃ fonction bijective f : A 
→ N.
7. A est fini ou ∃ fonction bijective f : N 
→ A.
n
X def
Définition 2.1.1 Notation sigma : g(i) = g(n0 ) + g(n0 + 1) + g(n0 + 2) + . . . + g(n) .
i=n0

Proposition 2.1.2 Propriétés arithmétiques des sommes en notation sigma.


n n n
X X X n(n + 1)
a: 1 = n − n0 + 1 (En particulier, 1 = n) d: i =
i=n0 i=1 i=1
2
n n n n
X X X X (2n + 1)(n + 1)n
b: k · g(i) = k· g(i) (En particulier, k = k · n) e: i2 =
i=n0 i=n0 i=1 i=1
6
n
X n
X n
X
c: g(i) + h(i) = g(i) + h(i)
i=n0 i=n0 i=n0

Théorème 2.3.1 Principe d’induction mathématique faible.


h i 
a: P (0) ∧ ∀n ∈ N | P (n) ⇒ P (n + 1) ⇒ ∀n ∈ N | P (n)
h i
P (0) ∧ ∀n ∈ N∗ | P (n−1) ⇒ P (n)

b: ⇒ ∀n ∈ N | P (n)

Théorème 2.3.2 Principe d’induction mathématique faible sur {n0 , n0 + 1, n0 + 2, . . .}.


h i  def
P (n0 ) ∧ ∀n ∈ I\{n0 } | P (n−1) ⇒ P (n) ⇒ ∀n ∈ I | P (n) , où I = {n0 , n0 + 1, n0 + 2, . . .}.

Théorème 2.3.3 Principe d’induction mathématique à deux cas de base.


h i 
P (0) ∧ P (1) ∧ ∀n ∈ N \ {0, 1} | P (n−2) ∧ P (n−1) ⇒ P (n) ⇒ ∀n ∈ N | P (n) .

Théorème 2.3.4 Principe d’induction mathématique forte.


" #
 

 
P (0) ∧ ∀n ∈ N ∀k ∈ N | (k < n) ∧ P (k) ⇒ P (n) ⇒ ∀n ∈ N | P (n) .

Théorème 2.3.5 Principe d’induction mathématique forte sur {n0 , n0 + 1, n0 + 2, . . .}.


" #
 
  def
P (n0 )∧ ∀n ∈ I \{n0 } ∀k ∈ I | (k < n)∧P (k) ⇒ P (n) ⇒ ∀n ∈ I | P (n) , où I = {n0 , n0 + 1, n0 + 2, . . .}.

Théorème 2.4.2 Terme général d’une suite arithmétique. Les énoncés suivants sont équivalents :
1. han in∈N est une suite arithmétique de premier terme a et de différence d.
2. han in∈N est définie par récurrence par : a0 = a et an = an−1 + d ∀n ∈ N∗ .
3. han in∈N est définie par terme général par : an = a + nd ∀n ∈ N .

Théorème 2.4.4 Terme général d’une suite géométrique. Les énoncés suivants sont équivalents :
1. han in∈N est une suite géométrique de premier terme a et de raison r.
2. han in∈N est définie par récurrence par : a0 = a et an = an−1 · r ∀n ∈ N∗ .
3. han in∈N est définie par terme général par : an = a · rn ∀n ∈ N .

Définition 2.4.5 Suite des sommes de Théorème 2.4.6 Sommes de premiers Théorème 2.4.7 Sommes de premiers
premiers termes d’une suite. termes d’une suite arithmétique termes d’une suite géométrique
n
(a0 + an )(n + 1) a0 · (1 − rn+1 )
X
Sn = ai ∀n ∈ N . Sn = ∀n ∈ N . Sn = ∀n ∈ N .
i=0 2 1−r

Théorème 2.4.9 Récurrences linéaires, homogènes d’ordre 2



 a0 =
 a si ρ1 6= ρ2 : an = A · (ρ1 )n + B · (ρ2 )n n ∈ N .
a1 = b si ρ1 = ρ2 : an = A · (ρ1 )n + B · n · (ρ1 )n n ∈ N .

an = r · an−1 + s · an−2 ∀n ∈ N \ {0, 1} Où ρ1 et ρ2 sont les zéros du polynôme p(x) = x2 − rx − s.

Théorème 2.5.1 Modèles de séries de puissances

a X
a: = a bi xi = a + a b x + a b2 x2 + a b3 x3 + · · · + a bn xn + · · ·
1 − bx i=0

a X
b: = (i+1)a bi xi = a + 2a b x + 3a b2 · x2 + · · · + (n+1)a bn xn + · · ·
(1 − bx)2 i=0

ax X
c: = i a bi−1 xi = 0 + a x + 2a b x2 + 3a b2 x3 + · · · + n a bn−1 xn + · · ·
(1 − bx)2 i=0

a X (i+2)(i+1) a bi i 2·1 a 3·2 a b 4·3 a b2 2 5·4 a b3 3 (n+2)(n+1) a bn n
d: = x = + x + x + x + · · · + x + ···
(1 − bx)3 i=0
2 2 2 2 2 2

Corollaire 2.5.2 Cas particuliers des modèles de séries de puissances



1 X
a: = xi = 1 + x + x2 + x3 + x4 + · · · + xn + · · ·
1−x i=0

1 X
b: = (−1)i xi = 1 + (−1)x + (−1)2 x2 + (−1)3 x3 + · · ·
1+x i=0

1 X
c: = (i + 1) xi = 1 + 2x + 3x2 + 4x3 + · · · + (n + 1) xn + · · ·
(1 − x)2 i=0

x X
d: = i xi = 0 + x + 2x2 + 3x3 + 4x4 + · · · + n xn + · · ·
(1 − x)2 i=0

1 X (i+2)(i+1) i 2·1 3·2 4·3 2 (n+2)(n+1) n
e: = x = + x+ x + ··· + x + ···
(1 − x)3 i=0
2 2 2 2 2

Théorème 2.5.3 Décomposition en fractions partielles


ax + b A B ax2 + bx + c A B C
a: = + d: = + +
(cx + d)(ex + f ) cx + d ex + f (dx + e)2 (f x + g) dx + e (dx + e)2 fx + g
ax + b A B ax2 + bx + c A B C
b: = + e: = + +
(cx + d)2 cx + d (cx + d)2 (dx + e)3 dx + e (dx + e)2 (dx + e)3
ax2 + bx + c A B C
c: = + +
(dx + e)(f x + g)(hx + i) dx + e f x + g hx + i

Définition 2.6.1 Fonctions non décroissantes et fonctions croissantes.


a : f est non décroissant sur [a, b] ⇔ (∀x, y ∈ [a, b] | x < y ⇒ f (x) ≤ f (y) )
b : f est non croissant sur [a, b] ⇔ (∀x, y ∈ [a, b] | x < y ⇒ f (x) ≥ f (y) )

Théorème 2.6.2 Bornes d’une sommation.


Z b X b Z b+1
a: f (x)dx ≤ f (i) ≤ f (x)dx si f est non décroissant sur [a−1, b+1]
a−1 i=a a
Z b+1 Xb Z b
b: f (x)dx ≤ f (i) ≤ f (x)dx si f est non croissant sur [a−1, b+1]
a i=a a−1

Formules d’intégration
xa+1
Z Z
a: k · dx = k·x+C b: xa · dx = + C pour a 6= −1
a+1
Z Z
1 c c
c: · dx = ln |x| + C d: · dx = ln |a x + b| + C
x ax + b a
ax
Z Z
e: ex · dx = ex + C f: ax · dx = +C
ln a
Z Z
x
g: ln x · dx = x ln x − x + C h: loga x · dx = x loga x − +C
ln a
Z   Z Z
i: f (x) + g(x) · dx = f (x) · dx + g(x) · dx
Z Z b h ib
En notant F = f (x) · dx, on a : f (x) · dx = F (x) = F (b) − F (a) .
a a
.
Définitions des opérateurs booléens Antisymétrie de l’inclusion
Négation ¬ ; conjonction ∧ ; disjonction ∨ ; implication ⇒, S =T ⇔ S ⊆T ∧T ⊆S
implication inverse ⇐ ; si et seulement si ⇔.
Lois de De Morgan (quantificateurs)
Lois de De Morgan a : ¬(∀x ∈ T | P (x)) ⇔ (∃x ∈ T | ¬P (x)) (1ère loi)
a : ¬(p ∧ q) ⇔ ¬p ∨ ¬q (1ière loi de De Morgan) b : ¬(∃x ∈ T | P (x)) ⇔ (∀x ∈ T | ¬P (x)) (2e loi)
b : ¬(p ∨ q) ⇔ ¬p ∧ ¬q (2e loi de De Morgan)
Produit cartésien
def
Propriétés de la négation • S × T = {ha, bi | a ∈ S ∧ b ∈ T } .
Double négation : ¬(¬p) ; Tiers exclu p ∨ ¬p ; • S1 × S2 × . . . × Sn
def
Contradiction p ∧ ¬p . = {he1 , e2 , . . . , en i | e1 ∈ S1 ∧ e2 ∈ S2 ∧ . . . ∧ en ∈
Sn } .
Propriétés de la conjonction def
Él. neutre p ∧ vrai ; Él. absorbant p ∧ faux • S n = S × S × . . . × S (n fois) .
Idempotence p ∧ p ; Commutativité p ∧ q ; Appartenance d’un couple à une relation
def
Associativité (p ∧ q) ∧ r. a ρ b = ha, bi ∈ ρ .

Propriétés de la disjonction Domaine et image d’une relation


def
Él. neutre p ∨ faux ; Él. absorbant p ∨ vrai a : Dom(ρ) = {a ∈ S | (∃b ∈ T | a ρ b)} (Domaine)
def
Idempotence p ∨ p ; Commutativité p ∨ q ; b: Im(ρ) = {b ∈ T | (∃a ∈ S | a ρ b)} (Image)
Associativité (p ∨ q) ∧ r. Relation identité
def
IS = {ha, ai ∈ S 2 | a ∈ S} .
Axiome d’extensionnalité
def
S = T = (∀e | e ∈ S ⇔ e ∈ T ) . Composition de deux relations
def
ha, ci ∈ ρ ◦ σ = (∃b ∈ T | ha, bi ∈ ρ ∧ hb, ci ∈ σ) .
Notation abrégée des quantificateurs
def
a : (∀x ∈ T | P (x) ) = (∀x | x ∈ T ⇒ P (x) ) Puissance et inverse d’une relation
def
b: (∃x ∈ T | P (x) ) = (∃x | x ∈ T ∧ P (x) ) def
ρn = ρ ◦ ρ ◦ . . . ◦ ρ (n fois, pour n ≥ 1),
def
Définitions des opérateurs de composition ρ0 = IS ,
def
Complément c ; Intersection ∩, Union ∪, Différence \. ρ−1 = {hb, ai | ha, bi ∈ ρ} .

Opérateurs d’inclusions. Familles de relation (1)


def
a : T ⊆ S = (∀e | e ∈ T ⇒ e ∈ S) (Incl.) a : ρ est réflexif ⇔ (∀a ∈ S | a ρ a )
b: T ⊂S
def
= T ⊆ S ∧ (∃e | e ∈ S ∧e ∈
/ T ) (Incl. stricte) b : ρ est irréflexif ⇔ (∀a ∈ S | ¬(a ρ a) )
c : ρ est symétrique ⇔ (∀a, b ∈ S | a ρ b ⇒ b ρ a )
Ensemble puissance d : ρ est asymétrique ⇔ (∀a, b ∈ S | a ρ b ⇒ ¬(b ρ a) )
def
P(S) = {e | e ⊆ S}. e : ρ est antisymétrique ⇔ (∀a, b ∈ S | a ρ b ∧ b ρ a ⇒ a = b )
f : ρ est transitif ⇔ (∀a, b, c ∈ S | a ρ b ∧ b ρ c ⇒ a ρ c )
Lois de De Morgan (version ensembliste).
a : (S ∩ T )c = S c ∪ T c (Première loi de De Morgan) Familles de relation (2)
b : (S ∪ T )c = S c ∩ T c (Deuxième loi de De Morgan) a : ρ est total ⇔ (∀a ∈ S | (∃b ∈ T | a ρ b) )
b : ρ est surjectif ⇔ (∀b ∈ T | (∃a ∈ S | a ρ b) )
Propriétés du complément.
c : ρ est déterministe
Complémentarité (S c )c ; Tiers exclu S ∪ S c
⇔ (∀a ∈ S, b, b0 ∈ T | a ρ b ∧ a ρ b0 ⇒ b = b0 )
Contradiction S ∩ S c
d : ρ est injectif
Propriétés de l’intersection ⇔ (∀a, a0 ∈ S, b ∈ T | a ρ b ∧ a0 ρ b ⇒ a = a0 )
Él. neutre S ∩ U ; Él. absorbant S ∩ ∅
Définitions équivalentes d’une fonction surjective
Idempotence S ∩ S ; Commutativité S ∩ T ;
a : (∀b ∈ T | (∃a ∈ S | a f b) )
Associativité (S ∩ T ) ∩ U .
b : (∀b ∈ T | (∃a ∈ S | f (a) = b )
Propriétés de l’union Définitions équivalentes d’une fonction injective
Él. neutre S ∪ ∅ ; Él. absorbant S ∪ U a : (∀a ∈ S, a0 ∈ S, b ∈ T | a f b ∧ a0 f b ⇒ a = a0 )
Idempotence S ∪ S ; Commutativité S ∪ T ; b : (∀a ∈ S, a0 ∈ S | f (a) = f (a0 ) ⇒ a = a0 )
Associativité (S ∪ T ) ∪ U . c : (∀a ∈ S, a0 ∈ S | a 6= a0 ⇒ f (a) 6= f (a0 ))
Définition 1.5.2 On dit que A a autant d’éléments que B Théorème 1.5.18 Les énoncés suivants sont équivalents :
(ou que la cardinalité de A est égale à la cardinalité de B) ssi 1. |A| < |B|.
il existe une fonction bijective de A vers B.
2. |A| ≤ |B| et |A| =
6 |B|.
Définition 1.5.6 Un ensemble A est dit dénombrable s’il 3. ∃ fonction injective, f : A  B
est fini ou de la même cardinalité que l’ensemble N. mais 6 ∃ fonction bijective g : B 
→ A.
4. |A| ≤ |B| et |A| 6≥ |B|.
Définition 1.5.11 On dit que A a une cardinalité plus
petite ou égale à la cardinalité de B ssi il existe une fonc- 5. ∃ fonction injective, f : A  B
tion injective de A vers B. (ou, ce qui est équivalent, ssi il mais 6 ∃ fonction injective g : B  A.
existe une fonction surjective de B vers A.) 6. ∃ fonction injective, f : A  B
mais 6 ∃ fonction surjective g : A →
→ B.
Théorème 1.5.16 Soit A un ensemble infini. Alors |A| ≥ |N|.
7. |A| 6≥ |B|.
Théorème 1.5.21 Soit A et B, deux ensembles 8. 6 ∃ fonction injective g : B  A.
dénombrables (finis ou infinis). Alors 9. 6 ∃ fonction surjective g : A →
→ B.
1. A ∪ B est dénombrable, Théorème 1.5.19 Les résultats suivants sont équivalents :

2. A × B est dénombrable. 1. A est dénombrable.


2. |A| ≤ |N|
Théorème 1.5.17 Les énoncés suivants sont équivalents :
3. ∃ fonction surjective f : N →
→ A.
1. |A| = |B|.
4. ∃ fonction injective f : A  N.
2. ∃ fonction bijective f : A 
→ B. 5. |A| < |N| ou |A| = |N|
3. ∃ fonction bijective g : B 
→ A. 6. A est fini ou ∃ fonction bijective f : A 
→ N.

4. |A| ≤ |B| et |A| ≥ |B|. 7. A est fini ou ∃ fonction bijective f : N 


→ A.
Théorème 1.5.20 Les résultats suivants sont équivalents :
5. ∃ fonction injective f : A  B
et ∃ fonction injective g : B  A. 1. A est non dénombrable

6. ∃ fonction injective f : A  B 2. |A| > |N|.


et ∃ fonction surjective h : A →
→ B. 3. 6 ∃ fonction surjective f : N →
→ A.

7. ∃ fonction surjective k : B →
→A 4. 6 ∃ fonction injective f : A  N.
et ∃ fonction surjective h : A →
→ B. 5. A est infini et |A| =
6 |N|.

8. ∃ fonction surjective k : B →
→A 6. A est infini et 6 ∃ fonction bijective f : A −→ N.
et ∃ fonction injective g : B  A. 7. A est infini et 6 ∃ fonction bijective f : N 
→ A.

Techniques de démonstration
• P ⇒ Q : On suppose que P est vrai ; puis on montre que Q est vrai.
• P ⇔ Q : Démonstration de P ⇒ Q ET Démonstration de P ⇐ Q.

• (∀x ∈ X | P (x)) :
– Démonstration “directe” : Soit x ∈ X, puis on montre P (x) est vrai.
– Démonstration par cas : On choisit des ensembles X1 , . . . Xn dont l’union donne X.
On montre ensuite chaque cas : (∀x ∈ X1 | P (x)), . . . , (∀x ∈ Xn | P (x)).
• (∃x ∈ X | P (x)) : Soit x ∈ X, choisi de telle façon. On montre que x existe et est bien dans X.
Puis on montre que P (x) est vrai.
• (∀x ∈ X | Q(x) ⇒ P (x)) : Soit x ∈ X, choisi tel que Q(x) est vrai ; donc P (x) est vrai.

• P ∧ Q : Démonstration de P ET Démonstration de Q.
• P ∨ Q : Démonstration par cas (Cas 1 : P est vrai ; Cas 2 : P est faux et on montre que Q est vrai).
Propriétés arithmétiques des sommes en notation sigma
n n n
X X X n(n + 1)
a: 1 = n − n0 + 1 (En particulier, 1 = n) d: i =
i=n0 i=1 i=1
2
n n n n
X X X X (2n + 1)(n + 1)n
b: k · g(i) = k· g(i) (En particulier, k = k · n) e: i2 =
i=n0 i=n0 i=1 i=1
6
n
X n
X n
X
c: g(i) + h(i) = g(i) + h(i)
i=n0 i=n0 i=n0

Principes
h d’induction
i
P (0) ∧ ∀n ∈ N∗ | P (n−1) ⇒ P (n)

⇒ ∀n ∈ N | P (n) . h Induction faible i
h i 
P (0) ∧ P (1) ∧ ∀n ∈ N \ {0, 1} | P (n−2) ∧ P (n−1) ⇒ P (n) ⇒ ∀n ∈ N | P (n) . .h 2 cas de base i
h   i
P (0) ∧ ∀n ∈ N∗ ∀k ∈ N | (k < n) ∧ P (k) ⇒ P (n)
 
⇒ ∀n ∈ N | P (n) . . h Induction forte i

Théorème 2.4.2 Terme général d’une suite arithmétique. Les énoncés suivants sont équivalents :
1. han in∈N est une suite arithmétique de premier terme a et de différence d.
2. han in∈N est définie par récurrence par : a0 = a et an = an−1 + d ∀n ∈ N∗ .
3. han in∈N est définie par terme général par : an = a + nd ∀n ∈ N .

Théorème 2.4.4 Terme général d’une suite géométrique. Les énoncés suivants sont équivalents :
1. han in∈N est une suite géométrique de premier terme a et de raison r.
2. han in∈N est définie par récurrence par : a0 = a et an = an−1 · r ∀n ∈ N∗ .
3. han in∈N est définie par terme général par : an = a · rn ∀n ∈ N .

Définition 2.4.5 Suite des sommes de Théorème 2.4.6 Sommes de premiers Théorème 2.4.7 Sommes de premiers
premiers termes d’une suite. termes d’une suite arithmétique termes d’une suite géométrique
n
(a0 + an )(n + 1) a0 · (1 − rn+1 )
X
Sn = ai ∀n ∈ N . Sn = ∀n ∈ N . Sn = ∀n ∈ N .
i=0 2 1−r

Théorème 2.4.9 Récurrences linéaires, homogènes d’ordre 2



 a0 =
 a si ρ1 6= ρ2 : an = A · (ρ1 )n + B · (ρ2 )n n ∈ N .
a1 = b si ρ1 = ρ2 : an = A · (ρ1 )n + B · n · (ρ1 )n n ∈ N .

an = r · an−1 + s · an−2 ∀n ∈ N \ {0, 1} Où ρ1 et ρ2 sont les zéros du polynôme p(x) = x2 − rx − s.

Théorème 2.5.1 Modèles de séries de puissances



a X
a: = a bi xi = a + a b x + a b2 x2 + a b3 x3 + · · · + a bn xn + · · ·
1 − bx i=0

a X
b: = (i+1)a bi xi = a + 2a b x + 3a b2 · x2 + · · · + (n+1)a bn xn + · · ·
(1 − bx)2 i=0

ax X
c: = i a bi−1 xi = 0 + a x + 2a b x2 + 3a b2 x3 + · · · + n a bn−1 xn + · · ·
(1 − bx)2 i=0

a X (i+2)(i+1) a bi i 2·1 a 3·2 a b 4·3 a b2 2 5·4 a b3 3 (n+2)(n+1) a bn n
d: 3
= x = + x+ x + x + ··· + x + ···
(1 − bx) i=0
2 2 2 2 2 2

Théorème 2.5.3 Décomposition en fractions partielles


ax + b A B ax2 + bx + c A B C
a: = + d: = + +
(cx + d)(ex + f ) cx + d ex + f (dx + e)2 (f x + g) dx + e (dx + e)2 fx + g
ax + b A B ax2 + bx + c A B C
b: = + e: = + +
(cx + d)2 cx + d (cx + d)2 (dx + e)3 dx + e (dx + e)2 (dx + e)3
ax2 + bx + c A B C
c: = + +
(dx + e)(f x + g)(hx + i) dx + e f x + g hx + i
Fonctions non décroissantes et fonctions croissantes
a : f est non décroissant sur [a, b] ⇔ (∀x, y ∈ [a, b] | x < y ⇒ f (x) ≤ f (y) )
b : f est non croissant sur [a, b] ⇔ (∀x, y ∈ [a, b] | x < y ⇒ f (x) ≥ f (y) )

Théorème 2.6.2 Bornes d’une sommation.


Z b X b Z b+1
a: f (x)dx ≤ f (i) ≤ f (x)dx si f est non décroissant sur [a−1, b+1]
a−1 i=a a
Z b+1 Xb Z b
b: f (x)dx ≤ f (i) ≤ f (x)dx si f est non croissant sur [a−1, b+1]
a i=a a−1

Z Z b h ib
Formules d’intégration En notant F = f (x)·dx, on a : f (x)·dx = F (x) = F (b)−F (a) .
a a
Z Z a+1
x
a: k · dx = k·x+C b: xa · dx = + C pour a 6= −1
a+1
Z Z
1 c c
c: · dx = ln |x| + C d: · dx = ln |a x + b| + C
x ax + b a
ax
Z Z
e: ex · dx = ex + C f: ax · dx = +C
ln a
Z Z
x
g: ln x · dx = x ln x − x + C h: loga x · dx = x loga x − +C
ln a
Z   Z Z
i: f (x) + g(x) · dx = f (x) · dx + g(x) · dx

Méthode des substitutions à rebours Méthode des séries génératrices


1. Substituer à rebours 1. Exprimer la série génératrice G sous la forme d’une
2. Déduire l’expression après i subtitutions. fonction rationnelle
3. Substituer la valeur du cas de base 2. Trouver la série de puissance associée à G
4. Calculer le terme général 3. Trouver le terme général de la suite

Lexique de la théorie des graphes


— Un graphe (ou graphe non orienté) est une relation binaire symétrique et irreflexive.
— Un digraphe (ou graphe orienté) est une relation binaire.
— Un graphe régulier d’ordre k est un graphe dont tous ses sommets sont de degré k.
— Un graphe complet d’ordre n (noté Kn ) est un graphe qui a exactement n sommets et où pour tout x, y ∈ V (Kn )
tels que x 6= y, on a [x, y] ∈ E(Kn ).
— Un graphe G est un graphe biparti de bipartition A et B si A et B forment une bipartition de V (G) (c.-à-d. :
A ∩ B = ∅ et V (G) = A ∪ B), et pour toute arête de G, une extrémité appartient à A et l’autre à B.
— Un graphe H est dit sous-graphe d’un graphe G (noté : H C G) si V (H) ⊆ V (G) et E(H) ⊆ E(G) .
— Un graphe H est un sous-graphe couvrant d’un graphe G si : H C G et V (H) = V (G) .
— Un graphe H est un sous-graphe induit d’un graphe G si H C G et (∀x, y ∈ V (H) | [x, y ] ∈ E(G) ⇒ [x, y ] ∈
E(H)) .
— Un arbre est un graphe qui est connexe et ne contient aucun cycle.
— Un arbre binaire est un arbre qui contient un sommet de degré 2 et dont tous les autres sommets sont de degrés 1
ou 3.
— Un arbre binaire complet est un arbre binaire dont toutes les feuilles sont toutes au même niveau.
— Un cycle eulérien d’un graphe est un cycle passant par chacune des arêtes du graphe. Un graphe qui contient un
tel cycle est un graphe eulérien.
— Un cycle hamiltonien d’un graphe est un cycle élémentaire passant par chacun des sommets du graphe. Un graphe
qui contient un tel cycle est un graphe hamiltonien.
— Un graphe planaire est un graphe qui peut être tracé dans un plan sans qu’aucune de ses arêtes en croise une autre.
— Une représentation planaire est une représentation dans le plan R2 d’un graphe planaire.

Proposition 3.5.4 Soit G un graphe planaire connexe tel que V (G) ≥ 4, alors E(G) ≤ 3 V (G) − 6 .

Vous aimerez peut-être aussi