✖

Exemples de logique propositionnelle

Dans cet article, nous allons voir quelques formules et leurs valuations possibles à l’aide de la méthode de la table de vérité.

Premier exemple

Essayons de trouver quand cette formule est vraie : ϕ = (p ∧ q) ∨ ¬q. Écrivons dans le tableau les variables propositionnelles p et q :

pq11100100

Ajoutons ensuite au tableau la première partie de la formule : (p ∧ q), la négation ¬q, puis la formule entière :

pqp∧q¬qϕ11100100

Calculons maintenant les valeurs de la troisième colonne, qui est une simple conjonction, et aussi celles de la négation – là, il suffit de mettre les valeurs inverses de celles de la deuxième colonne :

pqp∧q¬qϕ1110100101000001

Enfin, calculons les valeurs de la dernière colonne. C’est la formule entière. Dans notre tableau, nous calculons donc la disjonction « entre la troisième et la quatrième colonne ». Résultat :

pqp∧q¬qϕ11101100110100000011

Deuxième exemple

Même énoncé, autre formule : ϕ = (p ∧ ¬q) ⇔ (¬p ⇒ q). Nous voyons que la formule contient les variables propositionnelles p et q et leurs négations. Nous commençons donc par construire un tableau avec les deux variables et leurs négations :

pq¬p¬q1100100101100011

Ajoutons ensuite les formules p ∧ ¬q et ¬p ⇒ q, que nous savons déjà évaluer facilement, car le tableau contient à la fois les valuations des propositions et celles de leurs négations. Le tableau ressemble à ceci :

pq¬p¬q(p∧¬q)(¬p⇒q)110001100111011001001100

Il nous reste enfin à évaluer la formule entière, qui est l’équivalence entre les deux dernières colonnes :

pq¬p¬q(p∧¬q)(¬p⇒q)ϕ1100010100111101100100011001

Troisième exemple

Le troisième exemple sera un peu plus compliqué : essayons avec trois variables propositionnelles, ce qui complique le calcul du tableau. La formule sera la suivante : ϕ = (¬(p ⇒ q)) ∧ (r ⇔ (¬p ∨ q)).

Comme il y a trois variables propositionnelles, le nombre total de valuations possibles est égal à huit :

pqr111110101100011010001000

Ensuite, nous procédons comme dans le cas précédent : nous évaluons chaque colonne dans les huit lignes. Le tableau entier ressemblera à ceci :

pqr¬p(p⇒q)(¬p∨q)¬(p⇒q)(r⇔(¬p∨q))ϕ111011010110011000101000100100000111011111010010111000001111010000111000

Quatrième exemple

Cet exemple n’est plus donné comme une simple formule, mais comme un problème en langage courant. Trois amis qui veulent aller à une grande fête où l’on distribuera des pizzas gratuites ne s’apprécient pas vraiment et posent leurs conditions pour y aller. Ils s’appellent Mathieu, Jules et Paul. Les règles sont les suivantes :

  1. Si Mathieu y va, alors Jules y va aussi.
  2. Paul vient à la fête ou, si Mathieu y vient, alors Jules n’y vient pas.
  3. Paul vient si et seulement si Mathieu ne vient pas ou Jules ne vient pas.

La question est : peuvent-ils tous venir à la fête ? Sinon, qui peut y aller sans enfreindre aucune règle ?

Nous devons d’abord réécrire les propositions précédentes avec des variables propositionnelles et des formules. Notons donc M, J et P les variables propositionnelles (Mathieu, Jules, Paul), chacune signifiant une proposition du type « Mathieu ira à la fête ». La première règle peut se réécrire ainsi : M ⇒ J – « si M, alors J », c’est-à-dire « si Mathieu va à la fête, alors Jules va à la fête ».

