Abhishek Anand
Yves Bertot
Frédéric Besson
Lasse Blaauwbroek
Simon Boulier
Quentin Carbonneaux
Tej Chajed
Arthur Charguéraud
Cyril Cohen
Pierre Courtieu
Matthew Dempsky
Maxime Dénès
Andres Erbsen
Erika (@rrika)
Nikita Eshkeev
Jim Fehrle
Emilio Jesús Gallego Arias
Paolo G. Giarrusso
Gaëtan Gilbert
Jason Gross
Samuel Gruetter
Attila Gáspár
Hugo Herbelin
Jasper Hugunin
Jan-Oliver Kaiser
Robbert Krebbers
Vincent Laporte
Olivier Laurent
Xavier Leroy
Thomas Letan
Yishuai Li
Kenji Maillard
Erik Martin-Dorel
Guillaume Melquiond
Ike Mulder
Guillaume Munch-Maccagnoni
Antonio Nikishaev
Karl Palmskog
Pierre-Marie Pédrot
Clément Pit-Claudel
Ramkumar Ramachandra
Lars Rasmusson
Daniel de Rauglaudre
Talia Ringer
Pierre Roux
Kazuhiko Sakaguchi
@scinart
Vincent Semeria
Kartik Singhal
Michael Soegtrop
Matthieu Sozeau
Enrico Tassi
Laurent Théry
Ralf Treinen
Anton Trunov
Bernhard M. Wiedemann
Xia Li-yao
Nickolai Zeldovich
Théo Zimmermann
The Coq Development Team
2020-07-27
<p>Coq is a formal proof management system. It provides a formal language to write mathematical definitions, executable algorithms and theorems together with an environment for semi-interactive development of machine-checked proofs. Typical applications include the certification of properties of programming languages (e.g. the <a href="http://compcert.inria.fr">CompCert</a> compiler certification project, the <a href="http://vst.cs.princeton.edu/">Verified Software Toolchain</a> for verification of C programs, or the <a href="https://iris-project.org">Iris</a> framework for concurrent separation logic), the formalization of mathematics (e.g. the full formalization of the <a href="https://hal.inria.fr/hal-00816699">Feit-Thompson theorem</a>, or <a href="http://homotopytypetheory.org/coq/">homotopy type theory</a>), and teaching.</p>
<p>Coq version 8.12 integrates many usability improvements, in particular with respect to notations, scopes and implicit arguments, along with many bug fixes and major improvements to the reference manual. The main changes include:</p>
<ul>
<li>
<p>New <a href="https://coq.github.io/doc/v8.12/refman/changes.html#implicit">binder notation</a> for non-maximal implicit arguments using <code>[ ]</code> allowing to set and see the implicit status of arguments immediately.</p>
</li>
<li>
<p>New notation <code>Inductive I A | x : s := ...</code> to distinguish the <a href="https://coq.github.io/doc/v8.12/refman/changes.html#uniform">uniform</a> from the non-uniform parameters in inductive definitions.</p>
</li>
<li>
<p>More robust and expressive treatment of <a href="https://coq.github.io/doc/v8.12/refman/changes.html#implicitinductive">implicit inductive</a> parameters in inductive declarations.</p>
</li>
<li>
<p>Improvements in the treatment of implicit arguments and partially applied constants in <a href="https://coq.github.io/doc/v8.12/refman/changes.html#notations">notations</a>, parsing of hexadecimal number notation and better handling of scopes and coercions for printing.</p>
</li>
<li>
<p>A correct and efficient <a href="https://coq.github.io/doc/v8.12/refman/changes.html#coercions">coercion coherence</a> checking algorithm, avoiding spurious or duplicate warnings.</p>
</li>
<li>
<p>An improved <a href="https://coq.github.io/doc/v8.12/refman/proof-engine/vernacular-commands.html#coq:cmd.search"><code>Search</code></a> <a href="https://coq.github.io/doc/v8.12/refman/changes.html#search">command</a> which accepts complex queries. Note that this takes precedence over the now deprecated <a href="https://coq.github.io/doc/v8.12/refman/changes.html#ssrsearch">ssreflect search</a>.</p>
</li>
<li>
<p>Many additions and improvements of the <a href="https://coq.github.io/doc/v8.12/refman/changes.html#stdlib">standard library</a>.</p>
</li>
<li>
<p>Improvements to the <a href="https://coq.github.io/doc/v8.12/refman/changes.html#refman">reference manual</a> include a more logical organization of chapters along with updated syntax descriptions that match Coq's grammar in most but not all chapters.</p>
</li>
</ul>
<p>Additionally, the <a href="https://coq.github.io/doc/v8.12/refman/addendum/omega.html#coq:tacn.omega"><code>omega</code></a> tactic is deprecated in this version of Coq, and we recommend users to switch to <a href="https://coq.github.io/doc/v8.12/refman/addendum/micromega.html#coq:tacn.lia"><code>lia</code></a> in new proof scripts (see also the warning message in the <a href="https://coq.github.io/doc/v8.12/refman/addendum/omega.html#omega-chapter">corresponding chapter</a>).</p>
<p>See the <a href="https://coq.github.io/doc/v8.12/refman/changes.html#changes-in-8-12-beta1">Changes in 8.12+beta1</a> section and following sections for the detailed list of changes, including potentially breaking changes marked with <strong>Changed</strong>.</p>
<p>Coq's documentation is available at <a href="https://coq.github.io/doc/v8.12/refman">https://coq.github.io/doc/v8.12/refman</a> (reference manual), and <a href="https://coq.github.io/doc/v8.12/stdlib">https://coq.github.io/doc/v8.12/stdlib</a> (documentation of the standard library). Developer documentation of the ML API is available at <a href="https://coq.github.io/doc/v8.12/api">https://coq.github.io/doc/v8.12/api</a>.</p>
<p>Maxime Dénès, Emilio Jesús Gallego Arias, Gaëtan Gilbert, Michael Soegtrop and Théo Zimmermann worked on maintaining and improving the continuous integration system and package building infrastructure.</p>
<p>Erik Martin-Dorel has maintained the <a href="https://hub.docker.com/r/coqorg/coq">Coq Docker images</a> that are used in many Coq projects for continuous integration.</p>
<p>The OPAM repository for Coq packages has been maintained by Guillaume Claret, Karl Palmskog, Matthieu Sozeau and Enrico Tassi with contributions from many users. A list of packages is available at <a href="https://coq.inria.fr/opam/www/">https://coq.inria.fr/opam/www/</a>.</p>
<p>Previously, most components of Coq had a single principal maintainer. This was changed in 8.12 (<a href="https://github.com/coq/coq/pull/11295">#11295</a>) so that every component now has a team of maintainers, who are in charge of reviewing and merging incoming pull requests. This gave us a chance to significantly expand the pool of maintainters and provide faster feedback to contributors. Special thanks to all our maintainers!</p>
<p>Our current 31 maintainers are Yves Bertot, Frédéric Besson, Tej Chajed, Cyril Cohen, Pierre Corbineau, Pierre Courtieu, Maxime Dénès, Jim Fehrle, Julien Forest, Emilio Jesús Gallego Arias, Gaëtan Gilbert, Georges Gonthier, Benjamin Grégoire, Jason Gross, Hugo Herbelin, Vincent Laporte, Assia Mahboubi, Kenji Maillard, Guillaume Melquiond, Pierre-Marie Pédrot, Clément Pit-Claudel, Kazuhiko Sakaguchi, Vincent Semeria, Michael Soegtrop, Arnaud Spiwack, Matthieu Sozeau, Enrico Tassi, Laurent Théry, Anton Trunov, Li-yao Xia, Théo Zimmermann</p>
<p>The 59 contributors to this version are Abhishek Anand, Yves Bertot, Frédéric Besson, Lasse Blaauwbroek, Simon Boulier, Quentin Carbonneaux, Tej Chajed, Arthur Charguéraud, Cyril Cohen, Pierre Courtieu, Matthew Dempsky, Maxime Dénès, Andres Erbsen, Erika (@rrika), Nikita Eshkeev, Jim Fehrle, @formalize, Emilio Jesús Gallego Arias, Paolo G. Giarrusso, Gaëtan Gilbert, Jason Gross, Samuel Gruetter, Attila Gáspár, Hugo Herbelin, Jan-Oliver Kaiser, Robbert Krebbers, Vincent Laporte, Olivier Laurent, Xavier Leroy, Thomas Letan, Yishuai Li, Kenji Maillard, Erik Martin-Dorel, Guillaume Melquiond, Ike Mulder, Guillaume Munch-Maccagnoni, Antonio Nikishaev, Karl Palmskog, Pierre-Marie Pédrot, Clément Pit-Claudel, Ramkumar Ramachandra, Lars Rasmusson, Daniel de Rauglaudre, Talia Ringer, Pierre Roux, Kazuhiko Sakaguchi, Vincent Semeria, @scinart, Kartik Singhal, Michael Soegtrop, Matthieu Sozeau, Enrico Tassi, Laurent Théry, Ralf Treinen, Anton Trunov, Bernhard M. Wiedemann, Li-yao Xia, Nickolai Zeldovich and Théo Zimmermann.</p>
<p>Many power users helped to improve the design of this new version via the GitHub issue and pull request system, the Coq development mailing list <a href="mailto:coqdev%40inria.fr">coqdev@inria.fr</a>, the <a href="mailto:coq-club%40inria.fr">coq-club@inria.fr</a> mailing list, the <a href="https://coq.discourse.group/">Discourse forum</a> and the new <a href="http://coq.zulipchat.com">Coq Zulip chat</a> (thanks to Cyril Cohen for organizing the move from Gitter).</p>
<p>Version 8.12's development spanned 6 months from the release of Coq 8.11.0. Emilio Jesus Gallego Arias and Théo Zimmermann are the release managers of Coq 8.12. This release is the result of ~500 PRs merged, closing ~100 issues.</p>
https://doi.org/10.5281/zenodo.4021912
oai:zenodo.org:4021912
eng
Zenodo
https://github.com/coq/coq/tree/V8.12.0
https://github.com/coq/coq/tree/V8.12.1
https://github.com/coq/coq/tree/V8.12.2
https://doi.org/10.5281/zenodo.1003420
info:eu-repo/semantics/openAccess
GNU Lesser General Public License v2.1 only
https://www.gnu.org/licenses/old-licenses/lgpl-2.1-standalone.html
proof assistant
mathematical software
formal proofs
The Coq Proof Assistant
info:eu-repo/semantics/other