Automaten und formale Sprachen (SS 2024)
Dozentin
Prof. Dr. Barbara König
Übungsleitung
Lara Stoltenow
Inhalt und Lernziele
Die Theorie der formalen Sprachen bildet die Grundlage für viele andere Gebiete der Informatik, beispielsweise für Informationsverarbeitung, Compilerbau, Verifikation oder Modellierung. Im Rahmen dieser Veranstaltung werden die Grundlagen der formalen Sprachen vermittelt und Fertigkeiten im Umgang mit Automaten und Grammatiken eingeübt. Außerdem soll vermittelt werden, in welchen Bereichen diese Theorie zur Anwendung kommt. Im Einzelnen wird dabei behandelt:
- Grammatiken, Chomsky-Hierarchie
- Wortproblem, Syntaxbäume
- Reguläre Sprachen (Endliche Automaten, Reguläre Ausdrücke, Pumping-Lemma, Äquivalenzrelationen und Minimalautomaten, Abschlusseigenschaften, Entscheidbarkeit, Anwendung: Verifikation eines Protokolls zum wechselseitigen Ausschluss)
- Kontextfreie Sprachen (Normalformen, Pumping-Lemma, CYK-Algorithmus, Kellerautomaten, deterministisch kontextfreie Sprachen, Abschlusseigenschaften, Entscheidbarkeit)
- Kontextsensitive und Typ-0-Sprachen
Die Vorlesung wird sich inhaltlich stark an der Vorlesung aus dem SS 2023 orientieren, wobei die Folien des aktuellen Semesters durchaus abweichen können.
Termine
Vorlesung
Dienstag, 12:15-13:45, LX 1203
Tutorium
Details werden noch festgelegt und dann über das Moodle-Forum bekanntgegeben
Übungsgruppen
Beginn ab der dritten Vorlesungswoche
- G1 Mo 10:15-11:45 ("10-12"), LF 035
- G2 Di 8:30-10:00 ("8-10"), LE 120
- G3 Di 14:15-15:45 ("14-16"), LK 052
- G4 Di 16:15-17:45 ("16-18"), LE 103
- G5 Mi 10:15-11:45 ("10-12"), LB 117
- G6 Fr 10:15-11:45 ("10-12"), LC 137
(Termine und Räume unter Vorbehalt)
Prüfungen
Die Klausur "Automaten und Formale Sprachen" im Sommersemester 2024 wird voraussichtlich am Dienstag, 27. August 2024, 12-14 Uhr, stattfinden.
Arbeitsmaterial
Moodle
Literatur
- Uwe Schöning: "Theoretische Informatik - kurz gefasst"
Spektrum, 2008. 5. Auflage.
ISBN: 978-3-8274-1824-1
Der Inhalt der Vorlesung orientiert sich besonders an Kapitel 2 und 3. - Hopcroft, Motwani, Ullman: "Einführung in die Automatentheorie, Formale Sprachen und Komplexitätstheorie"
Pearson Studium, 2006. 2. Auflage.
ISBN: 978-3-8273-7020-4 - Michael Sipser: "Introduction to the theory of computation"
Thomson Course Technology, 2008. 2. internationale Auflage.
ISBN: 978-0-619-21764-8
Alle drei Bücher stehen auch in der Bibliothek zur Verfügung.
Hinweise
Zielgruppe
Diese Vorlesung kann von Studierenden verschiedener Studiengänge gehört werden. Insbesondere handelt es sich dabei um:
- Studierende im Duisburger Bachelor-Studiengang "Angewandte Informatik (Ingenieur- und Medieninformatik)"
- Studierende im Bachelor-Studiengang "International Studies in Engineering" (Computer Engineering)
- Studierende mit Nebenfach Informatik
Hinweise zu den Übungen
Die Bearbeitung der Übungszettel und die Beteiligung an den Diskussionen im Forum ist dringend erwünscht, da sich ein Großteil des Stoffes durch Anwendung am Beispiel deutlich besser verstehen lässt als bei reinem Studium der Folien.
Die Abgabe der Übungen ist per Moodle oder Papier möglich. Hinweise zu den möglichen Abgabeformen siehe Moodle.
Den Bonus von einer Notenstufe (z.B. 2,0 statt 2,3) erhält, wer am Ende der Vorlesung mindestens 50% der Übungspunkte (also 120 Punkte oder mehr) erhalten hat.
Hinweise zu den Prüfungen
- Am Ende des Sommersemesters wird eine schriftliche Prüfung stattfinden.
- Für Schülerstudenten gelten die Regelungen des Studiengangs, für den sie eingetragen sind. Es ist keine Anmeldung beim Prüfungsamt erforderlich.