Sunteți pe pagina 1din 197

partea 3

Logică Matematică şi Computaţională

FMI · Denisa Diaconescu · An universitar 2018/2019 · ID


logică propoziţională
recap - semantica
(partea 2) evaluări

Definiţia 1.8
O evaluare (sau interpretare) este o funcţie e : V → {0, 1}.

Teorema 1.9
Pentru orice evaluare e : V → {0, 1} există o unică funcţie

e+ : Form → {0, 1}

care verifică următoarele proprietăţi:

∙ e+ (v) = e(v) pentru orice orice v ∈ V.


∙ e+ (¬φ) = ¬ e+ (φ) pentru orice φ ∈ Form,
∙ e+ (φ → ψ) = e+ (φ) → e+ (ψ) pentru orice φ, ψ ∈ Form.

3
(partea 2) modele. satisfiabilitate. tautologii

Fie φ o formulă şi Γ, ∆ mulţimi de formule.

∙ O evaluare e : V → {0, 1} este model al lui φ dacă e+ (φ) = 1.


Notaţie: e ⊨ φ.
∙ O evaluare e : V → {0, 1} este model al lui Γ dacă este model al
fiecărei formule din Γ (adică e ⊨ γ pentru orice γ ∈ Γ).
Notaţie: e ⊨ Γ.
∙ φ (Γ) este satisfiabilă dacă admite un model.
∙ φ este tautologie dacă orice evaluare este model al lui φ.
Notaţie: ⊨ φ.
∙ O formulă φ este consecinţă semantică a lui Γ dacă Mod(Γ) ⊆ Mod(φ).
Notaţie: Γ ⊨ φ.
∙ ∆ este consecinţă semantică a lui Γ dacă Mod(Γ) ⊆ Mod(∆).
Notaţie: Γ ⊨ ∆.
∙ Γ şi ∆ sunt (logic) echivalente dacă Mod(Γ) = Mod(∆).
Notaţie: Γ ∼ ∆.
4
forma normală conjunctivă/disjunctivă
literali

Definiţia 2.1
Un literal este o

∙ variabilă (caz în care spunem că este literal pozitiv) sau


∙ negaţia unei variabile (caz în care spunem că este literal negativ).

6
literali

Definiţia 2.1
Un literal este o

∙ variabilă (caz în care spunem că este literal pozitiv) sau


∙ negaţia unei variabile (caz în care spunem că este literal negativ).

Exemplu.
∙ v1 , v2 , v10 literali pozitivi
∙ ¬v0 , ¬v100 literali negativi

6
forma normală conjunctivă / disjunctivă

Definiţia 2.2
O formulă φ este în formă normală disjunctivă (FND) dacă φ este o
disjuncţie de conjuncţii de literali.
 
∨n ∧ki
φ este în FND ddacă φ =  Li,j , unde fiecare Li,j este literal.
i=1 j=1

7
forma normală conjunctivă / disjunctivă

Definiţia 2.2
O formulă φ este în formă normală disjunctivă (FND) dacă φ este o
disjuncţie de conjuncţii de literali.
 
∨n ∧ki
φ este în FND ddacă φ =  Li,j , unde fiecare Li,j este literal.
i=1 j=1

Definiţia 2.3

O formulă φ este în formă normală conjunctivă (FNC) dacă φ este o


conjuncţie de disjuncţii de literali.
 
∧n ∨ki
φ este în FNC ddacă φ =  Li,j , unde fiecare Li,j este literal.
i=1 j=1

7
forma normală conjunctivă / disjunctivă

Exemple.
∙ (v0 ∨ v1 ) ∧ (v3 ∨ v5 ) ∧ (¬v20 ∨ ¬v15 ∨ ¬v34 )

8
forma normală conjunctivă / disjunctivă

Exemple.
∙ (v0 ∨ v1 ) ∧ (v3 ∨ v5 ) ∧ (¬v20 ∨ ¬v15 ∨ ¬v34 ) este în FNC
∙ (¬v9 ∧ v1 ) ∨ v24 ∨ (v2 ∧ ¬v1 ∧ v2 )

8
forma normală conjunctivă / disjunctivă

Exemple.
∙ (v0 ∨ v1 ) ∧ (v3 ∨ v5 ) ∧ (¬v20 ∨ ¬v15 ∨ ¬v34 ) este în FNC
∙ (¬v9 ∧ v1 ) ∨ v24 ∨ (v2 ∧ ¬v1 ∧ v2 ) este în FND
∙ v1 ∧ ¬v5 ∧ v4

8
forma normală conjunctivă / disjunctivă

Exemple.
∙ (v0 ∨ v1 ) ∧ (v3 ∨ v5 ) ∧ (¬v20 ∨ ¬v15 ∨ ¬v34 ) este în FNC
∙ (¬v9 ∧ v1 ) ∨ v24 ∨ (v2 ∧ ¬v1 ∧ v2 ) este în FND
∙ v1 ∧ ¬v5 ∧ v4 este atât în FND cât şi în FNC
∙ ¬v10 ∨ v20 ∨ v4

8
forma normală conjunctivă / disjunctivă

Exemple.
∙ (v0 ∨ v1 ) ∧ (v3 ∨ v5 ) ∧ (¬v20 ∨ ¬v15 ∨ ¬v34 ) este în FNC
∙ (¬v9 ∧ v1 ) ∨ v24 ∨ (v2 ∧ ¬v1 ∧ v2 ) este în FND
∙ v1 ∧ ¬v5 ∧ v4 este atât în FND cât şi în FNC
∙ ¬v10 ∨ v20 ∨ v4 este atât în FND cât şi în FNC
∙ (v1 ∨ v2 ) ∧ ((v1 ∧ v3 ) ∨ (v4 ∧ v5 ))

8
forma normală conjunctivă / disjunctivă

Exemple.
∙ (v0 ∨ v1 ) ∧ (v3 ∨ v5 ) ∧ (¬v20 ∨ ¬v15 ∨ ¬v34 ) este în FNC
∙ (¬v9 ∧ v1 ) ∨ v24 ∨ (v2 ∧ ¬v1 ∧ v2 ) este în FND
∙ v1 ∧ ¬v5 ∧ v4 este atât în FND cât şi în FNC
∙ ¬v10 ∨ v20 ∨ v4 este atât în FND cât şi în FNC
∙ (v1 ∨ v2 ) ∧ ((v1 ∧ v3 ) ∨ (v4 ∧ v5 )) nu este nici în FND, nici în FNC

