Information about Automated Theorem Proving

Enlarge picture
Excerpt of a proof in agda2


Automated theorem proving (ATP) or automated deduction, currently the most well-developed subfield of automated reasoning (AR), is the proving of mathematical theorems by a computer program.

Decidability of the problem

Depending on the underlying logic, the problem of deciding the validity of a theorem varies from trivial to impossible. For the frequent case of propositional logic, the problem is decidable but NP-complete, and hence only exponential-time algorithms are believed to exist for general proof tasks. For a first order predicate calculus, that is having no proper axioms, Gödel's Completeness Theorem states that the theorems are exactly the logically valid well-formed formulas, so identifying theorems is recursively enumerable, i.e., given unbounded resources, any valid theorem can eventually be proven. Invalid statements, i.e. formulas that are not entailed by a given theory, cannot always be recognized. In addition, a consistent formal theory that contains the first-order theory of the natural numbers (having certain proper axioms then), by Gödel's incompleteness theorems, contains a true statement which cannot be proven, in which case a theorem prover trying to prove such a statement ends up in nontermination.

In these cases, a first-order theorem prover may fail to terminate while searching for a proof. Despite these theoretical limits, practical theorem provers can solve many hard problems in these logics.

Related problems

A simpler, but related problem is proof verification, where an existing proof for a theorem is certified valid. For this, it is generally required that each individual proof step can be verified by a primitive recursive function or program, and hence the problem is always decidable.

Interactive theorem provers require a human user to give hints to the system. Depending on the degree of automation, the prover can essentially be reduced to a proof checker, with the user providing the proof in a formal way, or significant proof tasks can be performed automatically. Interactive provers are used for a variety of tasks, but even fully automatic systems have by now proven a number of interesting and hard theorems, including some that have eluded human mathematicians for a long time. However, these successes are sporadic, and work on hard problems usually requires a proficient user.

Another distinction is sometimes drawn between theorem proving and other techniques, where a process is considered to be theorem proving if it consists of a traditional proof, starting with axioms and producing new inference steps using rules of inference. Other techniques would include model checking, which is equivalent to brute-force enumeration of many possible states (although the actual implementation of model checkers requires much cleverness, and does not simply reduce to brute force). There are hybrid theorem proving systems which use model checking as an inference rule. There are also programs which were written to prove a particular theorem, with a (usually informal) proof that if the program finishes with a certain result, then the theorem is true. A good example of this was the machine-aided proof of the four color theorem, which was very controversial as the first claimed mathematical proof which was essentially impossible to verify by humans due to the enormous size of the program's calculation (such proofs are called non-surveyable proofs). Another example would be the proof that the game Connect Four is a win for the first player.

Industrial uses

Commercial use of automated theorem proving is mostly concentrated in integrated circuit design and verification. Since the Pentium FDIV bug, the complicated floating point units of modern microprocessors have been designed with extra scrutiny. In the latest processors from AMD, Intel, and others, automated theorem proving has been used to verify that division and other operations are correct.

First-order theorem proving

So-called first-order theorem proving may be restricted to a propositional calculus with terms (constants, function names, and free variables) added, making it impossible to express mathematical induction. It should then not be confused with a first-order theory of metamathematics, as the quantifiers have been stripped out, though universal quantifiers may be emulated by rewriting into free variables.

First-order theorem proving is one of the most mature subfields of automated theorem proving. The logic is expressive enough to allow the specification of arbitrary problems, often in a reasonably natural and intuitive way. On the other hand, it is still semi-decidable, and a number of sound and complete calculi have been developed, enabling fully automated systems. More expressive logics, such as higher order and modal logics, allow the convenient expression of a wider range of problems than first order logic, but theorem proving for these logics is less well developed. The quality of implemented system has benefited by the existence of a large library of standard benchmark examples (the TPTP), as well as by the CADE ATP System Competition (CASC), a yearly competition of first-order systems for many important classes of first-order problems.

Some important systems (all have won at least one CASC competition division) are listed below.

Popular techniques

Available implementations

You can find information on some of these theorem provers and others at [1] or the QPQ website. The TPTP library of test problems, suitable for testing first-order theorem provers, is available at [2] and solutions from many of these provers for TPTP problems are in the TSTP solution library, available at [3]

Important people

References

See also

Automated reasoning is an area of computer science dedicated to understanding different aspects of reasoning in a way that allows the creation of software which allows computers to reason completely or nearly completely automatically.
..... Click the link for more information.
In mathematics, a proof is a demonstration that, assuming certain axioms, some statement is necessarily true. A proof is a logical argument, not an empirical one. That is, one must demonstrate that a proposition is true in all cases before it is considered a theorem of mathematics.
..... Click the link for more information.
theorem is a statement, often stated in natural language, that can be proved on the basis of explicitly stated or previously agreed assumptions. In logic, a theorem is a statement in a formal language that can be derived by applying rules and axioms from a deductive system.
..... Click the link for more information.
A computer program is one or more instructions that are intended for execution by a computer. Specifically, it is a symbol or combination of symbols forming an algorithm that may or may not terminate, and that algorithm is written in a programming language.
..... Click the link for more information.
In logic and mathematics, a propositional calculus (or a sentential calculus) is a formal system in which formulas representing propositions can be formed by combining atomic propositions using logical connectives, and a system of formal proof rules
..... Click the link for more information.
In complexity theory, the NP-complete problems are the most difficult problems in NP ("non-deterministic polynomial time") in the sense that they are the smallest subclass of NP that could conceivably remain outside of P, the class of deterministic polynomial-time problems.
..... Click the link for more information.
First-order logic (FOL) is a formal deductive system used by mathematicians, philosophers, linguists, and computer scientists. It goes by many names, including: first-order predicate calculus (FOPC), the lower predicate calculus,
..... Click the link for more information.
WFF (pronounced "wiff") is an abbreviation for well-formed formula. Given a formal grammar, a WFF is any string that is generated by that grammar. To say that a string is a WFF with respect to a given formal grammar is equivalent to saying that belongs to the language
..... Click the link for more information.
recursively enumerable, computably enumerable, semidecidable or provable if:
  • There is an algorithm that, when given an input number, eventually halts if and only if the input is an element of S.

