This page requires knowledge of ordinals up to and including \(\varepsilon_0\) and basic ordinal operators. This page does not present any particularly powerful non-OCF ordinal notations.

OCFs are complicated and you will probably have to reread sections multiple times to get a full grasp of the concepts.


You might be wondering how ordinal collapsing functions work. (If you aren't, then this is not the right page for you.)

You already know how Cantor normal form works (if you don't, then this is also not the right page for you) and that it can represent all ordinals below \(\varepsilon_0\) (if you don't, then you do now) and that ordinals are usually defined as the set of ordinals less than themselves (if this is not how you learned ordinals were defined, we will use this definition here). Let's try defining \(\varepsilon_0\) based on being the first ordinal you can't construct with \(\omega^\alpha\), \(\alpha+\beta\) (the operations of CNF), and all ordinals less than itself.

\(C_0(\pi)=\{0\}\cup\pi\\C_{n+1}(\pi)=C_n(\pi)\cup\{\alpha+\beta,\omega^\alpha|\alpha,\beta\in C_n(\pi)\}\\C(\pi)=\bigcup_{n\in\omega}C_n(\pi)\\\varepsilon_0=\min\{\pi|\sup C(\pi)=\pi\}\)

\(C_0(\pi)\) is all ordinals less than \(\pi\) (and not including \(\pi\)) and 0, since otherwise you can't construct any ordinals when \(\pi=0\). \(C_n(\pi)\) is all ordinals constructible in n steps from \(C_0(\pi)\) with \(\alpha+\beta\) and \(\omega^\alpha\) and \(C(\pi)\) is the union of all of those (alternatively, ordinals constructible in finitely many steps from 0 and ordinals below \(\pi\)). Then \(\varepsilon_0\) is the first ordinal such that applying the CNF operations to ordinals below it doesn't get you any new ordinals. The proof that this definition works is beyond the scope of this article.

Now, what would happen if we added \(\varepsilon_0\) to \(C_0(\pi)\)? There would still be a limit to the constructible ordinals (which is obviously higher than \(\varepsilon_0\)), but what could it be? This ordinal is \(\varepsilon_1\). What if we added that to the set? We'd hit a higher ceiling. As we keep upgrading the initial set, the ceiling gets higher and higher. In fact, let's make this a function and call it \(\psi(\alpha)\). It will enumerate these ceiling levels.

\(C_0(\pi,\delta)=\{0\}\cup\pi\\C_{n+1}(\pi,\delta)=C_n(\pi,\delta)\cup\{\alpha+\beta,\omega^\alpha,\psi(\lambda)|\alpha,\beta,\lambda\in C_n(\pi,\delta)\wedge\lambda<\delta\}\\C(\pi,\delta)=\bigcup_{n\in\omega}C_n(\pi,\delta)\\\psi(\delta)=\min\{\pi|\sup C(\pi,\delta)=\pi\}\)

\(C_n\) now has a second argument, which determines what inputs are allowed for \(\psi(\lambda)\). \(C(\pi,0)\) isn't allowed to use \(\psi\) at all, so \(\psi(0)\) is equivalent to the previous definition of \(\varepsilon_0\). \(C(\pi,1)\) has that added, so its limit is \(\varepsilon_1\) (for \(\pi\le\varepsilon_1\)). We can continue to increase the argument to \(\psi\) to 2, \(\omega\), even \(\varepsilon_0\), until eventually we get to \(\psi(\psi(\ldots))\). At this point, we reach an ordinal called \(\zeta_0\). It's the first fixed point of \(\varepsilon_\alpha\), which is the logical extension of \(\varepsilon_0\) and \(\varepsilon_1\). (Something of importance is that other OCFs usually use the least unconstructible ordinal instead of the least unreachable (from below) ordinal. While this does work, it prevents extension past a certain point, which is why I'm using this definition.)

Also, here are the usual definitions of \(\varepsilon_\alpha\) and \(\zeta_\alpha\): \(\varepsilon_\alpha\) is the \(\alpha\)th fixed point of \(\omega^\alpha\) and \(\zeta_\alpha\) is the \(\alpha\)th fixed point of \(\varepsilon_\alpha\). These can be proven to be consistent with the values I showed earlier, but that's outside the scope of this article.

Note that in the definition of \(C_{n+1}(\pi,\delta)\) above, \(\psi\) can only be applied to constructible ordinals. Since \(\psi(\alpha)\) is equal to \(\varepsilon_\alpha\) (for small ordinals), \(\zeta_0\) is a fixed point of it. Any output of \(\psi\) can't be built from below with \(\omega^\alpha\), \(\alpha+\beta\), and outputs of \(\psi\) less than it , so \(C(\pi,\delta)\) will never contain \(\zeta_0\) or anything greater than it (unless \(\pi>\zeta_0\), but that won't happen for \(\psi\) inputs less than \(\zeta_0\)). Therefore, the limit of \(\psi\) is \(\zeta_0\).

Early collapsing

You may consider extending it by adding \(\varepsilon_\alpha\) to \(C_{n+1}(\pi,\delta)\), and that gets you slightly farther (up to the first ordinal \(\alpha\) which is the \(\alpha\)th fixed point of \(\varepsilon_\alpha\)), but there's a far more powerful extension possible: add a new incredibly massive ordinal \(\Omega\) to \(C_0(\pi,\delta)\). This ordinal is the first uncountable ordinal. Essentially, it's the first transfinite ordinal that can't be mapped 1:1 to \(\omega\). Also, we need to restrict \(\psi\)'s outputs to being below \(\Omega\), since otherwise, \(\psi\) will uselessly output ordinals above \(\Omega\). The updated definition is below.

\(C_0(\pi,\delta)=\{0,\Omega\}\cup\pi\\C_{n+1}(\pi,\delta)=C_n(\pi,\delta)\cup\{\alpha+\beta,\omega^\alpha,\psi(\lambda)|\alpha,\beta,\lambda\in C_n(\pi,\delta)\wedge\lambda<\delta\}\\C(\pi,\delta)=\bigcup_{n\in\omega}C_n(\pi,\delta)\\\psi(\delta)=\min\{\pi|\sup(C(\pi,\delta)\cap\Omega)=\pi\}\)

The only changes are that \(\Omega\) has been added to \(C_0(\pi,\delta)\) and that \(\psi(\delta)\) now only uses the sub-\(\Omega\) portion of \(C(\pi,\delta)\). No changes have happened below \(\psi(\Omega)\) since \(\omega^\alpha\) and \(\alpha+\beta\) applied to ordinals above \(\Omega\) will always have outputs above it and \(\psi\) isn't allowed to use \(\Omega\) or any higher ordinals as an argument. \(\psi(\Omega)\) is still \(\zeta_0\), but note that this is \(\psi\) with an input that's in \(C(0,0)\), and therefore all \(C(\pi,\delta)\). As such, it's available to \(C(\pi,\Omega+1)\), so \(\psi(\Omega+1)\) is greater than \(\zeta_0\). It's easy to calculate that it's exactly \(\varepsilon_{\zeta_0+1}\).

We can continue to \(\psi(\Omega+2)=\varepsilon_{\zeta_0+2}\), \(\psi(\Omega+\omega)=\varepsilon_{\zeta_0+\omega}\), \(\psi(\Omega+\varepsilon_0)=\varepsilon_{\zeta_0+\varepsilon_1}\), \(\psi(\Omega+\zeta_0)=\varepsilon_{\zeta_0 2}\)... until we reach \(\psi(\Omega 2)\). The value of this is \(\zeta_1\) (which is the second smallest fixed point of \(\varepsilon_\alpha\)). You may notice that this is equivalent to nesting into the "last" \(\Omega\) in \(\psi\)'s argument. Inputs that behave like this are called diagonalizers. (This is a strictly informal notion and relying on it in function definitions results in an ill-defined function.) It's possible to define OCFs using (a formalized version of) that concept, but outside the scope of this article. (\(\psi\)'s conversion of ordinals greater than \(\Omega\) to ordinals less than \(\Omega\) is why the C in OCF stands for "collapsing".)

You can continue to \(\psi(\Omega\omega)\) (note that multiplication and exponentiation with base \(\ne\omega\) aren't allowed in the OCF's notation, but this doesn't change the representable ordinals), \(\psi(\Omega^2)\), \(\psi(\Omega^\omega)\), \(\psi(\Omega^\Omega)\), and all the way up to \(\psi(\varepsilon_{\Omega+1})\) (\(\varepsilon_\Omega=\Omega\)). At this point, we get stuck again, because \(\varepsilon_{\Omega+1}\) can't be constructed from below using \(\Omega\), \(\omega^\alpha\), and \(\alpha+\beta\). We could try introducing a second big ordinal, but that doesn't get us much farther (it would behave essentially the same way as \(\varepsilon_{\Omega+1}\) and it would get stuck at the next epsilon). Instead, we can add a \(\psi\)-like extension that isn't restricted to being below \(\Omega\) and call it \(\chi\). In fact, let's skip a step and also add the diagonalizer for this new function, \(\Omega_2\). (This is the first ordinal of cardinality \(\aleph_2\), or the first ordinal greater than \(\Omega\) that can't be mapped 1:1 to it.) We'll also need to bound the part of \(C(\pi,\delta)\) that \(\chi\) uses for the same reason as with \(\psi\).

\(C_0(\pi,\delta)=\{0,\Omega,\Omega_2\}\cup\pi\\C_{n+1}(\pi,\delta)=C_n(\pi,\delta)\cup\{\alpha+\beta,\omega^\alpha,\psi(\lambda),\chi(\lambda)|\alpha,\beta,\lambda\in C_n(\pi,\delta)\wedge\lambda<\delta\}\\C(\pi,\delta)=\bigcup_{n\in\omega}C_n(\pi,\delta)\\\psi(\delta)=\min\{\pi|\sup (C(\pi,\delta)\cap\Omega)=\pi\}\\\chi(\delta)=\min\{\pi|\sup (C(\pi,\delta)\cap\Omega_2)=\pi\}\)

The changes here are that \(\Omega_2\) has been added to the initial set and that \(\chi\) has been introduced. \(\chi\) is similar to \(\psi\), but bounded by \(\Omega_2\) rather than \(\Omega\). Since \(\Omega\) is in \(C(\pi,\delta)\) for any \(\pi\) and \(\delta\), \(\chi(\delta)\) will always be greater than \(\Omega\). The first few values of \(\chi\) are the \(\varepsilon_\alpha\) above \(\Omega\), starting with \(\chi(0)=\varepsilon_{\Omega+1}\). Notably, \(\Omega\) has no nesting properties when used in \(\chi\), so \(\chi(\Omega)\) is simply \(\varepsilon_{\Omega 2}\). Then, \(\chi(\Omega_2)\) is \(\zeta_{\Omega+1}\) (\(\zeta_\Omega=\Omega\)) and \(\Omega_2\) in \(\chi\) behaves similarly to \(\Omega\) in \(\psi\).

Something of interest is that \(\psi\) and \(\chi\) are both constant between arguments of \(\zeta_{\Omega+1}\) and \(\Omega_2\), similarly to how \(\psi\) is constant between \(\zeta_0\) and \(\Omega\). Importantly, \(\chi\) doesn't get stuck in that range because \(C(\Omega,\delta)\) (and thus \(C(\pi,\delta)\)) for any possible output of \(\chi\)) contains all ordinals less than \(\Omega\), including \(\zeta_0\). Therefore, \(\chi(\zeta_0+1)\) can construct \(\chi(\zeta_0)\) and is thus greater than it.

We reach the limit again at \(\psi(\varepsilon_{\Omega_2+1})\), and we could make a third function to go past that, add \(\Omega_3\) to diagonalize it, make a fourth function for \(\Omega_3\)-level collapse...but you'd run out of room at \(\omega\) functions. Instead, let's try to combine \(\psi\), \(\chi\), and all the higher functions into one. You may have noticed that the only difference between \(\psi\) and \(\chi\) is the limit on the output. If we moved the limit into an argument, we now have access to an incomprehensibly large number of functions, when before we only had 2! (We also need a general notation for the limits, and \(\Omega_\alpha\) works.)

\(C_0(\pi,\delta)=\{0\}\cup\pi\\C_{n+1}(\pi,\delta)=C_n(\pi,\delta)\cup\{\alpha+\beta,\omega^\alpha,\psi_\alpha(\lambda),\Omega_\gamma|\alpha,\beta,\gamma,\lambda\in C_n(\pi,\delta)\wedge\lambda<\delta\wedge\gamma\ge 1\}\\C(\pi,\delta)=\bigcup_{n\in\omega}C_n(\pi,\delta)\\\psi_\gamma(\delta)=\min\{\pi|\sup (C(\pi,\delta)\cap\gamma)=\pi\}\)

The changes here are that \(\chi\) has replaced with a subscript for \(\psi\) (the standard placement for an OCF "level" argument), and the diagonalizers have been moved into the definition of \(C_{n+1}(\pi,\delta)\). The definition of \(\Omega_\gamma\) is the \(\gamma\)th transfinite ordinal that cannot be mapped 1:1 to any smaller ordinal. \(\Omega_0\) is equal to \(\omega\), \(\Omega_1\) is \(\Omega\), and \(\Omega_2\) stays the same. These ordinals are called initial ordinals, and they are always limits.

A strange thing about this OCF is that \(\psi_{\Omega_\alpha}(\beta)\) for all limit \(\alpha\) is equal to \(\Omega_\alpha\) (challenge: figure out why). In fact, you don't even need to use an initial ordinal on the subscript of \(\psi\), however, these functions also behave trivially.

In this notation, you only ever need to use \(\psi\) subscripts of the form \(\Omega_{\alpha+1}\) for any ordinal \(\alpha\). These ordinals are regular (a transfinite initial ordinal \(\alpha\) such that if a sequence of ordinals less than \(\alpha\) has limit \(\alpha\), there are at least \(\alpha\) ordinals in the sequence), although there are regular ordinals not of that form (one example is \(\omega\), and we'll get to some others in the next section.)


Currently, the limit of all ordinals you can construct in this notation is the first fixed point of \(\Omega_\alpha\). Similarly to when we introduced \(\Omega\) to get past \(\zeta_0\), we can add a new large ordinal to get past this. This ordinal is called \(I\), and it is the first inaccessible (regular ordinal that is a limit of regular ordinals, or fixed point of the regular ordinal enumerator). (Sometimes, \(\omega\) is considered an inaccessible, and in that case \(I\) would be the second inaccessible.) This is a fixed point of \(\Omega_\alpha\), a fixed point of the fixed point enumerator of \(\Omega_\alpha\), and as far as you can diagonalize, so it will work well for this. (Also, you can't construct \(I\) or any set with size \(\ge I\) in ZFC, a strong set theory. To formalize this system in ZFC, you have to use smaller values for \(\Omega_\alpha\) and \(I\).) This is the simplest extension yet–in fact, just adding it to \(C_0(\pi,\delta)\) is enough to increase the system's power dramatically! (This is the point where least-unconstructible-ordinal based OCFs fail, however, since we avoided those, this extension is easy.)

\(C_0(\pi,\delta)=\{0,I\}\cup\pi\\C_{n+1}(\pi,\delta)=C_n(\pi,\delta)\cup\{\alpha+\beta,\omega^\alpha,\psi_\alpha(\lambda),\Omega_\gamma|\alpha,\beta,\gamma,\lambda\in C_n(\pi,\delta)\wedge\lambda<\delta\wedge\gamma\ge 1\}\\C(\pi,\delta)=\bigcup_{n\in\omega}C_n(\pi,\delta)\\\psi_\gamma(\delta)=\min\{\pi|\sup (C(\pi,\delta)\cap\gamma)=\pi\}\)

Now, \(\psi_I(0)\) is the first fixed point of \(\Omega_\alpha\), \(\psi_I(1)\) is the second fixed point...\(\psi_I(I)\) is the first fixed point of the fixed point enumerator... And \(\varepsilon_{I+1}\) isn't a problem since we can construct \(\Omega_{I+1}\). In fact, the limit of the system is now the first \(\Omega_\alpha\) fixed point after \(I\). This can be bypassed by adding \(I_2\), the second inaccessible. \(\psi_{I_2}\) will enumerate the \(\Omega_\alpha\) fixed points after \(I\). Then we can add \(I_3\), \(I_4\)... and then add \(I_\alpha\) in general to \(C_{n+1}(\delta)\). (Note that the limit of \(I_n\) for finite \(n\) is not regular, and therefore isn't \(I_\omega\). It's represented as \(\psi_{I_\omega}(0)\).) Finally, we can add a large ordinal to diagonalize \(I_\alpha\), and a nice choice is \(I(1,0)\), the first regular limit of inaccessibles (or the first fixed point of \(I_\alpha\), which is not the limit of nesting \(I_\alpha\) on 0 since that's not regular)

\(C_0(\pi,\delta)=\{0,I(1,0)\}\cup\pi\\C_{n+1}(\pi,\delta)=C_n(\pi,\delta)\cup\{\alpha+\beta,\omega^\alpha,\psi_\alpha(\lambda),\Omega_\gamma,I_\gamma|\alpha,\beta,\gamma,\lambda\in C_n(\pi,\delta)\wedge\lambda<\delta\wedge\gamma\ge 1\}\\C(\pi,\delta)=\bigcup_{n\in\omega}C_n(\pi,\delta)\\\psi_\gamma(\delta)=\min\{\pi|\sup (C(\pi,\delta)\cap\gamma)=\pi\}\)

We could then add \(I(1,1)\) (second fixed point of \(I_\alpha\)), \(I(1,2)\) (third fixed point), \(I(1,\alpha)\) in general, \(I(2,0)\) as a diagonalizer (fixed point of \(I(1,\alpha)\)), \(I(\alpha,\beta)\) in general (fixed points of \(\alpha\rightarrow I(\gamma,\alpha)\) for all \(\gamma<\alpha\)), \(I(1,0,0)\) as a diagonalizer (fixed point of \(I(\alpha,0)\)), \(I(1,0,\alpha)\), \(I(1,1,0)\)...

At this point, if you look up the ternary Veblen function, you may notice the similarity between the definitions of \(I(\alpha,\beta,\gamma)\) and \(\phi(\alpha,\beta,\gamma)\). \(\phi(\alpha,\beta,\gamma)\) for \(\alpha>0\) or \(\beta>0\) and all arguments less than \(\psi(\Omega^{\Omega^2})\) is representable using \(\psi\) with an argument less than \(\Omega^{\Omega^2}\). (This can be verified by computing values of \(\psi\).) Using an argument of \(\Omega^{\Omega^2}\) produces an ordinal that is a fixed point of \(\phi(\alpha,0,0)\), and higher powers produce more elaborate extensions. Would it be possible to do such a thing with the \(I(\alpha,\beta,\gamma)\) function? No ordinal in \(\psi\)'s subscript would do it, unfortunately, since for regular subscripts it would just enumerate nonregular nestings (possibly after a startup period) and nonregular subscripts are redundant.

Weakly Mahlos

However, what if we made a function \(\chi\) that's like \(\psi\) but restricted to regular ordinals? (This function is different from the \(\chi\) in traditional OCFs at this level and the \(\chi\) at the \(\Omega_2\) level.) Assuming we remove \(I_\alpha\), it would initially enumerate the inaccessibles. To get to \(I(1,0)\), we'd need a diagonalizer. A good choice is \(M\), the first weakly Mahlo ordinal. To define a weakly Mahlo ordinal, we need to define a couple other things first. A closed set of ordinals is one such that for any subset of itself, it contains the limit of that subset or the limit of the subset is the limit of the set itself. An unbounded subset \(\alpha\) of an ordinal \(\beta\) is a subset such that its limit is \(\beta\). A stationary subset \(\alpha\) of an ordinal \(\beta\) is a subset such that every closed and unbounded subset of \(\beta\) contains at least one element of \(\alpha\). A weakly Mahlo ordinal is an ordinal such that the set of regular ordinals less than itself is stationary in itself.

\(C_0(\pi,\delta)=\{0,M\}\cup\pi\\C_{n+1}(\pi,\delta)=C_n(\pi,\delta)\cup\{\alpha+\beta,\omega^\alpha,\psi_\alpha(\lambda),\Omega_\gamma,\chi(\lambda)|\alpha,\beta,\gamma,\lambda\in C_n(\pi,\delta)\wedge\lambda<\delta\wedge\gamma\ge 1\}\\C(\pi,\delta)=\bigcup_{n\in\omega}C_n(\pi,\delta)\\\psi_\gamma(\delta)=\min\{\pi|\sup (C(\pi,\delta)\cap\gamma)=\pi\}\\\chi(\delta)=\min\{\pi|\sup (C(\pi,\delta)\cap M)=\pi\wedge(\pi~is~regular)\}\\\)

The changes here are that \(I_\alpha\) has been replaced with \(\chi\), which is the same as \(\psi\) but is restricted to regular outputs and has a fixed subscript, and that \(M\) has replaced \(I(1,0)\) in the initial set. (Note that \(\pi~is~regular\) can be replaced with a formal definition, but it's not particularly important for our purposes. As an exercise in set theory, you may wish to formalize regularity.)

Strangely, \(\psi_{I(1,0)}(0)\) is now equal to \(\psi_I(0)\). Why? Because you can't construct any inaccessible ordinals without \(\chi\), and you don't have any access to \(\chi\) in \(C(\pi,0)\) for any \(\pi\). In fact, \(\psi_{I(1,0)}\)'s normal behavior (enumerating nestings of \(I_\alpha\)) doesn't start until \(\psi_{I(1,0)}(M)\). This is because \(M\) is the first ordinal such that \(C(0,\alpha+1)\) contains \(I(1,0)\), so for lower arguments \(\psi_{I(1,0)}\) does not have access to itself.

Something important at this stage is the way diagonalizers behave. Previously, there was no distinction between a diagonalizer nesting and creating fixed points. However, it matters now because \(\chi(\chi(\ldots))\) is \(\psi_{I(1,0)}(M)\) but the fixed point of \(\chi\) is \(I(1,0)\) itself. \(\chi(M)\) is \(I(1,0)\), but this is nontrivial. Without \(M\), the limit of the notation would be \(\psi_{I(1,0)}(M)\) because \(\chi\) is equal to \(I_\alpha\) below \(I(1,0)\). (This can be proven with a similar argument to this one.) However, \(\chi(M)\ne\psi_{I(1,0)}(M)\), because \(\psi_{I(1,0)}(M)\) isn't regular. \(\chi(M)\) would have to be at least \(\Omega_{\psi_{I(1,0)}(M)+1}\), but then you could construct \(\Omega_{\psi_{I(1,0)}(M)+1}+1\), so the limit would have to be higher... This argument works for all \(I_\alpha\) nestings up to \(I(1,0)\). However, since \(I(1,0)\) is regular, it's a valid output of \(\chi\), so there's no reason for \(\chi(M)\) to be higher, so \(\chi(M)=I(1,0)\).

Like when \(I\) was introduced, we can construct more initial ordinals above \(M\) using \(\Omega_\alpha\). Also like when \(I\) was introduced, we get stuck at the first \(\Omega_\alpha\) fixed point above \(M\). However, we can use a similar trick as back in the \(\Omega_2\) days and add a subscript to \(\chi\) and more weakly Mahlos to increase the limit. We'll also throw in \(M(1,0)\) (the first weakly Mahlo cardinal that is limit of weakly Mahlos) as a diagonalizer.

\(C_0(\pi,\delta)=\{0,M(1,0)\}\cup\pi\\C_{n+1}(\pi,\delta)=C_n(\pi,\delta)\cup\{\alpha+\beta,\omega^\alpha,\psi_\alpha(\lambda),\Omega_\gamma,\chi_\alpha(\lambda),M_\gamma|\alpha,\beta,\gamma,\lambda\in C_n(\pi,\delta)\wedge\lambda<\delta\wedge\gamma\ge 1\}\\C(\pi,\delta)=\bigcup_{n\in\omega}C_n(\pi,\delta)\\\psi_\gamma(\delta)=\min\{\pi|\sup (C(\pi,\delta)\cap\gamma)=\pi\}\\\chi_\gamma(\delta)=\min\{\pi|\sup (C(\pi,\delta)\cap \gamma)=\pi\wedge(\pi~is~regular)\}\)

The changes here are that \(M\) has been replaced with a general \(M_\alpha\), \(M(1,0)\) has been added to diagonalize it, and \(\chi\) now has a subscript. Note that \(\chi_{M(1,0)}(0)\), the first regular limit of weakly Mahlos, is smaller than \(M(1,0)\).

To continue, we could add \(M(1,1)\), \(M(1,2)\), \(M(1,\omega)\), \(M(1,\alpha)\), \(M(2,0)\) (first weakly Mahlo limit of \(M(1,\alpha)\) ordinals), \(M(2,1)\), \(M(2,\alpha)\), \(M(3,0)\) (first weakly Mahlo limit of \(M(2,\alpha)\) ordinals)... This seems similar to how \(I(\alpha,\beta,\gamma)\) worked. Can we extend using the same methods? Yes!

\(C_0(\pi,\delta)=\{0,N\}\cup\pi\\C_{n+1}(\pi,\delta)=C_n(\pi,\delta)\cup\{\alpha+\beta,\omega^\alpha,\psi_\alpha(\lambda),\Omega_\lambda,\chi_\alpha(\lambda),\Xi(\lambda)|\alpha,\beta,\gamma,\lambda\in C_n(\pi,\delta)\wedge\lambda<\delta\wedge\gamma\ge 1\}\\C(\pi,\delta)=\bigcup_{n\in\omega}C_n(\pi,\delta)\\\psi_\gamma(\delta)=\min\{\pi|\sup (C(\pi,\delta)\cap\gamma)=\pi\}\\\chi_\gamma(\delta)=\min\{\pi|\sup (C(\pi,\delta)\cap\gamma)=\pi\wedge(\pi~is~regular)\}\\\Xi(\delta)=\min\{\pi|\sup (C(\pi,\delta)\cap\gamma)=\pi\wedge(\pi~is~weakly~Mahlo)\}\\\)

We've replaced \(M_\alpha\) with a third function called \(\Xi\) that's like \(\chi\) but is restricted to weakly Mahlo ordinals instead of regular ordinals. There's also \(N\) to diagonalize it. \(N\) is the first 1-weakly Mahlo ordinal (traditionally known as \(\Xi[1]\), but that conflicts with our usage of \(\Xi\)), which are defined as ordinals such that the set of weakly Mahlo ordinals below them is stationary in them.

Weakly compacts

The next step would be to add a subscript to \(\Xi\) and more 1-weakly Mahlo ordinals, like \(N_2\), \(N_3\)... \(N_\alpha\), \(N(1,0)\) to diagonalize... and this seems similar to \(I(\ldots)\) and \(M(\ldots)\), so we'll generalize with a new collapsing function, and introduce a the first 2-weakly Mahlo ordinal as a diagonalizer, which is the first ordinal such that the set of 1-weakly Mahlo ordinals less than it is stationary in it, and create more 2-weakly Mahlos, and extend in a similar way with 3-weakly Mahlos... but this seems similar to the \(\Omega_3\) situation, so we can combine these functions into one. However, there's a problem: \(\psi\) uses subscripts generated by \(\chi\) which uses subscripts generated by \(\Xi\) which uses subscripts generated by... which is an infinite recursion. To solve this, we can add another function that gives you the first regular ordinal, the first weakly Mahlo ordinal, the first 1-weakly Mahlo ordinal... to allow the recursion to terminate.

\(C_0(\pi,\delta)=\{0\}\cup\pi\\C_{n+1}(\pi,\delta)=C_n(\pi,\delta)\cup\{\alpha+\beta,\omega^\alpha,\psi^\upsilon_\beta(\lambda),\Omega_\gamma,\Xi(\gamma)|\alpha,\beta,\gamma,\lambda,\upsilon\in C_n(\pi,\delta)\wedge\lambda,\upsilon<\delta\wedge\gamma\ge 1\}\\C(\pi,\delta)=\bigcup_{n\in\omega}C_n(\pi,\delta)\\M(0)=Ord\\M(1)=\{\alpha|\alpha ~is~regular\}\\M(\alpha)=\{\beta|\forall\gamma\in\alpha:M(\gamma)\cap\beta~is~stationary~in~\beta\}\\\psi^\alpha_\beta(\delta)=\min\{\pi|\sup (C(\pi,\delta)\cap\beta)=\pi\wedge\pi\in M(\alpha)\}\\\Xi(\alpha)=\min(M(\alpha))\)

The 3 functions in the previous OCF have been merged into \(\psi\), and the "level" is in the superscript. \(M(\alpha)\) is the sequence of function output restrictions. \(M(0)\) is all ordinals, and so \(\psi^0_\alpha\) has unrestricted output. \(M(1)\) is the regular ordinals, so \(\psi^1_\alpha\) is the same as \(\chi_\alpha\) in the last OCF. Then, \(M(2+\alpha)\) is the \(\alpha\)-weakly Mahlo ordinals. The \(\alpha\)-weakly Mahlo ordinals are the ordinals such that for all \(\gamma<\alpha\), the \(\gamma\)-weakly Mahlo ordinals less than them are stationary in them. There's also the \(\Xi\) function, which creates initial subscripts for \(\psi\). The limit of this notation is now the limit of nesting \(\alpha\rightarrow \Xi(\alpha)\). To get to this and far past it, we can make a collapsing extension of \(\alpha\)-weakly Mahlos. \(M(\alpha)\) is the logical function to change, and we can use a weakly compact ordinal to diagonalize it.

\(C_0(\pi,\delta)=\{0,K\}\cup\pi\\C_{n+1}(\pi,\delta)=C_n(\pi,\delta)\cup\{\alpha+\beta,\omega^\alpha,\psi^\upsilon_\beta(\lambda),\Omega_\gamma,\Xi(\gamma)|\alpha,\beta,\gamma,\lambda,\upsilon\in C_n(\pi,\delta)\wedge\lambda,\upsilon<\delta\wedge\gamma\ge 1\}\\C(\pi,\delta)=\bigcup_{n\in\omega}C_n(\pi,\delta)\\M(0)=\textrm{Ord}\\M(1)=\{\alpha\in K|\alpha ~is~regular\}\\M(\alpha)=\{\beta\in K|\forall\gamma\in\alpha\cap C(\beta,\alpha):M(\gamma)\cap\beta~is~stationary~in~\beta\}\\\psi^\alpha_\beta(\delta)=\min\{\pi|\sup (C(\pi,\delta)\cap\beta)=\pi\wedge\pi\in M(\alpha)\}\\\Xi(\alpha)=\min(M(\alpha))\\\)

A weakly compact ordinal is an uncountable ordinal \(\alpha\) such that a complete graph with \(\alpha\) vertices that has its edges colored with 2 colors has a subgraph with \(\alpha\) vertices such that all the edges between them have only one color. \(M(K)\) is the set of ordinals \(\alpha\) that are \(\alpha\)-weakly Mahlo. You can continue to \(M(K+1)\), \(M(K+2)\), \(M(K+M)\), \(M(K2)\), \(M(K\omega)\), \(M(K^2)\), \(M(K^K)\), \(M(\varepsilon_{K+1})\) and beyond, up to the first \(\Omega_\alpha\) fixed point above \(K\). You could then imagine adding inaccessibles above \(K\), weakly Mahlos above \(K\), more weakly compacts, \(K(1,0)\), Mahlo extensions of the weakly compacts (ordinals such that the set of weakly compact ordinals below them are stationary in them, or the next "level" of weak Mahloness after weak compactness), a collapsing extension of those levels (the usual diagonalizer of Mahlo extensions of compacts is a \(\Pi^1_2\) indescribable)... But I'll end this post here and leave the rest to you . Good luck!

This blog post was written over the span of 6 days. I referenced Deedlit's 5th and 6th blog posts about ordinal notations frequently when writing this post. I used the MathJax live demo a lot while writing the OCF definitions.

Community content is available under CC-BY-SA unless otherwise noted.