Documente Academic
Documente Profesional
Documente Cultură
Programare logică
Seminar 5
Rezoluţie
• În calculul propoziţional un literal este o variabilă sau negaţia unei variabile.
• O formulă este ı̂n formă normală conjunctivă (FNC) dacă este o conjuncţie de disjuncţii de
literali.
• Ştim că:
1
• Regula Rezoluţiei păstrează satisfiabilitatea:
C1 ∪ {p}, C2 ∪ {¬p}
Rez
C1 ∪ C2
unde C1 , C2 clauze, iar p este variabila propoziţională astfel ı̂ncât
{p, ¬p} ∩ C1 = ∅ şi {p, ¬p} ∩ C2 = ∅.
• Algoritmul Davis-Putnam:
Intrare: o mulţime C de clauze
(S5.1) Folosind algoritmul Davis-Putnam, cercetaţi dacă următoarea mulţime de clauze din calculul
propoziţional este satisfiabilă:
• În logica de ordinul I un literal este o formulă atomică sau negaţia unei formule atomice.
2
• O formulă ϕ este formă clauzală dacă
• Pentru orice formulă ϕ din logica de ordinul I există o formă clauzală ϕf c astfel ı̂ncât
H(C) := {θ(C) | C ∈ C, θ : V → TL }
O mulţime de clauze C este nesatisfiabilă dacă şi numai dacă există o submulţime finită a lui
H(C) care este nesatisfiabilă.
C1 ∪ {L}, C2 ∪ {¬L}
Rez
C1 ∪ C2
unde C1 , C2 clauze ı̂nchise, iar L este o formulă atomică ı̂nchisă astfel ı̂ncât {L, ¬L} ∩ C1 = ∅
şi {L, ¬L} ∩ C2 = ∅
3
1) Găsiţi o submulţime finită nesatisfiabilă lui H(C).
C1 , C2
Rez
(σC1 \ σLit1 ) ∪ (σC2 \ σLit2 )
• Fie C o mulţime de clauze. O derivare prin rezoluţie din mulţimea C pentru o clauză C este
o secvenţă C1 , . . . , Cn astfel ı̂ncât Cn = C şi, pentru fiecare i ∈ {1, . . . , n}, Ci ∈ C sau Ci este
un rezolvent pentru două cauze Cj , Ck cu j, k < i.
• O mulţime de clauze C este nesatisfiabilă dacă şi numai dacă există o derivare a clauzei vide
din C prin Rez.
4
C3 = {P (a)}
C4 = {¬Q(f (x))}
unde P, Q, R sunt simboluri de relaţii, f este un simbol de funţie de ariatate 1, a este o constantă,
iar x, y sunt variabile.
• Dacă ϕ1 , . . . , ϕn , ϕ sunt formule (ı̂n logica propoziţională sau calculul cu predicate) atunci:
{ϕ1 , . . . , ϕn } ϕ este echivalent cu
ϕ1 ∧ . . . ∧ ϕn → ϕ este echivalent cu
¬ϕ1 ∨ . . . ¬ϕn ∨ ϕ este echivalent cu
ϕ1 ∧ . . . ∧ ϕn ∧ ¬ϕ este satisfiabilă.
• În particular, ϕ dacă şi numai dacă există o derivare pentru din forma clauzală a lui ¬ϕ.
• Pentru a cerceta satisfiabilitatea este suficient să studiem forme clauzale.
(S5.5) Folosind rezoluţia, arătaţi că următoarea formulă este validă ı̂n logica de ordinul I:
ϕ := (∀x (P (x) → Q(x))) → ((∃x P (x)) → (∃x Q(x)))
Indicaţie: se găseşte o derivare pentru din forma clauzală a lui ¬ϕ.
C = { {¬P (x), Q(x)}, {P (c)}, {¬Q(x)} }
Derivare prin rezoluţie pentru :
C1 = {¬P (x), Q(x)}
C2 = {P (c)}
C3 = {Q(c)}
C4 = {¬Q(x)}
C5 = Rez, C3 , C4 , θ = {x ← c}
5
1) Folosind predicatele E, L, P, R, exprimaţi fiecare afirmaţie ı̂n logica de ordinul I.