Universität Heidelberg 25. Januar 2012 Institut für Informatik Prof. Dr. Klaus Ambos-Spies Dipl.-Math. Thorsten Kräling Klausur zur Vorlesung Mathematische Logik LÖSUNGEN Aufgabe 1 (Aussagenlogik - 8 Punkte) Gegeben seien die folgenden aussagenlogischen Formeln. ϕ A 0 A 1 ψ (A 0 (A 2 A 1 )) ( A 0 (A 2 A 1 )) χ A 2 A 0 A 1 Zeigen Sie, dass χ aus ϕ und ψ folgt, das heißt, dass ϕ, ψ} χ gilt. LÖSUNG. Wir stellen die Wahrheitstafeln für ϕ, ψ und χ auf. A 0 A 1 A 2 A 0 A 1 ϕ A 0 (A 2 A 1 ) A 0 (A 2 A 1 ) ψ A 2 A 0 A 1 χ 0 0 0 0 0 0 0 1 0 0 1 0 0 1 1 0 0 1 0 1 0 1 1 1 0 1 1 1 0 0 0 0 1 0 0 1 1 0 1 1 1 0 1 1 0 0 0 0 1 1 0 1 1 0 1 1 1 1 1 1 1 0 1 1 Man sieht, dass unter jeder Belegung, unter der ϕ und ψ wahr sind, auch χ wahr ist, womit die Behauptung bewiesen ist.
Aufgabe 2 (Aussagenlogik - 8 Punkte) Die 3-stellige Schwellenfunktion s 2 : 0, 1} 3 0, 1} mit Schwelle 2 ist definiert durch 1, falls x 0 + x 1 + x 2 2 s 2 (x 0, x 1, x 2 ) = 0 sonst. Geben Sie eine Boolesche Formel in disjunktiver Normalform an, die s 2 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 (i 1,..., i n ), für die die Funktion f den Wert 1 annimmt, ergeben dann gerade die Klauseln von ϕ f, wenn man die Eingabe i k = 0 durch das Literal A k und i k = 1 durch das Literal A k ersetzt. Im Falle von s 2 erhalten wir die Wertetabelle und hieraus die Formel x 1 x 2 x 3 s 2 (x 1, x 2, x 3 ) 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1 ϕ s2 ( A 1 A 2 A 3 ) (A 1 A 2 A 3 ) (A 1 A 2 A 3 ) (A 1 A 2 A 3 ).
Aufgabe 3 (Prädikatenlogik - 8 Punkte) Sei L = L(<; +, ) die prädikatenlogische Sprache mit dem 2-stelligen Relationszeichen < und den 2-stelligen Funktionszeichen und + und seien N = (N; <;, +), Z = (Z; <;, +), Q = (Q; <;, +) bzw. R = (R; <;, +) die L-Strukturen der natürlichen, ganzen, rationalen bzw. reellen Zahlen jeweils mit der üblichen Ordnungsrelation, Multiplikation und Addition. (a) Geben Sie eine L-Formel ϕ(x) an, sodass für alle reellen Zahlen a gilt: R ϕ [a] a = 0 (b) Geben Sie L-Sätze σ 1, σ 2 und σ 3 an, so dass gilt: N σ 1, aber Z σ 1 Z σ 2, aber Q σ 2 Q σ 3, aber R σ 3 (Sie können die in der Vorlesung eingeführten Konventionen zur Erhöhung der Lesbarkeit von Formeln - wie Infixschreibweise bei Funktionszeichen, Klammerregeln, zusätzliche Junktoren und Allquantor - verwenden.) LÖSUNG. (a) Die Formel ϕ(x) y(x + y = y) erfüllt die Bedingung. (b) Folgende Sätze leisten das Gewünschte: σ 1 x y(y < x) (es gibt ein kleinstes Element in N, aber nicht in Z), σ 2 x y( ϕ(y) z(y z = x)) (für jedes x und jedes y 0 existiert x y in Q, aber nicht in Z), oder auch alternativ σ 2 x y(x < y z(x < z z < y)) (die Ordnung auf Q ist dicht, die auf Z nicht), und σ 3 x( y(ϕ(y) y < x) z(z z = x)) (jede Zahl x > 0 besitzt in R eine Wurzel, in Q nicht unbedingt).
Aufgabe 4 (Prädikatenlogik - 8 Punkte) Geben Sie den Wortlaut des Kompaktheitssatzes (in der Version für den Folgerungsbegriff) an und leiten Sie diesen aus dem Vollständigkeitssatz und dem Korrektheitssatz her (geben Sie dazu auch diese beiden Sätze an). LÖSUNG. Der Kompaktheitssatz lautet: Ist T eine L-Theorie und σ ein L-Satz, der aus T folgt (d.h. T σ), dann gibt es eine endliche Teiltheorie T 0 T, so dass σ aus T 0 folgt, d.h. T 0 σ. Der Vollständigkeitssatz lautet: Ist T eine L-Theorie und σ ein L-Satz, so gilt T σ T σ. Der Korrektheitssatz lautet: Ist T eine L-Theorie und σ ein L-Satz, so gilt T σ T σ. Der Kompaktheitssatz lässt sich nun wie folgt beweisen: T σ T σ [nach Vollständigkeitssatz] T 0 σ für ein endliches T 0 T [nach Endlichkeitssatz für die Beweisbarkeit] T 0 σ [nach Korrektheitssatz].
Aufgabe 5 (Prädikatenlogik - 8 Punkte) Sei L = L(+; 0) die Sprache der Gruppentheorie. Erinnerung: Eine L-Struktur ist eine Gruppe, falls sie ein Modell der Gruppenaxiome ist. ϕ 1 x y z((x + y) + z = x + (y + z)) [Assoziativität] ϕ 2 x(0 + x = x) [0 linksneutral] ϕ 3 x y(y + x = 0) [Existenz von Linksinversen] Eine L-Struktur G = (G; + G ; 0 G ) heißt Torsionsgruppe, falls sie eine Gruppe ist und für jedes g G eine Zahl n 1 existiert, so dass g + G g + G... + G g = 0 G }} gilt. Beispiele für Torsionsgruppen sind die zyklischen Gruppen (Z n ; + Zn ; 0) für n 1, wobei Z n = 0, 1,..., n 1} ist und a + Zn b = a + b modulo n. Zeigen Sie, dass die Klasse der Torsionsgruppen nicht -elementar ist. LÖSUNG. Wir führen den Beweis durch Widerspruch. Angenommen, die Klasse T G = G : G ist Torsionsgruppe} wäre -elementar, das heißt es gäbe eine Menge T von L-Sätzen, für die gilt: T G = G : G ist L Struktur und G T }. Erweitere die Sprache L dann um ein neues Konstantensymbol c zur Sprache L und betrachte die L -Theorie T = T c + c +... + c 0 : n 0}. }} Wir zeigen, dass jede endliche Teiltheorie T 0 T erfüllbar ist, so dass nach dem Kompaktheitssatz also auch T erfüllbar ist. Sei dafür T 0 eine solche endliche Teiltheorie. Dann gibt es ein m 1, so dass T 0 T c + c +... + c 0 : 1 n m} }} gilt. Ein Modell dieser Theorie ist aber (Z n+1 ; + Zn+1 ; 0, 1), d.h. die L -Struktur, die man erhält, wenn man in der zyklischen Gruppe mit Individuenbereich Z n+1 das Konstantensymbol c durch 1 interpretiert. Damit ist T 0 erfüllbar. Da T erfüllbar ist, muss es ein Modell G von T geben. Wegen G T und T T gilt G T, d.h. als L-Struktur betrachtet, ist G eine Torsionsgruppe. Andererseits gilt c G + G c G + G... + G c } G 0 } G für alle n 1, so dass G keine Torsionsgruppe sein kann ein Widerspruch!
(Eine Alternativlösung, die sogar ohne neue Konstantensymbole auskommt, betrachtet statt T die Theorie T = T x(x 0 x + x +... + x 0) : n 1}. }} Diese ist offenbar nicht erfüllbar, aber jede endliche Teiltheorie T 0 T x(x 0 x + x +... + x 0) : 1 n n }} 0 } besitzt das Modell (Z p ; + Zp ; 0) für eine Primzahl p > n 0, was wie zuvor zum Widerspruch führt.)
Aufgabe 6 (Prädikatenlogik - 14 Punkte) Sei L = L(f; c 0, c 1 ) die Sprache, die das 1-stellige Funktionszeichen f und die zwei Konstantensymbole c 0 und c 1 enthält. Sei ferner die L-Theorie T gegeben durch T = c 0 c 1, x(f(x) x)}. (a) (2 Punkte) Geben Sie ein Modell A von T mit Individuenbereich 0, 1} an. (b) (1 Punkt) Geben Sie ein Modell B von T mit Individuenbereich N an, bei dem f B (n) = n + 2 für alle n N und c B 0, c B 1 1 gilt. (c) (1 Punkt) Zeigen Sie, dass T konsistent ist. (d) (2 Punkte) Zeigen Sie, dass T nicht vollständig ist, indem Sie explizit einen Satz σ angeben, für den weder T σ noch T σ gilt (mit Begründung). (e) (3 Punkte) Zeigen Sie, dass für alle L-Terme t, t gilt: T t = t t t. (f) (3 Punkte) Zeigen Sie, dass T keine Henkin-Theorie ist. (Tipp: Zeigen Sie, dass für den Existenzsatz σ x(x c 0 x c 1 ) die Henkin-Eigenschaft nicht erfüllt ist.) (g) (2 Punkte) Zeigen Sie, dass für das Termmodell A T von T gilt: A T T. LÖSUNG. (a) Eins der zwei möglichen Modelle ist A = (0, 1}; f A ; 0, 1) mit f A (0) = 1, f A (1) = 0. (b) Ein Modell, das die gewünschten Eigenschaften besitzt, ist B = (N; f B ; 0, 1) mit f B (n) = n + 2 für alle n N. (c) Da T ein Modell besitzt (siehe (a) und (b)), ist T erfüllbar. Da jede erfüllbare Theorie konsistent ist (wegen des Korrektheitssatzes), ist T konsistent. (d) Da T nach (a) und (b) ein zweielementiges sowie ein unendliches Modell besitzt, genügt es, den Satz σ x y z(x = y x = z y = z) zu betrachten, der aussagt, dass es höchstens zwei Elemente gibt. Es kann weder T σ gelten, da sonst B σ gelten müsste, noch T σ, da sonst A σ gelten müsste. Nach dem Korrektheitssatz kann damit auch weder T σ noch T σ gelten. (e) Gilt t t, so gilt offensichtlich T t = t und nach dem Vollständigkeitssatz dann auch T t = t (alternativ kann man rein syntaktisch argumentieren und sich auf das Gleichheitsaxiom G1 zusammen mit der Substitutionsregel berufen). Umgekehrt gelte T t = t. Dann gilt auch T t = t nach dem Korrektheitssatz und folglich B t = t, d.h. t B = t B. Alle L-Terme besitzen die Gestalt f n (c 0 ) oder f n (c 1 ) für ein n 0. Wäre t f n (c 0 ) und t f n (c 1 ), so gälte t B = 2n 2n + 1 = t B, da links eine gerade, rechts eine ungerade Zahl steht (entsprechend im umgekehrten Fall).
Gilt t f n (c 0 ) und t f n (c 0 ), so gilt t B = 2n = 2n = t B genau dann, wenn n = n, also t = t gilt. Analog argumentiert man im Fall t f n (c 1 ) und t f n (c 1 ). (f) Wäre T eine Henkin-Theorie, so müsste zu jedem L-Existenzssatz σ = xϕ ein konstanter L-Term t existieren mit T xϕ ϕ[t/x], und damit auch T xϕ ϕ[t/x]. Wir zeigen, dass dies für ϕ x c 0 x c 1 nicht der Fall ist. Betrachte dafür die L-Struktur A = (0, 1, 2}; f A ; 0, 1) mit f A (0) = 1, f A (1) = 0 und f A (2) = 0. Es gilt offensichtlich A T und A x(x c 0 x c 1 ). Gälte nun T xϕ ϕ[t/x], so müsste es einen konstanten Term t geben mit A t c 0 t c 1, d.h. t A 0, 1. Es gilt aber für jeden Term t f n (c 0 ), dass t A = 0 falls n gerade 1 sonst und für jeden konstanten Term t f n (c 1 ), dass 1 falls n gerade t A =. 1 sonst (g) Wir zeigen, dass das Modell B von T aus Aufgabenteil (b) isomorph zum Termmodell ist, wobei der Isomorphismus h : N t : t konstanter L Term} gegeben ist durch f h(n) = m (c 0 ) falls n = 2m f m (c 1 ) falls n = 2m + 1. h surjektiv: Ist t ein konstanter L-Term, so ist t von der Form f m (c 0 ) oder f m (c 1 ). Dann ist h(2m) = t bzw. h(2m + 1) = t, also liegt t im Wertebereich von h. Somit ist h surjektiv. h injektiv: Sind n n, so gilt nach Definition h(n) = t und h(n ) = t mit t t. Nach (e) folgt T t = t, also h(n) = t t = h(n ). h(c B ) = c A T für jede Konstante c: Es gilt h(c B 0 ) = h(0) = c 0 = c A T 0 und h(c B 1 ) = h(1) = c 1 = c A T 1. h(f B (n)) = f A T (h(n)) für jedes Funktionssymbol f und alle n N: Es gilt h(f B f (n)) = h(n+2) = m+1 (c 0 ) = f A T (f m (c 0 )) = f A T (h(n)) falls n = 2m f m (c 1 ) = f A T (f m (c 1 )) = f A T (h(n)) falls n = 2m + 1.