Notes to Recursive Functions
1. Grassmann and Peirce both employed the old convention of regarding 1 as the first natural number. They thus formulated the base cases differently in their original definitions—e.g.,
By
is meant, in case , the number next greater than ; and in other cases, the number next greater than , where is the number next smaller than . (Peirce 1881: 87)
2. See Wang (1957) and von Plato (2016) for further reconstruction of Peirce’s and Grassmann’s treatments.
3. A version of the method which Hilbert (1905: 10–13) describes would later come to play a role in formalized consistency proofs following its subsequent redescription by Tarski (1935) in terms of a truth predicate. But although Hilbert & Bernays (1939: 5.2e) returned to discuss this method, they ultimately concluded that it was beyond the scope of their finitary standpoint. See Dean (2020: 568–571) for additional discussion.
4. The relationship between primitive recursion (as a mode of function definition) and quantifier-free induction (as a mode of logical inference) is discussed in greater detail by Hilbert & Bernays (1934: 23–26). See also Tait (1981) for a modern reconstruction.
5. The influence of Hilbert’s presentation was further limited by the connection which he attempts to draw between transfinite recursion and the Continuum Hypothesis (which was deemed obscure by his contemporaries). See van Heijenoort's (1967) introductory remarks to Hilbert (1926) for further discussion.
6. Although Gödel’s original definition also omits the projection functions and composition operation, he soon added these in his subsequent (Gödel 1934 [1986: 347]) lectures on the incompleteness theorems.
7.
8. Although Gödel does not cite Skolem by name, the sequence of definitions leading up to his demonstration that the primality relation is primitive recursive also closely follows that given in (Skolem 1923).
9. A contemporaneous definition of a recursively defined function on ordinal numbers which is not primitive recursive was given by Sudan (1927). See Calude, Marcus, & Tevy (1979) for discussion of the relationship between Ackermann and Sudan’s definitions in light of Hilbert’s presentation of recursion in Hilbert 1926.
10. Such hierarchies will be described in a subsequent update to this entry. See, e.g., Rose (1984), Odifreddi (1999a: ch. 6–7), Clote and Kranakis (2002: ch. 6–7), and Schwichtenberg & Wainer (2011).
11. For additional context, see Sieg (2005) and his introductory notes to Gödel’s correspondence with Herbrand in Gödel 2003.
12.
See also Kleene (1952: ch. XI) for a more extensive presentation. The
term “general recursive function” has also subsequently
been used by some authors to refer either to a recursive
function as defined in
Section 2.2
(e.g., Enderton 2010: 19) or to one defined by minimization applied
to a so-called regular function—i.e., a function
13. In fact it was later shown by Grzegorczyk, Mostowski, & Ryll-Nardzewski (1958: sec. 3) that the class of functions satisfying the semantic version of Herbrand’s definition (as understood classically) corresponds not to the recursive functions but rather to the hyperarithmetical functions (see Section 3.6.2).
14. We have stated CT here in the manner in which it was originally presented by Kleene (1952: 300). A consequence of this formulation is that an effectively computable function is assumed to be total (i.e., defined on all of its inputs) as this is a property of the general recursive functions. On the other hand, some authors have also suggested that one of the equivalent formal definitions of computability mentioned below (e.g., computability by a Turing machine) analyze the notion of a partial function computed by mechanical process which need not always terminate (see, e.g., Wang's 1974 discussion of Gödel on this point). Alternatively, other authors have suggested that there are in fact two separate theses at issue, one for total functions and another for partial functions (see, e.g., Boolos, Burgess, & Jeffrey 2007: 71). Finally it should also be kept in mind that while CT is widely accepted as providing a correct mathematical analysis of the notion of a function (in extension) computed by an algorithm , most authors do not view it as providing an analysis of the notion of algorithm itself. For more on this distinction, see Dean 2016.
15. For more on Gödel’s evaluation of Church’s Thesis see the introduction and postscript to Gödel 1934 in Davis 1965 and also Davis 1982.
16.
Another complicating factor is that it is sometimes claimed that the
version of Church’s Thesis stated here cannot serve to analyze
the understanding of a computable function as it is understood within
constructive mathematics. For note that in order for a system of
equations
17. See Adams (2011: ch. 6) for a detailed reconstruction of the timeline leading to Church’s various announcements and formulations of Church’s Thesis.
18. Gödel’s characterization of “recursiveness” (Section 1.2) in terms of systems of equations and formal derivability would also inform work in computer science related to functional programming languages. See, e.g., McCarthy 1961; Greibach 1975; and Moschovakis 1989.
19. Post is now also often credited with having shown the undecidability of a similar problem during the 1920s in a manner which also can be understood to anticipate Gödel's First Incompleteness Theorem. See the introductory remarks to Post 1965.
20.
See Hilbert (1930 [1998: 233]) for another of Hilbert’s
contemporaneous formulations. Note also that the question of whether a
formula
21.
This illustrates how the choice of the zero and successor functions
in
22.
Since the terms
23.
This shows that we can effectively find index for
24.
The statement and proof of
Theorem 3.5
are given with little explanation at the end of §2 of Kleene
(1938: 153). This was the paper in which Kleene introduced the class
of ordinal notations now known as Kleene’s
25.
Kolmogorov provided this formulation in the context of his so-called
problem interpretation of intuitionistic logic. In this
setting the logical connectives are interpreted in terms of the
proof conditions of the complex formulas in which they
figure. This leads to the interpretation of a conditional
26. Several other notions of reducibility and degree notions are also studied in computability theory based on similar ideas—e.g., one-one, truth table, Muchnik, and Medvedev reducibility (see, e.g., Rogers 1987 or Odifreddi 1999b). A parallel set of notions of feasible reducibility are studied in computational complexity theory under the names of Karp reductions (which correspond to polynomial-time many-one reductions) and Cook reductions (which correspond to polynomial-time Turing reductions).
27. See Turing (1939: 171–172) for Turing’s original characterization and Soare (2016: ch. 17.4.2) and Feferman (1995) for discussion of the specific purpose for which Turing introduced o-machines. Contemporary formulations of computability relative to an oracle are given by Rogers (1987: ch. 9.2) for the Turing machine model and Cutland (1980: ch. 9.4) for the URM model.
28.
In light of this, the Turing degrees are thus sometimes presented as
a triple
29.
The non-effective version of
Theorem 3.8
which requires only the existence of degree
30. Many of the most important constructions were first presented systematically in Soare’s (1987) textbook Recursively enumerable sets and degrees and have now been given an even more streamlined treatment in the revised edition (Soare 2016).
31.
To simplify notation, we will systematically confuse in this section
the natural number
32.
It is not immediately clear that
33.
There is a sense in which the definition of HYP may be considered to
be more constructive than that of
34. See, e.g., Cutland 1980: 46; Rogers 1987: 8–9: Soare 2016: 231–232.
35. Hilbert himself acknowledged that the proof he sketches is in need of further clarification. And while he attempted this in 1928, his proof is not regarded as having being been successful. For reconstructions and assessments see Péter (1967: 241–243), van Heijenoort (1967: 367–369), Dreben & Kanamori (1997), and Tait (2005: 49–50).
36.
The expression “ordinary recursion” has not be retained
in the literature. Kleene (1936c: 237–238) appears to
have interpreted it as coinciding with primitive recursion.
Nothing which Hilbert (1926) says contradicts this. However in a followup discussion to (1926), he would later make clear that while an ordinary recursive
function takes its arguments in
37. A similar result showing that the class of function definable by recursion on type 1 functions properly extends those definable by ordinary recursion was obtained contemporaneously by Sudan (1927) using a definition by transfinite recursion on countable ordinals. See Calude, Marcus, & Tevy (1979) for a comparison with the approach of Ackermann (1928b).
38.
For instance, in order to compute the value of
39.
For in contrast to the computation of