OFFSET
-1,4
COMMENTS
The Herbert-Ackermann function is defined as follows:
Hack(0,y,z) := y+z;
Hack(x,y,0) := 0, x > 0;
Hack(x,y,1) := y, x > 0;
Hack(x,y,z) := Hack(x-1,y,Hack(x,y,z-1)), x > 0.
This is an Ackermann function variant: the recurrence relation is also satisfied by the original (3-argument) Ackermann function.
Write a[n]b as H_n(a,b), the n-th hyperoperator of a times b (See A054871 for more information). We have Hack(0,0,0) = 0 and, for x > 0, Hack(x,y,1) = y = y[x+1]1. Suppose Hack(x-1,y,z-1) = y[x](z-1). By induction on z, Hack(x,y,z) = Hack(x-1,y,Hack(x,y,z-1)) = y[x]y[x+1](z-1) = y[x+1]z; so Hack(n,n,n) = n[n+1]n for nonnegative n.
LINKS
Robert S. Boyer, Versions of Ackermann functions
FORMULA
a(-1) = 0;
a(n) = Hack(n,n,n), n >= 0.
a(n) = H_{n+1}(n,n) = n[n+1]n, n >= -1.
EXAMPLE
a(-1) = (-1)[0](-1) = 0; (successor of -1)
a(0) = 0[1]0 = 0+0 = 0;
a(1) = 1[2]1 = 1*1 = 1;
a(2) = 2[3]2 = 2^2 = 4;
a(3) = 3[4]3 = 3^^3 = 3^3^3 = 3^27 = 7625597484987;
a(4) = 4[5]4 = 4^^^4 = 4^^4^^4^^4 = 4^^4^^(4^4^4^4) = ... (where 4^4^4^4 = 10^(8.0723... × 10^153), thus 4^^4^^(4^4^4^4) is humongous!)
Recursively:
a(0) = Hack(0,0,0) = 0+0 = 0;
a(1) = Hack(1,1,1) = Hack(0,1,Hack(1,1,0)) = Hack(0,1,0) = 1+0 = 1;
a(2) = Hack(2,2,2) = Hack(1,2,Hack(2,2,1)) = Hack(1,2,2) =
Hack(0,2,Hack(1,2,1)) = Hack(0,2,2) = 2+2 = 4;
a(3) = Hack(3,3,3) = Hack(2,3,Hack(3,3,2)) = Hack(2,3,Hack(2,3,Hack(3,3,1))) = Hack(2,3,Hack(2,3,3)) = ... (the number of recursions is already exploding...)
CROSSREFS
KEYWORD
nonn
AUTHOR
Natan Arie Consigli, Dec 23 2015
STATUS
approved