I often enjoy generating terminating sequences for countable (recursive, of course) ordinals. My process is as follows.
Say we pick a natural number, in my case, almost always: two. Then we pick a countable, recursive ordinal, let’s pick $\omega^\omega$, for sake of simplicity. The we define a (descending, hence finite) sequence of ordinals as follows:
The first term in our sequence is just the original recursive ordinal itself (here $\omega^\omega$).
If the $i$th term is a nonzero limit ordinal $\lambda$, the $(i+1)$th term is the $n$th term in $\lambda$'s fundamental sequence.
If the $i$th term is a successor ordinal $\beta$, the $(i+1)$th term is the largest limit ordinal $<\beta$.
If the $i$th term is $0$, the sequence stops.
In our example, the sequence for $\omega^\omega$ is ($\omega$, $\omega^2$, $\omega^3$, $\cdots$), so the second term is $\omega^2$. The canonical sequence for $\omega^2$ is $(\omega,\omega2,\omega3,...)$, so the third term is $\omega2$. The canonical sequence for $\omega2$ is $(\omega+1,\omega+2,\omega+3,...)$, so we get $\omega+2$ next. Now we're at a successor ordinal, so we drop down to $\omega$. The fundamental sequence for $\omega$ is just $(1,2,3,...)$ so our next term is $2$, and we then drop to $0$ and terminate, so the whole sequence is $$(\omega^\omega,\omega^2,\omega2,\omega+2,2,0).$$
If I count the number of steps taken to reach $0$ we get $5$. As we know that every decreasing sequence of ordinals is finite, is there a way to compute this number of steps, without manually working through the process.
Any insight would be helpful, thanks.