• Aucun résultat trouvé

Le calcul des prédicats

N/A
N/A
Protected

Academic year: 2022

Partager "Le calcul des prédicats"

Copied!
6
0
0

Texte intégral

(1)

Le calcul des prédicats

Le calcul des prédicats Syntaxe

Formalisation du langage naturel Sémantique

Systèmes de preuves syntaxiques 1. Calcul de Gentzen

2. Résolution

Théorie de l'unication Règles de résolution Propriétés de la résolution

2

Syntaxe : alphabet

Lesconnecteurs ,¬, , Lesquanticateurs ,

Un ensemble dénombrable devariablesx, y, z, . . . UnesignatureΣ contenant :

Un ensemble dénombrable de symboles de fonction ΣF ={f, g, h, . . .}, chacun ayant une arité

Un ensemble dénombrable de symboles de prédicats ΣP ={p, q, r, . . .}, chacun ayant une arité

Les termes

Dénition :

Chaque variable xdans X est un terme dans TΣ,X. Si t1, . . . , tn sont de termes etf ΣF est un symbole de

fonction d'arité n, alorsf(t1, . . . , tn)est un terme dans TΣ,X. Un terme est clos s'il ne contient aucune variable.

(2)

Les atomes

Dénition :Un atome est de la forme r(t1, . . . , tn), où pest un symbole de prédicat d'aritén ett1, . . . , tn sont de termes.

Exemple :Si ΣF ={0, S} etΣP ={inf}, alors0 et

S(S(S(x)))sont de termes, 0 etS(S(S(S(0)))) sont de termes clos etinf(0, S(S(S(x)))) est un atome.

5

Les formules

Dénition :

Chaque atome est une formule.

Si A est une formule, alors¬A est une formule.

Si AetB sont deux formules,A→B,A∧B, etA∨B sont de formules.

Si A est une formule etxest une variable, alors ∀x. A et∃x. A sont de formules.

Exemple : ∀x.(enf ant(x)→ ∃y. mere(y, x))

6

Le calcul propositionnel commme un calcul des prédicats

Le calcul propositionnel peut se voir comme un calcul des prédicats sur une signatureΣ t.q.

l'ensemble ΣF est vide

l'ensemble ΣP contient uniquement des prédicats 0-aires, les quanticateurs ne sont pas utilisés

Variables libres et liées

Les variables libres (VI) et liées (VE) d'une formule sont dénies comme suit :

Si A est un atome,V I(A)contient toutes les variables deA, et V E(A)=.

Si A=¬B,V I(A)=V I(B)etV E(A)=V E(B). Si A=B#C,V I(A)=V I(B)∪V I(C)et

V E(A)=V E(B)∪V E(C).

Si A=∀x. B ou A=∃x. B,V I(A)=V I(B)\ {x} et V E(A)=V E(B)∪ {x}.

(3)

Exemple :Si A=∀x. q(x, f(x, y)) on aV I(A) ={y} et V E(A) ={x}.

Si B=r(x)∨ ∀x. q(x, f(x, y))on a V I(B) ={x, y} et V E(B) ={x}.

Remarque : On suppose que l'on peut toujours renommerles variables liées d'une formule an de l'écrire sous une forme rectiée:

toutes les variables liées d'une formule sont distinctes. On ne peut pas avoir p.e.∀x.∃x. A.

les variables libres et liées d'une formuleAportent de noms distincts, i.e.V I(A)∩V E(A) =∅. On ne peut plus écrire la formule B précédante.

9

À partir de maintenant on travaille uniquement avec de formules rectiées. On verra dans la suite (ou en TD) que cette supposition est correcte.

10

Les substitutions Dénition :

Unesubstitution est une fonction σ:X → TΣ,X. On note {x1/t1, . . . , xn/tn} si σ(xi) =ti pour tout i= 1, . . . , n. L'application d'unesubstitution à un terme est l'extensionde σ

