Vous êtes sur la page 1sur 49

Logique formelle Chapitre 2

Le Calcul des Prdicats Logique du 1er ordre CP1

ENSI

Logique formelle

Calcul des prdicats

I Syntaxe
1. 2. 3. 4. 5. Le langage du premier ordre Termes du langage Formules du langage Variables libres, variables lies Substitution dans les formules

II Smantique
ENSI Logique formelle 2

Calcul des prdicats

Syntaxe

1- Le langage du 1er ordre


Le langage du calcul des prdicats est form de : + Un ensemble infini dnombrable de symboles de variables X = { x, y, z, , v, w, } Des connecteurs logiques : , , , , + Des quantificateurs : quantificateur existentiel ( il existe ) quantificateur universel ( pour tout ) Des symboles auxiliaires
ENSI

( ) ,
Logique formelle

suite
3

Calcul des prdicats + Un ensemble de symboles de prdicats (relations) R = UnR n = {P, Q, R,, p, q, r, }

Syntaxe

R0 R n : ensemble des relations darit n (n-aire) R 0 : lensemble des relations darit 0


(les variables propositionnelles) Des constantes logiques : V , F + Un ensemble de symboles de fonctions (c--d ayant n arguments)

F = Un Fn = { f , g, h, , a, b, c, } F0 = { constantes }
ENSI Logique formelle 4

Calcul des prdicats

Syntaxe

Lalphabet du langage du premier ordre est lensemble

A1= { , , , , } U {, } U {V,F} U { (, ) , ,} U R U F U X
Remarques On retrouve lalphabet du langage des propositions

A0 = { , , , , } U {V, F} U { (, ) , , } U R 0
(R = R 0 , F = , X = ) Si parmi les relations (les lments de R ) il y a la relation de lgalit = , on dit que le langage est un langage galitaire
ENSI Logique formelle 5

Calcul des prdicats

Syntaxe

2- Termes du langage
Les termes sont construits partir des variables X et des symboles de fonctions F Dfinition Lensemble des termes, not T(F, X), est le plus petit ensemble contenant X U F0 et qui est clos (stable) pour lopration qui pour tous f Fn (n > 0) et t1, , tn T (F, X) associe f t1tn

ENSI

Logique formelle

Calcul des prdicats


Autrement dit

Syntaxe

1. une variable est un terme 2. une constante est un terme 3. si f Fn et t1,, tn sont des termes ( n > 0) alors f t1tn est un terme 4. rien dautre nest un terme Remarque Pour des raisons de lisibilit, le terme f t1tn sera not
ENSI Logique formelle

f(t1,,tn)
7

Calcul des prdicats Exemple

Syntaxe

f(x,g(y,z)) est un terme si f et g sont des symboles de fonction darit 2 ( F2 )

Arbre de dcomposition dun terme Larbre de dcomposition du terme f(x,g(y,z)) x

f g y z

ENSI

Logique formelle

Calcul des prdicats Thorme de lecture unique

Syntaxe

Pour tout terme t T (F,X) un et un seul des cas suivants se prsente : 1. t est une variable (tX)

2. t est une constante ( t F0 ) 3. il existe un unique symbole de fonction f Fn (n >0) et un unique n-uplet de termes (t1, , tn) tels que t = f(t1, , tn)
" = " galit syntaxique
ENSI Logique formelle 9

Calcul des prdicats Substitution dans les termes Soient t un terme

Syntaxe

x1, x2, , xn des variables deux deux distinctes t [ x1 t1 , x2 t2 , , xn tn ] est le mot obtenu en substituant respectivement les termes Proposition Le mot t [x1 t1, x2 t2, , xn tn ] est un terme
ENSI Logique formelle 10

t1, t2, , tn aux variables x1, x2, , xn

Calcul des prdicats

Syntaxe

Exemples y [x1 t1, x2t2, , xntn] = y a [x1 t1, x2t2, , xntn] = a ( y une variable X ) ( a une constante t F0 )

f(x1, x2,,xk) [x1 t1, x2 t2, , xk tk,, xn tn] = f(t1,,tk)

ENSI

Logique formelle

11

Calcul des prdicats

Syntaxe

3- Formules du langage
Dfinition Formule atomique A est une formule atomique ssi A scrit sous la forme P(t1,,tn) avec P est un symbole de prdicat n-aire (P R n) t1,, tn des termes ( T (F,X)n ) On note par

A(R, F, X) lensemble des formules atomiques

Si n = 0, une formule atomique est une variable propositionnelle


ENSI Logique formelle 12

Calcul des prdicats Dfinition Formules bien formes

Syntaxe

Lensemble L(R , F , X ) des formules de 1er ordre est le plus petit ensemble contenant A(R, F, X) U {V,F} et qui est clos pour les oprations suivantes : A L (R , F , X ) A, B L (R , F , X ) A L (R , F , X ) et x X ( A ) { , , , } { , }
13

(A B) (x A)
Logique formelle

ENSI

Calcul des prdicats


Autrement dit

Syntaxe

