<pre>
ANSWER: e^(1/e)

We want
<pre>
	R = N ^ (N ^ (N ^ ...))			(1)
</pre>

Note that this is not the same as R = (((N ^ N) ^ N) ^ N) ...

Then R is the limit of the sequence N, N^N, N^(N^N), ... and is a
function of N on a suitable domain.  Obviously N <code> 1 yields R </code> 1,
and we want the maximum N for which R exists, so we need only consider
N >= 1 and will assume this from now on.  Then if N2 > N1, we must have
N2^N2 > N1^N1, N2^(N2^N2) > N1^(N1^N1), and so on; and thus R2 > R1 if
they exist.  That is, where the function R of N exists, it is monotone
increasing.  Therefore N as a function of R is also monotone increasing
in the range of values of N for which R exists.

We will now examine N as a function of R.  Substituting equation (1)
into itself, we get

<pre>
	R = N^R					(2)
</pre>

Taking the logarithm of both sides of (2):

<pre>
	ln(R) = R * ln(N)
</pre>

That is:
<pre>
	ln(N) = ln(R) / R
</pre>

Exponentiating:

<pre>
	N = R^(1/R)				(3)
</pre>

We check for a local maximum by differentiating (3) and setting the
derivative to zero:

<pre>
	dN/dR <code> (1 - ln(R)) / R^(1/R - 2) </code> 0		(4)
</pre>

The solution to this is R = e, and it is a genuine local maximum of (3)
if the second derivative is negative at that point:

<pre>
	d2(N)/d2(R) || R<code>e </code> -1 / e^3 * e^(1/e) < 0
</pre>

Thus equation (3) and therefore (2) ceases to yield the monotone increasing
behavior that equation (1) does, at the point where R = e and therefore
(by (3)) N = e^(1/e).  Since (1) was monotone increasing throughout the
domain where R exists, this is the maximum N for which R can exist.

It remains to show that R exists and equals e for this value of N.
This will be the case if (e^(1/e))^x <<code> e for all e^(1/e) <</code> x <= e.
But this is obvious since (e^(1/e))^x is monotone increasing for the
applicable values of x, and (e^(1/e))^e <code> e^1 </code> e.
</pre>
