A Classical Sequent Calculus with Dependent Types - Laboratoire Preuves, Programmes et Systèmes Access content directly
Conference Papers Year : 2017

A Classical Sequent Calculus with Dependent Types

Abstract

Dependent types are a key feature of type systems, typically used in the context of both richly-typed programming languages and proof assistants. Control operators, which are connected with classical logic along the proof-as-program correspondence, are known to misbehave in the presence of dependent types, unless dependencies are restricted to values. We place ourselves in the context of the sequent calculus which has the ability to smoothly provide control under the form of the µ operator dual to the common "let" operator, as well as to smoothly support abstract machine and continuation-passing style interpretations. We start from the call-by-value version of the λμμ̃ language and design a minimal language with a value restriction and a type system that includes a list of explicit dependencies and maintains type safety. We then show how to relax the value restriction and introduce delimited continuations to directly prove the consistency by means of a continuation-passing-style translation. Finally, we relate our calculus to a similar system by Lepigre , and present a methodology to transfer properties from this system to our own.
Fichier principal
Vignette du fichier
dL.pdf (496.57 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-01375977 , version 1 (03-10-2016)
hal-01375977 , version 2 (19-12-2016)
hal-01375977 , version 3 (20-01-2017)

Licence

Copyright

Identifiers

  • HAL Id : hal-01375977 , version 3

Cite

Étienne Miquey. A Classical Sequent Calculus with Dependent Types . 26th European Symposium on Programming, Apr 2017, Uppsala, Sweden. ⟨hal-01375977v3⟩
462 View
274 Download

Share

Gmail Facebook X LinkedIn More