Theoretische Informatik und Logik — VU 4.0 VO-Prüfung Kennzahl Matrikelnummer WS 2011/2012 29. März 2012 Familienname Vorname Lösung Gruppe A 1.) Sei L = {a, 1}∗ − ({a, aa, aaa}{1})∗ . a) Geben Sie einen deterministischen endlichen Automaten an, der L akzeptiert. (Graphische Darstellung genügt.) (5 Punkte) a, 1 Lösung: 1 q0 } 6 ? - j m a q4 a - m j a - m j a - m j q q q3 1 2 1 1 1 b) Geben Sie eine reguläre Grammatik G an (Produktionen der Gestalt X → xY oder X → ε mit X, Y ∈ N, x ∈ T ) , welche L (also das Komplement von L, wobei Σ = {a, 1}) erzeugt. (5 Punkte) Lösung: EA: z m S 6 a - m A 1 1 a - m C 1 G = ... mit P = {S → aA | ε, a - m B A → aB | 1S, B → aC | 1S, C → 1S} 2.) Sei L = {a2n (bc)n | n ≥ 0}. a) Geben Sie eine kontextfreie Grammatik G an, welche L erzeugt. (2 Punkte) Lösung: G = ... wobei P = {S → aaSbc | ε} b) Existiert ein Homomorphismus h so, dass h(L) = {a2n b3n | n ≥ 0}? Falls ja, geben Sie einen solchen an, falls nein, begründen Sie, warum nicht. (4 Punkte) Lösung: h : {a, b, c}∗ → {a, b}∗ mit h(a) = a, h(b) = b3 , h(c) = ε oder auch h(a) = a, h(b) = b2 , h(c) = b c) Ist L regulär, kontextfrei und/oder monoton? Begründen Sie Ihre Antwort. (4 Punkte) Lösung: nicht regulär, kontextfrei, monoton 3.) Geben Sie an, ob die folgenden Aussagen richtig oder falsch sind, und begründen Sie Ihre Antworten. (Zwei Punkte für richtige Antworten mit richtiger Begründung, einen Punkt für richtige Antworten mit leicht mangelhafter Begründung, keinen Punkt für falsche Antworten oder fehlerhafte Begründungen.) a) Es gibt endliche Sprachen, die nicht rekursiv aufzählbar sind. Begründung: 2 richtig × 2 falsch Lösung: Endliche Sprachen sind regulär und dementsprechend auch rekursiv aufzählbar. b) Ein deterministischer endlicher Automat (DEA) kann mehr als einen Endzustand haben. × Begründung: 2 richtig 2 falsch Lösung: Siehe Bsp. 1 a). c) Das Komplement von L = {0, 1}∗ − {0, 1}+ ist {ε}. Begründung: 2 richtig × 2 falsch Lösung: L = {0, 1}+ d) Jede Sprache L ⊆ {a}∗ ist regulär. Begründung: 2n Lösung: z.B. {a 2 richtig × 2 falsch | n ≥ 0} e) Ist L rekursiv aufzählbar, so ist auch das Komplement von L rekursiv aufzählbar. Begründung: 2 richtig × 2 falsch Lösung: Die Familie der rekursiv aufzählbaren Sprachen ist nicht gegenüber Komplement abgeschlossen. (10 Punkte) 4.) Die Politker A, B und C machen folgende Aussagen über Korruption und Unbestechlichkeit: (a) A: “Ich bin unbestechlich, aber Ihr beide seid korrupt.” (b) B: “Ich bin nur dann korrupt, wenn ihr beide auch korrupt seid.” (c) C: “Wir sind alle drei unbestechlich.” Lösen Sie die folgenden Aufgaben mithilfe von Aussagenlogik. (1) Formalisieren Sie (a)-(c) in Aussagenlogik, und geben Sie dabei die intuitive der verwendeten aussagenlogischen Variablen an. (2) Beweisen Sie: Es kann nicht sein, dass A und B die Wahrheit sagen, und C lügt. (3) Angenommen, A sagt die Wahrheit und B als auch C lügen. Finden Sie dann heraus, welche der Politiker unbestechlich und welche korrupt sind. Hinweis: Sie können dabei annehmen, dass korrupt die Negation von unbestechlich ist, und umgekehrt. Lösung: (1) Wir formalisieren (a)-(c) wie folgt (a) AT ≡ [ AU ∧ ¬BU ∧ ¬CU ]. (b) BT ≡ [ ¬BU ⊃ (¬AU ∧ ¬CU ) ]. (c) CT ≡ [ AU ∧ BU ∧ CU ]. Dabei soll “XU ” bedeuten, dass X unbestechlich ist, und “XT ” dass X die Wahrheit sagt, wobei XF bedeutet, dass X lügt (mit jeweils X ∈ {A, B, C}). Ferner gilt XF ≡ ¬XT und XT ≡ ¬XF . (2) Angenommen, A und B sagen die Wahrheit, und C lügt. Dann folgt daraus mittels (a): (i) AT ≡ t ≡ [ AU ∧ ¬BU ∧ ¬CU ], (ii) BT ≡ t ≡ [ ¬BU ⊃ (¬AU ∧ ¬CU ) ] ≡ [BU ∨ (¬AU ∧ ¬CU )] und CT ≡ f ≡ [ AU ∧ BU ∧ CU ], also (iii) t ≡ ¬[ AU ∧ BU ∧ CU ]. Aus (i) folgt BU ≡ f , mit (ii) erhalten wir daraus (¬AU ∧ ¬CU ) ≡ t, also insbes. ¬AU ≡ t und daher AU ≡ f . Jedoch folgt aus (i) auch AU ≡ t. Folglich haben wir einen Widerspruch und die ursprüngliche Annahme kann nicht stimmen. (3) Angenommen, A sagt die Wahrheit und B als auch C lügen. Dann folgt aus (a): AT ≡ t ≡ [ AU ∧ ¬BU ∧ ¬CU ], also (*) AU ≡ t, BU ≡ f und CU ≡ f . Aus (b) und der Annahme erhalten wir BT ≡ f ≡ [ ¬BU ⊃ (¬AU ∧ ¬CU ) ], also ¬BU ∧ (AU ∨ CU ) ≡ t, was mit (*) verträglich ist. (c) unter der Annahme bedeutet CT ≡ f ≡ [ AU ∧ BU ∧ CU ], also t = ¬AU ∨ ¬BU ∨ ¬CU , was ebenfalls mit (*) verträglich ist. Folglich ist unter der Annahme, dass A die Wahrheit sagt und B als auch C lügen, A unbestechlich und B und C sind beide korrupt. Außerdem ist dies die einzige Lösung unter obiger Annahme. (10 Punkte) 5.) Beweisen Sie die logische Konsequenzbeziehung P (a, b, c), (∀x)(∀y)(∀z) ( P (x, y, z) ⊃ P (z, x, y) ) |= (∃u) P (b, u, a) mittels Resolution. Begründen Sie dabei Ihren Ansatz sowie die Einzelschritte. Lösung: Die logische Konsequenzbeziehung gilt mit dem Deduktionstheorem gdw. die Formel F = P (a, b, c), ∧ (∀x)(∀y)(∀z) ( P (x, y, z) ⊃ P (z, x, y) ) ⊃ (∃u) P (b, u, a) gültig ist. Transformation von ¬F in Klauselform liefert die Klauselmenge { {P (a, b, c)}, {¬P (x, y, z), ∨P (z, x, y)}, {¬P (b, u, a)} } . Mittels Resolution erhalten wir daraus die leere Klausel: {P (a, b, c)} {¬P (x, y, z), ∨P (z, x, y)} σ1 {P (c, a, b)} {¬P (x, y, z), ∨P (z, x, y)} σ2 {P (b, c, a)} {} {¬P (b, u, a)} mit σ1 = {x ← a, y ← b, z ← c}, σ2 = {x ← c, y ← a, z ← b} und σ3 = {u ← c}. Also ist ¬F unerfüllbar, und F daher gültig. σ3 (10 Punkte) 6.) Geben Sie an, ob die folgenden Aussagen richtig oder falsch sind, und begründen Sie Ihre Antworten. (Zwei Punkte für richtige Antworten mit richtiger Begründung, einen Punkt für richtige Antworten mit leicht mangelhafter Begründung, keinen Punkt für falsche Antworten oder fehlerhafte Begründungen.) a) Mit Resolution lässt sich die Erfüllbarkeit prädikatenlogischer Formeln entscheiden. Begründung: 2 richtig × 2 falsch Lösung: Die Erfüllbarkeit prädikatenlogischer Formeln ist unentscheidbar, also insbesondere auch mit Resolution nicht entscheidbar. b) Mit dem Tableau-Verfahren kann man die Gültigkeit aussagenlogischer Formeln entscheiden. × Begründung: 2 richtig 2 falsch Lösung: Das Tableau-Verfahren für die Gültigkeit aussagenlogischer Formeln ist korrekt und vollständig und terminiert immer. Folglich ist es ein Entscheidungsverfahren für die Gültigkeit aussagenlogischer Formeln. c) Die aussagenlogische Formel F = A ∧ (¬A ∨ B) ∧ (¬B ∨ C) ∨ (¬C ∨ D) ∧ (¬D ∨ ¬A) ist erfüllbar. Begründung: 2 richtig × 2 falsch Lösung: Beweis durch Widerspruch (Kettenschluss): Aus I(F ) = t folgt I(A) = t, daher I(B) = t, also auch I(C) = t; daher auch I(D) = t und schließlich I(¬A) = t, also I(A) = f , womit wir einen Widerspruch haben. d) Es gilt die logische Konsequenzbeziehung A ⊃ B |= ¬A ∧ B. Begründung: 2 richtig × 2 falsch Lösung: Die Interpretation I mit I(A) = I(B) = f ist ein Gegenbeispiel. e) Die prädikatenlogische Formel (∀x)(∀y)P (x, y) ⊃ (∀x)P (x, a) ist eine Tautologie. × Begründung: 2 richtig 2 falsch Lösung: Beweis z.B. durch einfachen Resolutions- oder Tableaubeweis oder auch semantisch. (10 Punkte)