Failure is Not an Option An Exceptional Type Theory

Abstract : We define the exceptional translation, a syntactic translation of the Calculus of Inductive Constructions (CIC) into itself, that covers full dependent elimination. The new resulting type theory features call-by-name exceptions with decidable type-checking and canonicity, but at the price of inconsistency. Then, noticing parametricity amounts to Kreisel's realizability in this setting, we provide an additional layer on top of the exceptional translation in order to tame exceptions and ensure that all exceptions used locally are caught, leading to the parametric exceptional translation which fully preserves consistency. This way, we can consistently extend the logical expressivity of CIC with independence of premises, Markov's rule, and the negation of function extensionality while retaining η-expansion. As a byproduct, we also show that Markov's principle is not provable in CIC. Both translations have been implemented in a Coq plugin, which we use to formalize the examples.
Document type :
Conference papers
Complete list of metadatas

Cited literature [10 references]  Display  Hide  Download

https://hal.inria.fr/hal-01840643
Contributor : Nicolas Tabareau <>
Submitted on : Monday, July 16, 2018 - 3:30:59 PM
Last modification on : Tuesday, March 26, 2019 - 9:25:22 AM
Long-term archiving on : Wednesday, October 17, 2018 - 3:52:29 PM

File

main.pdf
Files produced by the author(s)

Identifiers

Citation

Pierre-Marie Pédrot, Nicolas Tabareau. Failure is Not an Option An Exceptional Type Theory. ESOP 2018 - 27th European Symposium on Programming, Apr 2018, Thessaloniki, Greece. pp.245-271, ⟨10.1007/978-3-319-89884-1_9⟩. ⟨hal-01840643⟩

Share

Metrics

Record views

632

Files downloads

162