Craig's theorem
In mathematical logic, Craig's theorem (also known as Craig's trick) states that any recursively enumerable set of well-formed formulas of a first-order language is recursively axiomatizable, and even primitively recursively axiomatizable, and even decidable in polynomial time.
This result is not related to the well-known Craig interpolation theorem, although both results are named after the same logician, William Craig.
Recursive axiomatization
[edit]Let be an enumeration of the axioms of a recursively enumerable set of first-order formulas. Construct another set consisting of
for each positive integer . That is,
The deductive closures of and are thus equivalent; the proof will show that is a recursive/decidable set.
Given any formula , let its length be . Then to decide , it suffices to first run the enumeration algorithm until all are ouputted, then check if is equal to one of
Primitive recursive axiomatization
[edit]A set of axioms is primitive recursive if there is a primitive recursive function that decides membership in the set. The algorithm given above is recursive, but not necessarily primitive recursive. The main issue is that, at the part where we "run the enumeration algorithm until all are ouputted", the enumeration algorithm may take a very long time to output all .
For primitive recursion, all loops must be bounded by a pre-computed upper bound. Consequently, we are not allowed to say "run the enumeration algorithm until...". However, we can say "run the enumeration algorithm for up to k steps", provided that we know what k should be.
Now, instead of replacing a formula with
one replaces it with
- (*)
where is a function that, given , returns the number of steps the enumeration Turing machine takes in order to output . In fact, this construction gives a decision algorithm that runs in polynomial time, which is a particularly well-behaved class of primitively recursive functions.
Applications
[edit]The theorem has been used in proofs of Gödel's incompleteness theorems. One would first prove the theorems for all theories that with a set of axioms that is primitive recursive, then apply Craig's theorem to immediately conclude that the theorems hold for all theories with a set of axioms that is recursively enumerable.[1]
Philosophical implications
[edit]If is a recursively axiomatizable theory and we divide its predicate symbols into two disjoint sets and , then those theorems of that are in the vocabulary are recursively enumerable, and hence, based on Craig's theorem, axiomatizable. Carl G. Hempel argued based on this that since all science's predictions are in the vocabulary of observation terms, the theoretical vocabulary of science is in principle eliminable. He himself raised two objections to this argument: 1) the new axioms of science are practically unmanageable, and 2) science uses inductive reasoning and eliminating theoretical terms may alter the inductive relations between observational sentences. Hilary Putnam argues that this argument is based on a misconception that the sole aim of science is successful prediction. He proposes that the main reason we need theoretical terms is that we wish to talk about theoretical entities (such as viruses, radio stars, and elementary particles).
References
[edit]- ↑ Smith, Peter (2013). "26. Broadening the scope". An introduction to Gödel's theorems (PDF) (2 ed.). England: Logic Matters. ISBN 979-8-6738-6213-1.
- Hempel, C. G. (1963). "Implications of Carnap's Work for the Philosophy of Science". In Schilpp, P. A. (ed.). The Philosophy of Rudolf Carnap. La Salle, Illinois: Open Court. pp. 685–709.
- Craig, William (1953). "On Axiomatizability Within a System". The Journal of Symbolic Logic. 18 (1): 30–32. doi:10.2307/2266324.
- Putnam, Hilary (1965). "Craig's Theorem". The Journal of Philosophy. 62 (10): 251–260. doi:10.2307/2023298.