Gradualizing the Calculus of Inductive Constructions - Inria - Institut national de recherche en sciences et technologies du numérique
Journal Articles ACM Transactions on Programming Languages and Systems (TOPLAS) Year : 2022

Gradualizing the Calculus of Inductive Constructions

Abstract

We investigate gradual variations on the Calculus of Inductive Construction (CIC) for swifter prototyping with imprecise types and terms. We observe, with a no-go theorem, a crucial tradeoff between graduality and the key properties of normalization and closure of universes under dependent product that CIC enjoys. Beyond this Fire Triangle of Graduality, we explore the gradualization of CIC with three different compromises, each relaxing one edge of the Fire Triangle. We develop a parametrized presentation of Gradual CIC (GCIC) that encompasses all three variations, and develop their metatheory. We first present a bidirectional elaboration of GCIC to a dependently-typed cast calculus, CastCIC, which elucidates the interrelation between typing, conversion, and the gradual guarantees. We use a syntactic model of CastCIC to inform the design of a safe, confluent reduction, and establish, when applicable, normalization. We study the static and dynamic gradual guarantees as well as the stronger notion of graduality with embedding-projection pairs formulated by New and Ahmed, using appropriate semantic model constructions. This work informs and paves the way towards the development of malleable proof assistants and dependently-typed programming languages.
Fichier principal
Vignette du fichier
main.pdf (1.09 Mo) Télécharger le fichier
Origin Files produced by the author(s)

Dates and versions

hal-02896776 , version 1 (10-07-2020)
hal-02896776 , version 2 (20-11-2020)
hal-02896776 , version 3 (27-09-2021)
hal-02896776 , version 4 (09-11-2021)
hal-02896776 , version 5 (17-11-2021)

Identifiers

Cite

Meven Lennon-Bertrand, Kenji Maillard, Nicolas Tabareau, Éric Tanter. Gradualizing the Calculus of Inductive Constructions. ACM Transactions on Programming Languages and Systems (TOPLAS), 2022, ⟨10.1145/3495528⟩. ⟨hal-02896776v5⟩
898 View
435 Download

Altmetric

Share

More