Vous êtes sur la page 1sur 18

Université de Monastir Niveau : Deuxième année LF, LA info

Institut Supérieur d’Informatique


Et de Mathématique de Monastir Enseignant : M. Mahdi JEMMALI

Chapitre 3 : Logique des prédicats


du premier ordre

1. Introduction

Nous avons vu la logique propositionnelle (basée sur les


propositions) qui nous a permis de mettre au point une première « théorie
du raisonnement ».
Il faut aller plus loin que le simple calcul des propositions.

Définition : un prédicat est une formule logique qui dépend d'une


variable libre.

2. Syntaxe du langage de prédicat

2.1. L’alphabet

Le langage du calcul des prédicats est formé des symboles suivants :


1. Ensemble de symboles appelé séparateur : «)», «(» et «,».
2. Un ensemble de symboles appelé constante : les lettres minuscules
de l’alphabet et leurs concaténations {a, b, c, . . .};
3. Un ensemble de symboles appelé variable : les lettres majuscules et
leurs concaténations {x, y, z, . . .} ;

M. Mahdi JEMMALI 1
4. Un ensemble (dénombrable) de fonctions {f, g, h, . . .} ;
5. Un ensemble de symboles appelé prédicat comme les variables
construites de lettres majuscules et leurs concaténations {P,Q, . . .} ;
Lorsque on manipule un prédicat, on doit spécifier son nombre
d’arguments appelé aussi Arité. Prédicat d’Arité fixe :

L’Arité est un nombre entier >0.


Lorsque l’Arité est fixé à 0, le prédicat est aussi appelé proposition.
6. Un ensemble de symboles appelé connecteur logique {
¬,∧∨→ ⇔ ,}

7. Deux symboles appelés quantificateurs : universel ∀ et existentiel


∃.
2.2. Termes
Tout terme est engendré par application de deux lois suivantes :
ƒ Les constantes et les variables sont des termes.
ƒ Si f est un symbole de fonction d’arité n et si t1 . . . tn sont des
termes, alors f(t1, . . . , tn) est un terme.

2.3. Atomes ou formules atomiques


Les formules atomiques sont formées à partir de la règle suivante :
Si P(_ , . . . ,_ ) est un symbole de prédicat d’arité n et si t1 . . . tn sont
des termes, alors P(t1, . . . , tn) est une formule atomique.

2.4. Formule bien formée (FBF)

M. Mahdi JEMMALI 2
Une formule en logique des prédicats se construit similairement à
une formule en logique des propositions. En fait un prédicat va jouer un
rôle analogue à une proposition. On doit en plus prendre en compte les
quantifications :

Les FBF serviront à exprimer des significations.

2.5. Quantificateurs
Les différents connecteurs vus dans le chapitre précédant restent tout
à fait d'actualité. Mais pour le calcul des prédicats, nous devons introduire
deux nouveaux symboles : ce sont des quantificateurs.
2.5.1. Le quantificateur existentiel
Ce quantificateur signifie : « il existe » ou plus précisément : « il
existe au moins un » et est noté ∃.
On peut écrire :
∃xP(x)
Et on doit comprendre : « il existe au moins un x tel que P(x) soit
vrai ».
revient à considérer que P(a1) ∨· · · ∨P(an) est vrai, si {a1, . . . , an}
est le domaine de x
On peut écrire aussi :
∃!xP(x)

M. Mahdi JEMMALI 3
Et on doit comprendre : « il existe un et un seul x tel que P(x) soit
vrai ».

2.5.2. Le quantificateur universel


Ce quantificateur signifie « quelque soit » et est noté ∀. On peut
écrire :
∀xP(x)
Et on doit comprendre : « quelque soit x, P(x) est vrai ».
revient à considérer que P(a1)∧· · · ∧P(an) est vrai, si {a1, . . . , an}
est le domaine de x
2.5.3. Quantificateurs imbriqués
Notons que l’ordre des quantificateurs est important. En effet, « tout
le monde aime quelqu’un » s’écrirait ∀x . (∃y. Aime(x, y)), qui n’a pas
exactement le même sens que « il y a quelqu’un qui est aimé par tout le
monde » qui s’écrirait ∃y . (∀x . Aime(x, y)).
Liens entre ∀ et ∃ : On a les lois de Morgan pour les
quantificateurs :

Carré d’Aristote (1)

L’introduction d’un quantificateur permet d’exprimer diverses


propositions que nous appellerons quantifiées. Par exemple tout est
éphémère, qui pourrait s’écrire ∀x E(x), mais aussi rien n’est éphémère,
qu’on pourrait écrire ∀x ¬E(x).

M. Mahdi JEMMALI 4
Dans la seconde formule, on constate que la variable y n’est pas
quantifiée : un telle variable est dite libre. Une variable quantifiée est dite
liée.

Carré d’Aristote (2)


On peut proposer maintenant une nouvelle version du carré
d’Aristote, avec des phrases quantificationnelles dans lesquels on distingue
une restriction et une portée :

M. Mahdi JEMMALI 5
2.6. Variable libre et liée
On dit qu'une occurrence d'une variable X dans une formule F est
liée si un quantificateur porte sur cette occurrence, sinon cette occurrence
est qualifiée de libre.

3. Règles d’inférence

Une règle d’inférence est la représentation d’un procédé pour qu’à


partir d’une ou plusieurs FBF dériver d’autres FBF.
Exemples :

M. Mahdi JEMMALI 6
1. La règle d’inférence appelée Modus Ponens, à partir de deux FBF
respectivement de la forme G et (G→H), dérive la FBF H.
2. La règle d’inférence spécialisation universelle, à partir d’une FBF
de la forme (∀X).G(X) et de n’importe quelle constante, soit : « a »,
dérive la FBF G(a) : toutes les occurrences de « X » dans G sont
remplacées par « a ».
3. La règle d’inférence appelée Modus Tollens, à partir de deux FBF
respectivement de la forme (¬H) et (G→H), dérive la FBF (¬G).

Les FBF choisies initialement sont appelées axiomes. Les FBF


obtenues par application des règles d’inférence sont appelées théorèmes.

Une chaîne d’applications de règles d’inférence conduisant, depuis


les axiomes, à un théorème, constitue une preuve du théorème.

4. Sémantique

4.1. Interprétation

Une interprétation d'une FBF G est définie par les cinq étapes
suivantes
1. Choix d'un domaine d'interprétation non vide D
2. Assignation à chaque constante de G d'un élément de D
3. Assignation à chaque proposition de G d'un élément de {V, F}
(V : vrai, F : faux)
4. Assignation à chaque prédicat d'arité n (n ≥ 1) d'une application de
Dn dans {V, F} (V : vrai, F : faux)

M. Mahdi JEMMALI 7
5. Assignation à chaque fonction d'arité n (n ≥ 1) d'une application de
Dn dans D.
On dit alors qu'on a une interprétation de G sur D

4.2. Valeur selon une interprétation

Soit une interprétation i de domaine D d'une fbf G :


1. Si G est une proposition alors la valeur qui lui est assignée par
définition de i est appelée valeur de G selon i (ou dans i)

2. Si G est un littéral non propositionnel alors pour chaque choix de


valeurs dans D pour les variables de G (s'il en existe) on obtiendra une
valeur V ou F en suivant la définition de i. Cette valeur est dite valeur de
G selon i pour le choix des valeurs de variables.

3. Si G est de la forme : (X)G', la valeur de G sera V, si la valeur de


G' selon i pour toutes les valeurs de la variable (dans D) est V, sinon la
valeur de G sera F
4. Si G est de la forme : (∃X) G', la valeur de G sera V si la valeur de G'
selon i pour au moins une valeur de X (dans D) est V sinon la valeur de G
sera F. Exemple : Valeur de Q(X, Y) dans I2 est V quand X = 1 et Y = 3
donc ∃Y Q(X, Y) est V selon I2 quand X=1

5. Si G est de la forme : (¬G') ou (G' ∧ G") ou (G' ∨ G") ou (G' → G")


ou (G'↔ G"), les connecteurs gardent la même sémantique qu'en calcul
propositionnel. On définira la valeur de G selon i (quand les valeurs G' et
G" selon i seront définies) au moyen des tables de vérité.

Remarques :
1. Il y a une infinité d'interprétations pour G

2. On ne peut pas interpréter une fbf contenant des variables libres

4.3. Théorèmes d'équivalence

M. Mahdi JEMMALI 8
Soient A, B et C des formules bien formées :

1. Implication matérielle
A → B ≅ ¬A ∨ B

2. Equivalence matérielle
A ↔ B ≅ (A → B) ∧ (B → A)

3. Commutativité
a) A ∨ B ≅ B ∨ A
b) A ∧ B ≅ B ∧ A

4. Associativité
a) (A ∨ B) ∨ C ≅ A ∨ (B ∨ C)
b) (A ∧ B) ∧ C ≅ A ∧ (B ∧ C)

5. Distributivité
a) A ∨ (B ∧ C) ≅ (A ∨ B) ∧ (A ∨ C)
b) A ∧ (B ∨ C) ≅ (A ∧ B) ∨ (A ∧ C)

