EN | DE
Theoretische Informatik

Theorie der Programmierung (SS 2017)

Termine

Klausur

Das Datum der Klausur kann mittlerweile in mein campus eingesehen werden. Zur Klausur sind sämtliche papierbasierten Hilfsmittel zugelassen. Die Bonuspunkte sind in Waffel eingetragen. Wir empfehlen einen rechtzeitigen Blick auf die

Vorlesungen

Termin Zeit Ort Dozent Beginn
Mo. 14:15 - 15:45 C1 - Chemikum Lutz Schröder 24.4.
Do. 16:15 - 17:45 H9

Intensivübung

Termin Zeit Ort Dozent Beginn
Fr. 14:15 - 15:45 0.68 Christoph Rauch

Tutorien

Die Anmeldung zu den Tutorien erfolgt über Waffel. Die verfügbaren Termine sind der untenstehenden Tabelle zu entnehmen (die von den Angaben in UnivIS abweichen kann). Beginn der Übungen ist in der zweiten Vorlesungswoche.

Achtung! In den Wochen vom 5. bis 9. Juni sowie vom 12. bis 16. Juni wird in den Übungen derselbe Stoff behandelt. Es ist also nicht nötig, in diesen beiden Wochen eine andere Übungsgruppe zu besuchen, falls die eigene Übung ausfällt. Der Bergdienstag ist selbstverständlich frei. Ebenfalls entfällt die Freitagsübung am 16. Juni.

Verteilung der Bonuspunkte: Bonuspunkte erhält, wer mindestens 50% der Punkte in den Hausaufgaben erreicht hat. Die maximale Anzahl an Bonuspunkten (also 6) gibt es bei 90% der Punkte oder mehr, dazwischen wird linear skaliert. Bonuspunkte können wie immer nicht zum Bestehen der Klausur führen sondern lediglich zur Verbesserung der Note bei bestandener Klausur.

Termin Zeit Ort Dozent
Mo. 16:15 - 17:45 0.68 Johannes Kern
Di. 10:15 - 11:45 00.131-128 Florian Unger
Di. 12:15 - 13:45 02.134-113 Kevin Höllring
Di. 12:15 - 13:45 00.131-128 Frederik Haselmeier
Do. 12:15 - 13:45 0.85 Kristin Braun
Do. 12:15 - 13:45 01.151-128 Üsame Cengiz
Do. 12:15 - 13:45 00.131-128 Kevin Höllring
Fr. 16:15 - 17:45 01.151-128 Simone Weiß

Die Abgabe der Übungen erfolgt wöchentlich in Gruppen von 2 bis 3 Personen.

Übungsblätter

Die Blätter enthalten Präsenzaufgaben für die Tutorien und bepunktete Hausaufgaben, die zum Erwerb von Bonuspunkten für die Klausur abgegeben und korrigiert werden.

Inhalt

Themen

  • Termersetzung
  • λ-Kalkül
  • Semantik von Programmiersprachen, Bereichstheorie
  • Induktion und Koinduktion
  • Reguläre Sprachen und endliche Automaten
  • Stichpunktartige Themenliste

Skript

Es gibt ein auf einer studentischen Mitschrift vom SoSe 2014 basierendes, vorläufig noch inoffizielles

das im Laufe der Veranstaltung überarbeitet wird (siehe Revisionsnummern).

Literatur

  • F. Baader, T. Nipkow: Term rewriting and all that, Cambridge University Press, 1999
  • J.-W. Klop, Term rewriting systems, in S. Abramsky, D. Gabbay and T. Maibaum (eds.), Handbook of Logic in Computer Science, Oxford University Press, 1992
  • J. Giesl, Termersetzungssysteme, RWTH Aachen, 2011
  • H. Barendregt, λ-calculi with types, in S. Abramsky, D. Gabbay and T. Maibaum (eds.), Handbook of Logic in Computer Science, Oxford University Press, 1992
  • T. Nipkow, Lambda-Kalkül, TU München, 2004
  • G. Winskel, Formal Semantics of Programming Languages, MIT Press, 1993
  • J. E. Hopcroft, J. D. Ullman and R. Motwani, Introduction to Automata Theory, Languages, and Computation, 3rd ed., Prentice Hall, 2006
  • B. Jacobs, J. Rutten: A Tutorial on (Co-)Algebras and (Co-)Induction, EATCS Bulletin 42 (1997), 222-259.
  • J. Rutten: Automata and Coinduction (an exercise in coalgebra), Proc. CONCUR'98, LNCS 1466, 194-218, Springer, 2006.
  • P. Taylor: Proofs and Types, Cambridge University, 2003
  • M. H. B. Sørensen, P. Urzyczyn: Lectures on the Curry-Howard Isomorphism, 1998
  • A. Pitts: Lecture Notes on Regular Languages and Finite Automata, Cambridge University, 2013