Voici comment réécrire la deuxième règle. Elle commence par la phrase « Paul vient à la fête ou… », nous aurons donc évidemment besoin d’une disjonction. Pour l’instant, écrivons : P ∨ … La partie suivante de la phrase dit : « si Mathieu y vient, alors Jules n’y vient pas ». C’est une implication, où il faut encore utiliser une négation à droite. « Jules ne vient pas » = ¬J. L’implication entière s’écrit : M ⇒ ¬J. Nous l’ajoutons à la disjonction précédente : P ∨ (M ⇒ ¬J).

Nous réécrivons la troisième règle ainsi : nous commençons par « Paul vient si et seulement si ». Cela signifie une équivalence : P ⇔ … Ensuite nous avons « Mathieu ne vient pas ou Jules ne vient pas », que nous réécrivons ainsi : ¬M ∨ ¬J. Nous assemblons le tout : (P ⇔ (¬M ∨ ¬J)).

Mettons maintenant toutes les formules dans le tableau et calculons les valeurs :

MJP(M⇒J)(P∨(M⇒¬J))(P⇔(¬M∨¬J))111110110101101011100010011111010110001111000110

La question était de savoir si les trois garçons peuvent aller à la grande fête. Nous trouvons la réponse à la première ligne. Elle correspond au cas où tous les garçons y vont – ce qui est signalé par les trois 1 des trois premières colonnes. Toutes les conditions sont-elles remplies ? La première oui (quatrième colonne), la deuxième aussi (cinquième colonne), mais la dernière non (dernière colonne), il y a un zéro. Cela signifie que, si les trois y vont, la troisième condition ne sera pas remplie.

Nous cherchons donc les lignes où il n’y a que des 1 aux positions qui représentent les conditions (c’est-à-dire les trois dernières colonnes). Un 1 signifie que la condition est remplie. Nous voyons que cela arrive dans deux cas : quand Jules et Paul y vont mais pas Mathieu, et quand seul Paul y va.

Tu peux aussi le calculer en ajoutant au tableau la formule ϕ, qui sera la conjonction des trois conditions. Elle s’écrit ainsi : ϕ = ((M ⇒ J) ∧ (P ∨ (M ⇒ ¬J)) ∧ (P ⇔ (¬M ∨ ¬J))). Elle représente ce que nous voulons – que toutes les formules (toutes les conditions) soient remplies. Le tableau ressemblerait alors à ceci :

MJP(M⇒J)(P∨(M⇒¬J))(P⇔(¬M∨¬J))ϕ11111001101010101011010001000111111010110000111110001100

Quelques exemples de plus sur la méthode de la table de vérité

Comme j’ai écrit un programme qui sait construire automatiquement tout le tableau à partir d’une formule donnée, je dois bien l’utiliser, et voici donc encore quelques formules résolues :

Formule : ((a ∧ ¬b) ∨ (b ∧ (b ⇒ a))). Table de vérité :

ab(a∧¬b)(b∧(b⇒a))((a∧¬b)∨(b∧(b⇒a)))11011101010100000000

Formule : (a ∨ ¬a) ⇔ (b ∧ ¬b). Table de vérité :

ab(a∨¬a)(b∧¬b)((a∨¬a)⇔(b∧¬b))11100101000110000100

Formule : ¬(a ∨ b) ⇔ (¬b ∧ ¬a). Table de vérité :

ab¬(a∨b)(¬b∧¬a)(¬(a∨b)⇔(¬b∧¬a))11001100010100100111

Formule : ϕ = (¬p ⇔ (q ∧ r)) ⇒ (p ∨ ¬(p ∧ q)). Table de vérité :

pqr(q∧r)¬(p∧q)(¬p⇔(q∧r))(p∨¬(p∧q))ϕ1111001111000111101011111000111101111111010010110010101100001011

Formule : ϕ = ¬(p ⇔ ¬q) ∧ (r ⇒ ¬p) ∧ (p ∨ r). Table de vérité :

pqr¬(p⇔¬q)(r⇒¬p)(p∨r)ϕ11110101101111101001010001100110110010010000111110001100

Chapitres: Logique propositionnelle, Vérité des formules, Exemples de logique propositionnelle