Sunteți pe pagina 1din 4

FMI, Info, Anul II, 2017-2018

Programare logică

Seminar 1
Recapitulare logica propoziţională

Teorie pentru S1.1: Amintim tabelele de adevăr pentru conectorii propoziţionali:

p ¬p p q p→q p q p∧q p q p∨q p q p↔q


0 1 0 0 1 0 0 0 0 0 0 0 0 1
1 0 0 1 1 0 1 0 0 1 1 0 1 0
1 0 0 1 0 0 1 0 1 1 0 0
1 1 1 1 1 1 1 1 1 1 1 1
Putem să arătăm că o formulă ϕ este tautologie (validă, universal adevărată) folosind
metoda tabelului de adevăr. Dacă v1 , . . . , vn sunt variabilele propoziţionale care apar ı̂n
ϕ, atunci cele 2n evaluări posibile (i.e, o evaluarea este o funcţie e : {v1 , . . . , vn } → {0, 1})
e1 , . . . , e2n pot fi scrise ı̂ntr-un tabel:

v1 v2 ... vn ϕ
e1 (v1 ) e1 (v2 ) ... e1 (vn ) fe1 (ϕ)
e2 (v1 ) e2 (v2 ) ... e2 (vn ) fe2 (ϕ)
.. .. .. .. ..
. . . . .
e2n (v1 ) e2n (v2 ) . . . e2n (vn ) f2n (ϕ)

Dacă pe coloana lui ϕ obţinem doar valoarea 1, atunci ϕ este tautologie.

Teorie pentru S1.2: Axiomele calculului propoziţional sunt următoarele:

(A1) ϕ → (ψ → ϕ)
(A2) (ϕ → (ψ → χ)) → ((ϕ → ψ) → (ϕ → χ))
(A3) (¬ψ → ¬ϕ) → (ϕ → ψ)
unde ϕ, ψ şi χ sunt formule. În plus, avem următoarea regulă de deducţie:
ϕ, ϕ → ψ
MP (modus ponens)
ψ

1
O Γ-demonstraţie este o secvenţă de formule ϕ1 , . . ., ϕn astfel ı̂ncât, pentru fiecare
i ∈ {1, . . . , n}, una din următoarele condiţii este satisfăcută:
• ϕi este axiomă sau ϕi ∈ Γ,

• ϕi se obţine din formulele anterioare prin MP.


