Metody programowania w logice Ćwiczenia: Lista 8 Zasada rezolucji
Transkrypt
Metody programowania w logice Ćwiczenia: Lista 8 Zasada rezolucji
Metody programowania w logice Ćwiczenia: Lista 8 Zasada rezolucji∗ Przemysław Kobylański Zadanie 1 Udowodnij że rezolwenta C klauzul C1 i C2 jest logiczną konsekwencją C1 i C2 . Zadanie 2 Udowodnij stosując rezolucję, że następujący zbiór klauzul jest niespełnialny p ∨ q ∨ r, ¬p ∨ r, ¬q, ¬r. Zadanie 3 Wyprowadź przy użyciu rezolucji klauzulę pustą 2 ze zbioru S = {p ∨ q, ¬q ∨ r, ¬p ∨ q, ¬r}. Zadanie 4 Określ czy następujące klauzule mają faktory. Jeśli tak, to wyznacz je. 1. p(x) ∨ q(y) ∨ p(f (x)) 2. p(x) ∨ p(a) ∨ q(f (x)) ∨ q(f (a)) 3. p(x, y) ∨ p(a, f (a)) 4. p(a) ∨ p(b) ∨ p(x) 5. p(x) ∨ p(f (y)) ∨ q(x, y) Zadanie 5 Znajdź wszystkie możliwe rezolwenty (jeśli są jakieś) następujących par klauzul: 1. C = ¬p(x) ∨ q(x, b), D = p(a) ∨ q(a, b) 2. C = ¬p(x) ∨ q(x, x), D = ¬q(a, f (a)) 3. C = ¬p(x, y, u) ∨ ¬p(y, z, v) ∨ ¬p(x, v, w) ∨ p(u, z, w), D = p(g(x, y), x, y) 4. C = ¬p(v, z, v) ∨ p(w, z, w), D = p(w, h(x, x), w) ∗ Na podstawie książki Changa i Lee. 1 Zadanie 6 Udowodnij za pomocą rezolucji, że ¬q → ¬p jest logiczną konsekwencją z p → q. Zadanie 7 Niech C = p(x, y) ∨ q(z) i D = q(a) ∨ p(b, b) ∨ r(u). Sprawdź czy C pochłania D. Zadanie 8 Niech C = p(x, y) ∨ r(y, z) i D = p(a, y) ∨ r(z, b). Udowodnij, że C nie pochłania D. Zadanie 9 Niech C = ¬p(x) ∨ p(f (x)) i D = ¬p(x) ∨ p(f (f (x))). Pokaż, że C implikuje D, ale C nie pochłania D. 2