The Fast Iteration Hierarchy is similar to the Fast Growing Hierarchy but it is more versatile. # designates rest of array. The rules are as follows:
1. (base rule I) f(a){[1]b} = f(f(...)) w/ b f() (Usually f(a) is successorship but it can be any function.)
2. (base rule II) f(a){[0]b} = f(a){}
3. (base rule III) f(a){} = f(a)
4. (catastrophic rule) f(a){[b+1]c} = f(a){[b]a[b]a#} w/ c [b]a
5. (limit rule) For any limit ordinal b in an array f(a){#}, b is replaced with the ath member of it's fundamental sequence
6. (collapsing rule) f(a){[b]c[d]e#} = g(a){[d]e#} w/ g(a) = f(a){[b]c}
This is as powerful as the FGH, yet more versatile due to how it can take lots of values. I have on problem with it though, the ordinals may not be enough to exactly replicate some separators in other notations. You can easily resolve this by introducing custom separators, but whether they correspond to an ordinal or not is still a question.
A few other things:
Add these rules and you have yourself an extension.
1. f(a){[{1}]b} = f(a){[1]b}
2. f(a){[{b+1}]c} = f(a){[{b}]a[{b}]a#} w/ c [{b}]a
3. f(a){[{b}]c} = sup{f(a){[{1st member of the fundamental sequence of b}], f(a){[{2nd member of the fundamental sequence of b}], f(a){[{3rd member of the fundamental sequence of b}]...} if b is a limit ordinal
4. f(a){[b]{c}} = sup{f(a){[b](1st member of the fundamental sequence of c)}, f(a){[b](2nd member of the fundamental sequence of c)}, f(a){[b](3rd member of the fundamental sequence of c)}...} if c is a limit ordinal.
Also I notate stops like this:
f(a){#_1:#_2} = f(f(a){#_1}){#_2}
In more FGH-like words:
1. f(a){[b+1]c} = f_b(a) iterated c times, w/ f(a) replaces f_0(a).
2. f(a){[0]b} = f(a){}
3. f(a){} = f(a)
4. For any limit ordinal b in an array f(a){#}, b is replaced with the ath member of it's fundamental sequence.
5. f(a){[b]c[d]e#} = g(a){[d]e#} w/ g(a) = f(a){[b]c}.
Of course, this lend itself to SGH and HH versions.
Hardy Iteration Hierarchy
1. f(a){[b+1]c} = f(a+c)
2. f(a){[0]b} = f(a){}
3. f(a){} = f(a)
4. For any limit ordinal b in an array f(a){#}, b is replaced with the ath member of it's fundamental sequence.
5. f(a){[b]c[d]e#} = g(a){[d]e#} w/ g(a) = f(a){[b]c}.
Slow Iteration Hierarchy
1. f(a){[b+1]c} = f(a)+c
2. f(a){[0]b} = f(a){}
3. f(a){} = f(a)
4. For any limit ordinal b in an array f(a){#}, b is replaced with the ath member of it's fundamental sequence.
5. f(a){[b]c[d]e#} = g(a){[d]e#} w/ g(a) = f(a){[b]c}.
Even though they grow slower, they are more versatile (not by much, just creating functions which grow slower than successorship), with the SIH being the most versatile.