Sunteți pe pagina 1din 3

FMI, Info, Anul II, 2017-2018

Programare logică

Seminar 4
Forma prenex. Skolemizare. Herbrandizare

Teorie pentru S4.1:


O formulă ϕ este ı̂n formă rectificată dacă:
(i) nici o variabilă nu apare şi liberă şi legată;
(ii) cuantificatori distincţi leagă variabile distincte.
Intuitiv, forma rectificată a unei formule se obţine prin redenumirea variabilelor astfel ı̂ncât să nu
apară conflicte.
O formulă prenex este o formulă de forma Q1 x1 Q2 x2 . . . Qn xn ϕ unde Qi ∈ {∀, ∃} pentru orice
i ∈ {1, . . . , n}, x1 , . . . , xn sunt variabile distincte şi ϕ nu conţine cuantificatori.
Pentru o formulă rectificată putem obţine o formulă echivalentă ı̂n formă prenex astfel:
• Se ı̂nlocuiesc → şi ↔ :
ϕ → ψ  ¬ϕ ∨ ψ
ϕ ↔ ψ  (¬ϕ ∨ ψ) ∧ (¬ψ ∨ ϕ)

• Se aplică următoarele echivalenţe:

¬∃x ¬ϕ  ∀x ϕ ∀x ϕ ∧ ∀x ψ  ∀x (ϕ ∧ ψ)
¬∀x ¬ϕ  ∃x ϕ ∃x ϕ ∨ ∃x ψ  ∃x (ϕ ∨ ψ)

¬∃x ϕ  ∀x ¬ϕ ∀x ∀y ϕ  ∀y ∀x ϕ
¬∀x ϕ  ∃x ¬ϕ ∃x ∃y ϕ  ∃y ∃x ϕ

∀x ϕ ∨ ψ  ∀x (ϕ ∨ ψ) dacă x 6∈ F V (ψ)
∀x ϕ ∧ ψ  ∀x (ϕ ∧ ψ) dacă x 6∈ F V (ψ)
∃x ϕ ∨ ψ  ∃x (ϕ ∨ ψ) dacă x 6∈ F V (ψ)
∃x ϕ ∧ ψ  ∃x (ϕ ∧ ψ) dacă x 6∈ F V (ψ)

(S4.1) Considerăm un limbaj de ordinul I cu R = {P, R, Q} cu ari(P ) = 1 şi ari(R) = ari(Q) = 2.


Găsiţi formele echivalente prenex pentru următoarele formule:

1
1) ∀x∃y(R(x, y) → R(y, x)) → ∃xR(x, x)

2) ¬P (x) → ¬∀y∃xR(x, y)

3) ∃xR(x, y) ↔ ∀yQ(x, y)

Teorie pentru S4.2:

Fie ϕ enunţ ı̂n formă prenex. Definim ϕsk o formă Skolem a lui ϕ şi Lsk (ϕ) astfel:

• dacă ϕ este liberă de cuantificatori, atunci ϕsk = ϕ şi Lsk (ϕ) = L,

• dacă ϕ este universală1 , atunci ϕsk = ϕ şi Lsk (ϕ) = L,

• dacă ϕ = ∃x ψ atunci introducem un nou simbol de constantă c şi considerăm ϕ1 = ψ[x/c],


L1 = L ∪ {c}.

• dacă ϕ = ∀x1 . . . ∀xk ∃x ψ atunci introducem un nou simbol de funcţie f de aritate k şi
considerăm L1 = L ∪ {f },

ϕ1 = ∀x1 . . . ∀xk ψ[x/f (x1 . . . xk )]

În ambele cazuri, ϕ1 are cu un cuantificator existenţial mai puţin decât ϕ. Dacă ϕ1 este liberă
de cuantificatori sau universală, atunci ϕsk = ϕ1 . Dacă ϕ1 nu este universală, atunci formăm
ϕ2 , ϕ3 , . . ., până ajungem la o formulă universală şi aceasta este ϕsk .

(S4.2) Consideram un limbaj de ordinul I cu C = {b} şi R = {P, R, Q} cu ari(P ) = 1 şi ari(R) =
ari(Q) = 2. Găsiţi formele Skolem pentru următoarele formule ı̂n formă prenex:

1) ∀x∃y∀z∃w(R(x, y) ∧ (R(y, z) → (R(z, w) ∧ R(w, w))))

2) ∀x1 ∀y1 ∃y2 ∃x2 ((¬R(x1 , y2 ) ∨ Q(b, y1 )) ∧ (¬Q(x1 , y2 ) ∨ R(x2 , b)))

3) ∃x1 ∀y1 ∃x2 (P (y1 ) ∨ R(x1 , x2 ))

Teorie pentru S4.3:


Fie ϕ un enunţ ı̂n forma Skolem, adică ϕ = ∀x1 . . . ∀xn ψ.

• Definim universul Herbrand al formulei ϕ, notat T (ϕ), astfel:


1
Un enunţ se numeşte universal dacă conţine doar cuantificatori universali.

2
– dacă c este o constantă care apare ı̂n ϕ atunci c ∈ T (ϕ),
– dacă ϕ nu conţine nicio constantă atunci alegem o constantă arbitrară c şi considerăm
că c ∈ T (ϕ),
– dacă f este un simbol de funcţie care apare ı̂n ϕ cu ari(f ) = n şi t1 , . . . , tn ∈ T (ϕ) atunci
f (t1 , . . . , tn ) ∈ T (ϕ).

• Definim extensia Herbrand a lui ϕ astfel

H(ϕ) = {ψ[x1 /t1 , . . . , xn /tn ] | t1 , . . . , tn ∈ T (ϕ)}.2

(S4.3) Considerăm un limbaj de ordinul I cu F = {f, g} cu ari(f ) = 2 şi ari(g) = 1, C = {b, c} şi
R = {P, Q} cu ari(P ) = 3, ari(Q) = 2 .

(a) Descrieţi termenii din universul Herbrand;

(b) Descrieţi formulele din expansiunea Herbrand;

pentru următoarele formule:

1) ϕ := ∀x∀y P (c, f (x, b), g(y))

2) ψ := ∀x∀y (Q(x, b) ∨ Q(x, g(y)))

2
Reamintim că ψ[x/t] este formula obţinută ı̂nlocuind ı̂n ψ toate apariţiile libere ale lui x cu t.

S-ar putea să vă placă și