Section: New Results

Metatheory of Coq and beyond

Participants : Pierre Boutillier, Hugo Herbelin, Yann Régis-Gianas, Jeffrey Sarnat, Vincent Siles, Matthieu Sozeau, Noam Zeilberger.

From the work he has done last year on the Coq termination checker. Pierre Boutillier wrote an article to describe formally the exact new Coq implementation of a structural guard condition that handles commutative cuts.

Calculus of inductive constructions and typed equality

The work of Hugo Herbelin and Vincent Siles on the equivalence of Pure Type Systems with typed or untyped equality has been accepted for publication [11] .

Proofs of higher-order programs

Jeffrey Sarnat and Noam Zeilberger continued to investigate the classical program transformations of continuation-passing-style translation and defunctionalisation [46] , from the point-of-view of their effect on the termination proofs of higher-order programs. The practical aim of these investigations is to develop a more systematic understanding of termination proofs, which eventually could result in a compiler from proof assistants with higher-order reasoning (such as Coq) to ones with only first-order reasoning (such as Twelf)


Matthieu Sozeau and Hugo Herbelin worked on improving the unification algorithm of Coq, making it more predictable and resolving important soundness issues (e.g. type-checking, dealing with universes). In collaboration with Beta Ziliani at (PhD student at MPI Sarbrucken) and Aleksandar Nanevski (Resarcher at IMDEA Madrid), Matthieu Sozeau started a project to formalize (on paper) the improved unification algorithm, taking into account advanced features such as canonical structures and type classes. This will give a detailed view of the system to power users like [33] and improve the system to handle the delicate usage patterns developed in the Mathematical Components team at MSR to scale Coq to large formalizations.