Hierarchy Builder (T: 45min + Q: 15min)

Jun 15, 2022, 5:00 PM
Centre de conférences Marilyn et James Simons (Le Bois-Marie)

Centre de conférences Marilyn et James Simons

Le Bois-Marie

35, route de Chartres 91440 Bures-sur-Yvette


Prof. Cyril COHEN (INRIA)


Libraries of machine-checked code are, nowadays, organized around hierarchies of algebraic structures. Unfortunately, the language of Type Theory and the features provided by modern proof assistants make the construction of a hierarchy hard even for expert users. The difficulty begins with the non-orthogonal choices, between storing information as record fields or parameters, and between different inference mechanisms. To this, one may add the concerns about performance and about the usability, by a non-expert, of the final hierarchy.

Hierarchy Builder (HB), as implemented inside the Coq proof assistant, gives library designers a language to describe the building blocks of algebraic structures and to assemble them into a hierarchy. Similarly, it provides the final user tools to build instances of structures and to inform the system how to take advantage of this knowledge during type inference. Finally, HB lets library designers improve the usability of their library by providing alternative interfaces to the primitive ones, a feature that is also useful to accommodate changes to the hierarchy without breaking user code.

This is joint work with Kazuhiko Sakaguchi and Enrico Tassi.

Presentation materials