Vous êtes sur la page 1sur 18

Universit de Monastir Institut Suprieur dInformatique Et de Mathmatique de Monastir

Niveau : Deuxime anne LF, LA info Enseignant : M. Mahdi JEMMALI

Chapitre 3 : Logique des prdicats du premier ordre

1. Introduction
Nous avons vu la logique propositionnelle (base sur les propositions) qui nous a permis de mettre au point une premire thorie du raisonnement . Il faut aller plus loin que le simple calcul des propositions. Dfinition : un prdicat est une formule logique qui dpend d'une variable libre.

2. Syntaxe du langage de prdicat


2.1. Lalphabet

Le langage du calcul des prdicats est form des symboles suivants :


1. 2.

Ensemble de symboles appel sparateur : ), ( et ,. Un ensemble de symboles appel constante : les lettres minuscules de lalphabet et leurs concatnations {a, b, c, . . .}; Un ensemble de symboles appel variable : les lettres majuscules et leurs concatnations {x, y, z, . . .} ;

3.

M. Mahdi JEMMALI

4. 5.

Un ensemble (dnombrable) de fonctions {f, g, h, . . .} ; Un ensemble de symboles appel prdicat comme les variables construites de lettres majuscules et leurs concatnations {P,Q, . . .} ; Lorsque on manipule un prdicat, on doit spcifier son nombre darguments appel aussi Arit. Prdicat dArit fixe :

LArit est un nombre entier >0. Lorsque lArit est fix 0, le prdicat est aussi appel proposition.
6.

Un

ensemble

de

symboles

appel

connecteur

logique

, ,}
7.

Deux symboles appels 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 darit 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 formes partir de la rgle suivante : Si P(_ , . . . ,_ ) est un symbole de prdicat darit n et si t1 . . . tn sont des termes, alors P(t1, . . . , tn) est une formule atomique.

2.4.

Formule bien forme (FBF)

M. Mahdi JEMMALI

Une formule en logique des prdicats se construit similairement une formule en logique des propositions. En fait un prdicat va jouer un rle analogue une proposition. On doit en plus prendre en compte les quantifications :

Les FBF serviront exprimer des significations.


2.5. Quantificateurs

Les diffrents connecteurs vus dans le chapitre prcdant restent tout fait d'actualit. Mais pour le calcul des prdicats, nous devons introduire deux nouveaux symboles : ce sont des quantificateurs.
2.5.1. Le quantificateur existentiel

Ce quantificateur signifie : il existe ou plus prcisment : 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 considrer que P(a1) est le domaine de x On peut crire aussi : !xP(x)

P(an) est vrai, si {a1, . . . , an}

M. Mahdi JEMMALI

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 considrer que P(a1) P(an) est vrai, si {a1, . . . , an} est le domaine de x
2.5.3. Quantificateurs imbriqus

Notons que lordre des quantificateurs est important. En effet, tout le monde aime quelquun scrirait x . (y. Aime(x, y)), qui na pas exactement le mme sens que il y a quelquun qui est aim par tout le monde qui scrirait y . (x . Aime(x, y)). Liens entre et : On a les lois de Morgan pour les quantificateurs :

Carr dAristote (1) Lintroduction dun quantificateur permet dexprimer diverses propositions que nous appellerons quantifies. Par exemple tout est phmre, qui pourrait scrire x E(x), mais aussi rien nest phmre, quon pourrait crire x E(x).

M. Mahdi JEMMALI

Dans la seconde formule, on constate que la variable y nest pas quantifie : un telle variable est dite libre. Une variable quantifie est dite lie. Carr dAristote (2) On peut proposer maintenant une nouvelle version du carr dAristote, avec des phrases quantificationnelles dans lesquels on distingue une restriction et une porte :

M. Mahdi JEMMALI

2.6.

Variable libre et lie

On dit qu'une occurrence d'une variable X dans une formule F est lie si un quantificateur porte sur cette occurrence, sinon cette occurrence est qualifie de libre.

3. Rgles dinfrence
Une rgle dinfrence est la reprsentation dun procd pour qu partir dune ou plusieurs FBF driver dautres FBF. Exemples :

M. Mahdi JEMMALI

1. 2.

La rgle dinfrence appele Modus Ponens, partir de deux FBF La rgle dinfrence spcialisation universelle, partir dune FBF

