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.
Clone or download
Pull request Compare This branch is even with coq:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.github
checker [coqchk] Fix checking of records in module signatures Oct 9, 2018
clib Merge PR coq#8738: [clib] Deprecate string functions available in OCa… Oct 16, 2018
config [dune] [test-suite] Support for running the test suite with Dune. Oct 11, 2018
coqpp Implement ARGUMENT EXTEND in coqpp. Oct 15, 2018
dev
doc Document the issue with positive coinductive types. Oct 16, 2018
engine Merge PR coq#8758: [api] Qualify access to `Nametab` Oct 19, 2018
grammar Plug ARGUMENT EXTEND into the argument extension API. Oct 15, 2018
ide [clib] Deprecate string functions available in OCaml 4.05 Oct 16, 2018
interp [api] Qualify access to `Nametab` Oct 18, 2018
kernel {Univops -> Vars}.universes_of_constr Oct 16, 2018
lib [clib] Deprecate string functions available in OCaml 4.05 Oct 16, 2018
library [api] Qualify access to `Nametab` Oct 18, 2018
man Archive the `gallina` tool Jun 25, 2018
parsing Removing the Camlp5 macros from CLexer. Oct 18, 2018
plugins Merge PR coq#8758: [api] Qualify access to `Nametab` Oct 19, 2018
pretyping
printing
proofs [universes] deprecate constr_of_global Oct 18, 2018
stm
tactics
test-suite Merge PR coq#8059: Simplify code for [Definition := Eval ...] Oct 16, 2018
theories
tools [doc] [build] Remove ocamlbuild leftovers. Oct 17, 2018
topbin [dune] Add `(package coq)` scope to artifacts. Oct 3, 2018
toplevel [clib] Deprecate string functions available in OCaml 4.05 Oct 16, 2018
vernac Merge PR coq#8758: [api] Qualify access to `Nametab` Oct 19, 2018
.bintray.json Bump version number to 8.10+alpha. Sep 10, 2018
.gitattributes Make whitespace linter not check for trailing newlines. Jun 4, 2018
.gitignore Removing the Camlp5 macros from CLexer. Oct 18, 2018
.gitlab-ci.yml Merge PR coq#8546: [ci] Allow bedrock to fail. Oct 14, 2018
.mailmap
.merlin.in [dev] Autogenerate OCaml dev files. Jul 12, 2018
.ocamlinit [dune] [doc] Document `dune utop $lib` Sep 6, 2018
.travis.yml [ci] [travis] Remove CI contrib testing from Travis. Oct 2, 2018
CHANGES.md Add minimal CHANGES entry about compat notations Oct 10, 2018
CODE_OF_CONDUCT.md Trying to make the code of conduct shorter and more to the point. Aug 31, 2018
CONTRIBUTING.md Move mention of dev/doc/critical-bugs to CONTRIBUTING Aug 29, 2018
CREDITS Remove quote plugin Sep 12, 2018
INSTALL [ci] [dune] [opam] Fixes to OPAM and CI target. Oct 5, 2018
LICENSE fix pour install windows Nov 9, 2005
META.coq.in Remove romega Sep 25, 2018
Makefile
Makefile.build Adding a rule to generate grammar.cma. Oct 18, 2018
Makefile.checker Suppress useless "true bin/*.opt.exe" messages from no-op STRIP and C… Jun 30, 2018
Makefile.ci [ci] Add aac-tactics. Oct 8, 2018
Makefile.common Remove romega Sep 25, 2018
Makefile.dev [dune] [opam] Install `revision` file when building with Dune. Oct 3, 2018
Makefile.doc Include all menu entries in the menu/short TOC so that users can view Oct 10, 2018
Makefile.dune
Makefile.ide
Makefile.install Remove Emacs modes. Jul 7, 2018
Makefile.vofiles Makefile: fix undefined NATIVEFILES when -native-compute no May 30, 2018
README.md
appveyor.yml Remove packaging jobs from appveyor May 11, 2018
configure
configure.ml [configure] Use absolute path for prefix. Oct 11, 2018
coq.opam
coqide-server.opam [ide] [dune] [test-suite] Reorganize `fake_ide` build. Oct 8, 2018
coqide.opam [ide] [dune] [test-suite] Reorganize `fake_ide` build. Oct 8, 2018
default.nix Fix build of Nix package with sandbox. Oct 10, 2018
dune Merge PR coq#8681: [dune] Fix and improve flags: Oct 11, 2018
dune-project [dune] [merlin] Fix some usability issues. Sep 27, 2018
install.sh Cleanup shell expansions and quoting. Jan 16, 2018
shell.nix [default.nix] Update the reference to nixpkgs; make it the default Oct 1, 2018

README.md

Coq

pipeline status Travis Appveyor Gitter DOI

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.

Installation

Download the pre-built packages of the latest release for Windows and MacOS; read the help page on how to install Coq with OPAM; or refer to the INSTALL file for the procedure to install from source.

Documentation

The sources of the documentation can be found in directory doc. See doc/README.md to learn more about the documentation, in particular how to build it. The documentation of the last released version is available on the Coq web site at coq.inria.fr/documentation. See also Cocorico (the Coq wiki), and the Coq FAQ, for additional user-contributed documentation.

Changes

There is a file named CHANGES.md that explains the differences and the incompatibilities since last versions. If you upgrade Coq, please read it carefully.

The Coq Club

The Coq Club moderated mailing list is meant to be a standard way to discuss questions about the Coq system and related topics. The subscription link can be found at coq.inria.fr/community.

The topics to be discussed in the club should include:

  • technical problems;
  • questions about proof developments;
  • suggestions and questions about the implementation;
  • announcements of proofs;
  • theoretical questions about typed lambda-calculi which are closely related to Coq.

Bugs report

Please report any bug / feature request in our issue tracker.

To be effective, bug reports should mention the OCaml version used to compile and run Coq, the Coq version (coqtop -v), the configuration used, and include a complete source example leading to the bug.

Contributing

Guidelines for contributing to Coq in various ways are listed in the contributor's guide.

Supporting Coq

Help the Coq community grow and prosper by becoming a sponsor! The Coq Consortium can establish sponsorship contracts or receive donations. If you want to take an active role in shaping Coq's future, you can also become a Consortium member. If you are interested, please get in touch!