introduction à la logique - wackb.gricad-pages.univ ... · i complétude du calcul des prédicats...

95
Introduction à la logique Introduction à la logique Benjamin Wack ([email protected]) Notes de cours par Stéphane Devismes Pascal Lafourcade Michel Lévy Université Grenoble Alpes janvier 2018 B. Wack (UGA) Introduction à la logique janvier 2018 1 / 45

Upload: phammien

Post on 13-Sep-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Introduction à la logique

Benjamin Wack ([email protected])

Notes de cours parStéphane Devismes Pascal Lafourcade Michel Lévy

Université Grenoble Alpes

janvier 2018

B. Wack (UGA) Introduction à la logique janvier 2018 1 / 45

Page 2: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Préambule

Organisation

12 semaines

I Cours magistral : 1h30 par semaine

I TD : 2 × 1h30 = 3h par semaine

Cette semaine

I Cours magistral : aujourd’hui ! et jeudi 13h30 comme d’habitude

I TDs :1 TD seulement cette semaine (mardi/vendredi) sauf pour INF-01,2 à partir de la semaine prochaine

https://wackb.gricad-pages.univ-grenoble-alpes.fr/inf402/

B. Wack (UGA) Introduction à la logique janvier 2018 2 / 45

Page 3: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Préambule

Note

Evaluations

I Contrôle continu 60% : 4 interros 10%, partiel 20% et projet 30%I Examen : 40%

Projet par groupes de 3 (ou 4).

I Phase 1 : Modélisation d’un problème en logique (avec interfacelogicielle)

I Phase 2 : Utilisation d’un solveur SAT pour résoudre ce problème

I Optionnel : Programmation d’un solveur SAT

Exemples de problèmes : N reines, Sudoku, Takuzu...

B. Wack (UGA) Introduction à la logique janvier 2018 3 / 45

Page 4: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Préambule

Planning

Dates importantes

I Vacances hiver : 20-26 février

I Pré-rapport projet : 9 mars

I Partiels : 12-16 mars

I Vacances printemps : 16-22 avril

I Rapport de Projet : 27 avril

I Soutenance de Projet : 30 avril-4 mai

I Examen : 14-25 mai

I Deuxième session : 18-22 juin

B. Wack (UGA) Introduction à la logique janvier 2018 4 / 45

Page 5: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Préambule

Matériel

I Poly (à trous)

I Sujet du projet (en ligne)

B. Wack (UGA) Introduction à la logique janvier 2018 5 / 45

Page 6: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Préambule

Plan

Préambule

Introduction à la Logique

Logique propositionnelle

Syntaxe

Sens des formules (sémantique)

Conclusion

B. Wack (UGA) Introduction à la logique janvier 2018 6 / 45

Page 7: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Introduction à la Logique

Plan

Préambule

Introduction à la Logique

Logique propositionnelle

Syntaxe

Sens des formules (sémantique)

Conclusion

B. Wack (UGA) Introduction à la logique janvier 2018 7 / 45

Page 8: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Introduction à la Logique

Logique

Définitions

I La logique précise ce qu’est un raisonnement correct,indépendemment du domaine d’application.

I Un raisonnement est un moyen d’obtenir une conclusion à partird’hypothèses données.

I Un raisonnement correct ne dit rien sur la vérité des hypothèses,il dit seulement que de la vérité des hypothèses, on peutdéduire la vérité de la conclusion.

B. Wack (UGA) Introduction à la logique janvier 2018 8 / 45

Page 9: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Introduction à la Logique

Logique

Définitions

I La logique précise ce qu’est un raisonnement correct,indépendemment du domaine d’application.

I Un raisonnement est un moyen d’obtenir une conclusion à partird’hypothèses données.

I Un raisonnement correct ne dit rien sur la vérité des hypothèses,il dit seulement que de la vérité des hypothèses, on peutdéduire la vérité de la conclusion.

B. Wack (UGA) Introduction à la logique janvier 2018 8 / 45

Page 10: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Introduction à la Logique

Logique

Définitions

I La logique précise ce qu’est un raisonnement correct,indépendemment du domaine d’application.

I Un raisonnement est un moyen d’obtenir une conclusion à partird’hypothèses données.

I Un raisonnement correct ne dit rien sur la vérité des hypothèses,il dit seulement que de la vérité des hypothèses, on peutdéduire la vérité de la conclusion.

B. Wack (UGA) Introduction à la logique janvier 2018 8 / 45

Page 11: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Introduction à la Logique

Exemples

Exemple I

I Hypothèse I : Tous les hommes sont mortels

I Hypothèse II : Socrate est un homme

I Conclusion : Socrate est mortel

Exemple II

I Hypothèse I : Tout ce qui est rare est cher

I Hypothèse II : Un cheval bon marché est rare

I Conclusion : Un cheval bon marché est cher !

B. Wack (UGA) Introduction à la logique janvier 2018 9 / 45

Page 12: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Introduction à la Logique

Exemples

Exemple I

I Hypothèse I : Tous les hommes sont mortels

I Hypothèse II : Socrate est un homme

I Conclusion : Socrate est mortel

Exemple II

I Hypothèse I : Tout ce qui est rare est cher

I Hypothèse II : Un cheval bon marché est rare

I Conclusion : Un cheval bon marché est cher !

B. Wack (UGA) Introduction à la logique janvier 2018 9 / 45

Page 13: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Introduction à la Logique

Ajout d’une hypothèse

Exemple III

I Hypothèse I : Tout ce qui est rare est cher

I Hypothèse II : Un cheval bon marché est rare

I Hypothèse III : Tout ce qui est bon marché n’est pas cher

