Académique Documents
Professionnel Documents
Culture Documents
Techniques de raisonnement
en logique des prédicats du
premier ordre
1
Plan du chapitre II
II.1 Introduction
II.2 Syntaxe du langage des prédicats du premier
ordre II.
3 Inférence en logique des prédicats du premier ordre
II.4 Sémantique du langage des prédicats du premier
ordre
II.5 Rapport entre les notions de théorèmes et
conséquences logiques
II.6 Principe de résolution
II.7 Systèmes de réfutation par résolution
2
II.1 Introduction
3
II.2 Syntaxe du langage des
prédicats du premier ordre
Les expressions correctes du langage appelées termes,
atomes, formules bien formées (fbf), littéraux sont
bâties à partir d’un alphabet de symboles
Alphabet:
§ Séparateurs : « , » ; « ( » ; « ) »
§ Constantes : elles correspondent aux lettres
minuscules de l’alphabet latin ou la concaténation de
telles lettres. Ex. « a » ; « jules »
§ Variables : elles correspondent aux lettres majuscules
de l’alphabet latin ou la concaténation de telles lettres.
Ex. « NOM » ; « X »
4
II.2 Syntaxe du langage des
prédicats du premier ordre
Alphabet:
§ Prédicats : comme les variables, ce sont des chaînes de
caractères de l’alphabet latin. Lorsqu’on voudra manipuler un
prédicat quelconque, on devra convenir de son arité ou de son
nombre d’arguments. L’arité est un entier positif. Lorsque l’arité
est fixé à zéro, le prédicat est aussi appelé proposition. Ex.
« P(X) » ; « P(X, a) » ; « Q ».
5
II.2 Syntaxe du langage des
prédicats du premier ordre
Alphabet:
§ Connecteurs : ¬ ; ∨ ; ∧ ; ⇒ ; ⇔
§ Quantificateurs : ∃ (quantificateur existentiel) et ∀
(quantificateur universel).
Termes:
Par définition, tout terme est engendré par application des
deux lois suivantes :
Ø Les constantes et les variables sont des termes
Ø Si f est une fonction d’arité n (n ≥ 1) et si t1, t2, …,
tn sont des termes alors f(t1, t2, …, tn) est un terme.
7
II.2 Syntaxe du langage des
prédicats du premier ordre
Formules bien formées (fbf) :
9
II.2 Syntaxe du langage des
prédicats du premier ordre
Exemples :
Presque toutes les phrases du langage naturel peuvent être
représentées en logique des prédicats du 1er ordre. Il n'y a
pas de correspondance unique entre une phrase en langage
naturel et une expression logique.
Voici quelques exemples:
10
II.2 Syntaxe du langage des
prédicats du premier ordre
Exemples :
Ø "Si la voiture appartient à Jean, alors elle est verte"
1) Possède(jean, voiture-1) ⇒ Couleur(voiture-1, vert)
2) ∃x Voiture(x) ∧ Possède(jean, x) ⇒ Couleur(x, vert)
11
II.3 Inférnece en logique des
prédicats du premier ordre
Exemple :
Prémisses:
1. Si x est un parent de y, alors x est plus âgé que y
2. Si x est la mère de y, alors x est un parent de y
3. Lulu est la mère de Fifi
Conclusion:
– Lulu est plus âgé que Fifi
Correspondance en logique du 1er ordre:
– Prémisses:
1. ∀x∀y Parent(x,y) ⇒ PlusAgé(x, y)
2. ∀x∀y Mère(x,y) ⇒ Parent(x, y)
3. Mère(Lulu, Fifi)
– Conclusion: PlusAgé(Lulu, Fifi)
12
II.3 Inférnece en logique des
prédicats du premier ordre
Ø L’inférence est obtenue par des axiomes et des règles (i.e. par
des transformations syntaxiques) qui étendent ceux de la
logique propositionnelle.
Règles d’Inférence :
13
II.3 Inférnece en logique des
prédicats du premier ordre
Règles d’Inférence :
14
II.3 Inférnece en logique des
prédicats du premier ordre
Règles d’Inférence :
15
II.4 Sémantique du langage des
prédicats du premier ordre
16
II.4 Sémantique du langage des
prédicats du premier ordre
Interprétations :
Une interprétation d’une formule bien formée G est défini
les cinq étapes suivantes :
18
II.4 Sémantique du langage des
prédicats du premier ordre
Valeur d’une formule selon une interprétation :
Soit une interprétation I, de domaine D, d’une formule G :
-Si G est une proposition, alors la valeur qui lui est affectée par
définition de I est appelée valeur de G selon I.
19
II.4 Sémantique du langage des
prédicats du premier ordre
Validité (et invalidité) inconsistance (et consistance)
d’une formule :
20
II.4 Sémantique du langage des
prédicats du premier ordre
Formules équivalentes :
Deux formules bien formées G et H sont équivalentes si et
seulement si elles prennent les mêmes valeurs pour toute
interprétation. Notation: ∀I I(G) = I(H)
Formules :
(G⇒H) ≡ ( ¬G∨H)
(G⇔H) ≡ (G⇒H) ∧(H⇒G)
(¬(¬G) ≡ G
( ¬ (G∨H)) ≡ ((¬G )∧(¬H))
( ¬ (G∧H)) ≡ ((¬G ) ∨ (¬H))
(G∧ (H∨K)) ≡ ((G∧H) ∨(G∧K))
(G∨ (H∧K)) ≡ ((G∨H) ∧ (G∨K))
(G∨H) ≡ (H∨G)
21
II.4 Sémantique du langage des
prédicats du premier ordre
(G∧H) ≡ (H∧G)
((G∨ H)∨K) ≡ (G∨(H∨K))
((G∧ H) ∧K) ≡ (G∧ (H∧K))
(G⇒H) ≡ (( ¬H)⇒(¬G))
G∨■ ≡ ■ ■ : représente toute fbf valide
G∨□ ≡ G □ : représente toute fbf inconsistante
G∧■ ≡ G
G∧□ ≡ □
G∨¬G ≡ ■
G∧¬G ≡ □
(∀x) G(x) ≡ (∀y) G(y)
(∃x) G(x) ≡ (∃y) G(y)
¬ ((∃x) G(x)) ≡ (∀x) (¬G(x))
¬ ((∀x) G(x)) ≡ (∃x) (¬G(x))
22
II.4 Sémantique du langage des
prédicats du premier ordre
Formules conséquences logiques :
23
II.4 Sémantique du langage des
prédicats du premier ordre
Formules conséquences logiques :
24
II.5 Rapport entre les notion de
théorèmes et conséquences logiques
Groupes «sains» ou «corrects» de règles d’inférence :
Lorsque les théorèmes obtenus par application d’un groupe donné de règles
d’inférence sont systématiquement des conséquences logiques de
l’ensemble des axiomes, quel que soit cet ensemble, on dit que le group
de règles est sain.
Ex. le groupe de règle réduit au Modus ponens n’est pas complet pour la
déduction.
25
II.6 Principe de résolution
Clauses :
On appelle clauses toutes formules bien formées qui ont
la forme d’une disjonction de littéraux.
26
II.6 Principe de résolution
Forme normale prenex d’une formule bien
formée
A partir d’une forme normale prenex G’ d’une formule bien
formée G, on peut produire une forme de clauses. La
forme normale prenex est une formule dérivée d’une
formule bien formée G en appliquant la séquence des
quatre transformations suivantes :
Ø éliminer les connecteurs ⇔ et ⇒
Ø accoler les connecteurs ¬ aux atomes concernés
Ø distinguer les variables de sorte que chaque quantificateur
gouverne une variable originale.
Ø déplacer tous les quantificateurs à gauche de la formule sans
changer leur ordre relatif.
27
II.6 Principe de résolution
Passage sous forme de clauses ou forme clausale:
A partir de la forme normale prenex G’ d’une formule bien formée
G, on peut produire une forme de clauses G’’ de G en appliquant
la séquence des cinq transformations suivantes :
28
II.6 Principe de résolution
(1) éliminer les quantificateurs existentiels :
Lorsqu’il n’existe aucun quantificateur universel à gauche du
quantificateur existentiel, la fonction de Skolem introduite n’aura
pas d’arguments. Elle sera donc une nouvelle constante
appelée constante de Skolem.
29
II.6 Principe de résolution
(3) passer sous forme normale conjonctive :
Mettre la formule sous forme d’une conjonction de
disjonction de littéraux.
Ex. (¬P(x) ∧Q(x,a))∨ ¬R(y, f(x),b) devient
(¬P(x) ∨ ¬R(y, f(x),b)) ∧ (Q(x,a)∨ ¬R(y, f(x),b))
(4) éliminer les connecteurs de conjonction :
La conjonction des clauses obtenues à la fin de l’étape
précédente est considérée comme un ensemble de
clauses.
Ex. Clauses ={C1, C2}
C1 = (¬P(x) ∨ ¬R(y, f(x),b))
C2 = (Q(x,a)∨ ¬R(y, f(x),b))
(5) distinguer les variables de clauses
distinctes :
Ex. C1 = (¬P(x) ∨ ¬R(y, f(x),b))
C2 = (Q(z,a)∨ ¬R(w f(z),b))
30
II.6 Principe de résolution
Principe de résolution appliqué à des clauses concrètes :
On dira qu’un littéral est concret s’il ne comporte aucune variable.
Ex. ¬P(a), Q(a, f(b)
Une clause concrète est une disjonction de littéraux concrets.
Soient deux clauses concrètes G = G1∨ G2∨…∨Gn et H =
¬G1∨H1∨ H2∨…∨Hn. Les littéraux ¬G1et G1 dans G et H
respectivement sont dits littéraux complémentaires.
La règle d’inférence appelé principe de résolution produit à partir
de G et H (appelées clauses parentes) la clause K= G2∨…
∨Gn∨H1∨ H2∨…∨Hn appelée clause résolvante ou résolvant de
G et H. On dit aussi que G et H se résolvent en K. Un résolvant
est défini par élimination de littéraux complémentaires et
disjonction de tous les autres littéraux des clauses parentes.
31
II.6 Principe de résolution
Quelques cas particuliers :
L’unification :
Considérons les clauses ¬G(x)∨H(x) et G(f(y). Si x est
remplacée par f(y), le principe de résolution pour les
clauses concrètes sera applicable pour obtenir la clause
résolvante H(f(y)).
L’opération d’unification permet de transformer des
clauses en vue de faire apparaitre des littéraux
complémentaires par application de substitutions.
33
II.6 Principe de résolution
Substitutions :
Une substitution est un ensemble fini de couples notés
ti|vi où les ti sont des termes et les vi sont des variables
distinctes. L’application d’une substitution S = { ti|vi }i à
une expression quelconque E (terme ou formule bien
formée) est notée ES et s’appelle une instanciation de E
selon S. Elle consiste à remplacer toutes les
occurrences de chaque variable vi dans E par ti.
Ex. E= G(f(x), a, y)
S1 = {z|x, u|y} ES1 = G(f(z), a, u)
S2 = {b|x} ES2 = G(f(b), a, y)
S3 = {y|x, g(x)|y} ES3 = G(f(y), a, g(x))
S4 = {a|x, k(c)|y} ES4 = G(f(a), a, k(c))
34
II.6 Principe de résolution
La composition de deux substitutions S1 et S2,
note S1OS2 est obtenue en appliquant les étapes
suivantes :
On applique S2 aux termes de S1.
On enlève de S2 les couples tj|vj telle que vj est
une variable de S1.
On rassemble les couples obtenus en 1) et 2)
35
II.6 Principe de résolution
Unifieurs :
37
II.6 Principe de résolution
Algorithme d’unification :
Ø Cet algorithme produit un (pgu) pour un ensemble E fini
d’expressions unifiables. Si E n’est pas unifiable l’algorithme
s’arrête en le déclarant.
Ø On appelle initialement l’algorithme par : Unifier(E, ε) où ε
dénote la substitution vide.
Ø L’algorithme utilise la notion d’ensemble de discordance (noté
Ð) d’un ensemble ξ d’expressions (termes ou formules).
Ø Cet ensemble est construit en explorant de gauche à droite
simultanément tous les éléments de ξ jusqu'à apparition de la
première différence entre ces éléments.
Ex. ξ= {G(x, f(a, y)), G(x, b), G(X, f(a, g(z)))}
Une discordance apparait au niveau du second terme du
prédicat G, Ð={f(a,y), b, f(a, g(z))}
38
II.6 Principe de résolution
Algorithme d’unification :
Unifier (ξ, σ)
(1) si : ξ est un singleton, alors : arrêt, σ est
un (pgu)
(2) former l’ensemble de discordance Ð de ξ
(3) si : il existe deux éléments v et t de tels
que v et une variable et t est un terme et v
ne figure pas dans t
alors : σ ← σ O {t|v}
ξ ← ξ {t|v}
Unifier (ξ, σ)
(4) Arrêt l’ensemble de départ n’est pas
unifiable
39
II.6 Principe de résolution
Algorithme d’unification :
Ex. Soit E = {P(a, x, f(g(y))), P(z, f(z), f(u))}
On lance : Unifier (E, ε) donc ξ ← E, σ ← ε
Etapes 1 et 2 : Ð← {a, z}
Etape 3 : v ← z, t ← a, σ ← σ O{a|z}, ξ ← ξ {a|z} = {P(a, x, f(g(y))),
P(a, f(a), f(u))}
Appel : Unifier (ξ, σ)
Etapes 1 et 2 : Ð← {x, f(a)}
Etape 3 : v ← x, t ← f(a)
σ ← {a|z}O{f(a)|x}, ξ ← ξ {f(a)|x} = {P(a, f(a), f(g(y))), P(a, f(a), f(u))}
Appel : Unifier (ξ, σ)
Etapes 1 et 2 : Ð← {u, g(y)}
Etape 3 : v ← u, t ← g(y)
σ ← {a|z, {f(a)|x}O{g(y)|u}, ξ ← ξ {g(y)|u} = {P(a, f(a), f(g(y)))}
Appel : Unifier (ξ, σ)
Etape 1 : ξ est un singleton, un pgu est trouvé, soit σ = {a|z, {f(a)|x,
g(y)|u }
40
II.7 Conclusion
41
II.8 Conclusion
On cite :
42
Bibliographie
q H. Farreny et M. Ghallab, Eléments d’Intelligence
Artificielle, Edition HERMES, 1987
q J.-G. Ganascia, L’intelligence Artificielle, Coll.
DOMINOS, Flammarion, 1993
q J.-G. Ganascia, L’âme machine, Seuil, 1990
q M. Ginsberg, Essentials of Artificial Intelligence,
Morgan Kaufmann, 1997
q J.-L. Laurière, Intelligence Artificielle : résolution
de problèmes par l’homme et la machine, Eyrolles,
1987
q Russel and Norvig, Artificial Intelligence a Modern
Approach, Prentice Hall Series in Artificial
Intelligence, 1995
43