Einführung in die Theoretische Informatik I/ Grundlagen der Theoretischen Informatik. SS 2007 Jun.-Prof. Dr. Bernhard Beckert Ulrich Koch

Ähnliche Dokumente
2. Teilklausur zur Vorlesung Grundlagen der Theoretischen Informatik

Theoretische Informatik: Berechenbarkeit und Formale Sprachen

Grundlagen der Theoretischen Informatik Musterlösungen zu ausgewählten Übungsaufgaben

Musterlösung zur Hauptklausur Theoretische Grundlagen der Informatik Wintersemester 2013/14

Berechenbarkeit und Komplexität

Einführung in Berechenbarkeit, Komplexität und Formale Sprachen

Universität Karlsruhe Institut für Theoretische Informatik. Klausur: Informatik III

a n b n c n ist kontextsensitiv kontextfreie Sprachen (Typ 2) Abschnitt 3.3 kontextfreie Sprachen: Abschlusseigenschaften Chomsky NF und binäre Bäume

Einführung in die Theoretische Informatik

Turing-Maschinen. Definition 1. Eine deterministische Turing-Maschine (kurz DTM) ist ein 6- Dem endlichen Alphabet Σ von Eingabesymbolen.

11.1 Kontextsensitive und allgemeine Grammatiken

Umformung NTM DTM. Charakterisierung rek. aufz. Spr. Chomsky-3-Grammatiken (T5.3) Chomsky-0-Grammatik Rek. Aufz.

Universität Karlsruhe Institut für Theoretische Informatik. Klausur: Informatik III

Rekursiv aufzählbare Sprachen

Ausgewählte unentscheidbare Sprachen

Zusammenfassung Grundzüge der Informatik 4

(Prüfungs-)Aufgaben zu formale Sprachen

Einführung in die Theoretische Informatik

Formale Sprachen und Automaten

11. Woche: Turingmaschinen und Komplexität Rekursive Aufzählbarkeit, Entscheidbarkeit Laufzeit, Klassen DTIME und P

8. Turingmaschinen und kontextsensitive Sprachen

Musterlösung der Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2012/13

Berechenbarkeit und Komplexität: Rekursive Aufzählbarkeit und die Technik der Reduktion

Theoretische Grundlagen der Informatik

Formale Grundlagen der Informatik 1 Kapitel 12 Zusammenfassung

Ein Satz der deutschen Sprache besitzt ein Subjekt, ein Prädikat und ein Objekt (SPO).

Wir haben eine Beziehung zwischen entscheidbar und rekursiv aufzählbar hergeleitet.

Kapitel: Die Chomsky Hierarchie. Die Chomsky Hierarchie 1 / 14

Einführung in Berechenbarkeit, Komplexität und formale Sprachen

Grundlagen der Theoretischen Informatik

Formale Sprachen. Grammatiken und die Chomsky-Hierarchie. Rudolf FREUND, Marian KOGLER

Theorie der Informatik

Theoretische Informatik Testvorbereitung Moritz Resl

Probeklausur zur Vorlesung Berechenbarkeit und Komplexität

Theoretische Informatik Mitschrift

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

Grundlagen der Theoretischen Informatik

Deterministischer Kellerautomat (DPDA)

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Ulrich Furbach. Sommersemester 2014

Grundlagen der Theoretischen Informatik

Stefan Schmid TU Berlin & T-Labs, Berlin, Germany. Reduktionen in der Berechenbarkeitstheorie

4.9 Deterministische Kellerautomaten Wir haben bereits definiert: Ein PDA heißt deterministisch (DPDA), falls

Klausuraufgaben. 1. Wir betrachten die folgende Sprache über dem Alphabet {a, b}

Komplexität und Komplexitätsklassen

Formale Sprachen. Script, Kapitel 4. Grammatiken

Formale Systeme. Büchi-Automaten. Prof. Dr. Bernhard Beckert WS 2009/2010 KIT INSTITUT FÜR THEORETISCHE INFORMATIK

Abschluss unter Operationen

Grundlagen der Theoretischen Informatik

Theoretische Informatik SS 03 Übung 3

Übungsaufgaben zu Formalen Sprachen und Automaten

Theoretische Informatik 1

Berechenbarkeits- und Komplexitätstheorie

Lemma Für jede monotone Grammatik G gibt es eine kontextsensitive

abgeschlossen unter,,,, R,

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung

Formale Sprachen und Automaten

Teil V. Weiterführende Themen, Teil 1: Kontextsensitive Sprachen und die Chomsky-Hierarchie

Turing-Maschine. Berechenbarkeit und Komplexität Turing-Maschinen. Turing-Maschine. Beispiel

Klausur zur Vorlesung Mathematische Logik

Formale Sprachen. Script, Kapitel 4. Grammatiken

Theoretische Informatik I (Grundzüge der Informatik I)

Grammatik konstruieren, Beispiel Ausdrücke der Aussagenlogik in zwei Prädikaten p und q und den Verknüpfungsoperationen. Produktionsregeln:

