Universität Koblenz-Landau FB 4 Informatik 1 Prof. Dr. Viorica Sofronie-Stokkermans∗ 2 Dipl.-Inform. Markus Bender∗ 30.06.2017 Übung zur Vorlesung Logik für Informatiker Aufgabenblatt 10 Abgabe bis 07.07.2017, 17:00 s.t. Aufgabe 10.1 Sei Σ = (Ω, Π) eine Signatur, wobei • Ω = {a/0, f /1}, und • Π = {p/1, q/2, r/3}. Ferner sei X eine Menge von Variablen und x, y, z ∈ X. Markieren Sie durch Ankreuzen, welche der folgenden Formeln über Σ und X in Negationsnormalform (NNF), bereinigt, in Pränexnormalform (PNF), in Skolemnormalform (SNF) oder in keiner der genannten Formen sind. Hinweis: Es können mehre Spalten zutreffen, d.h. es ist erlaubt mehr als nur 1 Kreuz pro Zeile zu setzen. Formel Keine NNF Bereinigt PNF SNF 1 q(a, x) → q(x, a) 2 q(a,x) ∧ q(f (a), f (x)) 3 ∃ x ¬q(a, x) ∨ q(x, a) 4 ∀ x q(a, x) ∧ ¬p(f (x)) 5 6 7 8 9 10 r(f (a), y, a) ∧ ∃ y q(y, a) ∃ x ¬ q(a, x) ∨ r(a, x, a) ∀ x q(f (a), x) ∧ ∃ y r(y, a, x) ∃ x q(a, x) ∨ ¬∃ x q(f (x), f (a)) ∀ x ∃ y r(x, y, z) → ∃ z q(z, f (z)) ∀ x ∃ y ∀ z (q(x, y) ∧ p(z)) → q(z, y) Aufgabe 10.2 Sei Σ = (Ω, Π) eine Signatur, wobei • Ω = {a/0, f /1}, und • Π = {p/1, q/2, r/3}. Ferner seien X eine Menge von Variablen und u, u0 , w, x, y, z ∈ X. a) Geben Sie für die folgende Formel über Σ und X eine äquivalente Formel in Negationsnormalform an. ¬∀ x ∃ y p(y) → ¬q(a, x) ∧ ¬q(x, y) b) Geben Sie für die folgende Formel über Σ und X eine äquivalente Formel in bereinigter Form an. ! ↔ q(a, z) ∧ ¬ ∃ w ∃ z r(x, w, z) ∀x ∃y ∃ z ∃x q(a, x) → r(z, w, y) c) Geben Sie für die folgende Formel über Σ und X eine äquivalente Formel in Pränexnormalform an. ∀ w q(a, w) ∨ ∃ x ∀ y ¬r(a, x, y) ∧ ∃ z ¬r(x, y, z) d) Bringen Sie die folgende Formel über Σ und X in Skolemnormalform: ∃ u ∀ u0 ∃ w ∃ x ∀ y ∃ z ¬r(f (u0 ), x, y) ∧ r(w, a, z) ∧ r(y, x, u) e) Geben Sie für die folgende Formel über Σ und X eine äquivalente Formel mit Matrix in konjunktiver Normalform an. ∀x ∀y ¬q(x, y) ∧ q(y, a) ∨ p(f (y)) ∨ r(x, a, y) f) Stellen Sie die folgende Formel über Σ und X als Klauselmenge dar. ∀x ∀y ∀z r(x, y, z) ∧ ¬q(x, a) ∨ q(x, z) ∧ p(f (a)) ∨ p(f (x)) ∨ p(z) Aufgabe 10.3 Sei Ω = {a/0, b/0. f /1, g/1, h/2} eine Menge von Funktionssymbolen, X eine Menge von Variablen und v, x, y, z ∈ X. Gegeben sind die folgenden 10 Unifikationsprobleme über Ω und X: ? VI) {f (x) = f (y)} ? VII) {f (x) = g(y)} I) {a = x} II) {b = a} ? III) {x = b} ? IV) {x = f (x)} ? V) {y = f (x)} ? ? ? VIII) {h(x, y) = h(a, b)} ? ? ? IX) {x = f (z), y = f (a), x = y} ? ? X) {h(x, f (y)) = z, z = h(f (y), v)} a) Wenden Sie den Martelli-Montanari Algorithmus auf die gegebenen Probleme an. Notieren Sie dabei sämtliche Zwischenschritte und dabei auch den Namen der im Schritt angewendeten Regel. Jeder Schritt soll genau einer Anwendung genau einer Regel entsprechen. Hinweis: Achten Sie darauf, den Algorithmus so lange anzuwenden, bis keine Regeln mehr anwendbar sind. b) Verwenden Sie die Ergebnisse aus dem vorherigen Aufgabenteil um eine begründete Aussage über das (Nicht-)Vorhandensein eines Unifikators zu machen. Gibt es einen Unifikator für ein Probleme, so geben Sie ihn explizit an. ∗1 ∗2 B 225 B 224 [email protected] [email protected] www.uni-koblenz.de/~sofronie www.uni-koblenz.de/~mbender Bitte beachten Sie die Modalitäten zur Abgabe, die Sie unter http://userp.uni-koblenz.de/~mbender/ ss17logic.html einsehen können. Bei Fragen zu Ihrer Korrektur wenden Sie sich an [email protected].