The Implicit Calculus of Constructions as a Programming Language with Dependent Types - Inria - Institut national de recherche en sciences et technologies du numérique Accéder directement au contenu
Communication Dans Un Congrès Année : 2007

The Implicit Calculus of Constructions as a Programming Language with Dependent Types

Résumé

In this paper, we show how Miquel's Implicit Calculus of Constructions (ICC) can be used as a programming language featuring dependent types. Since this system has an undecidable type-checking, we introduce a more verbose variant, called ICC* which fixes this issue. Datatypes and program specifications are enriched with logical assertions (such as preconditions, postconditions, invariants) and programs are decorated with proofs of those assertions. The point of using ICC* rather than the Calculus of Constructions (the core formalism of the Coq proof assistant) is that all of the static information (types and proof objects) is transparent, in the sense that it does not affect the computational behavior. This is concretized by a built-in extraction procedure that removes this static information. We also illustrate the main features of ICC* on classical examples of dependently typed programs.
Fichier principal
Vignette du fichier
icc_barras_bernardo-tpr07.pdf (143.42 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

inria-00432658 , version 1 (16-11-2009)

Identifiants

  • HAL Id : inria-00432658 , version 1

Citer

Bruno Barras, Bruno Bernardo. The Implicit Calculus of Constructions as a Programming Language with Dependent Types. International Workshop on Type theory, proof theory, and rewriting (TPR'07), Gilles Dowek, Jun 2007, Paris, France. ⟨inria-00432658⟩
127 Consultations
547 Téléchargements

Partager

Gmail Facebook X LinkedIn More