Gödel's β function

In mathematical logic, Gödel's β function is a function used to permit quantification over finite sequences of natural numbers in formal theories of arithmetic. The β function is used, in particular, in showing that the class of arithmetically definable functions is closed under primitive recursion, and therefore includes all primitive recursive functions.

The  β function was introduced without the name in the proof of the first of Gödel's incompleteness theorems (Gödel 1931). The  β function lemma given below is an essential step of that proof. Gödel gave the  β function its name in (Gödel 1934).

Definition
The $$\beta$$ function takes three natural numbers as arguments. It is defined as


 * $$\beta(x_1, x_2, x_3) = \mathrm{rem}(x_1, 1 + (x_3 + 1) \cdot x_2) = \mathrm{rem}(x_1, (x_3 \cdot x_2 + x_2 + 1) ),$$

where $$\mathrm{rem}(x, y)$$ denotes the remainder after integer division of $$x$$ by $$y$$ (Mendelson 1997:186).

Special schema without parameters
The β function is arithmetically definable in an obvious way, because it uses only arithmetic operations and the remainder function which is arithmetically definable. It is therefore representable in Robinson arithmetic and stronger theories such as Peano arithmetic. By fixing the first two arguments appropriately, one can arrange that the values obtained by varying the final argument from 0 to n run through any specified (n+1)-tuple of natural numbers (the β lemma described in detail below). This allows simulating the quantification over sequences of natural numbers of arbitrary length, which cannot be done directly in the language of arithmetic, by quantification over just two numbers, to be used as the first two arguments of the β function.

For example, if f is a function defined by primitive recursion on a recursion variable n, say by f(0) = c and f(n+1) = g(n, f(n)), then to express f(n) = y one would like to say: there exists a sequence a0, a1, ..., an such that a0 = c, an = y and for all i &lt; n one has g(i, ai) = ai+1. While that is not possible directly, one can say instead: there exist natural numbers a and b such that β(a,b,0) = c, β(a,b,n) = y and for all i &lt; n one has g(i, β(a,b,i)) = β(a,b,i+1).

General schema with parameters
The primitive recursion schema as given may be replaced by one which makes use of fewer parameters. Let $$w$$ be an elementary pairing function, and $$\pi_1,\pi_2$$ be its projection functions for inversion.

Theorem: Any function constructible via the clauses of primitive recursion using the standard primitive recursion schema is constructible when the schema is replaced with the following.
 * $$f'(x,0) = g'(x)$$
 * $$f'(x,y+1) = h'(f'(x,y))$$

This is proven by providing two intermediate schemata for primitive recursion, starting with a function defined via the standard schema, and translating the definition into terms of each intermediate schema and finally into terms of the above schema. The first intermediate schemata is as follows:
 * $$f_1(x,0) = g_1(x)$$
 * $$f_1(x,y+1) = h_1(x,y,f_1(x,y))$$

Translation of the standard definition of a primitive recursive function to the intermediate schema is done inductively, where an elementary pairing function $$w$$ is used to reinterpret the definition of a $$k+1$$-ary primitive recursive function into a $$k$$-ary primitive recursive function, terminating the induction at $$k=1$$.

The second intermediate schema is as follows, with the $$x$$ parameter eliminated.
 * $$f_2(x,0)=g_2(x)$$
 * $$f_2(x,y+1)=h_2(y,f_2(x,y))$$

Translation to it is accomplished by pairing $$x$$ and $$f_1(x,y)$$ together to use one parameter for handling both, namely by setting $$g_2(x)=w(x,g_1(x))$$, $$h_2(x,z)=w(\pi_1 z,h_1(\pi_1 z, x, \pi_2 z))$$, and recovering $$f_1(x,y)$$ from these paired images by taking $$\pi_2(f_2(x,y))$$.

Finally, translation of the intermediate schema into the parameter-eliminated schema is done with a similar pairing and unpairing of $$y$$ and $$f_2(x,y)$$. Composing these three translations gives a definition in the original parameter-free schema.

The β function lemma
The utility of the β function comes from the following result (Gödel 1931, Hilfssatz 1, p. 192-193), which is the purpose of the β function in Gödel's incompleteness proof. This result is explained in more detail than in Gödel's proof in (Mendelson 1997:186) and (Smith 2013:113-118).


 *  β function lemma. For any sequence of natural numbers (k0, k1, ..., kn), there are natural numbers b and c such that, for every natural number 0 &le;  i &le; n, β(b, c, i) = ki.

As an example, the sequence (2,0,2,1) can be encoded by b=$3,412,752$ and c=24, since
 * $$\begin{array}{llllll}

\mathrm{rem}(3412752, (1+(0+1)*24)) & = & \mathrm{rem}(3412752, 25) & = & 2 &, \\ \mathrm{rem}(3412752, (1+(1+1)*24)) & = & \mathrm{rem}(3412752, 49) & = & 0 &, \\ \mathrm{rem}(3412752, (1+(2+1)*24)) & = & \mathrm{rem}(3412752, 73) & = & 2 &, \text{ and} \\ \mathrm{rem}(3412752, (1+(3+1)*24)) & = & \mathrm{rem}(3412752, 97) & = & 1 &. \\ \end{array}$$

The proof of the β function lemma makes use of the Chinese remainder theorem.