O formulă ϕ este Γ-teoremă dacă există o Γ-demonstraţie ϕ1 , . . ., ϕn astfel ı̂ncât ϕn = ϕ.
Notăm prin Γ ` ϕ faptul că ϕ este Γ-teoremă.
Teorema 1 (Teorema deducţiei). Γ ` ϕ → ψ ⇔ Γ ∪ {ϕ} ` ψ.

Teorie pentru S1.3: Amintim următoarele definiţii:


• Un literal este o variabilă sau negaţia unei variabile.

• O formă normală disjunctivă (FND) este o disjuncţie de conjuncţii de literali

(l1 ∧ . . . ∧ ln ) ∨ . . . ∨ (l10 ∧ . . . ∧ lm
0
).

• O formă normală conjunctivă (FNC) este o conjuncţie de disjuncţii de literali

(l1 ∨ . . . ∨ ln ) ∧ . . . ∧ (l10 ∨ . . . ∨ lm
0
).

Pentru orice formulă ϕ există θ1 ı̂n FND şi θ2 ı̂n FNC echivalente cu ϕ.
Metoda transformărilor sintactice succesive. Putem aduce o formulă ı̂n FND şi/sau
ı̂n FND folosind următoarele transformări:
• ı̂nlocuirea implicaţiilor şi echivalenţelor
ϕ → ψ ∼ ¬ϕ ∨ ψ
ϕ ↔ ψ ∼ (¬ϕ ∨ ψ) ∧ (¬ψ ∨ ϕ)
• regulile De Morgan
¬(ϕ ∨ ψ) ∼ ¬ϕ ∧ ¬ψ
¬(ϕ ∧ ψ) ∼ ¬ϕ ∨ ¬ψ
• principiului dublei negaţii
¬¬ψ ∼ ψ
• distributivitatea
ϕ ∨ (ψ ∧ χ) ∼ (ϕ ∨ ψ) ∧ (ϕ ∨ χ)
(ψ ∧ χ) ∨ ϕ ∼ (ψ ∨ ϕ) ∧ (χ ∨ ϕ)
• absorbţia
ϕ ∧ (ϕ ∨ ψ) ∼ ϕ
ϕ ∨ (ϕ ∧ ψ) ∼ ϕ
2
Metoda funcţiei booleene asociate unei formule. Fie ϕ o formulă, v1 , . . ., vn variabilele
care apar ı̂n ϕ şi e1 , . . ., e2n evaluările posibile. Tabelul asociat lui ϕ defineşte funcţia
booleană Fϕ : {0, 1}n → {0, 1}:
v1 v2 ... vn ϕ x1 x2 ... xn Fϕ (x1 , . . . , xn )
.. .. .. .. .. .. .. .. .. ..
. . . . . . . . . .
ek (v1 ) ek (v2 ) . . . ek (vn ) fek (ϕ) ek (v1 ) ek (v2 ) . . . ek (vn ) fek (ϕ)
.. .. .. .. .. .. .. .. .. ..
. . . . . . . . . .
Dacă luăm disjuncţia cazurilor ı̂n care avem 1 ı̂n tabelul de adevăr al funcţiei booleene
obţinem o formulă ı̂n FND.

Teorie pentru S1.4: O clauză este o mulţime finită de literali, i.e C = {L1 , . . . , Ln } unde
L1 , . . . , Ln sunt literali. O clauză C = {L1 , . . . , Ln } este satisfiabilă dacă L1 ∨ . . . ∨ Ln este
satisfiabilă. Clauza vidă  = {} nu este satisfiabilă. O mulţime de clauze S = {C1 , . . . , Cm }
este satisfiabilă dacă există o evaluare e : V ar → {0, 1} astfel ı̂ncât e(Ci ) = 1 oricare
i ∈ {1, . . . , m}.
clauză = disjuncţie de literali
mulţime de clauze = FNC
Regula rezoluţiei:
C1 ∪ {p}, C2 ∪ {¬p}
Rez
C1 ∪ C2
unde {p, ¬p} ∩ C1 = ∅ şi {p, ¬p} ∩ C2 = ∅.

Fie S o mulţime de clauze. O derivare prin rezoluţie din S este o secvenţă finită de clauze
astfel ı̂ncât fiecare clauză este din S sau rezultă din clauze anterioare prin rezoluţie. Dacă
există o derivare prin rezoluţie care se termină cu , atunci mulţimea iniţială de clauze este
nesatisfiabilă.

3
(S1.1) Arătaţi că următoarea formulă ı̂n logica propoziţională este o tautologie:

(v1 ∨ v2 → v3 ) ↔ (v1 → v3 ) ∧ (v2 → v3 )

(S1.2) Fie ϕ şi ψ formule ı̂n logica propoziţională. Să se arate sintactic că

` ϕ → (¬ϕ → ψ).

(S1.3) Fie ϕ := (p ↔ ¬q) → p o formulă ı̂n logica propoziţională. Să se aducă ϕ la cele
două forme normale, folosind, pe rând:

(i) metoda transformărilor sintactice succesive,

(ii) metoda funcţiei booleene corespunzătoare formulei ϕ.

(S1.4) Să se arate folosind rezoluţia că umătoarea formulă este nesatisfiabilă:

ϕ := (¬v1 ∨ ¬v2 ) ∧ ((v3 → ¬v2 ) ∨ v1 ) ∧ (v1 → v2 ) ∧ (v2 ∧ v3 )

(S1.5) [opţional] Fie L un limbaj pentru logica propoziţională, cu un vocabular alcătuit din
următoarea mulţime de variabile propoziţionale V = {v0 , v1 , ..., vn }. Să se găsească mulţimea
modelelor următoarei formule propoziţionale:
_ ^ _
Γ := ( (vi ∧ vj )) ↔ ( ( vj ))
1≤i<j≤n 1≤i≤n j6=i

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