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

Werbung
Universität Heidelberg
Institut für Informatik
Prof. Dr. Klaus Ambos-Spies
Dipl.-Math. Martin Monath
09. April 2015
Nachklausur zur Vorlesung
Mathematische Logik
Es können maximal 60 Punkte erworben werden. Die Klausur ist bestanden, wenn mindestens 20 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
7
Σ
NAME:
Aufgabe 1 (Aussagenlogik - 7 Punkte)
Seien ϕ1 , ϕ2 und ϕ3 die folgenden aussagenlogischen Formeln:
ϕ1
ϕ2
ϕ3
≡ ((A1 ∧ A2 ) → ¬A3 ) ∧ (¬A2 → A1 )
≡ (¬A2 ∨ ¬A1 ) ∧ A3
≡ (A1 ↔ ¬A3 ) ∧ ¬A1
(a) (3 Punkte) Geben Sie die 3-stelligen Booleschen Funktionen fϕi ,3 an, die
von ϕi dargestellt werden (i = 1, 2, 3).
(b) (4 Punkte) Geben Sie zu folgenden Aussagen jeweils mit kurzer Begründung
an, ob sie wahr oder falsch sind.
(i) ϕ1 ist allgemeingültig.
(ii) ϕ3 ist erfüllbar.
(iii) ϕ2 ` A2 → ϕ3 .
(iv) ϕ2 impl ϕ1 .
LÖSUNG. (a) Für die Funktionen fϕi ,3 erhalten wir folgende Wertetabellen:
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ϕ1 ,3 (x1 , x2 , x3 ) fϕ2 ,3 (x1 , x2 , x3 ) fϕ3 ,2 (x1 , x3 )
0
0
0
0
1
1
1
0
0
1
1
1
1
0
0
1
1
0
1
0
0
0
0
0
(b) (i) FALSCH: Offenbar ist fϕ1 ,3 (0, 0, 0) = 0.
(ii) WAHR: Denn es ist fϕ3 ,3 (0, 0, 1) = 1.
(iii) WAHR: Dazu reicht es nach dem Adäquatheitssatz der Aussagenlogik zu
zeigen, dass jede Belegung, die ϕ2 und A2 wahrmacht, auch ϕ3 wahrmacht.
Deren gibt es aber laut Wertetabelle nur eine, nämlich (0, 1, 1) (vierte Zeile
von oben) und bei der gilt auch fϕ3 ,2 (0, 1, 1) = 1.
(iv) FALSCH: Es gilt fϕ2 ,3 (0, 0, 1) = 1, wohingegen fϕ1 ,3 (0, 0, 1) = 0.
NAME:
Aufgabe 2 (Aussagenlogik - 7 Punkte)
Die Boolesche Funktion f : {0, 1}3 → {0, 1} sei definiert durch
(
1, falls x0 + x1 = x2 mod 2
f (x0 , x1 , x2 ) =
0 sonst.
Geben Sie eine Boolesche Formel in disjunktiver Normalform an, die f darstellt.
Verwenden Sie hierzu das in der Vorlesung angegebene, allgemeine
Verfahren.
LÖSUNG. Um eine Formel ϕf in DNF zu erhalten, die eine Boolesche Funktion f (n) darstellt, stellt man zunächst die Wertetabelle von f auf. Die Eingabetupel (x1 , . . . , xn ), für die die Funktion f den Wert 1 annimmt, ergeben
dann gerade die Klauseln von ϕf , wenn man die Eingabe xk = 0 durch das
Literal ¬Ak und xk = 1 durch das Literal Ak ersetzt.
Im Falle von f erhalten wir die Wertetabelle
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 )
1
0
0
1
0
1
1
0
und hieraus die Formel
ϕf
≡ (¬A1 ∧ ¬A2 ∧ ¬A3 ) ∨ (¬A1 ∧ A2 ∧ A3 ) ∨ (A1 ∧ ¬A2 ∧ A3 )∨
(A1 ∧ A2 ∧ ¬A3 ).
NAME:
Aufgabe 3 (Prädikatenlogik 1. Stufe - 8 Punkte)
Sei L = L(≤, R, U ; f ) die prädikatenlogische Sprache mit den 2-stelligen Relationszeichen ≤ und R, dem einstelligen Relationszeichen U und dem einstelligen
Funktionszeichen f . Sei N = (N; ≤N , RN , U N ; f ) eine L-Struktur mit den
natürlichen Zahlen als Individuenbereich, wobei ≤N die übliche Ordnungsrelation auf den natürlichen Zahlen sei.
Geben Sie L-Sätze σ1 , σ2 , σ3 und σ4 an, sodass gilt:
N σ1 ⇔ f N ist die konstante Funktion mit Wert 0.
N σ2 ⇔ f N hat nur Werte in U N .
N σ3 ⇔ RN ist der Graph der Umkehrfunktion zu f N .
N σ4 ⇔ U N ist unendlich.
Hinweis: Zur Definition des Satzes σ3 empfiehlt es sich zunächst Hilfssätze
σinj , σsurj anzugeben, die die Injektivität bzw. Surjektivität von f beschreiben.
(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 - verwenden.)
LÖSUNG. Definiert man
σinj
≡
∀x ∀y f (x) = f (y) → x = y,
σsurj
≡
∀y ∃x f (x) = y,
so lassen sich die Sätze σi wie folgt definieren:
σ1
≡
∀x ∀y f (x) ≤ y,
σ2
≡
∀x U (f (x)),
σ3
≡ σinj ∧ σsurj ∧ ∀x ∀y (R(y, x) ↔ y = f (x)),
σ4
≡
∀x ∃y (x ≤ y ∧ U (y)).
NAME:
Aufgabe 4 (Prädikatenlogik 1. Stufe - 14 Punkte)
Sei L die Sprache L(f0 , f1 ; c), wobei f0 und f1 1-stellige Funktionszeichen und
c eine Konstante seien, und sei T = (L, Σ) die L-Theorie mit Axiomenmenge
Σ = {∀x f0 (f1 (x)) = x, ∀x f1 (x) 6= c}.
(a) (3 Punkte) Zeigen Sie, dass jedes Modell von T unendlich ist und geben Sie
ein Modell N von T an, dessen Individuenbereich N ist und in dem f1 durch
eine Funktion f1N interpretiert wird, für die n < f1N (n) für alle n ∈ N gilt.
(b) (1 Punkt) Zeigen Sie, dass T konsistent ist.
(c) (2 Punkte) Zeigen Sie, dass T nicht vollständig ist, indem Sie explizit einen
L-Satz σ angeben, für den weder T ` σ noch T ` ¬σ gilt (mit Begründung).
(d) (2 Punkte) Wie ist das Termmodell AT einer (allgemeinen) Theorie T über
der hier betrachteten Sprache L = L(f0 , f1 ; c) definiert?
(e) (2 Punkte) Zeigen Sie, dass es zu jedem konstanten Term t über L Zahlen
n, m ≥ 0 gibt, sodass
T ` t = f1n (f0m (c))
gilt und dass n eindeutig bestimmt ist.
(f) (2 Punkte) Ist AT ein Modell von T ? (Begründung!)
(g) (2 Punkte) Ist T eine Henkin-Theorie? (Begründung!)
Hinweis zu (c): Betrachten Sie den Satz f0 (c) = c.
Hinweis zu (g): Betrachten Sie den Satz ∃x f1 (x) = x.
LÖSUNG. (a) Nach Vorlesung ist eine Menge genau dann endlich, wenn sie
sich in keine echte Teilmenge von sich selbst injektiv abbilden lasst. Für ein
Modell A = (A; f0A , f1A ; cA ) ist aber wegen des ersten Axioms von T die Abbildung f1A injektiv, deren Bild nach dem zweiten Axiom in der echten Teilmenge
A \ {cA } enthalten ist.
Als Modell betrachten wir N = (N; f0N , f1N ; cN ) mit
• cN = 0
(
0;
falls n = 0,
• f0 (n) =
n − 1; sonst.
• f1 (n) = n + 1.
N erfüllt dabei die Axiome von T , da f0N (f1N (n)) = f0N (n + 1) = n + 1 − 1 = n
und f1N (n) = n + 1 > n ≥ 0 für alle n ∈ N gilt.
(b) Nach (a) ist T erfüllbar und damit nach dem Konsistenzlemma auch konsistent.
LÖSUNG von Aufgabe 4 (Fortsetzung).
(c) Wir behaupten, dass der L-Satz σ ≡ f0 (c) = c bezeugt, dass T nicht
vollständig ist.
Dazu reicht es nach dem Korrektheitssatz und dem Lemma über den Zusammenhang zwischen Erfüllbarkeit und Folgerungsbegriff zu zeigen, dass T ∪ {σ}
und T ∪ {¬σ} jeweils ein Modell besitzen. Das Modell aus Teil (a) liefert gerade ein Modell von T ∪ {σ}. Um nun ein Modell von T ∪ {¬σ} zu erhalten
betrachten wir die L-Struktur M = (N; f0M , f1M ; cM ), wobei
• cM = 1.
(
0;
falls n = 0 oder n = 1,
• f0M (n) =
n − 2; sonst.
• f1M (n) = n + 2.
Dann ist M ein Modell von T , da f0M (f1M (n)) = f0M (n + 2) = n + 2 − 2 = n
ist und offenbar f1M (n) =
6 1 für alle n ∈ N gilt. Wegen f0M (1) = 0 ist M aber
auch ein Modell von ¬σ.
(d) Um das Termmodell AT einer allgemeinen Theorie T über der Sprache
L(f0 , f1 ; c) zu bestimmen, müssen wir die Individuenmenge von AT angeben
und sagen, wie die Funktionssymbole f0 , f1 und das Konstantensymbol c von L
in AT zu interpretieren sind. Für die Individuenmenge AT von AT betrachtet
man die Menge der konstanten Terme KL von L und definiert für t1 , t2 ∈ KL
die Relation ∼ via
t1 ∼ t2 :⇔ T ` t1 = t2
Dann ist AT gerade als die Menge der Äquivalenzklassen von ∼ definiert, d.h.
AT = KL /∼ = {t̄ | t ∈ KL },
wobei t̄ = {t0 ∈ KL | t0 ∼ t}. Die Funktionszeichen f0 , f1 und das Konstatensymbol c werden dann wie folgt interpretiert:
• f0AT (t̄) = f0 (t).
• f1AT (t̄) = f1 (t).
• cAT = c.
Die Wohldefiniertheit dieser Operationen entnimmt man der Vorlesung.
(e) Die Menge KL besteht, da wir nur zwei einstellige Funktionszeichen in L
haben, gerade aus Termen der Form t ≡ fi0 (fi1 (. . . (fin−1 (c)))), wobei n ≥ 0
und für alle 0 ≤ k < n gilt, dass ik ∈ {0, 1}. Wir zeigen nun, dass es zu jedem
t ∈ KL ein n, m ≥ 0 mit eindeutigem n gibt, sodass T ` t = f1n (f0m (c)).
LÖSUNG von Aufgabe 4 (Fortsetzung).
Für die Existenz reicht es zu erwähnen, dass sich jedes t ∈ KL schreiben lässt
als
t ≡ f0n0 (f1n1 (. . . )) oder
t ≡ f1n0 (f0n1 (. . . )).
Dabei wird jeder 0 − 1 -“Übergang”, also an den Stellen in t, an denen f1 rechts
von f0 steht, durch das Axiom ∀x f0 (f1 (x)) = x in t gelöscht. Man kann so
sukzessive all diese Übergänge löschen und sieht auf die Weise, dass t zu einem
Term der Form f1n (f0m (c)) äquivalent ist. Für die Eindeutigkeit zeigen wir, dass
aus
T ` f1n1 (f0m1 ((c))) = f1n2 (f0m2 (c))
schon n1 = n2 folgt. Nach dem Korrektheitssatz reicht es
T |= f1n1 (f0m1 ((c))) = f1n2 (f0m2 (c)) ⇒ n1 = n2
zu zeigen. Im Modell N aus Teil (a) gilt f0N (cN ) = cN und damit induktiv für
alle m ≥ 0 auch (f0N )m (cN ) = cN . Es folgt
n1 = (f1N )n1 (0) = (f1N )n1 ((f0N )m1 (cN )) =
= (f1N )n2 ((f0N )m2 (cN )) = n2
Darüber hinaus zeigen wir noch (was nicht verlangt war), dass auch m1 = m2
gilt. Da f1 in jedem Modell von T als injektive Funktion interpretiert wird,
folgt aus n1 = n2 zunächst T |= f0m1 (c) = f0m2 (c). Wir betrachten nun die
L-Struktur Q = (Q; f0Q , f1Q ; cQ ) mit
• cQ = 0,


falls q < 0,
q;
• f0Q (q) = q + ( 21 )m+1 ; falls q ∈ [1 − ( 12 )m , 1 − ( 12 )m+1 [ (m ≥ 0),


q − 1,
falls q ≥ 1.
(
q;
falls q < 0,
• f1Q (q) =
q + 1; falls q ≥ 0.
Dies ist ein Modell von T , denn für q < 0 gilt f0Q (f1Q (q)) = f0Q (q) = q und für
q ≥ 0 gilt f0Q (f1Q (q)) = f0Q (q + 1) = q + 1 − 1 = q. Weiterhin ist 0 6= f1Q (q)
für alle q ∈ Q, sodass alle Axiome von T erfüllt sind. Schließlich zeigt man per
Induktion nach m ≥ 0, dass (f0Q )m (cQ ) = 1 − ( 21 )m gilt, was zusammen mit der
Annahme T |= f0m1 (c) = f0m2 (c) die behauptete Gleichheit m1 = m2 ergibt.
LÖSUNG von Aufgabe 4 (Fortsetzung).
(f) Ja, AT ist ein Modell von T , denn wegen der Axiome von T folgt für alle
t ∈ KL
T ` f0 (f1 (t)) = t und
T ` f1 (t) 6= c
und damit f0AT (f1AT (t̄)) = f0 (f1 (t)) = t. Gälte f1AT (t̄) = cAT für einen konstanten Term t, dann folgt nach Definition von ∼, dass T ` f1 (t) = c und
insbesondere T ` ∃x f1 (x) = c. Nach Teil (b) widerspricht dies aber der Konsistenz von T .
(g) Wir behaupten, dass T keine Henkin-Theorie ist und zeigen, dass der Existenzsatz ∃x f1 (x) = x dies bezeugt. Dazu müssen wir zu jedem konstanten
Term t ein Modell von T angeben, welches gleichzeitig
∃x f1 (x) = x ∧ f1 (t) 6= t
(∗)
erfüllt. Damit gilt zunächst T 6|= ∃x f1 (x) = x → f1 (t) = t und nach dem
Korrektheitssatz auch T 6` ∃x f1 (x) = x → f1 (t) = t. Wir zeigen sogar stärker,
dass es ein Modell gibt, welches (∗) für alle t erfüllt. Dazu betrachten wir die
L-Struktur P = (Q; f0P , f1P ; cP ) mit
• cP = 0,
(
q;
• f0P (q) =
q − 1;
(
q;
P
• f1 (q) =
q + 1;
falls q < 1,
falls q ≥ 1
falls q < 0,
falls q ≥ 0
Dies ist ein Modell von T , wie man ähnlich zu Teil (e) sieht. Weiter sind nach
(e) die Individuen in Q, die durch einen konstanten Term interpretiert werden,
gerade durch N gegeben. In N gilt aber
f1P (n) = n + 1 6= n.
Andererseits ist in P der Satz ∃x f1 (x) = x erfüllt, wie man zum Beispiel am
Wert q = −1 leicht erkennt.
NAME:
Aufgabe 5 (Prädikatenlogik 1. und 2. Stufe - 12 Punkte)
Sei L = L(∼) die Sprache mit einem 2-stelligen Relationsszeichen ∼. Sei A =
(A; ∼A ) eine L-Struktur, sodass ∼A eine Äquivalenzrelation ist. Für a ∈ A
bezeichne [a]∼ := {b ∈ A| b ∼A a} die Äquivalenzklasse von a und A/ ∼ die
Menge der Äquivalenzklassen.
(a) (3 Punkte) Geben Sie einen L-Satz σ an, sodass für jede L-Struktur A =
(A; ∼A ) gilt:
A |= σ ⇔ ∼A ist Äquivalenzrelation auf A
mit genau 2 Äquivalenzklassen.
(b) (3 Punkte) Zeigen Sie, dass die Klasse
K := {A| ∼A ist Äquivalenzrelation und A/∼ ist unendlich}
∆-elementar ist.
(c) (6 Punkte) Ist die Klasse
K0 := {A| ∼A ist Äquivalenzrelation und A/∼ ist endlich}
∆-elementar? (Beweis!)
LÖSUNG. (a) Wir setzen
σref l ≡ ∀x x ∼ x
σsym ≡ ∀x ∀y (x ∼ y → y ∼ x)
σtrans ≡ ∀x ∀y∀z ((x ∼ y ∧ y ∼ z) → x ∼ z)
ψ=2 ≡ ∃x ∃y (¬x ∼ y ∧ ∀z (z ∼ x ∨ z ∼ y))
Dann leistet der Satz
σ ≡ σref l ∧ σsym ∧ σtrans ∧ ψ=2
das Gewünschte.
(b) Wir definieren für n ≥ 1 die L-Sätze ψ≥n durch
^
ψ≥n ≡ ∃x1 . . . ∃xn (( ¬xi ∼ xj )).
i6=j
Ist dann T die L-Theorie mit Axiomenmenge
Σ = {σref l , σsym , σtrans } ∪ {ψ≥n | n ≥ 0},
so folgt K = Mod(T ).
LÖSUNG von Aufgabe 5 (Fortsetzung).
(c) Wir behaupten, K0 ist nicht ∆-elementar. Wir zeigen dies durch Widerspruch und nehmen an, es existiere eine Theorie T 0 , sodass K0 = Mod(T 0 ). Wir
definieren dann
T 00 := T 0 ∪ {ψ≥n | n ≥ 0}
Ein Modell von T 00 hätte einerseits nur endlich viele Äquivalenzklassen nach
Annahme, aber auch unendlich viele wegen der ψ≥n . Also ist T 00 offenbar nicht
erfüllbar. Ist jedoch T0 eine endliche Teiltheorie von T 00 und N ≥ 0 so groß,
dass
T0 ⊆ T 0 ∪ {ψ≥n | n ≤ N },
so ist die L(∼)-Struktur A = ({1, . . . , N }; =) ein Modell von T0 . Dies widerspricht jedoch dem Kompaktheitssatz und T 0 kann nicht existieren.
NAME:
Aufgabe 6 (Prädikatenlogik 1. Stufe - 6 Punkte)
(a) (2 Punkte) Was besagen das Deduktionstheorem und der Kompaktheitssatz
bzgl. des Folgerungsbegriffs?
(b) (4 Punkte) Der Vollständigkeitssatz für T = ∅ besagt, dass ein Satz σ
beweisbar ist, wenn er allgemeingültig ist.
Leiten Sie mit Hilfe des Deduktionstheorems, des Kompaktheitssatzes bzgl. des
Folgerungsbegriffs und obiger Aussage den Vollständigkeitssatz für allgemeines
T her.
LÖSUNG. (a) Die Aussagen der Sätze:
• Deduktionstheorem: Für alle Theorien T , Formeln ψ und Sätze σ gilt:
T ` σ → ψ ⇔ T ∪ {σ} ` ψ
• Kompaktheitssatz bzgl. Folgerung: Für alle Theorien T und Sätze σ gilt:
T |= σ ⇒ ∃ T0 ⊆ T endlich : T0 |= σ.
(b) Sei T eine Theorie und σ ein Satz über einer Sprache L, sodass T |= σ.
Nach dem Kompaktheitssatz bzgl. des Folgerungsbegriffs existiert eine endliche
Teiltheorie T0 von T , sodass T0 |= σ. Seien σ1 , . . . , σn die verschiedenen Sätze
von T0 . Dann ist aber der Satz
τ :≡ σ1 → (. . . (σn → σ) . . . )
allgemeingültig, denn: ist A eine beliebige L-Struktur, so ist entweder einer der
σi nicht erfüllt und A ein Modell von τ , oder alle σi gelten in A und A ist ein
Modell von T0 . Damit ist A wegen T0 |= σ auch in diesem Fall ein Modell von
τ . Nach Voraussetzung ist damit τ beweisbar, es gilt also
` σ1 → (. . . (σn → σ) . . . ).
Das Deduktionstheorem impliziert
{σ1 } ` σ2 → (. . . (σn → σ) . . . )
und induktiv folgt
{σ1 , . . . , σn } ` σ,
also T0 ` σ. Ein Beweis aus T0 ist aber auch ein Beweis aus T und wir erhalten
T `σ
wie gewünscht.
NAME:
Aufgabe 7 (Prädikatenlogik 1. Stufe - 6 Punkte)
(a) (3 Punkte) Geben Sie den Kompaktheitssatz bzgl. der Erfüllbarkeit, den
Korrektheitssatz und das Erfüllbarkeitslemma im Wortlaut an.
(b) (3 Punkte) Leiten Sie den Kompaktheitssatz bzgl. der Erfüllbarkeit aus
dem Korrektheitssatz und dem Erfüllbarkeitslemma her.
LÖSUNG. (a) Die Aussagen der Sätze:
• Korrektheitssatz: Für alle Theorien T und Sätze σ gilt:
T ` σ ⇒ T |= σ
• Erfüllbarkeitslemma: Jede konsistente Theorie T ist erfüllbar, d.h. besitzt
ein Modell.
• Kompaktheitssatz bzgl. Erfüllbarkeit: Ist T eine Theorie und sind alle
endlichen Teiltheorien T0 ⊆ T erfüllbar, so ist auch T erfüllbar.
(b) Sei T eine Theorie, sodass alle endlichen Teiltheorien T0 von T ein Modell
besitzen. Besäße T kein Modell, so wäre T nach dem Erfüllbarkeitslemma (genauer: der Kontraposition des Erfüllbarkeitslemmas) inkonsistent und es gäbe
einen Satz σ, sodass
T ` σ ∧ ¬σ.
Nach der Endlichkeit des Beweisbegriffs existiert eine endliche Teiltheorie T0
von T , sodass T0 ` σ ∧ ¬σ. Ein nach Annahme existierendes Modell A von T0
wäre aber gleichzeitig ein Modell von σ und ¬σ. Das kann für Sätze aber nicht
sein, da sie keine freien Variablen enthalten. Also besitzt T doch ein Modell.
NAME:
AUFGABE:
NAME:
AUFGABE:
Herunterladen