Aller au contenu principal

Mathématiques discrètes

Les mathématiques discrètes fournissent le langage nécessaire au raisonnement sur les programmes et les algorithmes. Le parcours durable est :

  1. propositions, prédicats et techniques de preuve ;
  2. ensembles, fonctions et relations ;
  3. induction et récursion ;
  4. dénombrement et combinatoire ;
  5. graphes et arbres ;
  6. probabilités discrètes.

Cette page est une référence initiale sur les preuves et les structures finies, pas un cours complet de combinatoire ou de théorie des graphes. Berkeley CS 70 développe les preuves et les probabilités ; les notes algorithmiques se trouvent dans la branche Informatique.

Énoncés et preuves

Une proposition est vraie ou fausse ; un prédicat comme P(n)P(n) devient une proposition lorsque sa variable est spécifiée ou quantifiée. Une affirmation universelle nP(n)\forall n\,P(n) exige un argument couvrant chaque nn autorisé ; un contre-exemple la réfute. Une affirmation existentielle nP(n)\exists n\,P(n) ne demande qu'un témoin. Le domaine compte : « tout nombre a un inverse multiplicatif » est faux sur les réels à cause de zéro, mais vrai sur les réels non nuls.

L'implication PQP\Rightarrow Q n'implique pas sa réciproque QPQ\Rightarrow P. Elle équivaut à sa contraposée ¬Q¬P\neg Q\Rightarrow\neg P. Pour un entier nn, « nn pair implique n2n^2 pair » se prouve en écrivant n=2kn=2k, d'où n2=2(2k2)n^2=2(2k^2). Tester quelques nombres pairs illustrerait l'énoncé sans le prouver.

La récurrence prouve P(n)P(n) pour tout entier nn0n\ge n_0 en établissant un cas initial, puis que P(n)P(n) implique P(n+1)P(n+1). Pour 1++n=n(n+1)/21+\cdots+n=n(n+1)/2, le cas n=1n=1 est vrai. Ajouter n+1n+1 à la somme supposée donne (n+1)(n+2)/2(n+1)(n+2)/2, donc le cas suivant. Un invariant de boucle suit le même schéma : initialisation, préservation par une itération, puis conclusion à la sortie. La terminaison demande encore un argument distinct, par exemple une mesure entière non négative qui décroît strictement.

Compter les bons objets

Un ensemble contient des éléments distincts sans ordre. Une fonction associe exactement une sortie à chaque entrée ; une relation est un ensemble de couples sans cette obligation. Le dénombrement dépend de l'ordre et des répétitions :

Choisir rr objets parmi nn objets distinctsNombre
Ordonnés, avec répétitionnrn^r
Ordonnés, sans répétitionn!/(nr)!n!/(n-r)!
Non ordonnés, sans répétition(nr)=n!/[r!(nr)!]\binom nr=n!/[r!(n-r)!]

Ici n,rn,r sont des entiers non négatifs, avec rnr\le n sans répétition, et 0!=10!=1. Le choix vide compte une fois ; dans cette formule de dénombrement, 00=10^0=1. Choisir deux personnes distinctes parmi cinq donne 20 affectations à deux rôles distincts, mais seulement 10 comités de deux personnes : chaque comité était compté dans les deux ordres. Diviser un nombre de cas favorables par le nombre total ne donne une probabilité que si les issues élémentaires sont équiprobables.

Graphes, arbres et jeux finis

Un graphe G=(V,E)G=(V,E) comprend des sommets et des arêtes. Précisez si les arêtes sont orientées, et si les boucles ou arêtes multiples sont permises. Un arbre fini simple non orienté est connexe et sans cycle ; avec n1n\ge1 sommets, il possède n1n-1 arêtes et un unique chemin simple entre deux sommets. Le nombre d'arêtes ne suffit pas : un triangle et un sommet isolé ont quatre sommets et trois arêtes, mais ne forment pas un graphe connexe.

Un arbre de jeu représente des historiques, pas seulement des positions distinctes : plusieurs historiques peuvent atteindre la même position. Les stratégies gagnantes dans les jeux finis emploient récurrence, invariants et arbres pour distinguer preuve d'existence, construction et exécution.

Explorer les liensOuvrir le réseau