Skip to content

Releases: MetaCoq/metacoq

MetaCoq 1.0alpha for Coq 8.9

27 Sep 16:58
Compare
Choose a tag to compare
Pre-release

We're happy to announce the first alpha release of the MetaCoq project for Coq 8.8 and 8.9, available both as sources and as opam packages. See the website for introductory material and related articles and presentations.

MetaCoq was formerly called Template-Coq, but now also includes a (work-in-progress) formalisation of Coq in Coq, a verified type checker for Coq, and a verified type and proof erasure procedure, besides the tools for manipulating Coq terms and developing certified plugins (i.e. translations, compilers or tactics) in Coq provided by Template-Coq.

You can install it directly from sources or by typing opam install coq-metacoq.

The current release includes several subpackages, which can be compiled and installed separately if wanted:

  • the Template-Coq quoting library (in directory template-coq and as coq-metacoq-template)
  • a partial type-checker for Coq (checker / coq-metacoq-checker), usable as MetaCoq Check test.
  • a formalisation of meta-theoretical properties of PCUIC, the calculus underlying Coq (pcuic / coq-metacoq-pcuic)
  • a total verified type-checker for Coq (safechecker / coq-metacoq-safechecker), usable as MetaCoq SafeCheck test
  • a verified type and proof erasure function for Coq (erasure / coq-metacoq-erasure), usable as MetaCoq Erase test
  • a set of example translations from Type Theory to Type Theory (translation/ coq-metacoq-translations).

A good place to start are the files demo.v, safechecker_test.v, erasure_test.v in the test-suite directory.

MetaCoq is developed by Abhishek Anand, Simon Boulier, Cyril Cohen, Yannick Forster, Gregory Malecha, Matthieu Sozeau, Nicolas Tabareau and Théo Winterhalter.
Please contribute by opening issues or asking questions on gitter.

Best,
The MetaCoq Team

MetaCoq 1.0alpha for Coq 8.8

27 Sep 16:37
Compare
Choose a tag to compare
Pre-release

We're happy to announce the first alpha release of the MetaCoq project for Coq 8.8 and 8.9, available both as sources and as opam packages. See the website for introductory material and related articles and presentations.

MetaCoq was formerly called Template-Coq, but now also includes a (work-in-progress) formalisation of Coq in Coq, a verified type checker for Coq, and a verified type and proof erasure procedure, besides the tools for manipulating Coq terms and developing certified plugins (i.e. translations, compilers or tactics) in Coq provided by Template-Coq.

You can install it directly from sources or by typing opam install coq-metacoq.

The current release includes several subpackages, which can be compiled and installed separately if wanted:

  • the Template-Coq quoting library (in directory template-coq and as coq-metacoq-template)
  • a partial type-checker for Coq (checker / coq-metacoq-checker), usable as MetaCoq Check test.
  • a formalisation of meta-theoretical properties of PCUIC, the calculus underlying Coq (pcuic / coq-metacoq-pcuic)
  • a total verified type-checker for Coq (safechecker / coq-metacoq-safechecker), usable as MetaCoq SafeCheck test
  • a verified type and proof erasure function for Coq (erasure / coq-metacoq-erasure), usable as MetaCoq Erase test
  • a set of example translations from Type Theory to Type Theory (translation/ coq-metacoq-translations).

A good place to start are the files demo.v, safechecker_test.v, erasure_test.v in the test-suite directory.

MetaCoq is developed by Abhishek Anand, Simon Boulier, Cyril Cohen, Yannick Forster, Gregory Malecha, Matthieu Sozeau, Nicolas Tabareau and Théo Winterhalter.
Please contribute by opening issues or asking questions on gitter.

Best,
The MetaCoq Team

Template-Coq v2.1~beta3 for Coq 8.8

14 Aug 11:27
Compare
Choose a tag to compare
Pre-release

This release reflects the current status of the Coq 8.8 branch of Template-Coq. It is not feature-complete but stability is expected for:

  • The Coq term AST, which reflects all the kernel Coq terms
  • The interfaces of the universe graph.
  • The Coq entries and declaration Asts, which reflect the structures to get declarations in and out of the kernel.
  • The interface of the checker/type-inference algorithm.
  • The template monad features (currently runnable in Coq only)

Work is in progress on:

  • The formalization of the typing derivations, in particular the missing pieces on (co)-fixpoints and inductives.
  • The correctness proofs of the typechecker.
  • The formalization of the extraction algorithm, stripping proof terms from Coq terms.

This release significantly departs from and is incompatible with series 1 by Gregory Malecha (see https://github.com/gmalecha/template-coq/releases) and the previous 8.6 and 8.7 versions.

Template-Coq v2.1~beta2 for Coq 8.8

08 Aug 10:23
c81ffca
Compare
Choose a tag to compare
Pre-release

This release reflects the current status of the Coq 8.8 branch of Template-Coq. It is not feature-complete but stability is expected for:

  • The Coq term AST, which reflects all the kernel Coq terms
  • The interfaces of the universe graph.
  • The Coq entries and declaration Asts, which reflect the structures to get declarations in and out of the kernel.
  • The interface of the checker/type-inference algorithm.
  • The template monad features (currently runnable in Coq only)

Work is in progress on:

  • The formalization of the typing derivations, in particular the missing pieces on (co)-fixpoints and inductives.
  • The correctness proofs of the typechecker.
  • The formalization of the extraction algorithm, stripping proof terms from Coq terms.

This release significantly departs from and is incompatible with series 1 by Gregory Malecha (see https://github.com/gmalecha/template-coq/releases) and the previous 8.6 and 8.7 versions.

Template-Coq v2.1-beta for Coq 8.8

10 Jul 13:46
Compare
Choose a tag to compare
Pre-release

This release reflects the current status of the Coq 8.8 branch of Template-Coq. It is not feature-complete but stability is expected for:

  • The Coq term AST, which reflects all the kernel Coq terms
  • The interfaces of the universe graph.
  • The Coq entries and declaration Asts, which reflect the structures to get declarations in and out of the kernel.
  • The interface of the checker/type-inference algorithm.
  • The template monad features (currently runnable in Coq only)

Work is in progress on:

The formalization of the typing derivations, in particular the missing pieces on (co)-fixpoints and inductives.
The correctness proofs of the typechecker.
This release significantly departs from and is incompatible with series 1 by Gregory Malecha (see https://github.com/gmalecha/template-coq/releases) and the previous 8.6 and 8.7 versions.

v2.0-beta

15 Feb 15:30
Compare
Choose a tag to compare
v2.0-beta Pre-release
Pre-release

This release reflects the current status of the Coq 8.7 branch of Template-Coq. It is not feature-complete but stability is expected for:

  • The Coq term AST, which reflects all the kernel Coq terms
  • The interfaces of the universe graph.
  • The Coq entries and declaration Asts, which reflect the structures to get declarations in and out of the kernel.
  • The interface of the checker/type-inference algorithm.
  • The template monad features (currently runnable in Coq only)

Work is in progress on:

  • The formalization of the typing derivations, in particular the missing pieces on (co)-fixpoints and inductives.
  • The correctness proofs of the typechecker.

This release significantly departs from and is incompatible with series 1 by Gregory Malecha (see https://github.com/gmalecha/template-coq/releases) and the 8.6 version (branch master on github and coq-template-coq.8.6.dev on opam)