1 2 3 4 5 6 Σ - Fakultät für Mathematik und Informatik

Werbung
Universität Heidelberg
Institut für Informatik
Prof. Dr. Klaus Ambos-Spies
Dipl.-Math. Martin Monath
06. April 2017
Klausur zur Vorlesung
Mathematische Logik
Es können maximal 48 Punkte erworben werden. Die Klausur ist bestanden, wenn mindestens 18 Punkte erreicht
werden.
Bitte tragen Sie zunächst Ihre Daten unten auf dem Deckblatt ein. Schreiben Sie dann Ihren Namen auf jedes Aufgabenblatt.
Bitte benutzen Sie die jeweiligen Aufgabenblätter (Vorderund Rückseite) für Ihre Lösungen. Reicht der Platz nicht
aus, verwenden Sie ein Extrablatt und versehen Sie dieses
oben mit der Aufgabennummer und Ihrem Namen.
VIEL ERFOLG!
NAME:
VORNAME:
MATRIKELNUMMER:
STUDIENGANG:
Bitte ausfüllen!
---------------------------------------------
1
2
3
4
5
6
Σ
NAME:
Aufgabe 1 (Aussagenlogik - 8 Punkte)
Geben Sie zu der Formel
ϕ ≡ (¬(A2 ↔ A1 ) → ¬A3 )
äquivalente Formeln in disjunktiver und konjunktiver Normalform an. Bestimmen Sie hierzu zunächst die Wertetabelle der von ϕ dargestellten (3-stelligen)
Booleschen Funktion und wenden Sie dann hierauf die in der Vorlesung angegebenen Verfahren zur Bestimmung der DNF und KNF an. (Für Lösungen, die
diese Verfahren nicht benutzen, gibt es keine Punkte!)
LÖSUNG: Die von ϕ dargestellte Boolesche Funktion fϕ (x1 , x2 , x3 ) ist durch
folgende Wertetabelle gegeben:
x1
0
0
0
0
1
1
1
1
x2
0
0
1
1
0
0
1
1
x3
0
1
0
1
0
1
0
1
fϕ (x1 , x2 , x3 )
∧-Klausel (DNF)
∨-Klausel (KNF)
1
(¬A1 ∧ ¬A2 ∧ ¬A3 )
1
(¬A1 ∧ ¬A2 ∧ A3 )
1
(¬A1 ∧ A2 ∧ ¬A3 )
0
(A1 ∨ ¬A2 ∨ ¬A3 )
1
(A1 ∧ ¬A2 ∧ ¬A3 )
0
(¬A1 ∨ A2 ∨ ¬A3 )
1
(A1 ∧ A2 ∧ ¬A3 )
1
(A1 ∧ A2 ∧ A3 )
Aus den 1-Stellen von fϕ erhält man nach dem Verfahren der Vorlesung eine
zu ϕ äquivalente Formel in DNF, indem man die zugehörigen ∧-Klauseln mit
∨ verknüpft:
ϕDNF
≡ (¬A1 ∧ ¬A2 ∧ ¬A3 ) ∨ (¬A1 ∧ ¬A2 ∧ A3 ) ∨ (¬A1 ∧ A2 ∧ ¬A3 )∨
(A1 ∧ ¬A2 ∧ ¬A3 ) ∨ (A1 ∧ A2 ∧ ¬A3 ) ∨ (A1 ∧ A2 ∧ A3 )
Aus den 0-Stellen von fϕ erhält man nach dem Verfahren der Vorlesung eine
zu ϕ äquivalente Formel in KNF, indem man die zugehörigen ∨-Klauseln mit
∧ verknüpft:
ϕKNF
≡
(A1 ∨ ¬A2 ∨ ¬A3 ) ∧ (¬A1 ∨ A2 ∨ ¬A3 )
NAME:
Aufgabe 2 (Aussagenlogik - 7 Punkte)
Sei K zunächst ein bliebiger Kalkül der Aussagenlogik:
(a) (2 Punkte) Was heißt es für eine aussagenlogische Formel ϕ, dass sie
K-beweisbar ist?
(b) (2 Punkte) Was heißt es, dass K korrekt bzgl. Allgemeingültigkeit ist?
Was heißt es, dass K konsistent ist?
(c) (3 Punkte) K sei nun der Kalkül der Aussagenlogik mit den Axiomen
ϕ ∧ ¬ϕ
und den Regeln
ϕ∧ψ
ϕ∧ψ
ϕ ∨ ψ, ¬ϕ ∨ δ
(A) ,
(B) ,
(C)
ψ∧ϕ
ϕ∨ψ
ψ∨δ
für alle al. Formeln ϕ, ψ und δ.
Ist K konsistent? Ist K korrekt bzgl. Allgemeingültigkeit? Begründen Sie
Ihre Antwort!
LÖSUNG:
(a) Eine aussagenlogische Formel ϕ ist K-beweisbar, wenn es einen K-Beweis
für ϕ gibt, in Zeichen `K ϕ, d.h. eine Folge von Formeln ϕ1 . . . ϕn , sodass
ϕn ≡ ϕ und für alle i ≤ n gilt, dass
• ϕi ein Axiom aus K ist, oder
• ϕi ist die Konklusion einer Regel (R) aus K, deren Prämissen in
{ϕj : j < i} liegen.
(b) K heißt korrekt bzgl. Allgmeingültigkeit, falls jede K-beweisbare Formel
ϕ allgemeingültig ist und K heißt konsistent, wenn es eine Formel ϕ gibt,
die nicht K-beweisbar ist, d.h., sodass 6`K ϕ gilt.
(c) Es gilt 6`K A für jede Aussagenvariable A. Wir zeigen dies, indem
wir durch Induktion nach der Länge des Beweises zeigen, dass jede Kbeweisbare Formel entweder eine Konjunktions oder Disjunktionsformel
ist. Sei dazu ϕ eine K-beweisbare Formel und ϕ
~ = ϕ1 . . . ϕn ein K-Beweis
für ϕ gegeben. Da ϕ ≡ ϕn ist, reicht es zu zeigen, dass jedes ϕi (i ≤ n)
Konjunktions- bzw. Disjunktionsformel ist. Da ϕ
~ ein K-Beweis ist, unterscheiden wir dazu folgende Fälle:
• ϕi ist ein Axiom aus K: dann hat ϕi die Gestalt ϕ ∧ ¬ϕ für eine
Formel ϕ und ist Konjunktionsformel.
LÖSUNG (Aufgabe 2, Fortsetzung):
• ϕi ist die Konklusion einer Regel (R) aus K: ist ϕi eine Konklusion
einer Regel vom Typ (A), so hat ϕi die Gestalt ϕ ∧ ψ und ist Konjunktionsformel; ist sie Konklusion einer Regel vom Typ (B) bzw.
(C), so hat ϕi die Gestalt ϕ ∨ ψ und ist damit Disjunktionsformel.
NAME:
Aufgabe 3 (Prädikatenlogik 1. Stufe - 10 Punkte)
Sei L = L(N ; f, g; c, d) die prädikatenlogische Sprache mit einem 1-stelligen Relationszeichen, zwei 2-stelligen Funktionszeichen und zwei Konstanten. Weiter
sei
Q = (Q; N; +, ·; 0, 1)
die L-Struktur mit den rationalen Zahlen als Individuenbereich, wobei + und
· die übliche Addition bzw. Multiplikation und 0 und 1 die Null bzw. die Eins
sind.
(a) (2 Punkte) Geben Sie einen L-Satz σ an, sodass σ in Q ausdrückt, dass
1
2 6∈ N ist.
(b) (3 Punkte) Welche Menge von rationalen Zahlen wird durch die Formel
ψ(x) ≡ (N (x) ∨ ∃y(N (y) ∧ f (x, y) = c))
in Q beschrieben (d.h. wie sieht die Menge {a ∈ Q : Q |= ψ[a]} aus)?
(c) (2 Punkte) Gibt es zu jeder rationalen Zahl a einen konstanten L-Term
ta , der in Q als die Zahl a interpretiert wird (d.h. (ta )Q = a)?
(d) (3 Punkte) Geben Sie eine L-Formel χ ≡ χ(x) in der freien Variablen
x an, die das Funktionszeichen f nicht enthält und in Q die positiven,
rationalen Zahlen darstellt (d.h. Q χ[a] g.d.w. a > 0).
(Sie können bei dieser und den folgenden Aufgaben die in der Vorlesung eingeführten Konventionen zur Erhöhung der Lesbarkeit von Formeln - wie Klammerregeln, zusätzliche Junktoren und Allquantor sowie (wo üblich) die Infixschreibweise - verwenden.)
LÖSUNG:
(a) Der folgende Satz leistet das Gewünschte:
σ ≡ ¬∃z(N (z) ∧ f (z, z) = d)
(b) Es gilt für jedes a ∈ Q:
Q |= ψ[a] ⇔ a ∈ N oder es gibt b ∈ N, sodass a + b = 0,
⇔ a ∈ N oder −a ∈ N,
⇔ a ∈ Z,
d.h. ψ beschreibt die Menge der ganzen Zahlen in Q.
LÖSUNG (Aufgabe 3, Fortsetzung):
(c) Nein, da für jeden konstanten L-Term t gilt, dass tQ ∈ N. Wir zeigen dies
durch Induktion nach dem Termaufbau:
• t ≡ c oder t ≡ d: dann gilt tQ ∈ {0, 1}.
• t ≡ f (t1 , t2 ) oder t ≡ g(t1 , t2 ) mit konstanten L-Termen t1 , t2 : dann
Q
gilt nach Induktionsvoraussetzung tQ
i ∈ N und damit t = t1 + t2 ∈
Q
N für t ≡ f (t1 , t2 ) bzw. t = t1 · t2 ∈ N im Falle t ≡ g(t1 , t2 ).
(d) Folgende Formel leistet das Gewünschte:
χ(x) ≡ (x 6= c ∧ ∃z (z 6= c ∧ N (z) ∧ N (g(z, x))))
Die Idee hinter χ(x) ist, dass eine rationale Zahl x genau dann positiv
ist, wenn x 6= 0 ist und es eine natürliche Zahl z 6= 0 gibt, sodass z
multipliziert mit x wieder eine natürliche Zahl ist.
NAME:
Aufgabe 4 (Prädikatenlogik 1. Stufe - 11 Punkte)
Sei L = L(N ; f, g; c, d) und Q = (Q; N; +, ·; 0, 1) wie in Aufgabe 3 definiert.
(a) (2 Punkte) Was heißt es, dass zwei L-Strukturen (für obige Sprache L)
isomorph sind?
(b) (3 Punkte) Wie ist die Termstruktur zu einer L-Theorie T (für obige
Sprache L) definiert?
(c) (3 Punkte) Ist die Termstruktur ATh(Q) ein Modell von Th(Q)? Begründen Sie Ihre Antwort!
(d) (3 Punkte) Sind ATh(Q) und N = (N; N; +, ·; 0, 1) elementar äquivalent,
wobei + und · die Addition bzw. Multplikation (eingeschränkt auf N) und
0 und 1 die Null bzw. die Eins sind? Begründen Sie Ihre Antwort!
Hinweis: Beachten Sie Aufgabe 3.
LÖSUNG:
(a) Zwei L-Strukturen A und B (für obige Sprache L) sind isomorph, wenn es
einen Isomorphismus zwischen Ihnen gibt, d.h. eine bijektive Abbildung
h : A → B (wobei A und B die Trägermengen von A bzw. B sind), sodass
für alle a, a1 , a2 ∈ A gilt:
• a ∈ N A ⇔ h(a) ∈ N B ,
• h(f A (a1 , a2 )) = f B (h(a1 ), h(a2 )),
• h(g A (a1 , a2 )) = g B (h(a1 ), h(a2 )) und
• h(cA ) = cB und h(dA ) = dB .
(b) Die Termstruktur zu einer L-Theorie T (für obige Sprache L) hat die
Gestalt AT = (AT ; N AT ; f AT , g AT ; cAT , dAT ), wobei die Menge der Individuen AT die Menge der Äquivalenzklassen t von konstanten L-Termen
t ist. Hierbei ist die Äquivalenzrelation ∼ zwischen zwei konstanten LTermen t1 und t2 definiert als t1 ∼ t2 :⇔ T ` t1 = t2 .
Weiter ist N AT = {t : T ` N (t)} und f AT (t1 , t2 ) := f (t1 , t2 ) (analog für
g) und cAT := c (analog für d). Dass diese Festsetzungen wohldefiniert
sind (d.h. unabhängig von der Wahl des Repräsentanten) folgt aus den
Lemmata 1-3 aus Kapitel 3.7.2 der Vorlesung.
LÖSUNG (Aufgabe 4, Fortsetzung):
(c) Nein, denn für den Satz σ ≡ ∃x ¬N (x) gilt Th(Q) |= σ, aber ATh(Q) 6|= σ.
Um ersteres einzusehen, reicht es zu zeigen, dass Q |= σ gilt (in diesem
Fall gilt sogar σ ∈ Th(Q)). Dies gilt jedoch, da N $ Q.
Um zweiteres einzusehen, nehmen wir für einen Widerspruch an, es gälte
ATh(Q) |= σ, d.h. es gibt einen konstanten Term t, sodass ATh(Q) |=
¬N (x)[ t ], d.h. t 6∈ N ATh(Q) gilt. Nach Teil (b) ist dies äquivalent dazu,
dass Th(Q) 6` N (t). Nachdem Th(Q) eine vollständige Theorie ist und
N (t) ein Satz, muss Th(Q) ` ¬N (t), d.h. Th(Q) |= ¬N (t) nach dem
Korrektheitssatz gelten. Da nun Q per Definition ein Modell von Th(Q)
ist, heißt das wiederum tQ 6∈ N, im Widerspruch zu Aufgabe 3(c).
(d) Ja, sie sind sogar isomorph zueinander! Der Isomorphismus ist dabei
durch die Abbildung h : ATh(Q) → N mit
h(t) := tQ
gegeben (dass h dabei wirklich nach N abbildet, wissen wir nach Aufgabe
3(c)). Mit dem Isomorphielemma der Vorlesung (Kapitel 4.4) folgt die
Behauptung.
Man kann aber auch direkt einsehen, dass sie elementar äquivalent sind.
Wegen Aufgabe 3(c) gilt nämlich tQ = tN und damit für alle konstanten
L-Terme t, t0 :
Th(Q) ` t = t0 ⇔ Th(N ) ` t = t0
Insbesondere haben Th(Q) und Th(N ) identische Termstrukturen, d.h.
ATh(Q) ≡ ATh(N ) . Nun kann aber, im Gegensatz zu Q jede natürliche
Zahl durch einen konstanten Term interpretiert werden. Dazu definieren wir durch Induktion nach n konstante L-Terme tn wie folgt: t0 ≡ c
und tn+1 ≡ f (tn , d). Wie man leicht durch vollständige Induktion zeigt,
gilt tN
n = n. Damit ist Th(N ) eine vollständige, konsistente Henkintheorie und somit gilt nach dem Satz über Termmodelle (Kapitel 3.7.3 der
Vorlesung) ATh(Q) |= Th(N ). Nach Kapitel 4.4, Lemma 1 folgt die Behauptung.
NAME:
Aufgabe 5 (Prädikatenlogik 1. Stufe - 5 Punkte)
Der Kompaktheitssatz bzgl. der Erfüllbarkeit besagt, dass eine Theorie
erfüllbar ist, falls alle Ihre endlichen Teiltheorien erfüllbar sind. Leiten Sie diesen Satz aus dem Korrektheitssatz und dem Erfüllbarkeitslemma her. (Geben
Sie hierzu auch den Wortlaut dieses Satzes und Lemmas an.)
LÖSUNG: Der Korrektheitssatz besagt, dass ein Satz σ, der (im ShoenfieldKalkül) aus einer Theorie T herleitbar ist, auch aus dieser Theorie folgt, d.h.
dass
T `σ ⇒ T σ
gilt. Das Erfüllbarkeitslemma besagt, dass jede konsistente Theorie erfüllbar
ist.
Der Beweis des Kompaktheissatzes ist indirekt: Sei T eine Theorie die nicht
erfüllbar ist. Wir müssen zeigen, dass T eine endliche Teiltheorie T0 besitzt,
die bereits nicht erfüllbar ist
Aus der Nichterfüllbarkeit von T folgt mit der Kontraposition des
Erfüllbarkeitslemmas, dass T inkonsistent ist. Nach dem Charakterisierungslemma für die Konsistenz (Kapitel 3.6 der Vorlesung) gibt es also einen Satz
σ mit T ` σ und T ` ¬σ. Sind nun ϕ1 , . . . , ϕm und ψ1 , . . . , ψn Beweise von σ
bzw. ¬σ aus T und setzt man
T0 := T ∩ {ϕ1 , . . . , ϕm , ψ1 , . . . , ψn }
so sind ϕ1 , . . . , ϕm und ψ1 , . . . , ψn auch Beweise von σ bzw. ¬σ aus der endlichen Teiltheorie T0 von T , weshalb T0 ` σ und T0 ` ¬σ gilt. Mit dem Korrektheitssatz folgt T0 σ und T0 ¬σ. Jedes Modell von T0 ist also zugleich
Modell von σ und Modell von ¬σ. Da eine Struktur A aber entweder Modell
von σ oder Modell von ¬σ ist, bedeutet dies, dass T0 kein Modell besitzt, also
unerfüllbar ist.
NAME:
Aufgabe 6 (Prädikatenlogik 1. Stufe - 7 Punkte)
Seien K und K0 Klassen von L-Strukturen und
Th(K) := {σ : σ ist L-Satz mit A |= σ für alle A ∈ K}
(a) (1 Punkt) Was heißt es, dass K ∆-elementar ist?
Zeigen Sie ferner:
(b) (2 Punkte) K ⊆ K0 ⇒ Th(K0 ) ⊆ Th(K).
(c) (1 Punkt) K ⊆ Mod(Th(K)).
(d) (3 Punkte) K = Mod(Th(K)) ⇔ K ist ∆-elementar.
LÖSUNG: Vorbemerkung: Nach Definition von Th(K) gilt für alle σ ∈ Th(K)
und für alle A ∈ K, dass A |= σ. Dies wird im Folgenden benutzt.
(a) Eine Klasse K von L-Strukturen ist ∆-elementar, wenn es eine L-Theorie
T gibt, sodass
K = Mod(T ) = {A : A ist L-Struktur und A |= T }
gilt.
(b) Sei K ⊆ K0 gegeben. Um Th(K0 ) ⊆ Th(K) zu zeigen, sei σ ∈ Th(K0 )
vorgegeben. Um wie gewünscht σ ∈ Th(K) zu erhalten, müssen wir A |= σ
für alle A ∈ K zeigen. Sei also A ∈ K gegeben. Nach Voraussetzung ist
aber A ∈ K0 und wegen σ ∈ Th(K0 ) folgt die Behauptung unmittelbar
nach obiger Vorbemerkung (für K0 ).
(c) Sei A ∈ K beliebig. Wir müssen A |= Th(K) zeigen, d.h. A |= σ für alle
σ ∈ Th(K). Dies ist aber gerade der Wortlaut obiger Vorbemerkung.
(d) Wir zeigen beide Richtungen:
“⇒”: Es gilt K = Mod(T ) für T = Th(K).
“⇐”: Sei T eine L-Theorie mit K = Mod(T ). Nach Aufgabe 6(c) reicht
es zu zeigen, dass Mod(Th(K)) ⊆ K gilt. Da jedoch für zwei beliebige L-Theorien T1 , T2 gilt, dass aus T1 ⊆ T2 die umgekehrte Inklusion
Mod(T2 ) ⊆ Mod(T1 ) folgt (siehe Kapitel 4.1, Folie 11), reicht es nach
Annahme über K, T ⊆ Th(K) zu zeigen. Sei dazu σ ∈ T beliebig vorgegben. Um σ ∈ Th(K) nachzuweisen, müssen wir A |= σ für alle A ∈ K
zeigen. Ist jedoch A ∈ K = Mod(T ) gegeben, so folgt A |= T nach Definition, d.h. A |= τ für alle τ ∈ T . Indem wir τ ≡ σ setzen, folgt die
Behauptung.
NAME:
AUFGABE:
NAME:
AUFGABE:
Herunterladen