I Conclusion : Hypothèses contradictoires ! Car :I Hypothèse I + hypothèse II : Un cheval bon marché est cherI Hypothèse III : Un cheval bon marché n’est pas cher

B. Wack (UGA) Introduction à la logique janvier 2018 10 / 45

Page 14: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Introduction à la Logique

Ajout d’une hypothèse

Exemple III

I Hypothèse I : Tout ce qui est rare est cher

I Hypothèse II : Un cheval bon marché est rare

I Hypothèse III : Tout ce qui est bon marché n’est pas cher

I Conclusion : Hypothèses contradictoires ! Car :I Hypothèse I + hypothèse II : Un cheval bon marché est cherI Hypothèse III : Un cheval bon marché n’est pas cher

B. Wack (UGA) Introduction à la logique janvier 2018 10 / 45

Page 15: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Introduction à la Logique

Ajout d’une hypothèse

Exemple III

I Hypothèse I : Tout ce qui est rare est cher

I Hypothèse II : Un cheval bon marché est rare

I Hypothèse III : Tout ce qui est bon marché n’est pas cherI Conclusion : Hypothèses contradictoires ! Car :

I Hypothèse I + hypothèse II : Un cheval bon marché est cherI Hypothèse III : Un cheval bon marché n’est pas cher

B. Wack (UGA) Introduction à la logique janvier 2018 10 / 45

Page 16: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Introduction à la Logique

Petit historique. . .

I George Boole (1815-1864)I logique symbolique : s’éloigne de la langue naturelle

I Gottlob Frege (1848-1925)I calcul propositionnel : formalisation des règles de raisonnementI théorie de la démonstration : démonstration = objet d’étude

I Bertrand Russell (1872-1970)I logicisme : programme de formalisation des mathématiquesI paradoxe dans les premiers systèmes proposés

I Kurt Gödel (1906-1978)I complétude du calcul des prédicats du premier ordreI théorème d’incomplétude des systèmes incluant N

I Alonzo Church (1903-1995)I lambda-calcul : représentation calculatoire des démonstrations

B. Wack (UGA) Introduction à la logique janvier 2018 11 / 45

Page 17: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Introduction à la Logique

Applications

I Hardware (portes logique)I Vérification et correction des programmes :

I prouveurs COQ, PVS, Prover9, MACE, . . .I applications industrielles (Meteor, Airbus...)

I Intelligence artificielle :I système expert (MyCin), ontologie

I Programmation : PrologI intelligence artificielleI traitement de la langue

I Preuves mathématiques, Sécurité, . . .

B. Wack (UGA) Introduction à la logique janvier 2018 12 / 45

Page 18: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Introduction à la Logique

Objectifs du cours

I Modéliser et formaliser un problème décrit en langage naturel.

I Comprendre un raisonnement présenté sous forme symbolique,en particulier être capable de déterminer s’il est correct.

I Démontrer, c’est-à-dire construire un raisonnement correctutilisant les règles et/ou les algorithmes de la logiquepropositionnelle et du premier ordre.

I Écrire une preuve rigoureuse, en particulier par récurrence.

B. Wack (UGA) Introduction à la logique janvier 2018 13 / 45

Page 19: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Introduction à la Logique

Objectifs du cours

I Modéliser et formaliser un problème décrit en langage naturel.

I Comprendre un raisonnement présenté sous forme symbolique,en particulier être capable de déterminer s’il est correct.

I Démontrer, c’est-à-dire construire un raisonnement correctutilisant les règles et/ou les algorithmes de la logiquepropositionnelle et du premier ordre.

I Écrire une preuve rigoureuse, en particulier par récurrence.

B. Wack (UGA) Introduction à la logique janvier 2018 13 / 45

Page 20: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Introduction à la Logique

Objectifs du cours

I Modéliser et formaliser un problème décrit en langage naturel.

I Comprendre un raisonnement présenté sous forme symbolique,en particulier être capable de déterminer s’il est correct.

I Démontrer, c’est-à-dire construire un raisonnement correctutilisant les règles et/ou les algorithmes de la logiquepropositionnelle et du premier ordre.

I Écrire une preuve rigoureuse, en particulier par récurrence.

B. Wack (UGA) Introduction à la logique janvier 2018 13 / 45

Page 21: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Introduction à la Logique

Objectifs du cours

I Modéliser et formaliser un problème décrit en langage naturel.

I Comprendre un raisonnement présenté sous forme symbolique,en particulier être capable de déterminer s’il est correct.

I Démontrer, c’est-à-dire construire un raisonnement correctutilisant les règles et/ou les algorithmes de la logiquepropositionnelle et du premier ordre.

I Écrire une preuve rigoureuse, en particulier par récurrence.

B. Wack (UGA) Introduction à la logique janvier 2018 13 / 45

Page 22: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Introduction à la Logique

Plan du Semestre

AUJOURD’HUI

I Logique propositionnelle

I Résolution propositionnelle

I Déduction naturelle propositionnelle

PARTIEL

I Logique du premier ordre

I Base de la démonstration automatique(« résolution au premier ordre »)

I Déduction naturelle au premier ordre

EXAMEN

B. Wack (UGA) Introduction à la logique janvier 2018 14 / 45

Page 23: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Logique propositionnelle

Plan

Préambule

Introduction à la Logique

Logique propositionnelle

Syntaxe

Sens des formules (sémantique)

Conclusion

B. Wack (UGA) Introduction à la logique janvier 2018 15 / 45

Page 24: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Logique propositionnelle

Logique propositionnelle

Définition

La logique propositionnelle est la logique sans quantificateurs.Seules opérations logiques considérées :

I ¬ (négation)

I ∧ (conjonction “et”)

I ∨ (disjonction “ou”)

I ⇒ (implication)

I ⇔ (équivalence)

