Emacs Lisp Isabelle OCaml Coq Makefile Standard ML Other
Clone or download
Latest commit b7f17b7 Aug 15, 2018
Permalink
Failed to load latest commit information.
acl2 Update copyright messages and improve the header of elisp files. Feb 20, 2018
ccc Cleanup Feb 7, 2012
coq Add coq-Print-Ltac to print an Ltac term Aug 7, 2018
doc Update copyright messages and improve the header of elisp files. Feb 20, 2018
easycrypt easycrypt: Don't require pg-custom: it breaks compilation Mar 8, 2017
etc Update copyright messages and improve the header of elisp files. Feb 20, 2018
generic Add a missing parameter in advice on font-lock-fontify-keywords-region Mar 7, 2018
hol-light Update copyright messages and improve the header of elisp files. Feb 20, 2018
hol98 Update copyright messages and improve the header of elisp files. Feb 20, 2018
images Update license information for new logo May 25, 2016
isar Remove mmm and ML4PG contribs and remove references to them in code a… May 24, 2017
lego Update copyright messages and improve the header of elisp files. Feb 20, 2018
lib Update copyright messages and improve the header of elisp files. Feb 20, 2018
obsolete Remove compile-time calls to proof-ready-for-assistant Mar 8, 2017
pghaskell Update copyright messages and improve the header of elisp files. Feb 20, 2018
pgocaml Update copyright messages and improve the header of elisp files. Feb 20, 2018
pgshell Update copyright messages and improve the header of elisp files. Feb 20, 2018
phox Change (eval-when (compile) ...) to (eval-when-compile ...) May 5, 2017
previous-art Update PG's logo May 25, 2016
twelf Get rid of old-style backquotes Jan 16, 2018
.gitignore fix parallel compilation and improve assertions and debugging code Oct 27, 2016
.travis.yml CI Emacs 25.3 Mar 12, 2018
AUTHORS Update the AUTHORS file. Mar 3, 2018
BUGS Emphasise importance of Trac Jan 10, 2012
CHANGES key maps + small glitch hyp highlight/folding code. Jun 11, 2018
COMPATIBILITY Refer to Apple's operating system as macOS Oct 14, 2016
COPYING GPL Jun 21, 2002
FAQ.md Fix whitespace to comply with Markdown syntax. Jul 25, 2016
INSTALL Update INSTALL Aug 15, 2018
Makefile Remove mmm and ML4PG contribs and remove references to them in code a… May 24, 2017
Makefile.devel Remove bin/proofgeneral and Update Makefiles accordingly. Apr 25, 2017
Makefile.travis CI Emacs 25.3 Mar 12, 2018
README.md Add note about PG branches and license May 29, 2018
REGISTER Fix domain name Dec 11, 2003
pg-init.el Update copyright messages and improve the header of elisp files. Feb 20, 2018
proof-general-pkg.el elpa: Add a package file and a package.el-friendly init script Mar 8, 2017

README.md

Proof General — Organize your proofs!

Build Status

Overview

Proof General is a generic Emacs interface for proof assistants. The aim of the Proof General project is to provide a powerful, generic environment for using interactive proof assistants.

This is version 4.4.1~pre of Proof General.

About Proof General branches

Two editions of Proof General are currently available:

  • the (legacy) REPL-based, stable version of Proof General, gathered in the master branch, and licensed under GPLv2;
  • the (newest) Coq-specific, experimental version of Proof General, supporting asynchronous proof processing, gathered in the async branch, and licensed under GPLv3+.

Setup

Remove old versions of Proof General, then download and install the new release from GitHub:

git clone https://github.com/ProofGeneral/PG ~/.emacs.d/lisp/PG
cd ~/.emacs.d/lisp/PG
make

Then add the following to your .emacs:

;; Open .v files with Proof General's Coq mode
(load "~/.emacs.d/lisp/PG/generic/proof-site")

If Proof General complains about a version mismatch, make sure that the shell's emacs is indeed your usual Emacs. If not, run the Makefile again with an explicit path to Emacs. On macOS in particular you'll probably need something like

make clean; make EMACS=/Applications/Emacs.app/Contents/MacOS/Emacs

More info

See:

Links:

Supported proof assistants:

  • Full support for latest versions of: Coq
  • Support for previous versions of: Isabelle, LEGO, PhoX
  • Experimental (less useful): CCC, ACL2, HOL98, Hol-Light, Lambda-Clam, Shell, Twelf
  • Obsolete instances: Demoisa, Lambda-Clam, Plastic

A few example proofs are included in each prover subdirectory.

Contributing

Contributions to this repository are placed under the BSD-3 license. As BSD-3 is compatible with both GPLv2 and GPLv3+, this means that we can merge them in both master and async branches if need be, using the same license as the rest of the codebase, while you keep all the rights on your code. For more info, see https://opensource.org/licenses/BSD-3-Clause.