Theoretische Informatik 2
Vorlesung im SoSe 2014
Gehalten von Dr. Dominik D. FreydenbergerBetreuung der Übungen durch Dipl.-Inf. Joachim Bremer
Aktuelles
Im Logbuch finden Sie nach den Vorlesungen Informationen zum Inhalt der einzelnen Vorlesungsstunden und gelegentlich ergänzende Bemerkungen.- Da die Vorlesung abgeschlossen ist, wurden die (nicht mehr wirklich) aktuellen Hinweise ausgeblendet. Sie können allerdings hier wieder eingeblendet werden.
Einführung
Die Vorlesung befasst sich mit Automaten und formalen Sprachen und gliedert sich im Wesentlichen in vier Teile:- Reguläre Sprachen,
- kontextfreie Sprachen,
- Chomsky-Hierarchie und
- weiterführende Themen.
Die kontextfreien Sprachen werden über kontextfreie Grammatiken eingeführt und anhand von Syntaxbäumen veranschaulicht. Pumping-Lemmata, Normalformen und Abschlusseigenschaften der kontextfreien Sprachen werden behandelt, und das Wortproblem für kontextfreie Sprachen wird algorithmisch gelöst. Es wird gezeigt, dass die kontextfreien Sprachen auch durch Kellerautomaten definiert werden können.
Im Anschluss daran wird die Chomsky-Hierarchie eingeführt und es werden insbesondere kontextsensitive Grammatiken und linear beschränkte Automaten betrachtet.
Als weiterführende Themen stehen u.A. zur Auswahl: Baumautomaten, erweiterte Grammatik-Modelle (z.B. programmierte Grammatiken), platzbeschränkte Komplexitätsklassen (z.B. PSPACE, LOGSPACE), Pattern-Matching-Algorithmen.
Kürzel laut Studienordnung: B-GL2. Creditpoints: 8. SWS: 3V, 2Ü.
Skript
Logbuch
Hier finden Sie (nach den Vorlesungen) Informationen zum Inhalt der einzelnen Vorlesungsstunden, die in der Vorlesung verwendeten Folien und gelegentlich ergänzende Bemerkungen.E-Lectures
Die Vorlesungen wurden von studiumdigitale, der E-Learning-Einrichtung der Goethe-Universität, auf Video aufgezeichnet und sind dort abrufbar. Direkte Links zu den einzelnen Aufzeichnungen finden Sie hier:- Vorlesung 1: Einführung, Organisatorisches,
Grundbegriffe zum Thema Wörter und Sprachen. Klassen,
Abschlusseigenschaften, Klasse FIN, Abschlusseigenschaften von FIN.
Endliche Automaten und reguläre Sprachen - heute: DFAs, Klasse REG,
Pumping-Lemma
[HTML5 | Flash | Quicktime | mobile | audio] - Vorlesung 2: Komplement- und Produktautomat, Abschlusseigenschaften, Nerode-Relation
[HTML5 | Flash | Quicktime | mobile | audio] - Vorlesung 3: Beweis Satz von Myhill-Nerode, Minimierung von DFAs
[HTML5 | Flash | Quicktime | mobile | audio] - Vorlesung 4 (Teil 1): NFAs
[HTML5 | Flash | Quicktime | mobile | audio] - Vorlesung 4 (Teil 2): NFAs mit nichtdeterministischem Startzustand, NFAs mit ε-Übergängen, Brzozowskis Algorithmus, Reversal-Konstruktion
[HTML5 | Flash | Quicktime | mobile | audio] - Vorlesung 5 (Teil 1): Abschluss der Klasse REG
unter Vereinigung, Konkatenation und Kleene-Stern anhand von ε-NFAs,
reguläre Ausdrücke, erweiterte NFAs
[HTML5 | Flash | Quicktime | mobile | audio] - Vorlesung 5 (Teil 2): Substitution, Homomorphismus und inverser Homomorphismus
[HTML5 | Flash | Quicktime | mobile | audio] - Vorlesung 6: Entscheidungsprobleme, reguläre Grammatiken. Kontextfreie Grammatiken, Abschlusseigenschaften, Ableitungsbäume.
[HTML5 | Flash | Quicktime | mobile | audio] - Vorlesung 7: Das Pumping-Lemma für Kontextfreie Sprachen, (Nicht-)Abschlusseigenschaften, Chomsky-Normalform
[HTML5 | Flash | Quicktime | mobile | audio] - Vorlesung 8: Der CYK-Algorithmus und Mehrdeutigkeit
[HTML5 | Flash | Quicktime | mobile | audio] - Vorlesung 9: Kellerautomaten (und der Abschluss der Klasse der kontextfreien Sprachen unter inversen Homomorphismen).
[HTML5 | Flash | Quicktime | mobile | audio] - Vorlesung 10: Deterministische Kellerautomaten (und
deterministisch kontextfreie Sprachen), Entscheidungsprobleme für
kontextfreie Sprachen (und das Postsche Korrespondenz Problem)
[HTML5 | Flash | Quicktime | mobile | audio] - Vorlesung 11: Wiederholung der Tripelkonstruktion. Kontextsensitive Sprachen (kontextsensitive und monotone Grammatiken, LBAs) und die Chomsky-Hierarchie.
[HTML5 | Flash | Quicktime | mobile | audio] Aus technischen Gründen wurden die Folien bei dieser Vorlesung nicht mit aufgezeichnet. Wir bedauern dies zutiefst, weisen aber gleichzeitig auch darauf hin, dass wir auf die technische Seite der Aufzeichnungen keinen Einfluss haben. Die Folien finden Sie dort (Tripelkonstruktion) und dort (kontextsensitive Sprachen). - Vorlesung 12: Patternsprachen und erweiterte reguläre Ausdrücke.
[HTML5 | Flash | Quicktime | mobile | audio] - Vorlesung 13: XML, deterministische reguläre Ausdrücke und Glushkov-Automaten.
[HTML5 | Flash | Quicktime | mobile | audio] - Vorlesung 14: Pattern-Matching.
[HTML5 | Flash | Quicktime | mobile | audio]
Termine
Zeit | Ort | Leitung | |
---|---|---|---|
Vorlesung | Mittwoch 14:15-17:00 (vom 16.04.-16.07.) |
Magnus-Hörsaal in der Informatik, Robert-Mayer-Str. 11-15 | Dr. Dominik D. Freydenberger |
Übung 1 | Montag, 12:15-13:45 | RMS 11-15, SR 307 | Joachim Bremer |
Übung 2 | Dienstag, 12:15-13:45 | RMS 11-15, SR 9 | Sorin Constantinescu |
Übungsblätter
Es wird regelmäßige Übungsaufgaben geben. Die Teilnahme an den Übungsstunden und das Bearbeiten der Übungsaufgaben ist für das Verständnis der Vorlesung und eine erfolgreiche Prüfung unbedingt empfohlen. Insbesondere kann durch die in den Übungen gesammelten Punkte ein Bonus für die Klausur erworben werden (Details siehe Klausur).
Das aktuelle Übungsblatt ist jeweils spätestens mittwochs nach der Vorlesung an dieser Stelle zu finden und wird außerdem mittwochs in gedruckter Form am Ende der Vorlesung ausgeteilt. Die Abgabe der bearbeiteten Übungsaufgaben erfolgt in der jeweils darauf folgenden Woche mittwochs, bis spätestens 14:14 Uhr vor Beginn der Vorlesung. Vorzeitig kann die Abgabe auch durch Einwurf in den Briefkasten neben Raum 114 (Robert-Mayer-Straße 11-15 1.Stock) erfolgen. Nach Beginn der Vorlesung werden keine Abgaben mehr entgegengenommen. Achtung: Auf dem abgegebenen Übungsblatt müssen Name, Matrikelnummer und Übungsgruppe vermerkt sein. Mehrseitige Abgaben sind zusammenzuheften. Die Abgabe erfolgt in Papierform (eine elektronische Abgabe ist aus logistischen Gründen leider nicht möglich).
Obwohl es sicherlich sinnvoll ist, über die Aufgaben mit Kommilitonen/innen gemeinsam zu reden und nachzudenken, sollte jede/r Student/in seine eigene Lösung aufschreiben und abgeben.
- Übungsblatt 1 ( ausgeteilt am Mi, 16.04.2014 ; zu bearbeiten bis Mi, 23.04.2014 )
- Übungsblatt 2 ( ausgeteilt am Mi, 23.04.2014 ; zu bearbeiten bis Mi, 30.04.2014 )
- Übungsblatt 3 ( ausgeteilt am Mi, 30.04.2014 ; zu bearbeiten bis Mi, 07.05.2014 )
- Übungsblatt 4 ( ausgeteilt am Mi, 07.05.2014 ; zu bearbeiten bis Mi, 14.05.2014 )
- Übungsblatt 5 ( ausgeteilt am Mi, 14.05.2014 ; zu bearbeiten bis Mi, 21.05.2014 )
- Übungsblatt 6 ( ausgeteilt am Mi, 21.05.2014 ; zu bearbeiten bis Mi, 28.05.2014 )
- Übungsblatt 7 ( ausgeteilt am Mi, 28.05.2014 ; zu bearbeiten bis Mi, 04.06.2014 )
- Übungsblatt 8 ( ausgeteilt am Mi, 04.06.2014 ; zu bearbeiten bis Mi, 11.06.2014 )
- Übungsblatt 9 ( ausgeteilt am Mi, 11.06.2014 ; zu bearbeiten bis Mi, 18.06.2014 )
- Übungsblatt 10 ( ausgeteilt am Mi, 18.06.2014 ; zu bearbeiten bis Mi, 25.06.2014 )
- Übungsblatt 11 ( ausgeteilt am Mi, 25.06.2014 ; zu bearbeiten bis Mi, 02.07.2014 )
- Übungsblatt 12 ( ausgeteilt am Mi, 02.07.2014 ; zu bearbeiten bis Mi, 09.07.2014 )
- Übungsblatt 13 ( ausgeteilt am Mi, 16.07.2014 )
- Übungsblatt 13 (mit Lösungen) ( ausgeteilt am Mo, 21.07.2014 )
Klausur
|
Literatur
[RS] | G. Rozenberg und A. Salomaa. Handbook of Formal Languages, Vol. 1. Springer, 1997. |
---|---|
[S-GL2] | G. Schnitger. Skript zur Vorlesung "Formale Sprachen und Berechenbarkeit", Goethe-Universität Frankfurt am Main, Sommersemester 2013. Link |
[S-DisMod] | N. Schweikardt. Skript zur Vorlesung "Diskrete Modellierung", Goethe-Universität Frankfurt am Main, 2013. Link |
[W-Theo] | I. Wegener. Theoretische Informatik. Teubner, 2005 (3. Auflage). |
[S-Comp] | M. Sipser. Introduction to the theory of computation. PWS Publishing, 2006 (2. Auflage). |
[D-Dis] | V. Diekert, M. Kufleitner, G. Rosenberger, Diskrete algebraische Methoden. De Gruyter Studium, 2013. |
[S-Sec] | J. Shallit. A Second Course in Formal Languages and Automata Theory. Cambridge University Press, 2008. |
[HU] | J. E. Hopcroft and J.D. Ullman. Introduction to Automata Theory, Languages, and Computation. Addison-Wesley, 1979. |
[W-Komp] | I. Wegener. Kompendium Theoretische Informatik - eine Ideensammlung. Teubner, 1996. |
[S-Theo] | U. Schöning. Theoretische Informatik - kurzgefasst. Springer, 2001 (4. Auflage). |