radeusgd / GADT-thesis

The repository containing Coq proofs attached to my master's thesis - Formal foundations for Generalized Algebraic Data Types in Scala
https://github.com/radeusgd/pDOT-GADT
0 stars 0 forks source link
coq formal-methods gadt scala

GADT-thesis

Compile the Proofs

This is the repository containing Coq proofs attached to my master's thesis.

Structure of the repository

Building the proofs

The proofs require Coq 8.13.0 and the TLC library. The easiest way to obtain them is to use OPAM:

opam repo add coq-released http://coq.inria.fr/opam/released
opam pin add coq 8.13.0
opam install -j4 coq-tlc

The next step is to prepare the dependencies - the standard and extended formalizations of pDOT. This can be done by running the script refresh_dependencies.sh.

Each subproject can be compiled by running make in its corresponding subdirectory. However, the sub-projects depend on each other, so lambda2Gmu should be compiled before lambda2Gmu_annotated and both of these subprojects should be compiled before translation_pdot or translation_extended.

Useful links

Papers