Fetching contributors…
Cannot retrieve contributors at this time
13 lines (8 sloc) 780 Bytes

Type Soundness for Dependent Object Types (DOT)

Mechanization in Coq

The Coq scripts compile with the command make, using coqc --version 8.4pl6 (July 2015).

  • dot.v -- model and common infrastructure and lemmas
  • dot_soundness.v -- main soundness proof, based on subtyping transitivity pushback
  • dot_soundness_alt.v -- alternative soundness proof, based on directly invertible value typing aka possible types
  • dot_exs.v -- some examples, just sanity checks for expressivity

Appendix A of the paper, Type Soundness for Dependent Object Types (DOT) (PDF), outlines a correspondence between the formalism on paper and in Coq.