Vous êtes sur la page 1sur 71

IA41 Concepts fondamentaux en Intelligence Artificielle et langages ddis CM #5

Logique des prdicats du premier ordre


Fabrice LAURI

Logique des prdicats du premier ordre (PP)


- Introduction - Dfinitions - Thorie des modles - Thorie de la dmonstration - Proprits fondamentales de (PP) - Dcidabilit de (PP) - Principe de rsolution

Logique des prdicats du premier ordre (PP)


- Introduction - Dfinitions - Thorie des modles - Thorie de la dmonstration - Proprits fondamentales de (PP) - Dcidabilit de (PP) - Principe de rsolution

Introduction
(LP) permet de rendre compte du syllogisme suivant : Si Jean est malade, il ne sort pas Jean est malade Jean ne sort pas Mais pas du syllogisme suivant : Si un homme est malade, il ne sort pas Jean est un homme malade Jean ne sort pas M S R S' J S J S

Introduction
Nouveaux concepts dans (PP) : - prdicats - variables - quantificateurs : - quel que soit : (ensemble d'objets) - il existe : (certains objets d'un ensemble) Exemple : Sbastien a les cheveux longs. : - avoir les cheveux longs est un prdicat - Sbastien est le sujet du prdicat - Ce prdicat peut se noter p( x ) : x a les cheveux longs - x est une variable, sujet du prdicat, qui peut tre remplace par Sbastien pour rendre p vrai - Cet nonc peut alors s'crire p( Sbastien ).

Introduction
Enoncs quantifis : Tout est phmre : Rien est phmre : peut se dfinir partir de : Rien est phmre x E( x ) Il n'existe pas de chose phmre x E( x ) x E( x ) x E( x )

Introduction
Carr d'opposition d'Aristote :

Introduction
Notion d'univers du discours : Tous les philosophes sont assis. x (P( x ) A( x )) Bonne formulation x (P( x ) A( x )) Mauvaise formulation

Quelques philosophes sont assis. x (P( x ) A( x )) Bonne formulation x (P( x ) A( x )) Mauvaise formulation

Logique des prdicats du premier ordre (PP)


- Introduction - Dfinitions - Thorie des modles - Thorie de la dmonstration - Proprits fondamentales de (PP) - Dcidabilit de (PP) - Principe de rsolution

Dfinition de (PP)
Une thorie du premier ordre consiste en : - un alphabet - un langage ou ensemble de mots forms partir de l'alphabet - un ensemble d'axiomes - un ensemble de rgles d'infrence

Alphabet de (PP) (1/5)


Il est constitu des ensembles disjoints suivants : - les constantes d'individus : chanes alphanumriques commenant par une lettre minuscule (underscore autoris) Exemples : socrate, { a, b, c, ... }, 127, x_20 Les constantes reprsentent des entits individuelles. - les symboles de fonctions : un foncteur est une chane alphanumrique commenant par une minuscule, comme f, g, h, ... Chaque foncteur possde une arit, qui est le nombre d'arguments auxquels le foncteur peut s'appliquer. Exemples : - carr( x ) d'arit 1, - plus( 3, 4.2 ) d'arit 2 Remarque : les constantes peuvent donc tre considres comme des foncteurs d'arit 0.

Alphabet de (PP) (2/5)


Les foncteurs servent construire les termes du langage. Terme : <symbole fonctionnel>( <nom_indiv1>, ..., <nom_indivn> ) Arit n Chacun de ces objets peut lui-mme tre compos

- les symboles de variables : chanes alphanumriques commenant par une majuscule, comme { X, Y, Z, ... }. Une variable peut tre substitue par un terme.

Alphabet de (PP) (3/5)


- les symboles de prdicat : permettent de formaliser les relations entre objets. Ce sont des chanes alphanumriques commenant par une minuscule, comme p, q, r... A un symbole de prdicat est associ une arit, qui indique le nombre de termes auxquels il s'applique. Exemples : - aime( X, femme( X ) ) : X aime sa femme Nom de la femme de l'objet X - aime( X, chocolat ) : X aime le chocolat - p( f( g( X ) ), a, h( X, v( a ) ) )

Alphabet de (PP) (4/5)