1. 2. 3. 4.

Une formule atomique est une formule V et F sont des formules Si A est une formule alors ( A ) est une formule Si A et B sont des formules alors (A B) , (A B),(A B) ,(A B) sont des formules

5.

Si A est une formule alors pour toute variable x X ( x A) et ( x A) sont des formules Rien dautre nest une formule
ENSI Logique formelle 14

6.

Calcul des prdicats Remarques

Syntaxe

Lensemble L(R , F , X ) des formules de 1er ordre est appel le langage du 1er ordre ou le langage du (calcul) des prdicats du 1er ordre On note parfois L (R , F , X ) par seulement L Lensemble des formules propositionnelles

L0 = L (R 0 , , )

ENSI

Logique formelle

15

Calcul des prdicats Arbre de dcomposition dune formule Soit la formule


x y

Syntaxe

x ( y ( P(t,y) z Q(x,f(z)) ) )
x y

P(t,y) z Q(x,f(z)) Arbre homogne


ENSI

P t Arbre htrogne
Logique formelle

z y x Q f z
16

Calcul des prdicats

Syntaxe

Thorme de lecture unique Pour toute formule A L , un et un seul des 4 cas suivants se prsente : 1. A A(R, F, X ) U { V, F } 2. il existe une unique formule B L telle que A = ( B) 3. il existe un unique symbole de connecteur binaire {,, , } et un unique couple de formules ( B, C ) L2 tels que A = (B C) 4. il existe une unique formule B et un unique quantificateur { , } tels que A = (x B)
" = " galit syntaxique
ENSI Logique formelle 17

Calcul des prdicats Dfinition Sous formules

Syntaxe

Soit A une formule. Lensemble des sous-formules de A, not Sf(A), est dfini par induction comme suit : si A un atome alors Sf(A) = {A} si A = B alors Sf(A) = {A} U Sf(B) Sf(A) = {A} U Sf(B) U Sf(C) #{,, , } si A = x B alors Sf(A) = {A} U Sf(B) { , }
ENSI Logique formelle 18

si A = B # C alors

Calcul des prdicats Exemple A : x ( (y P(f(x, y), z)) Q(z) )

Syntaxe

Sf(A) = {A} U Sf( (y P(f(x, y), z)) Q(z) ) = {x ((y P(f(x, y), z)) Q(z))}U{(y P(f(x, y), z)) Q(z)} U Sf(y P(f(x, y), z)) U Sf(Q(z)) = {x ((y P(f(x, y), z)) Q(z)) ; (y P(f(x, y), z)) Q(z)} U { y P(f(x, y), z)} U Sf(P(f(x, y), z)) U {Q(z)} = {x ((y P(f(x, y), z)) Q(z)) ; (y P(f(x, y), z)) Q(z) ; y P(f(x, y), z) ; P(f(x, y), z) ; Q(z) } Remarque Les diffrents sous-arbres de larbre de dcomposition dune formule donnent les diffrentes sous-formules de la formule
ENSI Logique formelle 19

Calcul des prdicats Porte des quantificateurs (scope)


x (P(x) x Q(x)) x (P(x) x Q(x)) x (x P(x)) Q(x) (x P(x)) Q(x)

Syntaxe

x (P(x) Q(x)) x (P(x) Q(x))

x x Q x P x Q x P x

P x

Q x
suite

ENSI

Logique formelle

20

Calcul des prdicats Porte des quantificateurs (suite)


x (P(x) Q(y)) x (P(x) Q(y)) x x (P(x) y Q(x))

Syntaxe

x (P(x) y Q(x)) x

P x Q y P x

y Q x

La porte est lie au dernier nud pre


ENSI Logique formelle 21

Calcul des prdicats

Syntaxe

4- Variables libres, variables lies


Dfinition Variables libres (free) Soit A une formule. Lensemble des variables libres de A, not Var(A), est dfini comme suit : si A est un atome ; de la forme P(t1,, tn) ; alors Var(A) = Var(P(t1,, tn)) = Var(t1) U U Var(tn) si A = B alors Var(A) = Var( B) = Var(B) si A = B C avec { , , , } , alors Var(A) = Var(B C) = Var(B) U Var(C) si A = x B avec { , }, alors Var(A) = Var(x B) = Var(B) \ {x}
ENSI Logique formelle 22

Calcul des prdicats Dfinition Variables libres dun terme

Syntaxe

Toutes les occurrences des variables dun terme t sont des variables libres de t c--d Var(x) = { x } Var(c) = ( c constante)

Var(f(t1,, tn)) = Var(t1) U U Var(tn) ( f symbole de fonction )


ENSI Logique formelle 23

Calcul des prdicats

Syntaxe

Dfinition Une formule A est dite close si Var(A) = (A na pas de variables libres) Exemple A : x y P(f(x, y), z) C : x P(x) Var(A) = Var(y P(f(x, y), z)) \{x} = (Var(P(f(x, y), z)) \{y}) \{x} = ((Var(f(x, y)) U Var(z)) \{y} ) \{x} = ((({x, y} U {z})) \{y}) \{x} = (({x, y, z}) \{y}) \{x} = {z} donc A nest pas close Var(C) = Var(x P(x)) = Var(P(x)) \{x} = {x} \{x} = donc C est close
ENSI Logique formelle 24

