Upload
olfa-mouelhi
View
1.022
Download
10
Embed Size (px)
Citation preview
LOGIQUE
INFORMATIQUE
OLFA MOUELHI
MOHAMED HENY SELMI
ECOLE SUPÉRIEURE PR IVÉE D'INGÉNIERIE ET DE TECHNOLOGIES
1. LOGIQUE DES PROPOSITIONS
(LOGIQUE D’ORDRE 0)
2. LOGIQUE DES PREDICATS
(LOGIQUE D’ORDRE 1)
OBJECTIFS
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
modéliser
interpréter
Raisonner
Olfa MOUELHI - Mohamed Heny SELMI
LIMITES DE LA LOGIQUE
DES PROPOSITIONS
tous les étudiants n’habitent pas à Tunis tous les étudiants n’habitent pas à Sfax
LP0
A B
Olfa MOUELHI - Mohamed Heny SELMI
LIMITES DE LA LOGIQUE
DES PROPOSITIONS
tous les étudiants n’habitent pas à Tunis tous les étudiants n’habitent pas à Sfax
LP0
A B
LP1
Peut-on faire mieux ?
Olfa MOUELHI - Mohamed Heny SELMI
LIMITES DE LA LOGIQUE
DES PROPOSITIONS
tous les étudiants n’habitent pas à Tunis tous les étudiants n’habitent pas à Sfax
A B
tous les étudiants n’habitent pas à Tunis tous les étudiants n’habitent pas à Sfax
Variables Universelles
Olfa MOUELHI - Mohamed Heny SELMI
LIMITES DE LA LOGIQUE
DES PROPOSITIONS
tous les étudiants n’habitent pas à Tunis tous les étudiants n’habitent pas à Sfax
A B
tous les étudiants n’habitent pas à Tunis tous les étudiants n’habitent pas à Sfax tous les étudiants n’habitent pas à Tunis tous les étudiants n’habitent pas à Sfax
Relation: prédicat
Olfa MOUELHI - Mohamed Heny SELMI
LIMITES DE LA LOGIQUE
DES PROPOSITIONS
tous les étudiants n’habitent pas à Tunis tous les étudiants n’habitent pas à Sfax
A B
tous les étudiants n’habitent pas à Tunis tous les étudiants n’habitent pas à Sfax tous les étudiants n’habitent pas à Tunis tous les étudiants n’habitent pas à Sfax
constantes
tous les étudiants n’habitent pas à Tunis tous les étudiants n’habitent pas à Sfax tous les étudiants n’habitent pas à Tunis tous les étudiants n’habitent pas à Sfax
Olfa MOUELHI - Mohamed Heny SELMI
LIMITES DE LA LOGIQUE
DES PROPOSITIONS
tous les étudiants n’habitent pas à Tunis tous les étudiants n’habitent pas à Sfax
A B
tous les étudiants n’habitent pas à Tunis tous les étudiants n’habitent pas à Sfax tous les étudiants n’habitent pas à Tunis tous les étudiants n’habitent pas à Sfax
quantificateur universel :
certains étudiants habitent à Tunis
tous les étudiants n’habitent pas à Tunis tous les étudiants n’habitent pas à Sfax tous les étudiants n’habitent pas à Tunis tous les étudiants n’habitent pas à Sfax tous les étudiants n’habitent pas à Tunis tous les étudiants n’habitent pas à Sfax
quantificateur existentiel :
Olfa MOUELHI - Mohamed Heny SELMI
EXEMPLE DE
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
)()(, xéclaireMalxchandellex
)()(, xéclairexchandellex
)()(, xéclaireMalxéclairex
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
SYNTAXE
des connecteurs (, , , et )
des quantificateurs ( et )
des variables (x,y, …)
des relations (prédicats) (R, S, éclaire, …)
Les prédicats d’arité 0 sont les PROPOSITIONS
des symboles de fonctions (f, g, …)
les fonctions d’arité 0 sont des constantes
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
VOCABULAIRE
Les termes
les variables et les constantes sont des termes
f(t1, …, tn) est un terme si
les ti sont des termes
f est un symbole de fonction d’arité n
Exemple: a, X, f(a,X) mais pas P(X).
Les atomes
R(t1, …, tn) est un atome si
les ti sont des termes
R est un symbole de prédicat d’arité n
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
Pas de valeur de vérité
valeur de vérité
FORMULES
Un atome est une formule bien formée
Si F et G sont des formules bien formées et X une variable, alors
les expressions suivantes sont des formules bien formées :
(F)
(F) (G) et (F) (G)
(F) (G) et (F) (G)
x (F) et x (G)
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
EXERCICE
En début d'année se pose l‘éternel problème de la gestion
des emplois du temps, des salles et du matériel
d'enseignement.
On utilise les prédicats suivants :
retro(x) : x est un rétroprojecteur.
video(x) : x est un vidéoprojecteur.
amphi(x) : x est un amphi.
salleTD(x) : x est une salle de TD.
estDans(x,y) : x est dans y.
Olfa MOUELHI - Mohamed Heny SELMI
TRADUCTION
1. On trouve toujours un retroprojecteur dans une salle de TD.
2. La salle A3 est une salle de TD.
3. Il n'y a pas de videoprojecteur dans la salle A3.
4. Tous les videoprojecteurs sont dans des amphis.
Olfa MOUELHI - Mohamed Heny SELMI
CORRECTION
Olfa MOUELHI - Mohamed Heny SELMI
CARACTÉRISTIQUES DES
VARIABLES
Une variable X est dite liée dans une formule F ssi toutes les
occurrences de X sont dans la portée de son quantificateur sinon
elle est dite libre.
Exemple:
La portée de ∀ est
Une formule n’ayant pas de variable libre est dite close
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
)()),(),,(( XRZXQZYXPYX
Q(Z) ZR(Y))(P(X) Y X
)),(),,(( ZXQZYXPY
EXERCICE
Olfa MOUELHI - Mohamed Heny SELMI
Tous les professeurs sont intelligents.
Il existe un professeur intelligent.
Si un professeur enseigne l'IA, il est intelligent.
Tout le monde aime tout le monde.
Tout le monde aime quelqu'un.
Quelqu'un aime tout le monde.
Quelqu'un aime quelqu'un.
Quelqu'un aime tous les professeurs de IA.
Tous les brésiliens parlent la même langue
Les brésiliens ne dansent pas tous la samba.
Un politicien peut tromper tout le monde une fois, peut aussi
tromper quelqu'un tout le temps, mais ne peut pas tromper
tout le monde tout le temps.
Olfa MOUELHI - Mohamed Heny SELMI
ASPECTS
SÉMANTIQUES
Calcul des prédicats
EXEMPLE
D’INTERPRÉTATION
xyz (P(x,y) Q(y,z) R(x,z))
xy ( (M(x,y) P(x,y) Q(x,y))
M(a,b) P(c,b) P(d,a) P(e,c)
a= Anne, b= Bernard c= Charles d=didier e= éric
P= est père de M= est la mère de Q= est un parent de R = est le grand-père de
D = { anne, bernard, charles, éric, didier, …}
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
MODÈLE
Une interprétation I est dite modèle d’une formule ssi F est
évaluée à « V » selon I.
Soit F(x1, …, xk) une formule quelconque:
F est dite universellement valide ssi x1…xk F(x1, …, xk) est
valide dans toutes les interprétations
F est dite insatisfaisable(consistante) ssi il existe une interprétation pour laquelle x1…xk F(x1, …, xk) est valide
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
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
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
TOUTES LES
INTERPRÉTATIONS ?
Une représentation utile des formules
forme clausale
Principe de résolution pour le calcul des prédicats
vers une automatisation des démonstrations
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
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
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
FORME NORMALE
PRENEX D’UNE FBF
Olfa MOUELHI - Mohamed Heny SELMI
SKOLEMISATION
Olfa MOUELHI - Mohamed Heny SELMI
EXERCICE
Donner la FNP des formules suivantes puis les mettre sous
la forme de Skolem:
1. (∀X)(P(X) R(X) → (∃Y)Q(X,Y))
2. (∀X)(Q(X) ^¬P(X)) →(∀Y)(∃Z)R(Y,Z)
Olfa MOUELHI - Mohamed Heny SELMI
TRANSPORT DES
QUANTIFICATEURS
FxFx
Fx Fx
HFxHxFx
HFxHxFx
FxyFyx
FxyFyx
si H ne contient aucune occurrence de x
HFxHFx
HFxHFx
HHx
HHx
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
A QUOI ÇA SERT ?
VALIDATION DE RAISONNEMENT
On cherche à valider le raisonnement suivant
Un dragon est heureux si tous ses enfants peuvent voler
Les dragons verts peuvent voler
Un dragon est vert s’il a au moins un parent vert ou rose
Donc les dragons verts sont heureux
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
RÉSOLUTION DU
PROBLÈME
Démarche générale
Modéliser le problème (les faits et la conclusion)
Démonstration par l’absurde, on montre que
P1 P2 P3 C est inconsistante
mettre la formule sous forme clausale
Notations
h(x) : x est heureux
p(x,y) : x est parent de y
vo(x) : x vole (peut voler)
ve(x) : x est vert
r(x) : x est rose
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
RÉSOLUTION DU
PROBLÈME (SUITE)
P1 un dragon est heureux si tous ses enfants peuvent voler
P2 les dragons verts peuvent voler
P3 un dragon est vert s’il a au moins un parent vert ou rose
C les dragons verts sont heureux
les A sont B A B
)()(, xhxvex
)()(, xvoxvex
h(x) x (y, p(x,y)vo(y))
)()()(),(,, xveyryvexypyx
)()(, xvoxvex
)()(),(,, xhyvoyxpyx )()(),(,, xhyvoyxpyx )()(),(,, xhyvoyxpyx )()(),(,, xhyvoyxpyx )()()(),(,, xhyvoxhyxpyx
)())(()())(,(, xhxfvoxhxfxpx
)()()(),(,, xveyryvexypyx )()()(),(,, xveyryvexypyx )()(),()(),(,, xveyrxypyvexypyx )()(),()()(),(,, xveyrxypxveyvexypyx
)()(, xhxvex négation
)()(, xhxvex )()( ahave
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
FORME CLAUSALE
)())(()())(,(, xhxfvoxhxfxpx
)()(, xvoxvex
)()(),()()(),(,, xveyrxypxveyvexypyx
)()( ahave
)())(,( 111 xhxfxp )())(( 22 xhxfvo
)()( 33 xvoxve )()(),( 4141 xveyvexyp
)()(),( 5252 xveyrxyp )(ave )(ah
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
VALIDATION DU
RAISONNEMENT
Trouver un ensemble d’instances de base insatisfaisable
intuition 1 : partir de la conclusion et essayer d’arriver à une
contradiction par déduction
intuition 2 : utiliser le principe de résolution
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
)())(,( 111 xhxfxp
MISE EN ŒUVRE
)())(( 22 xhxfvo
)()( 33 xvoxve )()(),( 4141 xveyvexyp
)()(),( 5252 xveyrxyp )(ave )(ah
)(ah ))(()( afvoah ax 2
))(())(( afveafvo
)(3 afx
))(()())(,( 11 afveyveafyp
)(4 afx
))(,()( afapah ))(()())(,( afveaveafap 111 xyax
)(ave)(ah
)(3 afx
))(())(( afveafvo
ax 2
)())(( ahafvo
)(ah clause vide
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
RÉSOLUTION
On a un ensemble d’instances de base insatisfaisables
La formule P1 P2 P3 C est donc insatisfaisable
Le raisonnement est donc valide
)(ah
))(()( afvoah
))(())(( afveafvo
))(,()( afapah ))(()())(,( afveaveafap
)(ave
)(ah
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
unificateur axxy 111
ANALYSONS UN PEU
LES CHOSES
L’opération d’appariement de deux atomes s’appelle
l’unification
))(()())(,( 11 afveyveafyp
)())(,( 111 xhxfxp
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
PROPRIÉTÉS DU CALCUL
DES PRÉDICATS
Le calcul des prédicats muni du principe de résolution et de
l’unification est complet
toute formule close est vraie ou fausse
MAIS le calcul des prédicats est indécidable
Il n’existe pas d’algorithme permettant de décider à tout coup
si une formule close est vraie ou fausse
En PROLOG, nous nous limiterons donc à un sous-ensemble
du calcul des prédicats
non restrictif en pratique
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
PROGRAMMER EN
LOGIQUE ?
Un petit exemple
xyz (pere(x,y)parent(y,z) grand-pere(x,z)
xy ((mere(x,y) pere(x,y)) parent(x,y)
mere(a,b) pere(c,b) pere(d,a) pere(e,c)
Forme clausale
pere(x1, y1) parent(y1, z1) grand-pere(x1,z1)
mere(x2, y2) parent(x2, y2)
pere(x3, y3) parent(x3, y3)
mere(a,b) pere(c,b) pere(d,a) pere(e,c)
On veut prouver x, grand-pere(x,b)
négation sous forme clausale : grand-pere(x,b)
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
PROGRAMMER EN
LOGIQUE ?
On part de grand-pere(x,b)
si x = x1 et z1=b unification avec
pere(x1, y1) parent(y1, z1) grand-pere(x1,z1)
on obtient pere(x, y1) parent(y1, b)
si y3 = b et y1=x3 unification avec
pere(x3, y3) parent(x3, y3)
on obtient pere(x, x3) pere(x3, b)
si x3 = c unification avec pere(c,b)
on obtient pere(x, c)
si x=e unification avec pere(e,c)
on obtient
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI
PROGRAMMER EN
LOGIQUE ?
On a réussi à prouver x, grand-pere(x,b)
On a réussi à calculer un x
Unification = calcul
on donne des valeurs aux variables
Calcul = programmation
on va pouvoir programmer avec la logique !!!
on automatise complètement le processus
PROLOG est un démonstrateur de théorème
Calcul des prédicats
Olfa MOUELHI - Mohamed Heny SELMI