The pressing question: what does \(\alpha \uparrow\uparrow \beta\) mean for ordinals \(\alpha\) and \(\beta\)? An ideal solution must suit the following criteria:
- Be total and closed over \(\text{On}\)
- Be compatible with finite arrow notation
- Provide fundamental sequences for all suitable ordinals
- Be as internally consistent as necessary
We can assume the following things:
- \(\alpha \uparrow\uparrow 1 = \alpha\)
- \(\alpha \uparrow\uparrow (\beta + 1) = \alpha \uparrow (\alpha \uparrow\uparrow \beta)\) for \(\beta < \omega\)
- \(\alpha \uparrow\uparrow \beta = \sup\{\gamma < \beta: \alpha \uparrow\uparrow \gamma\}\)
- \((\alpha \uparrow\uparrow \beta)[n] = \alpha \uparrow\uparrow \beta[n]\)
The second and third "axioms" give us \(\omega \uparrow\uparrow \omega = \varepsilon_0\) as we'd expect. But what's \(\omega \uparrow\uparrow (\omega + 1)\)? If we blindly apply the second rule ignoring the condition that \(\beta < \omega\), we get \(\omega \uparrow\uparrow (\omega + 1) = \omega \uparrow\uparrow \omega\), which is clearly not what we want! The hole in our definition is what \(\alpha \uparrow\uparrow (\beta + 1)\) is for infinite \(\beta\).
Let's look at what \(\varepsilon_1\) should be. We could deal with either of the fundamental sequences \(\varepsilon_0 + 1, \omega^{\varepsilon_0 + 1}, \omega^{\omega^{\varepsilon_0 + 1}}, \ldots\) (A) or \(\varepsilon_0, \varepsilon_0^{\varepsilon_0}, \varepsilon_0^{\varepsilon_0^{\varepsilon_0}}, \ldots\) (B) Ideally we would want to equate these with \(\omega \uparrow\uparrow (\omega + n)\) for finite \(n\).
Fundamental sequence A has a simple pattern, but it starts with \(\varepsilon_0 + 1\) and not \(\varepsilon_0\). Fixing this breaks the pattern in an ugly way:
- \(\alpha \uparrow\uparrow (\beta + 2) = \alpha \uparrow (\alpha \uparrow\uparrow (\beta + 1))\)
- \(\alpha \uparrow\uparrow (\beta + 1) = \alpha \uparrow ((\alpha \uparrow\uparrow \beta) + 1)\) for limit ordinals \(\beta\)
So yeah, that sucks. Sequence B looks nicer, being directly reliant on exponentiation. But unfortunately, its definition isn't directly inductive. How do we compute \(\varepsilon_0^{\varepsilon_0^{\varepsilon_0}}\) from \(\varepsilon_0^{\varepsilon_0}\)? The process of fixing this is also a bit cumbersome:
- \(\alpha \uparrow\uparrow (\beta + n) = (\alpha \uparrow\uparrow \beta) \uparrow\uparrow (n + 1)\) for \(\beta \geq \omega\), \(n < \omega\)
Nevertheless, it's far better than the above.
We can jump ahead a little and apply this definition to arrow notation in general:
- \(\alpha \uparrow^k 1 = \alpha\)
- \(\alpha \uparrow^{k + 1} (\beta + 1) = \alpha \uparrow^k (\alpha \uparrow^{k + 1} \beta)\) for \(\beta < \omega\)
- \(\alpha \uparrow^{k + 1} (\beta + n) = (\alpha \uparrow^{k + 1} \beta) \uparrow^{k + 1} (n + 1)\) for \(\beta \geq \omega\), \(n < \omega\)
- \(\alpha \uparrow^k \beta = \sup\{\gamma < \beta: \alpha \uparrow^k \gamma\}\)
- \((\alpha \uparrow^k \beta)[n] = \alpha \uparrow^k \beta[n]\)
lending to the following (annoying) Infinite Catastrophic Rule:
- Infinite Catastrophic Rule. If there is no limiter and \(p > \omega\):
- Let \(\alpha + n = p\), where \(\alpha\) is a limit ordinal and \(n < \omega\).
- Define \(B\) as \(A\), but with \(B(1) = \alpha\).
- Define \(A'\) as \(A\), but with \(A'(0) = v(B)\) and \(A'(1) = n + 1\).
- \(v(A) = v(A')\).
- In the interest of full disclosure, an earlier version of this post had me claiming that \(\omega \uparrow\uparrow (\omega + 1) = \varepsilon_1\). I've removed it not because I'm embarrassed (although I am), but because I'd like to make room for this new content.