Académique Documents
Professionnel Documents
Culture Documents
Logique Formelle Chapitre 2
Logique Formelle Chapitre 2
Chapitre 2
Logique formelle 1
1
Calcul des prédicats Syntaxe
Logique formelle 3
I – Syntaxe
II – Sémantique
Logique formelle 4
2
Calcul des prédicats Syntaxe
Logique formelle 5
F = Un Fn = { f , g, h,… , a, b, c, …}
F0 = { constantes }
Logique formelle 6
3
Calcul des prédicats Syntaxe
Remarques
• On retrouve l’alphabet du langage des propositions
A0 = { , , , , } U {V, F} U { (, ) } U R 0
(R = R 0 , F = , X = )
Logique formelle 7
2- Termes du langage
Logique formelle 8
4
Calcul des prédicats Syntaxe
Exemple
f(x,g(y,z)) est un terme si f et g sont des symboles de
fonction d’arité 2 ( F2 )
Logique formelle 9
Logique formelle 10
5
Calcul des prédicats Syntaxe
Substitution dans les termes
Soient
• t un terme
• x1, x2, …, xn des variables deux à deux distinctes
t [ x1 t1 , x2 t2 , …, xn tn ]
Proposition
Le mot t [x1 t1, x2 t2, …, xn tn ] est un terme
Logique formelle 11
Exemples
= f(t1,…,tk)
Logique formelle 12
6
Calcul des prédicats Syntaxe
3- Formules du langage
Remarque:
Si n = 0, une formule atomique est une variable propositionnelle
Logique formelle 13
A L (R , F , X ) ( A )
A, B L (R , F , X ) (A # B) # { , , , }
A L (R , F , X ) et x X (␢x A) ␢ { , }
Logique formelle 14
7
Calcul des prédicats Syntaxe
Remarques
Logique formelle 16
8
Calcul des prédicats Syntaxe
y y
P(t,y) z P z
t y Q
Q(x,f(z))
Logique formelle
z 17
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
Logique formelle 18
9
Calcul des prédicats Syntaxe
Définition Sous formules
Soit A une formule. L’ensemble des sous-formules de A,
noté Sf(A), est défini par induction comme suit :
Logique formelle 19
10
Calcul des prédicats Syntaxe
Portée des quantificateurs (scope)
x (P(x) x Q(x)) (x P(x)) Q(x) x (P(x) Q(x))
x
x
x Q
P x
P x P Q
x Q
x x x
x suite
Logique formelle 21
x
x
P y
P Q
x Q
x y
x
La portée est liée au dernier nœud père
Logique formelle 22
11
Calcul des prédicats Syntaxe
4- Variables libres, variables liées
Définition Variables libres (free)
Soit A une formule. L’ensemble des variables libres de A, noté
Var(A), est défini 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}
Logique formelle 23
c-à-d
Var(x) = { x }
Var(c) = ( c constante)
Logique formelle 24
12
Calcul des prédicats Syntaxe
Définition
Une formule A est dite close si Var(A) =
(A n’a 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 n’est pas close
• Var(C) = Var(x P(x)) = Var(P(x)) \{x} = {x} \{x} =
donc C est close
Logique formelle 25
si A = B # C ; avec # { , , , } ; alors
BVar(A) = BVar(B#C) = BVar(B) U BVar(C)
Logique formelle 26
13
Calcul des prédicats Syntaxe
Exemple
A : x (P(x, y) Q (x)) y ( P(x, y) z Q (z))
B C
BVar(B) = BVar(P(x, y) Q(x))) U {x}
= (BVar(P(x,y) U BVar(Q(x))) U {x}
= ( U ) U {x} = {x}
Exemple (suite)
A : x (P(x, y) Q (x)) y ( P(x, y) z Q(z))
B C
Var(B) = Var(P(x, y) Q(x)) \{x} = {x, y, x} \{x} = {y}
Logique formelle 28
14
Calcul des prédicats Syntaxe
Remarque
Le nom d’une variable peut être en même temps libre et lié
mais pas son occurrence (une occurrence ne peut être que
libre ou liée mais pas les deux en même temps)
Exemple
suite
Logique formelle 29
P Q z
x y x P Q
x y z
Logique formelle 30
15
Calcul des prédicats Syntaxe
Remarque
Logique formelle 31
16
Calcul des prédicats Syntaxe
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])
Logique formelle 33
En résumé
Seules les occurrences des variables libres peuvent être
substituées les variables les variables liées ne peuvent pas être
substituées
Remarque
La substitution interdit l’introduction de variables liées
On doit passer par le renommage (notion à voir dans la partie
sémantique)
Logique formelle 34
17
Calcul des prédicats Syntaxe
Exemple
Soit la formule A
x (y (R(y,x) (x = z)) xz (R(y,z) (f(z,x) = c)))
Logique formelle 35
Solution
Soit la formule A
x (y (R(y,x) (x = z)) xz (R(y,z) (f(z,x) = c)))
Remarque
La substitution interdit l’introduction de variables liées
On doit passer par le renommage (notion à voir dans la partie
sémantique)
Logique formelle 36
18
Calcul des prédicats Syntaxe
Proposition
Soient A une formule, t1, …,tn des termes et x1, …, xn des
variables, alors
le mot A [x1t1, …, xntn] est une formule
Logique formelle 37
Soient A : p ( q r )
B1 : x R(y,x)
B2 : P(y,z) z R(y,f(z))
B3 : Q(f(c),z)
Logique formelle 38
19
Calcul des prédicats Syntaxe
Théorème
Soient
• A une formule propositionnelle
• B1 , B2,…, Bn des formules d’ordre 1
• p1, p2, …, pn des variables propositionnelles
I – Syntaxe
II – Sémantique
1. Structure et L-structure
2. Interprétation d’une formule
3. Satisfiabilité - Validité
4. Equivalence et conséquence sémantique
5. Formes clausales
Logique formelle 40
20
Calcul des prédicats Sémantique
Logique formelle 41
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’)) ) )
Logique formelle 42
21
Calcul des prédicats Sémantique
Logique formelle 43
1- Structure et L-structure
Définition 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
Logique formelle 44
22
Calcul des prédicats Sémantique
Remarque
• Lorsque l’ensemble des fonctions FD est vide la structure
s’appelle un système relationnel
• Lorsque l’ensemble des relations RD est vide la structure
s’appelle une algèbre
Exemples
• (ℕ , { * , +, - } , { = , < , > } ) est une structure
• (ℤ , { < , >} ) est un système relationnel, FD est vide
• (ℕ , { * , + } ) est une algèbre, RD est vide
Logique formelle 45
Définition Interprétation
Une interprétation 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
f ↦ fI=I(f) Q ↦ QI =I(Q)
Logique formelle 46
23
Calcul des prédicats Sémantique
si f Fn et n>0 alors fI : D n → D , fI FD
si n=0 alors fI est la constante de D associée à la constante f
Si Q R n alors QI Dn, c’est à dire que QI est l’ensemble des n-
uplets définis sur D vérifiant la relation QI
Logique formelle 47
Définition L-structure
Soit L un langage du 1er ordre, on appelle L-structure, notée
(D, I), la structure associée au langage L par l’interprétation I
Logique formelle 48
24
Calcul des prédicats Sémantique
Exemple 2
• Le langage :L ( X , F = {a,b}, R = {P, Q,G} )
• Une L-structure associée au langage L est (ℕ, I)
Avec l'interprétation I définie comme suit:
25
Calcul des prédicats Sémantique
Exemple 3
S= x, (infegale(a, sin(x)) infegale(sin(x),b))
Logique formelle 51
Exemple 4
Le langage: L1=L ( X , F = {f}, R = {P, Q} )
Logique formelle 52
26
Calcul des prédicats Sémantique
Exemple 5
D’où
• fI (1)=-1, fI (-2)=2
• PI (0)=V et PI (1)=F
Logique formelle 53
Logique formelle 54
27
Calcul des prédicats Sémantique
Logique formelle 55
Logique formelle 56
28
Calcul des prédicats Sémantique
Définition Interprétation
• Soit A une formule du 1er ordre telle var(A)={x1,…, xn }
Logique formelle 57
suite
Logique formelle 58
29
Calcul des prédicats Sémantique
Logique formelle 59
Logique formelle 60
30
Calcul des prédicats Sémantique
Exemple
A : x (P(x) Q(f(x),a))
D = {1, 2} I : aI = 1 fI : 1 2
PI = {2} 21
QI = {(1,1), (1,2), (2,2)}
Exemple
B : x ( P(x,c) P(y,f(y)) )
D1 = ℕ D2 = {0, 1} D3 = {0, 1}
I1 : cI1 = 0 I2 : cI2 = 0 I3 : cI3 = 1
fI1 : succ fI2 : 0 1 fI3 : x 1
PI1 : ‘≤ ‘ 10 PI3 : ‘=‘
PI2 : ‘=‘
suite
Logique formelle 62
31
Calcul des prédicats Sémantique
Exemple (suite)
[B]I1 = ((d ≤ 0) (d1 ≤ succ(d1))) = V, pour tout d de D1
donc [B]I1 = V
Logique formelle 63
32
Calcul des prédicats Sémantique
Remarque (suite)
Caractère polymorphe de la fonction Interprétation
dans le cas du CP0
application de L 0 { V B , FB }
Logique formelle 65
33
Calcul des prédicats Sémantique
Logique formelle 67
Logique formelle 68
34
Calcul des prédicats Sémantique
Logique formelle 69
D = {1, 2} I : aI = 1 fI : 1 2 , 2 1
PI = {2} QI = {(1,1), (1,2), (2,2)}
• B : x (P(x,c) P(y,f(y)))
D1 = ℕ D2 = {0, 1} D3 = {0, 1}
I1 : CI1 = 0 I2 : CI2 = 0 I3 : CI3 = 1
fI1 : ‘succ’ fI2 : 0 1, 1 0 fI3 : x 1
PI1 : ‘≤ ‘ PI2 : ‘=‘ PI3 : ‘=‘
suite
Logique formelle 70
35
Calcul des prédicats Sémantique
Exemples (suite)
Exemples
• ╞ (P(x) P(x)) (valide universellement)
• ╞ x (P(x) P(x))
• ╞ x (P(x) P(x))
Propositions
A est valide ssi A est insatisfiable
Logique formelle 72
36
Calcul des prédicats Sémantique
Remarque
Logique formelle 73
Proposition
Soient
• A une formule propositionnelle
• p1, p2, …, pn des variables propositionnelles
• B1, B2, …, Bn des formules d’ordre 1
Logique formelle 74
37
Calcul des prédicats Sémantique
Logique formelle 75
Propositions
1. B ╞ A ssi ╞ (B A)
2. B ≡ A ssi ╞ (B A)
Logique formelle 76
38
Calcul des prédicats Sémantique
Propriétés
Loi de conversion des quantificateurs
(x A) ≡ x ( A)
• (x A) ≡ x ( A)
• x ( A) ≡ (x A)
• (x ( A )) ≡ x (A)
suite
Logique formelle 77
(␢ x A) B ≡ ␢ x (A B) x Var(B)
␢ {, }
(␢ x A) B ≡ ␢ x (A B)
A (x B) ≡ x (A B) x Var(A)
A (x B) ≡ x (A B)
(x A) B ≡ x (A B) x Var(B)
(x A) B ≡ x (A B)
suite
Logique formelle 78
39
Calcul des prédicats Sémantique
Propriétés (suite)
x (A B) ╞ (x A) (x B)
(x A) (x B) ╞ x (A B)
x y A ╞ y x A
Logique formelle 79
Propriété de renommage
x A ≡ y A [xy]
x A ≡ y A [xy]
Renommer les variables liées
Le renommage est utilisé pour « purifier » une formule
c-à-d éviter d’avoir des occurrences libres et liées d’un
même nom de variable dans une même formule
Le nouveau nom ne doit pas être un nom déjà utilisé dans
la formule comme variable libre ou liée
Logique formelle 80
40
Calcul des prédicats Sémantique
41
Calcul des prédicats Sémantique
Théorème de compacité
Version 1
Pour tout ensemble ℰ de formules de 1er ordre
ℰ admet un modèle ssi toute partie finie de ℰ admet un modèle
Version 2
suite
Logique formelle 83
Version 3
Logique formelle 84
42
Calcul des prédicats Sémantique
Remarque On appelle une théorie 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 théories de L
• A et B des formules de L
Logique formelle 85
5. Si T est contradictoire et T S ,
alors S est contradictoire
6. T ╞ A et T S , alors S╞ A
7. T U {A} ╞ B ssi T ╞ (A B) suite
Logique formelle 86
43
Calcul des prédicats Sémantique
Propositions (suite)
8. T ╞ (A B) ssi T ╞ A et T ╞ B
Logique formelle 87
Logique formelle 88
44
Calcul des prédicats Sémantique
Propositions (suite)
18. T et S sont équivalents ssi Ils ont les même modèles
19. En remplaçant dans la théorie T chaque formule par une
formule équivalente, on obtient une théorie équivalente à T
20. Si T est contradictoire, alors
S est équivalente à T ssi S est contradictoire
21. La théorie T est équivalente à la théorie vide ssi
toute formule de T est universellement valide
Logique formelle 89
45
Calcul des prédicats Sémantique
Commentaires sur les quantificateurs logiques
Quantificateur existentiel x
il existe x ; il y a (au moins) un x ; au moins un x,
certains x E
it Exists E
L’absence donne faux
Quantificateur universel x
pour tout x ; quel(le)(s) que soi(en)t x ;
tout x ; tous les x , chaque x , chacun des x A
for All A
L’absence donne vrai
Logique formelle 91
Remarque
Cohérence de la notation ╞
(D, I) ╞ A I╞ A D╞ A ╞ A
(D, I) ╞ ℰ I╞ ℰ D╞ ℰ ╞ ℰ
B╞ A ℰ╞A
Logique formelle 92
46
Calcul des prédicats Sémantique
5- Forme clausale
Forme prénexe
• A est de la forme
␢x1 ␢x2 … ␢xn B ␢ {, }
Logique formelle 93
Exemples
Logique formelle 94
47
Calcul des prédicats Sémantique
• (x A) (x B) ≡ x (A B)
• (x A) (x B) ≡ x (A B)
48
Calcul des prédicats Sémantique
Proposition
Toute formule admet une forme prénexe qui lui est
équivalente
Remarques
Plusieurs formes prénexes d’une même formule peuvent
être obtenues (suivant l’ordre dans lequel on applique les
transformations). Elles sont toutes équivalentes
De préférence, quand c’est possible, il faut remonter les
devant les
Logique formelle 97
Logique formelle 98
49
Calcul des prédicats Sémantique
suite
Logique formelle 99
50
Calcul des prédicats Sémantique
Exemple
A : x y z u v w P(x, y, z) Q(u, x, v, w)
x y z u v w P(x, y, z) Q(u, x, v, w)
y z u v w P(a, y, z) Q(u, a, v, w)
y z v w P(a, y, z) Q(f(y,z), a, v, w)
y z v P(a, y, z) Q(f(y,z), a, v, g(y,z,v))
Proposition de Skolem
Soient A une formule sous forme prénexe et As sa forme
de Skolem
51
Calcul des prédicats Sémantique
Forme clausale (forme standard)
La forme clausale d’une formule A est obtenue comme suit :
1. mise sous forme prénexe 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)
Théorème
Soient A une formule et Ac sa forme clausale
Remarque
Pour le calcul des propositions, la forme clausale est la forme
normale conjonctive écrite sous forme de conjonction de
clauses
52
Calcul des prédicats Sémantique
Remarque
Pour un ensemble ℰ = {A1, A2,…, An} de formules.
La forme clausale de ℰ est l’ensemble
53