MetaCoq aims to provide the first fully-certified realistic implementation of a type checker for the full calculus underlying the Coq proofassistant . We show how theoretical tools such as bidirectional type-checking, Tait-Martin-L\”of/Takahashi’s confluence proof technique and monadic anddependently-typed programming can help construct the following artefacts: aspecification of Coq’s syntax and type theory, the Polymorphic Cumulative CumulativeCalculus of (Co)-Inductive Constructions (PCUIC); a monad for the manipulation of raw syntax and interaction with Coq system; a verification of PCUIC’smetatheory, whose main results are the confluence of reduction, typepreservation and principality of typing; a realistic, correct and completetype-checker for PCIC . We also provide a sound type and proof erasure procedure from the PCUic tountyped lambda-calculus, i.e., the core of the extraction mechanism of . Coq, i .e. i.uic; a well-designed type erasures procedure .

Author(s) : Matthieu Sozeau

Links : PDF - Abstract

Code :
Coursera

Keywords : type - pcuic - procedure - syntax - proof -

Leave a Reply

Your email address will not be published. Required fields are marked *