- les connecteurs : ngation : conjonction : disjonction : implique : est quivalent - les symboles de ponctuation { ( , ) } utiliss pour amliorer la lisibilit et lever les ambiguits - les quantificateurs : universel : existentiel

Alphabet de (PP) (5/5)


Attention au risque d'ambiguit entre symboles de prdicat et symboles de fonction. Exemple : pre( georges ) Cela peut tre interprte comme la fonction qui, l'objet georges, associe le nom de son pre. Mais cela peut galement exprimer le fait que son argument est ou n'est pas pre. La diffrence s'tablit au niveau syntaxique : - un symbole de fonction ne peut jamais apparatre en tte d'un atome et peut apparatre des niveaux plus internes, - un symbole de prdicat ne peut apparatre qu'en tte d'un atome.

Le langage (PP) (1/7)


- les termes sont dfinis par les rgles suivantes : t1) toute variable est un terme t2) toute constante est un terme t3) si t1, t2, ..., tn sont des termes et f est un symbole fonctionnel d'arit n, alors f( t1, t2, ..., tn ) est un terme Exemples : 127 (constante) ALPHA_3 (variable) plus( 3, x ) (terme structur) Objets (complexes)

- les atomes (littral ou formule atomique) sont une construction syntaxique de la forme : p( t1, t2, ..., tn ) o p est un symbole de prdicat d'arit n et o t1, t2, ..., tn sont des termes. Exemples : homme( Socrate ) prcde( 5, -2 ) Proprits des objets

Le langage (PP) (2/7)


- les formules lient des atomes l'aide des connecteurs, selon les rgles suivantes : f1) tout atome est une formule f2) si et sont deux formules, alors : (), ( ), ( ), ( ), ( ) sont des formules f3) si est une formule et X une variable, alors : (X ), (X ) sont des formules. Le langage du premier ordre est l'ensemble des formules correctement construites partir des symboles de son alphabet.

Le langage (PP) (3/7)


Remarques : - La formule (X ) permet de signifier que tout objet substituable la variable X possde la proprit dcrite par la formule . - La formule (X ) permet de signifier qu'il existe au moins un objet substituable la variable X qui possde la proprit dcrite par la formule . X = variable quantifie (ou variable lie par un quantificateur).

Le langage (PP) (4/7)


Dfinitions : - La porte de X (respectivement X) dans la formule (X ) (respectivement (X )) est la formule . - Une occurrence lie d'une variable dans une formule est l'occurrence suivant immdiatement le quantificateur ou une occurrence dans la porte du quantificateur. Toute autre occurrence est libre. Exemple : = X p(X) q( g( y(a, f( X ) ) ) ) Occurrences lies Occurrence libre - Une formule close est une formule sans variables libres, comme

X Y (p(X,Y) q( X ))

Le langage (PP) (5/7)


Dfinitions (suite) : - Une formule terminale (ground formula) est une formule sans aucune variable.

La rgle de priorit des connecteurs permet d'allger l'criture des formules : Priorit la plus forte , , ,

Priorit la plus faible

Le langage (PP) (6/7)


Exemples : - (X (Y (p( X, Y ) q( X )))) peut tre rcrite en X Y (p( X, Y ) q( X )))) Porte de Y Porte de X - ( (X (p( X, a ) q( f( X ) )))) peut tre rcrite en X (p( X, a ) q( f( X ) )) Porte de X

Le langage (PP) (7/7)


Similitudes avec les langages structure de blocs : Bloc A Var X Bloc B Var Y Y=X FinBloc B X=Z FinBloc A Occurrence libre de Z dans A. Occurrence lie de X dans A. Variable locale au bloc B = occurrence lie de Y dans B par la dclaration Var Y. Occurrence libre de X dans B mais lie dans A.

Description de structures lmentaires dans (PP)


- Expression des proprits des listes - Expression des proprits des arbres binaires

Expression des proprits des listes dans (PP) (1/5)


