Prof. F. von Henke Einführung in die KI Liebig, Balzer Lösungsvorschlag – Abgabe: 30.11.2004, 12:00 Uhr Blatt 4 24.11.2004 Aufgabe 4-1 Gegeben seien folgende Aussagen: (1) Einige Patienten mögen alle Doktoren (2) Absolut kein Patient mag Quacksalber (3) Kein Doktor ist ein Quacksalber a) Formalisieren Sie obigen Sachverhalt in Prädikatenlogik. b) Beweisen Sie durch Resolution, dass die dritte Aussage aus den anderen folgt. Lösungsvorschlag zu 4-1 zu a) Bei dieser Lösung werden die folgenden Prädikate benutzt: P (x) D(x) Q(x) M (x, y) : : : : x x x x ist ein Patient ist ein Doktor ist ein Quacksalber mag y Damit können die natürlichsprachlichen Aussagen zu prädikatenlogischen Aussagen formalisiert werden: F1 : ∃x.P (x) ∧ (∀y.D(y) =⇒ M (x, y)) F2 : ∀x.∀y.P (x) =⇒ (Q(y) =⇒ ¬M (x, y)) G : ∀x.D(x) =⇒ ¬Q(x) zu b) Es ist zu zeigen, dass G eine Folgerung von F1 und F2 ist, also formal: F1 , F2 |= G. D. h. F1 ∧ F2 =⇒ G muss eine Tautologie sein (jedes Modell von {F1 , F2 } muss auch ein Modell von G sein). Resolution ist ein Unerfüllbarkeitstest für den wir folgende Äquivalenz ausnutzen: F1 ∧ F2 =⇒ G ist eine Tautologie gdw. ¬(F1 ∧ F2 =⇒ G) (d. h. F1 ∧ F2 ∧ ¬G) unerfüllbar ist. Für diese Überprüfung müssen F1 , F2 und G jedoch erst in KNF umgeformt werden: F1 in Klauselform: Pränexform: F1 = ∃x.∀y.(P (x) ∧ (¬D(y) ∨ M (x, y)) Skolemisierung: Ersetzte x durch a: F1 = P (a) ∧ (¬D(y) ∨ M (a, y)) KNF: {{P (a)}, {¬D(y), M (a, y)}} 1 Prof. F. von Henke Einführung in die KI Liebig, Balzer Lösungsvorschlag – Abgabe: 30.11.2004, 12:00 Uhr Blatt 4 24.11.2004 F2 in Klauselform: Pränexform: F2 = ∀x.∀y.(¬P (x) ∨ ¬Q(y) ∨ ¬M (x, y)) KNF: {¬P (x), ¬Q(y), ¬M (x, y)} G in Klauselform: Pränexform: G = ∀x.(¬D(x) ∨ ¬Q(x)) Negiert: ¬G = ¬(∀x.(¬D(x) ∨ ¬Q(x))) = ∃x.(D(x) ∧ Q(x)) Skolemisierung: Ersetzte x durch b: ¬G = D(b) ∧ Q(b) KNF: {{D(b)}, {Q(b)}} Wir haben nun K = {{P (a)}, {¬D(y), M (a, y)}, {¬P (x), ¬Q(y), ¬M (x, y)}, {D(b)}, {Q(b)}} und überprüfen K auf Unerfüllbarkeit mittels Resolution: {P (a)} {¬P (x), ¬Q(y), ¬M (x, y)} @ @ {Q(b)} {¬D(y), M (a, y)} {D(b)} e [x/a] % [y/b] e @ @ % e % e % {¬Q(y), ¬M (a, y)} {M (a, b)} @ @ [y/b]@ @ {¬M (a, b)} @ @ @ @ 2 2 Prof. F. von Henke Einführung in die KI Liebig, Balzer Lösungsvorschlag – Abgabe: 30.11.2004, 12:00 Uhr Blatt 4 24.11.2004 Aufgabe 4-2 Gegeben ist folgende Signatur einer Prädikatenlogik erster Stufe: P : GrößerNull(x), Gleich(x, y), Kleiner(x, y) F : nachfolger(x), summe(x, y) C : null, i, ii, iii, iv, v, vi, ... Ferner ist folgende Interpretation I = (D, δ) gegeben: D = {0, 1, 2, 3, 4, . . .} δ(GrößerNull) = {1, 2, 3, 4, . . .} δ(Gleich) = {(x, y) | x, y ∈ D und x = y} δ(Kleiner) = {(x, y) | x, y ∈ D und x < y} δ(nachfolger) = {(0 7→ 1), (1 7→ 2), . . .} δ(summe) = Additionsfunktion, also δ(summe(x, y)) = x + y δ(null) = 0, δ(i) = 1, δ(ii) = 2, . . . a) Formulieren Sie folgende Aussagen in der oben angegebenen Prädikatenlogik 1. null ist kleiner als der Nachfolger von null 2. Der Nachfolger von i ist gleich ii 3. null hat keinen Nachfolger 4. Haben zwei Zahlen den gleichen Nachfolger, dann sind sie gleich 5. Der Nachfolger des Nachfolgers einer Zahl ist größer als der Nachfolger dieser Zahl 6. null ist das neutrale Element bzgl. der Summe zweier Zahlen 7. Ist eine Zahl größer Null, dann ist auch ihr Nachfolger größer Null b) Bestimmen Sie die Erfüllbarkeit der folgenden Aussagen 1. Aussagen aus a) Teil 1 bis 3 2. Kleiner(null, nachfolger(i)) ⇒ Gleich(summe(null, i), i) ∧ GrößerNull(nachfolger(nachfolger(i))) 3. ∀x.Gleich(nachfolger(null), x) ⇒ GrößerNull(x) ∧ Kleiner(x, summe(i, i)) 3 Prof. F. von Henke Einführung in die KI Liebig, Balzer Lösungsvorschlag – Abgabe: 30.11.2004, 12:00 Uhr Blatt 4 24.11.2004 Lösungsvorschlag zu 4-2 zu a) 1. 2. 3. 4. 5. 6. 7. Kleiner(null, nachfolger(null)) Gleich(nachfolger(i), ii) ¬∃x.Gleich(x, nachfolger(null)) ∀x, y.Gleich(nachfolger(x), nachfolger(y)) ⇒ Gleich(x, y) ∀x.Kleiner(nachfolger(x), nachfolger(nachfolger(x))) ∀x.Gleich(x, summe(x, null)) ∀x.GrößerNull(x) ⇒ GrößerNull(nachfolger(x)) zu b) 1. Kleiner(null, nachfolger(null)) ist erfüllbar, da δ(Kleiner(null, nachfolger(null))) = δ(null) < δ(nachfolger(null)) = 0 < δ(i) = 0<1 2. Gleich(nachfolger(i), ii) ist erfüllbar, da δ(Gleich(nachfolger(i), ii)) = δ(nachfolger(i)) = δ(ii) = δ(ii) = 2 = 2=2 3. ¬∃x.Gleich(x, nachfolger(null)) ist unerfüllbar, da δ(¬∃x.Gleich(x, nachfolger(null))) = δ(∀x.¬Gleich(x, nachfolger(null))) = δ(x) 6= δ(nachfolger(null)) = δ(x) 6= δ(i) = δ(x) 6= ii = x[x/ii] 6= ii → Widerspruch 4. Ist erfüllbar, da δ(Kleiner(null, nachfolger(i)) ⇒ Gleich(summe(null, i), i) ∧ GrößerNull(nachfolger(nachfolger(i)))) = δ(¬Kleiner(null, nachfolger(i)) ∨ Gleich(summe(null, i), i) ∧ GrößerNull(nachfolger(nachfolger(i))) = δ(null) 6< δ(nachfolger(i)) oder (δ(summe(null, i)) = δ(i) und δ(nachfolger(nachfolger(i))) > 0) = 0 6< δ(ii) oder (δ(i) = 1 und δ(nachfolger(ii)) > 0) = 0 6< 2 oder (1 = 1 und δ(iii) > 0) = 0 6< 2 oder (1 = 1 und 3 > 0) 4 Prof. F. von Henke Einführung in die KI Liebig, Balzer Lösungsvorschlag – Abgabe: 30.11.2004, 12:00 Uhr Blatt 4 24.11.2004 5. Ist erfüllbar, da δ(∀x.Gleich(nachfolger(null), x) ⇒ GrößerNull(x) ∧ Kleiner(x, summe(i, i))) = δ(∀x.¬Gleich(nachfolger(null), x) ∨ (GrößerNull(x) ∧ Kleiner(x, summe(i, i)))) = δ(nachfolger(null)) 6= δ(x) oder (δ(GrößerNull(x)) und δ(Kleiner(x, summe(i, i)))) = δ(i) 6= δ(x) oder (δ(x) > 0 und δ(x) < δ(summe(i, i))) = 1 6= δ(x) oder (δ(x) > 0 und δ(x) < δ(ii)) = 1 6= δ(x) oder (δ(x) > 0 und δ(x) < 2) Fallunterscheidung: a) x ∈ D∩{1}, d.h. mit der Abbildung β : x 7→ 1 erfüllt δ(x) > 0 und δ(x) < 2 b) x ∈ D \ {1} erfüllt 1 6= δ(x) 5