8
forma normală conjunctivă / disjunctivă
{
c
¬v dacă L = v ∈ V
Notaţie. Dacă L este literal, atunci L :=
v dacă L = ¬v.

9
forma normală conjunctivă / disjunctivă
{
c
¬v dacă L = v ∈ V
Notaţie. Dacă L este literal, atunci L :=
v dacă L = ¬v.

Propoziţia 2.4
∧n (∨ki )
(i) Fie φ o formulă în FNC, φ = i=1 j=1 Li,j . Atunci
∨n (∧ki c )
¬φ ∼ i=1 j=1 Li,j , o formulă în FND.

9
forma normală conjunctivă / disjunctivă
{
c
¬v dacă L = v ∈ V
Notaţie. Dacă L este literal, atunci L :=
v dacă L = ¬v.

Propoziţia 2.4
∧n (∨ki )
(i) Fie φ o formulă în FNC, φ = i=1 j=1 Li,j . Atunci
∨n (∧ki c )
¬φ ∼ i=1 j=1 Li,j , o formulă în FND.
∨n (∧ki )
(ii) Fie φ o formulă în FND, φ = i=1 j=1 Li,j . Atunci
∧n (∨ki c )
¬φ ∼ i=1 j=1 Li,j , o formulă în FNC.

9
forma normală conjunctivă / disjunctivă
{
c
¬v dacă L = v ∈ V
Notaţie. Dacă L este literal, atunci L :=
v dacă L = ¬v.

Propoziţia 2.4
∧n (∨ki )
(i) Fie φ o formulă în FNC, φ = i=1 j=1 Li,j . Atunci
∨n (∧ki c )
¬φ ∼ i=1 j=1 Li,j , o formulă în FND.
∨n (∧ki )
(ii) Fie φ o formulă în FND, φ = i=1 j=1 Li,j . Atunci
∧n (∨ki c )
¬φ ∼ i=1 j=1 Li,j , o formulă în FNC.

Demonstraţie.

(i) Aplicând Propoziţia 1.18, obţinem


∧n (∨ki )
¬φ ∼ ¬ i=1 j=1 Li,j

9
forma normală conjunctivă / disjunctivă
{
c
¬v dacă L = v ∈ V
Notaţie. Dacă L este literal, atunci L :=
v dacă L = ¬v.

Propoziţia 2.4
∧n (∨ki )
(i) Fie φ o formulă în FNC, φ = i=1 j=1 Li,j . Atunci
∨n (∧ki c )
¬φ ∼ i=1 j=1 Li,j , o formulă în FND.
∨n (∧ki )
(ii) Fie φ o formulă în FND, φ = i=1 j=1 Li,j . Atunci
∧n (∨ki c )
¬φ ∼ i=1 j=1 Li,j , o formulă în FNC.

Demonstraţie.

(i) Aplicând Propoziţia 1.18, obţinem


∧n (∨ki ) ∨
n
(∨
ki
)
¬φ ∼ ¬ i=1 j=1 Li,j ∼ i=1 ¬ j=1 Li,j

9
forma normală conjunctivă / disjunctivă
{
c
¬v dacă L = v ∈ V
Notaţie. Dacă L este literal, atunci L :=
v dacă L = ¬v.

Propoziţia 2.4
∧n (∨ki )
(i) Fie φ o formulă în FNC, φ = i=1 j=1 Li,j . Atunci
∨n (∧ki c )
¬φ ∼ i=1 j=1 Li,j , o formulă în FND.
∨n (∧ki )
(ii) Fie φ o formulă în FND, φ = i=1 j=1 Li,j . Atunci
∧n (∨ki c )
¬φ ∼ i=1 j=1 Li,j , o formulă în FNC.

Demonstraţie.

(i) Aplicând Propoziţia 1.18, obţinem


∧n (∨ki ) ∨
n
(∨
ki
)
¬φ ∼ ¬ i=1 j=1 L i,j ∼ i=1 ¬ j=1 Li,j
∨n (∧ki )
∼ i=1 j=1 ¬L i,j

9
forma normală conjunctivă / disjunctivă
{
c
¬v dacă L = v ∈ V
Notaţie. Dacă L este literal, atunci L :=
v dacă L = ¬v.

Propoziţia 2.4
∧n (∨ki )
(i) Fie φ o formulă în FNC, φ = i=1 j=1 Li,j . Atunci
∨n (∧ki c )
¬φ ∼ i=1 j=1 Li,j , o formulă în FND.
∨n (∧ki )
(ii) Fie φ o formulă în FND, φ = i=1 j=1 Li,j . Atunci
∧n (∨ki c )
¬φ ∼ i=1 j=1 Li,j , o formulă în FNC.

Demonstraţie.

(i) Aplicând Propoziţia 1.18, obţinem


∧n (∨ki ) ∨
n
(∨
ki
)
¬φ ∼ ¬ i=1 L i,j ∼ ¬ Li,j
∨n (∧ki
j=1
) ∨ i=1 (∧ j=1 )
n ki c
∼ i=1 j=1 ¬L i,j ∼ i=1 j=1 Li,j .

9
forma normală conjunctivă / disjunctivă
{
c
¬v dacă L = v ∈ V
Notaţie. Dacă L este literal, atunci L :=
v dacă L = ¬v.

Propoziţia 2.4
∧n (∨ki )
(i) Fie φ o formulă în FNC, φ = i=1 j=1 Li,j . Atunci
∨n (∧ki c )
¬φ ∼ i=1 j=1 Li,j , o formulă în FND.
∨n (∧ki )
(ii) Fie φ o formulă în FND, φ = i=1 j=1 Li,j . Atunci
∧n (∨ki c )
¬φ ∼ i=1 j=1 Li,j , o formulă în FNC.

Demonstraţie.

(i) Aplicând Propoziţia 1.18, obţinem


∧n (∨ki ) ∨
n
(∨
ki
)
¬φ ∼ ¬ i=1 L i,j ∼ ¬ Li,j
∨n (∧ki
j=1
) ∨ i=1 (∧ j=1 )
n ki c
∼ i=1 j=1 ¬L i,j ∼ i=1 j=1 Li,j .
(ii) Exerciţiu.
9
forma normală conjunctivă / disjunctivă

Teorema 2.5
Orice formulă φ este echivalentă cu o formulă φFND în FND şi cu o
formulă φFNC în FNC.

10
forma normală conjunctivă / disjunctivă

Algoritm pentru a aduce o formulă la FNC/FND:


Pasul 1. Se înlocuiesc implicaţiile şi echivalenţele, folosind:

φ → ψ ∼ ¬φ ∨ ψ şi φ ↔ ψ ∼ (¬φ ∨ ψ) ∧ (¬ψ ∨ φ).

11
forma normală conjunctivă / disjunctivă

Algoritm pentru a aduce o formulă la FNC/FND:


Pasul 1. Se înlocuiesc implicaţiile şi echivalenţele, folosind:

φ → ψ ∼ ¬φ ∨ ψ şi φ ↔ ψ ∼ (¬φ ∨ ψ) ∧ (¬ψ ∨ φ).

Pasul 2. Se înlocuiesc dublele negaţii, folosind ¬¬ψ ∼ ψ, şi se aplică


regulile De Morgan pentru a înlocui

¬(φ ∨ ψ) cu ¬φ ∧ ¬ψ şi ¬(φ ∧ ψ) cu ¬φ ∨ ¬ψ.

11
forma normală conjunctivă / disjunctivă

Algoritm pentru a aduce o formulă la FNC/FND:


Pasul 1. Se înlocuiesc implicaţiile şi echivalenţele, folosind:

φ → ψ ∼ ¬φ ∨ ψ şi φ ↔ ψ ∼ (¬φ ∨ ψ) ∧ (¬ψ ∨ φ).

Pasul 2. Se înlocuiesc dublele negaţii, folosind ¬¬ψ ∼ ψ, şi se aplică


regulile De Morgan pentru a înlocui

¬(φ ∨ ψ) cu ¬φ ∧ ¬ψ şi ¬(φ ∧ ψ) cu ¬φ ∨ ¬ψ.

Pasul 3.
Pentru FNC, se aplică distributivitatea lui ∨ faţa de ∧, pentru a înlocui

φ ∨ (ψ ∧ χ) cu (φ ∨ ψ) ∧ (φ ∨ χ) şi (ψ ∧ χ) ∨ φ cu (ψ ∨ φ) ∧ (χ ∨ φ).

11
forma normală conjunctivă / disjunctivă

Algoritm pentru a aduce o formulă la FNC/FND:


Pasul 1. Se înlocuiesc implicaţiile şi echivalenţele, folosind:

φ → ψ ∼ ¬φ ∨ ψ şi φ ↔ ψ ∼ (¬φ ∨ ψ) ∧ (¬ψ ∨ φ).

Pasul 2. Se înlocuiesc dublele negaţii, folosind ¬¬ψ ∼ ψ, şi se aplică


regulile De Morgan pentru a înlocui

¬(φ ∨ ψ) cu ¬φ ∧ ¬ψ şi ¬(φ ∧ ψ) cu ¬φ ∨ ¬ψ.

Pasul 3.
Pentru FNC, se aplică distributivitatea lui ∨ faţa de ∧, pentru a înlocui

φ ∨ (ψ ∧ χ) cu (φ ∨ ψ) ∧ (φ ∨ χ) şi (ψ ∧ χ) ∨ φ cu (ψ ∨ φ) ∧ (χ ∨ φ).

Pentru FND, se aplică distributivitatea lui ∧ faţa de ∨, pentru a înlocui

φ ∧ (ψ ∨ χ) cu (φ ∧ ψ) ∨ (φ ∧ χ) şi (ψ ∨ χ) ∧ φ cu (ψ ∧ φ) ∨ (χ ∧ φ).

11
forma normală conjunctivă / disjunctivă
Exemplu.
Considerăm formula φ := (¬v0 → ¬v2 ) → (v0 → v2 ).

12
forma normală conjunctivă / disjunctivă
Exemplu.
Considerăm formula φ := (¬v0 → ¬v2 ) → (v0 → v2 ).

φ ∼ ¬(¬v0 → ¬v2 ) ∨ (v0 → v2 ) Pasul 1

12
forma normală conjunctivă / disjunctivă
Exemplu.
Considerăm formula φ := (¬v0 → ¬v2 ) → (v0 → v2 ).

φ ∼ ¬(¬v0 → ¬v2 ) ∨ (v0 → v2 ) Pasul 1


∼ ¬(¬¬v0 ∨ ¬v2 ) ∨ (v0 → v2 ) Pasul 1

12
forma normală conjunctivă / disjunctivă
Exemplu.
Considerăm formula φ := (¬v0 → ¬v2 ) → (v0 → v2 ).

φ ∼ ¬(¬v0 → ¬v2 ) ∨ (v0 → v2 ) Pasul 1


∼ ¬(¬¬v0 ∨ ¬v2 ) ∨ (v0 → v2 ) Pasul 1
∼ ¬(¬¬v0 ∨ ¬v2 ) ∨ (¬v0 ∨ v2 ) Pasul 1

12
forma normală conjunctivă / disjunctivă
Exemplu.
Considerăm formula φ := (¬v0 → ¬v2 ) → (v0 → v2 ).

φ ∼ ¬(¬v0 → ¬v2 ) ∨ (v0 → v2 ) Pasul 1


∼ ¬(¬¬v0 ∨ ¬v2 ) ∨ (v0 → v2 ) Pasul 1
∼ ¬(¬¬v0 ∨ ¬v2 ) ∨ (¬v0 ∨ v2 ) Pasul 1
∼ ¬(v0 ∨ ¬v2 ) ∨ (¬v0 ∨ v2 ) Pasul 2

12
forma normală conjunctivă / disjunctivă
Exemplu.
Considerăm formula φ := (¬v0 → ¬v2 ) → (v0 → v2 ).

φ ∼ ¬(¬v0 → ¬v2 ) ∨ (v0 → v2 ) Pasul 1


∼ ¬(¬¬v0 ∨ ¬v2 ) ∨ (v0 → v2 ) Pasul 1
∼ ¬(¬¬v0 ∨ ¬v2 ) ∨ (¬v0 ∨ v2 ) Pasul 1
∼ ¬(v0 ∨ ¬v2 ) ∨ (¬v0 ∨ v2 ) Pasul 2
∼ (¬v0 ∧ ¬¬v2 ) ∨ (¬v0 ∨ v2 ) Pasul 2

12
forma normală conjunctivă / disjunctivă
Exemplu.
Considerăm formula φ := (¬v0 → ¬v2 ) → (v0 → v2 ).

φ ∼ ¬(¬v0 → ¬v2 ) ∨ (v0 → v2 ) Pasul 1


∼ ¬(¬¬v0 ∨ ¬v2 ) ∨ (v0 → v2 ) Pasul 1
∼ ¬(¬¬v0 ∨ ¬v2 ) ∨ (¬v0 ∨ v2 ) Pasul 1
∼ ¬(v0 ∨ ¬v2 ) ∨ (¬v0 ∨ v2 ) Pasul 2
∼ (¬v0 ∧ ¬¬v2 ) ∨ (¬v0 ∨ v2 ) Pasul 2
∼ (¬v0 ∧ v2 ) ∨ ¬v0 ∨ v2 Pasul 2.

12
forma normală conjunctivă / disjunctivă
Exemplu.
Considerăm formula φ := (¬v0 → ¬v2 ) → (v0 → v2 ).

φ ∼ ¬(¬v0 → ¬v2 ) ∨ (v0 → v2 ) Pasul 1


∼ ¬(¬¬v0 ∨ ¬v2 ) ∨ (v0 → v2 ) Pasul 1
∼ ¬(¬¬v0 ∨ ¬v2 ) ∨ (¬v0 ∨ v2 ) Pasul 1
∼ ¬(v0 ∨ ¬v2 ) ∨ (¬v0 ∨ v2 ) Pasul 2
∼ (¬v0 ∧ ¬¬v2 ) ∨ (¬v0 ∨ v2 ) Pasul 2
∼ (¬v0 ∧ v2 ) ∨ ¬v0 ∨ v2 Pasul 2.

Putem lua φFND := (¬v0 ∧ v2 ) ∨ ¬v0 ∨ v2 .

12
forma normală conjunctivă / disjunctivă
Exemplu.
Considerăm formula φ := (¬v0 → ¬v2 ) → (v0 → v2 ).

φ ∼ ¬(¬v0 → ¬v2 ) ∨ (v0 → v2 ) Pasul 1


∼ ¬(¬¬v0 ∨ ¬v2 ) ∨ (v0 → v2 ) Pasul 1
∼ ¬(¬¬v0 ∨ ¬v2 ) ∨ (¬v0 ∨ v2 ) Pasul 1
∼ ¬(v0 ∨ ¬v2 ) ∨ (¬v0 ∨ v2 ) Pasul 2
∼ (¬v0 ∧ ¬¬v2 ) ∨ (¬v0 ∨ v2 ) Pasul 2
∼ (¬v0 ∧ v2 ) ∨ ¬v0 ∨ v2 Pasul 2.

Putem lua φFND := (¬v0 ∧ v2 ) ∨ ¬v0 ∨ v2 .

Pentru a obţine FNC, continuăm cu Pasul 3:


φ ∼ (¬v0 ∧ v2 ) ∨ (¬v0 ∨ v2 )
∼ (¬v0 ∨ ¬v0 ∨ v2 ) ∧ (v2 ∨ ¬v0 ∨ v2 ).

12
forma normală conjunctivă / disjunctivă
Exemplu.
Considerăm formula φ := (¬v0 → ¬v2 ) → (v0 → v2 ).

φ ∼ ¬(¬v0 → ¬v2 ) ∨ (v0 → v2 ) Pasul 1


∼ ¬(¬¬v0 ∨ ¬v2 ) ∨ (v0 → v2 ) Pasul 1
∼ ¬(¬¬v0 ∨ ¬v2 ) ∨ (¬v0 ∨ v2 ) Pasul 1
∼ ¬(v0 ∨ ¬v2 ) ∨ (¬v0 ∨ v2 ) Pasul 2
∼ (¬v0 ∧ ¬¬v2 ) ∨ (¬v0 ∨ v2 ) Pasul 2
∼ (¬v0 ∧ v2 ) ∨ ¬v0 ∨ v2 Pasul 2.

Putem lua φFND := (¬v0 ∧ v2 ) ∨ ¬v0 ∨ v2 .

Pentru a obţine FNC, continuăm cu Pasul 3:


φ ∼ (¬v0 ∧ v2 ) ∨ (¬v0 ∨ v2 )
∼ (¬v0 ∨ ¬v0 ∨ v2 ) ∧ (v2 ∨ ¬v0 ∨ v2 ).

Putem lua φFNC := (¬v0 ∨ ¬v0 ∨ v2 ) ∧ (v2 ∨ ¬v0 ∨ v2 ). Se observă, folosind


idempotenţa (v ∨ v ∼ v) şi comutativitatea (v1 ∨ v2 ∼ v2 ∨ v1 ) lui ∨, că
φFNC ∼ ¬v0 ∨ v2 . 12
rezoluţia
problema sat

Problema satisfiabilităţii (SAT)


Fiind dată o formulă φ (în forma normală conjunctivă) există o evaluare
e : Var → {0, 1} astfel încât fe (φ) = 1?

Teorema Cook-Levin
SAT este o problemă NP-completă.

14
rezoluţia

∙ Rezoluţia propoziţională este o regula de deducţie pentru calculul


propoziţional clasic.

∙ Multe demonstratoare automate şi SAT-solvere au la bază rezoluţia.

∙ Utilizând rezoluţia se poate construi un demonstrator automat corect


şi complet pentru calculul propoziţional, fără alte teoreme şi reguli de
deducţie.

∙ Limbajul PROLOG este bazat pe rezoluţie.

15
rezoluţia

∙ Rezoluţia propoziţională este o regula de deducţie pentru calculul


propoziţional clasic.

∙ Multe demonstratoare automate şi SAT-solvere au la bază rezoluţia.

∙ Utilizând rezoluţia se poate construi un demonstrator automat corect


şi complet pentru calculul propoziţional, fără alte teoreme şi reguli de
deducţie.

∙ Limbajul PROLOG este bazat pe rezoluţie.

Rezoluţia este o metodă de verificare a satisfiabilităţii


pentru formule în forma clauzală.

15
clauze

Definiţia 2.6
O clauză este o mulţime finită de literali:

C = {L1 , . . . , Ln }, unde L1 , . . ., Ln sunt literali.

Dacă n = 0, obţinem clauza vidă □ := ∅.

16
clauze

Definiţia 2.6
O clauză este o mulţime finită de literali:

C = {L1 , . . . , Ln }, unde L1 , . . ., Ln sunt literali.

Dacă n = 0, obţinem clauza vidă □ := ∅.

O clauză nevidă este considerată implicit o disjuncţie.

16
clauze

Definiţia 2.6
O clauză este o mulţime finită de literali:

C = {L1 , . . . , Ln }, unde L1 , . . ., Ln sunt literali.

Dacă n = 0, obţinem clauza vidă □ := ∅.

O clauză nevidă este considerată implicit o disjuncţie.

Definiţia 2.7
Fie C o clauză şi e : V → {0, 1}. Spunem că e este model al lui C sau că e
satisface C şi scriem e ⊨ C dacă

16
clauze

Definiţia 2.6
O clauză este o mulţime finită de literali:

C = {L1 , . . . , Ln }, unde L1 , . . ., Ln sunt literali.

Dacă n = 0, obţinem clauza vidă □ := ∅.

O clauză nevidă este considerată implicit o disjuncţie.

Definiţia 2.7
Fie C o clauză şi e : V → {0, 1}. Spunem că e este model al lui C sau că e
satisface C şi scriem e ⊨ C dacă există L ∈ C a.î. e ⊨ L.

16
clauze

Definiţia 2.6
O clauză este o mulţime finită de literali:

C = {L1 , . . . , Ln }, unde L1 , . . ., Ln sunt literali.

Dacă n = 0, obţinem clauza vidă □ := ∅.

O clauză nevidă este considerată implicit o disjuncţie.

Definiţia 2.7
Fie C o clauză şi e : V → {0, 1}. Spunem că e este model al lui C sau că e
satisface C şi scriem e ⊨ C dacă există L ∈ C a.î. e ⊨ L.

Definiţia 2.8
O clauză C se numeşte

(i) satisfiabilă dacă are un model.


(ii) validă dacă orice evaluare e : V → {0, 1} este model al lui C.
16
clauze

Definiţia 2.9
O clauză C este trivială dacă există un literal L a.î. L, Lc ∈ C.

Propoziţia 2.10
(i) Orice clauză nevidă este satisfiabilă.
(ii) Clauza vidă □ este nesatisfiabilă.
(iii) O clauză este validă ddacă este trivială.

Demonstraţie. Exerciţiu.

17
clauze

Fie S = {C1 , . . . , Cm } este o mulţime de clauze.


Dacă m = 0, obţinem mulţimea vidă de clauze ∅.

S este considerată implicit ca o formulă în FNC: conjuncţie de disjuncţii


ale literalilor din fiecare clauză.

Definiţia 2.11
Fie e : V → {0, 1}. Spunem că e este model al lui S sau că e satisface S şi
scriem e ⊨ S dacă

18
clauze

Fie S = {C1 , . . . , Cm } este o mulţime de clauze.


Dacă m = 0, obţinem mulţimea vidă de clauze ∅.

S este considerată implicit ca o formulă în FNC: conjuncţie de disjuncţii


ale literalilor din fiecare clauză.

Definiţia 2.11
Fie e : V → {0, 1}. Spunem că e este model al lui S sau că e satisface S şi
scriem e ⊨ S dacă e ⊨ Ci pentru orice i ∈ {1, . . . , m}.

Definiţia 2.12
S se numeşte

(i) satisfiabilă dacă are un model.


(ii) validă dacă orice evaluare e : V → {0, 1} este model al lui S.
18
clauze

Propoziţia 2.13
∙ Dacă S conţine clauza vidă □, atunci S nu este satisfiabilă.
∙ ∅ este validă.

19
clauze

Propoziţia 2.13
∙ Dacă S conţine clauza vidă □, atunci S nu este satisfiabilă.
∙ ∅ este validă.

Exemplu.
Arătăm că S = {{v1 , ¬v3 }, {¬v3 , v3 }, {v2 , v1 }, {v2 , ¬v1 , v3 }} este satisfiabilă.

19
clauze

Propoziţia 2.13
∙ Dacă S conţine clauza vidă □, atunci S nu este satisfiabilă.
∙ ∅ este validă.

Exemplu.
Arătăm că S = {{v1 , ¬v3 }, {¬v3 , v3 }, {v2 , v1 }, {v2 , ¬v1 , v3 }} este satisfiabilă.
Considerăm e : V → {0, 1} a.î. e(v1 ) = e(v2 ) = 1. Atunci e ⊨ S.

19
clauze

Propoziţia 2.13
∙ Dacă S conţine clauza vidă □, atunci S nu este satisfiabilă.
∙ ∅ este validă.

Exemplu.
Arătăm că S = {{v1 , ¬v3 }, {¬v3 , v3 }, {v2 , v1 }, {v2 , ¬v1 , v3 }} este satisfiabilă.
Considerăm e : V → {0, 1} a.î. e(v1 ) = e(v2 ) = 1. Atunci e ⊨ S.

Exemplu.
Arătăm că S = {{¬v1 , v2 }, {¬v3 , ¬v2 }, {v1 }, {v3 }} nu este satisfiabilă.

19
clauze

Propoziţia 2.13
∙ Dacă S conţine clauza vidă □, atunci S nu este satisfiabilă.
∙ ∅ este validă.

Exemplu.
Arătăm că S = {{v1 , ¬v3 }, {¬v3 , v3 }, {v2 , v1 }, {v2 , ¬v1 , v3 }} este satisfiabilă.
Considerăm e : V → {0, 1} a.î. e(v1 ) = e(v2 ) = 1. Atunci e ⊨ S.

Exemplu.
Arătăm că S = {{¬v1 , v2 }, {¬v3 , ¬v2 }, {v1 }, {v3 }} nu este satisfiabilă.
Presupunem că S are un model e. Atunci

19
clauze

Propoziţia 2.13
∙ Dacă S conţine clauza vidă □, atunci S nu este satisfiabilă.
∙ ∅ este validă.

Exemplu.
Arătăm că S = {{v1 , ¬v3 }, {¬v3 , v3 }, {v2 , v1 }, {v2 , ¬v1 , v3 }} este satisfiabilă.
Considerăm e : V → {0, 1} a.î. e(v1 ) = e(v2 ) = 1. Atunci e ⊨ S.

Exemplu.
Arătăm că S = {{¬v1 , v2 }, {¬v3 , ¬v2 }, {v1 }, {v3 }} nu este satisfiabilă.
Presupunem că S are un model e. Atunci e(v1 ) = e(v3 ) = 1

19
clauze

Propoziţia 2.13
∙ Dacă S conţine clauza vidă □, atunci S nu este satisfiabilă.
∙ ∅ este validă.

Exemplu.
Arătăm că S = {{v1 , ¬v3 }, {¬v3 , v3 }, {v2 , v1 }, {v2 , ¬v1 , v3 }} este satisfiabilă.
Considerăm e : V → {0, 1} a.î. e(v1 ) = e(v2 ) = 1. Atunci e ⊨ S.

Exemplu.
Arătăm că S = {{¬v1 , v2 }, {¬v3 , ¬v2 }, {v1 }, {v3 }} nu este satisfiabilă.
Presupunem că S are un model e. Atunci e(v1 ) = e(v3 ) = 1 şi, deoarece
e ⊨ {¬v3 , ¬v2 }, trebuie să avem e(v2 ) = 0.

19
clauze

Propoziţia 2.13
∙ Dacă S conţine clauza vidă □, atunci S nu este satisfiabilă.
∙ ∅ este validă.

Exemplu.
Arătăm că S = {{v1 , ¬v3 }, {¬v3 , v3 }, {v2 , v1 }, {v2 , ¬v1 , v3 }} este satisfiabilă.
Considerăm e : V → {0, 1} a.î. e(v1 ) = e(v2 ) = 1. Atunci e ⊨ S.

Exemplu.
Arătăm că S = {{¬v1 , v2 }, {¬v3 , ¬v2 }, {v1 }, {v3 }} nu este satisfiabilă.
Presupunem că S are un model e. Atunci e(v1 ) = e(v3 ) = 1 şi, deoarece
e ⊨ {¬v3 , ¬v2 }, trebuie să avem e(v2 ) = 0. Rezultă că e(v2 ) = e+ (¬v1 ) = 0,
deci e nu satisface {¬v1 , v2 }.

19
clauze

Propoziţia 2.13
∙ Dacă S conţine clauza vidă □, atunci S nu este satisfiabilă.
∙ ∅ este validă.

Exemplu.
Arătăm că S = {{v1 , ¬v3 }, {¬v3 , v3 }, {v2 , v1 }, {v2 , ¬v1 , v3 }} este satisfiabilă.
Considerăm e : V → {0, 1} a.î. e(v1 ) = e(v2 ) = 1. Atunci e ⊨ S.

Exemplu.
Arătăm că S = {{¬v1 , v2 }, {¬v3 , ¬v2 }, {v1 }, {v3 }} nu este satisfiabilă.
Presupunem că S are un model e. Atunci e(v1 ) = e(v3 ) = 1 şi, deoarece
e ⊨ {¬v3 , ¬v2 }, trebuie să avem e(v2 ) = 0. Rezultă că e(v2 ) = e+ (¬v1 ) = 0,
deci e nu satisface {¬v1 , v2 }. Am obţinut o contradicţie.

19
clauze şi fnc

Unei formule φ în FNC îi asociem o mulţime de clauze Sφ .

Fie  
n
∧ ki

φ :=  Li,j  ,
i=1 j=1

unde fiecare Li,j este literal.

20
clauze şi fnc

Unei formule φ în FNC îi asociem o mulţime de clauze Sφ .

Fie  
n
∧ ki

φ :=  Li,j  ,
i=1 j=1

unde fiecare Li,j este literal. Pentru orice i, fie Ci clauza obţinută


considerând toţi literalii Li,j , j ∈ {1, . . . , ki } distincţi.

20
clauze şi fnc

Unei formule φ în FNC îi asociem o mulţime de clauze Sφ .

Fie  
n
∧ ki

φ :=  Li,j  ,
i=1 j=1

unde fiecare Li,j este literal. Pentru orice i, fie Ci clauza obţinută


considerând toţi literalii Li,j , j ∈ {1, . . . , ki } distincţi.
Fie Sφ mulţimea tuturor clauzelor Ci , i ∈ {1, . . . , n} distincte.

Sφ se mai numeşte şi forma clauzală a lui φ.

20
clauze şi fnc

Unei formule φ în FNC îi asociem o mulţime de clauze Sφ .

Fie  
n
∧ ki

φ :=  Li,j  ,
i=1 j=1

unde fiecare Li,j este literal. Pentru orice i, fie Ci clauza obţinută


considerând toţi literalii Li,j , j ∈ {1, . . . , ki } distincţi.
Fie Sφ mulţimea tuturor clauzelor Ci , i ∈ {1, . . . , n} distincte.

Sφ se mai numeşte şi forma clauzală a lui φ.

Propoziţia 2.14
Pentru orice evaluare e : V → {0, 1}, e ⊨ φ ddacă e ⊨ Sφ .

20
clauze şi fnc

Unei mulţimi de clauze S îi asociem o formulă φS în FNC astfel:

∙ C = {L1 , . . . , Ln }, n ≥ 1 7−→ φC := L1 ∨ L2 ∨ . . . ∨ Ln .
∙ □ 7−→ φ□ := v0 ∧ ¬v0 .

21
clauze şi fnc

Unei mulţimi de clauze S îi asociem o formulă φS în FNC astfel:

∙ C = {L1 , . . . , Ln }, n ≥ 1 7−→ φC := L1 ∨ L2 ∨ . . . ∨ Ln .
∙ □ 7−→ φ□ := v0 ∧ ¬v0 .

Fie S = {C1 , . . . , Cm } o mulţime nevidă de clauze. Formula asociată lui S


este
m

φS := φCi .
i=1

21
clauze şi fnc

Unei mulţimi de clauze S îi asociem o formulă φS în FNC astfel:

∙ C = {L1 , . . . , Ln }, n ≥ 1 7−→ φC := L1 ∨ L2 ∨ . . . ∨ Ln .
∙ □ 7−→ φ□ := v0 ∧ ¬v0 .

Fie S = {C1 , . . . , Cm } o mulţime nevidă de clauze. Formula asociată lui S


este
m

φS := φCi .
i=1

Formula asociată mulţimii vide de clauze este φ∅ := v0 ∨ ¬v0 .

21
clauze şi fnc

Unei mulţimi de clauze S îi asociem o formulă φS în FNC astfel:

∙ C = {L1 , . . . , Ln }, n ≥ 1 7−→ φC := L1 ∨ L2 ∨ . . . ∨ Ln .
∙ □ 7−→ φ□ := v0 ∧ ¬v0 .

Fie S = {C1 , . . . , Cm } o mulţime nevidă de clauze. Formula asociată lui S


este
m

φS := φCi .
i=1

Formula asociată mulţimii vide de clauze este φ∅ := v0 ∨ ¬v0 .


Formula φS nu este unic determinată, depinde de ordinea în care se
scriu elementele în clauze şi în S, dar se observă imediat că: S = S ′
implică φS ∼ φS ′ .

21
clauze şi fnc

Unei mulţimi de clauze S îi asociem o formulă φS în FNC astfel:

∙ C = {L1 , . . . , Ln }, n ≥ 1 7−→ φC := L1 ∨ L2 ∨ . . . ∨ Ln .
∙ □ 7−→ φ□ := v0 ∧ ¬v0 .

Fie S = {C1 , . . . , Cm } o mulţime nevidă de clauze. Formula asociată lui S


este
m

φS := φCi .
i=1

Formula asociată mulţimii vide de clauze este φ∅ := v0 ∨ ¬v0 .


Formula φS nu este unic determinată, depinde de ordinea în care se
scriu elementele în clauze şi în S, dar se observă imediat că: S = S ′
implică φS ∼ φS ′ .

Propoziţia 2.15
Pentru orice evaluare e : V → {0, 1}, e ⊨ S ddacă e ⊨ φS .
21
rezoluţie

Definiţia 2.16
Fie C1 , C2 două clauze. O clauză R se numeşte rezolvent al clauzelor C1 , C2
dacă există un literal L a.î. L ∈ C1 , Lc ∈ C2 şi

R = (C1 \ {L}) ∪ (C2 \ {Lc }).

22
rezoluţie

Definiţia 2.16
Fie C1 , C2 două clauze. O clauză R se numeşte rezolvent al clauzelor C1 , C2
dacă există un literal L a.î. L ∈ C1 , Lc ∈ C2 şi

R = (C1 \ {L}) ∪ (C2 \ {Lc }).

Regula Rezoluţiei
C1 , C2
Rez , L ∈ C1 , Lc ∈ C2
(C1 \ {L}) ∪ (C2 \ {Lc })

Notăm cu Res(C1 , C2 ) mulţimea rezolvenţilor clauzelor C1 , C2 .

22
rezoluţie

Exemplu.
Fie C1 = {v1 , v2 , ¬v5 } şi C2 = {v1 , ¬v2 , v100 , v5 }.

23
rezoluţie

Exemplu.
Fie C1 = {v1 , v2 , ¬v5 } şi C2 = {v1 , ¬v2 , v100 , v5 }.

∙ Luăm L := ¬v5 . Atunci L ∈ C1 şi Lc = v5 ∈ C2 .

23
rezoluţie

Exemplu.
Fie C1 = {v1 , v2 , ¬v5 } şi C2 = {v1 , ¬v2 , v100 , v5 }.

∙ Luăm L := ¬v5 . Atunci L ∈ C1 şi Lc = v5 ∈ C2 . Prin urmare,


R = {v1 , v2 , ¬v2 , v100 } este rezolvent al clauzelor C1 , C2 .

23
rezoluţie

Exemplu.
Fie C1 = {v1 , v2 , ¬v5 } şi C2 = {v1 , ¬v2 , v100 , v5 }.

∙ Luăm L := ¬v5 . Atunci L ∈ C1 şi Lc = v5 ∈ C2 . Prin urmare,


R = {v1 , v2 , ¬v2 , v100 } este rezolvent al clauzelor C1 , C2 .
∙ Dacă luăm L′ := v2 , atunci L′ ∈ C1 şi L′c = ¬v2 ∈ C2 .

23
rezoluţie

Exemplu.
Fie C1 = {v1 , v2 , ¬v5 } şi C2 = {v1 , ¬v2 , v100 , v5 }.

∙ Luăm L := ¬v5 . Atunci L ∈ C1 şi Lc = v5 ∈ C2 . Prin urmare,


R = {v1 , v2 , ¬v2 , v100 } este rezolvent al clauzelor C1 , C2 .
∙ Dacă luăm L′ := v2 , atunci L′ ∈ C1 şi L′c = ¬v2 ∈ C2 . Prin urmare,
R′ = {v1 , ¬v5 , v100 , v5 } este rezolvent al clauzelor C1 , C2 .

23
rezoluţie

Exemplu.
Fie C1 = {v1 , v2 , ¬v5 } şi C2 = {v1 , ¬v2 , v100 , v5 }.

∙ Luăm L := ¬v5 . Atunci L ∈ C1 şi Lc = v5 ∈ C2 . Prin urmare,


R = {v1 , v2 , ¬v2 , v100 } este rezolvent al clauzelor C1 , C2 .
∙ Dacă luăm L′ := v2 , atunci L′ ∈ C1 şi L′c = ¬v2 ∈ C2 . Prin urmare,
R′ = {v1 , ¬v5 , v100 , v5 } este rezolvent al clauzelor C1 , C2 .

Exemplu.
Fie C1 = {v7 } şi C2 = {¬v7 }.

23
rezoluţie

Exemplu.
Fie C1 = {v1 , v2 , ¬v5 } şi C2 = {v1 , ¬v2 , v100 , v5 }.

∙ Luăm L := ¬v5 . Atunci L ∈ C1 şi Lc = v5 ∈ C2 . Prin urmare,


R = {v1 , v2 , ¬v2 , v100 } este rezolvent al clauzelor C1 , C2 .
∙ Dacă luăm L′ := v2 , atunci L′ ∈ C1 şi L′c = ¬v2 ∈ C2 . Prin urmare,
R′ = {v1 , ¬v5 , v100 , v5 } este rezolvent al clauzelor C1 , C2 .

Exemplu.
Fie C1 = {v7 } şi C2 = {¬v7 }.
Atunci clauza vidă □ este rezolvent al clauzelor C1 , C2 .

23
rezoluţie

Fie S o mulţime de clauze.

Definiţia 2.17
O derivare prin rezoluţie din S sau o S-derivare prin rezoluţie este o
secvenţă C1 , C2 , . . . , Cn de clauze a.î. pentru fiecare i ∈ {1, . . . , n}, una din
următoarele condiţii este satisfăcută:

(i) Ci este o clauză din S;


(ii) există j, k < i a.î. Ci este rezolvent al clauzelor Cj , Ck .

24
rezoluţie

Fie S o mulţime de clauze.

Definiţia 2.17
O derivare prin rezoluţie din S sau o S-derivare prin rezoluţie este o
secvenţă C1 , C2 , . . . , Cn de clauze a.î. pentru fiecare i ∈ {1, . . . , n}, una din
următoarele condiţii este satisfăcută:

(i) Ci este o clauză din S;


(ii) există j, k < i a.î. Ci este rezolvent al clauzelor Cj , Ck .

Definiţia 2.18
Fie C o clauză. O derivare prin rezoluţie a lui C din S este o S-derivare
prin rezoluţie C1 , C2 , . . . , Cn a.î. Cn = C.

24
rezoluţie

Exemplu.
Fie
S = {{¬v1 , v2 }, {¬v2 , ¬v3 , v4 }, {v1 }, {v3 }, {¬v4 }}.
O derivare prin rezoluţie a clauzei vide □ din S este următoarea:

25
rezoluţie

Exemplu.
Fie
S = {{¬v1 , v2 }, {¬v2 , ¬v3 , v4 }, {v1 }, {v3 }, {¬v4 }}.
O derivare prin rezoluţie a clauzei vide □ din S este următoarea:
C1 = {¬v4 }

25
rezoluţie

Exemplu.
Fie
S = {{¬v1 , v2 }, {¬v2 , ¬v3 , v4 }, {v1 }, {v3 }, {¬v4 }}.
O derivare prin rezoluţie a clauzei vide □ din S este următoarea:
C1 = {¬v4 } C1 ∈ S

25
rezoluţie

Exemplu.
Fie
S = {{¬v1 , v2 }, {¬v2 , ¬v3 , v4 }, {v1 }, {v3 }, {¬v4 }}.
O derivare prin rezoluţie a clauzei vide □ din S este următoarea:
C1 = {¬v4 } C1 ∈ S
C2 = {¬v2 , ¬v3 , v4 }

25
rezoluţie

Exemplu.
Fie
S = {{¬v1 , v2 }, {¬v2 , ¬v3 , v4 }, {v1 }, {v3 }, {¬v4 }}.
O derivare prin rezoluţie a clauzei vide □ din S este următoarea:
C1 = {¬v4 } C1 ∈ S
C2 = {¬v2 , ¬v3 , v4 } C2 ∈ S

25
rezoluţie

Exemplu.
Fie
S = {{¬v1 , v2 }, {¬v2 , ¬v3 , v4 }, {v1 }, {v3 }, {¬v4 }}.
O derivare prin rezoluţie a clauzei vide □ din S este următoarea:
C1 = {¬v4 } C1 ∈ S
C2 = {¬v2 , ¬v3 , v4 } C2 ∈ S
C3 = {¬v2 , ¬v3 }

25
rezoluţie

Exemplu.
Fie
S = {{¬v1 , v2 }, {¬v2 , ¬v3 , v4 }, {v1 }, {v3 }, {¬v4 }}.
O derivare prin rezoluţie a clauzei vide □ din S este următoarea:
C1 = {¬v4 } C1 ∈ S
C2 = {¬v2 , ¬v3 , v4 } C2 ∈ S
C3 = {¬v2 , ¬v3 } C3 rezolvent al clauzelor C1 , C2

25
rezoluţie

Exemplu.
Fie
S = {{¬v1 , v2 }, {¬v2 , ¬v3 , v4 }, {v1 }, {v3 }, {¬v4 }}.
O derivare prin rezoluţie a clauzei vide □ din S este următoarea:
C1 = {¬v4 } C1 ∈ S
C2 = {¬v2 , ¬v3 , v4 } C2 ∈ S
C3 = {¬v2 , ¬v3 } C3 rezolvent al clauzelor C1 , C2
C4 = {v3 }

25
rezoluţie

Exemplu.
Fie
S = {{¬v1 , v2 }, {¬v2 , ¬v3 , v4 }, {v1 }, {v3 }, {¬v4 }}.
O derivare prin rezoluţie a clauzei vide □ din S este următoarea:
C1 = {¬v4 } C1 ∈ S
C2 = {¬v2 , ¬v3 , v4 } C2 ∈ S
C3 = {¬v2 , ¬v3 } C3 rezolvent al clauzelor C1 , C2
C4 = {v3 } C4 ∈ S

25
rezoluţie

Exemplu.
Fie
S = {{¬v1 , v2 }, {¬v2 , ¬v3 , v4 }, {v1 }, {v3 }, {¬v4 }}.
O derivare prin rezoluţie a clauzei vide □ din S este următoarea:
C1 = {¬v4 } C1 ∈ S
C2 = {¬v2 , ¬v3 , v4 } C2 ∈ S
C3 = {¬v2 , ¬v3 } C3 rezolvent al clauzelor C1 , C2
C4 = {v3 } C4 ∈ S
C5 = {¬v2 }

25
rezoluţie

Exemplu.
Fie
S = {{¬v1 , v2 }, {¬v2 , ¬v3 , v4 }, {v1 }, {v3 }, {¬v4 }}.
O derivare prin rezoluţie a clauzei vide □ din S este următoarea:
C1 = {¬v4 } C1 ∈ S
C2 = {¬v2 , ¬v3 , v4 } C2 ∈ S
C3 = {¬v2 , ¬v3 } C3 rezolvent al clauzelor C1 , C2
C4 = {v3 } C4 ∈ S
C5 = {¬v2 } C5 rezolvent al clauzelor C3 , C4

25
rezoluţie

Exemplu.
Fie
S = {{¬v1 , v2 }, {¬v2 , ¬v3 , v4 }, {v1 }, {v3 }, {¬v4 }}.
O derivare prin rezoluţie a clauzei vide □ din S este următoarea:
C1 = {¬v4 } C1 ∈ S
C2 = {¬v2 , ¬v3 , v4 } C2 ∈ S
C3 = {¬v2 , ¬v3 } C3 rezolvent al clauzelor C1 , C2
C4 = {v3 } C4 ∈ S
C5 = {¬v2 } C5 rezolvent al clauzelor C3 , C4
C6 = {¬v1 , v2 }

25
rezoluţie

Exemplu.
Fie
S = {{¬v1 , v2 }, {¬v2 , ¬v3 , v4 }, {v1 }, {v3 }, {¬v4 }}.
O derivare prin rezoluţie a clauzei vide □ din S este următoarea:
C1 = {¬v4 } C1 ∈ S
C2 = {¬v2 , ¬v3 , v4 } C2 ∈ S
C3 = {¬v2 , ¬v3 } C3 rezolvent al clauzelor C1 , C2
C4 = {v3 } C4 ∈ S
C5 = {¬v2 } C5 rezolvent al clauzelor C3 , C4
C6 = {¬v1 , v2 } C6 ∈ S

25
rezoluţie

Exemplu.
Fie
S = {{¬v1 , v2 }, {¬v2 , ¬v3 , v4 }, {v1 }, {v3 }, {¬v4 }}.
O derivare prin rezoluţie a clauzei vide □ din S este următoarea:
C1 = {¬v4 } C1 ∈ S
C2 = {¬v2 , ¬v3 , v4 } C2 ∈ S
C3 = {¬v2 , ¬v3 } C3 rezolvent al clauzelor C1 , C2
C4 = {v3 } C4 ∈ S
C5 = {¬v2 } C5 rezolvent al clauzelor C3 , C4
C6 = {¬v1 , v2 } C6 ∈ S
C7 = {¬v1 }

25
rezoluţie

Exemplu.
Fie
S = {{¬v1 , v2 }, {¬v2 , ¬v3 , v4 }, {v1 }, {v3 }, {¬v4 }}.
O derivare prin rezoluţie a clauzei vide □ din S este următoarea:
C1 = {¬v4 } C1 ∈ S
C2 = {¬v2 , ¬v3 , v4 } C2 ∈ S
C3 = {¬v2 , ¬v3 } C3 rezolvent al clauzelor C1 , C2
C4 = {v3 } C4 ∈ S
C5 = {¬v2 } C5 rezolvent al clauzelor C3 , C4
C6 = {¬v1 , v2 } C6 ∈ S
C7 = {¬v1 } C7 rezolvent al clauzelor C5 , C6

25
rezoluţie

Exemplu.
Fie
S = {{¬v1 , v2 }, {¬v2 , ¬v3 , v4 }, {v1 }, {v3 }, {¬v4 }}.
O derivare prin rezoluţie a clauzei vide □ din S este următoarea:
C1 = {¬v4 } C1 ∈ S
C2 = {¬v2 , ¬v3 , v4 } C2 ∈ S
C3 = {¬v2 , ¬v3 } C3 rezolvent al clauzelor C1 , C2
C4 = {v3 } C4 ∈ S
C5 = {¬v2 } C5 rezolvent al clauzelor C3 , C4
C6 = {¬v1 , v2 } C6 ∈ S
C7 = {¬v1 } C7 rezolvent al clauzelor C5 , C6
C8 = {v1 }

25
rezoluţie

Exemplu.
Fie
S = {{¬v1 , v2 }, {¬v2 , ¬v3 , v4 }, {v1 }, {v3 }, {¬v4 }}.
O derivare prin rezoluţie a clauzei vide □ din S este următoarea:
C1 = {¬v4 } C1 ∈ S
C2 = {¬v2 , ¬v3 , v4 } C2 ∈ S
C3 = {¬v2 , ¬v3 } C3 rezolvent al clauzelor C1 , C2
C4 = {v3 } C4 ∈ S
C5 = {¬v2 } C5 rezolvent al clauzelor C3 , C4
C6 = {¬v1 , v2 } C6 ∈ S
C7 = {¬v1 } C7 rezolvent al clauzelor C5 , C6
C8 = {v1 } C8 ∈ S

25
rezoluţie

Exemplu.
Fie
S = {{¬v1 , v2 }, {¬v2 , ¬v3 , v4 }, {v1 }, {v3 }, {¬v4 }}.
O derivare prin rezoluţie a clauzei vide □ din S este următoarea:
C1 = {¬v4 } C1 ∈ S
C2 = {¬v2 , ¬v3 , v4 } C2 ∈ S
C3 = {¬v2 , ¬v3 } C3 rezolvent al clauzelor C1 , C2
C4 = {v3 } C4 ∈ S
C5 = {¬v2 } C5 rezolvent al clauzelor C3 , C4
C6 = {¬v1 , v2 } C6 ∈ S
C7 = {¬v1 } C7 rezolvent al clauzelor C5 , C6
C8 = {v1 } C8 ∈ S
C9 = □

25
rezoluţie

Exemplu.
Fie
S = {{¬v1 , v2 }, {¬v2 , ¬v3 , v4 }, {v1 }, {v3 }, {¬v4 }}.
O derivare prin rezoluţie a clauzei vide □ din S este următoarea:
C1 = {¬v4 } C1 ∈ S
C2 = {¬v2 , ¬v3 , v4 } C2 ∈ S
C3 = {¬v2 , ¬v3 } C3 rezolvent al clauzelor C1 , C2
C4 = {v3 } C4 ∈ S
C5 = {¬v2 } C5 rezolvent al clauzelor C3 , C4
C6 = {¬v1 , v2 } C6 ∈ S
C7 = {¬v1 } C7 rezolvent al clauzelor C5 , C6
C8 = {v1 } C8 ∈ S
C9 = □ C9 rezolvent al clauzelor C7 , C8 .

25
rezoluţie

Teorema 2.19
Fie S o mulţime de clauze. Dacă □ se derivează prin rezoluţie din S,
atunci S este nesatisfiabilă.

26
algoritmul davis-putnam (dp)

Intrare: S mulţime nevidă de clauze netriviale.


i := 1, S1 := S

27
algoritmul davis-putnam (dp)

Intrare: S mulţime nevidă de clauze netriviale.


i := 1, S1 := S
Pasul i.1. Fie xi o variabilă care apare în Si . Definim
Ti 1 := {C ∈ Si | xi ∈ C}, Ti 0 := {C ∈ Si | ¬xi ∈ C}.

27
algoritmul davis-putnam (dp)

Intrare: S mulţime nevidă de clauze netriviale.


i := 1, S1 := S
Pasul i.1. Fie xi o variabilă care apare în Si . Definim
Ti 1 := {C ∈ Si | xi ∈ C}, Ti 0 := {C ∈ Si | ¬xi ∈ C}.

27
algoritmul davis-putnam (dp)

Intrare: S mulţime nevidă de clauze netriviale.


i := 1, S1 := S
Pasul i.1. Fie xi o variabilă care apare în Si . Definim
Ti 1 := {C ∈ Si | xi ∈ C}, Ti 0 := {C ∈ Si | ¬xi ∈ C}.

Pasul i.2. Dacă (Ti 1 ̸= ∅ şi Ti 0 ̸= ∅) atunci


Ui := {(C1 \ {xi }) ∪ (C0 \ {¬xi }) | C1 ∈ Ti 1 , C0 ∈ Ti 0 }.
altfel Ui := ∅.

27
algoritmul davis-putnam (dp)

Intrare: S mulţime nevidă de clauze netriviale.


i := 1, S1 := S
Pasul i.1. Fie xi o variabilă care apare în Si . Definim
Ti 1 := {C ∈ Si | xi ∈ C}, Ti 0 := {C ∈ Si | ¬xi ∈ C}.

Pasul i.2. Dacă (Ti 1 ̸= ∅ şi Ti 0 ̸= ∅) atunci


Ui := {(C1 \ {xi }) ∪ (C0 \ {¬xi }) | C1 ∈ Ti 1 , C0 ∈ Ti 0 }.
altfel Ui := ∅.
Pasul i.3. Definim ( )

Si+1 := Si \ (Ti 0 ∪ Ti 1 ) ∪ Ui ;

27
algoritmul davis-putnam (dp)

Intrare: S mulţime nevidă de clauze netriviale.


i := 1, S1 := S
Pasul i.1. Fie xi o variabilă care apare în Si . Definim
Ti 1 := {C ∈ Si | xi ∈ C}, Ti 0 := {C ∈ Si | ¬xi ∈ C}.

Pasul i.2. Dacă (Ti 1 ̸= ∅ şi Ti 0 ̸= ∅) atunci


Ui := {(C1 \ {xi }) ∪ (C0 \ {¬xi }) | C1 ∈ Ti 1 , C0 ∈ Ti 0 }.
altfel Ui := ∅.
Pasul i.3. Definim ( )

Si+1 := Si \ (Ti 0 ∪ Ti 1 ) ∪ Ui ;
′ ′
Si+1 := Si+1 \ {C ∈ Si+1 | C trivială}.

27
algoritmul davis-putnam (dp)

Intrare: S mulţime nevidă de clauze netriviale.


i := 1, S1 := S
Pasul i.1. Fie xi o variabilă care apare în Si . Definim
Ti 1 := {C ∈ Si | xi ∈ C}, Ti 0 := {C ∈ Si | ¬xi ∈ C}.

Pasul i.2. Dacă (Ti 1 ̸= ∅ şi Ti 0 ̸= ∅) atunci


Ui := {(C1 \ {xi }) ∪ (C0 \ {¬xi }) | C1 ∈ Ti 1 , C0 ∈ Ti 0 }.
altfel Ui := ∅.
Pasul i.3. Definim ( )

Si+1 := Si \ (Ti 0 ∪ Ti 1 ) ∪ Ui ;
′ ′
Si+1 := Si+1 \ {C ∈ Si+1 | C trivială}.

Pasul i.4. Dacă Si+1 = ∅ atunci S este satisfiabilă.


altfel dacă □ ∈ Si+1 atunci S este nesatisfiabilă.
altfel {i := i + 1; go to Pasul i.1}. 27
algoritmul davis-putnam (dp)

Exemplu.
Fie S = {{v1 , ¬v3 }, {v2 , v1 }, {v2 , ¬v1 , v3 }}
i := 1, S1 := S.

28
algoritmul davis-putnam (dp)

Exemplu.
Fie S = {{v1 , ¬v3 }, {v2 , v1 }, {v2 , ¬v1 , v3 }}
i := 1, S1 := S.

P1.1 x1 := v3 ; T11 := {{v2 , ¬v1 , v3 }}; T10 := {{v1 , ¬v3 }}.

28
algoritmul davis-putnam (dp)

Exemplu.
Fie S = {{v1 , ¬v3 }, {v2 , v1 }, {v2 , ¬v1 , v3 }}
i := 1, S1 := S.

P1.1 x1 := v3 ; T11 := {{v2 , ¬v1 , v3 }}; T10 := {{v1 , ¬v3 }}.


P1.2 U1 := {{v2 , ¬v1 , v1 }}.

28
algoritmul davis-putnam (dp)

Exemplu.
Fie S = {{v1 , ¬v3 }, {v2 , v1 }, {v2 , ¬v1 , v3 }}
i := 1, S1 := S.

P1.1 x1 := v3 ; T11 := {{v2 , ¬v1 , v3 }}; T10 := {{v1 , ¬v3 }}.


P1.2 U1 := {{v2 , ¬v1 , v1 }}.
P1.3 S2′ := {{v2 , v1 }, {v2 , ¬v1 , v1 }}; S2 := {{v2 , v1 }}.

28
algoritmul davis-putnam (dp)

Exemplu.
Fie S = {{v1 , ¬v3 }, {v2 , v1 }, {v2 , ¬v1 , v3 }}
i := 1, S1 := S.

P1.1 x1 := v3 ; T11 := {{v2 , ¬v1 , v3 }}; T10 := {{v1 , ¬v3 }}.


P1.2 U1 := {{v2 , ¬v1 , v1 }}.
P1.3 S2′ := {{v2 , v1 }, {v2 , ¬v1 , v1 }}; S2 := {{v2 , v1 }}.
P1.4 i := 2 and go to P2.1.

28
algoritmul davis-putnam (dp)

Exemplu.
Fie S = {{v1 , ¬v3 }, {v2 , v1 }, {v2 , ¬v1 , v3 }}
i := 1, S1 := S.

P1.1 x1 := v3 ; T11 := {{v2 , ¬v1 , v3 }}; T10 := {{v1 , ¬v3 }}.


P1.2 U1 := {{v2 , ¬v1 , v1 }}.
P1.3 S2′ := {{v2 , v1 }, {v2 , ¬v1 , v1 }}; S2 := {{v2 , v1 }}.
P1.4 i := 2 and go to P2.1.

P2.1 x2 := v2 ; T21 := {{v2 , v1 }}; T20 := ∅.

28
algoritmul davis-putnam (dp)

Exemplu.
Fie S = {{v1 , ¬v3 }, {v2 , v1 }, {v2 , ¬v1 , v3 }}
i := 1, S1 := S.

P1.1 x1 := v3 ; T11 := {{v2 , ¬v1 , v3 }}; T10 := {{v1 , ¬v3 }}.


P1.2 U1 := {{v2 , ¬v1 , v1 }}.
P1.3 S2′ := {{v2 , v1 }, {v2 , ¬v1 , v1 }}; S2 := {{v2 , v1 }}.
P1.4 i := 2 and go to P2.1.

P2.1 x2 := v2 ; T21 := {{v2 , v1 }}; T20 := ∅.


P2.2 U2 := ∅.

28
algoritmul davis-putnam (dp)

Exemplu.
Fie S = {{v1 , ¬v3 }, {v2 , v1 }, {v2 , ¬v1 , v3 }}
i := 1, S1 := S.

P1.1 x1 := v3 ; T11 := {{v2 , ¬v1 , v3 }}; T10 := {{v1 , ¬v3 }}.


P1.2 U1 := {{v2 , ¬v1 , v1 }}.
P1.3 S2′ := {{v2 , v1 }, {v2 , ¬v1 , v1 }}; S2 := {{v2 , v1 }}.
P1.4 i := 2 and go to P2.1.

P2.1 x2 := v2 ; T21 := {{v2 , v1 }}; T20 := ∅.


P2.2 U2 := ∅.
P2.3 S3 := ∅.

28
algoritmul davis-putnam (dp)

Exemplu.
Fie S = {{v1 , ¬v3 }, {v2 , v1 }, {v2 , ¬v1 , v3 }}
i := 1, S1 := S.

P1.1 x1 := v3 ; T11 := {{v2 , ¬v1 , v3 }}; T10 := {{v1 , ¬v3 }}.


P1.2 U1 := {{v2 , ¬v1 , v1 }}.
P1.3 S2′ := {{v2 , v1 }, {v2 , ¬v1 , v1 }}; S2 := {{v2 , v1 }}.
P1.4 i := 2 and go to P2.1.

P2.1 x2 := v2 ; T21 := {{v2 , v1 }}; T20 := ∅.


P2.2 U2 := ∅.
P2.3 S3 := ∅.
P2.4 S este satisfiabilă.

28
algoritmul davis-putnam (dp)

Exemplu.
Fie S = {{¬v1 , v2 , ¬v4 }, {¬v3 , ¬v2 }, {v1 , v3 }, {v1 }, {v3 }, {v4 }}.
i := 1, S1 := S.

29
algoritmul davis-putnam (dp)

Exemplu.
Fie S = {{¬v1 , v2 , ¬v4 }, {¬v3 , ¬v2 }, {v1 , v3 }, {v1 }, {v3 }, {v4 }}.
i := 1, S1 := S.
P1.1 x1 := v1 ; T11 := {{v1 , v3 }, {v1 }}; T10 := {{¬v1 , v2 , ¬v4 }}.

29
algoritmul davis-putnam (dp)

Exemplu.
Fie S = {{¬v1 , v2 , ¬v4 }, {¬v3 , ¬v2 }, {v1 , v3 }, {v1 }, {v3 }, {v4 }}.
i := 1, S1 := S.
P1.1 x1 := v1 ; T11 := {{v1 , v3 }, {v1 }}; T10 := {{¬v1 , v2 , ¬v4 }}.
P1.2 U1 := {{v3 , v2 , ¬v4 }, {v2 , ¬v4 }}.

29
algoritmul davis-putnam (dp)

Exemplu.
Fie S = {{¬v1 , v2 , ¬v4 }, {¬v3 , ¬v2 }, {v1 , v3 }, {v1 }, {v3 }, {v4 }}.
i := 1, S1 := S.
P1.1 x1 := v1 ; T11 := {{v1 , v3 }, {v1 }}; T10 := {{¬v1 , v2 , ¬v4 }}.
P1.2 U1 := {{v3 , v2 , ¬v4 }, {v2 , ¬v4 }}.
P1.3 S2 := {{¬v3 , ¬v2 }, {v3 }, {v4 }, {v3 , v2 , ¬v4 }, {v2 , ¬v4 }}.

29
algoritmul davis-putnam (dp)

Exemplu.
Fie S = {{¬v1 , v2 , ¬v4 }, {¬v3 , ¬v2 }, {v1 , v3 }, {v1 }, {v3 }, {v4 }}.
i := 1, S1 := S.
P1.1 x1 := v1 ; T11 := {{v1 , v3 }, {v1 }}; T10 := {{¬v1 , v2 , ¬v4 }}.
P1.2 U1 := {{v3 , v2 , ¬v4 }, {v2 , ¬v4 }}.
P1.3 S2 := {{¬v3 , ¬v2 }, {v3 }, {v4 }, {v3 , v2 , ¬v4 }, {v2 , ¬v4 }}.
P1.4 i := 2 and go to P2.1.

29
algoritmul davis-putnam (dp)

Exemplu.
Fie S = {{¬v1 , v2 , ¬v4 }, {¬v3 , ¬v2 }, {v1 , v3 }, {v1 }, {v3 }, {v4 }}.
i := 1, S1 := S.
P1.1 x1 := v1 ; T11 := {{v1 , v3 }, {v1 }}; T10 := {{¬v1 , v2 , ¬v4 }}.
P1.2 U1 := {{v3 , v2 , ¬v4 }, {v2 , ¬v4 }}.
P1.3 S2 := {{¬v3 , ¬v2 }, {v3 }, {v4 }, {v3 , v2 , ¬v4 }, {v2 , ¬v4 }}.
P1.4 i := 2 and go to P2.1.

P2.1. x2 := v2 ; T21 := {{v3 , v2 , ¬v4 }, {v2 , ¬v4 }}; T20 := {{¬v3 , ¬v2 }}.

29
algoritmul davis-putnam (dp)

Exemplu.
Fie S = {{¬v1 , v2 , ¬v4 }, {¬v3 , ¬v2 }, {v1 , v3 }, {v1 }, {v3 }, {v4 }}.
i := 1, S1 := S.
P1.1 x1 := v1 ; T11 := {{v1 , v3 }, {v1 }}; T10 := {{¬v1 , v2 , ¬v4 }}.
P1.2 U1 := {{v3 , v2 , ¬v4 }, {v2 , ¬v4 }}.
P1.3 S2 := {{¬v3 , ¬v2 }, {v3 }, {v4 }, {v3 , v2 , ¬v4 }, {v2 , ¬v4 }}.
P1.4 i := 2 and go to P2.1.

P2.1. x2 := v2 ; T21 := {{v3 , v2 , ¬v4 }, {v2 , ¬v4 }}; T20 := {{¬v3 , ¬v2 }}.
P2.2 U2 := {{v3 , ¬v4 , ¬v3 }, {¬v4 , ¬v3 }}.

29
algoritmul davis-putnam (dp)

Exemplu.
Fie S = {{¬v1 , v2 , ¬v4 }, {¬v3 , ¬v2 }, {v1 , v3 }, {v1 }, {v3 }, {v4 }}.
i := 1, S1 := S.
P1.1 x1 := v1 ; T11 := {{v1 , v3 }, {v1 }}; T10 := {{¬v1 , v2 , ¬v4 }}.
P1.2 U1 := {{v3 , v2 , ¬v4 }, {v2 , ¬v4 }}.
P1.3 S2 := {{¬v3 , ¬v2 }, {v3 }, {v4 }, {v3 , v2 , ¬v4 }, {v2 , ¬v4 }}.
P1.4 i := 2 and go to P2.1.

P2.1. x2 := v2 ; T21 := {{v3 , v2 , ¬v4 }, {v2 , ¬v4 }}; T20 := {{¬v3 , ¬v2 }}.
P2.2 U2 := {{v3 , ¬v4 , ¬v3 }, {¬v4 , ¬v3 }}.
P2.3 S3 := {{v3 }, {v4 }, {¬v4 , ¬v3 }}.

29
algoritmul davis-putnam (dp)

Exemplu.
Fie S = {{¬v1 , v2 , ¬v4 }, {¬v3 , ¬v2 }, {v1 , v3 }, {v1 }, {v3 }, {v4 }}.
i := 1, S1 := S.
P1.1 x1 := v1 ; T11 := {{v1 , v3 }, {v1 }}; T10 := {{¬v1 , v2 , ¬v4 }}.
P1.2 U1 := {{v3 , v2 , ¬v4 }, {v2 , ¬v4 }}.
P1.3 S2 := {{¬v3 , ¬v2 }, {v3 }, {v4 }, {v3 , v2 , ¬v4 }, {v2 , ¬v4 }}.
P1.4 i := 2 and go to P2.1.

P2.1. x2 := v2 ; T21 := {{v3 , v2 , ¬v4 }, {v2 , ¬v4 }}; T20 := {{¬v3 , ¬v2 }}.
P2.2 U2 := {{v3 , ¬v4 , ¬v3 }, {¬v4 , ¬v3 }}.
P2.3 S3 := {{v3 }, {v4 }, {¬v4 , ¬v3 }}.
P2.4 i := 3 and go to P3.1.

29
algoritmul davis-putnam (dp)

Exemplu. (continuare)
P3.1 x3 := v3 ; T31 := {{v3 }}; T30 := {{¬v4 , ¬v3 }}.

30
algoritmul davis-putnam (dp)

Exemplu. (continuare)
P3.1 x3 := v3 ; T31 := {{v3 }}; T30 := {{¬v4 , ¬v3 }}.
P3.2. U3 := {{¬v4 }}.

30
algoritmul davis-putnam (dp)

Exemplu. (continuare)
P3.1 x3 := v3 ; T31 := {{v3 }}; T30 := {{¬v4 , ¬v3 }}.
P3.2. U3 := {{¬v4 }}. P3.3 S4 := {{v4 }, {¬v4 }}.

30
algoritmul davis-putnam (dp)

Exemplu. (continuare)
P3.1 x3 := v3 ; T31 := {{v3 }}; T30 := {{¬v4 , ¬v3 }}.
P3.2. U3 := {{¬v4 }}. P3.3 S4 := {{v4 }, {¬v4 }}.
P3.4 i := 4 and go to P4.1.

30
algoritmul davis-putnam (dp)

Exemplu. (continuare)
P3.1 x3 := v3 ; T31 := {{v3 }}; T30 := {{¬v4 , ¬v3 }}.
P3.2. U3 := {{¬v4 }}. P3.3 S4 := {{v4 }, {¬v4 }}.
P3.4 i := 4 and go to P4.1.

P4.1 x4 := v4 ; T41 := {{v4 }}; T40 := {{¬v4 }}.

30
algoritmul davis-putnam (dp)

Exemplu. (continuare)
P3.1 x3 := v3 ; T31 := {{v3 }}; T30 := {{¬v4 , ¬v3 }}.
P3.2. U3 := {{¬v4 }}. P3.3 S4 := {{v4 }, {¬v4 }}.
P3.4 i := 4 and go to P4.1.

P4.1 x4 := v4 ; T41 := {{v4 }}; T40 := {{¬v4 }}.


P4.2 U4 := {□}.

30
algoritmul davis-putnam (dp)

Exemplu. (continuare)
P3.1 x3 := v3 ; T31 := {{v3 }}; T30 := {{¬v4 , ¬v3 }}.
P3.2. U3 := {{¬v4 }}. P3.3 S4 := {{v4 }, {¬v4 }}.
P3.4 i := 4 and go to P4.1.

P4.1 x4 := v4 ; T41 := {{v4 }}; T40 := {{¬v4 }}.


P4.2 U4 := {□}. P4.3 S5 := {□}.

30
algoritmul davis-putnam (dp)

Exemplu. (continuare)
P3.1 x3 := v3 ; T31 := {{v3 }}; T30 := {{¬v4 , ¬v3 }}.
P3.2. U3 := {{¬v4 }}. P3.3 S4 := {{v4 }, {¬v4 }}.
P3.4 i := 4 and go to P4.1.

P4.1 x4 := v4 ; T41 := {{v4 }}; T40 := {{¬v4 }}.


P4.2 U4 := {□}. P4.3 S5 := {□}.
P4.4 S nu este satisfiabilă.

30
recap - sist. deductiv de tip hilbert
(partea 2) sistemul deductiv de tip hilbert

Axiomele logice.
Mulţimea Axm a axiomelor lui LP constă în toate formulele de forma:

(A1) φ → (ψ → φ)
(A2) (φ → (ψ → χ)) → ((φ → ψ) → (φ → χ))
(A3) (¬ψ → ¬φ) → (φ → ψ)

unde φ, ψ şi χ sunt formule.

Regula de deducţie.
Pentru orice formule φ, ψ,

din φ şi φ → ψ se inferă ψ (modus ponens sau (MP)):


φ, φ → ψ
ψ

32
(partea 2) Γ-teoreme

Fie Γ o mulţime de formule.

Definiţia 1.23
Γ-teoremele sunt formulele lui LP definite astfel:

(T0) Orice axiomă este Γ-teoremă.


(T1) Orice formulă din Γ este Γ-teoremă.
(T2) Dacă φ şi φ → ψ sunt Γ-teoreme, atunci ψ este Γ-teoremă.

Thm(Γ) := mulţimea Γ-teoremelor


Thm := Thm(∅)
Γ⊢φ ⇔ φ este Γ-teoremă
⊢φ ⇔ ∅⊢φ
Γ⊢∆ ⇔ Γ ⊢ φ pentru orice φ ∈ ∆.

Definiţia 1.24
O formulă φ se numeşte teoremă a lui LP dacă ⊢ φ.
33
consecinţe

Propoziţie 2.20
Pentru orice mulţime de formule Γ şi orice formule φ, ψ,

dacă Γ ∪ {¬ψ} ⊢ φ şi Γ ∪ {ψ} ⊢ φ, atunci Γ ⊢ φ

Demonstraţie. Exerciţiu.

34
legătura dintre sintaxă şi semantică
corectitudine

Teorema de corectitudine (Soundness Theorem) 2.21


Orice Γ-teoremă este consecinţă semantică a lui Γ, adică,

Γ⊢φ ⇒ Γ⊨φ

pentru orice φ ∈ Form şi Γ ⊆ Form.

36
corectitudine

Teorema de corectitudine (Soundness Theorem) 2.21


Orice Γ-teoremă este consecinţă semantică a lui Γ, adică,

Γ⊢φ ⇒ Γ⊨φ

pentru orice φ ∈ Form şi Γ ⊆ Form.

Demonstraţie. Fie
Σ := {φ ∈ Form | Γ ⊨ φ}.
Trebuie să demonstrăm că Thm(Γ) ⊆ Σ.

36
corectitudine

Teorema de corectitudine (Soundness Theorem) 2.21


Orice Γ-teoremă este consecinţă semantică a lui Γ, adică,

Γ⊢φ ⇒ Γ⊨φ

pentru orice φ ∈ Form şi Γ ⊆ Form.

Demonstraţie. Fie
Σ := {φ ∈ Form | Γ ⊨ φ}.
Trebuie să demonstrăm că Thm(Γ) ⊆ Σ. Arătăm prin inducţie după
Γ-teoreme.

36
corectitudine

Teorema de corectitudine (Soundness Theorem) 2.21


Orice Γ-teoremă este consecinţă semantică a lui Γ, adică,

Γ⊢φ ⇒ Γ⊨φ

pentru orice φ ∈ Form şi Γ ⊆ Form.

Demonstraţie. Fie
Σ := {φ ∈ Form | Γ ⊨ φ}.
Trebuie să demonstrăm că Thm(Γ) ⊆ Σ. Arătăm prin inducţie după
Γ-teoreme.

∙ Axiomele sunt în Σ (exerciţiu).

36
corectitudine

Teorema de corectitudine (Soundness Theorem) 2.21


Orice Γ-teoremă este consecinţă semantică a lui Γ, adică,

Γ⊢φ ⇒ Γ⊨φ

pentru orice φ ∈ Form şi Γ ⊆ Form.

Demonstraţie. Fie
Σ := {φ ∈ Form | Γ ⊨ φ}.
Trebuie să demonstrăm că Thm(Γ) ⊆ Σ. Arătăm prin inducţie după
Γ-teoreme.

∙ Axiomele sunt în Σ (exerciţiu).


∙ Evident, Γ ⊆ Σ.

36
corectitudine

Teorema de corectitudine (Soundness Theorem) 2.21


Orice Γ-teoremă este consecinţă semantică a lui Γ, adică,

Γ⊢φ ⇒ Γ⊨φ

pentru orice φ ∈ Form şi Γ ⊆ Form.

Demonstraţie. Fie
Σ := {φ ∈ Form | Γ ⊨ φ}.
Trebuie să demonstrăm că Thm(Γ) ⊆ Σ. Arătăm prin inducţie după
Γ-teoreme.

∙ Axiomele sunt în Σ (exerciţiu).


∙ Evident, Γ ⊆ Σ.
∙ Demonstrăm acum că Σ este închisă la modus ponens. Presupunem
că φ, φ → ψ ∈ Σ, adică, Γ ⊨ φ şi Γ ⊨ φ → ψ.

36
corectitudine

Teorema de corectitudine (Soundness Theorem) 2.21


Orice Γ-teoremă este consecinţă semantică a lui Γ, adică,

Γ⊢φ ⇒ Γ⊨φ

pentru orice φ ∈ Form şi Γ ⊆ Form.

Demonstraţie. Fie
Σ := {φ ∈ Form | Γ ⊨ φ}.
Trebuie să demonstrăm că Thm(Γ) ⊆ Σ. Arătăm prin inducţie după
Γ-teoreme.

∙ Axiomele sunt în Σ (exerciţiu).


∙ Evident, Γ ⊆ Σ.
∙ Demonstrăm acum că Σ este închisă la modus ponens. Presupunem
că φ, φ → ψ ∈ Σ, adică, Γ ⊨ φ şi Γ ⊨ φ → ψ. Atunci obţinem că Γ ⊨ ψ
(exerciţiu), adică, ψ ∈ Σ.
36
sintaxă şi semantică

Notaţii.

Pentru orice variabilă v ∈ V şi orice evaluare e : V → {0, 1},


{
e v dacă e(v) = 1
v =
¬v dacă e(v) = 0.

Aşadar, e+ (ve ) = 1.
Pentru orice mulţime W = {x1 , . . . , xk } de variabile, notăm

We = {ve | v ∈ W} = {xe1 , xe2 , . . . , xek }.

37
sintaxă şi semantică

Propoziţia 2.22
Fie e : V → {0, 1} o evaluare. Pentru orice formulă φ,

(i) Dacă e+ (φ) = 1, atunci Var(φ)e ⊢ φ.


(ii) Dacă e+ (φ) = 0, atunci Var(φ)e ⊢ ¬φ.

38
sintaxă şi semantică

Propoziţia 2.22
Fie e : V → {0, 1} o evaluare. Pentru orice formulă φ,

(i) Dacă e+ (φ) = 1, atunci Var(φ)e ⊢ φ.


(ii) Dacă e+ (φ) = 0, atunci Var(φ)e ⊢ ¬φ.

Demonstraţie. Prin inducţie după formule. Avem următoarele cazuri:

∙ φ = v. Atunci Var(φ)e = {ve } şi e+ (v) = e(v).

38
sintaxă şi semantică

Propoziţia 2.22
Fie e : V → {0, 1} o evaluare. Pentru orice formulă φ,

(i) Dacă e+ (φ) = 1, atunci Var(φ)e ⊢ φ.


(ii) Dacă e+ (φ) = 0, atunci Var(φ)e ⊢ ¬φ.

Demonstraţie. Prin inducţie după formule. Avem următoarele cazuri:

∙ φ = v. Atunci Var(φ)e = {ve } şi e+ (v) = e(v).


Dacă e(v) = 1, atunci

38
sintaxă şi semantică

Propoziţia 2.22
Fie e : V → {0, 1} o evaluare. Pentru orice formulă φ,

(i) Dacă e+ (φ) = 1, atunci Var(φ)e ⊢ φ.


(ii) Dacă e+ (φ) = 0, atunci Var(φ)e ⊢ ¬φ.

Demonstraţie. Prin inducţie după formule. Avem următoarele cazuri:

∙ φ = v. Atunci Var(φ)e = {ve } şi e+ (v) = e(v).


Dacă e(v) = 1, atunci ve = v, deci, {ve } ⊢ v.

38
sintaxă şi semantică

Propoziţia 2.22
Fie e : V → {0, 1} o evaluare. Pentru orice formulă φ,

(i) Dacă e+ (φ) = 1, atunci Var(φ)e ⊢ φ.


(ii) Dacă e+ (φ) = 0, atunci Var(φ)e ⊢ ¬φ.

Demonstraţie. Prin inducţie după formule. Avem următoarele cazuri:

∙ φ = v. Atunci Var(φ)e = {ve } şi e+ (v) = e(v).


Dacă e(v) = 1, atunci ve = v, deci, {ve } ⊢ v.
Dacă e(v) = 0, atunci

38
sintaxă şi semantică

Propoziţia 2.22
Fie e : V → {0, 1} o evaluare. Pentru orice formulă φ,

(i) Dacă e+ (φ) = 1, atunci Var(φ)e ⊢ φ.


(ii) Dacă e+ (φ) = 0, atunci Var(φ)e ⊢ ¬φ.

Demonstraţie. Prin inducţie după formule. Avem următoarele cazuri:

∙ φ = v. Atunci Var(φ)e = {ve } şi e+ (v) = e(v).


Dacă e(v) = 1, atunci ve = v, deci, {ve } ⊢ v.
Dacă e(v) = 0, atunci ve = ¬v, deci, {ve } ⊢ ¬v.

38
sintaxă şi semantică

∙ φ = ¬ψ. Atunci Var(φ) = Var(ψ), deci Var(φ)e = Var(ψ)e .

39
sintaxă şi semantică

∙ φ = ¬ψ. Atunci Var(φ) = Var(ψ), deci Var(φ)e = Var(ψ)e .


Dacă e+ (φ) = 1, atunci e+ (ψ) = 0, deci, conform ipotezei de inducţie
pentru ψ, Var(ψ)e ⊢ ¬ψ, adică, Var(φ)e ⊢ φ.

39
sintaxă şi semantică

∙ φ = ¬ψ. Atunci Var(φ) = Var(ψ), deci Var(φ)e = Var(ψ)e .


Dacă e+ (φ) = 1, atunci e+ (ψ) = 0, deci, conform ipotezei de inducţie
pentru ψ, Var(ψ)e ⊢ ¬ψ, adică, Var(φ)e ⊢ φ.
Dacă e+ (φ) = 0, atunci e+ (ψ) = 1, deci, conform ipotezei de inducţie
pentru ψ, Var(ψ)e ⊢ ψ, adică, Var(φ)e ⊢ ψ.

39
sintaxă şi semantică

∙ φ = ¬ψ. Atunci Var(φ) = Var(ψ), deci Var(φ)e = Var(ψ)e .


Dacă e+ (φ) = 1, atunci e+ (ψ) = 0, deci, conform ipotezei de inducţie
pentru ψ, Var(ψ)e ⊢ ¬ψ, adică, Var(φ)e ⊢ φ.
Dacă e+ (φ) = 0, atunci e+ (ψ) = 1, deci, conform ipotezei de inducţie
pentru ψ, Var(ψ)e ⊢ ψ, adică, Var(φ)e ⊢ ψ. Deoarece ⊢ ψ → ¬¬ψ
(exerciţiu), putem aplica (MP) pentru a obţine Var(φ)e ⊢ ¬¬ψ = ¬φ.

39
sintaxă şi semantică

∙ φ = ¬ψ. Atunci Var(φ) = Var(ψ), deci Var(φ)e = Var(ψ)e .


Dacă e+ (φ) = 1, atunci e+ (ψ) = 0, deci, conform ipotezei de inducţie
pentru ψ, Var(ψ)e ⊢ ¬ψ, adică, Var(φ)e ⊢ φ.
Dacă e+ (φ) = 0, atunci e+ (ψ) = 1, deci, conform ipotezei de inducţie
pentru ψ, Var(ψ)e ⊢ ψ, adică, Var(φ)e ⊢ ψ. Deoarece ⊢ ψ → ¬¬ψ
(exerciţiu), putem aplica (MP) pentru a obţine Var(φ)e ⊢ ¬¬ψ = ¬φ.
∙ φ = ψ → χ. (exerciţiu)

39
teorema de completitudine

Teorema de completitudine (Completeness Theorem) 2.23


Pentru orice formulă φ,

⊢φ ddacă ⊨ φ.

Demonstraţie. ”⇒” Se aplică Teorema de corectitudine pentru Γ = ∅.

40
teorema de completitudine

Teorema de completitudine (Completeness Theorem) 2.23


Pentru orice formulă φ,

⊢φ ddacă ⊨ φ.

Demonstraţie. ”⇒” Se aplică Teorema de corectitudine pentru Γ = ∅.


”⇐” Fie φ o tautologie şi Var(φ) = {x1 , . . . , xn }. Demonstrăm prin inducţie
după k următoarea proprietate:

(*) pentru orice k ≤ n, pentru orice e : V → {0, 1}, {xe1 , . . . , xen−k } ⊢ φ.

40
teorema de completitudine

Teorema de completitudine (Completeness Theorem) 2.23


Pentru orice formulă φ,

⊢φ ddacă ⊨ φ.

Demonstraţie. ”⇒” Se aplică Teorema de corectitudine pentru Γ = ∅.


”⇐” Fie φ o tautologie şi Var(φ) = {x1 , . . . , xn }. Demonstrăm prin inducţie
după k următoarea proprietate:

(*) pentru orice k ≤ n, pentru orice e : V → {0, 1}, {xe1 , . . . , xen−k } ⊢ φ.

Pentru k = n, (*) ne dă ⊢ φ.

40
teorema de completitudine

Teorema de completitudine (Completeness Theorem) 2.23


Pentru orice formulă φ,

⊢φ ddacă ⊨ φ.

Demonstraţie. ”⇒” Se aplică Teorema de corectitudine pentru Γ = ∅.


”⇐” Fie φ o tautologie şi Var(φ) = {x1 , . . . , xn }. Demonstrăm prin inducţie
după k următoarea proprietate:

(*) pentru orice k ≤ n, pentru orice e : V → {0, 1}, {xe1 , . . . , xen−k } ⊢ φ.

Pentru k = n, (*) ne dă ⊢ φ.

k = 0. Fie e : V → {0, 1}. Deoarece φ este tautologie, e+ (φ) = 1. Aplicând


Propoziţia 2.22, obţinem că
Var(φ)e = {xe1 , . . . , xen } ⊢ φ.
40
teorema de completitudine

k ⇒ k + 1. Presupunem că (*) este adevărată pentru k şi fie e : V → {0, 1}.


Trebuie să arătăm că {xe1 , . . . , xen−k−1 } ⊢ φ.

41
teorema de completitudine

k ⇒ k + 1. Presupunem că (*) este adevărată pentru k şi fie e : V → {0, 1}.


Trebuie să arătăm că {xe1 , . . . , xen−k−1 } ⊢ φ. Considerăm evaluarea
e′ := exn−k ←¬ ′
¬e(xn−k ) . Aşadar, e (v) = e(v) pentru orice v ̸= xn−k şi

e′ (xn−k ) =

41
teorema de completitudine

k ⇒ k + 1. Presupunem că (*) este adevărată pentru k şi fie e : V → {0, 1}.


Trebuie să arătăm că {xe1 , . . . , xen−k−1 } ⊢ φ. Considerăm evaluarea
e′ := exn−k ←¬ ′
¬e(xn−k ) . Aşadar, e (v) = e(v) pentru orice v ̸= xn−k şi
{
0 dacă e(xn−k ) = 1
e′ (xn−k ) =
1 dacă e(xn−k ) = 0.

41
teorema de completitudine

k ⇒ k + 1. Presupunem că (*) este adevărată pentru k şi fie e : V → {0, 1}.


Trebuie să arătăm că {xe1 , . . . , xen−k−1 } ⊢ φ. Considerăm evaluarea
e′ := exn−k ←¬ ′
¬e(xn−k ) . Aşadar, e (v) = e(v) pentru orice v ̸= xn−k şi
{
0 dacă e(xn−k ) = 1
e′ (xn−k ) =
1 dacă e(xn−k ) = 0.

Rezultă că xei = xei pentru orice i ∈ {0, . . . , n − k − 1} şi

41
teorema de completitudine

k ⇒ k + 1. Presupunem că (*) este adevărată pentru k şi fie e : V → {0, 1}.


Trebuie să arătăm că {xe1 , . . . , xen−k−1 } ⊢ φ. Considerăm evaluarea
e′ := exn−k ←¬ ′
¬e(xn−k ) . Aşadar, e (v) = e(v) pentru orice v ̸= xn−k şi
{
0 dacă e(xn−k ) = 1
e′ (xn−k ) =
1 dacă e(xn−k ) = 0.

Rezultă că xei = xei pentru orice i ∈ {0, . . . , n − k − 1} şi


xen−k =

41
teorema de completitudine

k ⇒ k + 1. Presupunem că (*) este adevărată pentru k şi fie e : V → {0, 1}.


Trebuie să arătăm că {xe1 , . . . , xen−k−1 } ⊢ φ. Considerăm evaluarea
e′ := exn−k ←¬ ′
¬e(xn−k ) . Aşadar, e (v) = e(v) pentru orice v ̸= xn−k şi
{
0 dacă e(xn−k ) = 1
e′ (xn−k ) =
1 dacă e(xn−k ) = 0.

Rezultă că xei = xei pentru orice i ∈ {0, . . . , n − k − 1} şi
{
e′ ¬xn−k dacă xen−k = xn−k
xn−k =
xn−k dacă xen−k = ¬xn−k .

41
teorema de completitudine

k ⇒ k + 1. Presupunem că (*) este adevărată pentru k şi fie e : V → {0, 1}.


Trebuie să arătăm că {xe1 , . . . , xen−k−1 } ⊢ φ. Considerăm evaluarea
e′ := exn−k ←¬ ′
¬e(xn−k ) . Aşadar, e (v) = e(v) pentru orice v ̸= xn−k şi
{
0 dacă e(xn−k ) = 1
e′ (xn−k ) =
1 dacă e(xn−k ) = 0.

Rezultă că xei = xei pentru orice i ∈ {0, . . . , n − k − 1} şi
{
e′ ¬xn−k dacă xen−k = xn−k
xn−k =
xn−k dacă xen−k = ¬xn−k .
Din (*) pentru e şi e′ , obţinem
{xe1 , . . . , xen−k−1 , xn−k } ⊢ φ şi {xe1 , . . . , xen−k−1 , ¬xn−k } ⊢ φ.

41
teorema de completitudine

k ⇒ k + 1. Presupunem că (*) este adevărată pentru k şi fie e : V → {0, 1}.


Trebuie să arătăm că {xe1 , . . . , xen−k−1 } ⊢ φ. Considerăm evaluarea
e′ := exn−k ←¬ ′
¬e(xn−k ) . Aşadar, e (v) = e(v) pentru orice v ̸= xn−k şi
{
0 dacă e(xn−k ) = 1
e′ (xn−k ) =
1 dacă e(xn−k ) = 0.

Rezultă că xei = xei pentru orice i ∈ {0, . . . , n − k − 1} şi
{
e′ ¬xn−k dacă xen−k = xn−k
xn−k =
xn−k dacă xen−k = ¬xn−k .
Din (*) pentru e şi e′ , obţinem
{xe1 , . . . , xen−k−1 , xn−k } ⊢ φ şi {xe1 , . . . , xen−k−1 , ¬xn−k } ⊢ φ.
Aplicăm acum Propoziţia 2.20 cu Γ :=

41
teorema de completitudine

k ⇒ k + 1. Presupunem că (*) este adevărată pentru k şi fie e : V → {0, 1}.


Trebuie să arătăm că {xe1 , . . . , xen−k−1 } ⊢ φ. Considerăm evaluarea
e′ := exn−k ←¬ ′
¬e(xn−k ) . Aşadar, e (v) = e(v) pentru orice v ̸= xn−k şi
{
0 dacă e(xn−k ) = 1
e′ (xn−k ) =
1 dacă e(xn−k ) = 0.

Rezultă că xei = xei pentru orice i ∈ {0, . . . , n − k − 1} şi
{
e′ ¬xn−k dacă xen−k = xn−k
xn−k =
xn−k dacă xen−k = ¬xn−k .
Din (*) pentru e şi e′ , obţinem
{xe1 , . . . , xen−k−1 , xn−k } ⊢ φ şi {xe1 , . . . , xen−k−1 , ¬xn−k } ⊢ φ.
Aplicăm acum Propoziţia 2.20 cu Γ := {xe1 , . . . , xen−k−1 } şi ψ :=

41
teorema de completitudine

k ⇒ k + 1. Presupunem că (*) este adevărată pentru k şi fie e : V → {0, 1}.


Trebuie să arătăm că {xe1 , . . . , xen−k−1 } ⊢ φ. Considerăm evaluarea
e′ := exn−k ←¬ ′
¬e(xn−k ) . Aşadar, e (v) = e(v) pentru orice v ̸= xn−k şi
{
0 dacă e(xn−k ) = 1
e′ (xn−k ) =
1 dacă e(xn−k ) = 0.

Rezultă că xei = xei pentru orice i ∈ {0, . . . , n − k − 1} şi
{
e′ ¬xn−k dacă xen−k = xn−k
xn−k =
xn−k dacă xen−k = ¬xn−k .
Din (*) pentru e şi e′ , obţinem
{xe1 , . . . , xen−k−1 , xn−k } ⊢ φ şi {xe1 , . . . , xen−k−1 , ¬xn−k } ⊢ φ.
Aplicăm acum Propoziţia 2.20 cu Γ := {xe1 , . . . , xen−k−1 } şi ψ := xn−k pentru
a conclude că {xe1 , . . . , xen−k−1 } ⊢ φ.
41
consecinţă utilă

Propoziţia 2.24
Fie Γ ∪ {φ, ψ} ⊆ Form. Presupunem că φ ∼ ψ. Atunci

Γ⊢φ ⇐⇒ Γ ⊢ ψ.

42
consecinţă utilă

Propoziţia 2.24
Fie Γ ∪ {φ, ψ} ⊆ Form. Presupunem că φ ∼ ψ. Atunci

Γ⊢φ ⇐⇒ Γ ⊢ ψ.

Demonstraţie. Observăm că
φ∼ψ ⇐⇒ ⊨ φ → ψ şi ⊨ ψ → φ
(conform Propoziţiei 1.15)

42
consecinţă utilă

Propoziţia 2.24
Fie Γ ∪ {φ, ψ} ⊆ Form. Presupunem că φ ∼ ψ. Atunci

Γ⊢φ ⇐⇒ Γ ⊢ ψ.

Demonstraţie. Observăm că
φ∼ψ ⇐⇒ ⊨ φ → ψ şi ⊨ ψ → φ
(conform Propoziţiei 1.15)
⇐⇒ ⊢ φ → ψ şi ⊢ ψ → φ
(conform Teoremei de completitudine).

42
consecinţă utilă

Propoziţia 2.24
Fie Γ ∪ {φ, ψ} ⊆ Form. Presupunem că φ ∼ ψ. Atunci

Γ⊢φ ⇐⇒ Γ ⊢ ψ.

Demonstraţie. Observăm că
φ∼ψ ⇐⇒ ⊨ φ → ψ şi ⊨ ψ → φ
(conform Propoziţiei 1.15)
⇐⇒ ⊢ φ → ψ şi ⊢ ψ → φ
(conform Teoremei de completitudine).

”⇒” Presupunem că Γ ⊢ φ. Deoarece ⊢ φ → ψ, rezultă din Propoziţia


1.26.(ii) că Γ ⊢ φ → ψ. Aplicăm acum (MP) pentru a obţine că Γ ⊢ ψ.

42
consecinţă utilă

Propoziţia 2.24
Fie Γ ∪ {φ, ψ} ⊆ Form. Presupunem că φ ∼ ψ. Atunci

Γ⊢φ ⇐⇒ Γ ⊢ ψ.

Demonstraţie. Observăm că
φ∼ψ ⇐⇒ ⊨ φ → ψ şi ⊨ ψ → φ
(conform Propoziţiei 1.15)
⇐⇒ ⊢ φ → ψ şi ⊢ ψ → φ
(conform Teoremei de completitudine).

”⇒” Presupunem că Γ ⊢ φ. Deoarece ⊢ φ → ψ, rezultă din Propoziţia


1.26.(ii) că Γ ⊢ φ → ψ. Aplicăm acum (MP) pentru a obţine că Γ ⊢ ψ.
”⇐” Similar.

42
notaţii

Fie Γ o mulţime de formule şi φ o formulă.

Notaţii.

Γ ̸⊢ φ ⇔ φ nu este Γ-teoremă
̸⊢ φ ⇔ φ nu este teoremă
Γ ̸⊨ φ ⇔ φ nu este consecinţă semantică a lui Γ
̸⊨ φ ⇔ φ nu este tautologie.

43
mulţimi consistente

Definiţia 2.25
Fie Γ o mulţime de formule.

∙ Γ este consistentă dacă există o formulă φ astfel încât Γ ̸⊢ φ.

44
mulţimi consistente

Definiţia 2.25
Fie Γ o mulţime de formule.

∙ Γ este consistentă dacă există o formulă φ astfel încât Γ ̸⊢ φ.


∙ Γ este inconsistentă dacă nu este consistentă, adică, Γ ⊢ φ pentru
orice formulă φ.

44
mulţimi consistente

Definiţia 2.25
Fie Γ o mulţime de formule.

∙ Γ este consistentă dacă există o formulă φ astfel încât Γ ̸⊢ φ.


∙ Γ este inconsistentă dacă nu este consistentă, adică, Γ ⊢ φ pentru
orice formulă φ.

Observaţie.
Fie Γ, ∆ mulţimi de formule a.î. Γ ⊆ ∆.

44
mulţimi consistente

Definiţia 2.25
Fie Γ o mulţime de formule.

∙ Γ este consistentă dacă există o formulă φ astfel încât Γ ̸⊢ φ.


∙ Γ este inconsistentă dacă nu este consistentă, adică, Γ ⊢ φ pentru
orice formulă φ.

Observaţie.
Fie Γ, ∆ mulţimi de formule a.î. Γ ⊆ ∆.

∙ Dacă ∆ este consistentă, atunci şi Γ este consistentă.

44
mulţimi consistente

Definiţia 2.25
Fie Γ o mulţime de formule.

∙ Γ este consistentă dacă există o formulă φ astfel încât Γ ̸⊢ φ.


∙ Γ este inconsistentă dacă nu este consistentă, adică, Γ ⊢ φ pentru
orice formulă φ.

Observaţie.
Fie Γ, ∆ mulţimi de formule a.î. Γ ⊆ ∆.

∙ Dacă ∆ este consistentă, atunci şi Γ este consistentă.


∙ Dacă Γ este inconsistentă, atunci şi ∆ este inconsistentă.

44
mulţimi consistente

Propoziţia 2.26
(i) ∅ este consistentă.
(ii) Mulţimea teoremelor este consistentă.

Demonstraţie.

45
mulţimi consistente

Propoziţia 2.26
(i) ∅ este consistentă.
(ii) Mulţimea teoremelor este consistentă.

Demonstraţie.
(i) Dacă ⊢ ⊥, atunci, conform Teoremei de corectitudine, ar rezulta că ⊨ ⊥,
o contradicţie. Aşadar ̸⊢ ⊥, deci ∅ este consistentă.

45
mulţimi consistente

Propoziţia 2.26
(i) ∅ este consistentă.
(ii) Mulţimea teoremelor este consistentă.

Demonstraţie.
(i) Dacă ⊢ ⊥, atunci, conform Teoremei de corectitudine, ar rezulta că ⊨ ⊥,
o contradicţie. Aşadar ̸⊢ ⊥, deci ∅ este consistentă.
(ii) Aplicând Propoziţia 1.26.(iv) pentru Γ = ∅, obţinem că
Thm = Thm(Thm), adică, pentru orice φ,

45
mulţimi consistente

Propoziţia 2.26
(i) ∅ este consistentă.
(ii) Mulţimea teoremelor este consistentă.

Demonstraţie.
(i) Dacă ⊢ ⊥, atunci, conform Teoremei de corectitudine, ar rezulta că ⊨ ⊥,
o contradicţie. Aşadar ̸⊢ ⊥, deci ∅ este consistentă.
(ii) Aplicând Propoziţia 1.26.(iv) pentru Γ = ∅, obţinem că
Thm = Thm(Thm), adică, pentru orice φ,
⊢ φ ddacă Thm ⊢ φ.
Din (i) rezultă că Thm este consistentă.

45
mulţimi consistente

Propoziţia 2.27
Pentru o mulţime de formule Γ sunt echivalente:

(i) Γ este inconsistentă.


(ii) Pentru orice formulă ψ, Γ ⊢ ψ şi Γ ⊢ ¬ψ.
(iii) Există o formulă ψ a.î. Γ ⊢ ψ şi Γ ⊢ ¬ψ.
(iv) Γ ⊢ ⊥.

46
mulţimi consistente

Propoziţia 2.27
Pentru o mulţime de formule Γ sunt echivalente:

(i) Γ este inconsistentă.


(ii) Pentru orice formulă ψ, Γ ⊢ ψ şi Γ ⊢ ¬ψ.
(iii) Există o formulă ψ a.î. Γ ⊢ ψ şi Γ ⊢ ¬ψ.
(iv) Γ ⊢ ⊥.

Propoziţia 2.28
Fie Γ o mulţime de formule şi φ o formulă.

(i) Γ ⊢ φ ⇐⇒ Γ ∪ {¬φ} este inconsistentă.


(ii) Γ ⊢ ¬φ ⇐⇒ Γ ∪ {φ} este inconsistentă.

46
mulţimi consistente

Propoziţia 2.29
Fie Γ o mulţime de formule. Γ este inconsistentă ddacă Γ are o
submulţime finită inconsistentă.

47
mulţimi consistente

Propoziţia 2.29
Fie Γ o mulţime de formule. Γ este inconsistentă ddacă Γ are o
submulţime finită inconsistentă.

Un rezultat echivalent:
Propoziţia 2.30
Fie Γ o mulţime de formule. Γ este consistentă ddacă orice submulţime
finită a lui Γ este consistentă.

47
consecinţă a teoremei de completitudine

Teorema 2.31
Pentru orice formulă φ,

{φ} este consistentă ⇐⇒ {φ} este satisfiabilă.

48
consecinţă a teoremei de completitudine

Teorema 2.31
Pentru orice formulă φ,

{φ} este consistentă ⇐⇒ {φ} este satisfiabilă.

Demonstraţie. Avem
{φ} este inconsistentă ⇐⇒ ⊢ ¬φ
conform Propoziţiei 2.28 (ii)

48
consecinţă a teoremei de completitudine

Teorema 2.31
Pentru orice formulă φ,

{φ} este consistentă ⇐⇒ {φ} este satisfiabilă.

Demonstraţie. Avem
{φ} este inconsistentă ⇐⇒ ⊢ ¬φ
conform Propoziţiei 2.28 (ii)
⇐⇒ ⊨ ¬φ
conform Teoremei de completitudine

48
consecinţă a teoremei de completitudine

Teorema 2.31
Pentru orice formulă φ,

{φ} este consistentă ⇐⇒ {φ} este satisfiabilă.

Demonstraţie. Avem
{φ} este inconsistentă ⇐⇒ ⊢ ¬φ
conform Propoziţiei 2.28 (ii)
⇐⇒ ⊨ ¬φ
conform Teoremei de completitudine
⇐⇒ {φ} este nesatisfiabilă
(exerciţiu)

Aşadar, {φ} este consistentă ⇐⇒ {φ} este satisfiabilă.

48
teorema de completitudine tare

Teorema de completitudine tare - versiunea 1) 2.32


Pentru orice mulţime de formule Γ,

Γ este consistentă ⇐⇒ Γ este satisfiabilă.

49
teorema de completitudine tare

Teorema de completitudine tare - versiunea 1) 2.32


Pentru orice mulţime de formule Γ,

Γ este consistentă ⇐⇒ Γ este satisfiabilă.

Teorema de completitudine tare - versiunea 2) 2.33


Pentru orice mulţime de formule Γ şi orice formulă φ,

Γ ⊢ φ ⇐⇒ Γ ⊨ φ.

49
Baftă la examen!

Conţinutul tehnic al acestui curs se regăseşte în cursul de Logică Matematică şi Computaţională al


prof. Laurenţiu Leuştean din anul universitar 2017/2018.

Comic-ul aparţine xkcd.

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