Introduction d'un foncteur d'arit 2 : . (constructeur de listes). Utilis en notation infixe : H.T est la liste form d'un lment H et d'une liste T. Exemple : .( a, nil ) dsigne la liste comportant un seul lment a; nil dsigne la liste vide. 1) Axiomatisation de la dfinition d'une liste L est une liste ssi : - L est la liste vide ou - L se dcompose en un lment suivi d'une liste L (liste( L ) (L = nil) U L1 ((L = U.L1) (liste( L1 )))

Expression des proprits des listes dans (PP) (2/5)


2) Prdicat d'appartenance d'un lment une liste X appartient la liste L ssi : - X est le premier lment de L ou - X figure dans le reste L1 de la liste Y.L1 X L (dans( X, L ) L1 (liste( L1 ) ((L = X.L1) Y ((L = Y.L1) dans( L1, X )))))

Expression des proprits des listes dans (PP) (3/5)


3) Prdicat exprimant la longueur d'une liste N est la longueur de L ssi : - L est la liste vide et N est gal 0 ou - L s'crit X.L1 et N est la longueur de L1 augmente de 1. L N (long( L, N ) ((L = nil) (N = 0)) X L1 N1 ((liste( L1 ) (long( L1, N1 )) (add( N1, 1, N )))) ((L = X.L1)

Expression des proprits des listes dans (PP) (4/5)


4) Prdicat exprimant la concatnation de deux listes L3 est la concatnation de L1 devant L2 ssi : - L1 est la liste vide et L2 = L3 ou - si le reste L31 de L3 est la concatnation du reste L11 de L1 devant L2 et si L3 est produit par juxtaposition de la tte de L1 et de L31. L1 L3 X L11 L31 L2 L2

Expression des proprits des listes dans (PP) (5/5)


4) Prdicat exprimant la concatnation L1 L2 L3 (conc( L1, L2, L3 ) X L11 L31 (liste( L11 ) (liste( L31 ) (L1 = X.L11) (L3 = X.L31) conc( L11, L2, L31 ) )) ((L3 = nil) (L2 = L3 ))

Expression des proprits des arbres binaires dans (PP) (1/2)


1) Axiomatisation de la structure d'arbre binaire On introduit le foncteur d'arit 3 . Un arbre binaire peut tre vide, auquel cas il est reprsent par la constante nil. Sinon, il se dcompose en un sous-arbre gauche, une racine et un sous-arbre droit. D'o la dfinition : T (arbrebin( T ) (T = nil) Tg Td R (arbrebin( Tg ) arbrebin( Td ) (T = t( Tg, R, Td ))))

Expression des proprits des arbres binaires dans (PP) (2/2)


2) Prdicat d'appartenance un arbre binaire X est dans T ssi : - X est la racine de T ou - X apparat soit dans le sous-arbre gauche Tg, soit dans le sous-arbre droit Td T X (dans( T, X ) Tg Td (T = t( Tg, X, Td )) Tg Td R ((T = t( Tg, R, Td )) (dans( Tg, X ) (dans( Td, X ))))

Logique des prdicats du premier ordre (PP)


- Introduction - Dfinitions - Thorie des modles - Thorie de la dmonstration - Proprits fondamentales de (PP) - Dcidabilit de (PP) - Principe de rsolution

Thorie des modles


Objectif : Utiliser une mthode permettant de dgager une interprtation smantique de nos formules (vraies ou fausses ?). Problmes : Tables de vrit ne peuvent plus tre utilises, car les variables possdent un domaine de valeur. Solution : Utiliser une fonction d'interprtation permettant de donner une valeur de vrit un prdicat en fonction de la valeur des termes qui le composent. Exemple : prdicat p( X ) = X est bleu oprant sur le domaine de valeurs { extraterrestre, terrien, schtroumpf }. Interprtation possible de p...

Interprtation des langages du premier ordre (1/6)


Dfinition #1 : dfinition d'une interprtation Soit L un langage du premier ordre. L'interprtation pour le langage L est dfinie par : a) un ensemble D non vide = le domaine d'interprtation b) A chaque symbole de constante individuelle, on associe un lment de D. c) A chaque symbole de fonction d'arit n (n 1) de L, on associe une fonction de Dn D. Si f est ce symbole de fonction, la fonction associe sera not f'. d) A chaque symbole de prdicat d'arit n (n 1) de L, on associe une application de Dn { vrai, faux }. Si p est ce symbole de prdicat, l'application associe sera note p'.