B. Wack (UGA) Introduction à la logique janvier 2018 16 / 45

Page 25: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Logique propositionnelle

Exemple : Raisonnement formel

Hypothèses :I (H1) : Si Pierre est grand, alors Jean n’est pas le fils de PierreI (H2) : Si Pierre n’est pas grand, alors Jean est le fils de PierreI (H3) : Si Jean est le fils de Pierre alors Marie est la soeur de Jean

Conclusion (C) : Marie est la soeur de Jean ou Pierre est grand.

I p : "Pierre est grand"

I j : "Jean est le fils de Pierre"

I m : "Marie est la soeur de Jean"

I (H1) : p⇒¬j

I (H2) : ¬p⇒ j

I (H3) : j⇒m

I (C) : m∨pIl s’agira de montrer que H1∧H2∧H3⇒ C :

(p⇒¬j)∧ (¬p⇒ j)∧ (j⇒m)⇒m∨p

est vraie quelque soit la valeur de vérité des propositions p, j,m.

B. Wack (UGA) Introduction à la logique janvier 2018 17 / 45

Page 26: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Logique propositionnelle

Exemple : Raisonnement formel

Hypothèses :I (H1) : Si Pierre est grand, alors Jean n’est pas le fils de PierreI (H2) : Si Pierre n’est pas grand, alors Jean est le fils de PierreI (H3) : Si Jean est le fils de Pierre alors Marie est la soeur de Jean

Conclusion (C) : Marie est la soeur de Jean ou Pierre est grand.

I p : "Pierre est grand"

I j : "Jean est le fils de Pierre"

I m : "Marie est la soeur de Jean"

I (H1) : p⇒¬j

I (H2) : ¬p⇒ j

I (H3) : j⇒m

I (C) : m∨pIl s’agira de montrer que H1∧H2∧H3⇒ C :

(p⇒¬j)∧ (¬p⇒ j)∧ (j⇒m)⇒m∨p

est vraie quelque soit la valeur de vérité des propositions p, j,m.

B. Wack (UGA) Introduction à la logique janvier 2018 17 / 45

Page 27: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Logique propositionnelle

Exemple : Raisonnement formel

Hypothèses :I (H1) : Si Pierre est grand, alors Jean n’est pas le fils de PierreI (H2) : Si Pierre n’est pas grand, alors Jean est le fils de PierreI (H3) : Si Jean est le fils de Pierre alors Marie est la soeur de Jean

Conclusion (C) : Marie est la soeur de Jean ou Pierre est grand.

I p : "Pierre est grand"

I j : "Jean est le fils de Pierre"

I m : "Marie est la soeur de Jean"

I (H1) : p⇒¬j

I (H2) : ¬p⇒ j

I (H3) : j⇒m

I (C) : m∨p

Il s’agira de montrer que H1∧H2∧H3⇒ C :

(p⇒¬j)∧ (¬p⇒ j)∧ (j⇒m)⇒m∨p

est vraie quelque soit la valeur de vérité des propositions p, j,m.

B. Wack (UGA) Introduction à la logique janvier 2018 17 / 45

Page 28: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Logique propositionnelle

Exemple : Raisonnement formel

Hypothèses :I (H1) : Si Pierre est grand, alors Jean n’est pas le fils de PierreI (H2) : Si Pierre n’est pas grand, alors Jean est le fils de PierreI (H3) : Si Jean est le fils de Pierre alors Marie est la soeur de Jean

Conclusion (C) : Marie est la soeur de Jean ou Pierre est grand.

I p : "Pierre est grand"

I j : "Jean est le fils de Pierre"

I m : "Marie est la soeur de Jean"

I (H1) : p⇒¬j

I (H2) : ¬p⇒ j

I (H3) : j⇒m

I (C) : m∨pIl s’agira de montrer que H1∧H2∧H3⇒ C :

(p⇒¬j)∧ (¬p⇒ j)∧ (j⇒m)⇒m∨p

est vraie quelque soit la valeur de vérité des propositions p, j,m.B. Wack (UGA) Introduction à la logique janvier 2018 17 / 45

Page 29: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Plan

Préambule

Introduction à la Logique

Logique propositionnelle

Syntaxe

Sens des formules (sémantique)

Conclusion

B. Wack (UGA) Introduction à la logique janvier 2018 18 / 45

Page 30: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Vocabulaire du langage

I Les constantes : > (vrai) et ⊥ (faux)

I Les variables : par exemple x , y1

I Les parenthèses

I Les connecteurs : ¬,∨,∧,⇒,⇔

B. Wack (UGA) Introduction à la logique janvier 2018 19 / 45

Page 31: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Formule (stricte)

Définition 1.1.1

Une formule stricte est définie de manière inductive par :

I > et ⊥ sont des formules strictes.

I Une variable est une formule stricte.

I Si A est une formule stricte alors ¬A est une formule stricte.

I Si A et B sont des formules strictes et si ◦ est une des opérations∨,∧,⇒,⇔ alors (A◦B) est une formule stricte.

Exemple 1.1.2

(a∨ (¬b∧ c)) est une formule stricte, mais pas a∨ (¬b∧ c), ni(a∨ (¬(b)∧ c)).

B. Wack (UGA) Introduction à la logique janvier 2018 20 / 45

Page 32: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Formule (stricte)

Définition 1.1.1

Une formule stricte est définie de manière inductive par :

I > et ⊥ sont des formules strictes.

I Une variable est une formule stricte.

I Si A est une formule stricte alors ¬A est une formule stricte.

I Si A et B sont des formules strictes et si ◦ est une des opérations∨,∧,⇒,⇔ alors (A◦B) est une formule stricte.

Exemple 1.1.2

