a → ¬c

Werbung
Einführung in die Theoretische Informatik
Musterlösung - Version G
7.
LVA 703007
Institut für Informatik
a) F = (a → ¬c) ∨ (a ∧ b ∧ c ∧ d) ∨ (d → ¬b) ist eine Tautologie und damit
erfüllbar.
Beweis. (Methode von Quine)
(1) Fa7→T = (T → ¬c) ∨ (T ∧ b ∧ c ∧ d) ∨ (d → ¬b)
≡ ¬c ∨ (b ∧ c ∧ d) ∨ (d → ¬b)
(1.1)
Fa,d7→T = ¬c ∨ (b ∧ c ∧ T) ∨ (T → ¬b) ≡ ¬c ∨ (b ∧ c) ∨ ¬b
≡ (¬b ∨ ¬c) ∨ (b ∧ c) ≡ ¬(b ∧ c) ∨ (b ∧ c) ≡ T
(1.2)
Fa,d7→F = (¬c) ∨ (b ∧ c ∧ F) ∨ (F → ¬b) ≡ ¬c ∨ F ∨ T ≡ T
(2) Fa7→F = (F → ¬c) ∨ (F ∧ b ∧ c ∧ d) ∨ (d → ¬b) ≡ T ∨ F ∨ (d → ¬b) ≡ T
F ist eine Tautologie weil (1) F {a 7→ T} und (2) F {a 7→ F} Tautologien sind.
(1) ist eine Tautologie weil (1.1) und (1.2) Tautologien sind.
b) Lösung. Sei A eine aussagenlogische Formel, die weder Negationen noch False
enthält. Da wir nur Erfüllbarkeit von A beweisen müssen, reicht es zu zeigen,
dass es eine Belegung gibt, mit der A wahr ist. Wir zeigen nun mittels struktureller Induktion, dass wenn alle Atome in A mit wahr belegt werden, auch
A wahr ist:
Basis: Wir unterscheiden die folgenden Fälle:
• A ist eine atomare Formel: dann kann A mit dem Wahrheitswert T belegt
werden und somit ist die ganze Formel A wahr.
• A ist ein Wahrheitswertsymbol: dann kann A laut Vorraussetzung nur
True sein und damit ist A wahr.
Schritt: Wir beweisen die Aussage für die zusammengesetzten Formeln (A ∧
B), (A ∨ B), (A → B) unter der Annahme, dass A und B wahr sind, wenn
alle Atome mit wahr belegt werden (Induktionsannahme). Für ¬A müssen wir
nichts zeigen, da es die Vorraussetzung nicht erfüllt.
Wenn A und B beide wahr sind, folgt aus der Definition der Junktoren sofort,
dass auch (A ∧ B), (A ∨ B) und (A → B) wahr sind.
8. Lösung.
1
b=x∈E (a)
f(x, a) = g(a, x) ∈ E
E`b=x (s)
(a)
(r)
E ` f(x, a) = g(a, x)
a=a (k)
E`x=b
( i,{x → b} )
E ` f(x, a) = f(b, a)
E ` f(b, a) = g(a, b)
(t)
E ` f(x, a) = g(a, b)
9. Lösung.
S
a)
a
S
b
B
S
A b
a
A
B
b
a
b) G1 ist nicht eindeutig, da es zum Beispiel für das Wort aabbb zwei unterschiedliche Linksableitungen gibt.
S ⇒ aSB ⇒ aaSBB ⇒ aaBB ⇒ aabB ⇒ aabbB ⇒ aabbb S ⇒ aSB ⇒
aaSBB ⇒ aaBB ⇒ aabBB ⇒ aabbB ⇒ aabbb
c) G2 = ({S}, {a, b, c}, R, S), wobei die Regeln R wie folgt definiert sind:
S ⇒ aSbb | c
2
3
2
1
mit (x1 = 0 ∧ x2 = b) |= (x1 + x2 = b) und
(x1 + x2 = b ∧ x2 = 0) |= (x1 = b)
mit (x1 + x2 = b ∧ x2 6= 0) |= (x1 + 1 + x2 − 1 = b)
[z]
[z]
{x1 + 1 + x2 − 1 = b} x2 := x2 − 1 {x1 + 1 + x2 = b}
2 {x1 + 1 + x2 = b} x1 := x1 + 1 {x1 + x2 = b}
[a]≡
[a]
{x1 + x2 = b ∧ x2 6= 0} x2 := x2 − 1 {x1 + x2 = b − 1}
{x1 + x2 = b − 1} x1 := x1 + 1 {x1 + x2 = b}
[s]
{x1 + x2 = b ∧ x2 6= 0} x2 := x2 − 1; x1 := x1 + 1 {x1 + x2 = b}
[w]
{x1 + x2 = b} while x2 6= 0 do x2 := x2 − 1; x1 := x1 + 1 end {x1 + x2 = b ∧ x2 = 0}
[a]1
{x1 = 0 ∧ x2 = b} while x2 6= 0 do x2 := x2 − 1; x1 := x1 + 1 end {x1 = b}
10. Lösung.
Herunterladen