6. a) A ∨ V ≅ V
b) A ∧ V ≅ A

7. a) A ∨ F ≅ A
b) A ∧ F ≅ F

8. Complémentarité
a) A ∨ ¬A ≅ V
b) A ∧ ¬A ≅ F

9. Involution
(¬(¬A)) ≅ A

10. Lois de de Morgan


a) ¬(A ∨ B) ≅ (¬A) ∧ (¬B)
b) ¬(A ∧ B) ≅ (¬A) ∨ (¬B)

M. Mahdi JEMMALI 9
11. a) A ∨ ((¬A) ∧ B) ≅ A ∨ B
b) A ∧ ((¬A) ∨ B) ≅ A ∧ B

12. Identité
a) A ∧ A ≅ A
b) A ∨ A ≅ A

13. (∀X) G(X) = (∀Y) G(Y)


(∃X) G(X) = (∃Y) G(Y)

14. (¬((∃X) G(X))) = (∀X) (¬G(X))


(¬((∀X) G(X))) = (∃X) (¬G(X))

15. (∀X) (G(X) ∧ H(X)) = (∀X) G(X) ∧ (∀X) H(X)


(∃X) (G(X) ∨ H(X)) = (∃X) G(X) ∨ (∃X) H(X)

ATTENTION :
(∀X) (G(X) ∨ H(X)) non équivalente à (∀X) G(X) ∨ (∀X) H(X)
(∃X) (G(X) ∧ H(X)) non équivalente à (∃X) G(X) ∧ (∃X) H(X)