Interprtation des langages du premier ordre (2/6)


Dfinition #2 : affectation d'une variable relativement une interprtation Soit I une interprtation pour un langage du premier ordre L. I est dfinie par a), b), c) et d) comme prcdemment. Une affectation des variables de L relativement I est l'association chacune des variables de L d'un lment de D, domaine d'interprtation de I.

Interprtation des langages du premier ordre (3/6)


Dfinition #3 : association d'une valeur un terme de langage Soient : L un langage du premier ordre, I une interprtation de L, D le domaine d'interprtation de I, A une affectation des variables de L relativement I. La valeur du terme t relativement I est dfinie par : - si t est la constante a, alors sa valeur t' est l'lment a' D. - si t est la variable x alors t' est l'lment de D qui est associ x par l'affectation A. - si t est de la forme f( t1, t2, ..., tn ), alors t' sera f'( t'1, t'2, ..., t'n ), o f symbole de fonction d'arit n et t1, t2, ..., tn des termes. t'1, t'2, ..., t'n sont des valeurs calcules selon les rgles a), b), c) et d), avec t'1, t'2, ..., t'n D et f'( t'1, t'2, ..., t'n ) D.

Interprtation des langages du premier ordre (4/6)


Dfinition #4 : interprtation des formules (1/3) A une formule de L on peut associer une valeur de vrit comme suit : a) si la formule est l'atome p( t1, t2, ..., tn ) alors la valeur de vrit associe sera p'( t'1, t'2, ..., t'n ) { vrai, faux }, o : - p est un symbole de prdicat d'arit n, - t1, t2, ..., tn sont des termes - t'1, t'2, ..., t'n sont les affectations de t1, t2, ..., tn

Interprtation des langages du premier ordre (5/6)


Dfinition #4 : interprtation des formules (2/3) b) si la formule est f, f g, f g, f g ou f g, o f et g sont des formules, la valeur de vrit de la formule rsultante est donne par la table suivante :

f 0 0 1 1

g 0 1 0 1

f 1 1 0 0

fg 0 0 0 1

fg 0 1 1 1

f g f g 1 1 0 1 1 0 0 1

Interprtation des langages du premier ordre (6/6)


Dfinition #4 : interprtation des formules (3/3) c) si la formule est de la forme x f alors sa valeur de vrit sera VRAI s'il existe d D tel que f a pour valeur de vrit VRAI quand on associe x la valeur d. d) si la formule est de la forme x f alors sa valeur de vrit sera VRAI si d D, f a la valeur de vrit VRAI lorsque l'on associe x n'importe quelle valeur d.

Exemple d'interprtation de formule


Soit la formule A = x (p(x) q) o p est dfini sur le domaine D = { 1,2 }.

Dfinitions et modles (1/2)


Formule valide : Une formule est valide ssi elle est vraie pour toute interprtation I. On note alors A. Formule satisfiable : Une formule A est dite satisfiable ssi elle est vraie pour au moins une interprtation I. On dit aussi que I est un modle de A. Formule insatisfiable : Une formule est insatisfiable ssi elle n'admet pas de modle. Consquence logique : Soient une formule B et une famille de n formules A1, ..., An. B est consquence logique des Ai si pour tout modle M des Ai, M est aussi un modle de B. On note alors A1, ..., An B.

Dfinitions et modles (2/2)


Pour rsumer, il y a 4 classes de formules : - les tautologies, valides quelque soit l'interprtation - les satisfiables, qui admettent au moins un modle - les falsifiables, o il existe au moins une interprtation qui n'est pas un modle - les insatisfiables, qui n'admettent pas de modles.

Logique des prdicats du premier ordre (PP)


- Introduction - Dfinitions - Thorie des modles - Thorie de la dmonstration - Proprits fondamentales de (PP) - Dcidabilit de (PP) - Principe de rsolution

Les axiomes dans (PP) (1/5)


Soient A, B et C des formules bien formes. A1) Introduction de l'implication : (A (B A) A2) Distribution de l'implication : (A (B C)) ((A B) (A C)) A3) Contraposition : ((A B) (B A)) A1), A2, A3) correspondent aux axiomes de (LP)

