IMC011 Semantics and Domain Theory Spring 2014
Teacher
Herman Geuvers: home page
Introduction
Denotational Semantics is about assigning a mathematical
meaning to syntax (in particular, that of programming languages) which
is, in some sense, independent of how the syntax is presented, or what
computational rules it may obey (which are properly the subject matter
of Operational Semantics).
Domain Theory is the mathematics of the objects,
sets-with-structure, and mappings between them, which serve as a
vehicle for denotational semantics.
Material
- Lecture Notes on Denotational Semantics by Andy Pitts
and Glynn Winskel, abbreviated to DENS for now.
(Available via internet:
PDF file)
- Grondslagen van de Informatica 2 course notes by Erik
Barendsen, August 1988, abbreviated
to GI2 for now
- Selected sections from From computation to foundations via
functions and application: The lambda-calculus and its webbed
models by Chantal Berline, Theoretical Computer Science 249 (2000)
pp. 81-161.
For those who haven't followed Semantiek en Correctheid:
background material, notably on operational semantics can be
found in Hanne Riis Nielson en Flemming Nielson:
Semantics
with applications, Wiley 1999 (freely available).
Background material for further reading:
- Ch. 3.1 and 3.2
of Domains and Lambda Calculi by Roberto Amadio and
Pierre-Louis Curien, Cambridge University Press, 1998, pp: 484
- Ch. 13 of Formal Semantics of Programming Languages
by Glynn Winskel, MIT Press, Cambridge, Massachusetts, 1993.
- Ch. 2 and Ch. 8 until page 260
of Semantics of Programming Languages: Structures and
Techniques, by Carl Gunter, MIT Press, Cambridge, Massachusetts,
1992.
Structure
The course is divided roughly into 3 parts:
- Introduction to Denotational Semantics
- Operational and Denotational Semantics of PCF
- Models of the untyped lambda calculus
Set up
The course consists of 2 hours hoorcollege"
Wednesday, 8:45--10:30 in HG 02.028, unless indicated
otherwise below, plus "self study" and a "werkcollege" (exercise
class) on Tuesday, 12.30-13.30 (lunch break) in HG
01.029.
Look below for updated information on the weekly schedule!
The course by week
The following is the weekly schedule.
- February 5: Chapter 1 of DENS: notes
and exercises, exercise class on
Friday 12.30--13.30 (lunch break).
- February 12: Chapter 1 of DENS, exercises,
exercise class on Friday 12.30--13.30 (lunch break), HG 02.032.
- February 18: 12.30--13.30 (lunch break), HG 01.029, exercise class.
- February 19: Section 2.1 of DENS,
exercises.
- February 25: 12.30--13.30 (lunch break), HG 01.029, exercise class.
- February 26: Chapter 2-3 of DENS until Proposition 3.1.1, page 21,
exercises
- March 4 no exercise class.
- March 5: no lecture
- March 11: 12.30--13.30 (lunch break), HG 01.029, exercise class.
- March 12: Chapter 4 of DENS until slide 21,
exercises.
- March 18: 12.30--13.30 (lunch break), HG 01.029, exercise class.
- March 19: Chapter 4 of DENS until page 36,
exercises
- March 25: 12.30--13.30 (lunch break), HG 01.029, exercise class.
- March 26: Chapter
5 of DENS, until page 45 exercises.
- April 1: 12.30--13.30 (lunch break), HG 01.029, exercise class.
- April 2: HG 01.057 rest of Chapter 5 + Chapter 6 of DENS until page 58, exercises.
- April 8: 12.30--13.30 (lunch break), HG 01.029, exercise class.
- April 9: rest of Chapter 6 + Sections 7.1, 7.2 of DENS exercises.
- April 15: 12.30--13.30 (lunch break), HG 01.029, exercise class.
- April 16: Section 7.3 + Chapter 8 of DENS
exercises,
- April 22: 12.30--13.30 (lunch break), HG 01.029, exercise class.
- April 23: Stable models, see notes
and exercises.
- April 30, May 7, May 14: no lecture
- May 20: 12.30--13.30 (lunch break), HG 01.029, exercise class.
- May 21: The notes of Berline,
exercises.
- May 27: 12.30--13.30 (lunch break), HG 01.029, exercise class.
- May 28: Sections 3.1, 3.2 and 3.3 of GI2, exercises.
- June 3: 12.30--13.30 (lunch break), HG 01.029, exercise class.
- June 4: Chapter 4 of GI2, and hand out of
test exam, exercises.
- June 10-11: no lectures
- June 17: 12.30--13.30 (lunch break), HG 01.029, exercise class.
- June 18: Recap of part 2, answers of exercises and answers to test
exam.
Exam
Wednesday July 2, 8.30-11.30, HG00.068, written exam.
(Second chance: Wednesday August 20, 8.30-11.30, HG01.139.)
The written exam is "open book", so you can take the course notes and
your own notes to the exam.
herman at cs dot ru dot nl