Skip to main content

Checks mathematical proofs written in TeX

Project description

Mathematical proofs are sequences of steps which take expressions in a formal language which state something already known to another formal expression which becomes known as a result. Each step must be justified by a rule of inference. The notion of proof is sharpened when the set of inference rules is reduced to a small number. But the effect of such reduction on proofs is to make them cumbersome, like the computations of a Turing Machine. ProofCheck uses a really large rule set to make possible proofs which are not cumbersome. The default inference rule set currently contains over 1500 rules and is still growing.

Either TeX or LaTeX may be used. What is required in the way of document structure is that:

1. Each theorem must be labeled and numbered in number-dot-number style,

2. Each theorem and proof must be expressed in a language that ProofCheck can learn to parse, and

3. Proof steps must be numbered and annotated following ProofCheck syntax.

The work cycle is as follows:

  1. Edit the document using your preferred text editor:

    emacs article.tex

  2. TeX the document:

    tex article

  3. Parse the document:

    parse.py article

  4. Check a proof of, say theorem 1.23:

    check.py article 1.23

Errors at any stage of course send you back to the text editor.

Project details


Release history Release notifications | RSS feed

This version

1.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

proofcheck-1.0.tar.gz (149.5 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page