Skip to content

Releases: MetaCoq/metacoq

MetaCoq 1.0 for Coq 8.16

01 Jul 12:47
Compare
Choose a tag to compare

We are happy to announce release 1.0 of the MetaCoq project for Coq 8.14, 8.15, and 8.16, available both as sources and as opam packages. See the website for a detailed overview of the project, introductory material and related articles and presentations.

MetaCoq integrates Template-Coq, a reification and denotation plugin for Coq terms and global declarations, a Template monad for metaprogramming (including the ability to extract these metaprograms to ocaml for efficiency), a formalisation of Coq's calculus PCUIC in Coq, a relatively efficient, correct and complete type checker for PCUIC, and a verified type and proof erasure procedure from PCUIC to untyped lambda calculus. MetaCoq provides a low-level interface to develop certified plugins like translations, compilers or tactics in Coq itself.

You can install MetaCoq directly from sources or by typing opam install coq-metacoq.
This release will also be included in an upcoming Coq Platform.

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

  • the Template-Coq quoting library (in directory template-coq and as coq-metacoq-template)
  • 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 inside Coq or extracted to OCaml as MetaCoq SafeCheck <term>
  • a verified type and proof erasure function for Coq (erasure / coq-metacoq-erasure), usable inside Coq or extracted to OCaml as MetaCoq Erase <term>
  • 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, Danil Annenkov, Jakob Botsch Nielsen, Simon Boulier, Cyril Cohen, Yannick Forster, Meven Lennon-Bertrand, Kenji Maillard, Gregory Malecha, Matthieu Sozeau, Nicolas Tabareau, and Théo Winterhalter. You are welcome to contribute by opening issues and PRs. A MetaCoq Zulip stream is also available.

The MetaCoq Team

MetaCoq 1.0-beta2 for Coq 8.13

20 Jan 14:38
Compare
Choose a tag to compare
Pre-release

We're happy to announce the second beta release of the MetaCoq project for Coq 8.11, 8.12, and 8.13, 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 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, Danil Annenkov, Jakob Botsch Nielsen, Simon Boulier, Cyril Cohen, Yannick Forster, Meven Lennon-Bertrand, Kenji Maillard, Gregory Malecha, Matthieu Sozeau, Nicolas Tabareau, and Théo Winterhalter. You are welcome to contribute by opening issues, PRs or asking questions on Zulip.

The MetaCoq Team

MetaCoq 1.0-beta2 for Coq 8.12

20 Jan 14:36
ebcd89f
Compare
Choose a tag to compare
Pre-release

We're happy to announce the second beta release of the MetaCoq project for Coq 8.11, 8.12, and 8.13, 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 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, Danil Annenkov, Jakob Botsch Nielsen, Simon Boulier, Cyril Cohen, Yannick Forster, Meven Lennon-Bertrand, Kenji Maillard, Gregory Malecha, Matthieu Sozeau, Nicolas Tabareau, and Théo Winterhalter. You are welcome to contribute by opening issues, PRs or asking questions on Zulip.

The MetaCoq Team

MetaCoq 1.0-beta2 for Coq 8.11

20 Jan 14:35
8d576c7
Compare
Choose a tag to compare

We're happy to announce the second beta release of the MetaCoq project for Coq 8.11, 8.12, and 8.13, 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 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, Danil Annenkov, Jakob Botsch Nielsen, Simon Boulier, Cyril Cohen, Yannick Forster, Meven Lennon-Bertrand, Kenji Maillard, Gregory Malecha, Matthieu Sozeau, Nicolas Tabareau, and Théo Winterhalter. You are welcome to contribute by opening issues, PRs or asking questions on Zulip.

The MetaCoq Team

MetaCoq 1.0-beta1 for Coq 8.12

21 Sep 14:42
6fc160a
Compare
Choose a tag to compare
Pre-release

We're happy to announce the first beta release of the MetaCoq project for Coq 8.11 and 8.12, 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.
You are welcome to contribute by opening issues, PRs or asking questions on Zulip.

The MetaCoq Team

MetaCoq 1.0-beta1 for Coq 8.11

21 Sep 13:13
df8ef08
Compare
Choose a tag to compare
Pre-release

We're happy to announce the first beta release of the MetaCoq project for Coq 8.11 and 8.12, 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.
You are welcome to contribute by opening issues, PRs or asking questions on Zulip.

The MetaCoq Team

MetaCoq 1.0alpha2 for Coq 8.10

10 Mar 14:01
b960d7d
Compare
Choose a tag to compare
Pre-release

We're happy to announce the second alpha release of the MetaCoq project for Coq 8.10 and 8.11, 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.0-alpha2 for Coq 8.11

10 Mar 14:05
Compare
Choose a tag to compare
Pre-release

We're happy to announce the second alpha release of the MetaCoq project for Coq 8.10 and 8.11, 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

Coq Coq Correct!

16 Nov 13:24
914e4c6
Compare
Choose a tag to compare

Snapshot of MetaCoq - accompanying material of the article:

Matthieu Sozeau, Simon Boulier, Yannick Forster, Nicolas Tabareau, and Théo Winterhalter. 2020. Coq Coq Correct! Verification of Type Checking and Erasure for Coq, in Coq. Proc. ACM Program. Lang. 4, POPL, Article 8 (January 2020), 28 pages. https://doi.org/10.1145/3371076

See the README.md file for instructions on how to install and browse the sources.

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