Nadia KABACHI Matre de Confrences UFR dInformatique Nadia
Nadia KABACHI Maître de Conférences UFR d’Informatique Nadia. Kabachi@univ-lyon 1. fr LOGIQUE ET PROGRAMMATION LOGIQUE 1
PLAN LE COURS DE LOGIQUE EST BASE SUR LE COURS DE NARENDRA JUSSIEN § INTRODUCTION § LOGIQUE DES PROPOSITIONS § LOGIQUE DU PREMIER ORDRE § PROLOG 2
Définition 3
Historique 4
Logique des propositions Notion de proposition 5
Logique des propositions Notion de valeur de vérité 6
Logique des propositions Étude du calcul propositionnel Quatre étapes § Comment écrire les formules? Aspects syntaxiques § Comment déterminer la valeur de vérité d’une formule ? Aspects sémantiques § Existe-t-il un lien entre logique et mathématique? Aspects algébriques (Mr G. Boole) § Comment démontrer (automatiquement) de nouveaux résultats ? Aspects déductifs 7
Logique des propositions Aspects syntaxiques Les données 8
Logique des propositions Aspects syntaxiques F l’ensemble des formules du calcul propositionnel K 9
Logique des propositions Aspects syntaxiques Règles d’élimination des parenthèses § Supprimer les parenthèses entourant les variables § Tenir compte de la priorité des connecteurs ordre standard : ¬, ∧, ∨, →, ↔ § Considérer qu’un opérateur unaire l’ «emporte» toujours sur un opérateur binaire 10
Logique des propositions Aspects sémantiques Valeurs de vérité 11
Logique des propositions Aspects sémantiques Table de vérités 12
Logique des propositions Aspects sémantiques 13
Calcul propositionnel ? p q 0 0 1 1 0 1 ¬p ¬q p q ¬(p q) (¬ p ¬ q) F 1 1 0 0 1 1 0 1 1 1 1 0 1 0 0 0 1 0 0 1 1 0 1 0 1 14
Logique des propositions Aspects sémantiques Formules particulières § NB : on dit aussi que F est consistante. 15
Logique des propositions Aspects sémantiques Exemple : On considère : (¬p → q) ∧ (q ↔ r) p q r ¬p ¬p → q q ↔ r (¬p → q) ∧ (q ↔ r) 0 0 1 1 0 1 0 1 1 1 0 0 0 1 1 1 1 0 0 0 1 16
Logique des propositions Aspects sémantiques Formules particulières NB : on dit aussi que F est inconsistante, contradictoire, ou encore insatisfiable. 17
Logique des propositions Aspects sémantiques Formules particulières 18
Logique des propositions Aspects syntaxiques § p → q et ¬p ∨ q sont tautologiquement équivalentes. On peut donc écrire : ├ (p → q) ↔ (¬p ∨ q). 19
Logique des propositions Aspects syntaxiques Équivalences tautologiques bien connues 20
Logique des propositions Aspects syntaxiques Équivalences tautologiques bien connues 21
Logique des propositions Aspects syntaxiques Équivalences tautologiques bien connues 22
Logique des propositions Aspects syntaxiques Équivalences tautologiques bien connues 23
Logique des propositions Aspects syntaxiques Formes normales § NB : si dans chaque Hi figurent toutes les variables ou leur négation, on parle de forme canonique 24
Logique des propositions Aspects syntaxiques Forme normale disjonctive A faire pour le TD 25
Logique des propositions Aspects syntaxiques Forme normale conjonctive A retenir : La forme normale conjonctive est aussi appelée 26 forme clausale
Logique des propositions Aspects déductifs Notion de conséquence NB : Une conséquence logique de ∅ est une tautologie 27
Logique des propositions Aspects déductifs Notion de conséquence 28
Logique des propositions Aspects déductifs Systèmes formels 29
Logique des propositions Aspects déductifs Systèmes formels : Démonstrations et théorèmes 30 NB : Différence entre conséquence logique et démonstration
Logique des propositions Aspects déductifs Prise en compte d’hypothèses NB : On dit aussi que J est un modèle de A. 31
Logique des propositions Aspects déductifs Principales règles d’inférences 32
Logique des propositions Aspects déductifs Propriétés d’un système formel : théorèmes § Un système formel est correct ssi si A alors A – tout ce qui est démontrable est vrai § Un système formel est complet ssi si A alors A – tout ce qui est vrai est démontrable 33
Logique des propositions Aspects déductifs Limites du calcul propositionnel 34
Logique des propositions Aspects déductifs Être plus proche du langage naturel § NB : dans un langage du second ordre, on peut aussi quanti fier les 35 relations et les fonctions
Logique du premier ordre Calcul des prédicats § Comment écrire les formules ? – Aspects syntaxiques § Comment déterminer la valeur de vérité d’une formule ? – Aspects sémantiques § Comment démontrer de nouveaux résultats ? Aspects déductifs 36
Calcul des prédicats Logique du premier ordre Une modélisation – Les chandelles sont faites pour éclairer – Quelques chandelles éclairent très mal – Quelques objets qui sont faits pour éclairer le font très mal 37
Calcul des prédicats Logique du premier ordre Alphabet Syntaxe 38
Calcul des prédicats Logique du premier ordre Alphabet Syntaxe 39
Calcul des prédicats Logique du premier ordre Vocabulaire § Les termes – les variables et les constantes sont des termes – f(t 1, …, tn) est un terme si § les ti sont des termes § f est un symbole de fonction d’arité n § Les atomes – R(t 1, …, tn) est un atome si § les ti sont des termes § R est un symbole de relation d’arité n 40
Calcul des prédicats Logique du premier ordre Formules § Un atome est une formule § Si F et G sont des formules et x une variable, alors les expressions suivantes sont des formules – (F ) – (F) (G) et (F) (G) – x (F) et x (G) 41
Calcul des prédicats Logique du premier ordre Formules 42
Calcul des prédicats Logique du premier ordre 43
Calcul des prédicats Logique du premier ordre 44
Calcul des prédicats Logique du premier ordre 45
Calcul des prédicats Logique du premier ordre Occurrence d’une variable § Une occurrence d’une variable x dans une formule F est un endroit où x apparaît dans F sans être immédiatement précédée par ou § Une occurrence libre de x dans F est définie : 46
Calcul des prédicats Logique du premier ordre Occurrence libre 47
Calcul des prédicats Logique du premier ordre Caractéristiques des variables § Une variable est dite libre dans une formule F si elle a au moins une occurrence libre (sinon on dit qu’elle est liée) § Une formule n’ayant pas de variable libre est dite close 48
Calcul des prédicats Logique du premier ordre 49
Logique du premier ordre Suite en TD 50
Logique du premier ordre Notion de substitution 51
Calcul des prédicats Logique du premier ordre Aspects sémantiques § Interprétation § Formules universellement valides § Le théorème de Herbrand § Principe de résolution adapté au calcul des prédicats 52
Calcul des prédicats Logique du premier ordre Vers la notion de modèle 53
Calcul des prédicats Logique du premier ordre Vers la notion de modèle § Soit L le langage du calcul des prédicats – une interprétation de L c’est la donnée de : § un ensemble E non vide appelé ensemble de base § pour chaque symbole de prédicat R d’arité n, d’un sous-ensemble R’ de En § pour chaque symbole de fonction f d’arité n, d’une application f’ de En vers E (y compris pour les constantes) – on peut alors calculer la valeur de tout terme clos (c’est un élément de E) – on peut donc associer une valeur de vérité à tout atome et donc par extension à toute formule close 54
Calcul des prédicats Logique du premier ordre Exemple d’interprétation § § § x y z (P(x, y) Q(y, z) R(x, z)) x y ( (M(x, y) P(x, y) Q(x, y)) M(a, b) P(c, b) P(d, a) P(e, c) § E= § P’ = § a’ = { anne, bernard, …} est le père de anne M’ = est la mère de Q’ = est un parent de R’ = est le grand-père de b’ = bernard c’ = charles d’ = didier e’= éric 55
Calcul des prédicats Logique du premier ordre Modèle NB : on dit aussi que 56
Calcul des prédicats Logique du premier ordre Preuve et démonstration § Comment prouver une formule du calcul des prédicats ? – Prouver qu’elle est vraie § passer en revue toutes les interprétations ! – Prouver qu’elle est fausse § trouver une interprétation qui invalide la formule 57
Calcul des prédicats Logique du premier ordre Toutes les interprétations ? § Une représentation utile des formules – forme clausale § Un théorème qui simplifie la vie – théorème de Herbrand § Principe de résolution pour le calcul des prédicats – vers une automatisation des démonstrations 58
Calcul des prédicats Logique du premier ordre Transformation de formule § Forme normale prénexe – quantificateurs en tête de la formule – formule sous forme normale conjonctive § Forme standard de Skolem – formule sous forme normale prénexe – quantificateurs existentiels précédant quantificateurs universels Toute formule du calcul des prédicats est équivalente à une formule sous forme standard de Skolem 59
Calcul des prédicats Logique du premier ordre Mise sous forme normale prénexe 60
Calcul des prédicats Logique du premier ordre Mise sous forme normale prénexe § Éliminer les connecteurs et § Transporter les devant les atomes – en utilisant ( F F) et les lois de De Morgan § Transporter les quantificateurs en tête de la formule § Ne pas hésiter à renommer les variables pour pouvoir utiliser les propriétés des quantificateurs. 61
Calcul des prédicats Logique du premier ordre Transport des quantificateurs si H ne contient aucune occurrence de x 62
Calcul des prédicats Logique du premier ordre Mise sous forme normale prénexe 63
Calcul des prédicats Logique du premier ordre Mise sous forme normale prénexe En TD 64
Logique du premier ordre Forme de Skolem NB : lorsque les quantificateurs universels précèdent les quantificateurs existentiels, on parle de forme de Herbrand 65
Calcul des prédicats Logique du premier ordre Inversion de et de Skolemisation § Lorsqu’on a § on remplace y par une fonction g qui à x associe y Skolemisation = expliciter l’implicite NB : On dit aussi qu’on « Skolémise » la variable y 66
Logique du premier ordre Forme standard de Skolem 67
Calcul des prédicats Une représentation utile des formules : Forme clausale 68
Calcul des prédicats Une représentation utile des formules : Forme clausale En TD 69
Une représentation utile des formules : Forme clausale 70
Calcul des prédicats Logique du premier ordre Univers de Herbrand NB : si aucune constante n’apparaît dans C, on pose H 0 = {a}. 71
Calcul des prédicats Logique du premier ordre Univers de Herbrand 72
Calcul des prédicats Logique du premier ordre Univers de Herbrand 73
Calcul des prédicats Logique du premier ordre Univers de Herbrand 74
Calcul des prédicats Logique du premier ordre Univers de Herbrand 75
Calcul des prédicats Logique du premier ordre Théorème de Herbrand § Théorème Un ensemble S de clauses est insatisfaisable si et seulement si il existe un ensemble S’ d’instances de base insatisfaisable § Corollaire Un ensemble de clauses est satisfaisable si et seulement si tout ensemble fini d’instances de base est satisfaisable 76
Principales applications du théorème de Herbrand § Preuve qu’une formule est universellement valide → on montre que sa négation est insatisfiable. § Validation de raisonnement → on montre que les prémisses et la négation de la conclusion forment un ensemble de clauses insatisfiable 77
78
79
80
81
82
83
84
85
86
Principe de résolution pour le calcul des prédicats NB : c’est le théorème de Herbrand qui nous permet ces 87 transformations
Vocabulaire 88
Vocabulaire 89
Vocabulaire 90
Principe de résolution 91
Principe de résolution 92
Principe de résolution 93
Principe de résolution 94
Principe de résolution 95
Principe de résolution 96
Principe de résolution 97
Principe de résolution 98
Principe de résolution 99
Principe de résolution 100
Principe de résolution 101
Principe de résolution 102
- Slides: 102