..... Click the link for more information.
In mathematical logic, Gödel's incompleteness theorems, proved by Kurt Gödel in 1931, are two theorems stating inherent limitations of all but the most trivial formal systems for arithmetic of mathematical interest.
..... Click the link for more information.
Proof checking is the process of using software for checking proofs for correctness. It is one of the most developed fields in automated reasoning.

See also

  • Model checking
  • Abstract interpretation
  • Static code analysis
  • Automated theorem proving

..... Click the link for more information.
The primitive recursive functions are defined using primitive recursion and composition as central operations and are a strict subset of the recursive functions (recursive functions are also known as the computable functions).
..... Click the link for more information.
Interactive theorem proving is the field of computer science and mathematical logic concerned with tools to develop formal proofs by man-machine collaboration. This involves some sort of proof assistant
..... Click the link for more information.
Model checking is the process of checking whether a given model satisfies a given logical formula. The concept is general and applies to all kinds of logics and their models.
..... Click the link for more information.
The four color theorem (also known as the four color map theorem) states that given any plane separated into regions, such as a political map of the states of a country, the regions may be colored using no more than four colors in such a way that no two adjacent
..... Click the link for more information.
BoardGameGeek entry

How to play

Connect Four (also known as Plot Four, Four In A Row, and Four In A Line) is a two-player board game in which the players take turns in dropping alternating colored discs into a seven-column, six-row
..... Click the link for more information.
The Pentium FDIV bug was a bug in Intel's original Pentium floating point unit. Certain floating point division operations performed with these processors would produce incorrect results.
..... Click the link for more information.
A floating point unit (FPU) is a part of a computer system specially designed to carry out operations on floating point numbers. Typical operations are addition, subtraction, multiplication, division, and square root.
..... Click the link for more information.
Advanced Micro Devices, Inc.

Public (NYSE: AMD )
Founded 1969
Headquarters One AMD Place
Sunnyvale, California
USA

Key people Héctor Ruiz, CEO
Industry Semiconductors
Products Microprocessors
Motherboard chipsets
DTV decoder chips
..... Click the link for more information.
Intel Corporation

Public (NASDAQ:  INTC , SEHK: 4335 )
Founded 1968 1
Headquarters Santa Clara, California
 United States

Key people Paul S.
..... Click the link for more information.
In logic and mathematics, a propositional calculus (or a sentential calculus) is a formal system in which formulas representing propositions can be formed by combining atomic propositions using logical connectives, and a system of formal proof rules
..... Click the link for more information.
Mathematical induction is a method of mathematical proof typically used to establish that a given statement is true of all natural numbers. It is done by
  • proving that the first statement in the infinite sequence of statements is true, and then

..... Click the link for more information.
First-order logic (FOL) is a formal deductive system used by mathematicians, philosophers, linguists, and computer scientists. It goes by many names, including: first-order predicate calculus (FOPC), the lower predicate calculus,
..... Click the link for more information.
In general, metamathematics or meta-mathematics is a scientific reflection and knowledge about mathematics seen as an entity/object in human consciousness and culture. More precisely, metamathematics is mathematics used to study mathematics or philosophy of mathematics.
..... Click the link for more information.
The term quantification has several meanings, general and specific. Primarily it covers all those acts which quantify observations and experiences by converting them into numbers through counting and measuring. It is thus the basis for mathematics and for science.
..... Click the link for more information.
In predicate logic, universal quantification is an attempt to formalize the notion that something (a logical predicate) is true for everything, or every relevant thing.
..... Click the link for more information.
First-order logic (FOL) is a formal deductive system used by mathematicians, philosophers, linguists, and computer scientists. It goes by many names, including: first-order predicate calculus (FOPC), the lower predicate calculus,
..... Click the link for more information.
The Conference on Automated Deduction (CADE) is the premier academic conference on automated deduction and related fields. The first CADE was organized in 1974 at the Argonne National Laboratory near Chicago. Most CADE meetings have been held in Europe and the USA.
..... Click the link for more information.
E is a modern, high performance theorem prover for full first-order logic with equality. It has been developed primarily in the Automated Reasoning Group at TU Munich.

The system is based on the equational superposition calculus.
..... Click the link for more information.
The superposition calculus is a calculus for reasoning in equational first-order logic. It has been developed in the early 1990s and combines concepts from first-order resolution with ordering-based equality handling as developed in the context of (unfailing) Knuth-Bendix
..... Click the link for more information.


This article is copied from an article on Wikipedia.org - the free encyclopedia created and edited by online user community. The text was not checked or edited by anyone on our staff. Although the vast majority of the wikipedia encyclopedia articles provide accurate and timely information please do not assume the accuracy of any particular article. This article is distributed under the terms of GNU Free Documentation License.
Herod_Archelaus


page counter