Calcul des prdicats Dfinition Variables lies

Syntaxe

Soit A une formule. Lensemble des variables lies de A, not BVar(A) (B pour bound), est dfini comme suit : si A est un atome si A = B alors alors BVar(A) = BVar(A) = BVar( B) = BVar(B)

si A = B C ; avec { , , , } ; alors BVar(A) = BVar(BC) = BVar(B) U BVar(C) si A = x B ; avec { , } ; alors BVar(A) = BVar(x B) = BVar(B) U {x}
ENSI Logique formelle 25

Calcul des prdicats Exemple A : x (P(x, y) Q (x)) B BVar(B) = BVar(P(x, y) Q(x))) U {x} = (BVar(P(x,y) U BVar(Q(x))) U {x} = ( U ) U {x} = {x} BVar(C) = BVar( P (x, y) z Q (z)) U {y} = (BVar(P(x,y)) U (Bvar(Q(z)) U {z}) ) U {y} = ( U ( U {z}) ) U {y} = {z, y}

Syntaxe y ( P(x, y) z Q (z)) C

BVar(A) = BVar(B) U BVar(C) = {x, y, z}


ENSI Logique formelle 26

Calcul des prdicats Exemple (suite) A : x (P(x, y) Q (x)) B

Syntaxe

y ( P(x, y) z Q(z)) C

Var(B) = Var(P(x, y) Q(x)) \{x} = {x, y, x} \{x} = {y} Var(C) = Var( P (x, y) z Q(z)) \{y} = ( Var(P(x,y) U (Var(Q(z) \{z}) ) \{y} = ( ({x, y} U ({z} \{z}) ) \{y} = {x} Var(A) = Var(B) U Var(C) = {x, y}
ENSI Logique formelle 27

Calcul des prdicats Remarque

Syntaxe

Le nom dune variable peut tre en mme temps libre et li mais pas son occurrence (une occurrence ne peut tre que libre ou lie mais pas les deux en mme temps)

Exemple

suite
ENSI Logique formelle 28

Calcul des prdicats

Syntaxe

A : x (P(x, y) Q (x)) y ( P(x, y) z Q(z)) Var(A) = {x, y} BVar(A) = {x, y, z}


x y

P x y Q x x
ENSI Logique formelle

P y

z
Q z
29

Calcul des prdicats Remarque Une variable lie par est dite quantifie universellement Une variable lie par est dite quantifie existentiellement

Syntaxe

ENSI

Logique formelle

30

Calcul des prdicats

Syntaxe

5- Substitution dans une formule


Substitution de termes des variables Soient A une formule t1, , tn des termes x1, , xn des variables Le mot A[x1t1, , xntn] est calcul rcursivement comme suit : si A = P(s1, , sn) alors P(s1, , sn)[x1t1, , xntn] = P(s1[x1t1, , xntn], , sn[x1t1, , xntn])
suite
ENSI Logique formelle 31

Calcul des prdicats si A = B

Syntaxe

( B)[x1t1, , xntn] = (B[x1t1, , xntn])

si A = B # C ; avec # { , , , } ; alors (B # C)[x1t1, , xntn] = B[x1t1, , xntn] # C[x1t1, , xntn] si A = x B ; avec {, } ; si x {x1, , xn} alors (x B)[x1t1, , xntn] = x (B[x1t1, , xntn]) si x {x1, ,xn} ; soit x = xi ; alors (x B)[x1t1, , xntn] = x (B[x1t1, , xi-1ti-1, xi+1ti+1, , xntn])
ENSI Logique formelle 32

Calcul des prdicats

Syntaxe

Remarque La substitution ne sapplique quaux occurrences des variables libres Exemple Soit la formule A x (y (R(y,x) (x = z)) xz (R(y,z) (f(z,x) = c))) A[x g1(y1), y g2(z1), z g3(x1)] = x (y (R(y,x) (x = g3(x1))) (xz (R(g2(z1),z) (f(z,x) = c)))
ENSI Logique formelle 33

Calcul des prdicats Remarque La substitution interdit lintroduction de variables lies

Syntaxe

On doit passer par le renommage (notion voir dans la partie smantique) Proposition Soient A une formule, t1, ,tn des termes et x1, , xn des variables, alors le mot A [x1t1, , xntn] est une formule

ENSI

Logique formelle

34

Calcul des prdicats

Syntaxe

Substitution des variables propositionnelles dune proposition par des formules Soient A : p ( q r ) B1 : x R(y,x) B2 : P(y,z) z R(y,f(z)) B3 : Q(f(c),z) A [ p B1, q B2, r B3] = B1 ( B2 B3)

= x R(y,x) ( (P(y,z) z R(y,f(z))) Q(f(c),z))

ENSI

Logique formelle

35

Calcul des prdicats Thorme Soient A une formule propositionnelle B1 , B2,, Bn des formules dordre 1 p1, p2, , pn des variables propositionnelles alors le mot

Syntaxe

A [ p1 B1, p2 B2, , pn Bn ] est une formule dordre 1

Remarque On peut construire lensemble de toutes les formules dordre 1 par substitution des variables propositionnelles dans les formules dordre 0
ENSI Logique formelle 36

Calcul des prdicats

I Syntaxe II Smantique
1. Structure et L-structure 2. 3. 4. 5. Interprtation dune formule Satisfiabilit - Validit Equivalence et consquence smantique Formes clausales
ENSI Logique formelle 37

Calcul des prdicats

Smantique

Soit le thorme suivant sur les entiers naturels (division euclidienne) : Pour tout couple dentiers naturels (x,y), il existe un unique couple dentiers naturels (z,t) tel que t < y et x = y * z + t Soit la formule de 1er ordre suivante : x y z t ( ( P(t,y) E(x,f(g(y,z),t)) ) z t ( (P(t,y) E(x, f(g(y,z), t ))) (E(z,z) E(t,t)) ) )

ENSI

Logique formelle

38

Calcul des prdicats

Smantique

x y z t ( ( P(t,y) E(x,f(g(y,z),t)) ) z t ( (P(t,y) E(x, f(g(y,z), t ))) (E(z,z) E(t,t)) ) ) Cette formule formalise la division euclidienne condition que : le symbole de prdicat P reprsente < , le symbole E reprsente = les symboles de fonction f et g reprsentent respectivement les symboles + et * les variables x, y, z , t, z et t sont des entiers naturels
ENSI Logique formelle 39

Calcul des prdicats Pour pouvoir interprter une formule il faut :

Smantique

dfinir un univers D sur lequel les lments de X (les variables) prennent leurs valeurs associer aux lments de R des relations sur lunivers D associer aux lments de F (les symboles de fonction) des fonctions sur lunivers D Il faut dfinir une structure
ENSI Logique formelle 40

(les symboles de relation)

Calcul des prdicats

Smantique

1- Structure et L-structure

Dfinition Structure On appelle structure tout triplet (D, FD , RD ) compos de : un ensemble de valeurs D, appel domaine un ensemble FD de fonctions sur D un ensemble RD de relations sur D

ENSI

Logique formelle

41

Calcul des prdicats Remarque

Smantique

Lorsque lensemble des fonctions FD est vide la structure sappelle un systme relationnel Lorsque lensemble des relations RD est vide la structure sappelle une algbre Exemples ( , { * , +, - } , { = , < , > } ) est une structure ( , { < , >} ) est un systme relationnel ( , { * , + } ) est une algbre
ENSI Logique formelle 42

Calcul des prdicats Dfinition Interprtation

Smantique

Une interprtation I du langage de 1er ordre L (X, F, R ) dans la structure (D, FD , RD ) est une application de F FD et de

R RD qui conserve les arits


F Fn QR Remarque On note par fI la valeur du symbole de la fonction f par I et par QI la valeur du symbole de la relation Q par I
ENSI Logique formelle 43

f : D n D , f FD
n

Q D n , Q RD

Calcul des prdicats Dfinition L-structure

Smantique

Soit L un langage du 1er ordre, on appelle L-structure, note (D, I), la structure associe au langage L par linterprtation I Exemple Soit L (X, {f, g}, {P, Q}) un langage

Une L-structure (,I) associe au langage L dans la structure (, {* ,+, -}, {=, <, >} ) est par exemple donne par linterprtation I suivante : fI = + , gI = * , PI = = , QI = < Les variables de lensemble X prennent leurs valeurs dans
ENSI Logique formelle 44

Calcul des prdicats Exemple Le langage

Smantique

Pour lexemple de la division euclidienne

L ( X = {x, y, z , t, z, t,} , F = {f, g}, R = {P, E} )


Une structure possible est ( D = , FD = {* , +, -}, RD = {=, <, >} ) La L-structure associe au langage L est (, I) avec linterprtation I dfinie comme suit : fI = + , gI = * , PI = <, EI = = Les variables ( X ) prennent leurs valeurs dans
ENSI Logique formelle 45

Calcul des prdicats

Smantique

2- Interprtation dune formule


Soient x1,, xn valeurs de D des variables de X et d1,, dn des

Les variables nont pas une interprtation fixe par une

L-structure. Pour leurs affecter des valeurs, nous utilisons


les notations (en interne ) suivantes : (x1 d1, , xn dn) ou (x1, , xn) (d1, , dn) qui dsignent laffectation des valeurs d1,, dn aux variables x1, , xn . Lordre est sans importance
ENSI Logique formelle 46

Calcul des prdicats Interprtation des termes

Smantique

Soient x1, , xn des variables, d1, , dn des valeurs D soit t un terme. Linterprtation de t dans la L-structure (D, I), est dfinie inductivement comme suit : si t = xi i[1,n] note [t]I

et

alors [t]I = [xi]I (x1d1, , xndn) = di alors

si t = f(t1, , tm)

[t]I = [f(t1, , tm)]I (x1d1, , xndn) = fI([t1] I (x1d1, , xndn),, [tm]I (x1d1, , xndn))
ENSI Logique formelle 47

Calcul des prdicats Remarque [c]I (x1d1, , xndn) = cI [x]I (x1d1, , xndn) = x

Smantique

c symbole de constante x variable distincte des xi

ENSI

Logique formelle

48

Calcul des prdicats Interprtation des formules

Smantique

Linterprtation dune formule du 1er ordre dans la

L-structure (D, I), est calcule inductivement comme suit :


[V]I (x1d1,,xndn) = VB [F]I (x1d1,,xndn) = FB [P(t1,, tm)]I (x1d1, , xndn) = PI ([t1]I (x1d1, , xndn), , [tm]I (x1d1, , xndn))
suite
ENSI Logique formelle 49

Calcul des prdicats Interprtation des formules (suite)

Smantique

[ A]I (x1d1, , xndn) = B ([A]I (x1d1, , xndn)) [A B]I (x1d1, , xndn) = [A]I (x1d1, , xndn) #B [B]I (x1d1, , xndn) #{,, , } #B { B , B , B , B }

suite
ENSI Logique formelle 50

Calcul des prdicats Interprtation des formules (suite)

Smantique

[x A]I (x1d1, , xndn) = VB si pour tout d D [A]I (x1d1, , xndn, x d) = VB = FB sinon

[x A]I (x1d1, , xndn) = VB sil existe d D tel que [A]I (x1d1, , xndn, x d) = VB = FB sinon

Les x1,, xn sont les variables libres de la formule, ils doivent tre distincts de x
ENSI Logique formelle 51

Calcul des prdicats Exemple A : x (P(x) Q(f(x),a))

Smantique

= {1, 2}

I : aI = 1 PI = {2}

fI : 1 2 21

QI = {(1,1), (1,2), (2,2)} [P(x) Q(f(x),a)]I (x1) = PI(1) B QI(2,1) = FB B FB = VB [P(x) Q(f(x),a)]I (x2) = PI(2) B QI(fI(2),aI) = PI(2) B QI(1,1) = (VB B VB) = VB Pour x = 1 et x = 2, la formule est vraie, donc
ENSI Logique formelle

[A]I = VB
52

Calcul des prdicats Dfinition Interprtation

Smantique

On appelle interprtation dune formule A dans la L-structure (D, I), la fonction [A]I var(A)D

Note simplement [A]I

ENSI

Logique formelle

53

Calcul des prdicats Exemple B : x ( P(x,c) P(y,f(y)) )

Smantique

D1 =
I1 : cI1 = 0 fI1 : succ PI1 :

D2 = {0, 1}
I2 : cI2 = 0 fI2 : 0 1 10 PI2 : =

D3 = {0, 1}
I3 : cI3 = 1 fI3 : x 1 PI3 : =

suite
ENSI Logique formelle 54

Calcul des prdicats Exemple (suite)

Smantique

[B]I1 = x ((x 0) (y succ(y))) = F V = V donc [B]I1 = V [B]I2(y0) = x ((x = 0) (0 = 1)) = F F = F [B]I2(y1) = x ((x = 0) (1 = 0)) = F F = F donc [B]I2 = F [B]I3(y0) = x ((x = 1) (0 = 1)) = F F = F [B]I3(y1) = x ((x = 1) (1 = 1)) = F V = V linterprtation de [B]I3 dpend des valeurs de y
ENSI Logique formelle 55

Calcul des prdicats Remarque

Smantique

Caractre polymorphe de la fonction Interprtation Une interprtation I est une application

F FD et R RD
Dans une L-structure (D, I) : linterprtation dun terme est une fonction de T(F, X) , D n D linterprtation dune formule est une application de

L(R ,F,X), D n { VB, FB } L(R ,F,X) { VB, FB }


ENSI Logique formelle

(formule non close) (formule close)


56

Calcul des prdicats Remarque (suite)

Smantique

Caractre polymorphe de la fonction Interprtation dans le cas du CP0 Une interprtation I est une application (distribution de valeurs de vrit)

R 0 { VB, FB }
Linterprtation dune formule propositionnelle est une application de
ENSI

L0 { VB, FB }
Logique formelle 57

Calcul des prdicats

Smantique

3- Satisfiabilit - Validit
Dfinition Cas dune formule close Soient (D, I) une L-structure interprtant le langage de premier ordre L(R ,F,X ) et A une formule close (Var(A) = ) A est satisfaite (ou satisfiable) par (D, I) ssi [A]I = V Notation (D, I) A La L-structure (D, I) est appele un modle de A Une formule A est satisfiable ssi elle admet un modle. Elle est dite insatisfiable dans le cas contraire Une formule A est dite valide (tautologie) ssi elle est satisfiable par toute L-structure. Notation A Elle est dite invalide dans le cas contraire
ENSI Logique formelle 58

Calcul des prdicats Clture universelle et clture existentielle Soient A une formule non close

Smantique

Var(A) = {x1, , xn} les variables libres de A On appelle clture universelle de A, la formule x1 xn A On appelle clture existentielle de A, la formule x1 xn A
ENSI Logique formelle 59

Calcul des prdicats Dfinition Cas dune formule non close

Smantique

Soient (D, I) une L-structure interprtant le langage de premier ordre L(R , F, X) et A une formule non close A est satisfiable ssi sa clture existentielle est satisfiable A est valide dans la L-structure (D, I) ssi Notation (D, I) A A est valide universellement (tautologie) ssi sa clture universelle est valide
ENSI Logique formelle

sa clture universelle est satisfaite par (D, I)

Notation A
60

Calcul des prdicats

Smantique

Formule close Var(A) =

Formule non close Var(A) = {x1, , xn} Il existe (D, I) : [x1 xn A]I = V

Satisfiable

Il existe (D, I) : [A]I = V

Valide dans/Satisfiable par (D, I) Il existe (D, I) : Valide Pour tout (D, I) : [A]I = V [x1 xn A]I = V

Valide universellement Pour tout (D, I) : [x1 xn A]I = V

ENSI

Logique formelle

61

Calcul des prdicats Exemples A : x (P(x) Q(f(x),a))

Smantique

= {1, 2}

I : aI = 1 PI = {2}

fI : 1 2 , 2 1 QI = {(1,1), (1,2), (2,2)}

B : x (P(x,c) P(y,f(y)))

D1 =
I1 : CI1 = 0 fI1 : succ PI1 :
ENSI

D2 = {0, 1}
I2 : CI2 = 0 fI2 : 0 1, 1 0 PI2 : =
Logique formelle

D3 = {0, 1}
I3 : CI3 = 1 fI3 : x 1 PI3 : =
suite
62

Calcul des prdicats Exemples (suite) [A]I = V donc (D, I) A

Smantique

(A satisfiable)

[B]I1 = V (pour toute valeur de la variable libre y dans D1) c--d [ y B]I3 = V (D1, I1) B (B valide dans (D1, I1) ) [B]I2 = F (pour toute valeur de la variable y dans D2) donc B est invalide [B]I3(y0) = F et
ENSI

[B] (y1) = V
Logique formelle

c--d

[ y B]I3 = V
63

donc B est satisfiable

Calcul des prdicats Exemples (P(x) P(x)) (valide universellement) x (P(x) P(x)) x (P(x) P(x))

Smantique

x ( P(x,x) yz (P(x,z) P(y,z) P(x,z)) ) Propositions A est valide ssi A est insatisfiable ssi A est valide
Logique formelle 64

A est insatisfiable
ENSI

Calcul des prdicats Remarque Cohrence de la notation (D, I) A I A

Smantique

D A D
A

(D, I)

B A

ENSI

Logique formelle

65

Calcul des prdicats Remarque

Smantique

Le CP0 a un pouvoir de modlisation faible mais il est dcidable (il est toujours possible de savoir si une formule est valide ou non) Le CP1 a un pouvoir de modlisation fort (on peut modliser beaucoup dnoncs) mais on na pas un moyen systmatique pour savoir la satisfiabilit dune formule (encore moins sa validit) Le CP1 est semi-dcidable (notion tudier ultrieurement)

ENSI

Logique formelle

66

Calcul des prdicats Proposition Soient A une formule propositionnelle

Smantique

p1, p2, , pn des variables propositionnelles B1, B2, , Bn des formules dordre 1 Si A est une tautologie alors est valide (universellement)
ENSI Logique formelle 67

A [ p1 B1, p2 B2, , pn Bn ]

Calcul des prdicats

Smantique stendent

Satisfiabilit et validit dun ensemble de formules Les notions de validit et de satisfiabilit naturellement un ensemble de formules Soient un ensemble de formules (vent. infinie) Un ensemble de formules est satisfiable ssi il existe une L-structure qui satisfait en mme temps chacune de ses formules Un ensemble de formules est valide si chacune de ses formules est valide Dans le cas o lensemble de formules contient des formules non closes on passe par la clture universelle
ENSI Logique formelle 68

Calcul des prdicats Thorme de compacit


Version 1

Smantique

Pour tout ensemble de formules de 1er ordre admet un modle ssi toute partie finie de admet un modle

Version 2

Pour tout ensemble de formules de 1er ordre est contradictoire ssi admet au moins un sous-ensemble fini contradictoire
suite
ENSI Logique formelle 69

Calcul des prdicats Thorme de compacit (suite)

Smantique

Version 3

Pour tout ensemble de formules de 1er ordre et pour toute formule B B est consquence de ssi

B est consquence dau moins une partie finie de

ENSI

Logique formelle

70

Calcul des prdicats

Smantique

4- Equivalence et consquence smantique


Dfinitions A est consquence logique de B ssi un modle de A tout modle de B est B A Notation

Dans le cas des formules non closes, on passe par la clture universelle : B A ssi ( Var(B) B) ( Var(A) A) On appelle quivalence smantiquement la congruence associ au pr-ordre c--d
ENSI

Notation et B A
71

AB

ssi

A B

Logique formelle

Calcul des prdicats Propositions 1. B A 2. B A ssi ssi (B A) (B A)

Smantique

Toutes les proprits de lquivalence pour le CP0 relatives aux connecteurs restent valables pour le CP1. Auxquelles il faut ajouter des proprits relatives aux quantificateurs.

ENSI

Logique formelle

72

Calcul des prdicats Proprits (x A) x ( A) (x A) x ( A) x (A B) (x A) (x B) x (A B) (x A) (x B) x y A y x A x y A


ENSI

Smantique

y x A
suite
Logique formelle 73

Calcul des prdicats Proprits (suite) ( x A) B ( x A) B x (A B) x (A B)

Smantique

x Var(B) { , } x Var(A)

A (x B) x (A B) A (x B) x (A B)

(x A) B x (A B) (x A) B
ENSI

x Var(B)
suite

x (A B)
Logique formelle 74

Calcul des prdicats

Smantique

Proprits (suite) x (A B) (x A) (x B) (x A) (x B) x (A B) x y A y x A

ENSI

Logique formelle

75

Calcul des prdicats Proprit de renommage x A y A [xy] x A y A [xy]

Smantique

Le renommage est utilis pour purifier une formule c--d viter davoir des occurrences libres et lies dune mme variable dans une mme formule

ENSI

Logique formelle

76

Calcul des prdicats

Smantique

Les notions de consquence et dquivalence smantique stendent naturellement un ensemble de formules Une formule A est consquence logique dun ensemble de formules ( A ) ssi tout modle de est modle de A Deux ensembles de formules ( ) ssi et sont quivalents

toute formule de est consquence de et toute formule de est consquence de Dans le cas o lensemble de formules contient des formules non closes on passe par la clture universelle
ENSI Logique formelle 77

Calcul des prdicats

Smantique

Remarque On appelle une thorie du langage L, un ensemble de formules closes de L Propositions Soient

L un langage du 1er ordre T = {A1, , Am } et S = {B1, , Bp } des thories de L A et B des formules de L


1. La formule A est contradictoire ssi elle nest satisfaite par aucune L-structure
suite
ENSI Logique formelle 78

Calcul des prdicats Propositions (suite)

Smantique

2. La formule A est consquence smantique de la thorie T ssi

T U { A} est contradictoire

3. Si T est consistante et S T , alors S est consistante 4. Si T est consistante, alors T est finiment consistante 5. Si T est contradictoire et T S , alors S est contradictoire 6. 7.

T A et T S , alors T U {A} B
ENSI

S A
suite
79

ssi

T (A B)
Logique formelle

Calcul des prdicats Propositions (suite) 8. 9.

Smantique

T (A B)

ssi

T A et T B ssi ((A1 Am) B)

{A1, , Am} B

10. A est universellement valide ssi A est consquence de la thorie vide 11. A est universellement valide ssi A est consquence de toute thorie de L 12. T est contradictoire ssi T (A A)
suite
ENSI Logique formelle 80

Calcul des prdicats Propositions (suite) 13. T est contradictoire ssi

Smantique

toute formule du langage L est consquence de T 14. T est contradictoire ssi pour toute formule universellement valide A, A est consquence de T 15. T est contradictoire ssi pour toute formule universellement valide A, A est consquence de T 16. T est contradictoire ssi il existe au moins une formule A universellement valide telle que T A 17. {A1, , Am} est contradictoire
ENSI Logique formelle

ssi
suite
81

A1 Am est une formule universellement valide

Calcul des prdicats Propositions (suite) 18. T et S sont quivalents

Smantique

ssi Ils ont les mme modles

19. En remplaant dans la thorie T chaque formule par une formule quivalente, on obtient une thorie quivalente T 20. Si T est contradictoire, alors

S est quivalente T ssi S est contradictoire


21. La thorie T est quivalente la thorie vide ssi toute formule de T est universellement valide 22. Toute L-structure est un modle de la thorie vide 23. La thorie vide est consistante
ENSI Logique formelle

suite
82

Calcul des prdicats Propositions (suite)

Smantique

24. Lensemble de toutes les formules closes de L est une thorie contradictoire 25. Les thories {A} et {B} sont quivalentes ssi A et B sont smantiquement quivalentes 26. Les thories {A1,, Am} et {B1,, Bp} sont smantiquement quivalentes ssi la formule (A1 Am) (B1 Bp) est universellement valide 27. Toute thorie finie est quivalente une thorie rduite une seule formule
ENSI Logique formelle 83

Calcul des prdicats

Smantique

Commentaires sur les quantificateurs logiques Quantificateur existentiel x E E A A


84

il existe x ; il y a (au moins) un x ; au moins un x Labsence donne faux Quantificateur universel x it Exists

pour tout x ; quel(le)(s) que soi(en)t x ; tout x ; tous les x , chaque x , chacun des x for All Labsence donne vrai
ENSI Logique formelle

Calcul des prdicats

Smantique

5- Forme clausale
Forme prnexe Une formule A est dite sous forme prnexe ssi A est de la forme x1 x2 xn B {, }

et la formule B ne contient aucun quantificateur

On dit aussi forme normale prnexe


ENSI Logique formelle 85

Calcul des prdicats Exemples La formule La formule

Smantique

x y (P(x) P(y)) est sous forme prnexe (x P(x)) (y P(y)) nest pas sous forme prnexe

La forme prnexe de x (P(x) x Q(x)) y x ( P(x) Q(y))

est

ENSI

Logique formelle

86

Calcul des prdicats

Smantique

Une forme prnexe dune formule peut tre obtenue en appliquant les transformations suivantes : 1. limination des connecteurs et (A B) (A B) (B A) (A B) ( A B) 2.limination des ngations appliques des sous-formules ( A) A (A B) ( A B) (A B) ( A B) (x A) x ( A) suite (x A) x ( A)
ENSI Logique formelle 87

Calcul des prdicats

Smantique

3. renommage des variables lies si ncessaire x A y A[xy] x A y A[xy] 4. application des lois suivantes : ( x A) B x (A B)
ENSI

{, }

( x A) B x (A B) (x A) (x B) x (A B) (x A) (x B) x (A B) (x A) (x B) x y (A B[xy]) (x A) (x B) x y (A B[xy])
Logique formelle 88

Calcul des prdicats Proposition

Smantique

Toute formule admet une forme prnexe qui lui est quivalente Remarques Plusieurs formes prnexes dune mme formule peuvent tre obtenues (suivant lordre dans lequel on applique les transformations). Elles sont toutes quivalentes De prfrence, quand cest possible, il faut remonter les devant les
ENSI Logique formelle 89

Calcul des prdicats Forme de Skolem

Smantique

A partir dune formule sous forme prnexe, on construit une formule sous forme de Skolem en liminant les quantificateurs existentiels et en introduisant des symboles de fonctions et de constantes dites de Skolem Soit A une formule sous forme prnexe A : x1 x2 xn B {, }

Une forme de Skolem de A est obtenue en ritrant le processus suivant en commenant par la gauche de la formule jusqu limination de tous les quantificateurs existentiels
suite
ENSI Logique formelle 90

Calcul des prdicats

Smantique

1. Si A est de la forme

xi xn B

c--d gauche de xi, il ny a aucun quantificateur universel, alors : on supprime xi on introduit un symbole de constante ci (constante de Skolem) on remplace partout dans la formule B, la variable xi par la constante ci
suite
ENSI Logique formelle 91

Calcul des prdicats

Smantique

2. Si A est de la forme

x1 xm xi xn B

c--d gauche de xi , il y a m quantificateurs universels, alors : on supprime xi on introduit un nouveau symbole de fonction fi ayant m arguments (fonction de Skolem) on remplace partout dans la formule B, la variable xi par la fonction fi(x1, x2, ,xm)
ENSI Logique formelle 92

Calcul des prdicats Exemple A : x y z u v w x y z u v w y z u v w y z y z v w v

Smantique

P(x, y, z) Q(u, x, v, w)

P(x, y, z) Q(u, x, v, w) P(a, y, z) Q(u, a, v, w) P(a, y, z) Q(f(y,z), a, v, w) P(a, y, z) Q(f(y,z), a, v, g(y,z,v))

La forme de Skolem de A est : y z v


ENSI

P(a, y, z) Q(f(y,z), a, v, g(y,z,v))


Logique formelle 93

Calcul des prdicats

Smantique

Proposition de Skolem Soient A une formule sous forme prnexe et As sa forme de Skolem A est insatisfiable ssi As est insatisfiable

ENSI

Logique formelle

94

Calcul des prdicats Forme clausale (forme standard)

Smantique

La forme clausale dune formule A est obtenue comme suit : 1. mise sous forme prnexe de A (on obtient la formule Ap) 2. mise sous forme de Skolem de Ap (on obtient la formule As) 3. suppression des quantificateurs universels 4. mise sous forme normale conjonctive de la formule restante (on obtient Ac : B1 Bm chaque Bi est une clause)

On note la formule Ac ainsi obtenue sous forme dun ensemble de clauses


ENSI

{B1, B2, , Bm}


Logique formelle 95

Calcul des prdicats Thorme Soient A une formule et Ac sa forme clausale A est insatisfiable ssi

Smantique

Ac est insatisfiable

Remarque Pour le calcul des propositions, la forme clausale est la forme normale conjonctive crite sous forme de conjonction de clauses

ENSI

Logique formelle

96

Calcul des prdicats Remarque

Smantique

Pour un ensemble = {A1, A2,, An} de formules. La forme clausale de est lensemble c = { B11, ,B1m , B21, , B2k , , Bn1, , Bnp } A1c A2c Anc

Aic : forme clausale de la formule Ai

ENSI

Logique formelle

97