The iterated exponential x^x^x...^x was investigated here and here. Whenever x is in [(1/e)e,e(1/e)], the limit is given by Lambert's W function:
h(x) = -W(-log(x))/log(x) (1)
Can we say anything about the general infinite exponential a(1)^a(2)^a(3)^...^a(n)? Barrow in the Tetration References shows that this infinite exponential converges, if:
We will show the following theorem:
Theorem:
Whenever the general infinite exponential a(1)^a(2)^... converges, Em in N: limn->∞a(1)^a(2)^...^a(n) = a(1)^a(2)^...^a(m)^h(L), where L=limn->∞a(n).
Proof:
limn->∞a(n)=L, =>
Aε > 0, Em: L-ε < a(n) < L+ε, An >m. Depending on
whether n-m is even or odd, we must have:
An >m, a(1)^a(2)^a(3)^...^a(m)^(L-/+ε)^(L-/+ε)^... (n-m times) <
a(1)^a(2)^a(3)^...^a(n) <
a(1)^a(2)^a(3)^...^a(m)^(L+/-ε)^(L+/-ε)^... (n-m times).
Now, the iterated sub-exponential (L+/-ε)^(L+/-ε)^...^(L+/-ε) converges to h(L+/-ε), by (1), hence again depending on whether n-m is even or odd,
Aε,ε1 > 0, Em,m1 in N: a(1)^a(2)^...^a(m)^{h(L-/+ε)-/+ε1} < a(1)^a(2)^a(3)^...^a(n) < a(1)^a(2)^...^a(m)^{h(L+/-ε)+/-ε1}, An >m+m1.
h(x) is continuous and monotone increasing in [(1/e)e,e(1/e)], so by choosing δ=|L-/+ε-L|, =>
Aε,ε1,ε2 >0, Em,m1 in N:
a(1)^a(2)^...^a(m)^{h(L)-/+ε2-/+ε1} < a(1)^a(2)^a(3)^...^a(n) <
a(1)^a(2)^...^a(m)^{h(L)+/-ε2+/-ε1}, =>
Aε3 >0, Em,m1 in N: a(1)^a(2)^...^a(m)^{h(L)-/+ε3} <
a(1)^a(2)^a(3)^...^a(n) < a(1)^a(2)^...^a(m)^{h(L)+/-ε3}.
The function a(1)^a(2)^...^a(m)^x is continuous in [(1/e)e,e(1/e)], therefore by choosing δ3=|h(L)-/+ε3-h(L)|, =>
Aε4 >0, Em,m1 in N: a(1)^a(2)^...^a(m)^h(L)-/+ε4 < a(1)^a(2)^a(3)^...^a(n) < a(1)^a(2)^...^a(m)^h(L)+/-ε4, hence,
Aε4 >0, Em,m1 in N: |a(1)^a(2)^a(3)^...^a(n)-a(1)^a(2)^...^a(m)^h(L)|<ε4, An >m+m1, and we are done.
Let's see some examples with Maple:
> b:=proc(L) #Calculate the general exponential
> option remember;
> local n;
> n:=nops(L);
> if n=1 then L[1];
> else
> L[1]^b(subsop(1=NULL,L));
> fi;
> end:
> tower:=proc(x,n) #Power tower of height n
> option remember;
> if n=1 then x;
> else
> x^tower(x,n-1);
> fi;
> end:
We first choose a sequence a(n), the power tower 1.25^1.25^...^1.25.
We first check that the limit indeed falls in [(1/e)e,e(1/e)].
> W:=LambertW;
> h:=-W(-log(x))/log(x);
> h(1.25);
1.352203514
OK. Falls in interval of convergence.
> findm:=proc(L,l,eps)
>#find m as in proof
> local m;
> m:=1;
> while evalf(abs(L[m]-l))>=eps and m < nops(L) do
> m:=m+1;
> od;
> m;
> end:
> L:=[seq(tower(1.25,n),n=1..30)]: #list of values for general exponential.
> m:=findm(L,h(L[1]),0.0000001);
m := 13
> Q:=L[1..m]:Q:=[op(Q),h(L[1])]:
> b(Q); #estimated limit from theorem
1.419809666
> b(L); #actual value of iterated exponential
1.419824956
A second example, with an arbitrary iterated exponential:
First set the limit M to be the midpoint in [(1/e)e,e(1/e)]
> M:=evalf((exp(-exp(1))+exp(exp(-1)))/2);
M := .7553279484
> a:=n->M+1/n^3; #sequence which converges to M.
> L:=[seq(evalf(a(n)),n=1..20)]:
> m:=findm(L,M,0.001);
m := 11
> Q:=L[1..m]:
> Q:=[op(Q),h(M)]:
> b(Q); #estimated limit from theorem
1.659143069
> b(L); #actual value
1.659143069