(a∨ (¬b∧ c)) est une formule stricte, mais pas a∨ (¬b∧ c), ni(a∨ (¬(b)∧ c)).

B. Wack (UGA) Introduction à la logique janvier 2018 20 / 45

Page 33: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Arbre

Exemple 1.1.3

La structure de la formule (a∨ (¬b∧ c)) est mise en évidence parl’arbre suivant :

a ∧

¬ c

b

B. Wack (UGA) Introduction à la logique janvier 2018 21 / 45

Page 34: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Arbre

Exemple 1.1.3

La structure de la formule (a∨ (¬b∧ c)) est mise en évidence parl’arbre suivant :

~~ !!

a ∧

¬ c

b

B. Wack (UGA) Introduction à la logique janvier 2018 21 / 45

Page 35: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Arbre

Exemple 1.1.3

La structure de la formule (a∨ (¬b∧ c)) est mise en évidence parl’arbre suivant :

~~ !!a

¬ c

b

B. Wack (UGA) Introduction à la logique janvier 2018 21 / 45

Page 36: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Arbre

Exemple 1.1.3

La structure de la formule (a∨ (¬b∧ c)) est mise en évidence parl’arbre suivant :

~~ !!a ∧

}}

¬ c

b

B. Wack (UGA) Introduction à la logique janvier 2018 21 / 45

Page 37: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Arbre

Exemple 1.1.3

La structure de la formule (a∨ (¬b∧ c)) est mise en évidence parl’arbre suivant :

~~ !!a ∧

}} ¬

��

c

b

B. Wack (UGA) Introduction à la logique janvier 2018 21 / 45

Page 38: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Exercice

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

~~ ∧

�� ��

¬

��p ¬

��

r

�� ��p q

B. Wack (UGA) Introduction à la logique janvier 2018 22 / 45

Page 39: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Exercice

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

~~ ∧

�� ��

¬

��p ¬

��

r

�� ��p q

B. Wack (UGA) Introduction à la logique janvier 2018 22 / 45

Page 40: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Taille d’une formule

Définition 1.1.10

La taille d’une formule A, notée |A|, est définie inductivement par :I |>|= 0 et |⊥|= 0.

I Si A est une variable alors |A|= 0.

I |¬A|= 1+ |A|.I |(A◦B)|= |A|+ |B|+1.

Exemple 1.1.11

|(a∨ (¬b∧ c))| =3.

B. Wack (UGA) Introduction à la logique janvier 2018 23 / 45

Page 41: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Taille d’une formule

Définition 1.1.10

La taille d’une formule A, notée |A|, est définie inductivement par :I |>|= 0 et |⊥|= 0.

I Si A est une variable alors |A|= 0.

I |¬A|= 1+ |A|.I |(A◦B)|= |A|+ |B|+1.

Exemple 1.1.11

|(a∨ (¬b∧ c))| =

3.

B. Wack (UGA) Introduction à la logique janvier 2018 23 / 45

Page 42: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Taille d’une formule

Définition 1.1.10

La taille d’une formule A, notée |A|, est définie inductivement par :I |>|= 0 et |⊥|= 0.

I Si A est une variable alors |A|= 0.

I |¬A|= 1+ |A|.I |(A◦B)|= |A|+ |B|+1.

Exemple 1.1.11

|(a∨ (¬b∧ c))| =3.

B. Wack (UGA) Introduction à la logique janvier 2018 23 / 45

Page 43: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Premier résultat

Les formules strictes se décomposent de manière unique en leurssous-formules.

Théorème 1.1.13Toute formule A s’écrit sous une et une seule de ces formes :

I une variable,

I une constante,

I ¬B où B est une formule,

I (B ◦C) où B et C sont des formules et ◦ un connecteur binaire.

Ce qui autorise :

I la démonstration par cas

I la récurrence sur la structure des formules et non sur leur taille.

B. Wack (UGA) Introduction à la logique janvier 2018 24 / 45

Page 44: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Formule à priorité

Définition 1.1.14

Idem mais :

I si A et B sont des formules à priorité alors A◦B est une formule àpriorité,

I si A est une formule à priorité alors (A) est une formule à priorité.

Exemple 1.1.15

a∨¬b∧ c est une formule à priorité mais pas une formule (stricte).

B. Wack (UGA) Introduction à la logique janvier 2018 25 / 45

Page 45: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Règles de priorité

Définition 1.1.16

Par ordre de priorités décroissantes : ¬, ∧, ∨,⇒ et⇔.

Associativité à gauche

Pour deux connecteurs identiques A◦B ◦C = (A◦B)◦Csauf pour l’implication : A⇒ B⇒ C = A⇒ (B⇒ C)

B. Wack (UGA) Introduction à la logique janvier 2018 26 / 45

Page 46: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Exemples de formules à priorité

Exemple 1.1.17

I a∧b∧ c est l’abréviation de

((a∧b)∧ c)

I a∧b∨ c est l’abréviation de

((a∧b)∨ c)

I a∨b∧ c est l’abréviation de

(a∨ (b∧ c))

B. Wack (UGA) Introduction à la logique janvier 2018 27 / 45

Page 47: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Exemples de formules à priorité

Exemple 1.1.17

I a∧b∧ c est l’abréviation de

((a∧b)∧ c)

I a∧b∨ c est l’abréviation de

((a∧b)∨ c)

I a∨b∧ c est l’abréviation de

(a∨ (b∧ c))

B. Wack (UGA) Introduction à la logique janvier 2018 27 / 45

Page 48: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Exemples de formules à priorité

Exemple 1.1.17

I a∧b∧ c est l’abréviation de

((a∧b)∧ c)

I a∧b∨ c est l’abréviation de

((a∧b)∨ c)

I a∨b∧ c est l’abréviation de

