# How exactly does Knuth's Up-Arrow notation work?

I've done some research, and found this on Wikipedia. \begin{matrix}a\uparrow b=a^{b}=&\underbrace {a\times a\times \dots \times a} \\&b{\mbox{ copies of }}a\end{matrix} \begin{matrix}a\uparrow \uparrow b&={\ ^{b}a}=&\underbrace {a^{a^{{}^{.\,^{.\,^{.\,^{a}}}}}}} &=&\underbrace {a\uparrow (a\uparrow (\dots \uparrow a))} \\&&b{\mbox{ copies of }}a&&b{\mbox{ copies of }}a\end{matrix} I'm still a bit confused on this topic. I've done a lot of research, but I can't seem to understand this. Could somebody explain this in an understandable way? From what I can gather, for example 2↑↑3 would be 2^2^2 = 16? Then 2↑↑↑3 would be 2^2^2^2 = 256? Am I correct, or have I mis-interpreted this?

• Exponents are interpreted from top down. Although 2^2^2$=2^{2^2}=2^4=16$ it is not true that 2^2^2^2$=256$. Instead $2^{2^{2^2}}=2^{16}=65536$, it just gets even bigger the further you go. $2^{2^{2^{2^2}}}=2^{65536}$ which is nearly 20 thousand digits long. – JMoravitz Apr 1 '17 at 19:26

Close! The idea behind the up-arrow notation is the so called Hyperoperation Sequence, which goes like:

• Successor: add $1$. $S(a)= a+1$
• Addition: repeated successor. $b+a = \underset{b \text{ copies}}{\underbrace{ S ( S( \dots S(a)))}}$
• Multiplication: repeated addition. $b*a = \underset{b \text{ copies}}{\underbrace{ a + (a + (\cdots + a))}}$
• Exponentiation: repeated multiplication. $a^b = \underset{b \text{ copies}}{\underbrace{ a * ( a * ( \cdots *a))}}$. This is denoted as $a \uparrow b$, sort of looks like a^b on a calculator for computing $a^b$.
• Tetration: repeated exponentiation. $a\uparrow \uparrow b ={\ ^{b}a} =\underset{b \text{ copies}}{\underbrace{a^{a^{\dots^{a}}}}} = \underset{b \text{ copies}}{\underbrace{a\uparrow (a \uparrow (\cdots \uparrow a))}}.$ Note that the parentheses are vitally important! $2^{2^3} = 2^{(2^3)} = 2^8 = 256 \neq (2^2)^3 = 64$
• Pentation: repeated tetration.

So on and so forth until you get a stack overflow. The best way to think of this is as writing a recursive program for a computer. In principle, you could program a computer to compute $2^3$ the following way: $$2^3 = 2*(2*2) = 2+2 + 2+ 2 = 2+1+1+1+1+1+1.$$

As for your example: $$\ ^3 2= 2 \uparrow \uparrow 3= \underset{3 \text{ copies}}{\underbrace{2 \uparrow (2 \uparrow 2)}} = 2 \uparrow \underset{2 \text{ copies}}{\underbrace{(2*2)}} = 2 \uparrow 4 = \underset{4 \text{ copies}}{\underbrace{2*2*2*2}} = 16.$$ Notice that we could have been even more recursive in our expansion.

Moving on to pentation (repeated tetration (repeated exponentiation(...))): \begin{align*} 2 \uparrow \uparrow \uparrow 3 &= \underset{3 \text{ copies}}{\underbrace{ 2 \uparrow \uparrow ( 2 \uparrow \uparrow 2) }} \\ &= 2 \uparrow \uparrow ( \underset{2 \text{ copies}}{\underbrace{2^2}}) \\ &= 2 \uparrow \uparrow 4 \\ &= \underset{4 \text{ copies}}{\underbrace{2^{2^{2^2}} }} \\ &= 2^{2^4} \\ &= 2^{16} \\ &= 65536. \end{align*} Again, notice that we could be even more explicit and break the recursion all the way down to the successor function: $$2 \uparrow \uparrow \uparrow 3 = 2 + \underset{\text{many many copies}}{\underbrace{1 +1 \cdots + 1}}$$

### Edited to add: more examples!

• $n^n = \ ^{2} n = n \uparrow \uparrow 2$ and $n^{n^n} = \ ^{3} n = n \uparrow \uparrow 3$.
• $2 \uparrow \uparrow \uparrow 2 = \underset{2\text{ copies}}{\underbrace{ 2 \uparrow \uparrow 2}} = \underset{2\text{ copies}}{\underbrace{ 2 \uparrow 2 }} = \underset{2\text{ copies}}{\underbrace{ 2*2}} = \underset{2\text{ copies}}{\underbrace{ 2+2}} = 4$. Up-arrows to the second is kind of weird. Consider that $a^2 = a*a$ for any $a$. Similarly, $a \uparrow \uparrow 2 = \underset{2\text{ copies}}{\underbrace{a \uparrow a}}$. What can we say, $2$ is weird as an exponent (tetraponent?).