Dank. Theoretische Informatik II. Kontakt. Teil I. Einführung. Vorlesung

Einführung in die Computerlinguistik Berechenbarkeit, Entscheidbarkeit, Halteproblem

Klausur Formale Systeme Fakultät für Informatik 2. Klausur zum WS 2010/2011

Theoretische Informatik 1

Automaten und Formale Sprachen

Was bisher geschah: Formale Sprachen

Speicherplatz-Komplexität 1 / 30

Theorie der Informatik (CS206) Kellerautomat, Postfix-Notation, Turing-Maschine, Busy Beaver

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Ulrich Furbach. Sommersemester 2014

Theoretische Informatik

Satz 90 Sei A = (Q, Σ, δ, q 0, F ) ein DFA. Der Zeitaufwand des obigen Minimalisierungsalgorithmus ist O( Q 2 Σ ).

Wortproblem für kontextfreie Grammatiken

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK

Formale Sprachen und Automaten

Dank. 1 Ableitungsbäume. 2 Umformung von Grammatiken. 3 Normalformen. 4 Pumping-Lemma für kontextfreie Sprachen. 5 Pushdown-Automaten (PDAs)

Grundlagen der Theoretischen Informatik

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik

Referat rekursive Mengen vs. rekursiv-aufzählbare Mengen

Theoretische Informatik Kap 2: Berechnungstheorie

Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten

THEORETISCHE INFORMATIK

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Ulrich Furbach. Sommersemester 2014

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK

Dank. Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Probleme über Sprachen. Teil II.

2.4 Kontextsensitive und Typ 0-Sprachen

Berechenbarkeitsmodelle

Einführung in die Theoretische Informatik

Übungen zur Vorlesung Einführung in die Theoretische Informatik, Blatt 12 LÖSUNGEN

Theoretische Informatik

Einführung in Algorithmen und Komplexität

Theoretische Informatik Kap 1: Formale Sprachen/Automatentheorie

Theoretische Informatik. Grammatiken. Grammatiken. Grammatiken. Rainer Schrader. 9. Juli 2009

Musterlösung zur Nachklausur Theoretische Grundlagen der Informatik Wintersemester 2013/14

Theoretische Informatik

GTI. Hannes Diener. 6. Juni Juni. ENC B-0123, diener@math.uni-siegen.de

Tutoraufgabe 1 (ɛ-produktionen):

Transkript:

Einführung in die Theoretische Informatik I/ Grundlagen der Theoretischen Informatik SS 2007 Jun.-Prof. Dr. Bernhard Beckert Ulrich Koch 3. Teilklausur 25. 07. 2007 Persönliche Daten bitte gut leserlich ausfüllen! Vorname:... Nachname:... Matrikelnummer:... Klausurergebnis bitte nicht ausfüllen! Aufgabe 1:... Aufgabe 2:... Aufgabe 3:... Aufgabe 4:... Aufgabe 5:... (12 Punkte) (5 Punkte) (2 Punkte) (6 Punkte) (5 Punkte) Gesamtergebnis:... Note:...

Theoretische Informatik I, 25. 07. 2007 2 1 Multiple Choice (3+3+4+2 = 12 Punkte) Hinweis: Bei den folgenden Ankreuzaufgaben führen e Kreuze zu Punktabzug! Dabei werden insgesamt jedoch keinesfalls weniger als 0 Punkte für die jeweilige Teilaufgabe vergeben. (a) Sprachen und Grammatiken (3 Punkte) Entscheiden Sie durch Ankreuzen, ob die folgenden Aussagen oder sind. Zu jeder mehrdeutigen kontextfreien Grammatik gibt es eine äquivalente eindeutige kontextfreie Grammatik. Das Komplement jeder kontextfreien Sprache ist kontextfrei. Wenn L 1 und L 2 kontextfrei sind, dann ist auch L 1 L 2 kontextfrei. (b) Turing-Maschinen (3 Punkte) Entscheiden Sie durch Ankreuzen, ob die folgenden Aussagen oder sind. Zu jeder Sprache L, die von einem PDA akzeptiert wird, gibt es eine NTM, die L akzeptiert. Zu jeder Sprache L, die von einer DTM akzeptiert wird, gibt es einen PDA, der L akzeptiert. Eine universelle Turing-Maschine kann sich selbst simulieren.

Theoretische Informatik I, 25. 07. 2007 3 (c) Entscheidbarkeit (4 Punkte) Entscheiden Sie durch Ankreuzen, ob die folgenden Aussagen oder sind. Jede akzeptierbare Sprache ist entscheidbar. Jede entscheidbare Sprache ist rekursiv aufzählbar. Das Komplement einer entscheidbaren Sprache ist entscheidbar. Jede unendliche Sprache ist unentscheidbar. (d) Komplexität (2 Punkte) Entscheiden Sie durch Ankreuzen, ob die folgenden Aussagen oder sind. Es ist bekannt und einfach zu beweisen, dass PSPACE NP. Es ist bekannt und einfach zu beweisen, dass P PSPACE.