(a∨ (b∧ c))

B. Wack (UGA) Introduction à la logique janvier 2018 27 / 45

Page 49: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Syntaxe

Exemples de formules à priorité

Exemple 1.1.17

I a∧b∧ c est l’abréviation de

((a∧b)∧ c)

I a∧b∨ c est l’abréviation de

((a∧b)∨ c)

I a∨b∧ c est l’abréviation de

(a∨ (b∧ c))

B. Wack (UGA) Introduction à la logique janvier 2018 27 / 45

Page 50: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Plan

Préambule

Introduction à la Logique

Logique propositionnelle

Syntaxe

Sens des formules (sémantique)

Conclusion

B. Wack (UGA) Introduction à la logique janvier 2018 28 / 45

Page 51: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Assignation d’une formule

Définition 1.2.1

Une assignation est une fonction qui,à chaque variable d’une formule, associe une valeur dans {0,1}.

[A]v dénote la valeur de la formule A dans l’assignation v .

Exemple : Soit v une assignation telle que v(x) = 0 et v(y) = 1.Appliquer v à x ∨ y s’écrit [x ∨ y ]v[x ∨ y ]v = 0∨1 = 1Conclusion : x ∨ y est vrai pour l’assignation v

B. Wack (UGA) Introduction à la logique janvier 2018 29 / 45

Page 52: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Assignation d’une formule

Définition 1.2.1

Une assignation est une fonction qui,à chaque variable d’une formule, associe une valeur dans {0,1}.

[A]v dénote la valeur de la formule A dans l’assignation v .

Exemple : Soit v une assignation telle que v(x) = 0 et v(y) = 1.Appliquer v à x ∨ y s’écrit

[x ∨ y ]v[x ∨ y ]v = 0∨1 = 1Conclusion : x ∨ y est vrai pour l’assignation v

B. Wack (UGA) Introduction à la logique janvier 2018 29 / 45

Page 53: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Assignation d’une formule

Définition 1.2.1

Une assignation est une fonction qui,à chaque variable d’une formule, associe une valeur dans {0,1}.

[A]v dénote la valeur de la formule A dans l’assignation v .

Exemple : Soit v une assignation telle que v(x) = 0 et v(y) = 1.Appliquer v à x ∨ y s’écrit [x ∨ y ]v[x ∨ y ]v =

0∨1 = 1Conclusion : x ∨ y est vrai pour l’assignation v

B. Wack (UGA) Introduction à la logique janvier 2018 29 / 45

Page 54: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Assignation d’une formule

Définition 1.2.1

Une assignation est une fonction qui,à chaque variable d’une formule, associe une valeur dans {0,1}.

[A]v dénote la valeur de la formule A dans l’assignation v .

Exemple : Soit v une assignation telle que v(x) = 0 et v(y) = 1.Appliquer v à x ∨ y s’écrit [x ∨ y ]v[x ∨ y ]v = 0∨1 = 1Conclusion :

x ∨ y est vrai pour l’assignation v

B. Wack (UGA) Introduction à la logique janvier 2018 29 / 45

Page 55: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Assignation d’une formule

Définition 1.2.1

Une assignation est une fonction qui,à chaque variable d’une formule, associe une valeur dans {0,1}.

[A]v dénote la valeur de la formule A dans l’assignation v .

Exemple : Soit v une assignation telle que v(x) = 0 et v(y) = 1.Appliquer v à x ∨ y s’écrit [x ∨ y ]v[x ∨ y ]v = 0∨1 = 1Conclusion : x ∨ y est vrai pour l’assignation v

B. Wack (UGA) Introduction à la logique janvier 2018 29 / 45

Page 56: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Valeur d’une formule

Définition 1.2.2

Soient A, B des formules, x une variable et v une assignation.I [x]v =

v(x)

I [>]v =

1

, [⊥]v =

0

I [¬A]v =

1− [A]v

I [(A∨B)]v =

max{[A]v , [B]v}

I [(A∧B)]v =

min{[A]v , [B]v}

I [(A⇒ B)]v =

si [A]v = 0 alors 1 sinon [B]v

I [(A⇔ B)]v =

si [A]v = [B]v alors 1 sinon 0

B. Wack (UGA) Introduction à la logique janvier 2018 30 / 45

Page 57: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Valeur d’une formule

Définition 1.2.2

Soient A, B des formules, x une variable et v une assignation.

I [x]v = v(x)

I [>]v =

1

, [⊥]v =

0

I [¬A]v =

1− [A]v

I [(A∨B)]v =

max{[A]v , [B]v}

I [(A∧B)]v =

min{[A]v , [B]v}

I [(A⇒ B)]v =

si [A]v = 0 alors 1 sinon [B]v

I [(A⇔ B)]v =

si [A]v = [B]v alors 1 sinon 0

B. Wack (UGA) Introduction à la logique janvier 2018 30 / 45

Page 58: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Valeur d’une formule

Définition 1.2.2

Soient A, B des formules, x une variable et v une assignation.

I [x]v = v(x)

I [>]v = 1, [⊥]v =

0

I [¬A]v =

1− [A]v

I [(A∨B)]v =

max{[A]v , [B]v}

I [(A∧B)]v =

min{[A]v , [B]v}

I [(A⇒ B)]v =

si [A]v = 0 alors 1 sinon [B]v

I [(A⇔ B)]v =

si [A]v = [B]v alors 1 sinon 0

B. Wack (UGA) Introduction à la logique janvier 2018 30 / 45

Page 59: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Valeur d’une formule

Définition 1.2.2

Soient A, B des formules, x une variable et v une assignation.

I [x]v = v(x)

I [>]v = 1, [⊥]v = 0

I [¬A]v =

1− [A]v

