Recent developments in Type Theory

Lectures at Mathematical Structures of Computation - Lyon 2014

Hugo Herbelin and Danko Ilik

Lecture 1 . Constructive proofs in continuation passing style (CPS). The case of completeness of intuitionistic logic w.r.t. Kripke models

14/01/2014 -- Danko

The purpose of this lecture was to show that CPS can also be useful for writing proofs in intuitionistic logic. CPS is a technique of general interest, not exhausted by the connection to double-negation translations -- it is most useful if combined with other computational side-effects besides continuations, like the exception monad (corresponding to logical A-translation) and state/reader monad. In this lecture, we illustrated the technique on the problem of completeness of Kripke models.

We used the Agda proof assistant, and gave a homework to do using it. If you would like do it, but are having trouble installing Agda, we prepared for you a custom ISO image of Debian linux with Agda preinstalled, which you can copy on a USB stick and boot up from, or run in a virtual machine (using VirtualBox, Gnome Boxes, VmWare, ...).

Files from the lecture:

KripkeCompleteness.agda -- NBE for minimal logic

KripkeCompletenessCPS.agda -- NBE for disjunction

Homework:

Extend KripkeCompletenessCPS.agda for conjunction. You may first want to do it inside KripkeCompleteness.agda. Extend KripkeCompletenessCPS.agda with a zero, successor and recursor (at higher types), obtaining NBE for Gödel's System T with sum types.

Lecture 3 . Reifying CPS proofs: direct style constructive systems based on delimiting control operators and their meta-mathematical properties

16/01/2014 -- Danko

Lecture 4 . Generalizing proving with control to proving with effects. Monotone memory access simplifies Kripke and Gödel's completeness proofs. Direct proof of Open Induction on Cantor Space using delimited control.

17/01/2014 -- Danko