Gradualizing the Calculus of Inductive Constructions - Inria - Institut national de recherche en sciences et technologies du numérique
Article Dans Une Revue ACM Transactions on Programming Languages and Systems (TOPLAS) Année : 2022

Gradualizing the Calculus of Inductive Constructions

Résumé

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
Origine Fichiers produits par l'(les) auteur(s)

Dates et 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)

Identifiants

Citer

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⟩
903 Consultations
442 Téléchargements

Altmetric

Partager

More