Skip to content

Coq formalisation of an Abstract Pattern-Matching / Abstract Focussing calculus - semantics and normalisation

Notifications You must be signed in to change notification settings

disteph/AbsPatternMatch

Repository files navigation

AbsPatternMatch

This is the formalisation, in the proof assistant Coq, of Abstract Pattern-Matching / Abstract Focussing. The language is described in Part II of the Habilitation thesis.

Compatibility: This formalisation is done in Coq v8.4.6 and Ssreflect 1.6.1, both available from opam, the package manager for OCaml (e.g. opam install coq.8.4.6 coq-mathcomp-ssreflect.1.6.1). Porting to more recent versions of Coq and ssreflect is on the to-do list.

The formalisation covers the abstract pattern-matching / abstract focussing language, its realisability semantics, its abstract machine and the proof of normalisation. The correspondence with the chapters is given below:

Base file: Basic.v

Chapter 4: Subsumed by Chapter 5

Chapter 5:

LAF system (with quantifiers): LAF.v 

Chapter 6:

Realisability models and Adequacy Lemma: Semantics.v
LAF system with Eigenvariables: LAFwE.v
Realisability models with Eigenvariables and Adequacy Lemma: SemanticswE.v 

Chapter 7:

Normalisation theory: NormalisationTheory.v
Abstract Machines and Head normalisation: HeadReduction.v
LAF system with Explicit Label Updates, renamings: LAFwEL.v
Deriving properties from Non-empty realisability models: SemanticsNE.v 

All the files for the version with quantifiers: First-order.tar.gz

About

Coq formalisation of an Abstract Pattern-Matching / Abstract Focussing calculus - semantics and normalisation

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published