¨Ubungen zur Logik

Werbung
Lösungsvorschläge Sommersemester 2001 (Stand: 26. 06. 2001)
Technische Universität München
Institut für Informatik
Prof. Tobias Nipkow, Ph.D.
Gerwin Klein
Blatt 8
Sommersemester 2001
Lösungsvorschläge zu Blatt 8
26. 06. 2001
Übungen zur Logik
Aufgabe 1 (Lösungsvorschlag)
Wir zeigen zunächst eine Variante des Substitutionslemmas für Terme t, t0 und
Variablen x
A(t0 [x/t]) = A[x/A(t)](t0 )
durch Induktion über den Aufbau von t0 .
Für t0 = y - also eine andere Variable als x - gilt:
A(t0 [x/t]) = A(t0 ) = A[x/A(t)](t0 )
Für t0 = x gilt:
A(t0 [x/t]) = A(t) = A[x/A(t)](t0 )
Falls t0 die Form t0 = f (t1 , . . . , tn ), n ≥ 0 hat, so gilt - unter Verwendung der Induktionsvoraussetzung für die ti :
A(f (t1 , . . . , tn )[x/t]) =
=
=
=
=
A(f (t1 [x/t], . . . , tn [x/t]))
f A (A(t1 [x/t], . . . , A(tn [x/t]))
f A (A[x/A(t)](t1 ), . . . , A[x/A(t)](tn ))
f A[x/A(t)] (A[x/A(t)](t1 ), . . . , A[x/A(t)](tn ))
A[x/A(t)](f (t1 , . . . , tn ))
Wir zeigen nun das Substitutionslemma durch Induktion über den Formelaufbau von F .
Falls F eine atomare Formel ist, also F = P (t1 , . . . , tn ), so geht der Beweis analog zu dem
oben gegebenen (ersetzte f durch P ).
Falls F die Form F = (G ∨ H) hat, so gilt
Lösungsvorschläge Sommersemester 2001 (Stand: 26. 06. 2001)
A(F [x/t]) = 1 gdw.
gdw.
gdw.
gdw.
Blatt 8
A(G[x/t] ∨ H[x/t]) = 1
A(G[x/t]) = 1 oder A(H[x/t]) = 1
A[x/A(t)](G) = 1 oder A[x/A(t)](H) = 1
A[x/A(t)](G ∨ H) = 1
Die Fälle F = (G ∧ H) und F = ¬G gehen analog.
Habe nun F die Form F = ∃yG, dann gilt:
A(F [x/t]) = 1 gdw.
gdw.
gdw.
gdw.
es gibt ein u ∈ UA mit A[y/u](G[x/t]) = 1
es gibt ein u ∈ UA mit A[y/u][x/A(t)](G) = 1
es gibt ein u ∈ UA mit A[x/A(t)][y/u](G) = 1
A[x/A(t)](∃yG) = 1
(Bei dieser Umformung wird die Voraussetzung verwendet, daß y in t nicht vorkommt).
Der Fall F = ∀y.G geht analog.
Aufgabe 2 (Lösungsvorschlag)
Zunächst bringen wir ¬F in Skolemform:
Bereinigte Form: ¬F ≡ ¬∃x(¬P (x) ∨ ∀y. P (f (y)))
Pränexform:
¬∃x(¬P (x) ∨ ∀y. P (f (y))) ≡ ∀x.(P (x) ∧ ∃y¬P (f (y))) ≡ ∀x.∃y(P (x) ∧ ¬P (f (y)))
Skolemform: ∀x.(P (x) ∧ ¬P (f (g(x)))) = F 0
(Einführung einer neuen Funktionen g, Skolemform ist gleichzeitig Klauselnormalform)
Wir wenden jetzt das in der Vorlesung vorgestellte Verfahren (Algorithmus von Gilmore)
an, um zu zeigen, daß F 0 unerfüllbar ist.
Dazu können wir für x alle Terme der Grundmenge des Herbrand-Universums substituieren und die entstehenden Formeln mit ∧ verknüpfen. Sobald wir eine unerfüllbare
aussagenlogische Formel erhalten, wissen wir, daß die ursprüngliche Formel F 0 unerfüllbar war.
Die Grundmenge des Herbrand-Universums D(F 0 ) hat folgende Form:
D(F 0 ) = {a, f (a), g(a), f (g(a)), g(f (a)), g(g(a)), f (f (a)), . . .}
= {hn (hn−1 (. . . h2 (h1 (a)) . . .)) | n ∈ N0 , hi ∈ {f, g}, i ∈ {1, . . . , n}}
Dabei wurde die Konstante a neu eingeführt, da F 0 keine eigenen Konstante besitzt.
Wir setzen einmal a und einmal f (g(a)) für x ein und erhalten folgende Formel:
P (a) ∧ ¬P (f (g(a))) ∧ P (f (g(a))) ∧ ¬P (f (g(f (g(a)))))
Diese aussagenlogische Formel enthält die Teilformel ¬P (f (g(a))) ∧ P (f (g(a))) und ist
daher unerfüllbar.
Lösungsvorschläge Sommersemester 2001 (Stand: 26. 06. 2001)
Blatt 8
Aufgabe 3 (Lösungsvorschlag)
G besitzt folgende Skolemform G0 :
G0 = ∀x.(P (x) → (Q(f (x)) ∧ R(x, f (x))))
(Dabei wurde f als neue Funktion eingeführt.)
Die Strukturen A1 , A2 müssen nun jeweils um eine Interpretation für f erweitert werden,
so daß sie auch Modell von G0 sind.
(a) Wenn wir für die Prädikatsymbole eine etwas intuitivere Notation wählen, hat G0
folgendes Aussehen:
∀x.(x ≥ 0 → (f (x) ≤ 0 ∧ x + f (x) = 0))
Wir benötige also das Inverse zu x in der Gruppe der ganzen Zahlen mit Addition.
Also:
f A1 (z) = −z
(b) Wieder können wir G0 etwas intuitiver aufschreiben:
∀x.(x > 0 → (f (x) > 0 ∧ x > f (x)))
f (z) muß also einen Wert zwischen z und 0 liefern. Im Gegensatz zur Teilaufgabe
(a) gibt es jetzt mehrere Möglichkeiten, f zu definieren, z.B.
f A2 =
9
z
oder f A2 (z) = z
2
10
Aufgabe 4 (Lösungsvorschlag)
Wie im Lösungshinweis bereits angedeutet, muß der Algorithmus die Formel von links
nach rechts abarbeiten und umformen. Hierbei wird bei jedem Vorkommen eines Quantors
festgestellt, ob sich dieser im Wirkungsbereich einer geraden oder ungeraden Anzahl von
Negationen befindet. Die zu eliminierenden Quantoren (und dazugehörigen Variablen)
sind dann gerade die Existenzquantoren mit einer geraden Anzahl von Negationen und die
Allquantoren mit einer ungeraden Anzahl. Für jede zu eliminierende Variable wird – wie
bekannt – ein neues Skolem-Funktionssymbol eingeführt und eingesetzt. Die Stelligkeit
(und die Art der Variablen-Argumente der Funktion) ergibt sich aus den zuvor nicht
eliminierten Quantoren bzw. Variablen.
Herunterladen