respectivement de la forme G et (GH), drive la FBF H. de la forme (X).G(X) et de nimporte quelle constante, soit : a , drive la FBF G(a) : toutes les occurrences de X dans G sont remplaces par a . 3. La rgle dinfrence appele Modus Tollens, partir de deux FBF respectivement de la forme (H) et (GH), drive la FBF (G). Les FBF choisies initialement sont appeles axiomes. Les FBF obtenues par application des rgles dinfrence sont appeles thormes. Une chane dapplications de rgles dinfrence conduisant, depuis les axiomes, un thorme, constitue une preuve du thorme.

4. Smantique
4.1. Interprtation

Une interprtation d'une FBF G est dfinie par les cinq tapes suivantes 1. Choix d'un domaine d'interprtation non vide D 2. Assignation chaque constante de G d'un lment de D 3. Assignation chaque proposition de G d'un lment de {V, F} (V : vrai, F : faux) 4. Assignation chaque prdicat d'arit n (n 1) d'une application de Dn dans {V, F} (V : vrai, F : faux)

M. Mahdi JEMMALI

5. Assignation chaque fonction d'arit n (n 1) d'une application de Dn dans D. On dit alors qu'on a une interprtation de G sur D
4.2. Valeur selon une interprtation

Soit une interprtation i de domaine D d'une fbf G :


1. Si G est une proposition alors la valeur qui lui est assigne par

dfinition de i est appele valeur de G selon i (ou dans i)


2. Si G est un littral 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 dfinition 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 mme smantique qu'en calcul propositionnel. On dfinira la valeur de G selon i (quand les valeurs G' et G" selon i seront dfinies) au moyen des tables de vrit. Remarques : 1. Il y a une infinit d'interprtations pour G
2. On ne peut pas interprter une fbf contenant des variables libres 4.3. Thormes d'quivalence
8

M. Mahdi JEMMALI

Soient A, B et C des formules bien formes :


1. Implication matrielle

A B A B

2. Equivalence matrielle

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) a) A (B C) (A B) (A C) b) A (B C) (A B) (A C) a) A V V b) A V A a) A F A b) A F F

5. Distributivit

6.

7.

8. Complmentarit

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

11.

a) A ((A) B) A B b) A ((A) B) A B a) A A A b) A A A

12. Identit

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, consquence


5.1. Validit

Une fbf A est une tautologie (valide) si et seulement si elle est vraie dans toute interprtation ; 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 interprtation. 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 interprtation i telle que i[A] = V si elle admet un modle
5.3. Consquence logique

A est une consquence logique de E si et seulement si toutes les interprtations 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 consquence logique de H1.. Hn si et seulement si tout modle de si et seulement si H1 H2 ... Hn
H1...Hn est un modle de C C est valide ou encore H1 H2 ... Hn C est inconsistante

6. Reprsentation des connaissances


6.1. L'universelle affirmative


6.2.

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

L'universelle ngative

Aucun F n'est G
M. Mahdi JEMMALI

11


6.3.

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 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

La particularit affirmative


6.4.

La particularit ngative

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 dbut de la formule. Une formule est dite en forme Prenex si tous les quantificateurs apparaissent au dbut. 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 appele Matrice

M. Mahdi JEMMALI

12

Thorme
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 concerns c- Distinguer les variables (de sorte que chaque quantificateur gouverne une variable originale) d- Dplacer tous les quantificateurs gauche de la formule (sans changer leur ordre relatif) 7.2. Forme normale de Skolem (Skolemisation :suppression des ) La skolemisation dune variable X existentiellement quantifie dans une formule en forme Prenex consiste remplacer X par une fonction, dite de Skolem, qui dpend des variables universellement quantifies qui prcdent 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 ralise les tapes suivantes : a- Mettre F sous forme normale de Prenex :
F = (Q1 x1 )(Q2 x2 )...(Qn xn ) M

b- Mettre

sous

forme

normale

conjonctive :

M = M 1 M 2 ... M k

c- Pour tout quantificateur Qi = : Sil ny a aucun gauche de Qi alors supprimer ( Qi ,xi) et remplacer xi dans M par une constante non dj 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 appeles fonctions de Skolem. Remarque : Une fbf peut avoir plusieurs formes de Skolem diffrentes. La formule obtenue par skolemisation nest pas quivalente la formule de dpart, mais elle possde des proprits intressantes exprimes dans le thorme ci-dessous.
Thorme