I [(A∨B)]v =

max{[A]v , [B]v}

I [(A∧B)]v =

min{[A]v , [B]v}

I [(A⇒ B)]v =

si [A]v = 0 alors 1 sinon [B]v

I [(A⇔ B)]v =

si [A]v = [B]v alors 1 sinon 0

B. Wack (UGA) Introduction à la logique janvier 2018 30 / 45

Page 60: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Valeur d’une formule

Définition 1.2.2

Soient A, B des formules, x une variable et v une assignation.

I [x]v = v(x)

I [>]v = 1, [⊥]v = 0

I [¬A]v = 1− [A]vI [(A∨B)]v =

max{[A]v , [B]v}

I [(A∧B)]v =

min{[A]v , [B]v}

I [(A⇒ B)]v =

si [A]v = 0 alors 1 sinon [B]v

I [(A⇔ B)]v =

si [A]v = [B]v alors 1 sinon 0

B. Wack (UGA) Introduction à la logique janvier 2018 30 / 45

Page 61: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Valeur d’une formule

Définition 1.2.2

Soient A, B des formules, x une variable et v une assignation.

I [x]v = v(x)

I [>]v = 1, [⊥]v = 0

I [¬A]v = 1− [A]vI [(A∨B)]v = max{[A]v , [B]v}I [(A∧B)]v =

min{[A]v , [B]v}

I [(A⇒ B)]v =

si [A]v = 0 alors 1 sinon [B]v

I [(A⇔ B)]v =

si [A]v = [B]v alors 1 sinon 0

B. Wack (UGA) Introduction à la logique janvier 2018 30 / 45

Page 62: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Valeur d’une formule

Définition 1.2.2

Soient A, B des formules, x une variable et v une assignation.

I [x]v = v(x)

I [>]v = 1, [⊥]v = 0

I [¬A]v = 1− [A]vI [(A∨B)]v = max{[A]v , [B]v}I [(A∧B)]v = min{[A]v , [B]v}I [(A⇒ B)]v =

si [A]v = 0 alors 1 sinon [B]v

I [(A⇔ B)]v =

si [A]v = [B]v alors 1 sinon 0

B. Wack (UGA) Introduction à la logique janvier 2018 30 / 45

Page 63: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Valeur d’une formule

Définition 1.2.2

Soient A, B des formules, x une variable et v une assignation.

I [x]v = v(x)

I [>]v = 1, [⊥]v = 0

I [¬A]v = 1− [A]vI [(A∨B)]v = max{[A]v , [B]v}I [(A∧B)]v = min{[A]v , [B]v}I [(A⇒ B)]v = si [A]v = 0 alors 1 sinon [B]vI [(A⇔ B)]v =

si [A]v = [B]v alors 1 sinon 0

B. Wack (UGA) Introduction à la logique janvier 2018 30 / 45

Page 64: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Valeur d’une formule

Définition 1.2.2

Soient A, B des formules, x une variable et v une assignation.

I [x]v = v(x)

I [>]v = 1, [⊥]v = 0

I [¬A]v = 1− [A]vI [(A∨B)]v = max{[A]v , [B]v}I [(A∧B)]v = min{[A]v , [B]v}I [(A⇒ B)]v = si [A]v = 0 alors 1 sinon [B]vI [(A⇔ B)]v = si [A]v = [B]v alors 1 sinon 0

B. Wack (UGA) Introduction à la logique janvier 2018 30 / 45

Page 65: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Table de vérité

Définition 1.2.3

Une table de vérité donne la valeur d’une formule pour chaque choixde valeurs des variables de A.

I une ligne de la table de vérité = une assignation

I une colonne = toutes les valeurs d’une formule.

B. Wack (UGA) Introduction à la logique janvier 2018 31 / 45

Page 66: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Tables de base

On associe à chaque formule une valeur : 0 (faux) ou 1 (vrai).La constante > vaut 1 et la constante ⊥ vaut 0.

Table 1.1 (table de vérité des connecteurs)

x y ¬x x ∨ y x ∧ y x ⇒ y x ⇔ y0 0 1 0 0 1 10 1 1 1 0 1 01 0 0 1 0 0 01 1 0 1 1 1 1

B. Wack (UGA) Introduction à la logique janvier 2018 32 / 45

Page 67: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Exemple :

Exemple 1.2.4

Donner la table de vérité des formules suivantes.

x y x ⇒ y ¬x ¬x ∨ y (x ⇒ y)⇔ (¬x ∨ y) x ∨¬y0 0

1 1 1 1 1

0 1

1 1 1 1 0

1 0

0 0 0 1 1

1 1

1 0 1 1 1

B. Wack (UGA) Introduction à la logique janvier 2018 33 / 45

Page 68: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Exemple :

Exemple 1.2.4

Donner la table de vérité des formules suivantes.

x y x ⇒ y ¬x ¬x ∨ y (x ⇒ y)⇔ (¬x ∨ y) x ∨¬y0 0 1 1

1 1 1

0 1 1 1

1 1 0

1 0 0 0

0 1 1

1 1 1 0

1 1 1

B. Wack (UGA) Introduction à la logique janvier 2018 33 / 45

Page 69: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Exemple :

Exemple 1.2.4

Donner la table de vérité des formules suivantes.

x y x ⇒ y ¬x ¬x ∨ y (x ⇒ y)⇔ (¬x ∨ y) x ∨¬y0 0 1 1 1

1 1

0 1 1 1 1

1 0

1 0 0 0 0

1 1

1 1 1 0 1

1 1

B. Wack (UGA) Introduction à la logique janvier 2018 33 / 45

Page 70: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Exemple :

Exemple 1.2.4

Donner la table de vérité des formules suivantes.

