Gradualizing the Calculus of Inductive Constructions

11/20/2020
by   Meven Lennon-Bertrand, et al.
0

Acknowledging the ordeal of a fully formal development in a proof assistant such as Coq, 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 that encompasses all three variations, and develop their metatheory. We first present a bidirectional elaboration of Gradual CIC to a dependently-typed cast calculus, which elucidates the interrelation between typing, conversion, and the gradual guarantees. We use a syntactic model into CIC to inform the design of a safe, confluent reduction, and establish, when applicable, normalization. We also study the stronger notion of graduality as 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.

READ FULL TEXT
research
10/11/2017

Consistency of the Predicative Calculus of Cumulative Inductive Constructions (pCuIC)

In order to avoid well-know paradoxes associated with self-referential d...
research
03/23/2023

A Formal Proof of the Strong Normalization Theorem for System T in Agda

We present a framework for the formal meta-theory of lambda calculi in f...
research
02/12/2021

Complete Bidirectional Typing for the Calculus of Inductive Constructions

This article presents a bidirectional type system for the Calculus of In...
research
09/02/2022

A Reasonably Gradual Type Theory

Gradualizing the Calculus of Inductive Constructions (CIC) involves deal...
research
10/07/2022

Strong Normalization for the Calculus of Constructions

The calculus of constructions (CC) is a core theory for dependently type...
research
08/24/2019

Dependent Pearl: Normalization by realizability

For those of us who generally live in the world of syntax, semantic proo...
research
03/02/2022

Characteristics of de Bruijn's early proof checker Automath

The `mathematical language' Automath, conceived by N.G. de Bruijn in 196...

Please sign up or login with your details

Forgot password? Click here to reset