Logique des prédicats

Transcription

Logique des prédicats
Logique des prédicats
Damien Nouvel
Damien Nouvel (Inalco)
Logique des prédicats
1 / 17
Histoire et définitions
Plan
1. Histoire et définitions
2. Manipulation de formules
Damien Nouvel (Inalco)
Logique des prédicats
2 / 17
Histoire et définitions
Propositions vs prédicats
§
Avantages et inconvénients la logique des propositions
+
+
+
-
§
Formalisation logique solide
Possibilité de démonstrations
Monde clos
Pas de fonctions
Pas de catégories
Pas de formules génériques
Exemple
• Jean est père de Jacques et Alain, Alain est père de Tom.
• On sait que le père d’un père s’appelle un grand-père.
• Qui est le grand-père de Tom ?
ñ Raisonnement logique, évident pour un humain
ñ Impossible à formuler en logique des propositions !
ñ Logique des prédicats étend la logique des propositions
Damien Nouvel (Inalco)
Logique des prédicats
3 / 17
Histoire et définitions
Quantité et qualité des formules
§
On peut qualifier les propositions selon
• Leur quantité : universelle vs particulière
• Extension (ou dénotation)
ñ Ensemble d’individus dans le dans le domaine du discours
ñ Par ex. : homme Ñ damien _ pierre _ paul _ jacques . . .
• Compréhension (ou intention)
ñ Ensemble de caractères
ñ Par ex. : homme(x) Ñ humain(x) ^ Male(x)
• Leur qualité : affirmative ou négative
Carré logique (Aristote)
Damien Nouvel (Inalco)
Logique des prédicats
4 / 17
Histoire et définitions
Éléments
§
Élements pour la logique des prédicats :
• Variables et constantes
• V = tX, Y, Z . . .u et C = ta, b, c, pierre, paul, jacques . . .u
• Négation et connecteurs logiques
• ␣, ^, _, Ñ, Ø
• Prédicats
• p(x), q(x, z), maries(x, y), pere(x, y), cousin(x, y)
• Application vers les valeurs de vérités
• Fonctions
• f(x), g(x, y), mari(x), pere(x)
• Application vers le domaine
• Quantificateurs
• @ (universel) et D (existentiel)
• Opérateurs unaires sur les variables, ayant une portée
ñ Exemple de formule : @xDy(pere(x) = y ^ aime(y, x))
Damien Nouvel (Inalco)
Logique des prédicats
5 / 17
Histoire et définitions
Mécanisme de prédication
§
§
§
Appliqués à un ou plusieurs individus
Résultat toujours vrai ou faux
Interprétation générale
• Unaire : catégorie (attribut, propriété) d’un individu
• Binaire : relation entre individus
• Ternaire, quaternaire …n-aire
§
§
Souvent associée aux verbes (vs constantes pour les noms)
Modélisation
•
•
•
•
Félix est un chat : chat(felix)
Paul est président : president(paul)
Paul joue avec Jeanne : jouer(paul, jeanne)
Paul emprunte un livre à Marie : emprunt(paul, livre, jeanne)
Damien Nouvel (Inalco)
Logique des prédicats
6 / 17
Histoire et définitions
Définitions
§
Termes
• Toute variable
• Toute fonction f(x, y, z) si x, y et z sont des termes
§
Formule atomique
• Si p est un prédicat à n arguments et X1 , X2 , . . . Xn sont des
termes, alors P(X1 , X2 , . . . Xn ) est une formule atomique
§
Formule bien formée
• Si F une formule est atomique elle est bien formée
• Récursivité : ␣F, (F), F ^ G, F _ G, F Ñ G, F Ø G
• Si Q est un quantificateur, X une variable et F une formule
bien formée, alors QXF est bien formée
§
Portée des quantificateurs
• Si Q est un quantificateur, X une variable et F une formule
bien formée, alors dans la formule QXF, la portée de QX est
F
ñNouvel
Exemple
Y) ^ @Y␣Q(X, Y) _ ␣R(X, Y))7 / 17
Damien
(Inalco) : p(X) ^ DX(P(X,
Logique des prédicats
Histoire et définitions
Liaison de variables
§
Dans une formule, selon la portée des quantificateurs
• Variable liée : si elle est dans la portée d’un quantificateur
ñ Exemple : @Xp(X), @Xp(X) ^ (DYq(X, Y))
• Variable libre : si elle n’est pas liée
ñ Exemple : p(X), @X(p(X) ^ q(X, Y))
§
Une formule peut être
• Close : toutes les variables sont liées
• Ouverte : il existe au moins une variable libre
ñ Nous travaillons sur les formules closes
Damien Nouvel (Inalco)
Logique des prédicats
8 / 17
Histoire et définitions
Sémantique, domaine et interprétation
§
Une interprétation I est constituée des éléments suivants
•
•
•
•
Domaine D : valeurs que peuvent prendre les constantes
Constantes : élément de D
Prédicats : application de Dn dans tV, Fu
Fonctions : application de Dn dans D
ñ Une interprétation est un modèle pour une formule si elle la
rend toujours vraie selon le domaine et l’interprétation des
constantes, prédicats et fonctions
§ Exemple
Formule : @X(p(X) Ñ q(X, f(X))
Domaine : D =]0, +8[
Prédicats : p(X) est vrai si X ă 1, q(X, Y) est vrai si X ą Y
Fonctions : f(X) = X2
ñ Cette interprétation est un modèle pour la formule
ñ Dans un autre domaine ça n’est plus un modèle :
Damien Nouvel
Logique des prédicats
9 / 17
D =(Inalco)
[´1, +1]
•
•
•
•
Histoire et définitions
Exercices
§
Modélisez selon la logique des prédicats
•
•
•
•
•
•
•
•
Jacques est le fils de Marie
Tout le monde a un père
Jean aime tout le monde
Jacques n’aime pas tout le monde
Personne n’aime Jacques
Jean aime Marie mais Marie aime quelqu’un d’autre
Jean aime une personne qui ne l’aime pas
L’ami de mon ami est mon ami
Damien Nouvel (Inalco)
Logique des prédicats
10 / 17
Manipulation de formules
Plan
1. Histoire et définitions
2. Manipulation de formules
Damien Nouvel (Inalco)
Logique des prédicats
11 / 17
Manipulation de formules
Substitution
§
Substitution de variables
• Remplacement d’une variable par un terme
• Pour une formule F remplacer X par λ se note F[X/λ]
ñ Exemple : @XDYp(X, Y)[X/Z] = @ZDYp(Z, Y)
ñ Utile pour la mise sous forme prénexe et la skolémisation,
lorsque deux sous-formules ont les mêmes variables
§ Ordre des quantificateurs peut être modifié
• @X@Y ” @Y@X
• DXDY ” DYDX
• Attention : @WDY ı DY@X
• @XDYaime(X, Y) : tout le monde aime quelqu’un
• DY@Xaime(X, Y) : quelqu’un est aimé de tout le monde
Damien Nouvel (Inalco)
Logique des prédicats
12 / 17
Manipulation de formules
Mise sous forme normale prénexe
§
Une formule sous forme prénexe s’écrit
Q1 X1 Q2 X2 . . . Qn Xn F
• Q1 . . . Qn sont des quantificateurs
• X1 . . . Xn sont des variables
• F est une formule qui ne contient pas de quantificateur
ñ Amener tous les quantificateurs en début de formule
§ Étapes
• Supprimer les implications et les équivalences
• Former des littéraux par transférer des négations
• ␣DXF ” @X␣F
• ␣@XF ” DX␣F
• Substituer les variables pour éviter les conflits
• Mettre les quantificateurs en tête de formule (G libre de X)
• QXF ^ G ” QX(F ^ G) et F ^ QXG ” QX(F ^ G)
• QXF _ G ” QX(F _ G) et F _ QXG ” QX(F _ G)
Damien Nouvel (Inalco)
Logique des prédicats
13 / 17
Manipulation de formules
Exercices
§
Mettre sous forme prénexe
•
•
•
•
•
@Xp(X) _ ␣@Yq(Y)
DXp(X) _ ␣DXq(X)
@Xp(X) Ñ @Xq(X)
@X␣(p(X) ^ DYq(X, Y))
DX(p(X) ^ DYq(X, Y) Ñ DYr(X, Y))
Damien Nouvel (Inalco)
Logique des prédicats
14 / 17
Manipulation de formules
Forme normale de Skolem
ñ Formule universelle : que des quantificateurs universels
§ En début de formule, une constante satisfait la formule
• Il existe un homme qui a été président des États-Unis
” DXhomme(X) ^ president(X, usa)
” homme(billclinton) ^ president(billclinton, usa)
§
Après quantification universelle, l’individu est une fonction
• Tout président des États-Unis a un vice président
” @X(president(X, usa) Ñ DYvicepresident(Y, X))
” @XDY(president(X, usa) Ñ vicepresident(Y, X))
” @X(president(X, usa) Ñ vicepresident(nomination(X), X))
§
La skolémisation consiste à remplacer tous les D par
• Des constantes sans quantification universelle avant
• Sinon des fonctions des variables quantifiées universellement
Damien Nouvel (Inalco)
Logique des prédicats
15 / 17
Manipulation de formules
Exercices
§
Modélisez, mettez sous forme prénexe de skolem conjonctive
• Il existe une capitale où est construite la Tour Eiffel
• Tout monument a été conçu par une personne
• La plus grande ville (d’un pays) est une capitale
Damien Nouvel (Inalco)
Logique des prédicats
16 / 17
Manipulation de formules
Résolution
§
Clause
• Disjonction de littéraux
• Conjonction de clauses : forme normal conjonctive
§
Forme standard
• Forme prénexe
• Forme normale de Skolem
• Forme normale conjonctive (clausale)
ñ Conjonction de clauses
§ Résolvant de Robinson (1965)
• Si deux clauses F et G sont sous la forme
• F = F1 _ F2 . . . Fi . . . Fn
• G = G1 _ G2 . . . Gj . . . Gn
• Et si Fi ” ␣Gj alors la clause H résultant de la disjonction
de F et G après suppression de Fi et Gj est dite clause
résolvante de F et G
• H=
des. prédicats
F _ F2 . . . Fi´1Logique
_ Fi+1
. . Fn _ G1 _ G2 . . . Gj´1 _ Gj+1 . . 17
. F/n17
Damien Nouvel (Inalco)
1