x y x ⇒ y ¬x ¬x ∨ y (x ⇒ y)⇔ (¬x ∨ y) x ∨¬y0 0 1 1 1 1

1

0 1 1 1 1 1

0

1 0 0 0 0 1

1

1 1 1 0 1 1

1

B. Wack (UGA) Introduction à la logique janvier 2018 33 / 45

Page 71: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Exemple :

Exemple 1.2.4

Donner la table de vérité des formules suivantes.

x y x ⇒ y ¬x ¬x ∨ y (x ⇒ y)⇔ (¬x ∨ y) x ∨¬y0 0 1 1 1 1 10 1 1 1 1 1 01 0 0 0 0 1 11 1 1 0 1 1 1

B. Wack (UGA) Introduction à la logique janvier 2018 33 / 45

Page 72: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Formules équivalentes

Définition 1.2.5

Deux formules A et B sont équivalentes (noté A≡ B ou simplementA = B) si elles ont la même valeur pour toute assignation.

Exemple 1.2.6

x ⇒ y ≡ ¬x ∨ y

Remarque :Le connecteur logique⇔ ne signifie pas A≡ B.

B. Wack (UGA) Introduction à la logique janvier 2018 34 / 45

Page 73: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Formules équivalentes

Définition 1.2.5

Deux formules A et B sont équivalentes (noté A≡ B ou simplementA = B) si elles ont la même valeur pour toute assignation.

Exemple 1.2.6

x ⇒ y ≡ ¬x ∨ y

Remarque :Le connecteur logique⇔ ne signifie pas A≡ B.

B. Wack (UGA) Introduction à la logique janvier 2018 34 / 45

Page 74: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Formules équivalentes

Définition 1.2.5

Deux formules A et B sont équivalentes (noté A≡ B ou simplementA = B) si elles ont la même valeur pour toute assignation.

Exemple 1.2.6

x ⇒ y ≡ ¬x ∨ y

Remarque :Le connecteur logique⇔ ne signifie pas A≡ B.

B. Wack (UGA) Introduction à la logique janvier 2018 34 / 45

Page 75: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Valide, tautologie (1/2)

Définition 1.2.8

I Une formule est valide si elle a la valeur 1 pour toute assignation.

I Aussi appelée une tautologie.

I Noté |= A.

Exemple 1.2.9

I (x ⇒ y)⇔ (¬x ∨ y) est valide ;

I x ⇒ y n’est pas valide car

elle est fausse pour x = 1 et y = 0.

B. Wack (UGA) Introduction à la logique janvier 2018 35 / 45

Page 76: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Valide, tautologie (1/2)

Définition 1.2.8

I Une formule est valide si elle a la valeur 1 pour toute assignation.

I Aussi appelée une tautologie.

I Noté |= A.

Exemple 1.2.9

I (x ⇒ y)⇔ (¬x ∨ y) est valide ;

I x ⇒ y n’est pas valide car

elle est fausse pour x = 1 et y = 0.

B. Wack (UGA) Introduction à la logique janvier 2018 35 / 45

Page 77: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Valide, tautologie (2/2)

Propriété 1.2.10

Les formules A et B sont équivalentes (A≡ B)si et seulement sila formule A⇔ B est valide.

Cf table de vérité de⇔.

B. Wack (UGA) Introduction à la logique janvier 2018 36 / 45

Page 78: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Modèle d’une formule

Définition 1.2.11

Une assignation v qui donne la valeur 1 à une formule est un modèlede cette formule.

On dit aussi que v satisfait A ou v rend A vraie.

Exemple 1.2.12

Un modèle de x ⇒ y est :

x = 1,y = 1 (il y en a d’autres).

Par contre x = 1,y = 0 n’est pas un modèle de x ⇒ y .

B. Wack (UGA) Introduction à la logique janvier 2018 37 / 45

Page 79: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Modèle d’une formule

Définition 1.2.11

Une assignation v qui donne la valeur 1 à une formule est un modèlede cette formule.

On dit aussi que v satisfait A ou v rend A vraie.

Exemple 1.2.12

Un modèle de x ⇒ y est :

x = 1,y = 1 (il y en a d’autres).

Par contre x = 1,y = 0 n’est pas un modèle de x ⇒ y .

B. Wack (UGA) Introduction à la logique janvier 2018 37 / 45

Page 80: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Modèle d’une formule

Définition 1.2.11

Une assignation v qui donne la valeur 1 à une formule est un modèlede cette formule.

On dit aussi que v satisfait A ou v rend A vraie.

Exemple 1.2.12

Un modèle de x ⇒ y est :

x = 1,y = 1 (il y en a d’autres).

Par contre x = 1,y = 0 n’est pas un modèle de x ⇒ y .

B. Wack (UGA) Introduction à la logique janvier 2018 37 / 45

Page 81: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Modèle d’un ensemble de formules

Définition 1.2.13

v est un modèle de l’ensemble {A1, . . . ,An}si et seulement sielle est un modèle de chacune de ces formules.

Exemple 1.2.14

Un modèle de {a⇒ b,b⇒ c} est :

a = 0,b = 0 (et c quelconque).

B. Wack (UGA) Introduction à la logique janvier 2018 38 / 45

Page 82: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Modèle d’un ensemble de formules

Définition 1.2.13

v est un modèle de l’ensemble {A1, . . . ,An}si et seulement sielle est un modèle de chacune de ces formules.

Exemple 1.2.14

Un modèle de {a⇒ b,b⇒ c} est :

a = 0,b = 0 (et c quelconque).

B. Wack (UGA) Introduction à la logique janvier 2018 38 / 45

Page 83: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Modèle d’un ensemble de formules

Définition 1.2.13

v est un modèle de l’ensemble {A1, . . . ,An}si et seulement sielle est un modèle de chacune de ces formules.