16. (∀X) F(X) ∨ (∀X) H(X) = (∀X) F(X) ∨ (∀Y) H(Y)


(∃X) F(X) ∨ (∃X) H(X) = (∃X) F(X) ∨ (∃Y) H(Y)
(∀X) F(X) ∧ (∀X) H(X) = (∀X) F(X) ∧ (∀Y) H(Y)
(∃X) F(X) ∧ (∃X) H(X) = (∃X) F(X) ∧ (∃Y) H(Y)

5. Validité, insatisfiabilité, conséquence

5.1. Validité
Une fbf A est une tautologie (valide) si et seulement si elle est vraie
dans toute interprétation ; on écrit alors : |= A

Une fbf est invalide si et seulement si elle n'est pas valide

5.2. Insatisfaisabilité

M. Mahdi JEMMALI 10
Une fbf est inconsistante ou insatisfiable si et seulement si elle est
fausse dans toute interprétation.
Exemple :
¬A ∧ A est une formule inconsistante

Une fbf A est consistante ou satisfiable :


ƒ si et seulement si elle n'est pas inconsistante
ƒ si il existe une interprétation i telle que i[A] = V
ƒ si elle admet un modèle

5.3. Conséquence logique

A est une conséquence logique de E si et seulement si toutes les


interprétations qui rendent vraies toutes les formules de E rendent vraie la
formule A.
On écrit alors E |= A

On dit qu'une formule C est une conséquence logique de H1.. Hn


ƒ si et seulement si tout modèle de H1...Hn est un modèle de C
ƒ si et seulement si H1 ∧ H2 ∧ ... ∧ Hn → C est valide ou encore
H1 ∧ H2 ∧ ... ∧ Hn ∧ ¬ C est inconsistante

6. Représentation des connaissances


6.1. L'universelle affirmative
ƒ Tous les F sont des G
ƒ ∀X (F(X) → G(X))
ƒ Tout F est G
ƒ Tout ce qui est F est G
ƒ N'importe lequel F est G
ƒ Les F sont tous G
ƒ Si un être quelconque est F, il est G
ƒ Chaque F est G
ƒ Seuls les G sont F

6.2. L'universelle négative


ƒ Aucun F n'est G

M. Mahdi JEMMALI 11
ƒ ∀X (F(X) →¬G(X))
ƒ Il n'y a aucun F et G
ƒ Rien n'est à la fois F et G
ƒ F et G n'existent pas

6.3. La particularité affirmative


ƒ Quelques F sont G
ƒ ∃X (F(X) ∧ G(X))
ƒ Quelque F est G
ƒ Il y a des F et G
ƒ Quelque chose est à la fois F et G
ƒ Il y a un F et G
ƒ Des F et G existent

6.4. La particularité négative

ƒ Quelques F ne sont pas G


