3. Klausur Einführung in die Theoretische Informatik Seite 1 von 14 1. Welche der folgenden Aussagen zur Verifikation nach Hoare ist richtig? A. Eine Formel, die sowohl vor der Ausführung des Programmes, wie auch nachher falsch ist, nennt man Invariante. B. Mit Hilfe der Hoare Regeln kann die totale Korrektheit eines Programmes nachgewiesen werden. C. Eine Zusicherung ist eine aussagenlogische Formel. D. Das Hoare-Triple {Q} P {R} drückt aus, dass die Zusicherung R gilt, wenn das Programm P nicht hält und Q sonst. E. Ein Hoare-Triple besteht aus drei Komponenten: einem Programm und zwei Zusicherungen.
3. Klausur Einführung in die Theoretische Informatik Seite 2 von 14 2. Welche der folgenden Aussagen zu Registermaschinen ist richtig? A. Sei L eine Sprache, die von einer RM berechnet wird. Dann kann L nur dann von einer TM berechnet werden, wenn L regulär ist. B. Für jede Sprache L, die von einer RM akzeptiert wird, existiert ein endlicher Automat, der L akzeptiert. C. Es gibt Funktionen f: N k N, die auf einer TM berechenbar sind, die nicht auf einer RM berechenbar sind. D. Jede partielle Funktion f: N k N, die berechenbar auf einer RM ist, kann auch von einer kontextfreien Grammatik berechnet werden. E. Jede totale Funktion f: N k N, die in einer beliebigen Programmiersprache implementiert ist, kann auch auf einer RM berechnet werden.
3. Klausur Einführung in die Theoretische Informatik Seite 3 von 14 3. Betrachten Sie die folgende Grammatik G = ({S}, {(, )}, R, S), wobei die Regeln R wie folgt gegeben: S ǫ SS (S) Welchen Typ hat diese Grammatik? A. Die Grammatik ist nicht rekursiv aufzählbar. B. Die Grammatik ist rekursiv aufzählbar, aber nicht kontextsensitiv. C. Die Grammatik ist kontextsensitiv, aber nicht kontextfrei. D. Die Grammatik ist rechtslinear. E. Die Grammatik ist kontextfrei, aber nicht rechtslinear.
3. Klausur Einführung in die Theoretische Informatik Seite 4 von 14 4. Betrachten Sie die formalen Sprachen L = {ǫ, ca, aba}, M = {a, b, c} und N = {a, b, c}. Was ist (LM) N? A. (LM) N = {a, b, c} B. (LM) N = C. (LM) N = {ǫ, a, b, c, caa,, cac, abac} D. (LM) N = {caa, cab, cac, abaa, abab, abac} E. (LM) N = {ǫ, a, b, c, caa, cab, cac, abaa, abab, abac} F. (LM) N = {a, b, c, caa, cab, cac, abaa, abab, abac}
3. Klausur Einführung in die Theoretische Informatik Seite 5 von 14 5. Welche der folgenden Aussagen zu Normalformen einer aussagenlogischen Formel A ist falsch? A. Für Formel A existiert eine KNF K, sodass A K gilt. B. Für A existiert eine DNF D, sodass A D gilt. C. Sei f die Wahrheitsfunktion von A. Zur Berechnung der DNF von f konzentriert man sich auf die Argumente p 1,..., p n von f, sodass f(p 1,..., p n ) = T. D. Sei f die Wahrheitsfunktion von A. Zur Berechnung der KNF von f konzentriert man sich auf die Argumente p 1,..., p n von f, sodass f(p 1,..., p n ) = F. E. Die Berechenbarkeit der KNF von A ist unentscheidbar.
3. Klausur Einführung in die Theoretische Informatik Seite 6 von 14 6. Welche der folgenden Aussagen zur Booleschen Algebra ist richtig? A. Sei B eine Boolesche Algebra und sei B die Trägermenge von B. Für alle a, b B gilt: a + b = a + b. B. Jeder Boolesche Ausdruck kann in eine disjunktive Normalform umgewandelt werden, nicht jedoch in eine konjunktive Normalform. C. Die binäre Algebra ist eine Algebra, aber keine Boolesche Algebra. D. Die Mengenalgebra ist eine Boolesche Algebra, aber nicht jede Boolesche Algebra ist isomorph zu einer Mengenalgebra. E. Jede Boolesche Algebra ist isomorph zu einer Mengenalgebra.
7. Sei B eine Boolesche Algebra mit der Trägermenge B. Zeigen Sie, dass für alle a, b B die Eindeutigkeit des Komplements gilt: Wenn a + b = 1 und a b = 0, dann b = a Ergänzen Sie dazu den folgenden Beweis: [7 Punkte] b = = b (a + a) = = =, da a b = 0 = = (a + b) a =, da = a Gilt die gezeigte Aussage auch für die binäre Algebra? [1 Punkt]
8. Sei E die folgende Menge von Gleichungen über der Signatur F = {+, s, 0}, wobei die Stelligkeit von + zwei, die Stelligkeit von s eins und die Stelligkeit von 0 null ist. 0+x = x s(x)+y = s(x+y) Zeigen Sie mit Hilfe der Regeln der Gleichungslogik, dass E s(s(0) + s(0)) = s(s(s(0))) gilt. [8 Punkte]
9. Schreiben Sie daswhile-programm P für eine Registermaschine R quad = ((x i ) 1 i 4, P), das Quadrad von n berechnet. Die Zahl n steht am Beginn in Register x 1. Das Programm soll das Ergebnis in Register x 2 schreiben. Verwenden Sie dazu das Hilfsprogramm P + (x i, x j, x k ). Wird P + mit den Werten (a, b, c) aufgerufen liefert es (a + b, b, 0) als Ergebnis. [8 Punkte]
10. Betrachten Sie den folgenden DEA M = ({1, 2, 3}, {a, b}, δ, 1, {2}), wobei δ wie folgt definiert ist: a b 1 1 2 2 3 2 3 3 3 a) Geben Sie die Sprache des Automaten M, L(M) in Mengennotation an. [2 Punkte] b) Geben Sie eine rechtslineare Grammatik G 1 an, sodass L(M) = L(G 1 ). [2 Punkte] Betrachten Sie die folgende Grammatik G 2 = {{S, U}, {0, 1}, R, S}, wobei die Regeln R wie folgt definiert sind: S 1U U 0U 0U 0 c) Leiten Sie das Wort 10100 in G 2 ab. [2 Punkte] d) Ist die Grammatik G 2 rechtslinear? Begründen Sie Ihre Antwort mit der Definition von rechtslinearen Grammatiken. [2 Punkte]
Version 1: E E E F E E ANSWERKEY FOR version3