User blog comment:Fluoroantimonic Acid/(C) FGH up to phi(w,0)/@comment-5529393-20150812175134

There seem to be several problems with this.

It looks like _fast_growing_hierarchy (o,r,n) is meant to represent $$f_o^r(n)$$, but then _fast_growing_hierarchy(0,r,n) should be n+r, not n+1.

More problematic is that for limit ordinals you have _fast_growing_hiearchy(ORD o, int r, int n) = _fast_growing_hiearchy(ord_get_fs(o, n), r, n), which would mean $$f_o^r(n) = f_{o[n]}^r(n)$$, which is incorrect; only the innermost f has an input of n.

You say that {p,0,n} represents p, but then ord_get_fs ({p,0,n},m)) = p, which also represents p, so that isn't right.

You say that {p,k,1} will return p except when k = 1, but it looks like it returns p for all k > 0.

You need to find fundamental sequences for OMEGA at some point, but I don't see that anywhere.

Anything with n = 1 ord_get_fs will return p, so for o = OMEGA_PLUS_ONE, OMEGA_TIMES_TWO, OMEGA_SQUARED, OMEGA_POWER_OMEGA, and EPSILON_ZERO, ord_get_fs will return OMEGA no matter the value of n.

The general case ord_get_fs({p,k,n},m) = {{p,k,n-1},k-1,m} doesn't really work. For example, take {OMEGA, 3, 3} which is supposed to represent omega^3. Evaluating it at m yields {{OMEGA, 3, 2}, 2, m} which represents (omega^2)*m which is okay. But evaluating at n yields {{{OMEGA, 3, 2}, 2, m-1}, 1, n} which represents (omega^2)*(m-1) + n, which is not correct, since the supremum as n goes to infinity would be (omega^2)*(m-1) + omega.