The notion that mathematical statements should be 'well-defined' had been argued by mathematicians since at least the
1600s, but agreement on a suitable definition proved elusive. A candidate definition was proposed independently by several mathematicians in the 1930s. The best-known variant was formalised by the mathematician
Alan Turing, who defined a well-defined statement or calculation as any statement that could be expressed in terms of the initialisation parameters of a
Turing machine. Other (mathematically equivalent) definitions include
Alonzo Church's
lambda-definability,
Herbrand-
Gödel-
Kleene's
general recursiveness and
Emil Post's
1-definability. Despite the widespread uptake of this definition, there are some mathematical concepts that have no well-defined characterisation under this definition. This includes
the halting problem and
the busy beaver game. It remains an open question as to whether there exists a more powerful definition of 'well-defined' that is able to capture both computable and 'non-computable' statements. Some examples of mathematical statements that are computable include: • All statements characterised in modern programming languages, including
C++,
Python, and
Java • All calculations carried by an electronic
computer,
calculator or
abacus • All calculations carried out on an
analytical engine • All calculations carried out on a
Turing Machine • The majority of mathematical statements and calculations given in maths textbooks Some examples of mathematical statements that are
not computable include: • Calculations or statements which are ill-defined, such that they cannot be unambiguously encoded into a Turing machine: ("Paul loves me twice as much as Joe"). • Problem statements that appear to be well-defined, but for which it can be proved that no Turing machine exists to solve them (such as
the halting problem) Computation can be seen as a purely physical process occurring inside a closed
physical system called a
computer. Turing's 1937 proof,
On Computable Numbers, with an Application to the Entscheidungsproblem, demonstrated that there is a formal equivalence between computable statements and particular physical systems, commonly called
computers. Examples of such physical systems are:
Turing machines, human mathematicians following strict rules,
digital computers,
mechanical computers,
analog computers and others. == Alternative accounts of computation ==