Entscheidungsproblem

In mathematics and computer science, the Entscheidungsproblem (German for 'decision problem'; pronounced [ɛntˈʃaɪ̯dʊŋspʁoˌbleːm]) is a challenge posed by David Hilbert and Wilhelm Ackermann in 1928.

Such an algorithm was proven to be impossible by Alonzo Church and Alan Turing in 1936.

In 1936, Alonzo Church and Alan Turing published independent papers[2] showing that a general solution to the Entscheidungsproblem is impossible, assuming that the intuitive notion of "effectively calculable" is captured by the functions computable by a Turing machine (or equivalently, by those expressible in the lambda calculus).

The origin of the Entscheidungsproblem goes back to Gottfried Leibniz, who in the seventeenth century, after having constructed a successful mechanical calculating machine, dreamt of building a machine that could manipulate symbols in order to determine the truth values of mathematical statements.

[3] He realized that the first step would have to be a clean formal language, and much of his subsequent work was directed toward that goal.

In 1928, David Hilbert and Wilhelm Ackermann posed the question in the form outlined above.

[4] In 1929, Moses Schönfinkel published one paper on special cases of the decision problem, that was prepared by Paul Bernays.

[5] As late as 1930, Hilbert believed that there would be no such thing as an unsolvable problem.

[6] Before the question could be answered, the notion of "algorithm" had to be formally defined.

Turing immediately recognized that these are equivalent models of computation.

Church proved that there is no computable function which decides, for two given λ-calculus expressions, whether they are equivalent or not.

He relied heavily on earlier work by Stephen Kleene.

Turing reduced the question of the existence of an 'algorithm' or 'general method' able to solve the Entscheidungsproblem to the question of the existence of a 'general method' which decides whether any given Turing machine halts or not (the halting problem).

If 'algorithm' is understood as meaning a method that can be represented as a Turing machine, and with the answer to the latter question negative (in general), the question about the existence of an algorithm for the Entscheidungsproblem also must be negative (in general).

In his 1936 paper, Turing says: "Corresponding to each computing machine 'it' we construct a formula 'Un(it)' and we show that, if there is a general method for determining whether 'Un(it)' is provable, then there is a general method for determining whether 'it' ever prints 0".

The work of both Church and Turing was heavily influenced by Kurt Gödel's earlier work on his incompleteness theorem, especially by the method of assigning numbers (a Gödel numbering) to logical formulas in order to reduce logic to arithmetic.

The Entscheidungsproblem is related to Hilbert's tenth problem, which asks for an algorithm to decide whether Diophantine equations have a solution.

The non-existence of such an algorithm, established by the work of Yuri Matiyasevich, Julia Robinson, Martin Davis, and Hilary Putnam, with the final piece of the proof in 1970, also implies a negative answer to the Entscheidungsproblem.

Using the deduction theorem, the Entscheidungsproblem encompasses the more general problem of deciding whether a given first-order sentence is entailed by a given finite set of sentences, but validity in first-order theories with infinitely many axioms cannot be directly reduced to the Entscheidungsproblem.

Some first-order theories are algorithmically decidable; examples of this include Presburger arithmetic, real closed fields, and static type systems of many programming languages.

On the other hand, the first-order theory of the natural numbers with addition and multiplication expressed by Peano's axioms cannot be decided with an algorithm.

[7] The classical Entscheidungsproblem asks that, given a first-order formula, whether it is true in all models.

The finitary problem asks whether it is true in all finite models.

means the problem of deciding whether there exists a model for a set of logical formulas

Given a finite set of Aristotelean logic formulas, it is NLOGSPACE-complete to decide its

Relational logic can be extended to 32 kinds of sentences by allowing

For each possible quantifier prefix to the prenex normal form, we have a fragment of first-order logic.

The precise boundaries are known, sharply: Börger et al. (2001)[11] describes the level of computational complexity for every possible fragment with every possible combination of quantifier prefix, functional arity, predicate arity, and equality/no-equality.

Pure Boolean logical formulas are usually decided using SAT-solving techniques based on the DPLL algorithm.

For more general decision problems of first-order theories, conjunctive formulas over linear real or rational arithmetic can be decided using the simplex algorithm, formulas in linear integer arithmetic (Presburger arithmetic) can be decided using Cooper's algorithm or William Pugh's Omega test.