The projection functions Imn:ℤ+n→ℤ+ with 1≤m≤n defined as Imn⁢(x1,…,xn)=xm are recursive functions.

4.

(Closure under composition) If f:ℤ+n→ℤ+ is a recursive function and gi:ℤ+m→ℤ+ with i=1,…⁢n are recursive functions, then h:ℤ+n→ℤ+, defined by h⁢(x1,…,xn)=f⁢(g1⁢(x1,…,xm),…,gn⁢(x1,…,xm)) is a recursive function.

5.

(Closure under primitive recursion) If f:ℤ+n→ℤ+ and g:ℤ+n+2→ℤ+ are recursive function, then h:ℤ+n+1→ℤ+, defined by the recursion

h⁢(n+1,x1,…,xk)=g⁢(h⁢(n,x1,…,xk),n,x1,…,xk)

with the initial condition

h⁢(0,x1,…,xk)=f⁢(x1,…,xk)

is a recursive function.

6.

(Closure under minimization) If f:ℤ+n+1→ℤ+ is a recursive function then g:ℤ+n→ℤ+ is a recursive function, where

–

g⁢(x1,…,xn) is defined to be y, if there exists a y∈ℤ+ such that

i.

f⁢(0,x1,…,xn),f⁢(1,x1,…,xn),…,f⁢(y,x1,…,xn) are all defined,

ii.

f⁢(z,x1,…,xn)≠0 when 1≤z<y, and

iii.

f⁢(y,x1,…,xn)=0.

–

g⁢(x1,…,xn) is undefined otherwise.

The operation whereby h was constructed from f and g in criterion 5 is known as primitive recursion. The operation described in criterion 6 is known as minimization. That is to say, for any given function f:ℤ+n+1→ℤ+, the partial function g:ℤ+n→ℤ+ constructed as in criterion 6 is known as the minimization of f and is denoted by g=μ⁢f.

The smallest set of functions satisfying criteria 1-5, but not criterion 6, is known as the set of primitive recursive functions. Therefore, the set ℛ of all recursive function is the closure of the set 𝒫⁢ℛ of primitive recursive function with respect to minimization. It can be shown that ℛ is exactly the set of Turing-computable functions. In terms of programming languages, a function is recursive iff it can be computed by a program involving the DO WHILE loops (minimization).