Exemple 1.2.14

Un modèle de {a⇒ b,b⇒ c} est :

a = 0,b = 0 (et c quelconque).

B. Wack (UGA) Introduction à la logique janvier 2018 38 / 45

Page 84: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Propriété d’un modèle d’un ensemble de formules

Propriété 1.2.15

v est un modèle de {A1, . . . ,An}si et seulement siv est un modèle de A1∧ . . .∧An.

Exemple 1.2.16

L’ensemble de formules {a⇒ b,b⇒ c}et la formule (a⇒ b)∧ (b⇒ c)ont les mêmes modèles.

B. Wack (UGA) Introduction à la logique janvier 2018 39 / 45

Page 85: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Propriété d’un modèle d’un ensemble de formules

Propriété 1.2.15

v est un modèle de {A1, . . . ,An}si et seulement siv est un modèle de A1∧ . . .∧An.

Exemple 1.2.16

L’ensemble de formules {a⇒ b,b⇒ c}et la formule (a⇒ b)∧ (b⇒ c)ont les mêmes modèles.

B. Wack (UGA) Introduction à la logique janvier 2018 39 / 45

Page 86: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Contre-modèle

Définition 1.2.17

Une assignation v qui donne la valeur 0 à A est un contre-modèle de A.

On dit que v ne satisfait pas A ou que v rend la formule fausse.

Exemple 1.2.18

Un contre-modèle de x ⇒ y est :

x = 1,y = 0.

B. Wack (UGA) Introduction à la logique janvier 2018 40 / 45

Page 87: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Contre-modèle

Définition 1.2.17

Une assignation v qui donne la valeur 0 à A est un contre-modèle de A.

On dit que v ne satisfait pas A ou que v rend la formule fausse.

Exemple 1.2.18

Un contre-modèle de x ⇒ y est :

x = 1,y = 0.

B. Wack (UGA) Introduction à la logique janvier 2018 40 / 45

Page 88: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Contre-modèle

Définition 1.2.17

Une assignation v qui donne la valeur 0 à A est un contre-modèle de A.

On dit que v ne satisfait pas A ou que v rend la formule fausse.

Exemple 1.2.18

Un contre-modèle de x ⇒ y est :

x = 1,y = 0.

B. Wack (UGA) Introduction à la logique janvier 2018 40 / 45

Page 89: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Formule satisfaisable

Définition 1.2.20

Un (ensemble de) formule(s) est satisfaisable s’il admet un modèle.

Définition 1.2.21

Un (ensemble de) formule(s) est insatisfaisable s’il n’est pas satisfaisable.

Exemple 1.2.22

x ∧¬x est insatisfaisable, mais x ⇒ y est satisfaisable.

Attentioninsatisfaisable = 0 modèle satisfaisable = 1 modèle ou plusinvalide = 1 contre-modèle ou plus valide = 0 contre-modèle

B. Wack (UGA) Introduction à la logique janvier 2018 41 / 45

Page 90: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Formule satisfaisable

Définition 1.2.20

Un (ensemble de) formule(s) est satisfaisable s’il admet un modèle.

Définition 1.2.21

Un (ensemble de) formule(s) est insatisfaisable s’il n’est pas satisfaisable.

Exemple 1.2.22

x ∧¬x est insatisfaisable, mais x ⇒ y est satisfaisable.

Attentioninsatisfaisable = 0 modèle satisfaisable = 1 modèle ou plusinvalide = 1 contre-modèle ou plus valide = 0 contre-modèle

B. Wack (UGA) Introduction à la logique janvier 2018 41 / 45

Page 91: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Sens des formules (sémantique)

Formule satisfaisable

Définition 1.2.20

Un (ensemble de) formule(s) est satisfaisable s’il admet un modèle.

Définition 1.2.21

Un (ensemble de) formule(s) est insatisfaisable s’il n’est pas satisfaisable.

Exemple 1.2.22

x ∧¬x est insatisfaisable, mais x ⇒ y est satisfaisable.

Attentioninsatisfaisable = 0 modèle satisfaisable = 1 modèle ou plusinvalide = 1 contre-modèle ou plus valide = 0 contre-modèle

B. Wack (UGA) Introduction à la logique janvier 2018 41 / 45

Page 92: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Conclusion

Plan

Préambule

Introduction à la Logique

Logique propositionnelle

Syntaxe

Sens des formules (sémantique)

Conclusion

B. Wack (UGA) Introduction à la logique janvier 2018 42 / 45

Page 93: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Conclusion

Aujourd’hui

I Pourquoi définir et utiliser la logique formelle ?I Formules de logique propositionnelle :

I 1 variable = 1 proposition (une information) vraie ou fausseI 5 connecteurs pour articuler ces propositions

I Sens des formules :I assignation = choix d’une valeur de vérité pour chaque variableI une formule peut être vraie pour 0, 1, plusieurs ou toutes les

assignations

B. Wack (UGA) Introduction à la logique janvier 2018 43 / 45

Page 94: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Conclusion

La prochaine fois

Exercice : étudier “Pierre, Jean et Marie” à l’aide des tables de vérité.

I Équivalences remarquables

I Substitutions et remplacements

I Formes normales

B. Wack (UGA) Introduction à la logique janvier 2018 44 / 45

Page 95: Introduction à la logique - wackb.gricad-pages.univ ... · I complétude du calcul des prédicats du premier ordre ... I Programmation: ... les règles et/ou les algorithmes de la

Introduction à la logique

Conclusion

Devise d’Oxford

The more I study, the more I knowThe more I know, the more I forgetThe more I forget, the less I know

B. Wack (UGA) Introduction à la logique janvier 2018 45 / 45