Section: New Results
Coq as a functional programming language
Participants : Pierre Boutillier, Guillaume Claret, Lourdes Del Carmen González Huesca, Hugo Herbelin, Pierre Letouzey, Matthias Puech, Yann Régis-Gianas, Matthieu Sozeau.
Type classes and libraries
Type Classes are heavily used in the HoTT/Coq library (http://github.com/HoTT/coq ) developed by the Univalent Foundations program at the IAS, to which Matthieu Sozeau participated.
How to encode structurally dependent pattern matching into case analysis by hand has been described by Jean François Monin in  . Pierre Boutillier, with the help of Thomas Braibant (GALLIUM team), has mechanized this process and exhibited a missing part to make it scale. These are the main results presented in Pierre Boutillier's forthcoming thesis.
Incrementality in proof languages
Lourdes González and Yann Régis-Gianas studied incremental computing and self-adjusting computation  as a starting point to develop an applicative notion of change over data structures, to be applied to lambda-terms. They formalized in Coq a notion of derivative of an inductive function to define how to compute a new result from an input that has changed, this is done by using the derivative of the function and the difference on inputs and old outputs. They are working out a technique that allows a specification of functions using derivatives and old inputs and outputs including a cost analysis of the benefits of reusing previous computations.
In collaboration with Beta Ziliani (MPI), In the context of the ANR project Paral-ITP, Lourdes del Carmen González Huesca, Guillaume Claret and Yann Régis-Gianas developed a new technique for proof-by-reflection based on a notion of a posteriori simulation of effectful computations in Coq. This work has been presented at ITP 2013 ( ).