ƒ ∃X (F(X) ∧¬G(X))
ƒ Quelque F n'est pas G
ƒ Il y a des F et non G
ƒ Quelque chose est à la fois F et non G
ƒ Il y a un F et non G
ƒ Des F et non G existent

7. Normalisation des formules

7.1. Forme normale prenex (les quantificateurs devant)

But
Placer tous les quantificateurs au début de la formule.
Une formule est dite en forme Prenex si tous les quantificateurs
apparaissent au début.

Une fbf F est une forme normale Prenex ssi F est sous la forme :
F = (Q1 x1 )(Q2 x2 )...(Qn xn ) M

Avec Qi sont des quantificateurs qcq (∃ ou∀), et M une formule sans


quantificateurs appelée Matrice

M. Mahdi JEMMALI 12
Théorème
Il est toujours possible de transformer une formule en une formule
équivalente sous forme Prenex.

Pour cela il faut appliquer les étapes a, b, c et d :

a- Eliminer les connecteurs ⇒ et ⇔

b- Accorder les connecteurs ¬ aux atomes concernés

c- Distinguer les variables (de sorte que chaque quantificateur


gouverne une variable originale)

d- Déplacer tous les quantificateurs à gauche de la formule (sans


changer leur ordre relatif)

7.2. Forme normale de Skolem (Skolemisation :suppression des ∃)


La skolemisation d’une variable X existentiellement quantifiée dans une
formule en forme Prenex consiste à remplacer X par une fonction, dite de
Skolem, qui dépend des variables universellement quantifiées qui
précèdent X dans la liste des quantificateurs.

La skolemisation consiste à supprimer les quantificateurs existentiels (∃).

Soit F une fbf. Pour mettre F sous forme standard de Skolem on réalise les
étapes suivantes :
a- Mettre F sous forme normale de Prenex :
F = (Q1 x1 )(Q2 x2 )...(Qn xn ) M
b- Mettre M sous forme normale conjonctive :
M = M 1 ∧ M 2 ∧ ... ∧ M k
c- Pour tout quantificateur Qi =∃ :
• S’il n’y a aucun ∀ à gauche de Qi alors supprimer
( Qi ,xi) et remplacer xi dans M par une constante non déjà
existante.
• Si Q j , Q j +1 ,..., Q1 sont des quantificateurs (∀) à gauche de
Qi alors supprimer ( Qi ,Xi) et remplacer Xi dans M par une
fonction f de X j , X j +1 ,..., X 1 : f ( X j , X j +1 ,..., X 1 )

M. Mahdi JEMMALI 13
Les constantes et fonctions introduites dans M sont appelées fonctions de
Skolem.

Remarque :
Une fbf peut avoir plusieurs formes de Skolem différentes.

La formule obtenue par skolemisation n’est pas équivalente à la formule de


départ, mais elle possède des propriétés intéressantes exprimées dans le
théorème ci-dessous.

Théorème
Soit w une formule et ws sa skolemisation, alors
(1) tout modèle de ws est un modèle de w
(2) si w possède un modèle alors ws aussi
(3) w est satisfaisable si et seulement si ws l’est (découle de (1) et (2))

Remarques

1. La suppression des quantificateurs existentiels a une signification


logique lorsqu’on désire représenter une connaissance dans un
système automatique d’IA.

En effet, une connaissance dans ce cas est soit absolue


(quantificateur universel), soit appliquée seulement à certains cas et
il faut les citer tous.

Ainsi, dire dans un système qu’il existe des cas ou une connaissance
est réalisée n’a pas beaucoup d’importance.

2. Le but est de trouver un formalisme qui prépare une connaissance à


être implémenté dans un système à base de connaissances.
Il s’agit de la notion de « clauses » ou « formes clausales ».

3. Les étapes de passage par Prenex et Skolem ne sont que des étapes
intermédiaires pour faire aboutir aux formes clausales qui à leur offre
un moyen à la fois logique et pratique pour l’implémentation des
connaissances.

M. Mahdi JEMMALI 14
7.3. Forme normale clausale (suppression des ∀)
Définition
On appelle clause toute fbf qui a la forme d’une disjonction des
littéraux.

On considère que l’inconsistance ( ) est une clause vide.

Appelé inconsistance est une proposition toujours fausse

Forme clausale
Une forme clausale est une conjonction de clauses.