Soit w une formule et ws sa skolemisation, alors (1) tout modle de ws est un modle de w (2) si w possde un modle alors ws aussi (3) w est satisfaisable si et seulement si ws lest (dcoule de (1) et (2)) Remarques 1. La suppression des quantificateurs existentiels a une signification logique lorsquon dsire reprsenter une connaissance dans un systme automatique dIA. En effet, une connaissance dans ce cas est soit absolue (quantificateur universel), soit applique seulement certains cas et il faut les citer tous. Ainsi, dire dans un systme quil existe des cas ou une connaissance est ralise na pas beaucoup dimportance. 2. Le but est de trouver un formalisme qui prpare une connaissance tre implment dans un systme base de connaissances. Il sagit de la notion de clauses ou formes clausales . 3. Les tapes de passage par Prenex et Skolem ne sont que des tapes intermdiaires pour faire aboutir aux formes clausales qui leur offre un moyen la fois logique et pratique pour limplmentation des connaissances.

M. Mahdi JEMMALI

14

7.3. Forme normale clausale (suppression des ) Dfinition On appelle clause toute fbf qui a la forme dune disjonction des littraux. On considre que linconsistance ( ) 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 dune 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 . , quon 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 quantifie par . Les variables indpendantes sont nommes diffremment. La transformation d'une expression quelconque en forme clausale se fait en plusieurs tapes: a- transformer

et

b- ramener la ngation directement sur les prdicats, en utilisant les quivalences.


3.

c- Si deux variables sont quantifies par deux quantificateurs diffrents, donnez-leur des noms diffrents. d- Suppression de : e- Enlever tout X. f- Transformer l'expression en Forme Normale Conjonctive,

M. Mahdi JEMMALI

15

g- Sparer les lments relis par en diffrentes clauses. Assurer que des variables dans des clauses diffrentes ont des noms diffrents.

8. Principe de rsolution appliqu des clauses concrtes Un littral est concret sil ne comporte aucune variable.
Exemple :

P(a), Q(a,f(b)) sont des littraux concrets, tans disque P(X) ou Q(a,f(Y)) nen sont pas. Une clause concrte est une disjonction de littraux concrets.
G = G1 G2 ... Gn Soient deux clauses concrtes et H = G1 H 2 ... H m avec les Gi et H j sont des littraux concrets. Les littraux G1et G1 dans G et H respectivement, sont dits des littraux complmentaires.

La rgle dinfrence appele principe de rsolution produit, partir de G et H (appeles clauses parentes). La clause K = G2 ... Gn H 2 ... H m appele clause rsolvante ou rsolvant de G et H. On dit aussi que G et H se rsolvent en K. Un rsolvant est dfini par limination de littraux complmentaires et disjonction de tous les autres littraux des clauses parentes.
Remarques :

1. Deux clauses concrtes peuvent ne pas avoir de rsolvant. 2. Deux clauses concrtes peuvent avoir plusieurs rsolvant.

M. Mahdi JEMMALI

16

3. P est un rsolvant des clauses concrtes Q et PQ (ou encore Q et P Q ). Le principe de rsolution recouvre donc la rgle dinfrence dite modus tollens. La gnralisation du principe de rsolution des clauses quelconques conduit rechercher au sein des clauses parentes des littraux complmentaires dans un sens plus large. Cette recherche utilise une opration appele unification que nous allons prsenter maintenant.

9. Lunification
Considrons, par exemple, les clauses G(X)H(X) et G(f(Y)). Si la premire clause tait remplace par G(f(X))H(f(X)), le principe de rsolution pour clauses concrtes serait aisment tendu : aprs limination des littraux (complmentaires) on obtiendrait la clause H(f(Y)). Justement, lopration dunification permet de transformer des clauses en vue de faire apparatre des littraux complmentaires, par application de substitution.
9.1. Substitutions

Une substitution est un ensemble de couples nots ti | Vi o les ti sont des termes et les Vi des variables distinctes. Si i=0 la substitution est vide. Lapplication dune substitution s = {ti | Vi } une expression quelconque E (nous entendons par expression : un terme ou une fbf) est note Es et sappelle 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, note S1 S2 est la substitution obtenue de la manire suivante :

M. Mahdi JEMMALI

17

1. 2.

On applique S2 aux termes de S1 On enlve 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 appele un unifieur pour un ensemble de fbf {F1,, Fn} ssi F1 = F 2 = ... = Fn c d lapplication de aux Fi permet dobtenir des expressions identiques. {F1,..., Fn} est un singleton. Un ensemble de fbf est dit unifiable sil existe une subtitution (lunifieur) tq F1 = F 2 = ... = Fn

M. Mahdi JEMMALI

18