Les axiomes dans (PP) (2/5)


Pour introduire A4), dfinissons ce qu'est le renommage de variable. Soit A( X ) une formule ayant X comme variable libre et t un terme. On note A( t ) la formule obtenue en substituant le terme t chaque occurrence de la variable X dans A. La substitution peut tre prcde d'une phase de renommage du nom des variables lies de A de manire ce qu'aucune des variables de t ne se retrouve lie aprs la substitution. Exemple : On veut substituer t = f( Y, u ) X dans : A( X ) = (p( X ) Y X r( X, Y ))

Occurrences libres de X Occurrences lies de X et de Y

Les axiomes dans (PP) (3/5)


Exemple : On veut substituer t = f( Y, u ) la formule A( X ) = (p( X ) Y X r( X, Y )) On remplace les occurrences lies : - X est renomme en X1 - Y est renomme en Y1 On obtient la formule : A( X ) = (p( X ) Y1 X1 r( X1, Y1 )) et on peut dsormais sans risque effectuer la substitution de t = f( Y, u ) la variable X : A( t ) = (p( f( Y, u ) ) Y1 X1 r( X1, Y1 ))

Les axiomes dans (PP) (4/5)


A4) Particularisation : (X A( X )) A( t ) Exemple : Avec A4), la formule Y Z hait( Y, Z ) est drive en Z hait( mre( X ), Z ). On a substitu Y le terme mre( X ). Si on avait sans prcaution substitu Y le terme mre( Z ), on obtiendrait Z hait( mre( Z ), Z ), ce qui exprime une situation beaucoup plus forte que celle que l'on tait autoris dduire de l'antcdent. Pour que la substitution soit ralise correctement, il faut renommer l'occurrence lie de Z, d'o : Z1 hait( mre( Z ), Z1 )

Les axiomes dans (PP) (5/5)


A5) Spcialisation universelle : ((X) (A B)) (A (X) B) si X n'est pas libre dans A

Les rgles d'infrence dans (PP)


R1a) Modus Ponens A AB B R1b) Modus Tollens A BA B R2) Gnralisation A o X est une variable libre dans A X A

Exemple de dmonstration dans (PP)


Soit le thorme suivant dmontrer : (y) (x) D( x, y ) (x) (y) D( x, y ) Dmonstration : A4) (y) (x) D( x, y ) (x) D( x, y ) A4) (x) D( x, y ) D( x, y ) R2) D( x, y ) (y) D( x, y ) R2) (y) D( x, y ) (x) (y) D( x, y ) On pourra dmontrer de faon semblable d'autres thormes : 1) (y) (x) D( x, y ) (x) (y) D( x, y ) 2) (x) D( x ) (x) D( x ) 3) ((x) (y) D( x, y )) (x) (y) (D( x, y )) 4) ((x) (y) D( x, y )) (x) (y) (D( x, y ))

Drivation dans (PP) (1/2)


Soit { A1, A2, ... , Ap } un ensemble de formules. Une formule B est drive de { A1, A2, ... , Ap }, cette drivation tant note { A1, A2, ... , Ap } B, s'il existe une suite finie de formules B1, B2, ..., Bn telles que B =Bn et i { 1, ..., n-1 } :

- soit Bi est un axiome logique, c--d A1), A2), A3), A4) ou A5), - soit Bi est un lment de { A1, A2, ... , Ap }, c--d une hypothse, - soit Bi est obtenue par application d'une des 2 rgles d'infrence une ou plusieurs formules de B1, B2, ..., Bi-1.

Drivation dans (PP) (2/2)


Exemple : Soit l'hypothse x y p( x, y ), on veut en dduire z p( z, z ). 1) x y p( x, y ) 2) x y p( x, y ) y p( z, y ) 3) y p( z, y ) 4) y p( z, y ) p( z, z ) 5) p( z, z ) 6) z p( z, z ) A4) en substituant z x Modus Ponens 1) et 2) A4) en substituant z y Modus Ponens 3) et 4) R2) 5)

Exemple : l'arithmtique formelle (ou thorie des nombres) (1/4)