Theoretische Informatik I, 25. 07. 2007 4 2 CYK-Algorithmus (5 Punkte) Gegeben sei die kontextfreie Grammatik G = ({S, A, B, C, D, E}, {a, b}, R, S) mit folgenden Regeln in R: S A B C D E Hinweis: G ist bereits in Chomsky-Normalform. AD a a b CA a Parsen Sie das Wort aaba mit dem CYK-Algorithmus. Vervollständigen Sie dazu die folgende Tabelle. SE BC a a b a a S, A, C a C S, A, C b B a S D E S, A, C

Theoretische Informatik I, 25. 07. 2007 5 3 Pushdown-Automaten (2 Punkte) Gegeben sei der Pushdown-Automat (Kellerautomat) mit folgender Übergangsrelation: A = ({s 0, s 1 }, {a, b}, {X, Z 0 },, s 0, Z 0, ) = { ((s 0, a, Z 0 ), (s 0, XZ 0 )), ((s 0, a, X), (s 0, XX)), ((s 0, b, Z 0 ), (s 1, ε)), ((s 0, b, X), (s 1, ε)), ((s 1, b, Z 0 ), (s 1, ε)), ((s 1, b, X), (s 1, ε)) } Welche der folgenden Sprachen erkennt der Automat per leerem Keller? Kreuzen Sie die zutreffende Sprache an. (Nur eine Antwort ist!) {a n+1 b n n 0} {a n b n+1 n 0} {a n b n n 0} {a k b n k, n 0 k n} In den akzeptierten Wörtern kommt ein b mehr vor, weil das von Anfang an auf dem Stack liegende Z 0 beim Abbau des Stacks auch noch entfernt werden muss (es wird nicht gesondert behandelt).

Theoretische Informatik I, 25. 07. 2007 6 4 Turing-Maschinen (3+3 = 6 Punkte) Gegeben sei die determinierte Turing-Maschine M = ({s 0, s 1, s 2, s 3 }, {0, 1, #}, δ, s 0 ) deren Übergangsfunktion durch folgende Tabelle definiert ist (alle nicht aufgeführten Übergänge seien undefiniert): δ 0 1 # s 0 (s 1, L) s 1 (s 3, 1) (s 2, 0) (s 3, R) s 2 (s 1, L) s 3 (s 3, R) (s 3, R) (h, #) M berechnet die Funktion s : IN 0 IN 0 mit s(n) = (n + 1) mod 16, wobei Ein- und Ausgabe mit genau 4 Ziffern binär dargestellt sind. (a) Geben Sie die Rechnung von M für die Eingabe 0101 an. Vervollständigen Sie dazu folgende Auflistung der Konfigurationen: 0.: s 0, #0101# s 1, #0101# s 2, #0100# s 1, #0100# s 3, #0110# s 3, #0110# s 3, #0110# h, #0110# 1.:... 2.:... 3.:... 4.:... 5.:... 6.:... 7.:... (b) Ändern Sie M so ab, dass die entstehende DTM die Funktion berechnet. t : IN 0 IN 0 mit t(n) = (n + 2) mod 16 Vervollständigen Sie dazu folgende Tabelle: δ 0 1 # s 0 (s 4, L) s 1 (s 3, 1) (s 2, 0) (s 3, R) s 2 (s 1, L) s 3 (s 3, R) (s 3, R) (h, #) s 4 (s 1, L) (s 1, L) Mit Hilfe eines zusätzlichen Zustands s 4 macht man am Anfang einen zusätzlichen Schritt nach links. Alternativ könnte man auch eine Maschine bauen, die die ursprüngliche Maschine M zweimal ausführt.

Theoretische Informatik I, 25. 07. 2007 7 5 Entscheidbarkeit (1+2+2 = 5 Punkte) Sei T M die Menge aller Turing-Maschinen, und sei g : T M IN 0 eine bijektive Gödelisierungsfunktion für T M (also eine bijektive, berechenbare Abbildung zwischen T M und IN 0 ). Ferner sei die Sprache L definiert durch: L = {n die Turing-Maschine M T M, für die g(m) = n gilt, hält bei Eingabe n} (a) Ist die Sprache L entscheidbar? Nein. Denn dies ist das spezielle Halteproblem, das bekanntermaßen unentscheidbar ist. (b) Ist L aufzählbar (und also akzeptierbar)? Geben Sie eine kurze Begründung für Ihre Antwort (1 2 Sätze). Ja. Man kann alle Turing-Maschinen simultan mittels einer universellen TM ausführen und dann jeweils, wenn eine der Maschinen terminiert, in den Blinkzustand gehen und diese ausgeben. (c) Ist das Komplement L von L akzeptierbar? Geben Sie eine kurze Begründung für Ihre Antwort (1 2 Sätze). Nein. Wäre das Komplement L von L akzeptierbar und also aufzählbar, dann wäre sowohl L (siehe (b)) als auch L aufzählbar. Dann müsste L entscheidbar sein (Satz aus der Vorlesung), was im Widerspruch zu (a) stünde.