Fast-growing hierarchy

The fast-growing hierarchy is a hierarchy of functions which is defined as follows:


 * \(f_0(n) = n+1\)
 * \(f_{\alpha+1}(n) = f^{n}_{\alpha}(n)\)
 * \(f_\alpha(n) = f_{\alpha[n]}(n)\)

[n] denotes the n-th term of fundamental sequence assigned to ordinal \(\alpha\)

Here are some examples:


 * \(f_1(n) = 2n\)
 * \(f_2(n) = 2^{n} \times n\)
 * \(f_3(n) > 2\uparrow\uparrow n\)
 * \(f_4(n) > 2\uparrow\uparrow\uparrow n\)
 * \(f_m(n) > 2\uparrow^{m-1} n\)
 * \(f_\omega(n) > 2\uparrow^{n-1} n = Ack(n)\), using unary version of Ackermann function.
 * \(f_{\omega+1}(n) > \lbrace n,n,1,2 \rbrace\), using Bowers' array notation.
 * \(f_{\omega+2}(n) > \lbrace n,n,2,2 \rbrace\)
 * \(f_{\omega+m}(n) > \lbrace n,n,m,2 \rbrace\)
 * \(f_{2 \omega}(n) > \lbrace n,n,n,2 \rbrace\)
 * \(f_{3 \omega}(n) > \lbrace n,n,n,3 \rbrace\)
 * \(f_{m \omega}(n) > \lbrace n,n,n,m \rbrace\)
 * \(f_{\omega^2}(n) > \lbrace n,n,n,n \rbrace\)
 * \(f_{\omega^3}(n) > \lbrace n,n,n,n,n \rbrace\)
 * \(f_{\omega^m}(n) > \lbrace n,m+2 (1) 2 \rbrace\)
 * \(f_{\omega^{\omega}}(n) > \lbrace n,n+2 (1) 2 \rbrace > \lbrace n,n (1) 2 \rbrace\)
 * \(f_{\omega^{\omega}+1}(n) > \lbrace n,n,2 (1) 2 \rbrace\)
 * \(f_{\omega^{\omega}+2}(n) > \lbrace n,n,3 (1) 2 \rbrace\)
 * \(f_{\omega^{\omega}+m}(n) > \lbrace n,n,m+1 (1) 2 \rbrace\)
 * \(f_{\omega^{\omega}+\omega}(n) > \lbrace n,n,n+1 (1) 2 \rbrace > \lbrace n,n,n (1) 2 \rbrace\)
 * \(f_{\omega^{\omega}+\omega+1}(n) > \lbrace n,n,1,2 (1) 2 \rbrace\)
 * \(f_{\omega^{\omega}+2 \omega}(n) > \lbrace n,n,n,2 (1) 2 \rbrace\)
 * \(f_{\omega^{\omega}+\omega^2}(n) > \lbrace n,n,n,n (1) 2 \rbrace\)
 * \(f_{2 {\omega^{\omega}}}(n) > \lbrace n,n (1) 3 \rbrace\)
 * \(f_{3 {\omega^{\omega}}}(n) > \lbrace n,n (1) 4 \rbrace\)
 * \(f_{m {\omega^{\omega}}}(n) > \lbrace n,n (1) m+1 \rbrace\)
 * \(f_{\omega^{\omega+1}}(n) > \lbrace n,n (1) n+1 \rbrace > \lbrace n,n (1) n \rbrace\)
 * \(f_{\omega^{\omega+2}}(n) > \lbrace n,n (1) n,n \rbrace\)
 * \(f_{\omega^{\omega+3}}(n) > \lbrace n,n,n (1) n,n,n \rbrace\)
 * \(f_{\omega^{\omega+m}}(n) > \lbrace n,m (1)(1) 2 \rbrace\)
 * \(f_{\omega^{2 \omega}}(n) > \lbrace n,n (1)(1) 2 \rbrace = \lbrace n,2 (2) 2 \rbrace\)
 * \(f_{\omega^{3 \omega}}(n) > \lbrace n,n (1)(1)(1) 2 \rbrace = \lbrace n,3 (2) 2 \rbrace\)
 * \(f_{\omega^{m \omega}}(n) > \lbrace n,m (2) 2 \rbrace\)
 * \(f_{\omega^{\omega^2}}(n) > \lbrace n,n (2) 2 \rbrace\)
 * \(f_{\omega^{\omega^3}}(n) > \lbrace n,n (3) 2 \rbrace\)
 * \(f_{\omega^{\omega^m}}(n) > \lbrace n,n (m) 2 \rbrace\)
 * \(f_{\omega^{\omega^\omega}}(n) > \lbrace n,n (n) 2 \rbrace = \lbrace n,n (0,1) 2 \rbrace\)
 * \(f_{^4{\omega}}(n) > \lbrace n,n ((1) 1) 2 \rbrace = n \uparrow\uparrow 3 \&\ n\), using array of operator.
 * \(f_{^5{\omega}}(n) > \lbrace n,n ((0,1) 1) 2 \rbrace = n \uparrow\uparrow 4 \&\ n\)
 * \(f_{^6{\omega}}(n) > \lbrace n,n (((1) 1) 1) 2 \rbrace = n \uparrow\uparrow 5 \&\ n\)
 * \(f_{^m{\omega}}(n) > n \uparrow\uparrow m-1 \&\ n\)
 * \(f_{\varepsilon_0}(n) > n \uparrow\uparrow n-1 \&\ n\)