Ce systme formel (AF), propos par Peano, est une extension fondamentale de (PP). Neuf axiomes sont ajouts, faisant intervenir : - une constante unique, le zro : 0 - quatre oprateurs : - successeur (d'arit 1) avec : - ( n ) not (n+1), - ( 0 ) not 1. - somme + (d'arit 2) - multiplication * (d'arit 2) - galit = (d'arit 2)

Exemple : l'arithmtique formelle (ou thorie des nombres) (2/4)


Soient x, y, z toute suite de symboles de (AF) ne contenant pas le signe = : (A6) (x) x+0 = x (A7) (x) x*0 = 0 (A8) (x) (( x ) = 0) (A9) (x) (y) x+( y ) = ( x+y ) (A10) (x) (y) x*( y ) = x*y + x (A11) (x) (y) (( x ) = ( y )) (x = y) (A12) (x) (y) (x = y) (( x ) = ( y )) (A13) (x) (y) (z) (x = y) ((x = z) (y = z)) (A14) (A( 0 ) et (u) (A( u ) A( ( u ) ))) (u) A( u ) (A14) formalise le raisonnement par rcurrence (induction formelle)

Exemple : l'arithmtique formelle (ou thorie des nombres) (3/4)


Ce systme formel de l'arithmtique formelle (AF) a une importance capitale. En effet, l'arithmtisation peut tre effectu pour tout systme formel. C'est en faisant appel (AF) que les mtathormes de (DH) et de (JP) ont pu tre noncs. Exemple pour (JP) : (A) R :aa : m1 m2 bm1 bm2

a, b et ne sont que des symboles qui peuvent tre remplacs par d'autres symboles, comme 1, 2 et 3 (symboles de AF)... Par exemple, (A) peut tre transform en 1 3 1.

Exemple : l'arithmtique formelle (ou thorie des nombres) (4/4)


(R) peut tre transform en : m1 3 m2 2 m1 3 2 m2. Mais l'opration tre suivi de, qui porte sur des suites de symboles, possde une correspondance dans (AF). En effet, dans l'arithmtique usuelle, pour former le nombre x suivi du nombre y en utilisant la notation dcimale, il suffit de multiplier x par une puissance de 10 et d'ajouter y. Ainsi x y 10n * x + y, avec n le nombre de chiffres de y. L'tude du systme (JP) par exemple peut ainsi compltement tre ramene celle d'un sous-systme de (AF).

Logique des prdicats du premier ordre (PP)


- Introduction - Dfinitions - Thorie des modles - Thorie de la dmonstration - Proprits fondamentales de (PP) - Dcidabilit de (PP) - Principe de rsolution

Proprits fondamentales de (PP) (1/2)


Adquation : Une logique est dite adquate si tout thorme A ( A) est une formule valide ( A). (PP) est adquat : si A alors A. Consistance : Une logique est consistante s'il n'existe aucune formule A telle que A et A. (PP) est consistant.

Proprits fondamentales de (PP) (2/2)


Compltude forte : Une logique est dite fortement complte ssi la relation de consquence valide correspond la relation de drivabilit : soit E un ensemble de formules, si E A alors E A. Compltude faible : Une logique est faiblement complte si toute formule valide est un thorme : quand A alors A. La compltude forte implique la compltude faible. (PP) est fortement complet.

Logique des prdicats du premier ordre (PP)


- Introduction - Dfinitions - Thorie des modles - Thorie de la dmonstration - Proprits fondamentales de (PP) - Dcidabilit de (PP) - Principe de rsolution

Dcidabilit de (PP)
Dcidabilit : Une logique est dcidable s'il existe un algorithme capable de dterminer en un nombre fini d'tapes si une formule donne est ou n'est pas un thorme. (PP) est indcidable, ou plus prcisment semi-dcidable.

Logique des prdicats du premier ordre (PP)


- Introduction - Dfinitions - Thorie des modles - Thorie de la dmonstration - Proprits fondamentales de (PP) - Dcidabilit de (PP) - Principe de rsolution

Prambule au principe de rsolution


Remarques pralables : Une dmonstration (ou une dduction) dans (PP) peut tre trs fastidieuse raliser. Pour raliser plus simplement une dmonstration, le principe de rsolution utilise des formules mises sous forme standard. Trois tapes sont ncessaires pour obtenir une telle formule : formule quelconque formule sous forme prnexe formule skolmise formule sous forme standard

