IA Séance 4
IA Séance 4
IA Séance 4
La Logique Formelle
Pr. F. BENABBOU FSBM
2020
Master DSBD/S1
Faculté des Sciences Ben M’SIK
Pr. Faouzia Benabbou ([email protected])
Département de mathématiques et Informatique
Faculté des Sciences Ben M’Sik
2
Plan
• Introduction
• Logique formelle et inférence
▫ Représentation des connaissances et inférence LP-LPO
▫ ProLog
• Systèmes experts
• Techniques de représentation et de résolution de problèmes
• Système à base d’agents, Système multi-agents (JADE)
• Introduction à l’apprentissage Automatique
Langage de la LPO
• Grammaire de la LPO
• L'ensemble des formules bien formées de la logique des prédicats est le plus petit
ensemble de mots construits sur l'alphabet tel que :
terme = constante
| variable
| fonction (terme , ... )
atome = prédicat (terme , ... )
Littéral = terme (positif) | terme (positif)
formule = littéral
| ∀ variable formule
| ∃ variable formule
| ¬ formule
| formule connecteur formule
connecteur = ∧ | ∨ | ⇒ | ⇔
Pr. F. BENABBOU FSBM 2020
4
Langage de la LPO
• Exemples de traduction d'énoncés en formules LPO
▫ « Tout est relatif » : ∀x relatif(x)
▫ « Une porte est ouverte ou fermée » : ∀x (porte(x) (ouvert(x) ∨ fermé(x))
▫ « Une porte est ou bien ouverte ou bien fermée. '' :
∀x ( porte(x) ((ouvert(x) ∨ fermé(x)) ∧ (ouvert(x) ∧ fermé(x)) )
▫ « Tout ce qui brille n'est pas or » : ∀x (brille(x) or(x))
▫ « Il y a des peines, il y a des plaisirs, mais aucune peine n'est un plaisir » :
(∃x peine(x)) ∧ (∃x plaisir(x)) ∧ ∀x (peine(x) plaisir(x))
▫ « Tous les chemins mènent à Rome » : ∀x (chemin(x) mène-à(x, Rome))
▫ « Pour tout entier il existe un entier plus grand » :
∀x (entier(x) ∃y (entier(y) ∧ plus-grand(y , x)) )
▫ « Il existe un plus grand entier » : ∃x (entier(x) ∧ ∀y (entier(y) plus-grand(x , y)) )
Pr. F. BENABBOU FSBM 2020
5
Langage de la LPO
• Priorité des connecteurs
▫ Pour éviter les ambiguïtés on fixe une priorité des connecteurs logiques, la voici
en ordre décroissant :
▫ ∀ et ∃ > ¬ > ∨ et ∧ > ⇒ et ⇔.
• Exemple :
▫ ¬r ∨ t ⇒ f signifie ((¬r) ∨ t) ⇒ f
▫ ∀x f(x) ⇒ g(x) signifie (∀x f(x)) ⇒ g(x) qui est différent de ∀x (f(x) ⇒ g(x))
Language de la LPO
• Variable libre et liée
▫ Toutes les variables d’une formule sans quantificateurs sont libres.
▫ Une variable est liée ssi elle est dans la portée d’un quantificateur.
▫ Une variable peut être libre et liée à la fois.
• Exemple :
▫ h(x) m(y) x, y sont libres
▫ x p(x) m(y , x) x liée, y libre
▫ ( x p(x)q(x)) m(x) x liée et libre
• Fermeture d’une FBF
▫ Une formule où toutes les variables sont liées est dite fermée.
▫ Une formule avec une ou des variables libres est dite ouverte
Pr. F. BENABBOU FSBM 2020
7
Sémantique de la LPO
• Domaine
▫ Pour évaluer la formule ∀x H(x) il faut connaître l’ensemble des valeurs que
peut prendre la variable x
▫ Cet ensemble est appelé le domaine de discours, noté D
• Interprétation : Une interprétation I d’une formule F est définie par :
▫ le domaine de l’interprétation D non vide
▫ une fonction I qui associe
à chaque variable une valeur de D
à chaque constante une valeur de D
à chaque symbole de fonction à n arguments une fonction de Dn dans D
à chaque symbole de prédicat à n arguments une application Pn: Dn→{v,f}
Pr. F. BENABBOU FSBM 2020
8
Sémantique de la LPO
• Exemple :
soit G=(x) (p(x) q(f(x),a)) et une interprétation telle que:
I={D={1,2}, a=1, f(1)=2 , f(2)= 1, p(1) →f, p(2) →v, q(1,1) →v, q(1,2) →v, q(2,1) →f,
q(2,2) →f }
pour x=1 p(1) q(f(1),1)) on a f f
donc I(G)=v
pour x=2 p(2) q(f(2),1)) on a v v
Donc I(G)=v
I est un modèle de G.
Sémantique de la LPO
• Exercice :
▫ Les propositions suivantes sont –elles équivalentes ?
1. (x p(x) ) et (( x) p(x))
2. x p(x) q(x) et ((x p(x)) (x q(x))
Sémantique de la LPO
• Normalisation des formules : Il existe 4 formes d’une formule donnée :
▫ Prénexe
▫ Skolen
▫ Conjonctive
▫ Clausale
Sémantique de la LPO
Sémantique de la LPO
Sémantique de la LPO
• Équivalence : Les équivalences de la LP sont conservées, on y ajoute :
• ( x) (M N ) ( x) (N M), ( x) (M N ) ( x) (N M)
• ( x) (M N ) ( x) (N M), ( x) (M N ) ( x) (N M),
• ( x) (N M) (x) M (x) N
• ( x) (N M) ( x) M ( x) N
• (x) M (x) N ( x) (M N) se transforme en (x) M (y) N
• ( x) (M N) ( x) M ( x) N
• (( x) M (x) ) (( x) N(x)) ( x) ( y) (M (x) N(y)) renommer les
variables
• (( x) M (x)) (( x) N(x)) ( x) ( y) (M (x) N(y))
Pr. F. BENABBOU FSBM 2020
peut alors être simplifiée en : ∃x (p(x) ∨ q(x)) 14
Sémantique de la LPO
• En plus on a les équivalences suivantes :
( x p(x) ) ( x p(x))
( x p(x)) ( x p(x) )
Sémantique de la LPO
Sémantique de la LPO
Sémantique de la LPO
Sémantique de la LPO
Sémantique de la LPO
Sémantique de la LPO
Sémantique de la LPO
3) ∃X ∃Y ∀Z ∀T ∃V P(X,Y,Z,T,V)
1. ∃Y ∀Z ∀T ∃V P(a,Y,Z,T,V)
2. b/Y ∀Z ∀T ∃V P(a,b,Z,T,V)
3. On remplace f(Z,T)/V , ∀Z ∀T P(a,b,Z,T,f(Z,T))
Pr. F. BENABBOU FSBM 2020
23
Sémantique de la LPO
Sémantique de la LPO
• Pour prouver une formule est valide il suffit de monter que sa négation est
inconsistante ou que la forme Skolem de sa négation est inconsistante.
• Exercice :
▫ Mettre sous forme de Skolen
G1= (x) p(x) ( y) q(y)
G2= ( y) q(y) (x) p(x)
G3= ∃u ∀x ∃y ∀z ∃t ( p(x) ∧ q(y) ∧ r(x,z,t) ∧ s(y) ∧ k(u) )
Pr. F. BENABBOU FSBM 2020
25
Sémantique de la LPO
Sémantique de la LPO
Validité et consistance
• Exemples :
• x ¬ p(x) p(x) est une tautologie
• x ¬ p(x) p(x) est inconsistante
• ( x Personne(x)) ( x (Personne (x)) est valide
• F = {p (a, b), y p(a, y)} est inconsistante
En effet: y p(a, y) y p(a, y )
F. skolen : F = {p (a, b), p(a, y )} , Instanciation y = b
F = {p (a, b), p(a, b )}├ ⃞ par règle de résolution.
Théorème de Herbrand
• Le but est de réduire le nombre d’interprétations à prendre en
considération lors d’une procédure de déduction.
• Ainsi étant donnée une formule sous forme de Skolem (sous forme de S),
on peut se limiter pour étudier sa satisfiabilité à son univers de Herbrand.
• Définition : Dans un ensemble de clauses S, un terme de base est un terme
qui ne contient pas de variable, et un atome de base est un atome qui ne
contient pas de variables.
▫ f(x,a) n’est pas un terme de base
▫ P(f(a), f(f(a))) est un atome de base
Signature
• Définition : La signature ∑ d’un ensemble S de clause est l’ensemble des
constantes, les fonctions et les prédicats présents dans l’ensemble des
clauses.
▫ S= {P(x)∨ ¬P(f(x)),¬P(a),P(f(f(a)))}, La signature Σ de S comporte une constante
a, un symbole de fonction unaire f et un symbole de relation unaire P.
▫ S= {R(x,s(x)),R(x,y)∧ R(y,z)}
On Remarque qu’il n’y a pas de constante on en choisit une arbitrairement : a
La signature Σ de S comporte une constante a, un symbole de fonction unaire s et
un symbole de relation binaire R.
Univers de Herbrand
• Définition : L'Univers de Herbrand d'un ensemble de clauses E est
l'ensemble des termes de base que l'on peut construire à partir des
symboles de fonctions et des constantes qui apparaissent dans E.
Univers de Herbrand
• Exemple :
1) F= {p(f(x)) ⇒ q(a),r(g(x))}
- La signature Σ de F comporte une constante a, deux symboles de fonction
unaire f et g, et 3 symboles de relation unaire p, q et r.
- L’univers d’herbrand de F est :
Le niveau 0 noté H0 = {a, f(a), g(a)}
Le niveau 1 noté H1 = { a, f(a), g(a), f(f(a)), g(g(a)), f(g(a)) , g(f(a))}
Le niveau ∞ noté H∞ = { a, f(a), g(a), f(f(a)), g(g(a)), f(g(a)) , g(f(a)), f(f(f(a))),
g(f(f(a))), g(g(g(a))), f(g(g(a))), f(f(g(a))), g(f(g(a))) , g(g(f(a))), f(g(f(a))), ……………}
Théorème de Herbrand
• Exemple :
2) H = {P(x), R(x) ∨ Q(y, x), ¬Q(y, y)}
La signature Σ de H comporte une constante a, et 2 symboles de relation unaire P
et R et un symbole de relation binaire Q.
L’univers d’herbrand de H est :
H0 = { a } , H1 = { a } car il n’y a pas de fonction, H∞ = { a }
Théorème de Herbrand
• Exemple :
3) N = {P(f(x) )∨ Q(a), Q(g(b)) ∨ ¬P(y) }
La signature Σ de N comporte 2 constantes a et b, 2 symboles de fonction unaire f
et g et 2 symboles de relation unaire P et Q.
L’univers d’herbrand de N est :
H0 = { a, b, f(a), f(b), g(a), g(b) }
H1 = { a, b, f(a), f(b), g(a), g(b) f(f(a)), f(f(b)), f(g(a)), f(g(b)), g(f(a)), g(f(b)), g(g(a)),
g(g(b)) }
H∞ = H1 ∪ {f(f(f(a))), g(g(g(a))), f(f(f(b))), g(g(g(b))), ……………}
Base de Herbrand
• Définition :
La Base de Herbrand d'un ensemble de clauses E est l'ensemble des atomes de
base qui peuvent être construits à partir des symboles de prédicats de E
appliqués aux termes de l'univers de Herbrand de E.
Base de Herbrand
• Exemple :
▫ La base de Herbrand de l'ensemble {P(f(x)) ⇒ Q(a),R(g(x))} est :
H ∞ = { a, f(a), g(a), f(f(a)), f(g(a)), g(f(a)), g(g(a)), …}
BH ={P(a),Q(a),R(a),P(f(a)),Q(f(a)),R(f(a)),P(g(a)),Q(g(a)),R(g(a)),...}
▫ La base de Herbrand de l'ensemble S = {P(X), R(X) ∨ Q(Y, X), ¬Q(Y, Y)} :
H ∞ = { a}
BH ={P(a), R(a), Q(a, a)}
▫ La base de Herbrand de l'ensemble S = {P(f(x)) ∨ Q(a), Q(g(b)) ∨ ¬P(y) } :
H ∞ = { a, b, f(a), f(b), g(a), g(b) f(f(a)), f(f(b)), f(g(a)), f(g(b)), g(f(a)), g(f(b)),
g(g(a)), g(g(b)),… }
BH ={P(a), Q(a), P(b), Q(b), P(f(a)), Q(f(a)), P(g(a)), Q(g(a)), ….}
Pr. F. BENABBOU FSBM 2020
39
Base de Herbrand
• Exemple :
▫ La base de Herbrand de l'ensemble S = {P(f(x)) ∨ Q(a), Q(g(b)) ∨ ¬P(y) } :
H ∞ = { a, b, f(a), f(b), g(a), g(b) f(f(a)), f(f(b)), f(g(a)), f(g(b)), g(f(a)), g(f(b)), g(g(a)),
g(g(b)),… }
BH ={P(a), Q(a), P(b), Q(b), P(f(a)), Q(f(a)), P(g(a)), Q(g(a)), ….}
Interprétation de Herbrand
• Définition : soit E un ensemble de clauses, une interprétation de Herbrand
de E est obtenue en remplaçant les variables de E par des éléments de
l'univers de Herbrand de E.
Théorème de Herbrand
• Soit S= {p(x) q(y)} D={a,b}
Inst(S)={p(a) q(a), p(a) q(b), p(b) q(a), p(b) q(b)} est l’ensemble des
instances de S
• S = {P(x),Q(x),¬P(a)∨ ¬Q(b)}
Inst(S)={P(a), Q(a), P(b), Q(b),¬P(a)∨ ¬Q(b)} est l’ensemble des instances de S
• S={¬P(x) Q(x), P(y) , ¬ Q(a)]
Inst(S)={¬P(a) Q(a), P(a), ¬ Q(a), ¬P(b) Q(b), P(b)}
Théorème de Herbrand
• Exemple : Soit S = {P(x)∨Q(x),¬P(a),¬Q(b)}.
▫ H∞ ={a, b}
▫ L’ensemble de toutes les instances sur le domaine de Herbrand est :
Inst(S)={P(a)∨Q(a), P(b)∨Q(b),¬P(a),¬Q(b)}
▫ Soit F1={P(a) Q(a),¬P(a)} Inst(A) qui est satisfiable dans un modèle où on
I(Q(a))=V
▫ F2={P(a) Q(a),¬P(a), P(b) Q(b),¬Q(b) } qui est satisfiable dans un modèle où
{P(b),Q(a)} ={V , V}
▫ S est satisfiable pour le modèle {P(b),Q(a),P(a),Q(b)} ={V , V, F, F}
▫ Donc l’interprétation de Herbrand associée à S est aussi un modèle de ∀(S).
Pr. F. BENABBOU FSBM 2020
44
Théorème de Herbrand
• Exemple :
• Soit S = {P(x),Q(x),¬P(a)∨ ¬Q(b)}
▫ La signature Σ comporte 2 constantes a, b et 2 symboles de relation unaire P, Q.
▫ L’univers d’herbrand de S est {a, b}.
▫ L’ensemble {P(a),Q(a), Q(b),¬P(a)∨ ¬Q(b)} est une instance de S sur le domaine de
Herbrand qui est insatisfiable, donc ∀(S) est insatisfiable.
• Soit S = {P(x),¬P(f(x))}
▫ La signature Σ comporte une constante a, un symbole de fonction unaire f et un
symbole de relation unaire P.
▫ L’univers d’herbrand de S est : {fi(a), i=0,..,n}
▫ L’ensemble {P(a), ¬P(f(a)), P(f(a)),¬P(f(f(a)))} d’instances sur le domaine de Herbrand
est insatisfiable, donc ∀(S) est insatisfiable.
Pr. F. BENABBOU FSBM 2020
45
Théorème de Herbrand
• Exemple :
• Soit S = {P(x)∨ ¬P(f(x)),¬P(a),P(f(f(a)))}.
▫ On a la même signature que précédemment.
▫ L’univers d’herbrand de S est : {fi(a), i=0,..,n}
▫ L’ instance {P(a)∨ ¬P(f(a)), ¬P(a), P(f(f(a))), P(f(a))∨ ¬P(f(f(a))) } sur le
domaine de Herbrand est insatisfiable
▫ donc ∀(S) est insatisfiable.
• Dans ce cas il a fallu prendre 2 instances de la première formule de S pour
obtenir une contradiction.
Unification
• Définition : Un unificateur pour l’ensemble {E1, E2,…, En} est dit PGU ssi :
une substitution telle que : =
Propriété de la LPO
• Théorème d'adéquation:
La LPO est correcte : Si ├ A alors ╞ A.
• Théorème de complétude :
La LPO est complète : Si ╞ A alors ├ A
les formules qui sont démontrables formellement, sont exactement les
formules vraies dans tout modèle pour toute interprétation.
▫ si F├P alors F╞P
• La LPO est semi-décidable
Décidabilité
• Il existe un algorithme qui, si une formule est démontrable, le dira en un
temps fini, mais qu’on ne peut borner à priori.
• Il n’existe en revanche pas d’algorithme permettant, pour toute formule,
de déterminer en un temps fini qu’elle n’est pas démontrable.