This file was updated on 28th Oct, 2024, and it's not finished.
Intuitively, the notion of an effective computable function f from natural numbers to natural numbers is the notion of a function for which there is a finite list of instructions that in principle make it possible to determine the value f(x1,…,xn) for any arguments x1,…,xn.
We adopt the system in which the number zero id represented by the cipher 0, and a natural number n>0 is represented by the cipher 0 followed by a sequence of n little raised strokes or accents. Thus the numeral for one is 0′, the numeral for two is 0′′, and so on.
3 Basic Functions
Zero Function
For any argument x, z(x)=0.
z(0)=0,z(0′)=0,z(0′′)=0,…
Successor Function
s(0)=0′,s(0′)=0′′,s(0′′)=0′′′,…
Identity Function / Projection Function
For each positive integer n, there are n identity functions of n arguments, which pick out the first, second, \dots, and n-th of the arguments:
idin(x1,…,xi,…,xn)=xi.
Operations
Composition / Substitution
If f is a function of m arguments and each of g1,…,gm is a function of n arguments, then the function obtained by composition from f,g1,…,gm is the function h where we have
Cn: h(x1,…,xn)=f(g1(x1,…,xn),…,gm(x1,…,xn)).
This expression can also be written as
h=Cn[f,g1,…,gm].
Addition
x+0=x,x+y′=(x+y)′.
Multiplication
x⋅0=0,x⋅y′=x+(x⋅y).
Exponentiation
x0=0′,xy′=x⋅xy.
Super-Exponentiation
xxxx⋅⋅⋅(a stack of yxs)≡x↑x↑x↑x↑⋯↑x(a row of yxs)≡x⇑y.
x⇑0=0′,x⇑y′=x↑(x⇑y).
Other Functions
Constant Function
For any natural number n, let the constant function constn be defined by constn(x)=n for all x.
const0(x)=0=z(x).
constn(x)=n=s(constn−1(x))=Cn[s,constn−1](x),n≥1.
Sum Function
sum(x,0)=x,sum(x,y′)=sum(x,y)′.
Product Function
prod(x,0)=z(x),prod(x,y′)=x+prod(x,y).
Factorial Function
The factorial x! for positive x is the product 1×2×3×⋯×x of all positive integers up to and including x, and by convention 0!=1.
0!=1,y′!=y!⋅y′.
Primitive Recursion
Pr: h(x,0)=f(x),h(x,y′)=g(x,y,h(x,y)).⋯Pr: h(x1,…,xn,0)=f(x1,…,xn),h(x1,…,xn,y′)=g(x1,…,xn,y,h(x1,…,xn,y)).
Where the underlined equations — called the recursion equations for the function h — hold, h is said to be definable by (primitive) recursion from the functions f and g. In shorthand,
h=Pr[f,g].
Example 1 sum=Pr[id11,Cn[s,id33]].
sum(x,0)=x=id11(x)=f(x).
sum(x,y′)=sum(x,y)′⇒sum(x,s(y))=s(sum(x,y)).
sum(x,s(y))===s(sum(x,y))Cn[s,id33](x,y,sum(x,y))g(x,y,sum(x,y)).
Example 2 prod=Pr[z,Cn[sum,id13,id33]].
h(x,0)=0=z(x)⇒f=z.
We know prod(x,y′)=x+prod(x,y), so
h(x,y′)====g(x,y,h(x,y))id13(x,y,h(x,y))+id33(x,y,h(x,y))sum(id13(x,y,h(x,y)),id33(x,y,h(x,y)))Cn[sum,id13,id33](x,y,h(x,y)).
That is
Cn[sum,id13,id33]=g.