Forme prnexe d'une formule


Matrice : Une matrice est une formule du calcul des prdicats sans quantificateurs. Forme prnexe : Une forme prnexe est une formule de la forme : Q1 x1 Q2 x2 ... Qn xn M o Qi dsigne ou et M est une matrice. Forme prnexe quivalente : Toute formule admet une forme prnexe quivalente.

Mise sous forme prnexe d'une formule


1. remplacer les connecteurs et par des et 2. renommer certaines variables lies de manire n'avoir plus de variables quantifies deux fois 3. supprimer les quantificateurs inutiles, s'il y en a 4. transfrer toutes les occurrences de la ngation en utilisant les rgles de rcriture suivantes : 4a. (A B) se rcrit en (A B) 4b. (A B) se rcrit en (A B) 4c. A se rcrit en A 4d. A se rcrit en A 5. transfrer les quantificateurs en tte de formule, en utilisant la commutativit, l'associativit et le renommage de variables si ncessaire : 5a. (x A B) se rcrit en x (A B) 5b. (x A B) se rcrit en x (A B) 5c. (x A B) se rcrit en x (A B) 5d. (x A B) se rcrit en x (A B)

Exemple de mise sous forme prnexe


Soit la formule : x p( x ) y q( y ) y p( y ) Quelle est sa forme prnexe ?

Skolmisation et forme standard


Algorithme de skolmisation : - transformer la formule F en forme prnexe - remplacer toute variable quantifie existentiellement par un symbole de fonction dont les arguments sont les variables qui sont quantifies universellement et qui prcdent notre variable - supprimer les quantificateurs (universels et existentiels), devenus inutiles. Exemple : Skolmisation de l'exemple prcdent. Forme standard : Une formule sous forme standard est une matrice forme d'une conjonction de clauses.

Principe et algorithme de rsolution (1/3)


Principe de rsolution : Soient N une forme standard et C1 et C2 deux clauses de N.

Soient 2 littraux l1 C1 et l2 C2, une substitution de renomSoient un unificateur de (C1) et C2 et R la rsolvante : R = ( ( C1 \ { l1 } ) (C2 \ { l2 } ) )

mage telle que (C1) et C2 n'aient aucune variable libre commune.

Alors N et N { R } sont logiquement quivalentes. Remarque : Ce principe ne suffit pas infrer la clause vide quand elle est consquence logique d'un ensemble de clauses. On adjoint ce principe une rgle de factorisation.

Principe et algorithme de rsolution (2/3)


Rgle de factorisation : Soit C1 une clause de la forme l1 l2 ... ln telle que l1 et l2 sont deux littraux unifiables. Soit un unificateur de l1 et l2. La clause C'1 = ( C1 \ { l2 } ) est une consquence logique de C1. C'1 est appel facteur de C1.

Principe et algorithme de rsolution (3/3)


Algorithme de rsolution : Soit N une formule sous forme standard. 1. Si N, l'ensemble est inconsistant et la rsolution termine. 2. Prendre C1 et C2 deux clauses ou facteurs de clauses dans N, telles que l1 C1, l2 C2 et l1, l2 unifiables. 3. Trouver un unificateur de l1 et l2 et calculer la rsolvante R. 4. Recommencer en 1 en remplacant N par N { R }.

INTERPRETATION Constantes Symboles fonctionnels Prdicats Formules atomiques Formules bien formes Axiomes Drivations Thormes
Calcul des prdicat

Non Et Ou Implique Quelque soit Il existe Objet Fonctions Relations Phrases analyses Combinaison de phrases Preuve smantique Expressions vraies
Discours logique prdicatif

Dfinition d'un systme formel du 1er ordre


Tout systme formel qui comporte les axiomes de (PP) est dit du premier ordre. Le qualificatif premier ordre tient au fait que dans (PP), seules les variables prdicatives (symboles les plus internes des formules) peuvent tre quantifies. A l'ordre 2, les prdicats eux-mmes peuvent tre quantifis. Ordres suprieurs : les quantificateurs agissent sur les prdicats de prdicats.