Praktische Semantik von Programmiersprache (SoSe 2013)
Dozenten | Daniel Gorín und Tadeusz Litak |
Termine und Ort | Mi, 14:15 – 15:45 und 16:15 – 17:45 (00.152-113) |
Umfang | 4 SWS – 7,5 ECTS |
Zielgruppe | WPF INF-BA-V-THI ab 4. Semester WPF INF-MA ab 1. Semester |
Für eine Kursbeschreibung, siehe: Praktische Semantik von Programmiersprachen.
Erste Vorlesung: 17.04., 16:15
Software
-
If Coq is not included in your package manager, download it from here.
-
You will need at least one front-end for Coq: either CoqIde (part of Coq distribution) or Proof General, an Emacs-based front-end.
Software Foundations book
This is the online book we follow during the course. Up-to-date versions of the chapters will be posted here as we cover them.
-
Optional material! Parser for Imp (see also Coq code)
-
Optional material! Evaluation function for Imp (see also Coq code)
-
Optional material we did not manage to cover, ordered by chapter dependencies: More on STLC → A type checker for STLC → Typing mutable references → Subtyping → Adding records to STLC → Subtyping with references → Postscript
Material to work in class
-
15.5: FinishingMoreCoq.v Prop.v
-
22.5: Logic.v
-
5.6: Imp.v (corrected on June 16: error-generating use of notation in the definition of ceval)
-
12.6: Equiv.v
-
19.6: Hoare.v
-
26.6: Hoare2.v
-
03.7: Smallstep.v
-
17.7: StlcProp.v
Exercise sheets
-
Warm-up. (pdf)
-
The second sheet (posted Apr 29, deadline May 8, submissions by email to Tadeusz). (coq script)
-
Third assignment (posted May 10, deadline May 15, submissions by email to Daniel). (coq script)
-
Fourth assignment (posted May 20, deadline May 24, submissions by email to Tadeusz). Coq version HTML version
-
Fifth assignment (posted May 27, deadline June 2, submissions by email to Tadeusz). Coq version HTML version
-
Sixth assignment (posted June 2, deadline June 9, submissions by email to Tadeusz). Coq version HTML version
-
Seventh assignment (posted June 6, deadline June 15, submissions by email to Daniel). (Coq script)
-
Eight assignment (posted June 16, deadline June 30, submissions by email to Tadeusz). Coq script HTML file
-
Ninth assignment (posted June 23, deadline July 3, submissions by email to Daniel). (Coq script)
-
Tenth assignment (posted July 1, deadline July 11, submissions by email to Daniel). (Coq script)
-
Eleventh assignment (posted July 8, a hint added July 12, deadline July 18, submissions by email to Tadeusz). Coq script HTML file
-
Twelfth assignment (posted July 12, deadline July 21, submissions by email to Tadeusz). Coq script HTML file