Einführung in die Logik

Werbung
Institut für
Theoretische Informatik
ITI
Dr. Jürgen Koslowski
Einführung in die Logik
Aufgabenblatt 4, 2016-05-09
Übungsaufgabe 21
Tick, Trick und Track sind durch den Konsum gewaltorientierte Computerspiele endgültig
auf die schiefe Bahn eraten und haben Onkel Dagoberts Geldspeicher ausgeraubt. Beim Polizeiverhör möchte Kommissar Hunter wissen, was mit der Beute geschehen ist und nimmt
folgende Aussagen auf:
Tick: Wir haben Geld im Wald vergraben und im See versenkt.
Trick: Normalerweise verstecken wir nichts zu Hause und bringen auch nichts zur Bank, wenn
wir Geld im Wald vergraben.
Track: Trick wollte etwas Geld zur Bank bringen oder für einen guten Zweck spenden.
Trick: Genau, und wenn wir etwas spenden, dann vergraben wir nichts im Wald.
Kommissar Hunter ist empört: Mindestens einer von Euch belügt mich doch!“
”
(a) Formalisieren Sie die Aussagen in der Aussagenlogik.
(b) Zeigen Sie mit Hilfe der Resolutionsmethode, dass Kommissar Hunter recht hat.
Lösungsvorschlag:
(a) Atomare Aussagen:
W = im Wald vergraben“
”
S = im See versenkt“
”
H = zu Hause versteckt“
”
B = zur Bank gebracht“
”
Z = für guten Zweck gespendet“
”
Tick: W ∧ S
Trick: W ⇒ (¬H ∧ ¬B) ≡ (¬H ∧ ¬B) ∨ ¬W ≡ (¬H ∨ ¬W ) ∧ (¬B ∨ ¬W )
Track: B ∨ Z
Trick: Z ⇒ ¬W ≡ ¬W ∨ ¬Z
(b) Die Konjunktion der Aussagen in KNF ist in Mengenschreibweise
{W }{S}{¬H, ¬W }{¬B, ¬W }{B, Z}{¬W, ¬Z}
Daraus erhalten wir die Resolventen {B, ¬W }, {B} und {¬B} und folglich auch ∅. Damit
ist die Konjunktion nicht erfüllbar.
Aufgabe 22 [13 PUNKTE]
(a) Formen Sie F = ((A ⇒ B) ⇒ C) ⇒ (C ⇒ (A ⇒ B)) um in
– [3 punkte] NNF
– [1 punkt] DNF
– [3 punkte] KNF
(b) [6 punkte] Testen Sie die Formel G = (C ⇒ B) ∧ (C ⇒ ¬A) ∧ (¬A ∨ C) ∧ (¬A ∧ C ⇒ B)
mit der Resolutionsmethode auf Erfüllbarkeit.
Lösungsvorschlag:
(a) NNF:
F ≡ ¬(¬(¬A ∨ B) ∨ C) ∨ ¬C ∨ ¬A ∨ B
≡ ((¬A ∨ B) ∧ ¬C) ∨ ¬C ∨ ¬A ∨ B
Eine äquivalente DNF kann man aus dieser NNF direkt herleiten, ohne Umweg über die
KNF:
F ≡ (¬A ∧ ¬C) ∨ (B ∧ ¬C) ∨ ¬C ∨ ¬A ∨ B
Für die KNF ist nur zu beachten, dass die obige NNF eine Disjunktion von zwei KNFs ist:
F ≡ (¬A ∨ B ∨ ¬C ∨ ¬A ∨ B) ∧ (¬C ∨ ¬C ∨ ¬A ∨ B)
≡ (¬A ∨ B ∨ ¬C) ∧ (¬C ∨ ¬A ∨ B)
≡ (¬A ∨ B ∨ ¬C)
(b)
G ≡ {B, ¬C} {¬A, ¬C}, {¬A, C} {B, A, ¬C}
Res(G) = G {B, ¬A} {¬A} >
Res2 (G) = Res(G)
Also ist F erfüllbar.
Aufgabe 23 [15 PUNKTE]
Schneewittchen möchte in die Stadt einkaufen gehen und die Zwerge beschließen, dass mindestens einer von ihnen sie begleitet. Drei der Zwerge scheiden als Begleitung aus, da sie Holz
hacken müssen. Die möglichen Begleiter, die Zwerge Alberich, Gimli, Rübezahl und Zwergnase,
diskutieren, wer mit in die Stadt geht.
Alberich: “Wenn Gimli nicht geht und Rübezahl nicht geht, dann geh’ ich auch nicht.”
Gimli: “Ich gehe nur, wenn Rübezahl oder Zwergnase mitgehen.”
Rübezahl: “Wenn Gimli nicht geht, dann gehe ich auch nicht.”
Zwergnase: “Ich gehe nur, wenn Gimli nicht mitkommt. Wenn Rübezahl geht, dann will ich auf
jeden Fall mit.”
Zeigen Sie mit Hilfe der Resolutionsmethode, dass die vier Zwerge nur zufrieden sind, wenn
Zwergnase als einziger mit Schneewittchen in die Stadt geht.
Lösungsvorschlag:
Die atomaren Aussagen A, G, R und Z bedeuten, dass der entsprechende Zwerg mitkommt.
Die Voraussetzung besagt
A∨G∨R Z
Die Aussagen der vier Zwerge lassen sich wie folgt zu Klauseln umformen:
(¬G ∧ ¬R) ⇒ ¬A ≡ ¬A ∨ G ∨ R
G ⇒ (R ∨ Z) ≡ ¬G ∨ R ∨ Z
¬G ⇒ ¬R ≡ G ∨ ¬R
Z ⇒ ¬G ≡ ¬G ∨ ¬Z
R ⇒ Z ≡ ¬R ∨ Z
Die bisherigen Klauseln fassen wir zur Menge Γ bzw. zur Formel H =
Behauptung entspricht der Aussage
V
Γ zusammen. Die
B = ¬A ∧ ¬G ∧ ¬R ∧ Z
deren Negation also der neuen Klausel
A ∨ G ∨ R ∨ ¬Z
Nachzuweisen ist H |= B, bzw. äquivalent H ∧ ¬B ist nicht erfüllbar.
{A, G, R, Z} {A, G, R, ¬Z}
{A, G, R}
{G, ¬R}
{¬A, G, R}
{A, G}
{G, ¬R}
{G, R}
{G}
{¬G, R, Z}
{R, Z}
{¬R, Z}
{Z}
{¬G, ¬Z}
{¬G}
∅
Alternativer Ansatz: wir “externalisieren” die Aussage, mindestens einer der verfügbaren vier
0
Zwerge müsse Schneewittchen begleiten.
der
V Γ0 sei die Menge der 5 Klauseln der Aussagen
0
Zwerge, ohne {A, G, R, Z}, und H = Γ . Auf Erfüllbarkeit sind nun die Formeln H 0 ∧ A,
H 0 ∧ G, H 0 ∧ R sowie H 0 ∧ Z zu überprüfen.
Aus H 0 lassen sich die Resolventen ¬G und ¬R ableiten:
{R, Z}
{¬G, ¬Z}
{¬R, Z}
{Z}
{¬G, ¬Z}
{¬G}
{¬R, Z}
{¬G, ¬R}
{G, ¬R}
{¬R}
und mit Hilfe von {¬A, G, R} dann auch {¬A}.
Damit sind die ersten drei zu überprüfenden Formeln nicht erfüllbar, da man aus H 0 konjugiert
mit der weiteren Klausel {A} oder {G} oder {R} sofort die Resolvente ∅ erhält.
Es bleibt zu untersuchen was passiert, wenn Zwergnase mitgehen will. Die Erfüllbarkeit von
F = H 0 ∧ Z zu analysieren ist leider recht aufwändig:
F = {¬A, G, R} {¬G, R, Z} {G, ¬R} {¬G, ¬Z} {¬R, Z} {Z}
Res(F ) = F {¬A, R, Z} {¬A, G} {¬A, R, ¬Z} {¬A, G, Z} {¬G, Z} {¬R, ¬Z} {¬G, ¬R}
{¬G, R} {¬G}
2
Res (F ) = Res(F ) {¬A, R} {¬A, G, ¬Z} {¬A, ¬G, R} {¬R} {¬A, ¬Z} {¬A, Z} {¬A, ¬G, Z}
{¬A, ¬R} {¬A} {¬A, ¬G, ¬Z} {¬A, G, ¬R} {¬A, ¬R, Z}
3
2
Res (F ) = Res (F ) {¬A, ¬R, ¬Z} {¬A, ¬G, ¬R} {¬A, ¬G}
Res4 (F ) = Res3 (F )
Die leere Menge tritt nicht als Resolvente auf, damit ist F erfüllbar.
Bitte beachten: Man kann versuchen, die Nichterfüllbarkeit von H 0 ∧ ¬Z bzw. Γ0 ∪ {¬Z} zu
zeigen. Diese wäre, im positiven Fall, zu Γ0 |= Z äquivalent (vergl. Satz 6.0.2), was eine stärkere
Bedingung ist als die Erfüllbarkeit von Γ0 ∪ {Z} bzw. H 0 ∧ Z. In diesem Fall gilt allerdings die
Sequenz Γ0 |= Z gar nicht, also schlägt diese Strategie hier fehl.
Man darf auch nicht darauf verzichten, Γ0 ∪ {Z} überhaupt zu untersuchen. Bloß weil eine
Begleitung durch Alberich, oder Gimli oder Rübezahl ausgeschlossen ist, muß eine Begleitung
durch Zwergnase nicht zwingend mit den anderen Nebenbedingungen verträglich sein. Das muß
man erst überprüfen! Das Wünschbare mit dem Machbaren gleichzusetzen ist ein typisches
Verhaltensmuster der Politik, nicht der Logik.
Aufgabe 24 [8 PUNKTE]
Verwenden Sie die Resolutionsmethode, um
(a) [4 punkte] die Erfüllbarkeit von F = ((M ⇒ A) ∨ (¬T ∧ H)) ∧ (M ∨ A) ∧ (¬(T ⇒ H) ∨ A)
zu analysieren,
(b) [4 punkte] G = (A ⇒ B) ∨ (A ∧ ¬(B ∨ C)) ∨ (A ∧ C) als Tautologie zu identifizieren.
Lösungsvorschlag:
(a) Eliminieren der Implikationen liefert
(¬M ∨ A ∨ (¬T ∧ H)) ∧ (M ∨ A) ∧ (¬(¬T ∨ H) ∨ A)
Daraus ergibt sich zunächst die NNF
(¬M ∨ A ∨ (¬T ∧ H) ∧ (M ∨ A) ∧ ((T ∧ ¬H) ∨ A)
und mittels Distributivgesetz die KNF:
(¬M ∨ A ∨ ¬T ) ∧ (¬M ∨ A ∨ H)) ∧ (M ∨ A) ∧ (T ∨ A) ∧ (¬H ∨ A)
Die erste Iteration liefert neue Resolventen:
A ∨ ¬T , ¬M ∨ A , A ∨ H
Die zweite Iteration liefert nur noch eine neue Resolvente (auf drei verschiedene Weisen):
A
Somit tritt ∅ nicht als Resolvente auf, und die ursprüngliche Formel ist erfüllbar.
(b) Gemäß Satz 2.6.2 ist ¬G genau dann nicht erfüllbar, wenn G eine Tautologie ist.
Die NNF von ¬G ergibt sich zu
A ∧ ¬B ∧ (¬A ∨ B ∨ C) ∧ (¬A ∨ ¬C)
was erfreulicherweise bereits eine KNF ist.
Die erste Iteration liefert neue Resolventen
B ∨ C , ¬C , ¬A ∨ C , ¬A ∨ B
In der zweiten Iteration kommt u.a. die Resolventen ¬A sowie C hinzu, die zusammen mit
den bereits existierenden Resolventen A bzw. ¬C jeweils die Resolvente ∅ liefern. Damit
ist ¬G nicht erfüllbar, wie gewünscht.
Herunterladen