Pour obtenir la forme clausale d’une fbf il suffit de la mettre sous forme
standard de Skolem : F = (∀X 1 )(∀X 2 )...(∀X n ) F1 ∧ F2 ∧ ... ∧ Fk . La forme
clausale de F est : F1 ∧ F2 ∧ ... ∧ Fk . , qu’on note : { F1 , F2 ,..., Fk }.

Dans une forme clausale, il n'y a que les connecteurs ¬ et ∨. Le


connecteur ∧ est implicitement mis entre deux clauses. Il n'y a plus de
quantificateur.

Toute variable est implicitement quantifiée par ∀. Les variables


indépendantes sont nommées différemment.

La transformation d'une expression quelconque en forme clausale se fait


en plusieurs étapes:

a- transformer ⇒ et ⇔

b- ramener la négation directement sur les prédicats, en utilisant


les équivalences.
3.
c- Si deux variables sont quantifiées par deux quantificateurs
différents, donnez-leur des noms différents.

d- Suppression de ∃:

e- Enlever tout ∀X.

f- Transformer l'expression en Forme Normale Conjonctive,

M. Mahdi JEMMALI 15
g- Séparer les éléments reliés par ∧ en différentes clauses.
Assurer que des variables dans des clauses différentes ont des
noms différents.

8. Principe de résolution appliqué à des clauses concrètes

Un littéral est concret s’il ne comporte aucune variable.

Exemple :
¬P(a), Q(a,f(b)) sont des littéraux concrets, tans disque ¬P(X) ou
Q(a,f(Y)) n’en sont pas.

Une clause concrète est une disjonction de littéraux concrets.

Soient deux clauses concrètes G = G1 ∨ G2 ∨ ... ∨ Gn et


H = ¬G1 ∨ H 2 ∨ ... ∨ H m avec les Gi et H j sont des littéraux concrets.
Les littéraux G1et ¬G1 dans G et H respectivement, sont dits des
littéraux complémentaires.

La règle d’inférence appelée principe de résolution produit, à partir de


G et H (appelées clauses parentes).

La clause K = G2 ∨ ... ∨ Gn ∨ H 2 ∨ ... ∨ H m 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.

Remarques :

1. Deux clauses concrètes peuvent ne pas avoir de résolvant.


2. Deux clauses concrètes peuvent avoir plusieurs résolvant.

M. Mahdi JEMMALI 16
3. ¬P est un résolvant des clauses concrètes ¬Q et ¬P∨Q (ou encore ¬Q
et P ⇒ Q ). Le principe de résolution recouvre donc la règle
d’inférence dite modus tollens.

La généralisation du principe de résolution à des clauses quelconques


conduit à rechercher au sein des clauses parentes des littéraux
complémentaires dans un sens plus large.

Cette recherche utilise une opération appelée unification que nous


allons présenter maintenant.

9. L’unification

Considérons, par exemple, les clauses ¬G(X)∨H(X) et G(f(Y)).


Si la première clause était remplacée par ¬G(f(X))∨H(f(X)), le principe
de résolution pour clauses concrètes serait aisément étendu : après
élimination des littéraux (complémentaires) on obtiendrait la clause
H(f(Y)).

Justement, l’opération d’unification permet de transformer des clauses


en vue de faire apparaître des littéraux complémentaires, par application
de substitution.

9.1. Substitutions

Une substitution est un ensemble de couples notés ti | Vi où les ti sont


des termes et les Vi des variables distinctes. Si i=0 la substitution est
vide.

L’application d’une substitution s = {ti | Vi } à une expression


quelconque E (nous entendons par expression : un terme ou une fbf) est
notée Es et s’appelle une instanciation de E selon s.
Elle consiste à remplacer toutes les occurrences initiales de chaque
variable Vi dans E par ti .

La composition de deux substitutions S1, S2, notée S1 D S2 est la substitution


obtenue de la manière suivante :

M. Mahdi JEMMALI 17
1. On applique S2 aux termes de S1
2. On enlève de S2 les couples t j | V j tels que V j est une variable
de S1 (soit tels que ∃ti avec ti | V j ∈ S1 )
3. On rassemble les couples obtenus en a) et b)

9.2. Unifieurs

Une substitution σ est appelée un unifieur pour un ensemble de fbf


{F1,…, Fn} ssi F1σ = F 2σ = ... = Fnσ c à d l’application de σ aux Fi
permet d’obtenir des expressions identiques. {F1,..., Fn}σ est un singleton.

Un ensemble de fbf est dit unifiable s’il existe une subtitution σ


(l’unifieur) tq F1σ = F 2σ = ... = Fnσ

M. Mahdi JEMMALI 18

Vous aimerez peut-être aussi