[Back to Teaching]

Mathematical Semantics of Computer Systems (AY 2014)

General

Course Objective

Correctness of computer systems and programs is a pressing issue in the modern world. Their verification窶廃roviding mathematical proofs for their correctness窶把alls for the mathematical modeling of systems or programs. This is what the field semantics is all about. And in the modern approaches to program/system semantics, category theory is an indispensable language.

Category theory is used in many different applications; and its use in each application comes with a greatly different flavor. The course exhibits two eminent uses of category theory窶把oncurrency and functional programming窶蚤nd shows two different "faces" of category theory. These different faces are unified in the latter half of the course, where the lectures are led by categorical concepts rather than applications.

Keywords: category theory, algebra, coalgebra, type theory, semantics, reactive system, automaton, functional programming

Course Structure (Tentative)

  1. Categorical Algebra and Coalgebra
  2. Categories and Type Theory
  3. Monad
  4. Presheaf Category

Course Material

References

Besides some textbooks and papers mentioned during the lectures, there is a series of fantastic online lectures on category theory by Eugenia Cheng and Simon Willerton. Recommended!

Evaluation

Homework is assigned at the end of each of four parts.

First Report (Due: Mon Nov 26 2012)

Second Report (Due: Mon 18 Feb 2013)

Schedule