aux termes donnée par σ(f(t1, . . . , tn)) =f(σ(t1), . . . , σ(tn)). Soientσ et τ deux substitution. La composition de σ avecτ est

donnée parσ◦τ(x) =σ(τ(x)).

Si σ est une substitution, alors la substitutionσ[x:=t]est donnée parσ[x:=t](y) =σ(y)si y 6=xetσ[x:=t](x) =t sinon.

Substitution d'une formule

Soit Σ une signature et X un ensemble de variables.

Dénition : Soitσ={x1/t1, . . . , xn/tn} une substitution. La substitution d'une formule Apar σ est l'opération qui consiste à remplacer toute occurrence libre de xi dansApar ti. Par

récurrence sur A:

σ(r(t1, . . . , tn)) =r(σ(t1), . . . , σ(tn))

σ(¬B) =¬σ(B) etσ(B#C) =σ(B)#σ(C) A=∀x. B

Si x /∈ {x1, . . . , xn}, alorsσ(∀x. B) =∀x. σ(B) Si x=xi, alors σ(∀x. B) =∀x. σ[x:=x](B). Pareil pour σ(∃x. B)

(4)

Formalisation du langage naturel Tous les hommes sont méchants.

∀x.(H(x)→M(x)) Seulement les hommes sont méchants.

∀x.(M(x)→H(x)) Il existe un homme méchant.

∃x.(H(x)∧M(x))

13

Il n'existe pas d'homme méchant.

¬∃x.(H(x)∧M(x)) Il existe un homme qui aime tous les chiens.

∃x.(H(x)∧Aimetousleschiens(x))

Aimetousleschiens(x)≡ ∀y.(Chien(y)→Aime(x, y))

Chaque homme connaît qui la déteste.

∀x.(H(x)→Connaitdeteste(x)) Connaitdeteste(x)≡ ∀y.(D(y, x)→C(x, y))

14

Chaque personne aime quelqu'un etpersonne n'aime tout le mondeou bienquelqu'un aime tout le monde etquelqu'un n'aime personne.

(A1∧B1)(A2∧B2)

aimetoutlemonde(x)≡ ∀y. Aime(x, y) aimepersonne(x)≡ ∀y.¬Aime(x, y)

A1 ≡ ∀x.(H(x)→ ∃y. Aime(x, y)) B1≡ ¬∃x.(H(x)∧aimetoutlemonde(x)) A2 ≡ ∃x.(H(x)∧aimetoutlemonde(x)) B2≡ ∃x.(H(x)∧aimepersonne(x))

Sémantique du calcul de prédicats

Dénition : L'interprétationd'une signatureΣ est un triplet hD, FD, PDit.q.

Pour chaque f ΣF d'arité n, il y a une fonction I(f) :Dn→ D dans FD

Pour chaque p∈ΣP d'arité n, il y a une fonction booléene I(p) :Dn BOOL

Dénition : SoitI une interprétation pourΣ ayantD comme domaine et soit X un ensemble de variables. Uneassignation ou valuation dansI est une fonction σ:X → D.

Notation : Si σ est une assignation, alors l'assignationσ[x:=d]

vérie σ[x:=d](y) =σ(y)si y 6=xetσ[x:=d](x) =d sinon.

(5)

Interprétation d'un terme

Dénition :Soit I une interprétation et soit σ assignation dans I. Alors l'interprétation d'un terme tdans I pour σ, notée [t]I,σ

est dénie par récurrence comme suit : [x]I,σ =σ(x)

[f(t1, . . . , tn)]I,σ =I(f)([t1]I,σ. . .[tn]I,σ)

Remarque : Lorsque le symbole de fonctionf est 0-aire (d'arité 0), alors I(f) est une fonction constante.

17

Interprétation d'une formule

Dénition : L'interprétation d'une formuleAdans une

interprétation I pour une assignation σ, notée [A]I, est dénie par récurrence comme suit :

[p(t1, . . . , tn)]I,σ =I(p)([t1]I. . .[tn]I,σ) [¬A]I,σ =B¬([A]I,σ)

[A#B]I,σ =B#([A]I,σ,[B]I,σ)

18

[∃x. A]I =

Vs'il existe d∈ D t.q.[A]I,σ[x:=d]=V F sinon

[∀x. A]I =

Vsi pour tout d∈ D,[A]I,σ[x:=d]=V F sinon

Remarque : Lorsque le symbole de prédicatpest 0-aire (d'arité 0), alors I(p)est Vou F.

Nouvelles notions de satisablité Dénition :

I satisfait une formule B si pour toute valuationσ dans I, [B]I =V.

I falsie une formule B s'il existe une valuationσ dans I t.q [B]I =F.

On verra plus tard que pour étudier la satisablité d'une formule on peut se limiter à des interprétations d'une forme particulière.

(6)

Rappel : les notions de validité, conséquence logique Dénition :

Uneformule B est valide si toute interprétationI satisfait B. Uneformule B est conséquence logique d'unensemble de

formules∆, noté ∆|=B, si toute interprétation qui satisfait ∆ satisfait aussiB.

Deux formulesAetB sontequivalentes, notéA≡B, ssi {A} |=B et{B} |=A.

21

Quelques exemples de conséquence logique

∃y.∀x. A |= ∀x.∃y. A

∃x.(A∧B) |= ∃x. A∧ ∃x. B

∀x. A∨ ∀x. B |= ∀x.(A∨B)

22

Quelques exemples d'équivalence

∀x. A ≡ ¬∃x.¬A

¬∀x. A ≡ ∃x.¬A

∃x. A ≡ ¬∀x.¬A

¬∃x. A ≡ ∀x.¬A

∀x.(A∧B) ≡ ∀x. A∧ ∀x. B

∃x.(A∨B) ≡ ∃x. A∨ ∃x. B

∃x.(A→B) ≡ ∀x. A→ ∃x. B

∀x.∀y. A ≡ ∀y.∀x. A

∃x.∃y. A ≡ ∃y.∃x. A

D'autres exemples d'équivalence lorsque x /∈V I(A)

∀x. A ≡ ∃x. A ≡A

∀x.(A∧B) A∧ ∀x. B

∃x.(A∧B) A∧ ∃x. B

∀x.(A∨B) A∨ ∀x. B

∃x.(A∨B) A∨ ∃x. B

∃x.(A→B) A→ ∃x. B

∀x.(A→B) A→ ∀x. B

∃x.(B →A) ≡ ∀x. B →A

∀x.(B →A) ≡ ∃x. B →A

Références

Documents relatifs

Si les valeurs des classes sont régulièrement espacées, vous pouvez les entrer automatiquement: vous entrez les deux premières valeurs, ici 5 et 7, vous sélectionnez les deux

Utilisation du ROI pour évaluer la rentabilité d'un investissement : comment calculer le retour sur investissement, le Total Cost of Ownership pour l'évaluation du coût total

Application : Utiliser cette formule pour calculer le nombre de carreaux gris d'une figure telle que le côté du carré comporte 138 carreaux.. Quel est le nombre de carreaux du côté

Construire l’image A’B’ de AB à travers la lentille de distance focale en dessinant la marche de 3 rayons.. En utilisant le théorème de Thalès établir γ en fonction de OA ' et

lorsqu'on y fait A.r — i , w = x e t que l'on comprend la constante dans le symbole \ * ; mais la conséquence immé- diate à laquelle elle conduit, lorsqu'il s'agit d'une fonc-

Pour tout réel k , il existe un unique nombre réel dont le cube est k.. Ce nombre est appelé racine cubique

lelong du contour T. Parmi les points critiques, on remarque, en pre- mier lieu, les racines oc^ de l'équation f[t, ^) = o qui sont à l'in- térieur de T; ces racines font partie

Je me propose de donner ici une formule pour le calcul des valeurs des logarithmes des nombres, laquelle me parait pouvoir être utile en quelques circonstances. Je considère, pour