• $3 \uparrow \uparrow \uparrow 3 = \underset{3\text{ copies}}{\underbrace{ 3 \uparrow \uparrow (3 \uparrow \uparrow 3)}} = 3 \uparrow \uparrow (\underset{3\text{ copies}}{\underbrace{3^{3^3} }}) = 3 \uparrow \uparrow 7625597484987$ which is $\underset{7625597484987\text{ copies}}{\underbrace{3^{3^{...^3}}}}$

• A googol is pretty big---$10^{100} = 10^{10^2}$. It's so big that writing it as $\underset{100\text{ copies}}{\underbrace{10*10 * \cdots *10}}$ doesn't even really make sense. As big as a googol is, it is absolutely positively miniscule compared to $\ ^{10} 10 = 10 \uparrow \uparrow 10= 10^{10^{10^{10^{10^{10^{10^{10^{10^{10}}}}}}}}}$. This is a number that is so big that it doesn't even make sense to write in terms of exponentiation. As gigantic as $10 \uparrow \uparrow 10$ is, it is a fraction of a fraction of a fraction ... of a percentage of $10 \uparrow \uparrow \uparrow 10$, which is so big that expressing it as repeated tetration is impractical and as repeated exponentiation is almost intractable.
• Graham's Number
• $1 \uparrow \uparrow \uparrow \dots \uparrow a= 1$. Lame, but consistent: $1^a = \underset{a\text{ copies}}{\underbrace{1*1* \cdots * 1}}= 1$ for any $a>0$.
• $0 \uparrow \uparrow \dots \uparrow a = 0$. Again, $0^a = 0$ for any $a>0$.
• $n!$ grows pretty fast: $1, 2, 6, 24, 120, 720, 5040, 40320, \dots$. But $n! \ll n^n = \ ^{2} n = n \uparrow \uparrow 2.$
• $2 \uparrow \uparrow \uparrow 2 = \underset{2\text{ copies}}{\underbrace{ 2 \uparrow \uparrow 2}} = \underset{2\text{ copies}}{\underbrace{ 2 \uparrow 2 }} = \underset{2\text{ copies}}{\underbrace{ 2*2}} = \underset{2\text{ copies}}{\underbrace{ 2+2}} = 4$. More illuminating examples are $a \uparrow \uparrow \uparrow b$ with $a \neq b$ (but still integers) – erfink Apr 1 '17 at 19:54
• I should note that it is possible to do things like $e \uparrow \uparrow \uparrow \pi$, but it requires extending the definition, just like how $e^\pi$ is somewhat different...$\underset{\pi \text{ copies}}{\underbrace{ e * \cdots * e}}$ doesn't quite make sense, while $3^2=\underset{2\text{ copies}}{\underbrace{ 3*3}}$ does. – erfink Apr 1 '17 at 20:00
• I think I understand this now. 3↑↑↑3 = 3↑(3↑(3↑3)) = 3↑(3↑27) = 3↑(3^27) = 3^(3^27). So it comes out to 3^7625597484987 – Hugh Chalmers Apr 1 '17 at 20:04
• Close. I get something where not even the exponent can be conveniently written. $3 \uparrow \uparrow \uparrow 3 = \underset{3\text{ copies}}{\underbrace{ 3 \uparrow \uparrow (3 \uparrow \uparrow 3)}} = 3 \uparrow \uparrow (3^{3^3}) = 3 \uparrow \uparrow 7625597484987$. That is $\underset{7625597484987\text{ copies}}{\underbrace{3^{3^{...^3}}}}$, which is a quick way to a stack overflow. – erfink Apr 1 '17 at 20:09
• For possibly more perspective on how big $10 \uparrow \uparrow \uparrow 10$ is, trying to express this number as an exponentiated tower of $10$'s would be essentially the same as trying to express $10 \uparrow \uparrow 10$ as a product of $10$'s. – Dave L. Renfro Apr 4 '17 at 16:44

You're correct that $2↑↑3$ is $16$. It looks like you've miscalculated $2↑↑↑3$ though; it is larger than $256$.

$2↑↑↑3$ can be written as $2↑↑(2↑↑2)$. We have that $2↑↑2 = 2^2 = 4$, so we need to calculate $2↑↑4$.

This is a tower of four twos: $2^{2^{2^2}} = 2^{2^4} = 2^{16} = 65536$.

Just to get more of a feel for the arrow-notation and how rapidly the numbers can grow, let's extend the example one stage further in a couple of different ways.

First, what about $2↑↑↑4$? This is the same as $2↑↑(2↑↑(2↑↑2))$ which, using the working above, we know is $2↑↑65536$. In words, this is a tower of $65336$ twos!

Second, what if we had four arrows? It turns out that $2↑↑↑↑3$ is $2↑↑↑(2↑↑↑2)$ which is $2↑↑↑4$. Unravelling the arrows again, this is $2↑↑(2↑↑(2↑↑2))$. We're back to the first example: a tower of $65536$ twos.