\documentclass[10pt]{article}
\title{Transfinite ordinals}

\usepackage[left=1cm,right=1cm,top=2cm,bottom=2cm]{geometry}
\usepackage[utf8]{inputenc}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{comment}
\usepackage{verbatim}

\begin{document}

\title{A Tutorial Overview of Ordinal Notations}
\author{Jacques Bailhache (jacques.bailhache@gmail.com)}

\maketitle

\setlength{\parindent}{0pt}

\section{Interest of transfinite ordinal numbers}

The domain of transfinite ordinal numbers, or ordinals, has the particularity of being the only mathematical domain that cannot be automated. In all other domains of mathematics, it is at least theoretically possible to deduce the theorems automatically from a formal system consisting of a finite set of axioms and rules. But Gödel proved that given any formal system of a theory sufficiently powerful to contain arithmetics, it is possible to build a proposition that expresses its own unprovability in this formal system. This proposition, which is very huge, has also a meaning as an ordinary arithmetic proposition, but is very useless in ordinary arithmetics. If the formal system is consistent, then this proposition is undecidable. 

At first sight one could think that we just have to add this proposition to the system as an axiom, but this augmented system also have its own Gödelian proposition. By adding successively Gödelian propositions, we obtain an infinite sequence of systems, and the system defined as the union of all these systems also has its Gödelian proposition, and so on. 
But according to Solomon Feferman in "Penrose’s Gödelian argument" http://math.stanford.edu/~feferman/papers/penrose.pdf p.9 : 

"one obtains completeness for all arithmetical sentences in a progression based on the transfinite iteration of the so-called global or uniform reflection principle" 

The uniform reflection principle, which is something similar to adding the Gödelian proposition as an axiom, is described for example in John Harrison's paper "Metatheory and Reflection in Theorem Proving: A Survey and Critique" 

http://www.cl.cam.ac.uk/~jrh13/papers/reflect.ps.gz p.18 : 

\[ \vdash \forall n . Pr(\lceil \phi[n] \rceil) \Rightarrow \phi[n] \]

Harrison also says p.19 : 

"Feferman showed that a transfinite iteration based on it proves all true sentences of number theory". 

So we can say that the construction of transfinite ordinals can store all the creative part of mathematics. 

\section{Mathematical reminders}

\subsection{Combinatory logic and lambda calculus}

These theories are formalization of the notion of information processing. 

Everything is represented by information processing or functions, even data. An elementary piece of data, like a boolean data (true or false), can be represented by a function with two variables, which gives the first one if the value is true, or the second one if the value is false. A structured information, for example a couple of value, is represented by a function that, when applied to the boolean true value, gives the first value of the couple, and when applied to the boolean false, gives the second value of the couple.

A function with two variables is represented by a function that, when applied to the first variable, gives another function which, when applied to the second variable, gives the final result, and so on. A function that gives several result can be represented by a function that gives a structured containing all the results. So we have to consider only functions that, when applied to one variable, also called "argument" or sometimes "parameter", give one result.

The application of a function f to a variable x is written "f x".

"(f x) y" may be written simply "f x y".

The following cases can be distinguished according to the relationship between the variable to which the function is applied and the result of the application of this function to this variable :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item The result is the variable itself : the function is called identity, written "I". For any x, we have I x = x.

\item The result is y which does not depend on the variable. The function is a constant function which always gives y as result. It is written "K y". For any x and y, we have K y x = y.

\item The result is the result of the application of a to b, where both a and b may depend on the variable. In this case, the function is written "S f g" where f is a function that gives a when applied to the variable and g is a function that gives b when applied to the variable. For any f, g and x, S f g x = f x (g x).

\end{itemize}

Any function can be represented by applications of I, K and S, or even only K and S, because I = S K K. This is called "combinatory logic".

But with this representation we obtain huge expressions difficult to read and understand. So we will introduce a notation to represent the function that, when applied to a variable x, gives a result M, where M represents an expression that may contain one or several occurences of x. Different notations are used, depending on typographic possibilities, for example :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item M with x replaced by \^x (Principia Mathematica)
\item \^x.M (original notation not very used)
\item \^{}x.M
\item \textbackslash x.M
\item \( \lambda x . M \) (probably the most used notation in lambda calculus)
\item \( (\lambda x M) \)
\item \( \lambda x [M]  \)
\item \( [x].M \)
\item \( x \mapsto M \)
\item \( \lambda x \rightarrow M \) or \textbackslash x -$>$ M  (in Haskell)

\end{itemize}

\( \lambda x . \lambda y . \lambda z . M \) may be written \( \lambda x y z . M \).

This is the lambda calculus notation.

The combinatory logic representation of a function can be retrieved from its lambda calculus representation using the following correspondence rules : 

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \lambda x . x = I \)
\item \( \lambda x . y = K y \) if y does not contain x
\item \( \lambda x . (a b) = S (\lambda x . a) (\lambda x . b) \)
\end{itemize}

\( (\lambda x . M) N \) is the result of the substitution of x by N in M.

\bigskip

The lambda calculus notation has a disadvantage for example \( \lambda x . x \) and \( \lambda y . y \) represent the same function although they are different expressions. To avoid this disadvantage, we can use De Bruijn index. With this notation, this function is written \( \lambda 1 \). Each occurence of a variable is replaced by a natural number n which means the variable corresponding to the n-th \( lambda \) in which it is nested, starting from the innermost. 

With this notation we have :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( I = \lambda 1 \)
\item \( K = \lambda \lambda 2 \)
\item \( S = \lambda \lambda \lambda 3 1 (2 1) \)
\end{itemize}

I will sometime use the notation \( [ \ldots * \ldots ] \) or \( [ \ldots \bullet \ldots ] \) for \( \lambda \ldots 1 \ldots \).

\bigskip

See also https://ryanflannery.net/research/logic-notes/Church-CalculiOfLambdaConversion.pdf for more information about combinatory logic and lambda calculus.


\subsection{Natural numbers}

Natural numbers are defined by Peano axioms :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item 0 is a natural number.
\item Every natural number has a successor.
\item 0 is not the successor of any natural number.
\item If two natural numbers have the same successor, they are equal.
\item If 0 has a property, and if the fact that some natural number has this property implies that its successor also has this property, then every natural number has this property.

\end{itemize}

Arithmetical operations are defined as follow, where suc(n) represents the successor of the natural number n :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item addition : \( a+0=a ; a+suc(b)=suc(a+b) \)
\item multiplication : \( a \cdot 0 = 0 ; a \cdot suc(b) = (a \cdot b) + a \)
\item exponentiation : \( a^0 = 1 ; a^{suc(b)} = a^b \cdot a  \)
\end{itemize}

For natural numbers, the addition and the multiplication are commutative : \( a+b = b+a ; a \cdot b = b \cdot a \), but not the exponentiation : generally \( a^b \neq b^a \).

We shall see later that the addition and the multiplication of transfinite ordinal numbers are not commutative.

\subsection{Composition and iteration of functions}

The composition of two functions f and g, written B f g or \( f \circ g \) is a function satisfying \( (f \circ g) x = f (g x) \).

The composition of a function with itself \( f \circ f \) can be written \( f^2 \).

More generally, the n-th iterate \( f^n \) of the function f is defined by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( f^0 = I \)
\item \( f^{suc(n)} = f \circ f^n \)
\end{itemize}

and has the following properties :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( f^{a+b} = f^b \circ f^a \)
\item \( f^{a \cdot b} = (f^a)^b \)

\end{itemize}

\subsection{Different ways of representing finite sequences}

A finite sequence of length n of elements of a given set S can be considered as a function which, to each natural number less than n, associates an element of S.

For example, we can define a finite sequence of length 4 of natural numbers by the function f defined by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item f(0) = 4
\item f(1) = 3
\item f(2) = 0
\item f(3) = 8
\end{itemize}

There are different ways to represent such a sequence :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item Comma separated list, from left to right : 4,3,0,8
\item Comma separated list, from right to left : 8,0,3,4
\item Matrix with values and ranks :
\(
  \begin{pmatrix}
    4 & 3 & 0 & 8 \\
    0 & 1 & 2 & 3
  \end{pmatrix}
\)
\item Matrix with values and ranks, omitting null values :
\(
  \begin{pmatrix}
    4 & 3 & 8 \\
    0 & 1 & 3
  \end{pmatrix}
\)
\item Polynom : \( 8 x^3 + 3 x + 4 \)
\item A number whose representation in base n is the considered sequence, where n in any number greater than all numbers of the sequences, for example for n = 10, the number 8034. This is also the value of the polynom for x = n.
\end{itemize}

Some representations of ordinals use finite sequences of ordinals. Different ways of representing sequences are used by these representations, for example comma separated list for Veblen function with finitely many variables, matrix with values and ranks for Schütte bracket or Klammersymbol, or base \( \Omega \) representation for collapsing functions, where \( \Omega \) is an ordinal which is greater than all ordinals of the sequence, for example if we want to represent sequences of countable ordinals, we can use for \( \Omega \) the least uncountable ordinal \( \omega_1 \).

\subsection{Set theory}

A set is a well-determined unordered collection of elements. 

\( a \in A \) means that a is an element of the set A.

The set B is a subset of the set A if and only if each element of B is also an element of A. 

A binary relation R on a set A is a set of ordered pairs (a, b) of elements of A. \( (a, b) \in R \) may be written a R b.



\subsubsection{Cardinality of a set}

The cardinality of a finite set is simply its number of elements.

The cardinality can be generalized to infinite sets. Two sets have the same cardinality if there is a bijection between them, which is a relation that associates one element of the second set to any element of the first set and reciprocally. The cardinality of a set A is less than the cardinality of a set B if any element of A can be associated with an element of B but there are some elements of B which are not associated to any element of A. For example, the cardinality of the natural numbers is less than the cardinality of the real numbers.

\subsubsection{Cofinal subsets}

If A is a set with a binary relation R and B is a subset of A, then B is said to be a cofinal subset of A with respect to R if, for every \( a \in A \), there exists some \( b \in B \) such that a R b.

When R is an order relation like \( "<" \) (less than), cofinal subsets are sometimes said to be unbounded.

\section{Defining transfinite ordinal numbers}

Natural numbers can be represented by sets. Each number is represented by the set of all numbers smaller than it.
\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( 0 = \lbrace\rbrace \) (the empty set)
\item \( 1 = \lbrace 0 \rbrace = \lbrace\lbrace\rbrace\rbrace \)
\item \( 2 = \lbrace 0, 1 \rbrace = \lbrace\lbrace\rbrace,\lbrace\lbrace\rbrace\rbrace\rbrace \)
\item \( 3 = \lbrace 0, 1, 2 \rbrace = \lbrace\lbrace\rbrace,\lbrace\lbrace\rbrace\rbrace,\lbrace\lbrace\rbrace,\lbrace\lbrace\rbrace\rbrace\rbrace\rbrace \)
\item ...
\end{itemize}
The successor of a natural number can be defined by \( suc(n) = n+1 = n \cup \lbrace n \rbrace \).

We have \( n \leq p \) if and only if \( n \subseteq p \).

\( \mathbb{N} \) is the set of all natural numbers : \( \mathbb{N} = \lbrace0,1,2,3,\ldots\rbrace \)
The natural numbers can be generalized to what is called "transfinite ordinal numbers", or simply "ordinal numbers" or "ordinals", by considering that infinite sets represent ordinal numbers. \( \mathbb{N} \) considered as an ordinal number is written \( \omega \).
\( \omega \) is the least ordinal which is greater than all the numbers 0, 1, 2, 3, ... We say that \( \omega \) is a limit ordinal and 0, 1, 2, 3, ... is a fundamental sequence of \( \omega \). This is written : \( \omega = sup \lbrace 0, 1, 2, 3, ... \rbrace \) or \( \omega = lim ( n \mapsto n )  \) because the n-th element (starting with 0) of the sequence is n. An ordinal does not have a unique fundamental sequence, for example 1, 2, 3, 4, ... is also a fundamental sequence of \( \omega \), because the least ordinal that is greater than all ordinals of this sequence is also \( \omega \) (more generally the limit ordinal is the same if any number of the least items of a sequence are removed), and the same stands for the sequence 0, 2, 4, 6, ...

Any ordinal can be defined as the least ordinal strictly greater than all ordinals of a set : the empty set for 0, \(\lbrace \alpha \rbrace\) for the successor of \( \alpha \),  \(\lbrace \alpha_0,\alpha_1,\alpha_2,...\rbrace\) for an ordinal with fundamental sequence \(\alpha_0, \alpha_1, \alpha_2, ...\)

The successor can be generalized to transfinite ordinal numbers : \( suc(\omega) = \omega+1 =\omega \cup \lbrace \omega \rbrace = \lbrace 0, 1, 2, 3, \ldots, \omega \rbrace ; suc(suc(\omega)) = \omega+2 = \lbrace 0, 1, 2, 3, \ldots, \omega, \omega+1 \rbrace \) and so on.

Then we can consider the set \( \lbrace 0, 1, 2, 3, \ldots, \omega, \omega+1, \omega+2, \omega+3, \ldots \rbrace \) which is a limit ordinal, and \( \omega, \omega+1, \omega+2, \omega+3, \ldots \) is a fundamental sequence of this ordinal. This ordinal is \( \omega+\omega = \omega \cdot 2 \) or \( \omega \cdot 2 \) or \( \omega 2 \).

Then we can go on building greater and greater ordinals : \( \omega \cdot 3, \ldots, \omega \cdot \omega = \omega^2, \omega^3, \ldots, \omega^\omega, \omega^{\omega^\omega}, \ldots \).

\bigskip

\( \omega \) is the least ordinal which has not a finite cardinality. 

\( \omega_1 \) is the least uncountable ordinal (an uncountable ordinal is an ordinal whose cardinality is strictly greater than the cardinality of \( \omega \)), and is also the set of all countable ordinals (ordinals whose cardinality is less than or equal to the cardinality of \( \omega \)). This means that all ordinals less than \( \omega_1 \) are countable, and \( \omega_1 \) and all ordinals greater than it are uncountable.

We can define a sequence of ordinals \( \omega_k \) where k is a natural number by \( \omega_0 = \omega \) and \( \omega_{k+1} \) is the least ordinal whose cardinality is greater than the cardinality of \( \omega_k \).

\bigskip

Any ordinal \( \alpha \) can be defined by either :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item Zero : \( \alpha = 0 \)

\item The successor of another ordinal : \( \alpha = suc(\beta) = \beta+1 \) 

\item A limit ordinal : \( \alpha = lim_\beta f = sup_{\xi \in \beta} \lbrace f(\xi) \rbrace \)

where for any \( \xi \in \beta \) or \( \xi < \beta, f(\xi) \) is an ordinal. A limit ordinal can always be defined as \( lim_{\omega_k} f \) by eventually rearranging the order of elements of \( \beta \). I will sometimes use the notation \( Lim_k \) for \( lim_{\omega_k} \). When \( \beta = \omega = \omega_0, lim_\omega f \) will sometimes be written more simply \( lim f \). This is the case for countable limit ordinals, which have the same cardinality as \( \omega \).

\end{itemize}

Note that \( \omega_\omega = lim_\omega (\xi \mapsto \omega_\xi) \), so \( lim_{\omega_\omega} f = lim_\omega (\xi \mapsto f (\omega_\xi)) = lim (\xi \mapsto f(\omega_\xi)) \).

\bigskip

An ordinal number can be defined as the order type of a well ordered set. A well ordered set is a set with well-order relation, which is a total order relation having the property that any non-empty subset of the well ordered set has a least element.

Examples :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \omega \) is the order type of the set of natural numbers ordered with the "natural" order.

\item \( \omega+1 \) is the order type of the set of natural numbers ordered with a relation considering 0 as the largest element, and the other numbers ordered with the "natural" order.

\end{itemize}

\bigskip

The cofinality of an ordinal is defined by : 

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \operatorname{cof} 0 = 0 \)

\item \( \operatorname{cof} (suc\ \alpha) = 1 \)

\item \( \operatorname{cof} (lim_\beta f) = \beta \) if there is no ordinal \( \gamma < \beta \) such that \( lim_\beta f = lim_\gamma g \).

\end{itemize}

Examples :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \operatorname{cof} 3 = 1 \)

\item \( \operatorname{cof} \omega = \omega \)

\item \( \operatorname{cof} (\omega+3) = 1 \)

\item \( \operatorname{cof} (\omega \cdot 2) = \omega \)

\item \( \operatorname{cof} \omega_1 = \omega_1 \)

\item \( \operatorname{cof} \omega_3 = \omega_3 \)

\item \( \operatorname{cof} \omega_\omega = \omega \)

\item \( \operatorname{cof} \omega_{\omega+1} = \omega_{\omega+1} \)

\end{itemize}

A regular ordinal is an ordinal which is equal to its cofinality. A singular ordinal is an ordinal which is not regular.
Assuming the axiom of choice, \( \omega_{\alpha+1} \) is regular for any ordinal \( \alpha \). The cofinality of any ordinal is a regular ordinal, which means \( \operatorname{cof}(\operatorname{cof} \alpha) = \operatorname{cof}\ \alpha \).

\bigskip

For example :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \omega \) is regular because \( \operatorname{cof} \omega = \omega \)

\item \( \omega \cdot 2 \) is singular because \( \operatorname{cof} (\omega \cdot 2) = \omega \)

\item \( \omega_1 \) is regular because \( \operatorname{cof} \omega_1 = \omega_1 \)

\item \( \omega_\omega \) is singular because \( \operatorname{cof} \omega_\omega = \omega \)

\item \( \omega_{\alpha+1} \) is regular for all ordinal \( \alpha \).

\end{itemize}

\bigskip

In the case of a limit ordinal, the \(\xi\)-th element of a fundamental sequence of \( \alpha \) i sometimes written \( \alpha[\xi] \) which is not a rigorous notation, because an ordinal may have different fundamental sequences, for example \( \omega = lim_\omega [\bullet] = lim_\omega [\bullet+1] \) which gives \( \omega[\alpha] = \alpha = \alpha+1 \).

We will introduce later other mathematical objects called tree ordinals which are considered different if the fundamental sequences are different.

\bigskip


Ordinals can be divided into 4 main categories ; any ordinal \( \alpha \) belongs to one ot these categories : 

\begin{enumerate}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item (finite) integers : \( 0 \le \alpha < \omega \)

\item transfinite recursive ordinals : \( \omega \le \alpha < \omega_1^{CK} \)

\item non recursive countable ordinals : \( \omega_1^{CK} \le \alpha < \omega_1 \)

\item uncountable ordinals : \( \omega_1 \le \alpha \).

\end{enumerate}

The category of all recursive ordinals includes categories 1 and 2.

The category of all countable ordinals includes categories 1, 2 and 3.

\( \omega \) is the least transfinite (non finite) ordinal and the set of all finite ordinals (category 1)

\( \omega_1^{CK} \) is the least non recursive ordinal and the set of all recursive ordinals (categories 1 and 2).

\( \omega_1 \) is the least uncountable ordinal and the set of all countable ordinals (categories 1, 2 and 3).

Technically, an ordinal \( \alpha \) is said to be recursive if there is a recursive well-ordering of a subset of the natural numbers having the order type \( \alpha \).

Intuitively, a recursive ordinal is an ordinal that can be implemented by some computer program or a Turing machine.

\bigskip

For natural numbers, arithmetical operations are defined as follows :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item addition : \( a+0=a ; a+suc(b)=suc(a+b) \)
\item multiplication : \( a \cdot 0 = 0 ; a \cdot suc(b) = (a \cdot b) + a \)
\item exponentiation : \( a^0 = 1 ; a^{suc(b)} = a^b \cdot a  \)
\end{itemize}

The definitions of arithmetical operations can be generalized to countable ordinals by adding canonical rules for limit ordinals :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item addition : \( \alpha+0=\alpha ; \alpha+suc(\beta)=suc(\alpha+\beta); \alpha+lim(f)=lim(n \mapsto \alpha+f(n)) \)
\item multiplication : \( \alpha \cdot 0 = 0 ; \alpha \cdot suc(\beta) = (\alpha \cdot \beta) + \alpha ; \alpha \cdot lim(f) = lim (n \mapsto \alpha \cdot f(n)) \)
\item exponentiation : \( \alpha^0 = 1 ; \alpha^{suc(\beta)} = \alpha^\beta \cdot \alpha ; \alpha^{lim(f)} = lim (n \mapsto \alpha^{f(n)}) \)
\end{itemize}

and more generally to any ordinal, countable or not :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item addition : \( \alpha+0=\alpha ; \alpha+suc(\beta)=suc(\alpha+\beta); \alpha+lim_\beta(f)=lim_\beta(\xi \mapsto \alpha+f(\xi)) \)
\item multiplication : \( \alpha \cdot 0 = 0 ; \alpha \cdot suc(\beta) = (\alpha \cdot \beta) + \alpha ; \alpha \cdot lim_\beta(f) = lim (\xi \mapsto \alpha \cdot f(\xi)) \)
\item exponentiation : \( \alpha^0 = 1 ; \alpha^{suc(\beta)} = \alpha^\beta \cdot \alpha ; \alpha^{lim_\beta(f)} = lim_\beta (\xi \mapsto \alpha^{f(\xi)}) \)
\end{itemize}

Note that addition and multiplication are not commutative, for example \( 1+\omega = \omega \neq \omega+1 \), because if we take 0, 1, 2, 3, ... as fundamental sequence of \( \omega \), then a fundamental sequence of \( 1+\omega \) is 1+0, 1+1, 1+2, 1+3, ... = 1, 2, 3, 4, ... and the least ordinal that is greater than all ordinals of this sequence is \( \omega \). We will say that "1+" is "absorbed" by \( \omega \). More generally, we have \( 1+\alpha = \alpha \) for any ordinal \( \alpha \geq \omega \).

\bigskip

Also note that \( lim\ f = f(\omega) \) for some functions f, but not all. For example, if \(f(\alpha) = \omega+\alpha, lim\ f = sup \lbrace \omega, \omega+1, \omega+2, \ldots \rbrace = \omega+\omega = \omega \cdot 2 \), and also \(f(\omega) = \omega+\omega = \omega \cdot 2 \). But if \( f(\alpha) = \alpha \cdot 2, lim\ f = sup \lbrace 0, 2, 4, 6, \ldots \rbrace = \omega \), but \(f(\omega) = \omega+\omega = \omega \cdot 2 \).

\bigskip

A class of ordinals is said to be closed when the limit of a sequence of ordinals in the class is again in the class.

\bigskip

For tutorial introductions to transfinite ordinal numbers, see also :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item Madore's introduction in French : 

 http://www.madore.org/\%7Edavid/weblog/2011-09-18-nombres-ordinaux-intro.html

\item Pointless Gigantic List of Infinite Numbers : 

 https://sites.google.com/site/pointlesslargenumberstuff/home/l/pglin?tmpl=\%2Fsystem\%2Fapp\%2Ftemplates\%2Fprint\%2F

\item Sbiis Saibian's !!! FORBIDDEN LIST !!! of Infinite Numbers : 

 https://sites.google.com/site/largenumbers/home/appendix/a/infinite\_numbers

\end{itemize}

Here are some examples of Haskell definitions of ordinal types.

\begin{verbatim}

module Cord_and_ord where

 -- Natural numbers
 data Nat 
  = ZeroN
  | SucN Nat

 -- Countable ordinals
 data Cord
  = ZeroC
  | SucC Cord
  | LimC (Nat -> Cord)

 -- Ordinals
 data Ord 
  = Zero
  | Suc Ord
  | Lim (Nat -> Ord)
  | Ext (Ord -> Ord)

 ordOfCord ZeroC = Zero
 ordOfCord (SucC a) = Suc (ordOfCord a)
 ordOfCord (LimC s) = Lim (\n -> ordOfCord (s n))

 cordOfOrd Zero = ZeroC
 cordOfOrd (Suc a) = SucC (cordOfOrd a)
 cordOfOrd (Lim s) = LimC (\n -> cordOfOrd (s n))
 cordOfOrd (Ext f) = cordOfOrd (f Zero)



module Ords where

 -- Natural numbers
 data Ord0
  = Zero0
  | Suc0 Ord0

 -- Countable ordinals w1
 data Ord1
  = Zero1
  | Suc1 Ord1
  | Lim01 (Ord0 -> Ord1)

 -- Uncountable ordinals w2
 data Ord2
  = Zero2
  | Suc2 Ord2
  | Lim02 (Ord0 -> Ord2)
  | Lim12 (Ord1 -> Ord2)

 -- Uncountable ordinals w3
 data Ord3
  = Zero3
  | Suc3 Ord3
  | Lim03 (Ord0 -> Ord3)
  | Lim13 (Ord1 -> Ord3)
  | Lim23 (Ord2 -> Ord3)



module Ords where

 -- Ordinals
 data Ord 
  = Zero
  | One
  | W0
  | W1
  | W2
  | Sup Ord (Ord -> Ord)

 two = Sup One (\x -> One)
 three = Sup One (\x -> two)

 suc a = Sup One (\x -> a)

 -- f^a(x)
 fpower0 f Zero x = x
 -- fpower0 f (Suc a) x = f (fpower0 f a x)
 fpower0 f (Sup One s) x = f (fpower0 f (s Zero) x)
 -- fpower0 f (Lim s) x = Lim (\n -> fpower0 f (s n) x)
 fpower0 f (Sup W0 s) x = Sup W0 (\n -> fpower0 f (s n) x) 

 w_times_2 = Sup W0 (\n -> fpower0 suc n W0)



module Ords where

 -- Ordinals
 data Ord 
  = Zero
  | One
  | W Ord
  | Sup Ord (Ord -> Ord)

 two = Sup One (\x -> One)
 three = Sup One (\x -> two)

 suc a = Sup One (\x -> a)

 -- f^a(x)
 fpower0 f Zero x = x
 -- fpower0 f (Suc a) x = f (fpower0 f a x)
 fpower0 f (Sup One s) x = f (fpower0 f (s Zero) x)
 -- fpower0 f (Lim s) x = Lim (\n -> fpower0 f (s n) x)
 -- fpower0 f (Sup W0 s) x = Sup W0 (\n -> fpower0 f (s n) x) 

 w_times_2 = Sup (W Zero) (\n -> fpower0 suc n (W Zero))


module Ord where

 ident x = x

 data Ord
  = Zero
  | Suc Ord
  | Lim Ord (Ord -> Ord)

 -- plus a b = b + a
 plus Zero b = b
 plus (Suc a) b = Suc (plus a b)
 plus (Lim n s) b = Lim n (\x -> plus (s x) b)

 -- times a b = b * a
 times Zero b = Zero
 times (Suc a) b = plus b (times a b)
 times (Lim n s) b = Lim n (\x -> times (s x) b)

 -- power a b = b^a
 power Zero b = Suc Zero
 power (Suc a) b = times b (power a b)
 power (Lim n s) b = Lim n (\x -> power (s x) b)

 one = Suc Zero
 omega = Lim Zero ident
 omegaplus1 = Suc omega
 omegatimes2 = plus omega omega
 omegapower2 = times omega omega
 omegapoweromega = power omega omega

 omega1 = Lim (Suc Zero) ident


\end{verbatim}


\section{Main domains of ordinals}

In his article "Petit guide bordélique de quelques ordinaux intéressants" :
http://www.madore.org/~david/weblog/d.2017-08-31.2462.ordinaux-interessants.html
David madore divides the ordinals into four large domains, delimited by 3 particulary important ordinals :

\begin{itemize}

\item Domain 0 : if \( 0 \le \alpha < \omega , \alpha \) is an integer, a finite number

\textbf{\( \omega \) is the supremum of all integers, and the least infinite ordinal.}

\item Domain 1 : if \( \omega \le \alpha < \omega_1^{CK}, \alpha \) is an infinite recursive ordinal, which means that there is a recursive well-ordering of a subset of the natural numbers having the order type \( \alpha \). Such ordinals can also be said to be "computable" which means that it is possible to write computer programs which manipulate such ordinals.

\textbf{\( \omega_1^{CK} \) is the supremum of all recursive ordinals, and the least non recursive ordinal.}

\item Domain 2 : if \( \omega_1^{CK} \le \alpha < \omega_1, \alpha \) is a non recursive countable ordinal, or a LUCO (Large Unrecursive Countable Ordinal). The most interesting ordinals in this domain are admissible ordinals. The exact definition of admissible ordinals is rather technical, but intuitively, an ordinal \( \alpha \) is admissible if you cannot make a greater ordinal using smaller ordinals, according to David Madore's article "Un peu de programmation transfinie" :

http://www.madore.org/~david/weblog/d.2017-08-18.2460.transfinite-programming.html

\textbf{\( \omega_1 \) is the supremum of all countable ordinals, and the least uncountable ordinal.}

\item Domain 3 : if \( \omega_1 \le \alpha, \alpha \) is an uncountable ordinal. The most interesting ordinals in this domain are cardinals, which we will study with more details later.

\end{itemize} 


\section{Veblen functions}

The next step is the limit or least upper bound of \( \omega, \omega^\omega, \omega^{\omega^\omega}, \ldots \), written \( sup \lbrace \omega, \omega^\omega, \omega^{\omega^\omega}, \ldots \rbrace \) which is called \( \varepsilon_0 \). Note that we have \( \omega^{\varepsilon_0} = \varepsilon_0 \). We say that \( \varepsilon_0 \) is a fixed point (the least one) of the function \( \alpha \mapsto \omega^\alpha \).

Then we can go on with \( \varepsilon_0+1, \varepsilon_0+2, \ldots, \varepsilon_0+\varepsilon_0 = \varepsilon_0 \cdot 2, \ldots, \varepsilon_0 \cdot \varepsilon_0 = {\varepsilon_0}^2, \varepsilon_0^{\varepsilon_0}, ...\)

The limit of \( \varepsilon_0, \varepsilon_0^{\varepsilon_0}, \varepsilon_0^{\varepsilon_0^{\varepsilon_0}}, \ldots \) is called \( \varepsilon_1 \). It can be shown that it is also the limit of \( \varepsilon_0+1, \omega^{\varepsilon_0+1}, \omega^{\omega^{\varepsilon_0+1}}, \ldots \) (see proof below).

These two fundamental sequences are examples of two ways of ascending ordinals :
\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item Build greater ordinals from known ones by increasing them using operations like successor, addition, multiplication, exponentiation, ... This method is used by the RSH0 notation which we will study later.

\item When we have found a function that, when applied to a given ordinal, gives a greater one (for example \( \alpha \mapsto \omega^\alpha \)), use it ad infinitum starting for example with 0, and then to go further use it ad infinitum starting with the successor of the previous result, and so on. This is called an enumeration of the fixed points of this function. A fixed point of a function f is a value (for example an ordinal) \( \alpha \) with \( f(\alpha) = \alpha \). Under some conditions (see below), the least fixed point of f is the limit of 0, f(0), f(f(0)), f(f(f(0))), ... If it is called \( \alpha \), the next fixed point is the limit of \( \alpha+1, f(\alpha+1), f(f(\alpha+1)), f(f(f(\alpha+1))), \ldots \).
More generally, the least fixed point of f that is greater or equal to \( \zeta \) is the limit of \( \zeta, f(\zeta), f(f(\zeta)), \ldots\).
The Veblen functions use this method.

\end{itemize}

The required conditions are described for example in http://www.cs.man.ac.uk/~hsimmons/ORDINAL-NOTATIONS/Fruitful.pdf page 8 lemma 3.9 : 

For each fruitful function f and each ordinal \( \zeta, f^\omega(\zeta+1) \) is the least ordinal \( \nu \) such that \( \zeta < \nu = f(\nu) \), or the least fixed point of f that is strictly greater than \( \zeta \) (or greater than or equal to \( \zeta+1 \)). 

\( f^\omega(\zeta+1) \) is the limit of \( \zeta+1, f(\zeta+1), f(f(\zeta+1)), \ldots \). 

A fruitful function is a function that is inflationary, monotone, big, and continuous.

A function f is inflationary if \( \alpha \leq f(\alpha) \), monotone if \( \alpha \leq \beta \Rightarrow f(\alpha) \leq f(\beta) \), big if \( \omega^\alpha \leq f(\alpha) \) except possibly for \( \alpha = 0 \), continuous if f(VA) = Vf[A] where VA is the pointwise supremum of the set A.

\bigskip

We will now prove by induction the equivalence of the two fundamental sequences above.

We will use the notation \( \alpha^{\vdots^{\alpha^\beta}} \) for an an "exponential tower" with \( \alpha \) repeated n times. 


Note that the ordinals respectively limits of the fondamental sequence whose n-th term is \(\varepsilon_0^{\varepsilon_0^{\vdots^{{\varepsilon_0}^\omega}}} \) and the one whose n-th term is \( \varepsilon_0^{\varepsilon_0^{\vdots^{\varepsilon_0^{\varepsilon_0}}}} \) is the same, the least fixed point of the function \( \alpha \mapsto {\varepsilon_0}^\alpha \), which is greater than \( \omega \) and also than \( \varepsilon_0 \).

So we have proved what we want if we prove that, for any n, we have \( \omega^{\omega^{\vdots^{\omega^{\omega^{\varepsilon_0+1}}}}} = \varepsilon_0^{\varepsilon_0^{\vdots^{{\varepsilon_0}^\omega}}} \). 

For n = 0, we have \( \omega^{\omega^{\varepsilon_0+1}} = \omega^{\omega^{\varepsilon_0}\cdot\omega} = \omega^{\varepsilon_0\cdot\omega} = (\omega^{\varepsilon_0})^\omega = {\varepsilon_0}^\omega \). 

Now suppose we have \( \omega^{\omega^{\vdots^{\omega^{\omega^{\varepsilon_0+1}}}}} = \varepsilon_0^{\varepsilon_0^{\vdots^{{\varepsilon_0}^\omega}}} \). 

We must prove the equality for n+1, which can be written \( \omega^{\omega^{\omega^{\vdots^{\omega^{\omega^{\varepsilon_0+1}}}}}} = \varepsilon_0^{\varepsilon_0^{\varepsilon_0^{\vdots^{{\varepsilon_0}^\omega}}}} \). 

We have \( \omega^{\omega^{\omega^{\vdots^{\omega^{\omega^{\varepsilon_0+1}}}}}} = \omega^{\varepsilon_0^{\varepsilon_0^{\vdots^{{\varepsilon_0}^\omega}}}} \) (by our hypothesis) \( = \omega^{\varepsilon_0^{1+\varepsilon_0^{\vdots^{{\varepsilon_0}^\omega}}}} \) (for the same reason than \( 1+\omega = \omega \), see above) \( = \omega^{\varepsilon_0\cdot\varepsilon_0^{\varepsilon_0^{\vdots^{{\varepsilon_0}^\omega}}}} = (\omega^{\varepsilon_0})^{\varepsilon_0^{\varepsilon_0^{\vdots^{{\varepsilon_0}^\omega}}}} = \varepsilon_0^{\varepsilon_0^{\varepsilon_0^{\vdots^{{\varepsilon_0}^\omega}}}} \). QED.


In a similar way, the limit of \( \varepsilon_1, \varepsilon_1^{\varepsilon_1}, \varepsilon_1^{\varepsilon_1^{\varepsilon_1}}, \ldots \) is called \( \varepsilon_2 \) and is also the limit of \( \varepsilon_1+1, \omega^{\varepsilon_1+1}, \omega^{\omega^{\varepsilon_1+1}}, \ldots \).

We can define the same way \( \varepsilon_n \) for any natural number n. Then \( \varepsilon_\omega \) is defined as the limit of \( \varepsilon_0, \varepsilon_1, \varepsilon_2, \varepsilon_3, \ldots \), and \( \varepsilon_{\omega+1} \) as the limit of \( \varepsilon_\omega, \varepsilon_\omega^{\varepsilon_\omega}, \varepsilon_\omega^{\varepsilon_\omega^{\varepsilon_\omega}}, \ldots \) or \( \varepsilon_\omega+1, \omega^{\varepsilon^\omega+1}, \omega^{\omega^{\varepsilon_\omega+1}}, \ldots \).

For any ordinal \( \alpha, \varepsilon_{\alpha+1} \) is the limit of \( \varepsilon_\alpha, {\varepsilon_\alpha}^{\varepsilon_\alpha}, {\varepsilon_\alpha}^{{\varepsilon_\alpha}^{\varepsilon_\alpha}}, \ldots \) and is also the limit of \( \varepsilon_\alpha+1, \omega^{\varepsilon_\alpha+1}, \omega^{\omega^{\varepsilon_\alpha+1}}, \ldots \).

After comes \( \varepsilon_{\varepsilon_0} \), and the limit of \( \varepsilon_0, \varepsilon_{\varepsilon_0}, \varepsilon_{\varepsilon_{\varepsilon_0}}, \ldots \) which is called \( \zeta_0 \). 
This is the least fixed point of \( \alpha \mapsto \varepsilon_\alpha \). The next one is \( \zeta_1 \) which is the limit of \( \zeta_0+1, \varepsilon_{\zeta_0+1}, \varepsilon_{\varepsilon_{\zeta_0+1}}, \ldots \). 
Then we get \( \zeta_2, \zeta_3, \ldots, \zeta_\omega, \zeta_{\omega+1}, \ldots, \zeta_{\varepsilon_0}, \ldots, \zeta_{\zeta_0}, \ldots, \zeta_{\zeta_{\zeta_0}}, \ldots \).
The limit of \( 0, \zeta_0, \zeta_{\zeta_0}, \zeta_{\zeta_{\zeta_0}}, \ldots \) is called \( \eta_0 \). 

We can go on using successively different greek letters, or we can use functions indiced by numbers

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \varphi_0(\alpha) = \omega^\alpha \)
\item \( \varphi_1(\alpha) = \varepsilon_\alpha \)
\item \( \varphi_2(\alpha) = \zeta_\alpha \)
\item \( \varphi_3(\alpha) = \eta_\alpha \)
\item \( \varphi_{\alpha+1}(\beta) \) is the \( (1+\beta) \)-th fixed point of \( \xi \mapsto \varphi_\alpha(\xi) \) .
\end{itemize}

or a function with two variables : 

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \varphi(0,\alpha) = \omega^\alpha \)
\item \( \varphi(1,\alpha) = \varepsilon_\alpha \)
\item \( \varphi(2,\alpha) = \zeta_\alpha \)
\item \( \varphi(3,\alpha) = \eta_\alpha \)
\item \( \varphi(\alpha+1,\beta) \) is the \( (1+\beta) \)-th fixed point of \( \xi \mapsto \varphi(\alpha,\xi) \) .
\end{itemize}

\bigskip

Every non-zero ordinal \(\alpha<\Gamma_0\), where \(\Gamma_0\) is the smallest ordinal \(\alpha\) such that \(\varphi_\alpha(0)=\alpha\), can be uniquely written in normal form for the Veblen hierarchy:

\(\alpha=\varphi_{\beta_1}(\gamma_1) + \varphi_{\beta_2}(\gamma_2) + \cdots + \varphi_{\beta_k}(\gamma_k)\),

where

\(\varphi_{\beta_1}(\gamma_1) \ge \varphi_{\beta_2}(\gamma_2) \ge \cdots \ge \varphi_{\beta_k}(\gamma_k)\)
\(\gamma_m < \varphi_{\beta_m}(\gamma_m)\) for \(m \in \{1,...,k\}\)

\bigskip

Now we will see how we can find the fundamental sequence of an ordinal written in this notmal form.

From the rule defining addition of a limit ordinal :

\( \alpha + lim(f) = lim (n \mapsto \alpha + f(n)) \)

we deduce the fundamental sequence :

\( (\alpha + \beta)[n] = \alpha + \beta[n] \)

if \( \beta \) is a limit ordinal. 

In particular, we have :

\((\varphi_{\beta_1}(\gamma_1) + \varphi_{\beta_2}(\gamma_2) + \cdots + \varphi_{\beta_k}(\gamma_k))[n]=\varphi_{\beta_1}(\gamma_1) + \cdots + \varphi_{\beta_{k-1}}(\gamma_{k-1}) + (\varphi_{\beta_k}(\gamma_k) [n])\), where \(\varphi_{\beta_1}(\gamma_1) \ge \varphi_{\beta_2}(\gamma_2) \ge \cdots \ge \varphi_{\beta_k}(\gamma_k)\) and \(\gamma_m < \varphi_{\beta_m}(\gamma_m)\) for \(m \in \{1,2,...,k\}\),

Then, \( \varphi_0(\gamma) \) is \( \omega^\gamma \).

For \( \gamma = 0 \) it is 1.

From the rule of multiplication by a limit ordinal :

\( \alpha \cdot lim(f) = lim (n \mapsto \alpha \cdot f(n)) \)

we deduce the fundamental sequence :

\( (\alpha \cdot \beta)[n] = \alpha \cdot \beta[n] \)
if \( \beta \) is a limit ordinal.

In particular, for \( \omega \) :

\( (\alpha \cdot \omega)[n] = \alpha \cdot \omega[n] = \alpha \cdot n \)

Then we have :

\( \varphi_0(\gamma+1) = \omega^{\gamma+1} = \omega^\gamma \cdot \omega = \varphi_0(\gamma) \cdot \omega \)

So the corresponding fundamental sequence is : 

\( \varphi_0(\gamma+1)[n] = (\varphi_0(\gamma) \cdot \omega)[n] = \varphi_0(\gamma) \cdot n \)

If \( \gamma \) is a limit ordinal and \( \gamma < \varphi_0(\gamma) \), the fundamental sequence can be defined canonically:

\( \varphi_0(\gamma)[n] = \varphi_0(\gamma[n]) \)

Note that if we remove the condition \( \gamma < \varphi_0(\gamma) \) there is a problem. For example, for \( \gamma = \varepsilon_0 \), we have \( \gamma = \varphi_0(\gamma) = \omega^\gamma \). Then, if we take as fundamental sequence of \( \varepsilon_0 \) the sequence \( \varepsilon_0[0] = 0 \)  and \( \varepsilon_0[n+1] = \omega^{\varepsilon_0[n]} \), then \( \varphi_0(\gamma)[0] = \omega^{\varepsilon_0}[0] = \varepsilon_0[0] = 0 \), but \( \varphi_0(\gamma[0]) = \omega^{\varepsilon_0[0]} = \omega^0 = 1 \).

Then, \( \varphi_{\beta+1}(\gamma) \) is the \(1+\gamma\)-th fixed point of the function \( \xi \mapsto \varphi_\beta(\xi) \), or more simply the function \( \varphi_\beta \).

In particular, \( \varphi_{\beta+1}(0) \) is the least fixed point of this function, which is \( {\varphi_\beta}^\omega(0) \). A fundamental sequence of this ordinal is \( \varphi_{\beta+1}(0)[n] = {\varphi_\beta}^n(0) \), which can also be written \( \varphi_{\beta+1}(0)[0] = 0 \) and \( \varphi_{beta+1}(0)[n+1] = \varphi_\beta(\varphi_{\beta+1}(0)[n]) \).

\( \varphi_{\beta+1}(\gamma+1) \) is the fixed point of \( \varphi_\beta \) that follows \( \varphi_{\beta+1}(\gamma) \). It is \( {\varphi_\beta}^\omega(\varphi_{\beta+1}(\gamma)+1) \). This can also be written \( \varphi_{\beta+1}(\gamma+1)[0] = \varphi_{\beta+1}(\gamma)+1 \) and \( \varphi_{\beta+1}(\gamma+1)[n+1] = \varphi_\beta(\varphi_{\beta+1}(\gamma+1)[n]) \).

If \( \gamma \) is a limit ordinal, the fundamental sequence can be defined canonically:

\( \varphi_{\beta+1}(\gamma)[n] = \varphi_{\beta+1}(\gamma[n]) \) if \( \gamma < \varphi_\beta(\gamma) \).

Finally, if \( \beta \) is a limit ordinal, we define the following fundamental sequences:

\( \varphi_\beta(0)[n] =  \varphi_{\beta[n]}(0) \) if \( \beta < \varphi_\beta(0) \)

\( \varphi_\beta(\gamma+1)[n] = \varphi_{\beta[n]}(\varphi_\beta(\gamma)+1) \)

\( \varphi_\beta(\gamma)[n] = \varphi_\beta(\gamma[n]) \) for a limit ordinal \( \gamma < \varphi_\beta(\gamma) \).

\bigskip

Concerning \( \varphi_\beta(0)[n] \), note that if we remove the condition \( \beta < \varphi_\beta(0) \) there is a problem. For example, if we take \( \beta = \Gamma_0 \) the least fixed point of the function \( \xi \mapsto \varphi_\xi(0) \), then we have \( \varphi_{\Gamma_0}(0) = \Gamma_0 \).
A fundamental sequence of \( \Gamma_0 \) is \( \Gamma_0[0] = 0, \Gamma_0[1] = \varphi_0(0) = \omega^0 = 1, \Gamma_0[2] = \varphi_1(0) = \varepsilon_0, \ldots \).
 Then we have \( \varphi_{\Gamma_0}(0)[0] = \Gamma_0[0] = 0 \), but \( \varphi_{\Gamma_0[0]}(0) = \varphi_0(0) = \omega^0 = 1 \).

For more explanations about the fundaamental sequence 
\( \varphi_\beta(\gamma+1)[n] = \varphi_{\beta[n]}(\varphi_\beta(\gamma)+1) \) 
see :

https://www.physicsforums.com/threads/fundamental-sequences-for-the-veblen-hierarchy-of-ordinals.933538/

\bigskip

Let us recap now the results we obtained.

The fundamental sequences for the Veblen functions \(\varphi_\beta(\gamma) = \varphi(\beta,\gamma) \) are :

\bigskip

(1) \((\varphi_{\beta_1}(\gamma_1) + \varphi_{\beta_2}(\gamma_2) + \cdots + \varphi_{\beta_k}(\gamma_k))[n]=\varphi_{\beta_1}(\gamma_1) + \cdots + \varphi_{\beta_{k-1}}(\gamma_{k-1}) + (\varphi_{\beta_k}(\gamma_k) [n])\), where \(\varphi_{\beta_1}(\gamma_1) \ge \varphi_{\beta_2}(\gamma_2) \ge \cdots \ge \varphi_{\beta_k}(\gamma_k)\) and \(\gamma_m < \varphi_{\beta_m}(\gamma_m)\) for \(m \in \{1,2,...,k\}\),

(2) \(\varphi_0(0) = 1\),

(3) \(\varphi_0(\gamma+1) [n] = \varphi_0(\gamma) n\)

(4) \(\varphi_{\beta+1}(0) [0] = 0 \) and \(\varphi_{\beta+1}(0) [n+1] = \varphi_{\beta}(\varphi_{\beta+1}(0) [n]) \),

(5) \(\varphi_{\beta+1}(\gamma+1) [0] = \varphi_{\beta+1}(\gamma)+1 \,\) and \(\varphi_{\beta+1}(\gamma+1) [n+1] = \varphi_{\beta} (\varphi_{\beta+1}(\gamma+1) [n]) \),

(6) \(\varphi_{\beta}(\gamma) [n] = \varphi_{\beta}(\gamma [n])\) for a limit ordinal \(\gamma<\varphi_\beta(\gamma)\),

(7) \(\varphi_{\beta}(0) [n] = \varphi_{\beta [n]}(0)\) for a limit ordinal \(\beta<\varphi_\beta(0)\),

(8) \(\varphi_{\beta}(\gamma+1) [n] = \varphi_{\beta [n]}(\varphi_{\beta}(\gamma)+1)\) for a limit ordinal \(\beta\).

\bigskip

From these fundamental sequences, we can retrieve the initial definition of the function \( \varphi \).

\bigskip

(1) This does not concern the definition of the \( \varphi \) function but the definition of addition

(2) and (3) and (6) for \( \beta = 0 \) are equivalent to \( \varphi_0(\gamma) = \omega^\gamma \).

(4) \( \varphi_{\beta+1}(0) = lim (n \mapsto {\varphi_\beta}^n(0)) = {\varphi_\beta}^\omega(0) \) which is the least fixed point of \( \varphi_\beta \).

(5) \( \varphi_{\beta+1}(\gamma+1) = lim (n \mapsto {\varphi_\beta}^n (\varphi_{\beta+1}(\gamma)+1)) \), which is the least fixed point of \( \varphi_\beta \) strictly greater than \( \varphi_{\beta+1}(\gamma) \), so with (6) it gives \( \varphi_{\beta+1}(\gamma) \) is the \(1+\gamma\)-th fixed point of \( \varphi_\beta \).

(7), (8) and (6) for \( \beta \) limit ordinal complete the definition of \( \varphi_\beta(\gamma) \) for \( \beta \) limit ordinal.

\bigskip

Here is an Haskell implementation of the \( \varphi \) function : 

\begin{verbatim}

module Phi where
 
 data Nat 
  = ZeroN 
  | SucN Nat

 data Ord 
  = Zero 
  | Suc Ord 
  | Lim (Nat -> Ord)

 iter f ZeroN x = x
 iter f (SucN n) x = f (iter f n x)

 opLim f a = Lim (\n -> f n a)

 opItw f = opLim (iter f)

 cantor a Zero = Suc a
 cantor a (Suc b) = opItw (\x -> cantor x b) a
 cantor a (Lim f) = Lim (\n -> cantor a (f n))

 nabla f Zero = f Zero
 nabla f (Suc a) = f (Suc (nabla f a))
 nabla f (Lim h) = Lim (\n -> nabla f (h n))

 deriv f = nabla (opItw f)

 phi Zero = cantor Zero
 phi (Suc a) = deriv (phi a)
 phi (Lim f) = nabla (opLim (\n -> phi (f n)))

\end{verbatim}

iter f n x = \( f^n(x) \).

opLim f a = limit of f 0 a, f 1 a, f 2 a, ...

opItw f = \( f^\omega \).

cantor a b = \( a + \omega^b \).

deriv f a = the (1+a)-th fixed point of f.

phi a b = \( \varphi_a(b) \).

\bigskip
 
Then we can enumerate the fixed points of the function \( \alpha \mapsto \varphi(\alpha,0) \) and define \( \Gamma_\alpha \) as the \( (1+\alpha) \)-th fixed point of this function, or add another variable to the \( \varphi \) function 
and define \( \varphi_{1,0}(\alpha) \) or \( \varphi(1,0,\alpha) \) as the \( (1+\alpha) \)-th fixed point of this function. So we have \( \Gamma_\alpha = \varphi_{1,0}(\alpha) = \varphi(1,0,\alpha) \).

More generally, we can define a function with any (finite) number of variables \( \varphi_{\alpha_n,\alpha_{n-1},\ldots,\alpha_1,\alpha_0}(\beta) = \varphi(\alpha_n, \alpha_{n-1}, \ldots, \alpha_1, \alpha_0, \beta) \), with \( \varphi(\alpha) = \varphi_0(\alpha) = \varphi(0,\alpha) = \omega^\alpha \). 

The notation \( \varphi_{\alpha_n,\alpha_{n-1},\ldots,\alpha_1,\alpha_0}(\beta) \) has the advantage of highlighting the different role played by the last variable \( \beta \).

\bigskip

For a complete definition of this Veblen function with finitely many variables, see for example :

https://en.wikipedia.org/wiki/Veblen\_function :

"Let \(z\) be an empty string or a string consisting of one or more comma-separated zeros \(0,0,...,0\) and \(s\) be an empty string or a string consisting of one or more comma-separated ordinals \(\alpha _{1},\alpha _{2},...,\alpha _{n}\) with \(\alpha _{1}>0\). The binary function \(\varphi (\beta ,\gamma )\) can be written as \(\varphi (s,\beta ,z,\gamma )\) where both \(s\) and \(z\) are empty strings.

The finitary Veblen functions are defined as follows:

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \(\varphi (\gamma )=\omega ^{\gamma }\)
\item \(\varphi (z,s,\gamma )=\varphi (s,\gamma )\)
\item if \(\beta >0\), then \(\varphi (s,\beta ,z,\gamma )\) denotes the \((1+\gamma )\)-th common fixed point of the functions \(\xi \mapsto \varphi (s,\delta ,\xi ,z)\) for each \(\delta <\beta\)

\end{itemize}

(...)

The limit of the \(\varphi(1,0,...,0)\) where the number of zeroes ranges over \( \omega \), is sometimes known as the "small" Veblen ordinal.

Every non-zero ordinal \(\alpha\) less than the small Veblen ordinal (SVO) can be uniquely written in normal form for the finitary Veblen function:

\(\alpha =\varphi (s_{1})+\varphi (s_{2})+ \ldots +\varphi (s_{k})\)

where

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \(k\) is a positive integer
\item \(\varphi (s_{1})\geq \varphi (s_{2})\geq \ldots \geq \varphi (s_{k})\)
\item \(s_{m}\) is a string consisting of one or more comma-separated ordinals \(\alpha _{m,1},\alpha _{m,2},...,\alpha _{m,n_{m}}\) where \(\alpha _{m,1}>0\) and each \(\alpha _{m,i}<\varphi (s_{m})\)

\end{itemize} 

For limit ordinals \(\alpha<SVO\), written in normal form for the finitary Veblen function:

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \((\varphi(s_1)+\varphi(s_2)+\ldots+\varphi(s_k))[n]=\varphi(s_1)+\varphi(s_2)+\ldots+\varphi(s_k)[n]\),
\item \(\varphi(\gamma)[n]=\)
\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item n if \( \gamma=1 \)
\item \(\varphi(\gamma-1)\cdot n \) if \( \gamma \) is a successor ordinal
\item \( \varphi(\gamma[n]) \) if \( \gamma \) is a limit ordinal
\end{itemize}
\item \(\varphi(s,\beta,z,\gamma)[0]=0\) and \(\varphi(s,\beta,z,\gamma)[n+1]=\varphi(s,\beta-1,\varphi(s,\beta,z,\gamma)[n],z)\) if \(\gamma=0\) and \(\beta\) is a successor ordinal,
\item \(\varphi(s,\beta,z,\gamma)[0]=\varphi(s,\beta,z,\gamma-1)+1\) and \(\varphi(s,\beta,z,\gamma)[n+1]=\varphi(s,\beta-1,\varphi(s,\beta,z,\gamma)[n],z)\) if \(\gamma\) and \(\beta\) are successor ordinals,
\item \(\varphi(s,\beta,z,\gamma)[n]=\varphi(s,\beta,z,\gamma[n])\) if \(\gamma\) is a limit ordinal,
\item \(\varphi(s,\beta,z,\gamma)[n]=\varphi(s,\beta[n],z,\gamma)\) if \(\gamma=0\) and \(\beta\) is a limit ordinal,
\item \(\varphi(s,\beta,z,\gamma)[n]=\varphi(s,\beta[n],\varphi(s,\beta,z,\gamma-1)+1,z)\) if \(\gamma\) is a successor ordinal and \(\beta\) is a limit ordinal. "

\end{itemize}

The Veblen function can be generalized to transfinitely many variables with a finite number different from 0. Instead of writing the list of all the variable of the Veblen function, we can write only the non zero variables with position as indice, for example \( \varphi(\alpha,0,\beta,\gamma) = \varphi(\alpha_3,\beta_1,\gamma_0) \). We can then generalize the Veblen function by allowing any ordinal as indices, writing for example \( SVO = \varphi(1_\omega) \). The limit of the ordinals that can be written with this notation is called the large Veblen ordinal (LVO).

\bigskip

According to Wikipedia, "The definition can be given as follows: let \(\alpha\) be a transfinite sequence of ordinals (i.e., an ordinal function with finite support) which ends in zero (i.e., such that \(\alpha_0\)=0), and let \(\alpha[0\mapsto\gamma]\) denote the same function where the final 0 has been replaced by \(\gamma\). Then \(\gamma\mapsto\varphi(\alpha[0\mapsto\gamma])\) is defined as the function enumerating the common fixed points of all functions \( \xi \mapsto \varphi(\beta) \) where \( \beta \) ranges over all sequences which are obtained by decreasing the smallest-indexed nonzero value of \( \alpha \) and replacing some smaller-indexed value with the indeterminate \( \xi \) (i.e., \( \beta = \alpha [\iota_0 \mapsto \zeta, \iota \mapsto \xi ] \) meaning that for the smallest index \( \iota_0 \)  such that \( \alpha_{\iota_0} \)  is nonzero the latter has been replaced by some value \( \zeta < \alpha_{\iota_0} \)  and that for some smaller index \( \iota < \iota_0 \) , the value \( \alpha_\iota = 0 \) has been replaced with \( \xi \) )."

\bigskip

Schütte brackets or Klammersymbols are another way to write Veblen fuctions with transfinitely many variables. A Schütte bracket consists in a matrix with two lines, with the positions of the variables in the second line in increasing order, and the corresponding values in the first line. This matrix is preceded by the function  \( \xi  \mapsto \varphi(\xi) \). If we take \( \xi \mapsto \omega^\xi \), we get the equivalent of the Veblen function. With this notation, the previous example is written : 

\[
( \xi \mapsto \omega^\xi ) 
  \begin{pmatrix}
    \gamma & \beta & \alpha \\
    0 & 1 & 3
  \end{pmatrix}
\]

In some of his papers, Harold Simmons puts the function after the matrix, which is more logical, the matrix being considered as a function which, when applied to a function, gives an ordinal :

\[
  \begin{pmatrix}
    \gamma & \beta & \alpha \\
    0 & 1 & 3
  \end{pmatrix}
( \xi \mapsto \omega^\xi ) 
\]

\bigskip


When the function at the left of the matrix is \( \xi \mapsto \omega^\xi \), it is sometimes omitted. Example :

\[
  \begin{pmatrix}
    \gamma & \beta & \alpha \\
    0 & 1 & 3
  \end{pmatrix}
\]

The corresponding fundamental sequences can be found in https://sites.google.com/site/travelingtotheinfinity/fundamental-sequences-for-extended-veblen-function .

\bigskip

Another possible notation is to represent the parameters of the \( \varphi \) function by a polynom of variable \( \Omega \) where the exponent corresponds to the position of the variable, for example \( \varphi(\alpha,0,\beta,\gamma) = \varphi(\gamma_0,\beta_1,\alpha_3) = (\xi \mapsto \omega^\xi) \begin{pmatrix} \gamma & \beta & \alpha \\ 0 & 1 & 3 \end{pmatrix} = \varphi(\Omega^3 \cdot \alpha + \Omega \cdot \beta + \gamma) \). For \( \Omega \), we can choose an ordinal which is greater than all the ordinals we want to produce. Since they all are countable, we can take for example \( \Omega = \omega_1 \) which is the least uncountable ordinal. The method consisting in using uncountable ordinals to define countable ordinals is called "collapsing". We will see later other examples of notations using this method.

Note that \( \varphi(1,0) = \varphi(\Omega) \) is the least \( \alpha \) such that \( \alpha = \varphi(\alpha) = \omega^\alpha \) (the least fixed point of \( \alpha \mapsto \omega^\alpha) ; \varphi(1,0,0) = \varphi(\Omega^2) = \varphi(\Omega \cdot \Omega) \) is the least \( \alpha \) such that \( \alpha = \varphi(\alpha,0) = \varphi(\Omega \cdot \alpha) \). Generally speaking, we can see that \( f(\Omega) \) is the least fixed point of f. We shall see other examples of this equality later concerning ordinal collapsing functions. Note also that "\(\Omega\)" can be replaced by "1,0" in the formulas.

\bigskip

If we want to distinguish the last variable, we can also use collapsing with the notation \( \varphi_{\alpha_n,\ldots,\alpha_0}(\beta) \), writing for example \( \varphi_{\alpha,\beta,\gamma}(\delta) = \varphi_{\Omega^2 \cdot \alpha + \Omega \cdot \beta + \gamma}(\delta) \), or \( \varphi(\alpha,\beta,\gamma,\delta) = \varphi(\Omega^2 \cdot \alpha + \Omega \cdot \beta + \gamma, \delta) \).

\bigskip

See Veblen's article "Continuous Increasing Functions of Finite and Transfinite Ordinals" ( http://www.ams.org/journals/tran/1908-009-03/S0002-9947-1908-1500814-9/S0002-9947-1908-1500814-9.pdf ) for more information.

\bigskip

Here is an Agda implementation of the Veblen function with transfinitely many variables :

\begin{verbatim}

{- 
   A definition of the large Veblen ordinal in Agda
   by Jacques Bailhache, March 2016

   See https://en.wikipedia.org/wiki/Veblen_function

    (1) phi(a)=w**a for a single variable,

    (2) phi(0,an-1,...,a0)=phi(an-1,...,a0), and

    (3) for a>0, c->phi(an,...,ai+1,a,0,...,0,c) is the function enumerating the common fixed points of the
        functions x->phi(an,...,ai+1,b,x,0,...,0) for all b<a.

    (4) Let a be a transfinite sequence of ordinals (i.e., an ordinal function with finite support) which ends in 
        zero  (i.e., such that a0=0), and let a[0->c] denote the same function where the final 0 has been replaced 
        by c. 
        Then c->phi(a[0->c]) is defined as the function enumerating the common fixed points of all functions 
        x->phi(b) where b ranges over all sequences which are obtained by decreasing the smallest-indexed nonzero 
        value of a  and replacing some smaller-indexed value with the indeterminate x (i.e., b=a[i0->z,i->x] 
        meaning that for the smallest index i0 such that ai0 is nonzero the latter has been replaced by some value 
        z<ai0 and that for some smaller index i<i0, the value ai=0 has been replaced with x).

-}


module LargeVeblen where

 data Nat : Set where
  O : Nat
  1+ : Nat -> Nat

 data Ord : Set where
  Zero : Ord
  Suc : Ord -> Ord
  Lim : (Nat -> Ord) -> Ord

 -- rpt n f x = f^n(x)
 rpt : {t : Set} -> Nat -> (t -> t) -> t -> t
 rpt O f x = x
 rpt (1+ n) f x = rpt n f (f x)

 -- smallest fixed point of f greater than x, limit of x, f x, f (f x), ...
 fix : (Ord -> Ord) -> Ord -> Ord
 fix f x = Lim (\n -> rpt n f x)

 w = fix Suc Zero -- not a fixed point in this case !

 -- cantor a b = b + w^a
 cantor : Ord -> Ord -> Ord
 cantor Zero a = Suc a
 cantor (Suc b) a = fix (cantor b) a
 cantor (Lim f) a = Lim (\n -> cantor (f n) a)

 -- phi0 a = w^a
 phi0 : Ord -> Ord
 phi0 a = cantor a Zero

 -- Another possibility is to use phi'0 instead of phi0 in the definition of phi,
 -- this gives a phi function which grows slower
 phi'0 : Ord -> Ord
 phi'0 Zero = Suc Zero
 phi'0 (Suc a) = Suc (phi'0 a)
 phi'0 (Lim f) = Lim (\n -> phi'0 (f n))

 -- Associative list of ordinals
 infixr 40 _=>_&_
 data OrdAList : Set where
  Zeros : OrdAList
  _=>_&_ : Ord -> Ord -> OrdAList -> OrdAList

 -- Usage : phi al, where al is the associative list of couples index => value ordered by increasing values,
 -- absent indexes corresponding to Zero values

 phi : OrdAList -> Ord 
 phi              Zeros  = phi0 Zero -- (1) phi(0) = w**0 = 1 
 phi (Zero => a & Zeros) = phi0 a    -- (1) phi(a) = w**a
 phi (            k => Zero & al) = phi al -- eliminate unnecessary Zero value
 phi (Zero => a & k => Zero & al) = phi (Zero => a & al) -- idem
 phi (Zero => a & Zero => b & al) = phi (Zero => a & al) -- should not appear but necessary for completeness
 phi (Zero => Lim f & al) = Lim (\n -> phi (Zero => f n & al)) -- canonical treatment of limit
 phi (                Suc k => Suc b & al) = fix (\x -> phi (k => x & Suc k => b & al)) Zero 
  -- (3) least fixed point
 phi (Zero => Suc a & Suc k => Suc b & al) = fix (\x -> phi (k => x & Suc k => b & al)) (Suc (phi (Zero => a & 
Suc k => Suc b & al))) -- (3) following fixed points
 phi (                Suc k => Lim f & al) = Lim (\n -> phi (Suc k => f n & al)) -- idem 
 phi (Zero => Suc a & Suc k => Lim f & al) = Lim (\n -> phi (k => Suc (phi (Zero => a & Suc k => Lim f & al)) & 
Suc k => f n & al)) -- idem  
 phi (                Lim f => Suc b & al) = Lim (\n -> phi (f n => (Suc Zero) & Lim f => b & al)) 
 phi (Zero => Suc a & Lim f => Suc b & al) = Lim (\n -> phi (f n => phi (Zero => a & Lim f => Suc b & al) & Lim 
f => b & al))
 phi (                Lim f => Lim g & al) = Lim (\n -> phi (Lim f => g n & al))
 phi (Zero => Suc a & Lim f => Lim g & al) = Lim (\n -> phi (f n => phi (Zero => a & Lim f => Lim g & al) & Lim 
f => g n & al)) 

 SmallVeblen = phi (w => Suc Zero & Zeros)

 LargeVeblen = fix (\x -> phi (x => Suc Zero & Zeros)) (Suc Zero)

{-
Normally it should terminate because the parameter of phi lexicographically decreases, but Agda is not clever enough to see it, 
so it must be called with no termination check option :

$ agda -I --no-termination-check LargeVeblen.agda
                 _ 
   ____         | |
  / __ \        | |
 | |__| |___  __| | ___
 |  __  / _ \/ _  |/ __\     Agda Interactive
 | |  |/ /_\ \/_| / /_| \
 |_|  |\___  /____\_____/    Type :? for help.
        __/ /
        \__/

The interactive mode is no longer supported. Don't complain if it doesn't work.
Checking LargeVeblen (/perso/ord/LargeVeblen.agda).
Finished LargeVeblen.
Main> phi Zeros
Suc Zero
Main> :typeOf LargeVeblen
Ord
Main> 

\end{verbatim}

\section{Going beyond Veblen function with transfinitely many variables}


We start with the large Veblen ordinal which is the least fixed point of the function \( \alpha \mapsto \varphi(1_\alpha) \). Then we consider a function F that enumerates the fixed points of \( \alpha \mapsto \varphi(1_\alpha) \). So we have LVO = F(0). The next fixed point F(1) is the limit of \( LVO+1, \varphi(1_{LVO+1}), \varphi(1_{\varphi(1_{LVO+1})}), ... \)

Then we can consider the fixed points of the function F and define a function G that enumerates these fixed points, then a function H that enumerates the fixed points of G, and so on.

This construction is similar to \( \varepsilon \) which enumerates the fixed points of \( \alpha \mapsto \omega^\alpha \), \( \zeta \) which enumerates the fixed points of \( \varepsilon \), \( \eta \) which enumerates the fixed points of \( \zeta \).

Like we have defined :

 - \( \varphi_0(\alpha) = \omega^\alpha \)

 - \( \varphi_1(\alpha) = \varepsilon(\alpha) \)

 - \( \varphi_2(\alpha) = \zeta(\alpha) \)

...

we can define :

 - \( \varphi^+_0(\alpha) = F(\alpha) \)

 - \( \varphi^+_1(\alpha) = G(\alpha) \)

 - \( \varphi^+_2[\alpha) = H(\alpha) \)

 ...

With this notation we can write \( LVO = \varphi^+_0(0) \).

Then \( \varphi^+_\alpha(\beta) \) can be written as a binary function \( \varphi^+(\alpha,\beta) \) which can be generalized to finitely many variables like \( \varphi^+(\alpha,\beta,\gamma) \) and transfinitely many variables like \( \varphi^+(1_\omega) \).

Then we can consider the fixed points of the function \( \alpha \mapsto \varphi^+(1_\alpha) \) and define a function \( \varphi^{++}_0 \) which enumerates these fixed points.

The same way we can define \( \varphi^{+++} \), \( \varphi^{++++} \), ...

We can then define a new notation : 

 - \( \Phi_0 = \varphi \)
 
 - \( \Phi_1 = \varphi^+ \)

 - \( \Phi_2 = \varphi^{++} \)

 ...

\bigskip

There is another way to express this construction.

There are different conventions for \( \varphi_0(x) \), like \( \omega^x \) or \( \varepsilon_x \). We can write explicitely the convention chosen for \( \varphi_0 \) by writing "\( \varphi_f(\alpha,\beta) \)" for "\( \varphi_\alpha(\beta) \) with function f used for \( \varphi_0 \)".  With this notation we have:

 - \( \varphi_f(0,\beta) = f(\beta) \)
 
 - \( \varphi_f(\alpha+1,\beta) = (1+\beta) \)th fixed point of the function \( \beta \mapsto \varphi_f(\alpha,\beta) \)
 
 - \( \varphi_f(\lambda,\beta) = (1+\beta) \)th common fixed point of the function \( \beta \mapsto \varphi_f(\alpha,\beta) \) for all \( \alpha < \lambda \), if \( \lambda \) is a limit ordinal.

( See http://www.cs.man.ac.uk/~hsimmons/TEMP/OrdNotes.pdf )

Then we generalize the binary function \( \varphi_f(\alpha,\beta) \) to finitely many variables: for example \( \varphi_f(1,0,\alpha) = (1+\alpha) \)th common fixed point of the function \( \xi \mapsto \varphi(\xi,0) \) ( see https://en.wikipedia.org/wiki/Veblen\_function ) and to infinitely many variables with a finite number of them different from 0, for example \( \varphi_f(1_\omega) \).

Then we can define new \( \varphi \) functions by taking for \( \varphi_0 \) the function \( \xi \mapsto \varphi_f(1_\xi) \) and define functions \( \varphi_{\xi \mapsto \varphi_f(1_\xi)} \) with 2 variables, with finitely many variables and with transfinitely many variables.

To make a correspondence with my previous construction, if f is the function \( \xi \mapsto \omega^\xi \), then \( \varphi_f(\alpha,\beta) \) corresponds to what I wrote \( \varphi_\alpha(\beta) \), and \( \varphi_{\xi \mapsto \varphi_f(1_\xi)}(\alpha,\beta) \) to \( \varphi^+_\alpha(\beta) \). 

If we define the function S by \( S(f)(\xi) = \varphi_f(1_\xi) \), then \( \varphi_{\xi \mapsto \varphi_f(1_\xi)}\) can be written \( \varphi_{S(f)} \). We can then consider \( \varphi_{S(S(f))} \) and so on.

Given an ordinal \( \alpha \), we can iterate transfinitely "\( \alpha \) times" the application of S to an initial function \( f_0 \), for example \( f_0(\xi) = \omega^\xi \), to obtain a function which I will write \( S^\alpha(f_0) \). We can use this function to define a function \( \varphi_{S^\alpha(f_0)} \) which permits to construct big ordinals.




\section{Simmons notation}

\subsection{Presentation}

Harold Simmons defined a notation ( see http://www.cs.man.ac.uk/~hsimmons/ORDINAL-NOTATIONS/ordinal-notations.html ) based on fixed points enumeration which "contains" Veblen functions and permits to go further. 

He uses the lambda calculus formalism, in which f x represents the application of function f to x, and f x y = (f x) y the application of function f to x which gives another function which is applied to y giving the final result. 
He uses tho notation \( x \mapsto y \) to represent the function which, when applied to x, gives y (instead of the traditional lambda calculus notation \( \lambda x . y \) ).

He also uses the notation \( \omega^\bullet \) for \( \alpha \mapsto \omega^\alpha \).

\( f \circ g \) represents the composition of functions f and g : \( (f \circ g) \alpha = f(g \alpha) \).

\( f^\alpha \) is a canonical generalization of of exponentiation of a function to an ordinal power : \( f^n \) represents \( f \circ f \circ \ldots \circ f \) with f repeated n times, \( f^\omega \zeta \) is the limit of \( \zeta, f\ \zeta, f(f\ \zeta), \ldots \), \( f^{\omega+1} \zeta = f(f^\omega \zeta) \) and so on.

\bigskip

More precisely, Simmons gives the following definitions in http://www.cs.man.ac.uk/~hsimmons/TEMP/OrdNotes.pdf page 11 : 

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( g^0 \zeta = \zeta \)
\item \( g^{\alpha+1} \zeta = g (g^\alpha \zeta) \)
\item \( g^\lambda \zeta = V \lbrace g^\alpha \zeta | \alpha < \lambda \rbrace \) (if \( \lambda \) is a limit ordinal, where V denotes the poinwise supremum)
\end{itemize}

and the following equivalent definitions in http://www.cs.man.ac.uk/~hsimmons/ORDINAL-NOTATIONS/Fruitful.pdf page 4 :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( g^0 = id \)
\item \( g^{\alpha+1} = g \circ g^\alpha \)
\item \( g^\lambda = V \lbrace g^\alpha | \alpha < \lambda \rbrace \)
\end{itemize}

\bigskip

and he generalizes these definitions to higher order functions.

\bigskip

Then Simmons defines the following functions :


\( Fix\ f \zeta = f^\omega (\zeta+1) \) = limit of \( \zeta+1, f (\zeta+1), f (f (\zeta+1)), \ldots \) is the least fixed point of the function f which is strictly greater than \( \zeta \), which means the least ordinal \( \nu \) satisfying \( f\ \nu = \nu \) and \( \nu > \zeta \).

\( Next = Fix\ \omega^\bullet = Fix (\alpha \mapsto \omega^\alpha) \) ; \( Next\ \zeta \) is the next \( \varepsilon_\alpha \) after \( \zeta \).

\( [0] h = Fix (\alpha \mapsto h^\alpha 0) \)

\( [1] h g = Fix (\alpha \mapsto h^\alpha g 0) \)

\( [2] h g f = Fix (\alpha \mapsto h^\alpha g f 0) \) 

... and so on ...

\bigskip

In http://www.cs.man.ac.uk/~hsimmons/ORDINAL-NOTATIONS/OrdSlides.pdf Simmons gives another equivalent definition :

\( [0] h = Fix (\alpha \mapsto h^\alpha \omega) \)

\( [1] h g = Fix (\alpha \mapsto h^\alpha g \omega) \)

\( [2] h g f = Fix (\alpha \mapsto h^\alpha g f \omega) \) 

\bigskip

Simmons also defines : 

\( Veb\ f\ \zeta = (Fix\ f)^{1+\zeta} 0 \) is the \( (1+\zeta) \)-th fixed point of f

\( Enm\ h\ \alpha = h^{1+\alpha} 0 \)

\( Veb = Enm \circ Fix \)

\( [0] = Fix \circ Enm \)

\( Fix \circ Veb = Fix \circ Enm \circ Fix = [0] \circ Fix \)

\( Fix \circ Veb^\alpha = [0]^\alpha \circ Fix \)

\( \Delta[0] = \omega \)

\( \Delta[1] = Next\ \omega = \varepsilon_0 \)

\( \Delta[2] = [0] Next\ \omega = \) least \( \nu \) with \( \nu = Next^\nu \omega = \zeta_0 \)

\( \Delta[3] = [1] [0] Next\ \omega = \) least \( \nu \) with \( \nu = [0]^\nu Next\ \omega = \Gamma_0 \)

\( \Delta[4] = [2] [1] [0] Next\ \omega = \) least \( \nu \) with \( \nu = [1]^\nu [0] Next\ \omega = LVO \) (large Veblen ordinal)

... and so on ...


\subsection{Implementation}

Here is an implementation of the Simmons hierarchy in Haskell :

\begin{verbatim}

module Simmons where

 -- Natural numbers
 data Nat 
  = ZeroN
  | SucN Nat

 -- Ordinals
 data Ord 
  = Zero
  | Suc Ord
  | Lim (Nat -> Ord)

 -- Ordinal corresponding to a given natural
 ordOfNat ZeroN = Zero
 ordOfNat (SucN n) = Suc (ordOfNat n)

 -- omega
 w = Lim ordOfNat

 lim0 s = Lim s
 lim1 f x = lim0 (\n -> f n x)
 lim2 f x = lim1 (\n -> f n x)

 -- this does not work :
 -- lim ZeroN s = Lim s
 -- lim (SucN p) f = \x -> lim p (\n -> f n x)

 -- f^a(x)
 fpower0 f Zero x = x
 fpower0 f (Suc a) x = f (fpower0 f a x)
 fpower0 f (Lim s) x = Lim (\n -> fpower0 f (s n) x)

 fpower l f Zero x = x
 fpower l f (Suc a) x = f (fpower l f a x)
 fpower l f (Lim s) x = l (\n -> fpower l f (s n) x)

 -- fix f z = least fixed point of f which is > z
 fix f z = fpower lim0 f w (Suc z) -- Lim (\n -> fpower0 f (ordOfNat n) (Suc z))

 -- cantor b a = a + w^b
 cantor Zero a = Suc a
 cantor (Suc b) a = fix (cantor b) a
 cantor (Lim s) a = Lim (\n -> cantor (s n) a)
 
 -- expw a = w^a
 expw a = cantor a Zero

 -- next a = least epsilon_b > a
 next = fix expw

 -- [0]
 simmons0 h = fix (\a -> fpower lim0 h a Zero)

 -- [1]
 simmons1 h1 h0 = fix (\a -> fpower lim1 h1 a h0 Zero)

 -- [2]
 simmons2 h2 h1 h0 = fix (\a -> fpower lim2 h2 a h1 h0 Zero)

 -- Large Veblen ordinal 
  lvo = simmons2 simmons1 simmons0 next w



$ hugs
__   __ __  __  ____   ___      _________________________________________
||   || ||  || ||  || ||__      Hugs 98: Based on the Haskell 98 standard
||___|| ||__|| ||__||  __||     Copyright (c) 1994-2005
||---||         ___||           World Wide Web: http://haskell.org/hugs
||   ||                         Bugs: http://hackage.haskell.org/trac/hugs
||   || Version: September 2006 _________________________________________

Haskell 98 mode: Restart with command line option -98 to enable extensions

Type :? for help
Hugs> :load simmons
Simmons> lvo
ERROR - Cannot find "show" function for:
*** Expression : lvo
*** Of type    : Ord

Simmons>



\end{verbatim}

\subsection{Correspondence with Veblen functions}

\( \varepsilon_0 \) is the next \( \varepsilon_\alpha \) after 0 (or after \( \omega \), or after any ordinal less than \( \varepsilon_0 \), so we have \( \varepsilon_0 = Next\ 0 = Next\ \omega \).

\( \varepsilon_1 \) is the next \( \varepsilon_\alpha \) after \( \varepsilon_0 \), so we have \( \varepsilon_1 = Next\ \varepsilon_0 = Next\ (Next\ 0) = Next^2 0 = Next\ (Next\ \omega) = Next^2 \omega \).

\( \varepsilon_2 \) is the next \( \varepsilon_\alpha \) after \( \varepsilon_1 \), so we have \( \varepsilon_2 = Next\ \varepsilon_1 = Next\ (Next\ (Next\ 0)) = Next^3 0 = Next\ (Next\ (Next\ \omega)) = Next^3 \omega \).

...

\( \varepsilon_\omega \) is the limit of \( \varepsilon_0, \varepsilon_1, \varepsilon_2, \ldots \). It is the limit of \( Next^1 0, Next^2 0, Next^3 0, ... \) which is \( Next^\omega 0 \).

More generally, we have \( \varepsilon_\alpha = \varphi(1,\alpha) = Next^{1+\alpha} 0 = Next^{1+\alpha} \omega \).

\bigskip

\( \zeta_0 = \varphi(2,0) \) is the least fixed point of \( \alpha \mapsto \varepsilon_\alpha \) (greater than 0), so \( \zeta_0 = Fix (\alpha \mapsto \varepsilon_\alpha) 0 = Fix (\alpha \mapsto Next^{1+\alpha} 0) 0 = Fix (\alpha \mapsto Next^\alpha 0) 0 \) (because the "1+" is "absorbed" after a few iterations) \( = [0] Next\ 0 \). Since \( \zeta_0 \) is also greater than \( \omega \), it is also \( [0] Next\ \omega \) according to a similar computation. 

\( \zeta_1 = \varphi(2,1) \) is the next fixed point of \( \alpha \mapsto \varepsilon_\alpha \), the least one which is strictly greater than \( \zeta_0 \), so \( \zeta_1 = Fix (\alpha \mapsto \varepsilon_\alpha) \zeta_0 = Fix (\alpha \mapsto Next^\alpha 0) \zeta_0 = [0] Next\ \zeta_0 = [0] Next ([0] Next\ 0) = ([0] Next)^2 0 = [0] Next ([0] Next\ \omega) = ([0] Next)^2 \omega \).

More generally, \( \zeta_\alpha = ([0] Next)^{1+\alpha} 0 \).

Similar computations give \( \eta_0 = \varphi(3,0) = [0]^2 Next\ 0 \) and \( \eta_\alpha = ([0]^2 Next)^{1+\alpha} 0 \).

More generally, \( \varphi(1+\beta,\alpha) = ([0]^\beta Next)^{1+\alpha} 0 \) or \( ([0]^\beta Next)^{1+\alpha} \omega \).

\bigskip

\( \Gamma_0 = \varphi(1,0,0) \) is the least fixed point (greater than 0) of the function \( \alpha \mapsto \varphi(\alpha,0) \) or \( \alpha \mapsto \varphi(1+\alpha,0) \) (for the same reason of "absorbsion" of "1+" than previously), so \( \Gamma_0 = Fix (\alpha \mapsto \varphi(1+\alpha,0) 0 = Fix (\alpha \mapsto ([0]^\alpha Next)^(1+0) 0) 0 = Fix (\alpha \mapsto [0]^\alpha Next\ 0) 0 = [1] [0] Next\ 0 \).

\( \Gamma_1 = \varphi(1,0,1) \) is the next fixed point : \( \Gamma_1 = Fix (\alpha \mapsto [0]^\alpha Next\ 0) \Gamma_0 = [1] [0] Next\ \Gamma_0 = [1] [0] Next\ ([1] [0] Next\ 0) = ([1] [0] Next)^2 0 \).

More generally, we have \( \varphi(1,0,\alpha) = ([1] [0] Next)^{1+\alpha} 0 \).

\( \varphi(1,1,0) \) is the least fixed point (greater than 0) of the function \( \alpha \mapsto \varphi(1,0,\alpha) \), so it is \( Fix (\alpha \mapsto \varphi(1,0,\alpha)) 0 = Fix (\alpha \mapsto ([1] [0] Next)^{1+\alpha} 0) 0 = Fix (\alpha \mapsto ([1] [0] Next)^{\alpha} 0) 0 \) (absorbsion of 1+) \( = [0] ([1] [0] Next) 0 \).

\( \varphi(1,1,1) \) is the next fixed point \( Fix (\alpha \mapsto ([1] [0] Next)^{\alpha} 0) \varphi(1,1,0) = ([0] ([1] [0] Next) ([0] ([1] [0] Next) 0) = ([0] ([1] [0] Next))^2 0 \).

More generally, \( \varphi(1,1,\alpha) = ([0] ([1] [0] Next))^{1+\alpha} 0 \).

\( \varphi(1,2,0) \) is the least fixed point (greater than 0) of the function \( \alpha \mapsto \varphi(1,1,\alpha), Fix (\alpha \mapsto \varphi(1,1,\alpha)) 0 = Fix ([0] ([1] [0] Next)^{1+\alpha} 0) 0 = Fix (\alpha \mapsto ([0] ([1] [0] Next))^\alpha 0) 0 = [0] ([0] ([1] [0] Next)) 0 = [0]^2 ([1] [0] Next) 0 \).

Like previously, \( \varphi(1,2,\alpha) \) is the \( (1+\alpha) \)-th fixed point of the previous function, which is \( ([0]^2 ([1] [0] Next))^{1+\alpha} 0 \).

More generally, \( \varphi(1,\beta,\alpha) = ([0]^\beta ([1] [0] Next))^{1+\alpha} 0 \).

\( \varphi(2,0,0) \) is the least fixed point (greater than 0) of the function \( \beta \mapsto \varphi(1,\beta,0) \), which is \( Fix (\alpha \mapsto \varphi(1,\beta,0)) 0 = Fix (\beta \mapsto ([0]^\beta ([1] [0] Next))^{1+0} 0) 0 = Fix (\beta \mapsto [0]^\beta ([1] [0] Next) 0) 0 = [1] [0] ([1] [0] Next) 0 = ([1] [0])^2 Next\ 0 \).

The \( (1+\alpha) \)-th fixed point of the previous function is \( \varphi(2,0,\alpha) = (([1] [0])^2 Next)^{1+\alpha} 0 \).

The least fixed point of the function \( \alpha \mapsto \varphi(2,0,\alpha) \) is \( \varphi(2,1,0) = Fix (\alpha \mapsto \varphi(2,0,\alpha)) 0 = Fix (\alpha \mapsto (([1] [0])^2 Next)^(1+\alpha) 0) 0 = Fix (\alpha \mapsto (([1] [0])^2 Next)^\alpha 0) = [0] (([1] [0])^2 Next) 0 \) and its \( (1+\alpha) \)-th fixed point is \( \varphi(2,1,\alpha) = ([0] (([1] [0])^2 Next))^{1+\alpha} 0 \).

More generally, we have \( \varphi(2,\beta,\alpha) = ([0]^\beta (([1] [0])^2 Next))^{1+\alpha} 0 \).

\bigskip

The general formula with three variables (with \( \gamma \neq 0 \) ) is \( \varphi(\gamma,\beta,\alpha) = ([0]^\beta (([1] [0])^\gamma Next))^{1+\alpha} 0 \).

In particular, we have \( \varphi(\gamma,0,0) = ([1] [0])^\gamma Next 0 \).

\bigskip

Using collapsing, we can write \( \varphi(\gamma,\beta,\alpha) = \varphi_{\gamma,\beta}(\alpha) = \varphi_{\Omega \cdot \gamma + \beta}(\alpha) = \varphi(\Omega \cdot \gamma + \beta, \alpha) = \varphi(1 + \Omega \cdot \gamma + \beta, \alpha) = ([0]^{\Omega \cdot \gamma + \beta} Next)^{1+\alpha} 0 = ([0]^\beta (([0]^\Omega)^\gamma Next))^{1+\alpha} 0 = ([0]^\beta (([1] [0])^\gamma Next))^{1+\alpha} 0 \) if we consider that \( [0]^\Omega = [1] [0] \).

\bigskip

\( \varphi(1,0,0,0) \) is the least fixed point of the function \( \gamma \mapsto \varphi(\gamma,0,0), Fix (\gamma \mapsto \varphi(\gamma,0,0)) 0 = Fix (\gamma \mapsto ([1] [0])^\gamma Next\ 0) 0 = [1] ([1] [0]) Next\ 0 = [1]^2 [0] Next\ 0 \).

All of these computations could be done with \( \omega \) instead of 0 at the end of the formulas so we also have \( \varphi(\gamma,\beta,\alpha) = ([0]^\beta (([1] [0])^\gamma Next))^{1+\alpha} \omega \).

In a similar way, we can obtain the formula with 4 variables :

\( \varphi(1,0,0,\alpha) = ([1]^2 [0] Next)^{1+\alpha} 0 \)

\( \varphi(1,0,1,0) = Fix (\alpha \mapsto ([1]^2 [0] Next)^\alpha 0) 0 = [0] ([1]^2 [0]) 0 \)

\( \varphi (1,0,1,\alpha) = ([0] ([1]^2 [0] Next))^{1+\alpha} 0 \)

\( \varphi(1,0,\beta,\alpha) = ([0]^\beta ([1]^2 [0] Next))^{1+\alpha} 0 \)

\( \varphi(1,1,0,0) = Fix (\alpha \mapsto \varphi(1,0,\alpha,0)] 0 = Fix (\alpha \mapsto [0]^\alpha ([1]^2 [0] Next) 0] 0 = [1] [0] ([1]^2 [0] Next) 0 \)

\( \varphi(1,1,0,\alpha) = ([1] [0] ([1]^2 [0] Next))^{1+\alpha} 0 \)

\( \varphi(1,1,1,0) = Fix (\alpha \mapsto \varphi(1,1,0,\alpha)) 0 = Fix (\alpha \mapsto ([1] [0] ([1]^2 [0] Next))^\alpha 0) 0 = [0] ([1] [0] ([1]^2 [0] Next)) 0 \)

\( \varphi(1,1,1,\alpha) = ([0] ([1] [0] ([1]^2 [0] next)))^{1+\alpha} 0 \)

\( \varphi(1,1,\beta,\alpha) = ([0]^\beta ([1] [0] ([1]^2 [0] Next)))^{1+\alpha} 0 \)

\( \varphi(1,2,0,0) = Fix (\alpha \mapsto \varphi(1,1,\alpha,0)) 0 = Fix (\alpha \mapsto [0]^\alpha ([1] [0] ([1]^2 [0] next)) 0) 0 = [1] [0] ([1] [0] ([1]^2 [0] Next)) 0 = ([1] [0])^2 ([1]^2 [0] Next) 0 \)

\( \varphi(1,0,0,0) = [1]^2 [0] Next 0 \)

\( \varphi(1,1,0,0) = [1] [0] ([1]^2 [0] Next) 0 \)

\( \varphi(1,2,0,0) = ([1] [0])^2 ([1]^2 [0] Next) 0 \)

\( \varphi(1,\gamma,0,0) = ([1] [0])^\gamma ([1]^2 [0] Next) 0 \)

\( \varphi(1,\gamma,\beta,\alpha) = ([0]^\beta (([1] [0])^\gamma ([1]^2 [0] Next)))^{1+\alpha} 0 \)

\( \varphi(2,0,0,0) = Fix (\alpha \mapsto \varphi(1,\alpha,0,0)] 0 = Fix (\alpha \mapsto ([1] [0])^\alpha ([1]^2 [0] Next) 0] 0 = [1] ([1] [0]) ([1]^2 [0] Next) 0 = [1]^2 [0] ([1]^2 [0] Next) 0 = ([1]^2 [0])^2 Next 0 \)

\( \varphi(\delta,0,0,0) = ([1]^2 [0])^\delta Next\ 0 \)

The general formula with four variables is : 

\( \varphi(\delta,\gamma,\beta,\alpha) = ([0]^\beta (([1] [0])^\gamma (([1]^2 [0])^\delta Next)))^{1+\alpha} 0 = ([0]^\beta (([1] [0])^\gamma (([1]^2 [0])^\delta Next)))^{1+\alpha} \omega \) 

and so on.

\bigskip


Using collapsing, we can write \( \varphi(\delta,\gamma,\beta,\alpha) = \varphi_{\delta,\gamma,\beta}(\alpha) = \varphi_{\Omega^2 \cdot \delta + \Omega \cdot \gamma + \beta}(\alpha) = \varphi(\Omega^2 \cdot \delta + \Omega \cdot \gamma + \beta, \alpha) = \varphi(1 + \Omega^2 \cdot \delta + \Omega \cdot \gamma + \beta, \alpha) = ([0]^{\Omega^2 \cdot \delta + \Omega \cdot \gamma + \beta} Next)^{1+\alpha} 0 = ([0]^\beta (([0]^\Omega)^\gamma (([0]^{\Omega^2})^\delta Next)))^{1+\alpha} 0 = ([0]^\beta (([1] [0])^\gamma (([1]^2 [0])^\delta Next)))^{1+\alpha} 0 \) if we consider that \( [0]^\Omega = [1] [0] \) and \( [0]^{\Omega^2} = ([0]^\Omega)^\Omega = ([1] [0])^\Omega = [1] ([1] [0]) = [1]^2 [0] \).

\bigskip

The small Veblen ordinal is the limit of :

 \( \varphi(1) = \omega, \varphi(1,0) = Next\ \omega, \varphi(1,0,0) = [1] [0] Next\ \omega, \varphi(1,0,0,0) = [1]^2 [0] Next\ \omega, \varphi(1,0,0,0,0) = [1]^3 [0] Next\ \omega, \ldots \). 

This limit is \( [1]^\omega [0] Next\ \omega = [1]^\omega [0] Next\ 0 \).

\bigskip

Allowing variables at any finite or transfinite positions (which is equivalent to Schütte brackets or Klammersymbols) gives ordinals smaller than the large Veblen ordinal which is the least fixed point of the function \( \alpha \mapsto \varphi(1_\alpha) \). It is \( Fix (\alpha \mapsto \varphi(1_\alpha)) 0 = Fix (\alpha \mapsto [1]^\alpha [0] Next\ 0) 0 = [2] [1] [0] Next\ 0 \)


\( [2] [1] [0] Next\ 0 \) or \( [2] [1] [0] Next\ \omega \). 

The conversion rule from Schütte Klammersymbol to Simmons notation are described by Simmons in his paper : http://www.cs.man.ac.uk/~hsimmons/ORDINAL-NOTATIONS/FromBelow.pdf (Simmons also wrote other papers but it seems to me that they contain inaccuracies and maybe even errors).

In summary :

\( Fix\ f \zeta = f^\omega (\zeta+1) \)

\( Enm\ h\ \alpha = h^{1+\alpha} 0 \)

\( Next = Fix (\alpha \mapsto \omega^\alpha) \)

\( [0] h = Fix (\alpha \mapsto h^\alpha 0) \)

\( [1] h g = Fix (\alpha \mapsto h^\alpha g 0) \)

\( \nabla \begin{bmatrix} \alpha+1 \\
                                    i+1      \end{bmatrix} =
 ([1]^i [0])^{1+\alpha} \) if \( i \neq 0 ; [0]^\alpha \) if \( i = 0 \)

\( \nabla \begin{bmatrix} \alpha_1+1 & \ldots & \alpha_s+1 \\
                                    i_1+1      & \ldots & \i_s+1     \end{bmatrix} 
= \nabla \begin{bmatrix} \alpha_1+1 \\
                                   i_1+1      \end{bmatrix} \circ [0] \circ \ldots \circ [0] \circ \nabla \begin{bmatrix} \alpha_s+1 \\
                                                                                                                    i_s+1      \end{bmatrix}
\)

where \( f \circ g \) is the composition of functions f and g : \( (f \circ g) x = f\ (g\ x) \)

\( Sch \begin{bmatrix} 1+\alpha_1 & \ldots & 1+\alpha_s \\
                       1+i_1      & \ldots & 1+i_s      \end{bmatrix} 
= Enm\ \circ \nabla \begin{bmatrix} 1+\alpha_1 & \ldots & 1+\alpha_s \\
                                          1+i_1      & \ldots & 1+i_s      \end{bmatrix} o\ Fix
\)


f may be any function but it is usually \( \alpha \mapsto \omega^\alpha \).

\( f \begin{pmatrix} \zeta & 1+\alpha_1 & \ldots & 1+\alpha_s \\
                     0     & 1+i_1      & \ldots & 1+i_s      \end{pmatrix} \)

\( = Sch \begin{bmatrix} 1+\alpha_1 & \ldots & 1+\alpha_s \\
                      1+i_1      & \ldots & 1+i_s      \end{bmatrix} f \zeta \)

\( = (Enm \circ \nabla \begin{bmatrix} 1+\alpha_1 & \ldots & 1+\alpha_s \\
                                       1+i_1      & \ldots & 1+i_s      \end{bmatrix} \circ Fix) f \zeta \)

\( = (Enm \circ \nabla \begin{bmatrix} \alpha_1+1 \\
                                       i_1+1      \end{bmatrix} \circ [0] \circ \ldots \circ [0] \circ \nabla \begin{bmatrix} \alpha_s+1 \\
                                                                                                                              i_s+1      \end{bmatrix} \circ Fix) f \zeta \)

\( = Enm ((\nabla \begin{bmatrix} \alpha_1+1 \\
                                  i_1+1      \end{bmatrix} \circ [0] \circ \ldots \circ [0] \circ \nabla \begin{bmatrix} \alpha_s+1 \\
                                                                                                                         i_s+1      \end{bmatrix}) (Fix f)) \zeta \)

\( = (\nabla \begin{bmatrix} \alpha_1+1 \\
                             i_1+1      \end{bmatrix} \circ [0] \circ \ldots \circ [0] \circ \nabla \begin{bmatrix} \alpha_s+1 \\
                                                                                                                    i_s+1      \end{bmatrix}) (Fix f))^{1+\zeta} 0 \)

\bigskip

If \( f = \alpha \mapsto \omega^\alpha \), then Fix f = Next and 

\( f \begin{pmatrix} \zeta & 1+\alpha_1 & \ldots & 1+\alpha_s \\
                     0     & 1+i_1      & \ldots & 1+i_s      \end{pmatrix} 
 = (\nabla \begin{bmatrix} \alpha_1+1 \\
                             i_1+1      \end{bmatrix} \circ [0] \circ \ldots \circ [0] \circ \nabla \begin{bmatrix} \alpha_s+1 \\
                                                                                                                    i_s+1      \end{bmatrix}) Next)^{1+\zeta} 0 \)

\bigskip

Examples :

\bigskip

\( \varphi(1+\beta,\alpha) \)

\( = (\xi \mapsto \omega^\xi) \begin{pmatrix} \alpha & 1+\beta \\
                                              0      & 1       \end{pmatrix} \)

\( = ((\nabla \begin{bmatrix} \beta+1 \\
                              1       \end{bmatrix}) (Fix (\xi \mapsto \omega^\xi)))^{1+\alpha} 0 \)

\( = ((\nabla \begin{bmatrix} \beta+1 \\
                              1       \end{bmatrix}) Next)^{1+\alpha} 0 \)

\( = ([0]^\beta Next)^{1+\alpha} 0 \)

\bigskip

\( \varphi(1+\gamma,1+\beta,\alpha) \)

\( = (\xi \mapsto \omega^\xi) \begin{pmatrix} \alpha & 1+\beta & 1+\gamma \\
                                              0      & 1       & 2        \end{pmatrix} \)

\( = ((\nabla \begin{bmatrix} \beta+1 \\
                              1       \end{bmatrix} \circ [0] \circ \nabla \begin{bmatrix} \gamma+1 \\
                                                                                           2        \end{bmatrix}) (Fix (\xi \mapsto \omega^\xi)))^{1+\alpha} 0 \)

\( = ((\nabla \begin{bmatrix} \beta+1 \\
                              1       \end{bmatrix} \circ [0] \circ \nabla \begin{bmatrix} \gamma+1 \\
                                                                                           2        \end{bmatrix}) Next)^{1+\alpha} 0 \)

\( = (([0]^\beta  \circ [0] \circ ([1] [0])^{1+\gamma}) Next)^{1+\alpha} 0 \)

\( = ([0]^{1+\beta} (([1] [0])^{1+\gamma} Next))^{1+\alpha} 0 \)

Compare with the previously found formula :

if \( \gamma > 0, \varphi(\gamma,\beta,\alpha) = ([0]^\beta (([1] [0])^\gamma Next))^{1+\alpha} 0 \)

and note the "round trip" \( 1+\gamma \rightarrow \gamma+1 \rightarrow 1+\gamma \).

\bigskip

\( \varphi(1+\delta,1+\gamma,1+\beta,\alpha) \)

\( = (\xi \mapsto \omega^\xi) \begin{pmatrix} \alpha & 1+\beta & 1+\gamma & 1+\delta \\
                                              0      & 1       & 2        & 3        \end{pmatrix} \)

\( = ((\nabla \begin{bmatrix} \beta+1 \\
                              1       \end{bmatrix} \circ [0] \circ \nabla \begin{bmatrix} \gamma+1 \\
                                                                                           2        \end{bmatrix} \circ [0] \circ \nabla \begin{bmatrix} \delta+1 \\
                                                                                                                                                         3        \end{bmatrix}) (Fix (\xi \mapsto \omega^\xi)))^{1+\alpha} 0 \)

\( = ((\nabla \begin{bmatrix} \beta+1 \\
                              1       \end{bmatrix} \circ [0] \circ \nabla \begin{bmatrix} \gamma+1 \\
                                                                                           2        \end{bmatrix} \circ [0] \circ \nabla \begin{bmatrix} \delta+1 \\
                                                                                                                                                         3        \end{bmatrix}) Next)^{1+\alpha} 0 \)

\( = (([0]^\beta \circ [0] \circ ([1] [0])^{1+\gamma} \circ [0] \circ ([1]^2 [0])^{1+\delta}) Next)^{1+\alpha} 0 \)

\( = ([0]^{1+\beta} (([1] [0])^{1+\gamma} ([0] (([1]^2 [0])^{1+\delta} Next))))^{1+\alpha} 0 \)

\( = ([0]^{1+\beta} (([1] [0])^{1+\gamma} (([1]^2 [0])^{1+\delta} Next)))^{1+\alpha} 0 \) 

because [0] is absorbed by the following operator (see http://www.cs.man.ac.uk/~hsimmons/ORDINAL-NOTATIONS/FromBelow.pdf p 33, 6.7)

Compare with the previously mentioned formula :

\( \varphi(\delta,\gamma,\beta,\alpha) = ([0]^\beta (([1] [0])^\gamma (([1]^2 [0])^\delta Next)))^{1+\alpha} 0 \)

\bigskip

The equality

\( (\xi \mapsto \omega^\xi) \begin{pmatrix} \zeta & 1+\alpha_1 & \ldots & 1+\alpha_s \\
                                            0     & 1+i_1      & \ldots & 1+i_s      \end{pmatrix} 
 = (\nabla \begin{bmatrix} \alpha_1+1 \\
                             i_1+1      \end{bmatrix} \circ [0] \circ \ldots \circ [0] \circ \nabla \begin{bmatrix} \alpha_s+1 \\
                                                                                                                    i_s+1      \end{bmatrix}) Next)^{1+\zeta} 0 \)

can be reformulated, distinguishing four cases :

\begin{itemize}

\item 
\( (\xi \mapsto \omega^\xi) \begin{pmatrix} \zeta \\
                                            0     \end{pmatrix} = \varphi(0,\zeta) = \omega^\zeta \)

\item 
\( (\xi \mapsto \omega^\xi) \begin{pmatrix} \zeta & 1+\alpha \\
                                            0     & 1        \end{pmatrix} = \varphi(1+\alpha,\zeta) 
= (\nabla \begin{bmatrix} \alpha+1 \\
                          1        \end{bmatrix} Next)^{1+\zeta} 0 = ([0]^\alpha Next)^{1+\zeta} 0 \)

\item 
\( (\xi \mapsto \omega^\xi) \begin{pmatrix} \zeta & 1+\alpha_1 & 1+\alpha_2 & \ldots & 1+\alpha_s \\
                                                  0     & 1          & 1+i_2      & \ldots & 1+i_s      \end{pmatrix} \)

\( = ((\nabla \begin{bmatrix} \alpha_1+1 \\
                              1          \end{bmatrix} \circ [0] \circ \nabla \begin{pmatrix} \alpha_2+1 \\
                                                                                              i_2+1      \end{pmatrix} \circ [0] \circ \ldots \circ [0] \circ \nabla \begin{bmatrix} \alpha_s+1 \\
                                                                                                                                                                                     i_s+1      \end{bmatrix}) Next)^{1+\zeta} 0 \)

\( = (([0]^{\alpha_1} \circ [0] \circ ([1]^{i_2} [0])^{1+\alpha_2} \circ [0] \circ \ldots \circ [0] \circ ([1]^{i_s} [0])^{1+\alpha_s}) Next)^{1+\zeta} 0 \) 

\( = (([0]^{1+\alpha_1} \circ ([1]^{i_2} [0])^{1+\alpha_2} \circ [0] \circ \ldots \circ [0] \circ ([1]^{i_s} [0])^{1+\alpha_s}) Next)^{1+\zeta} 0 \)

\( = (([0]^{1+\alpha_1} \circ ([1]^{i_2} [0])^{1+\alpha_2} \circ \ldots \circ ([1]^{i_s} [0])^{1+\alpha_s}) Next)^{1+\zeta} 0 \)

The first separating [0] is combined with \( [0]^{\alpha_1} \) giving \( [0]^{1+\alpha_1} \) and the other are absorbed.

\item
\( (\xi \mapsto \omega^\xi) \begin{pmatrix} \zeta & 1+\alpha_1 & \ldots & 1+\alpha_s \\
                                            0     & 1+i_1      & \ldots & 1+i_s      \end{pmatrix} \) with \( i_1 \neq 0 \)

\( = ((\nabla \begin{bmatrix} \alpha_1+1 \\
                              i_1+1      \end{bmatrix} \circ [0] \circ \ldots \circ [0] \circ \nabla \begin{bmatrix} \alpha_s+1 \\
                                                                                                                     i_s+1      \end{bmatrix}) Next)^{1+\zeta} 0 \)

\( = ((([1]^{i_1} [0])^{1+\alpha_1} \circ [0] \circ \ldots \circ [0] \circ ([1]^{i_s} [0])^{1+\alpha_s}) Next)^{1+\zeta} 0 \) 

\( = ((([1]^{i_1} [0])^{1+\alpha_1} \circ \ldots \circ ([1]^{i_s} [0])^{1+\alpha_s}) Next)^{1+\zeta} 0 \) 

The separating [0] are absorbed.

\end{itemize}

We can see that the third case is contained in the fourth one if we remove the restriction \( i_1 \neq 0 \) because if \( i_1 = 0 \) we have \( ([1]^{i_1} [0])^{1+\alpha_1} = [0]^{1+\alpha_1} \) like in the third case.

\bigskip

For more information concerning the correspondence between Simmons notation and Schütte Klammersymbols, see :

http://www.cs.man.ac.uk/~hsimmons/ORDINAL-NOTATIONS/FromBelow.pdf pages 28 - 34.

\bigskip

The Simmons notation can also be used to represent the notation going beyond Veblen functions that we saw previously.

As we saw previously, the large Veblen ordinal is the least fixed point of the function \( \alpha \mapsto \varphi(1_\alpha) \) or \( \alpha \mapsto (\xi \mapsto \omega^\xi) \begin{pmatrix} 1 \\ \alpha \end{pmatrix} \). It is \( Fix (\alpha \mapsto \varphi(1_\alpha)) 0 = Fix (\alpha \mapsto [1]^\alpha [0] Next\ 0) 0 = [2] [1] [0] Next\ 0 \). 

Using collapsing, we can write it \( \varphi(1_\Omega) = [1]^\Omega [0] Next\ 0 \). Compare with the previously obtained equality \( [0]^{\Omega^2} = ([0]^\Omega)^\Omega = ([1] [0])^\Omega = [1] ([1] [0]) = [1]^2 [0] \) which can be generalized to \( [0]^{\Omega^\alpha} = [1]^\alpha [0] \). We can also write \( LVO = \varphi_{\Omega^\Omega}(0) = [0]^{\Omega^\Omega} Next\ 0 = [1]^\Omega [0] Next\ 0 = [2] [1] [0] Next\ 0 \) with \( [1]^\Omega = [2] [1] \).

\bigskip

The fixed points of this function \( \alpha \mapsto \varphi(1_\alpha) \) are enumerated by the function F, so we have LVO = F(0). More generally, the \( (1+\alpha\)-th fixed point of  \( \alpha \mapsto \varphi(1_\alpha) \) is \( F(\alpha) = \varphi^+_1(\alpha) = ([2] [1] [0] Next)^{1+\alpha} 0 \).

Then the fixed points of \( F = \varphi^+_1 \) are enumerated by \( G = \varphi^+_2 \). The least fixed point of F is \( G(0) = \varphi^+_2(0) = Fix (\alpha \mapsto ([2] [1] [0] Next)^{1+\alpha} 0) 0 = [0] ([2] [1] [0] Next) 0 \) (because of the absorbsion of "1+") and its \( (1+\alpha) \)-th fixed point is \( G(\alpha) = \varphi^+_2(\alpha) = ([0] ([2] [1] [0] Next))^{1+\alpha} 0 \).

Then the fixed points of \( G = \varphi^+_2 \) are enumerated by \( H = \varphi^+_3 \). The least fixed point of H is \( H(0) = \varphi^+_3(0) = Fix (\alpha \mapsto ([0] ([2] [1] [0] Next)^{1+\alpha} 0) 0 = [0] ([0] ([2] [1] [0] Next)) 0 = [0]^2 ([2] [1] [0] Next) 0 \) and its \( (1+\alpha) \)-th fixed point is \( H(\alpha) = \varphi^+_3(\alpha) = ([0]^2 ([2] [1] [0] Next))^{1+\alpha} 0 \).

More generally, we have \( \varphi^+_{1+\alpha}(0) = [0]^\alpha ([2] [1] [0] Next) 0 \) and \( \varphi^+_{1+\alpha}(\beta) = ([0]^\alpha ([2] [1] [0] Next))^{1+\beta} 0 \).

Then we generalize the function \( \varphi^+ \) to any number of variables : 

\( \varphi^+(\alpha,\beta) = \varphi^+_\alpha(\beta) \)

\( \varphi^+(1,0,0) \) is the least fixed point of the function \( \alpha \mapsto \varphi^+(\alpha,0) = \alpha \mapsto [0]^\alpha ([2] [1] [0] Next) 0 \). It is \( Fix (\alpha \mapsto [0]^\alpha ([2] [1] [0] Next) 0) 0 = [1] [0] ([2] [1] [0] Next) 0 \).

Compare with \( \varphi(1,0,0) = [1] [0] Next 0 \).

More generally, like we found \( \varphi(\gamma,\beta,\alpha) = ([0]^\beta (([1] [0])^\gamma Next))^{1+\alpha} 0 \), we have \( \varphi^+(\gamma,\beta,\alpha) = ([0]^\beta (([1] [0])^\gamma ([2] [1] [0] Next)))^{1+\alpha} 0 \).

Like we generalized the \( \varphi \) function to transfinitely many variables reaching all ordinals less than \( LVO = [2] [1] [0] Next\ 0 \), we can generalize the \( \varphi^+ \) function to transfinitely many variables and reach all ordinals less than a new limit which we will call \( LVO^+ = [2] [1] [0] ([2] [1] [0] Next) 0 \) which is the least fixed point of \( \alpha \mapsto [1]^\alpha [0] ([2] [1] [0] Next) 0 \).

Then we can do the same with \( \varphi^{++} = \Phi_2 \) and we shall get similar results with \( ([2] [1] [0])^2 Next \), and generally with \( \Phi_\alpha \), getting formulas with \( ([2] [1] [0])^\alpha Next \).


\bigskip



The limit of Next 0, [0] Next 0, [1] [0] Next 0, [2] [1] [0] Next 0, [3] [2] [1] [0] Next 0, ... 

or \( Next\ \omega, [0] Next\ \omega, [1] [0] Next\ \omega, [2] [1] [0] Next\ \omega, [3] [2] [1] [0] Next\ \omega, \ldots \) 

is called the Bachmann-Howard ordinal (BHO). 

It could be written \( [\omega \ldots 0] Next\ 0 \) or \( [\omega \ldots 0] Next\ \omega \).


\section{Rationalization of the Veblen functions}

When we have defined the different notations, we have arbitrarily chosen some conventions, for example the limit of \( \omega, \omega^\omega, \omega^{\omega^\omega}, \ldots \) have been called  \( \varepsilon_0 \). We could have called it \( \varepsilon_1 \). In this case, \( \varepsilon_\alpha \) would have been the \( \alpha \)-th fixed point of \( \xi \mapsto \omega^\xi \) instead of the the \( (1+\alpha) \)-th one. Also we chose to define \( \varphi(0,\alpha) = \omega^\alpha \). We could have chosen to define \( \varphi(0,\alpha) = \varepsilon_\alpha \). The "1+" which appear in the correspondence between Simmons and Veblen notations may be due to the fact that the choices that have been made are not the most logical. 

We will define a rationalized variant of the Veblen notations which simplifies the correspondence with the Simmons notation :

\begin{itemize}

\item \( \varepsilon_\alpha = \varphi(1,\alpha) = \varepsilon'_{1+\alpha} = \varphi'(0,1+\alpha) \)

\item \( \zeta_\alpha = \varphi(2,\alpha) = \zeta'_{1+\alpha} = \varphi'(1,1+\alpha) \)

\item \( \eta_\alpha = \varphi(3,\alpha) = \eta'_{1+\alpha} = \varphi'(2,1+\alpha) \)

\item Generally, \( \varphi(1+\beta,\alpha) = \varphi'(\beta,1+\alpha) \)

\item \( \Gamma_0 = \varphi(1,0,0) = \varphi'(1,0,1) \)

\item Generally, if \( \gamma \neq 0, \varphi(\gamma,\beta,\alpha) = \varphi'(\gamma,\beta,1+\alpha) \)

\item In a similar way, if \( \gamma \neq 0 \) or \( \delta \neq 0, \varphi(\delta,\gamma,\beta,\alpha) = \varphi'(\delta,\gamma,\beta,1+\alpha) \) and so on.

\end{itemize}

With this notation, the correspondence with Simmons notation becomes simpler, for example we have :

\begin{itemize}

\item 
\( \varepsilon'_\alpha = Next^\alpha 0 \) instead of \( \varepsilon_\alpha = Next^{1+\alpha} 0 \)

\item
\( \varphi'(\beta,\alpha) = ([0]^\beta Next)^\alpha 0 \) 
instead of
\( \varphi(1+\beta,\alpha) = ([0]^\beta Next)^{1+\alpha} 0 \) 

\item
\( \varphi'(\gamma,\beta,\alpha) = ([0]^\beta (([1] [0])^\gamma Next))^\alpha 0 \)
instead of 
\( \varphi(\gamma,\beta,\alpha) = ([0]^\beta (([1] [0])^\gamma Next))^{1+\alpha} 0 \)

\item
\( \varphi'(\delta,\gamma,\beta,\alpha) = ([0]^\beta (([1] [0])^\gamma (([1]^2 [0])^\delta Next)))^{1+\alpha} 0  \) 
instead of 
\( \varphi(\delta,\gamma,\beta,\alpha) = ([0]^\beta (([1] [0])^\gamma (([1]^2 [0])^\delta Next)))^{1+\alpha} 0  \) 

\end{itemize}

It appears that the last variable (\(\alpha\) in the previous examples) plays a different role from the other variables, so it could be more logical to write for example  \( \varphi'_{\delta,\gamma,\beta}(\alpha) \) instead of \( \varphi'(\delta,\gamma,\beta,\alpha) \) and to consider that \( \beta \) is at position 0, \( \gamma \) at position 1 and \( \delta \) at position 2. In this case, we see that the position corresponds to the exponent of [1] in the Simmons representation.

We can also use collapsing to represent the index list, writing for example :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \Gamma_0 = \varphi'_{1,0}(1) = \varphi'_\Omega(1) \)
\item Ackermann ordinal = \( \varphi'_{1,0,0}(1) = \varphi'_{\Omega^2}(1) \)
\item \( SVO = \varphi'_{\Omega^\omega}(1) \)
\end{itemize}

This notation even permits writing ordinals that are out of range of Veblen notation like :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( LVO = \varphi'_{\Omega^\Omega}(1) \)
\item \( \varphi'_{\Omega^{\Omega^\Omega}}(1) \)
\item \( \ldots \)
\end{itemize}

\section{RHS0 notation}

\subsection{Basic principles}

Like Simmons notation, the RHS0 notation uses lambda calculus formalism.

The basic method consists in :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item    Start from 0
\item    If we don't see any regularity, take the successor (add 1)
\item    If we see a regularity and we don't have a notation for it, invent it and jump to the limit
\item    If we see a regularity and we already have a notation for it, use it and jump to the limit. 
\end{itemize}

The difficulty, which requires intelligence, is to see the regularities. It gives the following sequence :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \(    0 \) : no regularity, take the successor
\item \(    suc\ 0 \) : no regularity, take the successor
\item \(    suc (suc\ 0) \) : regularity : suc repeatedly applied to 0. No notation, invent it : H f x = limit of x, f x, f (f x), ... 
\item \(    H suc\ 0 \) : no regularity, take the successor
\item \(    suc (H suc\ 0) \) : no regularity, take the successor
\item \(    suc (suc (H suc\ 0)) \) : regularity : suc repeatedly applied to H suc 0, notation exists
\item \(    H suc (H suc\ 0) \) : regularity : H suc repeatedly applied to 0, notation exists
\item \(    H (H suc) 0 \) : regularity : H repeatedly applied to suc, notation exists
\item \(    H H suc\ 0 \) : regularity (suc 0, ..., H suc 0, ... H H suc 0, ... H H H suc 0, ...), invent notation \( R_1 H suc\ 0 \) for the limit of this sequence 
\item \(    R_1 H suc\ 0 \) : no regularity, take the successor
\item \(    suc (R_1 H suc\ 0) \)
\item \(    suc (suc (R_1 H suc\ 0)) \)
\item \(    H suc (R_1 H suc\ 0) \)
\item \(    suc (H suc (R_1 H suc\ 0)) \)
\item \(    suc (suc (H suc (R_1 H suc\ 0))) \)
\item \(    H suc (H suc (R_1 H suc\ 0)) \)
\item \(    H (H suc) (R_1 H suc\ 0) \)
\item \(    H H suc (R_1 H suc\ 0) \)
\item \(    R_1 H suc (R_1 H suc\ 0) \)
\item \(    H (R_1 H suc) 0 \)
\item \(    suc (H (R_1 H suc) 0) \)
\item \(    suc (suc (H (R_1 H suc) 0)) \)
\item \(    H suc (H (R_1 H suc) 0) \)
\item \(    suc (suc (H suc (H (R_1 H suc) 0))) \)
\item \(    H suc (H suc (H (R_1 H suc) 0))) \)
\item \(    H (H suc) (H (R_1 H suc) 0) \)
\item \(    H H suc (H (R_1 H suc) 0) \)
\item \(    R_1 H suc (H (R_1 H suc) 0) \)
\item \(    suc (R_1 H suc (H (R_1 H suc) 0)) \)
\item \(    suc (suc (R_1 H suc (H (R_1 H suc) 0))) \)
\item \(    H suc (R_1 H suc (H (R_1 H suc) 0)) \)
\item \(    suc (H suc (R_1 H suc (H (R_1 H suc) 0))) \)
\item \(    suc (suc (H suc (R_1 H suc (H (R_1 H suc) 0)))) \)
\item \(    H suc (H suc (R_1 H suc (H (R_1 H suc) 0))) \)
\item \(    H (H suc) (R_1 H suc (H (R_1 H suc) 0)) \)
\item \(    H H suc (R_1 H suc (H (R_1 H suc) 0)) \)
\item \(    R_1 H suc (R_1 H suc (H (R_1 H suc) 0)) \)
\item \(    H (R_1 H suc) (H (R_1 H suc) 0) \)
\item \(    H (H (R_1 H suc)) 0 \)
\item \(    H H (R_1 H suc) 0 \)
\item \(    R_1 H (R_1 H suc) 0 \)
\item \(    H (R_1 H) suc\ 0 \)
\item \(    ... \)
\item \(    R_1 H (R_1 H) suc\ 0 \)
\item \(    R_1 (R_1 H) suc\ 0 \)
\item \(    H R_1 H suc\ 0 \)
\item \(    ... \)
\item \(    R_1 H R_1 H suc\ 0 \) : invent notation \( R_2 R_1 H suc\ 0 = \) limit of \( suc\ 0, R_1 H suc\ 0, R_1 H R_1 H suc\ 0, ... \)
\item \(    ... \)
\item \(    R_3 R_2 R_1 H suc\ 0 \) : invent notation \( R_{3...1} H suc\ 0 \) and jump to limit
\item \(    R_{\omega...1} H suc\ 0 \)
\item \(    ... \)
\item \(    R_2 R_{\omega...1} H suc\ 0 \) : invent notation \( R_{\omega+1...1} H suc\ 0 \)
\item \(    ...  \)

\end{itemize}

To progress faster, we can use the following rule :

If we have found an ordinal \( \alpha \), and later another ordinal \( \beta \) of the form \( f (s (s z)) \), we may produce an ordinal \( \gamma = f ([suc \rightarrow s,0 \rightarrow z] \alpha) \) where \( [suc \rightarrow s, 0 \rightarrow z] \alpha \) means the expression obtained by replacing suc by s and 0 by z in \( \alpha \).

For example :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \alpha = R_1 H suc\ 0 \)
\item \( \beta = R_1 H (R_1 H suc) 0 \)
\item \( s = R_1 H \)
\item \( z = suc \)
\item \( f x = x\ 0 \)
\item \( [suc \rightarrow R_1 H,0 \rightarrow suc] \alpha = R_1 H (R_1 H) suc \)
\item \( \gamma = f ([suc \rightarrow R_1 H,0 \rightarrow suc] \alpha) = R1 H (R1 H) suc\ 0 \)

\end{itemize}


With the following rules :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( 0 : \rightarrow 0 \)
\item \( suc : x \rightarrow suc\ x \)
\item \( H : f (f x) -> H f x \)
\item \( R_1 : f f -> R_1 f \)
\item \( R_2 : f g f g -> R_2 f g \)
\item \( R_3 : f g h f g h -> R_3 f g h \)
\item ...
\item \( Repl : \alpha, f (s (s z)) \rightarrow f([suc \rightarrow s,0 \rightarrow z] \alpha) \)

\end{itemize} 

we can produce the following sequence of ordinals :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item    0 : \( 0 : 0 \)
\item    1 : \( suc\ 0 : suc\ 0 \)
\item    2 : \( suc\ 1 : suc\ (suc\ 0) \)
\item    3 : \( H 2 : H suc\ 0 \)
\item    4 : \( suc\ 3 : suc\ (H suc\ 0) \)
\item    5 : \( suc\ 4 : suc\ (suc\ (H suc\ 0)) \)
\item    6 : \( H 5 : H suc\ (H suc\ 0) \)
\item    7 : \( H 6 : H (H suc) 0 \)
\item    8 : \( H 7 : H H suc\ 0 \)
\item    9 : \( R_1 8 : R_1 H suc\ 0 \)
\item    10 : \( suc\ 9 : suc\ (R_1 H suc\ 0) \)
\item    11 : \( suc\ 10 : suc\ (suc\ (R_1 H suc\ 0)) \)
\item    12 : \( Repl\ 9\ 11 [suc->suc,0->R_1 H suc\ 0] : R_1 H suc\ (R_1 H suc\ 0) \)
\item    13 : \( Repl\ 9\ 12 [suc->R_1 H suc,0->0] : R_1 H (R_1 H suc) 0 \)
\item    14 : \( Repl\ 9\ 13 [suc->R_1 H,0->suc] : R_1 H (R_1 H) suc\ 0 \)
\item    15 : \( R_1 14 : R_1 (R_1 H) suc\ 0 \)
\item    16 : \( Repl\ 9\ 15 [suc->R_1,0->H] : R_1 H R_1 H suc\ 0 \)
\item    17 : \( R_2 16 : R_2 R_1 H suc\ 0  \)

\end{itemize}

The rules \( R_1, R_2, R_3, \) ... may be replaced by H or Repl if f1 ... fn ... f1 ... fn 
is reformulated in \( <f_1,...,f_n> ( ... (<f_1,...,f_n> I)...) \) with \( <f_1,...,f_n> g = g\ f_1 ... f_n \) :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item    0 : 0 : 0
\item    1 : suc 0 : suc 0
\item    2 : suc 1 : suc (suc 0)
\item    3 : H 2 : H suc 0
\item    4 : suc 3 : suc (H suc 0)
\item    5 : suc 4 : suc (suc (H suc 0))
\item    6 : Repl 3 5 [suc-$>$suc,0-$>$H suc 0] : H suc (H suc 0)
\item    7 : Repl 3 6 [suc-$>$H suc,0-$>$0] : H (H suc) 0
\item    8 : Repl 3 7 [suc-$>$H,0-$>$suc] : H H suc 0 = $<$H$>$ ($<$H$>$ I) suc 0
\item    9 : Repl 3 8 [suc-$>$$<$H$>$,0-$>$I] : H $<$H$>$ I suc 0
\item    10 : suc 9 : suc (H $<$H$>$ I suc 0)
\item    11 : suc 10 : suc (suc (H $<$H$>$ I suc 0))
\item    12 : Repl 9 10 [suc-$>$suc,0-$>$H $<$H$>$ I suc 0] : H $<$H$>$ I suc (H $<$H$>$ I suc 0)
\item    13 : Repl 9 12 [suc-$>$H $<$H$>$: I suc,0-$>$0] : H $<$H$>$ I (H $<$H$>$ I suc) 0
\item    14 : Repl 9 13 [suc-$>$H $<$H$>$ I,0-$>$suc] : H $<$H$>$ I (H $<$H$>$ I) suc 0 = $<$H $<$H$>$ I$>$ ($<$H $<$H$>$ I$>$ I) suc 0
\item    15 : Repl 3 14 [suc-$>$$<$H $<$H$>$ I$>$,0-$>$I] : H $<$H $<$H$>$ I$>$ I suc 0 = [H $<$*$>$ I] ([H $<$*$>$ I] H) suc 0
\item    16 : Repl 9 15 [suc-$>$[H $<$*$>$ I],0-$>$H] : H $<$H$>$ I [H $<$*$>$ I] H suc 0 
\item     = [H $<$*$>$ I] H [H $<$*$>$ I] H suc 0 = $<$[H $<$*$>$ I],H$>$ ($<$[H $<$*$>$ I], H$>$ I) suc 0
\item    17 : Repl 3 16 [suc-$>$$<$[H $<$*$>$ I],H$>$,0-$>$I] : H $<$[H $<$*$>$ I], H$>$ I suc 0 

\end{itemize}

More formally, the RHS0 notation uses lambda calculus with De Bruijn indexes.
\( \lambda.x \) is written [ x ] and variables are written *, **, ***..., or \( \bullet, \bullet \bullet, \bullet \bullet \bullet, \) ...
for example [ ... * ... ] = \( [ ... \bullet ... ] = \lambda x ( ... x ... ) \)

\begin{verbatim}

CI = C I is defined by CI x f = f x.
CI x = <x>
<x1,...,xn> f = f x1 ... xn
tuple n f x1 ... xn = f <x1,...,xn>
tuple 0 = <I>
tuple (n+1) f x = tuple n [ f (insert x *) ]
with insert x a f  = a (f x)

r 0 f x = x
r (n+1) f x = f (r n f x)
r (lim g) f x = lim [r * f x]

H f x represents the limit of x, f x, f (f x), ...
H f x = r w f x

\end{verbatim}

\( R_1 = [H <\bullet> I] = tuple\ 1 [H \bullet I] \)

\( R_2 = [[H <\bullet\bullet,\bullet> I]] = tuple\ 2 [H \bullet I] \)

\( R_3 = [[[H <\bullet\bullet\bullet,\bullet\bullet,\bullet> I]]] = tuple\ 3 [H \bullet I] \)

\( R_n = tuple\ n [H \bullet I] \)

\( R_{n \ldots 1} = R_n \ldots R_1 \)

\( S_{n...1} = [S_{\bullet...1}] n = <R_n,...,R_1> \)

\( R_{n \ldots 1} = S_{n \ldots 1} I \)

\( [S_{\bullet \ldots 1}] 0 = I \)

\( [S_{\bullet \ldots 1}] (n+1) = insert (tuple (n+1) [H \bullet I]) ([S_{\bullet \ldots 1}] n) \)

\begin{verbatim}

L f = lim f 0, f 1, ...
L f x = L [f * x]
H = [[L [r * *** **]]]
or
L0 = lim f 0, f 1, ...
L n f = tuple n [ L0 [ ** (f *) ]]
L n = [ tuple n [ L0 [ ** (*** *) ]]]
L = [[ tuple ** [ L0 [ ** (*** *) ]]]
 = \n \f (tuple n \a (L0 \i (a (f i)) ) )
 
\end{verbatim}

To represent the replacement \( [suc \rightarrow s,0 \rightarrow z] \) we can represent ordinals by ordinal functions which, when applied to suc and 0, give the considered ordinal. For example, \( R_1 H suc\ 0 \) is represented by the ordinal function \( s \mapsto z \mapsto R_1 H s z, R_1 H (R_1 H suc) 0 \) by \( s \mapsto z \mapsto R_1 H (R_1 H s) z \). From these ordinals, with the replacement \( [suc \rightarrow R_1 H,0 \rightarrow suc] \) we can produce a new ordinal represented by \( s \mapsto z \mapsto ((s \mapsto z \mapsto R_1 H s z) (R_1 H) s z) = s \mapsto z \mapsto R_1 H (R_1 H) s z) \) which, when applied to suc and 0, gives \( R_1 H (R_1 H) suc\ 0 \).

Operations can be represented with replacements :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \alpha+\beta = [0 \rightarrow \alpha] \beta \)
\item \( \alpha \cdot \beta = [suc \rightarrow [\bullet+\alpha]] \beta = [suc->[[0 \rightarrow \bullet\bullet] \alpha]] \beta \)
\item \( \alpha^\beta = [suc \rightarrow [\bullet \cdot \alpha], 0 \rightarrow 1] \beta = [suc \rightarrow [[suc \rightarrow[[0 \rightarrow \bullet\bullet] \bullet\bullet\bullet]] \alpha], 0 \rightarrow suc\ 0] \beta \)
\item \( \omega^\alpha = [suc \rightarrow [suc \rightarrow H suc], 0 \rightarrow suc\ 0] \alpha = [suc \rightarrow H,0 \rightarrow suc] \alpha\ 0 \) 
\item \( {\varepsilon_0}^\alpha = [suc \rightarrow R_1 H,0 \rightarrow suc] \alpha 0 \)
\item \( \varepsilon_a = [suc \rightarrow R_1, 0 \rightarrow H] (1+\alpha) suc\ 0 ; 1+\alpha = [0 \rightarrow suc\ 0] \alpha \) 

\end{itemize}



\subsection{Correspondence with other notations}

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( suc\ 0 = 0 + 1 = 1 \)
\item \( suc\ (suc\ 0) = 1 + 1 = 2 \)
\item \( H suc\ 0 = \omega \)
\item \( suc\ (H suc\ 0) = \omega + 1 \)
\item \( H suc\ (H\ suc\ 0) = \omega + \omega = \omega \cdot 2 \)
\item \( H (H suc)\ 0 = \omega \cdot \omega = \omega^2 \)
\item \( H H suc\ 0 = \omega^\omega \)
\item \( R_1 H suc\ 0 = \) limit of \( suc\ 0, H suc\ 0, H H suc\ 0, H H H suc\ 0, \ldots = \varepsilon_0 = \varphi(1,0) = \varphi'(0,1) = Next\ \omega \)
\item \( suc (R_1 H suc\ 0) = \varepsilon_0 + 1 \)
\item \( R_1 H suc (R_1 H suc\ 0) = \varepsilon_0 + \varepsilon_0 = \varepsilon_0 \cdot 2 \)
\item \( R_1 H (R_1 H suc) 0 = \varepsilon_0 \cdot \varepsilon_0 = {\varepsilon_0}^2 \)
\item \( R_1 H (R_1 H) suc\ 0 = {\varepsilon_0}^{\varepsilon_0} \)
\item \( R_1 H (R_1 H) (R_1 H) suc\ 0 ) = {\varepsilon_0}^{{\varepsilon_0}^{\varepsilon_0}} \)
\item \( R_1 (R_1 H) suc\ 0 = \varepsilon_1 = \varphi(1,1) = \varphi'(0,2) = Next (Next\ \omega) \) ( note again that the correspondence is clearer with the rationalized function \( \varphi' \)

\end{itemize}

We have previously seen that \( \varepsilon_1 \) is the limit of \( \varepsilon_0, {\varepsilon_0}^{\varepsilon_0}, {\varepsilon_0}^{{\varepsilon_0}^{\varepsilon_0}}, \ldots \) and is also the limit of \( \varepsilon_0+1, \omega^{\varepsilon_0+1}, \omega^{\omega^{\varepsilon_0+1}}, \ldots \) and we have proved the equivalence of these two fundamental sequences. We have seen that the first fundamental sequence is equivalent to \( \omega, {\varepsilon_0}^\omega, {\varepsilon_0}^{{\varepsilon_0}^\omega}, \ldots \), so we proved the equivalence of the two fundamental sequences by proving that for any n, we have :

 \( \omega^{\omega^{\vdots^{\omega^{\omega^{\varepsilon_0+1}}}}} = \varepsilon_0^{\varepsilon_0^{\vdots^{{\varepsilon_0}^\omega}}} \)

We will now see how we can prove it using RHS0 notation.

First we will write the two sides of this equality using RHS0 notation :

We will use the notation \( X \ldots X \) for X repeated n times.

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \varepsilon_0 = R_1 H suc\ 0 \)
\item \( \varepsilon_0 + 1 = suc (R_1 H suc\ 0) \)
\item \( \omega^{\varepsilon_0+1} = [suc \rightarrow H, 0 \rightarrow suc] (suc (R_1 H suc\ 0)) 0 = H (R_1 H H suc) 0 = H (R_1 H suc) 0 \)
\item \( \omega^{\omega^{\varepsilon_0+1}} = H (R_1 H H) suc\ 0 = H (R_1 H) suc\ 0 \)
\item \( \omega^{\omega^{\omega^{\varepsilon_0+1}}} = H (R_1 H) H suc\ 0 \)
\item \( \omega^{\omega^{\omega^{\omega^{\varepsilon_0+1}}}} = H (R_1 H) H H suc\ 0 \)
\item \( \ldots \)
\item \( \omega^{\omega^{\vdots^{\omega^{\omega^{\varepsilon_0}}}}} = H (R_1 H) H \ldots H suc\ 0 \)
\end{itemize}

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \omega = H suc\ 0 \)
\item \( \varepsilon_0^\omega = [suc \rightarrow R_1 H, 0 \rightarrow suc] \omega 0 = H (R_1 H) suc\ 0 \)
\item \( \varepsilon_0^{\varepsilon_0^\omega} = H (R_1 H) (R_1 H) suc\ 0 \)
\item \( \varepsilon_0^{\varepsilon_0^{\varepsilon_0^\omega}} = H (R_1 H) (R_1 H) (R_1 H) suc\ 0 \)
\item \( \ldots \)
\item \( \varepsilon_0^{\varepsilon_0^{\vdots^{{\varepsilon_0}^\omega}}} = H (R_1 H) \ldots (R_1 H) (R_1 H) suc\ 0 \)
\end{itemize}

We will now prove the equality \( H (R_1 H) H \ldots H suc\ 0 = H (R_1 H) \ldots (R_1 H) (R_1 H) suc\ 0 \) for any n by induction.

\bigskip

For n = 0, the equality is trivial : \( H (R_1 H) suc\ 0 = H (R_1 H) suc\ 0 \).

\bigskip

We will now suppose \( H (R_1 H) H \ldots H suc\ 0 = H (R_1 H) \ldots (R_1 H) (R_1 H) suc\ 0 \) for a given n and prove it for n + 1 :

\( H (R_1 H) H \ldots H H suc\ 0 = H (R_1 H) \ldots (R_1 H) (R_1 H) (R_1 H) suc\ 0  \)

\bigskip

By elevating \( \omega \) at the power of each side of this equality, we get : 

\( [suc \rightarrow H, 0 \rightarrow suc] (H (R_1 H) H \ldots H suc\ 0) 0 = [suc \rightarrow H, 0 \rightarrow suc] (H (R_1 H) \ldots (R_1 H) (R_1 H) suc\ 0) 0 \)

(1) \( H (R_1 H) H \ldots H H suc\ 0 = H (R_1 H) \ldots (R_1 H) (R_1 H) H suc\ 0 \)

\bigskip

We also have :

\( H (R_1 H) \ldots (R_1 H) suc\ 0 = H (R_1 H) \ldots (R_1 H) suc (suc\ 0) \)

which corresponds to the RHS0 notation for :

\( \varepsilon_0^{\vdots^{{\varepsilon_0}^\omega}} = 1 + \varepsilon_0^{\vdots^{{\varepsilon_0}^\omega}} \)

by absorpsion of "1+" and "suc".

Now we elevate \( \varepsilon_0 \) to the power of each side of this equality, which gives :

\( [suc \rightarrow R_1 H, 0 \rightarrow suc] (H (R_1 H) \ldots (R_1 H) suc\ 0) 0 = [suc \rightarrow R_1 H, 0 \rightarrow suc] (H (R_1 H) \ldots (R_1 H) suc (suc\ 0)) 0 \)

\( H (R_1 H) \ldots (R_1 H) (R_1 H) suc\ 0 = H (R_1 H) \ldots (R_1 H) (R_1 H) (R_1 H suc) 0 \)

Then we elevate \( \omega \) to the power of each side of this equality :

\( [suc \rightarrow H, 0 \rightarrow suc] (H (R_1 H) \ldots (R_1 H) (R_1 H) suc\ 0) 0 = [suc \rightarrow H, 0 \rightarrow suc] (H (R_1 H) \ldots (R_1 H) (R_1 H) (R_1 H suc) 0) 0 \)

\( H (R_1 H) \ldots (R_1 H) (R_1 H) H suc\ 0 = H (R_1 H) \ldots (R_1 H) (R_1 H) (R_1 H H) suc\ 0 \)

which can be simplified to :

\( H (R_1 H) \ldots (R_1 H) (R_1 H) H suc\ 0 = H (R_1 H) \ldots (R_1 H) (R_1 H) (R_1 H) suc\ 0 \)

Noting that the left side of this last equality is the same as the right side of (1), we get by transitivity of equality, equating the left side of (1) with the right side of the last equality :

\( H (R_1 H) H \ldots H H suc\ 0 = H (R_1 H) \ldots (R_1 H) (R_1 H) (R_1 H) suc\ 0  \)

which corresponds to the equality we wanted to prove for n+1.

\bigskip

Then the correspondence continues with :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( R_1 (R_1 (R_1 H)) suc\ 0 = \varepsilon_2 = \varphi(1,2) = \varphi'(0,3) = Next (Next (Next\ \omega)) \)
\item \( H R_1 H suc\ 0 = \varepsilon_\omega = \varphi(1,\omega) = \varphi'(0,\omega) = Next^\omega \omega \)
\item \( R_1 H R_1 H suc\ 0 = \varepsilon_{\varepsilon_0} \)
\item \( R_1 H R_1 H R_1 H suc\ 0 = \varepsilon_{\varepsilon_{\varepsilon_0}} \)
\item \( R_2 R_1 H suc\ 0 = \zeta_0 = \varphi(2,0) = \varphi'(1,1) = [0] Next\ \omega \)

\end{itemize}

The next step is \( \zeta_1 \) which is the next fixed point of the function \( \alpha \mapsto \varepsilon_\alpha \), the limit of \( \zeta_0+1, \varepsilon_{\zeta_0+1}, \varepsilon_{\varepsilon_{\zeta_0+1}}, \ldots \). \( \varepsilon_\alpha \) is \( [suc \rightarrow R_1, 0 \rightarrow H] (1+\alpha) suc\ 0 \), or \( [suc \rightarrow R_1, 0 \rightarrow H] \alpha\ suc\ 0 \) if \( \alpha \geq \omega \) by absorbsion of "1+". This is the result of replacing suc by \( R_1 \) and 0 by H in \( \alpha \) and applying the result to suc and 0. So by iterating this transformation we get that \( \zeta_1 \) is the limit of :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \zeta_0+1 = suc (R_2 R_1 H suc\ 0) \)
\item \( R_1 (R_2 R_1 H R_1 H) suc\ 0 = R_1 (R_2 R_1 H) suc\ 0 \)
\item \( R_1 (R_2 R_1 H) R_1 H suc\ 0 \)
\item \( R_1 (R_2 R_1 H) R_1 H R_1 H suc\ 0 \)
\item \( \ldots \)
\end{itemize}

In the previous correnspondence formulas, we can see a correspondence between RHS0 and Simmons notations :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( R_2 \leftrightarrow [0] \)
\item \( R_1 \leftrightarrow Next \)
\item \( H \leftrightarrow \omega \)
\item suc 0 at the end of the RHS0 notation
\end{itemize}

If we apply this correspondence to \( \zeta_1 = [0] Next ([0] Next\ \omega) \) (see "Simmons notation / Correspondence with Veblen functions") we get \( \zeta_1 = R_2 R_1 (R_2 R_1 H) suc\ 0 \).

\bigskip

This is the limit of :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( R_1 (R_2 R_1 H) suc\ 0 \) 
\item \( R_1 (R_2 R_1 H) R_1 (R_2 R_1 H) suc\ 0 \)
\item \( R_1 (R_2 R_1 H) R_1 (R_2 R_1 H) R_1 (R_2 R_1 H) suc\ 0 \)
\item \( \ldots \)
\end{itemize}

Compare with what we found previously :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \zeta_0+1 = suc (R_2 R_1 H suc\ 0) \)
\item \( R_1 (R_2 R_1 H R_1 H) suc\ 0 = R_1 (R_2 R_1 H) suc\ 0 \)
\item \( R_1 (R_2 R_1 H) R_1 H suc\ 0 \)
\item \( R_1 (R_2 R_1 H) R_1 H R_1 H suc\ 0 \)
\item \( \ldots \)
\end{itemize}

and with the previously proven equality :

\( H (R_1 H) H \ldots H suc\ 0 = H (R_1 H) \ldots (R_1 H) (R_1 H) suc\ 0 \)

which could also be written :

\( H (R_1 H) H \ldots H suc\ 0 = H (R_1 H) (R_1 H) \ldots (R_1 H) suc\ 0 \)

There is a similar equality :

\( R_1 (R_2 R_2 H) R_1 H \ldots R_1 H suc\ 0 = R_1 (R_2 R_1 H) R_1 (R_2 R_1 H) \ldots R_1 (R_2 R_1 H) suc\ 0 \)

which proves the equivalence of the two fundamental sequences.

We saw that \( \zeta_1 \) is the limit (or least upper bound) of \( \zeta_0+1, \varepsilon_{\zeta_0+1}, \varepsilon_{\varepsilon_{\zeta_0+1}}, \ldots \). But we have \( \varepsilon_{\zeta_0+1} = \zeta_0+\varepsilon_{\zeta_0+1} \) because \( \zeta_0 \) is "absorbed" by \( \varepsilon_{\zeta_0+1} \),  so \( \varepsilon_{\varepsilon_{\zeta_0+1}} = \varepsilon_{\zeta_0+\varepsilon_{\zeta_0+1}} \), and similarily \( \varepsilon_{\varepsilon_{\varepsilon_{\zeta_0+1}}} = \varepsilon_{\zeta_0+\varepsilon_{\zeta_0+\varepsilon_{\zeta_0+1}}} \), and so on.

So \( \zeta_1 \) is also the limit of \( 1, \varepsilon_{\zeta_0+1}, \varepsilon_{\zeta_0+\varepsilon_{\zeta_0+1}}, \ldots \). 

We start with 1 because at each step, \( \alpha \) is replaced by \( \varepsilon_{\zeta_0+\alpha} \), the initial value of the sequence having no importance for its limit.

Now let us write the RHS0 representations of the values of this sequence, using the formula \( \varepsilon_\alpha = [suc \rightarrow R_1, 0 \rightarrow H] (1+\alpha) suc\ 0 \):

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( 1 = suc\ 0 \)
\item \( \zeta_0 = R_2 R_1 H suc\ 0 \)
\item \( \zeta_0+1 = suc (R_2 R_1 H suc\ 0) \)
\item \( \varepsilon_{\zeta_0+1} = R_1 (R_2 R_1 H R_1 H) suc\ 0 = R_1 (R_2 R_1 H) suc\ 0 \)
\item \( \zeta_0+\varepsilon_{\zeta_0+1} = R_1 (R_2 R_1 H) suc\ (R_2 R_1 H suc\ 0) \)
\item \( \varepsilon_{\zeta_0+\varepsilon_{\zeta_0+1}} = R_1 (R_2 R_1 H) R_1 (R_2 R_1 H R_1 H) suc\ 0 = R_1 (R_2 R_1 H) R_1 (R_2 R_1 H) suc\ 0 \)
\item \( \ldots \)

\end{itemize}

We see that the limit of this sequence is \( R_2 R_1 (R_2 R_1 H) suc\ 0 \).

\bigskip

So we can go on with our correspondences :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( R_2 R_1 (R_2 R_1 H) suc\ 0 = \zeta_1 = \varphi(2,1) = \varphi'(1,2) = [0] Next ([0] Next\ \omega) \)
\item \( H (R_2 R_1) H suc\ 0 = \zeta_\omega \)
\item \( R_2 R_1 H (R_2 R_1) H suc\ 0 = \zeta_{\zeta_0} \)
\item \( R_2 (R_2 R_1) H suc\ 0 = \eta_0 = \varphi(3,0) = \varphi'(2,1) = [0] ([0] Next) \omega \)
\item \( H R_2 R_1 H suc\ 0 = \varphi(\omega,0) = \varphi'(\omega,1) \)
\item \( R_1 H R_2 R_1 H suc\ 0 = \varphi(\varepsilon_0,0) = \varphi(\varphi(1,0),0) = \varphi'(\varepsilon_0,1) = \varphi'(\varphi'(0,1),1) \)
\item \( R_2 R_1 H R_2 R_1 H suc\ 0 = \varphi(\zeta_0,0) = \varphi(\varphi(2,0),0) = \varphi'(\zeta_0,1) = \varphi'(\varphi'(1,1),1) \)
\item \( R_3 R_2 R_1 H suc\ 0 = \Gamma_0 = \varphi(1,0,0) = \varphi'(1,0,1) = [1] [0] Next\ \omega \)
\end{itemize}

We may then extend our correspondence rule :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( R_3 \leftrightarrow [1] \)
\item \( R_2 \leftrightarrow [0] \)
\item \( R_1 \leftrightarrow Next \)
\item \( H \leftrightarrow \omega \)
\item suc 0 at the end of the RHS0 notation
\end{itemize}

It is likely that this correspondence can be generalized in a simple and logical way, and it seems to me that the simpler generalization is :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( R_{n+2} \leftrightarrow [n] \)
\item \( R_1 \leftrightarrow Next \)
\item \( H \leftrightarrow \omega \)
\item suc 0 at the end of the RHS0 notation
\end{itemize}

I will call it the "Simmons - RHS0 correspondence conjecture".



\bigskip

Then, if the correspondence conjecture is true, the correspondence goes on with : 

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( R_3 R_2 R_1 H suc\ 0 = \Gamma_0 = \varphi(1,0,0) = \varphi'(1,0,1) = [1] [0] Next\ \omega \)
\item \( R_3 (R_3 R_2) R_1 H suc\ 0 = \varphi(1,0,0,0) = \varphi'(1,0,0,1) = [1] ([1] [0]) Next\ 0 \) (Note that in the \( \varphi \) and \( \varphi' \) functions, the last variable plays a different role than the others, as mentioned previously, so the most logical representation should probably be \( \varphi'_{1,0,0}(1) \) where the first 1 should be considered at position 2 and not 3, in this case its position corresponds to the number of occurences (or the exponent) of \( R_3 \) and [1])
\item \( H R_3 R_2 R_1 H suc\ 0 = SVO = [1]^\omega [0] Next\ \omega \)
\item \( R_4 R_3 R_2 R_1 H suc\ 0 = LVO = [2] [1] [0] Next\ \omega \)
\item \( R_{\omega \ldots 1} H suc\ 0 = BHO \)
\item \( \ldots \)
\end{itemize}

Note the importance of using logical notations to make correct conjectures : if, instead of \( \varphi' \), we use the less logical function \( \varphi \), we have the correspondence :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( R_1 H suc\ 0 = \varepsilon_0 = \varphi(1,0) \)
\item \( R_2 R_1 H suc\ 0 = \zeta_0 = \varphi(2,0) \)
\end{itemize}

and we could think that it continues with :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( R_3 R_2 R_1 H suc\ 0 = \eta_0 = \varphi(3,0) \)
\item \( R_{\omega \ldots 1} H suc\ 0 = \varphi(\omega,0) \)
\end{itemize}

Like with the Veblen functions, we can use collapsing with RHS0 notation, writing for example : 

\( \Gamma_0 = \varphi_{1,0}(0) = \varphi'_{1,0}(1) = \varphi_\Omega(0) = \varphi'_\Omega(1) = [0]^\Omega Next\ \omega = [1] [0] Next\ \omega = (R_2)^\Omega R_1 H suc\ 0 = R_3 R_2 R_1 H suc\ 0 \) 

which gives \( (R_2)^\Omega = R_3 R_2 \)

to be compared with \( [0]^\Omega = [1] [0] \).

\( \Gamma_0 \) is also the limit of the following sequence : 

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \zeta_0 = \varphi'_1(1) = [0] Next\ \omega = R_2 R_1 H suc\ 0 \)
\item \( \varphi'_{\zeta_0}(1) = \varphi'_{\varphi'_1(1)}(1) = [0]^{[0] Next\ \omega} Next\ \omega = (R_2)^{R_2 R_1 H suc\ 0} R_1 H suc\ 0 = R_2 R_1 H R_2 R_1 H suc\ 0 \)
\item \( \varphi'_{\varphi'_{\varphi'_1(1)}(1)}(1) = [0]^{[0]^{[0] Next\ \omega} Next\ \omega} Next\ \omega = R_2 R_1 H R_2 R_1 H R_2 R_1 H suc\ 0 \)

\end{itemize}

This limit is \( R_3 R_2 R_1 H suc\ 0 \).



\subsection{Going further with RHS0 notation and collapsing}

The Bachmann-Howard ordinal (BHO) is the limit of \( R_1 H suc\ 0, R_2 R_1 H suc\ 0, R_3 R_2 R_1 H suc\ 0, \ldots \) which we will write \( R_{\omega \ldots 1} H suc\ 0 \).

We can go on ascending ordinals after BHO :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( BHO = R_{\omega \ldots 1} H suc\ 0 \)
\item \( suc (R_{\omega \ldots 1} H suc\ 0) \)
\item \( R_{\omega \ldots 1} H suc\ (R_{\omega \ldots 1} H suc\ 0) \)
\item \( R_{\omega \ldots 1} H (R_{\omega \ldots 1} H suc) 0 \)
\item \( R_{\omega \ldots 1} H (R_{\omega \ldots 1} H) suc\ 0 \)
\item \( R_1 (R_{\omega \ldots 1} H) suc\ 0 \)
\item \( R_{\omega \ldots 1} (R_{\omega \ldots 1} H) suc\ 0 \)
\item \( H R_{\omega \ldots 1} H suc\ 0 \)
\item \( R_2 R_{\omega \ldots 1} H suc\ 0 \)
\item \( R_3 R_2 R_{\omega \ldots 1} H suc\ 0 \)
\item \( R_{\omega \ldots 2} R_{\omega \ldots 1} H suc\ 0 \) which we will write \( R_{\omega \cdot 2 \ldots 1} H suc\ 0 \)
\item \( R_{\omega \ldots 3} R_{\omega \ldots 2} R_{\omega \ldots 1} H suc\ 0 \) which we will write \( R_{\omega \cdot 3 \ldots 1} H suc\ 0 \)
\item \( R_{\omega^2 \ldots 1} H suc\ 0 \)
\item \( R_{\varepsilon_0 \ldots 1} H suc\ 0 = R_{R_1 H suc\ 0 \ldots 1} H suc\ 0 \) 

\end{itemize}

Then we can take the least fixed point of the function \( \alpha \mapsto R_{\alpha \ldots 1} H suc\ 0 \) which we can also write \( [R_{\bullet \ldots 1} H suc\ 0] \). This fixed point is \(  H [R_{\bullet \ldots 1} H suc\ 0] 0 \) which we may also write \( R^1_1 H suc\ 0 \) if we define \( R^1_1 x_1 x_2 x_3 = H [R_{\bullet \ldots 1} x_1 x_2 x_3] 0 \). Then the ascension goes on with :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( H [R_{\bullet \ldots 1} H suc\ 0] 0 = R^1_1 H suc\ 0 \)
\item \( R_2 R^1_1 H suc\ 0 \)
\item \( R_3 R_2 R^1_1 H suc\ 0 \)
\item \( R_{\omega \ldots 2} R^1_1 H suc\ 0 \)
\item \( H [R_{\bullet \ldots 2} R^1_1 H suc\ 0] 0 = R^1_2 R^1_1 H suc\ 0 = R^1_{2 \ldots 1} H suc\ 0 \) with \( R^1_2 x_1 x_2 x_3 x_4 = H [R_{\bullet \ldots 2} x_1 x_2 x_3 x_4] 0 \) 
\item \( R^1_3 R^1_2 R^1_1 H suc\ 0 = R^1_{3 \ldots 1} H suc\ 0 \)
\item \( R^1_{\omega \ldots 1} H suc\ 0 \)
\item \( H [R^1_{\bullet \ldots 1} H suc\ 0] 0 = R^2_1 H suc\ 0 \) with \( R^2_1 x_1 x_2 x_3 = H [R^1_ {\bullet \ldots 1} x_1 x_2 x_3] 0 \)
\item \( R^3_1 H suc\ 0 \)
\item \( R^\omega_1 H suc\ 0 \)
\item \( H [R^\bullet_1 H suc\ 0] 0 = R^{1,0}_1 H suc\ 0 \) with \( R^{1,0}_1 x_1 x_2 x_3 = H [R^\bullet_1 x_1 x_2 x_3] 0 \)
\item \( R^{1,0,0}_1 H suc\ 0 \)

\end{itemize}

We can number the positions in the list of upper indices of R or introduce collapsing to write

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( R^1_1 = R^{1_0}_1 = R^{0:1}_1 \)
\item \( R^{1,0}_1 = R^{1_1}_1 = R^{1:1}_1 = R^\Omega_1 \)
\item \( R^{1,0,0}_1 = R^{1_2}_1 = R^{2:1}_1 = R^{\Omega^2}_1 \)
\item \( \ldots \)
\end{itemize}

We also need a notation for uncountable ordinals. We can take \( \Omega = \omega_1 \) the least uncountable ordinal and  use a notation similar to the one we used for countable ordinals, replacing H by \( H_1 \) when \( \omega \) is replaced by \( \Omega = \omega_1 \), writing for example :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \Omega = \omega_1 = H_1 suc\ 0 \)
\item \( \Omega^2 = H_1 (H_1 suc) 0 \)
\item \( \Omega^\omega = H H_1 suc\ 0 \)
\item \( \Omega^\Omega = H_1 H_1 suc\ 0 \)
\item \( \Omega^{\Omega^\Omega} = H_1 H_1 H_1 suc\ 0 \)
\item \( \ldots \)
\end{itemize}

Then we can go on ascending ordinals by using greater and greater uncountable ordinals as upper indices of R, for example :

\( R^{H [R^\bullet_1 H_1 suc\ 0] 0}_1 H suc\ 0 \)

\bigskip

\section{Extending Simmons notation}

The limit of the Simmons notation is the limit of :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( Next\ \omega = \varepsilon_0 \)
\item \( [0] Next\ \omega = \zeta_0 \)
\item \( [1] [0] Next\ \omega = \Gamma_0 \)
\item \( [2] [1] [0] Next\ \omega = LVO \)
\item \( [3] [2] [1] [0] Next\ \omega \)
\item \( \ldots \)
\end{itemize}

which is BHO, the Bachmann-Howard ordinal.

Using RHS0 notation, it corresponds to :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( R_1 H suc\ 0 = \varepsilon_0 \)
\item \( R_2 R_1 H suc\ 0 = \zeta_0 \)
\item \( R_3 R_2 R_1 H suc\ 0 = \Gamma_0 \)
\item \( R_4 R_3 R_2 R_1 H suc\ 0 = LVO \)
\item \( R_5 R_4 R_3 R_2 R_1 H suc\ 0 \)
\item \( \ldots \)
\end{itemize}

which can be written \( R_{\omega \ldots 1} H suc\ 0 \) in RHS0 notation.

And we just saw that the RHS0 notation goes much further.

So, using the correspondence, we can entend the Simmons notation in a similar way the RHS0 extends beyond BHO.

Using similar notations, we can write \( [\omega \ldots 0] Next \omega \) for the BHO. 

Then we can go on :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( R_{\omega \ldots 1} H suc\ 0 = R_{\omega \ldots 2} R_1 H suc\ 0 = [\omega \ldots 0] Next \omega \)

\item \( R_2 R_{\omega \ldots 1} H suc\ 0 = R_2 (R_{\omega \ldots 2} R_1) H suc\ 0 = [0] ([\omega \ldots 0] Next) \omega \)

\item \( R_3 R_2 R_{\omega \ldots 1} H suc\ 0 = R_3 R_2 (R_{\omega \ldots 2} R_1) H suc\ 0 = [1] [0] ([\omega \ldots 0] Next) \omega \)

\item \( R_{\omega \cdot 2 \ldots 1} H suc\ 0 = R_{\omega \ldots 2} R_{\omega \ldots 1} H suc\ 0 = R_{\omega \ldots 2} (R_{\omega \ldots 2} R_1) H suc\ 0 = [\omega \ldots 0] ([\omega \ldots 0] Next) \omega \)

\item \( H R_{\omega \ldots 2} R_1 H suc\ 0 = [\omega \ldots 0]^\omega Next\ \omega \)

\item \( R_1 H R_{\omega \ldots 2} R_1 H suc\ 0 = [\omega \ldots 0]^{\varepsilon_0} Next\ \omega \)

\item \( R_3 R_{\omega \ldots 2} R_1 H suc\ 0 = Fix (\alpha \mapsto [\omega \ldots 0]^\alpha Next\ \omega) \omega = [1] [\omega \ldots 0] Next\ \omega = [\omega+1 \ldots 0] Next\ \omega \)

\item \( R_{\omega \cdot 2 + 1 \ldots 1} H suc\ 0 \)

\( = R_3 R_{\omega \ldots 2} R_{\omega \ldots 1} H suc\ 0 \)

\( = R_3 R_{\omega \ldots 2} (R_{\omega \ldots 2} R_1) H suc\ 0 \)

\( = [1] [\omega \ldots 0] ([\omega \ldots 0] Next) \omega \) 

\( = Fix (\alpha \mapsto [\omega \ldots 0]^\alpha ([\omega \ldots 0] Next) \omega) \omega \)

\( = Fix (\alpha \mapsto [\omega \ldots 0]^\alpha Next \omega) \omega \) (absorbsion of \( [\omega \ldots 0] \)) 

\( = [1] [\omega \ldots 0] Next\ \omega \) 

\( = [\omega+1 \ldots 0] Next\ \omega \)



\item \( \ldots \)

\end{itemize}

\section{Ordinal trees}

Ordinal can also be represented by trees. An example of such a representation is given in :

http://www.madore.org/~david/math/ordtrees.pdf .

In this representation, the order on finite rooted trees is recursively defined as follows : \( A < B \) if and only if one of this conditions is true :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item There is some mmediate subtree B' of B such that \( A \leq B' \).
\item Every child A' of A satisfies \( A' < B \) and the list of children of A is lexicographically less than the list of children of B for the order \( < \) with the leftmost children having the most weight.
\end{itemize}

Trees can also be represented by parenthesized expressions, for example :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item 0 = ()
\item 1 = (())
\item 2 = ((()))
\item \( \omega = (()()) \)
\item \( \omega+1 = ((()())) \)
\item \( \omega \cdot 2 = (()(())) \)
\item \( \omega \cdot 3 = (()((()))) \)
\item \( \omega^2 = (()(()())) \)
\item \( \omega^2+\omega = (()((()()))) \)
\item \( \omega^2 \cdot 2 = (()(()(()))) \)
\item \( \omega^2 \cdot 3 = (()(()((())))) \)
\item \( \omega^3 = (()(()(()()))) \)
\item \( \omega^\omega = ((())()) \)
\item \( \omega^{\omega^\omega} = ((()())()) \)
\item \( \epsilon_0 = \varphi_1(0) = (()()()) \)
\item \( \varepsilon_1 = \varphi_1(1) = (()()(())) \)
\item \( \varepsilon_2 = \varphi_1(2) = (()()(())) \)
\item \( \varepsilon_\omega = \varphi_1(\omega) = (()()(()())) \)
\item \( \varepsilon_{\varepsilon_0} = (()()(()()())) \) 
\item \( \zeta_0 = \varphi_2(0) = (()(())()) \)
\item \( \Gamma_0 = \varphi(1,0,0) = ((())()()) \)
\item \( \varphi(1,0,0,0) = (()()()()) \)
\item \( \ldots \)
\end{itemize}

Another example of tree representation is Takeuti ordinal diagrams, see :

 https://projecteuclid.org/download/pdf\_1/euclid.jmsj/1261153819 .


\section{An application of ordinals : defining large numbers using the Fast Growing Hierarchy}

The Fast Growing Hierarchy is a family of fast growing functions indexed by ordinals \( f_\alpha \) which, when applied to a number, give a much greater one, allowing to produce huge numbers.

It is traditionally defined as follows :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( f_0(n) = n+1 \)
\item \( f_{\alpha+1}(n) = {f_\alpha}^n(n) \)
\item \( f_\alpha(n) = f_{\alpha[n]}(n) \) if \( \alpha \) is a limit ordinal, where \( \alpha[n] \) denotes the n-th element of the fundamental sequence assigned to \( \alpha \).
\end{itemize}

The first functions of this hierarchy are :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( f_0(n) = n+1 = suc\ n \)
\item \( f_1(n) = suc^n(n) = n \cdot 2 \)
\item \( f_2(n) = [\bullet \cdot 2]^n(n) = n \cdot 2^n \)
\end{itemize}

But there is a problem with this definition, because the value of \( f_\alpha(n) \) depends of the fundamental sequence chosen for \( \alpha \) if it is a limit ordinal. Let us consider for example \( f_\omega(2) \). If we take the canonical fundamental sequence \( \omega[n] = n \), then we get \( f_\omega(2) = f_{\omega[2]}(2) = f_2(2) = 2 \cdot 2^2 = 8 \). But \( \omega[n] \) = n+1 is also a valid fundamental sequence for \( \omega \). Taking this fundamnetal sequence gives \( f_\omega(2) = f_{\omega[2]}(2) = f_3(2) = [\bullet \cdot 2^\bullet]^2(2) = 2048 \).

In fact, the notation \( \alpha[n] \) is not rigorous because there are several possible fundamental sequences for a given ordinal \( \alpha \). Instead of writing \( \alpha[n] = F(n) \) it would be more rigorous to write \( \alpha = lim F \). One cannot write \( \omega[n] = n \) and \( \omega[n] = n+1 \) because this implies n = n+1, but there is no problem writing \( \omega = lim (n \mapsto n) = lim (n \mapsto n+1) \).

So, if we want to define rigorously the Fast Growing Hierarchy, we need to index the functions not by ordinals but by something which look likes ordinals but which are considered as different if the fundamental sequences are differents. These mathematical objects originally due to Bachmann are called "tree ordinals" (do not confuse with "ordinal trees" previously seen). 


\section{Tree ordinals}

Definitions of tree ordinals can be found in :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item https://www.youtube.com/watch?v=RmuASZSO2s8\&t=9s\&index=41\&list=PL3A50BB9C34AB36B3
\item http://www.iam.unibe.ch/ltgpub/2011/fab11.pdf
\item Proof and system-reliability
\end{itemize}

A tree ordinal a belongs to the tree ordinal class \( \Omega_n (n \in \mathbb{N}) \) if either :
\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item a = 0
\item a = a' + 1 for some tree ordinal a' belonging to the tree ordinal class \( \Omega_n \)
\item a is a function from \( \Omega_k \) to \( \Omega_n \) for some \( k \in \mathbb{N} \) with \( k < n \). In this case, we will say that a is a limit tree ordinal.
\end{itemize}

Let us first consider \( \Omega_0 \). The third case cannot apply (\( k \in \mathbb{N} \) and \(k < 0 \)), so the definition of \( \Omega_0 \) is given by the first two cases, which correspond to the inductive definition of the natural numbers, so \( \Omega_0 \) may be identified to \( \mathbb{N} \) or \( \omega \).

Next, \( \Omega_1 \) also includes all natural numbers, and also functions that, to a natural number, associates an element of \( \Omega_1 \), or sequences of elements of \( \Omega_1 \). For example, the identity function a[k] = k is an element of \( \Omega_1 \) called \( \omega_0 \). The function b[k] = k+1 is also an element of \( \Omega_1 \), but these two tree ordinals are considered as different tree ordinals, because the functions or sequences are different, even if the associated ordinal (the ordinal which has the corresponding fundamental sequence) is the same for both, the ordinal \( \omega \). So \( \Omega_1 \) can be seen as the class of countable ordinals associated with the choice of a particular fundamental sequence for limit ordinals.

Then it goes on with \( \Omega_2 \) which includes \( \Omega_0, \Omega_1 \), and functions from \( \Omega_1 \) to \( \Omega_2 \), like for example \( \omega_1 \) defined by \( \omega_1(a) = a \) where \( a \in \Omega_1 \), and so on.

There is a correspondence between tree ordinals and ordinals : if we ignore the choice of a particular fundamental sequence of a tree ordinal, we get an ordinal. To any tree ordinal a, we can associate a corresponding ordinal \( \alpha = |a| \) obtained by ignoring the choice of particular fundamental sequences, and defined by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( |0| = 0 \)
\item \( |a+1| = |a|+1 \)
\item \( |a| = sup |a[b]| \) if a is a function from \( \Omega_k \) to \( \Omega_n \).
\end{itemize}

or equivalently

\( |a| = sup_{b<a} \lbrace |b|+1 \rbrace \)

\bigskip

We can define arithmetical operations on tree ordinals in a way similar to the previously seen definitions for ordinals, replacing lim(f) by f because the ordinal tree is identified with its fundamental sequence or function.

\bigskip

Using tree ordinals, we can define rigorously the Fast Growing Hierarchy \( f_a(n) \) where \( a \in \Omega_1 \) :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( f_0(n) = n+1 \)
\item \( f_{a+1}(n) = {f_a}^n(n) \)
\item \( f_a(n) = f_{a[n]}(n) \) if \( a \) is a limit tree ordinal, where \( a[n] \) denotes the result of the application of the function a to the integer n.
\end{itemize}

\section{Using tree ordinals to define ordinals}

Let us define a hierarchy of functions \( F_n(a,b) \) where \( n \in \mathbb{N}, a \in \Omega_{n+1} \) and \( b \in \Omega_n \), which is an extension of the Fast Growing Hierarchy : for n = 0, it corresponds to the Fast Growing Hierarchy : \( F_0(a,b) = f_a(b) \) with \( a \in \Omega_1 \) and \( b \in \Omega_0 = \mathbb{N} \), or :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( F_0(0,b) = b+1 \)
\item \( F_0(a+1,b) = [F_0(a,\bullet)]^b(b) \)
\item \( F_0(a,b) = F_0(a[b],b) \) if a is a limit tree ordinal
\end{itemize}

We generalize this definition for \( n > 0 \) :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( F_n(0,b) = b+1 \)
\item \( F_n(a+1,b) = [F_n(a,\bullet)]^b(b) \)
\item \( (F_n(a,b))[c] = F_n(a[c],b) \) if a is a function from \( \Omega_k \) to \( \Omega_{n+1} \) with \( k < n \)
\item \( (F_n(a,b)) = F_n(a[b],b) \) if a is a function from \( \Omega_n \) to \( \Omega_{n+1} \)
\end{itemize}

where the exponentiation of a function to a tree ordinal power is defined by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( f^0(a) = a \)
\item \( f^{b+1} = f(f^b(a)) \)
\item \( (f^b(a))[c] = f^{b[c]}(a) \) if b is a limit tree ordinal
\end{itemize}

This hierarchy of functions \( F_n(a,b) \) may be used to define ordinals as follows :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( F_1(0,b) = b+1 = suc(b) \)
\item \( F_1(1,b) = suc^b(b) = b+b = b \cdot 2\)
\item \( F_1(2,b) = b \cdot 2^b \)
\item \( |F_1(2,\omega_0)| = |\omega_0 \cdot 2^{\omega_0}| = \omega \cdot 2^\omega = \omega \cdot \omega = \omega^2 \)
\item \( |F_1(2,F_1(2,\omega_0)) = |(\omega_0 \cdot 2^{\omega_0}) \cdot 2^{\omega_0 \cdot 2^{\omega_0}}| = \omega^2 \cdot 2^{\omega^2} = \omega^2 \cdot 2^{\omega \cdot \omega} = \omega^2 \cdot (2^\omega)^\omega = \omega^2 \cdot \omega^\omega = \omega^{2+\omega} = \omega^\omega \) 
\item \( |F_1(3,\omega_0)| = |[F_1(2,\bullet)]^{\omega_0}(\omega_0)| = sup |[F_1(2,\bullet)]^{\omega_0[k]}(\omega_0)| = sup |[F_1(2,\bullet)]^k(\omega_0)| = sup (\omega^{\vdots^\omega}) = \varepsilon_0 \)
\item \( |F_1(2,F_1(3,\omega_0))| = \varepsilon_0 \cdot 2^{\varepsilon_0} = {\varepsilon_0}^2 \)
\item \( |[F_1(2,\bullet)]^2(F_1(3,\omega_0))| = {\varepsilon_0}^2 \cdot 2^{{\varepsilon_0}^2} = {\varepsilon_0}^{\varepsilon_0} \)
\item \( |F_1(3,F_1(3,\omega_0))| = sup \lbrace {\varepsilon_0}^{\vdots^{\varepsilon_0}} \rbrace = \varepsilon_1 \)
\item \( |F_1(4,\omega_0)| = \zeta_0 = \varphi(2,0) = \varphi'(1,1) \)
\item \( |F_1(3,F_1(4,\omega_0))| = sup \lbrace {\zeta_0}^{\vdots^{\zeta_0}} \rbrace = \varepsilon_{\zeta_0+1} \)
\item \( |F_1(4,F_1(4,\omega_0))| = sup \lbrace \varepsilon_{\ddots_{\varepsilon_{\zeta_0+1}}} \rbrace = \zeta_1 = \varphi(2,1) = \varphi'(1,2) \)
\item \( |F_1(5,\omega_0)| = \eta_0 = \varphi(3,0) = \varphi'(2,1) \)
\item \( |F_1(\omega_0,\omega_0)| = \varphi_\omega(0) \)
\item \( |F_1(\omega_1+1,\omega_0)| = \Gamma_0 \)
\item \( |F_1(F_2(3,\omega_1),\omega_0)| = BHO \)

\item \( \ldots \)
\end{itemize}


\section{Ordinal collapsing functions}

\begin{comment}
Remember that collapsing consists in using uncountable ordinals to define countable ordinals. 

We already saw how collapsing can be used to define ordinals, for example :
\end{comment}

Ordinal collapsing functions are functions that use uncountable ordinals to define countable ordinals.

There are different ways to define ordinal collapsing functions. Some constructions we have already seen can be considered as some kind of ordinal collapsing functions, for example :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \varphi(\alpha,0,\beta,\gamma) = \varphi(\gamma_0,\beta_1,\alpha_3) = (\xi \mapsto \omega^\xi) \begin{pmatrix} \gamma & \beta & \alpha \\ 0 & 1 & 3 \end{pmatrix} = \varphi(\Omega^3 \cdot \alpha + \Omega \cdot \beta + \gamma) \). 

\item \( \varphi_{\alpha,\beta,\gamma}(\delta) = \varphi_{\Omega^2 \cdot \alpha + \Omega \cdot \beta + \gamma}(\delta) \)

\item \( \varphi(\gamma,\beta,\alpha) = \varphi_{\gamma,\beta}(\alpha) = \varphi_{\Omega \cdot \gamma + \beta}(\alpha) = \varphi(\Omega \cdot \gamma + \beta, \alpha) = \varphi(1 + \Omega \cdot \gamma + \beta, \alpha) = ([0]^{\Omega \cdot \gamma + \beta} Next)^{1+\alpha} 0 = ([0]^\beta (([0]^\Omega)^\gamma Next))^{1+\alpha} 0 = ([0]^\beta (([1] [0])^\gamma Next))^{1+\alpha} 0 \) with \( [0]^\Omega = [1] [0] \)

\item \( \varphi(\delta,\gamma,\beta,\alpha) = \varphi_{\delta,\gamma,\beta}(\alpha) = \varphi_{\Omega^2 \cdot \delta + \Omega \cdot \gamma + \beta}(\alpha) = \varphi(\Omega^2 \cdot \delta + \Omega \cdot \gamma + \beta, \alpha) = \varphi(1 + \Omega^2 \cdot \delta + \Omega \cdot \gamma + \beta, \alpha) = ([0]^{\Omega^2 \cdot \delta + \Omega \cdot \gamma + \beta} Next)^{1+\alpha} 0 = ([0]^\beta (([0]^\Omega)^\gamma (([0]^{\Omega^2})^\delta Next)))^{1+\alpha} 0 = ([0]^\beta (([1] [0])^\gamma (([1]^2 [0])^\delta Next)))^{1+\alpha} 0 \) with \( [0]^\Omega = [1] [0] \) and \( [0]^{\Omega^2} = ([0]^\Omega)^\Omega = ([1] [0])^\Omega = [1] ([1] [0]) = [1]^2 [0] \)

\item \( \varphi(1_\Omega) = [1]^\Omega [0] Next\ 0 \). 

\item \( LVO = \varphi_{\Omega^\Omega}(0) = [0]^{\Omega^\Omega} Next\ 0 = [1]^\Omega [0] Next\ 0 = [2] [1] [0] Next\ 0 \) with \( [1]^\Omega = [2] [1] \)

\item \( \Gamma_0 = \varphi'_{1,0}(1) = \varphi'_\Omega(1) \)
\item Ackermann ordinal = \( \varphi'_{1,0,0}(1) = \varphi'_{\Omega^2}(1) \)
\item \( SVO = \varphi'_{\Omega^\omega}(1) \)

\item \( LVO = \varphi'_{\Omega^\Omega}(1) \)
\item \( \varphi'_{\Omega^{\Omega^\Omega}}(1) \)

\item \( \Gamma_0 = \varphi_{1,0}(0) = \varphi'_{1,0}(1) = \varphi_\Omega(0) = \varphi'_\Omega(1) = [0]^\Omega Next\ \omega = [1] [0] Next\ \omega = (R_2)^\Omega R_1 H suc\ 0 = R_3 R_2 R_1 H suc\ 0 \) 

\item \( (R_2)^\Omega = R_3 R_2 \)

\item \( [0]^\Omega = [1] [0] \).

\end{itemize}

\begin{comment}

We will now see another way to use collapsing : ordinal collapsing functions.

An ordinal collapsing function is a function that, when applied to an uncountable ordinal, gives a countable ordinal.

\end{comment}

\bigskip

There are different ways to define ordinal collapsing functions.

First, we can consider an ordinal collapsing function as an extension of a given ordinal function (a function that, to any ordinal, associates an ordinal), this function being extended by adding a symbol \( \Omega \) which can be seen as a fixed point constructor.

Suppose we define a function \( \psi \), for example \( \psi(\alpha) = \omega^\alpha \).

This function has the following property : 

\[ \psi(\alpha+\beta) = \omega^{\alpha+\beta} = \omega^\alpha \cdot \omega^\beta = \psi(\alpha) \cdot \omega^\beta \]

With this function, we can define \( \psi(0) = \omega^0 = 1, \psi(1) = \omega^1 = \omega, \psi(\omega) = \omega^\omega, \psi(\omega^\omega) = \omega^{\omega^\omega}, ... \). The limit of this sequence is  \( \varepsilon_0 \). 

We would like to reach this limit and go beyond. For this, we will introduce a symbol \( \Omega \) which generates fixed points. 

 For example, \( \psi(\Omega) = sup \lbrace 0, \psi(0), \psi(\psi(0)), \ldots \rbrace \). So we have \( \psi(\Omega) = \varepsilon_0 \). We can then go further with \( \psi(\Omega+1) = \varepsilon_0 \cdot \omega \) and more generally \( \psi(\Omega+\alpha) = \psi(\Omega) \cdot \omega^\alpha \). Then we have \( \psi(\Omega \cdot 2) = \psi(\Omega + \Omega) = sup \lbrace 0, \psi(\Omega+0) = \varepsilon_0, \psi(\Omega+\varepsilon_0) = \varepsilon_0 \cdot \omega^\varepsilon_0 = \varepsilon_0 \cdot \varepsilon_0 = {\varepsilon_0}^2, \psi(\Omega+{\varepsilon_0}^2) = \varepsilon_0 \cdot \omega^{{\varepsilon_0}^2} = \omega^{\varepsilon_0+{\varepsilon_0}^2} = \omega^{{\varepsilon_0}^2}, \psi(\Omega+\omega^{{\varepsilon_0}^2}) = \omega^{\omega^{{\varepsilon_0}^2}}, \ldots \rbrace = \varepsilon_1 \), and so on.

Intuitively, an expression consisting in \( \psi \) applied to something which contains \( \Omega \) means something like the least fixed point of the function whose variable takes place of the last \( \Omega \) of the expression and whose result is the whole expression, with some conditions concerning the form of the expression, for example \( \psi(\Omega \cdot 2) \) must be replaced by \( \psi(\Omega+\Omega) \). This may seem a little confuse at this point, but we will define it more rigorously later using the notion of limit ordinals. 

For more explanations about this approach, see also David Madore's "Petit guide bordélique de quelques ordinaux intéressants" (in french) :

http://www.madore.org/~david/weblog/d.2017-08-31.2462.ordinaux-interessants.html


\bigskip

The most classical way to define an ordinal collapsing function is to define a set of ordinals C(a) or C(a,b) where a and b are ordinals, which contains all ordinals that can be built using an initial set of ordinals and some operations or functions, and then define \( \psi(a) \) or \( \psi(a,b) \) as the smallest ordinal that is not in C(a) or C(a,b), or the least ordinal that is greater than than all countable ordinals of C(a) or C(a,b).

Another approach consists in defining an ordinal collapsing function recursively, by defining its value for 0, for the successor of an ordinal, and for different kinds of limit ordinals.

\bigskip

About ordinal collapsing functions, see also the following series of videon on YouTube :

Extremely large numbers :

https://www.youtube.com/playlist?list=PLUZ0A4xAf7nkaYHtnqVDbHnrXzVAOxYYC

Ridiculously huge numbers :

https://www.youtube.com/playlist?list=PL3A50BB9C34AB36B3

\bigskip

Ordinal collapsing functions permit to go beyond the limit of a notation.
Let us consider, for example, the very limited notation based on the ordinal 0 and the function suc.
With this notation, we can write 0, suc 0 = 1, suc (suc 0) = 2, ... and more generally all ordinals less than \( \omega \).
So the limit of this notation (the least ordinal that cannot be written with this notation) is \( \omega \).

\begin{comment}
Then we can go beyond this limit by introducing \( \psi(0) \) which is defined as the limit of the initial notation : \( \psi(0) = \omega \).
Then we consider the notation based on 0, suc and \( \psi(0) = \omega \). 
\end{comment}

To go beyond this limit, we can then define a new notation based on the ordinal 0, the function suc, and the limit of the initial notation, \( \omega \), which we will write \( \psi(0) \) in our new notation.
With this notation we can write 0, suc 0 = 1, suc (suc 0) = 2, \( \psi(0) = \omega, suc(\psi(0)) = \omega+1, \ldots \). The limit of this new notation is \( \omega+\omega = \omega \cdot 2 \), which we will write \( \psi(1) \).

\begin{comment}
Then we define \( \psi(1) \) as the limit of this new notation : \( \psi(1) = \omega \cdot 2 \) and a new notation based on 0, suc, \( \psi(0), \psi(1) \) and so on, with \( \psi(n+1) = \psi(n)+\omega \) for any natural number n.
\end{comment}

Then we define a new notation based on 0, suc, \( \psi(0) = \omega \) and \( \psi(1) = \omega \cdot 2 \), and so on, with, for any natural number n, \( \psi(n+1) = \psi(n)+\omega \), and \( \psi(n) = \omega \cdot (1+n) \).

We can define canonically \( \psi(\omega) \) as the limit of \( \psi(0), \psi(1), \psi(2), \ldots \), and more generally \( \psi(lim h) \) as \( lim (\psi \circ h) \), and generalize the previous formulas to any ordinal \( \alpha : \psi(\alpha+1) = \psi(\alpha)+\omega \) and \( \psi(\alpha) = \omega \cdot (1+\alpha) \).

\begin{comment}
With these definitions, we have the general formula \( \psi(\alpha) = \omega \cdot (1+\alpha) \).
\end{comment}

Then we can define a notation based on the ordinal 0 and the functions suc and \( \psi \).
With this notation, we can write \( 0, \psi(0) = \omega, \psi(\psi(0)) = \psi(\omega) = \omega \cdot (1+\omega) = \omega \cdot \omega = \omega^2, \psi(\omega^2) = \omega^3, \ldots \). The limit of this notation is \( \omega^\omega \). 

We can go beyond this limit with collapsing, by introducing an ordinal \( \Omega \) which may be any ordinal greater than all the ordinals we want to write with our notation (countable ordinals). The simplest choice is \( \Omega = \omega_1 \), the least uncountable ordinal. 
We define \( \psi(\Omega) \) as the limit of \( 0, \psi(0), \psi(\psi(0)), \ldots = lim (n \mapsto \psi^n(0)) \).
\begin{comment}
, and more generally \( \psi(Lim_1 h) = lim (n \mapsto (\psi \circ h)^n(0))) \).
\end{comment}

Note that,  according to its definition, \( \psi(\Omega) \) is the least fixed point of \( \psi \), so we have \( \psi(\psi(\Omega)) = \psi(\Omega) \).

\( \Omega \) can be defined as \( Lim_1 I \), the limit with cofinality \( \omega_1 \) of the identity function, so we have \( \psi(\Omega) = lim (n \mapsto \psi^n(0)) = lim (n \mapsto (\psi \circ I)^n(0)) \).
We can generalize this formula for any function h :
\( \psi(Lim_1 h) = lim (n \mapsto (\psi \circ h)^n(0))) \).

With all these definitions, the complete definition of our notation becomes :


\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi(0) = \omega  \)

\item \( \psi(suc\ \alpha) = \psi(\alpha+1) = \psi(\alpha) + \omega \) 

\item \( \psi(lim\ g) = lim (n \mapsto \psi(g(n))) = lim(\psi \circ g) \)  
 or with fundamental sequence notation : \( \psi(\alpha)[n] = \psi(\alpha[n]) \)

\item \( \psi(Lim_1 h) = lim (n \mapsto (\psi \circ h)^n(0)) \) 

\end{itemize}


\bigskip

We can define other ordinal collapsing functions corresponding to other values of \( \psi(0) \) and/or other formulas for \( psi(suc\ \alpha) \).


\subsection{Recursive approach}

\begin{comment}

We can define a family of ordinal collapsing functions \( \psi \) by 

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item The value of \( \psi(0) \) (a given ordinal, for example 1)

\item \( \psi(\alpha+1) = f(\psi(\alpha)) \) for some function f that needs to be specified

\item \( \psi(lim g) = lim (n \mapsto \psi(g(n)) \)

\item \( \psi(h(\Omega)) = lim (n \mapsto (\psi \circ h)^n(\zeta) \) with \( \zeta = 0, 1 \) or \( \psi(0) \) for example 

\end{itemize}

The choice of \( \zeta = 0, 1 \) or \( \psi(0) \) is not very important since it does not change the value of the limit. Traditionaly, \( \psi(0) \) is generally chosen, but 0 or 1 seems simpler to me.

Note that as a particular case of the fourth rule, when h is the identity function, we have \( \psi(\Omega) = lim (n \mapsto \psi^n(\zeta) \) which is the least fixed point of \( \psi \), so we have \( \psi(\psi(\Omega)) = \psi(\Omega) \).

\bigskip

The third rule may also be written with fundamental sequences :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi(\alpha)[\xi] = \psi(\alpha[\xi]) \)

\end{itemize}

The fourth rule defines \( \psi \) for the case when it collapses an uncountable ordinal, in such a way that \( \psi(h(\Omega)) \), for h correctly defined, is the least fixed point of \( \psi \circ h \), which can be written for example \( sup \lbrace 1, \psi(h(1)), \psi(h(\psi(h(1)))), \ldots \rbrace \)  as we previously saw. 

(In RHS0 notation, if we write \( \Omega = H_1 suc\ 0 \), this gives : \( \psi (H_1 x y z_1 \ldots z_n) = H [\psi([suc \rightarrow x, 0 \rightarrow y] \bullet z_1 \ldots z_n)] (suc\ 0) \).)

In RHS0 notation, \( \Omega \) is written \( H_1 suc\ 0 \) and the least fixed point of \( \psi \circ h \) can be written \( H (\psi \circ h) \zeta \) (with \( \zeta \) = 0 or 1 for example) \( = H [\psi(h(\bullet))] \zeta \).

If h is defined by \( h(\alpha) = [suc \rightarrow x, 0 \rightarrow y] \alpha z_1 \ldots z_n \), then whe have \( h(\Omega) = [suc \rightarrow x, 0 \rightarrow y] \Omega z_1 \ldots z_n = [suc \rightarrow x, 0 \rightarrow y] (H_1 suc\ 0) z_1 \ldots z_n = H_1 x y z_1 \ldots z_n \), and \( H [\psi(h(\bullet))] \zeta = H [\psi([suc \rightarrow x, 0 \rightarrow y] \bullet z_1 \ldots z_n)] \zeta \), so we have \( \psi(h(\Omega)) = \psi(H_1 x y z_1 \ldots z_n) = H [\psi([suc \rightarrow x, 0 \rightarrow y] \bullet z_1 \ldots z_n)] \zeta \) with \( \zeta \) = 0 or 1 for example.

So the fourth rule may be replaced for example by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi (H_1 x y z_1 \ldots z_n) = H [\psi([suc \rightarrow x, 0 \rightarrow y] \bullet z_1 \ldots z_n)] 0 \)

\end{itemize}


If \( h(\alpha) = \alpha \), then \( H(\Omega) = \Omega = H_1 suc\ 0, x = suc, y = 0, n = 0, \psi(\Omega) = \psi(H_1 suc\ 0) = H [\psi(suc \rightarrow suc, 0 \rightarrow 0] \bullet)] 0 = H \psi 0 = sup \lbrace 0, \psi(0), \psi(\psi(0)), \ldots \rbrace \).

If \( h(\alpha) = \Omega+\alpha \), then \( h(\Omega) = \Omega+\Omega = \Omega \cdot 2 = H_1 suc (H_1 suc\ 0), x = suc, y = H_1 suc\ 0, n = 0, \psi(h(\Omega)) = \psi(\Omega+\Omega) = \psi(\Omega \cdot 2) = \psi(H_1 suc (H_1 suc\ 0)) = H [\psi([suc \rightarrow suc, 0 \rightarrow H_1 suc\ 0] \bullet)] 0 = sup \lbrace 0, \psi([suc \rightarrow suc, 0 \rightarrow H_1 suc\ 0] 0) = \psi(H_1 suc\ 0) = psi(\Omega),  \psi([suc \rightarrow suc, 0 \rightarrow H_1 suc\ 0] (\psi(\Omega))) = \psi(\Omega+\psi(\Omega)), \ldots \rbrace \).

\bigskip

Concerning the values of \( \psi \) between \( \psi(\Omega) \) and \( \Omega \) we have a choice between two possibilities : 

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item Apply the general rules, which seems the simplest to me. In this case, the rule \( \psi(\alpha+1) = f(\psi(\alpha)) \) gives for example \( \psi(\psi(\Omega)+1) = f(\psi(\psi(\Omega))) = f(\psi(\Omega)) \).

\item Consider that \( \psi(\alpha) = \psi(\Omega) \) for any \( \alpha \) between \( \psi(\Omega) \) and \( \Omega \), which seems to be more often chosen, perhaps because it keeps the monotony of \( \psi \). In this case, we have for example \( \psi(\psi(\Omega)+1) = \psi(\Omega) \), and the rule "\( \psi(\alpha+1) = f(\psi(\alpha)) \)" is not true for any \( \alpha \) and must be restricted by adding some condition, for example something like "In \(\psi(g(\psi(\alpha))) \) we must have \( \alpha < g(\psi(\alpha)) \)". This choice permits to get same values as "classically" defined ordinal collapsing functions.

\end{itemize}

To define notations based on these functions, we also need a way to express the ordinals to which they are applied. This can be done by introducing in the notation the operations which permit to express them, like addition, multiplication, exponentiation. This can also be done by introducing, like we have seen for Madore's \( \psi \), a function \( \psi_1 \) which generates these expressions, defined in a similar way to \( \psi \), but starting with greater values, for example with \( \psi_1(0) = \Omega \) or \( \psi_1(0) = \varepsilon_{\Omega+1} \) :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item The value of \( \psi_1(0) \) (a given ordinal, for example \( \Omega \) or \( \varepsilon_{\Omega+1} \))

\item \( \psi_1(\alpha+1) = f(\psi_1(\alpha)) \) 

\item \( \psi_1(\alpha)[\xi] = \psi_1(\alpha[\xi]) \) or \( \psi(lim_\beta g) = lim_\beta (\xi \mapsto \psi(g(\xi)) \) with \( \beta = \omega \) or \( \beta = \Omega \).

\item \( \psi_1(h(\Omega_1)) = lim (n \mapsto (\psi_1 \circ h)^n(\zeta) \) with \( \zeta = 0, 1 \) or \( \psi_1(0) \) for example 

\end{itemize}

With RHS0 notation, \( \Omega_2 \) is written \( H_2 suc\ 0 \) and the fourth rule may be written :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi (H_2 x y z_1 \ldots z_n) = H [\psi_1([suc \rightarrow x, 0 \rightarrow y] \bullet z_1 \ldots z_n)] 0 \)

\end{itemize}

We can go on like this with \( \psi_2, \Omega_3 = H_3 suc\ 0, \psi_3, \Omega_4 = H_4 suc\ 0, \ldots \).

See also https://www.youtube.com/playlist?list=PLUZ0A4xAf7nkaYHtnqVDbHnrXzVAOxYYC video number 22.

\bigskip



This approach is explained very clearly in https://www.youtube.com/playlist?list=PL3A50BB9C34AB36B3 (Part 29).

\bigskip

\line(1,0){500}

\bigskip

\end{comment}

We will use the uncountable ordinal \( \Omega = \omega_1 = Lim_1 I = H_1 suc\ 0 \) to define countable ordinals.

We can define a family of ordinal collapsing functions \( \psi \) parametrized by \( \psi(0) \) and f, where \( \psi(0) \) is a given ordinal, and f is a function that, given an ordinal, gives an ordinal, by : 

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item The value of \( \psi(0) \), a given ordinal, for example 1

\item \( \psi(suc\ \alpha) = \psi(\alpha+1) = f(\psi(\alpha)) \) 

\item \( \psi(lim\ g) = lim (n \mapsto \psi(g(n))) = lim(\psi \circ g) \)  
 or with fundamental sequence notation : \( \psi(\alpha)[n] = \psi(\alpha[n]) \)

\item \( \psi(Lim_1 h) = lim (n \mapsto (\psi \circ h)^n(\zeta)) = lim [ (\psi \circ h)^\bullet (\zeta) ] \) with \( \zeta = 0 \) or 1 or \( \psi_n(0) \) for example.

\end{itemize}

The choice of \( \zeta = 0, 1 \) or \( \psi(0) \) is not very important since it does not change the value of the limit. Traditionaly, \( \psi(0) \) is generally chosen, but 0 or 1 seems simpler to me.

Note that as a particular case of the fourth rule, when h is the identity function, we have \( \psi(Lim_1 I) = \psi(\Omega) = lim [ {\psi}^\bullet 0 ] = sup \lbrace 0, \psi(0), \psi(\psi(0)), \ldots \rbrace \) which is the least fixed point of \( \psi \), so we have \( \psi(\psi(\Omega)) = \psi(\Omega) \).

\bigskip

Concerning the values of \( \psi \) between \( \psi(\Omega) \) and \( \Omega \) we have a choice between two possibilities : 

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item Apply the general rules, which seems the simplest to me. In this case, the rule \( \psi(\alpha+1) = f(\psi(\alpha)) \) gives for example \( \psi(\psi(\Omega)+1) = f(\psi(\psi(\Omega))) = f(\psi(\Omega)) \).

\item Consider that \( \psi(\alpha) = \psi(\Omega) \) for any \( \alpha \) between \( \psi(\Omega) \) and \( \Omega \), which seems to be more often chosen, perhaps because it keeps the monotony of \( \psi \). In this case, we have for example \( \psi(\psi(\Omega)+1) = \psi(\Omega) \), and the rule "\( \psi(\alpha+1) = f(\psi(\alpha)) \)" is not true for any \( \alpha \) and must be restricted by adding some condition, for example something like "In \(\psi(g(\psi(\alpha))) \) we must have \( \alpha < g(\psi(\alpha)) \)". This choice permits to get same values as "classically" defined ordinal collapsing functions.

\end{itemize}

\begin{comment}
Concerning the values of \( \psi \) between \( \psi(\Omega) \) and \( \Omega \), some authors consider that it is \( \psi(\Omega) \), which implies that the rule \( \psi(suc\ \alpha) = f(\psi(\alpha)) \) is not true for any \( \alpha \) and must be restricted by adding some condition like "In \( \psi(g(\alpha)) \), we must have \( \alpha < g(\psi(\alpha)) \), but it seems simpler to me to consider that the rule \( \psi(suc\ \alpha) = f(\psi(\alpha)) \) is always true, which implies for example that \( \psi(suc \psi(\Omega)) = f(\psi(\psi(\Omega)) = f(\psi(\Omega)) \).
\end{comment}

\bigskip

With RHS0 notation, \( \Omega = \omega_1 = H_1 suc\ 0 \) and the least fixed point of a function f is H f 0.

We also have :

\( \psi (H_1 x y z_1 \ldots z_p) \)

\( = \psi (Lim_1 [x^\bullet y z_1 \ldots z_p]) \)

\( = lim [(\psi \circ [x^\bullet y z_1 \ldots z_p])^\bullet 0] \)

\( = lim [[\psi (x^\bullet y z_1 \ldots z_p)]^\bullet 0] \)

\( = H [\psi (x^\bullet y z_1 \ldots z_p)] 0 \)

\( = H [\psi ([suc \rightarrow x, 0 \rightarrow y] \bullet z_1 \ldots z_p)] 0 \) 

\bigskip

Examples :

If \( h(\alpha) = \alpha \), then \( h(\Omega) = \Omega = H_1 suc\ 0, x = suc, y = 0, n = 0, \psi(\Omega) = \psi(H_1 suc\ 0) = H [\psi(suc \rightarrow suc, 0 \rightarrow 0] \bullet)] 0 = H \psi 0 = sup \lbrace 0, \psi(0), \psi(\psi(0)), \ldots \rbrace \).

If \( h(\alpha) = \Omega+\alpha \), then \( h(\Omega) = \Omega+\Omega = \Omega \cdot 2 = H_1 suc (H_1 suc\ 0), x = suc, y = H_1 suc\ 0, n = 0, \psi(h(\Omega)) = \psi(\Omega+\Omega) = \psi(\Omega \cdot 2) = \psi(H_1 suc (H_1 suc\ 0)) = H [\psi([suc \rightarrow suc, 0 \rightarrow H_1 suc\ 0] \bullet)] 0 = sup \lbrace 0, \psi([suc \rightarrow suc, 0 \rightarrow H_1 suc\ 0] 0) = \psi(H_1 suc\ 0) = \psi(\Omega),  \psi([suc \rightarrow suc, 0 \rightarrow H_1 suc\ 0] (\psi(\Omega))) = \psi(\Omega+\psi(\Omega)), \ldots \rbrace \).

\bigskip

We will now examine what is the limit of the notation based on \( 0 \) and \( \psi \).

It is the limit of \( 0, \psi(0), \psi(\psi(0)), \ldots \), which is \( \psi(\Omega) \).

To go beyond this limit, we can either add \( \Omega \) to the basic symbols of our notation, which would then be based on \( 0, \Omega, \psi \).

Another possibility is to introduce a new function \( \psi_2 \) with \( \psi_2(0) = \Omega \).

\bigskip

\begin{comment}

\line(1,0){500}

\bigskip

The family of ordinal collapsing functions \( \psi \) can be extended to a family of hierarchies of ordinal collapsing functions \( \psi_n \). 

We will use uncountable ordinals \( \Omega = \Omega_1, \Omega_2, \Omega_3, \ldots \) to define countable ordinals. For more simplicity, we will take \( \Omega_k = \omega_k = Lim_k I = lim_{\omega_k} I =  H_k suc\ 0 \) in RHS0 notation, where I is the identity function \( I = [\bullet] \). We also have \( \Omega_0 = \omega_0 = \omega \).

This family of hierarchies of ordinal collapsing functions \( \psi_n (n \in \omega) \) is parametrized by the functions z and f, where z is a function that, given a natural number, gives an ordinal, and f is a function that, given an ordinal, gives an ordinal, and is defined by : 

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi_n(0) = z(n) \) 

\item \( \psi_n(suc\ \alpha) = f(\psi_n(\alpha)) \) 

\item \( \psi_n(Lim_k h) = Lim_k(\psi_n \circ h) \) if \( k < n \), 
 or with fundamental sequence notation : \( \psi_n(\alpha)[\eta] = \psi_n(\alpha[\eta]) \)

\item \( \psi_n(Lim_n h) = lim [ (\psi_n \circ h)^\bullet (\zeta) ] \) with \( \zeta = 0 \) or 1 or \( \psi_n(0) \) for example.

\end{itemize}

(We could also define \( \psi_\nu(\alpha) \) where \( \nu \) is an ordinal, provided that z is a function that, given an ordinal, gives an ordinal, and that we define \( Lim_\kappa \) for \( \kappa \) ordinal.)

We can see that for \( \psi_1 \) we get the same definition as the previous definition of \( \psi \).

The choice of \( \zeta = 0, 1 \) or \( \psi_n(0) \) is not very important since it does not change the value of the limit. Traditionaly, \( \psi_n(0) \) is generally chosen, but 0 or 1 seems simpler to me.

Note that as a particular case of the fourth rule, when h is the identity function, we have \( \psi_n(Lim_n I) = \psi_n(\Omega_n) = lim [ {\psi_n}^\bullet 0 ] = sup \lbrace 0, \psi_n(0), \psi_n(\psi_n(0)), \ldots \rbrace \) which is the least fixed point of \( \psi_n \), so we have \( \psi_n(\psi_n(\Omega_n)) = \psi_n(\Omega_n) \).

Concerning the values of \( \psi_n \) between \( \psi_n(\Omega_n) \) and \( \Omega_n \), some authors consider that it is \( \psi_n(\Omega_n) \), which implies that the rule \( \psi_n(suc\ \alpha) = f(\psi_n(\alpha)) \) is not true for any \( \alpha \) and must be restricted by adding some condition like "In \( \psi_n(g(\alpha)) \), we must have \( \alpha < g(\psi(\alpha)) \), but it seems simpler to me to consider that the rule \( \psi_n(suc\ \alpha) = f(\psi_n(\alpha)) \) is always true, which implies for example that \( \psi_n(suc \psi_n(\Omega_n)) = f(\psi_n(\psi_n(\Omega_n)) = f(\psi_n(\Omega_n)) \).

\bigskip

With RHS0 notation, \( \Omega_k = \omega_k = H_k suc\ 0 \) and the least fixed point of a function f is H f 0.

We also have :

\( \psi_n (H_n x y z_1 \ldots z_p) \)

\( = \psi_n (Lim_n [x^\bullet y z_1 \ldots z_p]) \)

\( = lim [(\psi_n \circ [x^\bullet y z_1 \ldots z_p])^\bullet 0] \)

\( = lim [[\psi_n (x^\bullet y z_1 \ldots z_p)]^\bullet 0] \)

\( = H [\psi_n (x^\bullet y z_1 \ldots z_p)] 0 \)

\( = H [\psi_n ([suc \rightarrow x, 0 \rightarrow y] \bullet z_1 \ldots z_p)] 0 \) 

\bigskip

Examples :

If \( h(\alpha) = \alpha \), then \( h(\Omega) = \Omega = H_1 suc\ 0, x = suc, y = 0, n = 0, \psi_1(\Omega) = \psi_1(H_1 suc\ 0) = H [\psi_1(suc \rightarrow suc, 0 \rightarrow 0] \bullet)] 0 = H \psi_1 0 = sup \lbrace 0, \psi_1(0), \psi_1(\psi_1(0)), \ldots \rbrace \).

If \( h(\alpha) = \Omega+\alpha \), then \( h(\Omega) = \Omega+\Omega = \Omega \cdot 2 = H_1 suc (H_1 suc\ 0), x = suc, y = H_1 suc\ 0, n = 0, \psi_1(h(\Omega)) = \psi_1(\Omega+\Omega) = \psi_1(\Omega \cdot 2) = \psi_1(H_1 suc (H_1 suc\ 0)) = H [\psi_1([suc \rightarrow suc, 0 \rightarrow H_1 suc\ 0] \bullet)] 0 = sup \lbrace 0, \psi_1([suc \rightarrow suc, 0 \rightarrow H_1 suc\ 0] 0) = \psi_1(H_1 suc\ 0) = \psi_1(\Omega),  \psi_1([suc \rightarrow suc, 0 \rightarrow H_1 suc\ 0] (\psi_1(\Omega))) = \psi_1(\Omega+\psi_1(\Omega)), \ldots \rbrace \).

\bigskip

I will also define a function \( \psi'_n(\alpha) \) that nests calls of \( \psi_k(\alpha) \) for successive values of k between 1 and n, for example \( \psi'_3(0) = \psi_1(\psi_2(\psi_3(0))) \). More generally, this function is defined by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi'_1(\alpha) = \psi_1(\alpha) \)

\item \( \psi'_{k+1}(\alpha) = \psi'_k(\psi_{k+1}(\alpha)) \)

\end{itemize}

We can generalize this function to transfinite indices, for example \( \psi'_\omega(0) = lim [ \psi'_\bullet(0) ] \).

\bigskip

Classically, other authors often call \( \psi_k \) the function that I call \( \psi_{k+1} \). This convention implies the slightly more complicated rules:


\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi_n(0) = z(n) \) 

\item \( \psi_n(suc\ \alpha) = f(\psi_n(\alpha)) \) 

\item \( \psi_n(Lim_k h) = Lim_k(\psi_n \circ h) \) if \( k \le n \), 
 or with fundamental sequence notation : \( \psi_n(\alpha)[\eta] = \psi_n(\alpha[\eta]) \)

\item \( \psi_n(Lim_{n+1} h) = lim [ (\psi_n \circ h)^\bullet (\zeta) ] \) with \( \zeta = 0 \) or 1 or \( \psi_n(0) \) for example.

\end{itemize}

(To simplify notation, \( \psi_1 \) will sometimes be written \( \psi \).)


\bigskip

\line(1,0){500}

\bigskip

\end{comment}

\begin{comment}

More generally, the family of ordinal collapsing functions \( \psi \) can be extended to a family of hierarchies of ordinal collapsing functions \( \psi_\nu \). 

We will use uncountable ordinals \( \Omega = \Omega_1, \Omega_2, \Omega_3, \ldots \) to define countable ordinals. For more simplicity, we will take \( \Omega_\kappa = \omega_\kappa = Lim_\kappa I = lim_{\omega_\kappa} I =  H_\kappa suc\ 0 \) in RHS0 notation, where I is the identity function \( I = [\bullet] \). We also have \( \Omega_0 = \omega_0 = \omega \).

This family of hierarchies of ordinal collapsing functions \( \psi_\nu \) where \( \nu \) is an ordinal, is parametrized by the functions z and f, where z and f are functions that, given an ordinal, gives an ordinal, and is defined by : 

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi_\nu(0) = z(\nu) \) ( for example : \( \psi_1(0) = 1; \psi_{2+\nu}(0) = \Omega_{1+\nu} = \omega_{1+\nu} \) )

\item \( \psi_\nu(suc\ \alpha) = f(\psi_\nu(\alpha)) \) 

\item \( \psi_\nu(Lim_\kappa h) = Lim_\kappa(\psi_\nu \circ h) \) if \( \kappa < \nu \), 
 or with fundamental sequence notation : \( \psi_\nu(\alpha)[\eta] = \psi_\nu(\alpha[\eta]) \)

\item \( \psi_\nu(Lim_\kappa h) = lim [ (\psi_\nu \circ h)^\bullet (\zeta) ] \) if \( \kappa \ge \nu \), with \( \zeta = 0 \) or 1 or \( \psi_\nu(0) \) for example.

\end{itemize}

We can see that for \( \psi_1 \) we get the same definition as the previous definition of \( \psi \).

The choice of \( \zeta = 0, 1 \) or \( \psi_\nu(0) \) is not very important since it does not change the value of the limit. Traditionaly, \( \psi_\nu(0) \) is generally chosen, but 0 or 1 seems simpler to me.

Note that as a particular case of the fourth rule, when h is the identity function, we have \( \psi_\nu(Lim_\nu I) = \psi_\nu(\Omega_\nu) = lim [ {\psi_\nu}^\bullet 0 ] = sup \lbrace 0, \psi_\nu(0), \psi_\nu(\psi_\nu(0)), \ldots \rbrace \) which is the least fixed point of \( \psi_\nu \), so we have \( \psi_\nu(\psi_\nu(\Omega_\nu)) = \psi_\nu(\Omega_\nu) \).

Concerning the values of \( \psi_\nu \) between \( \psi_\nu(\Omega_\nu) \) and \( \Omega_\nu \), some authors consider that it is \( \psi_\nu(\Omega_\nu) \), which implies that the rule \( \psi_\nu(suc\ \alpha) = f(\psi_\nu(\alpha)) \) is not true for any \( \alpha \) and must be restricted by adding some condition like "In \( \psi_\nu(g(\alpha)) \), we must have \( \alpha < g(\psi(\alpha)) \), but it seems simpler to me to consider that the rule \( \psi_\nu(suc\ \alpha) = f(\psi_\nu(\alpha)) \) is always true, which implies for example that \( \psi_\nu(suc \psi_\nu(\Omega_\nu)) = f(\psi_\nu(\psi_\nu(\Omega_\nu)) = f(\psi_\nu(\Omega_\nu)) \).

\bigskip

With RHS0 notation, \( \Omega_\kappa = \omega_\kappa = H_\kappa suc\ 0 \) and the least fixed point of a function f is H f 0.

We also have :

\( \psi_\nu (H_\nu x y z_1 \ldots z_p) \)

\( = \psi_\nu (Lim_\nu [x^\bullet y z_1 \ldots z_p]) \)

\( = lim [(\psi_\nu \circ [x^\bullet y z_1 \ldots z_p])^\bullet 0] \)

\( = lim [[\psi_\nu (x^\bullet y z_1 \ldots z_p)]^\bullet 0] \)

\( = H [\psi_\nu (x^\bullet y z_1 \ldots z_p)] 0 \)

\( = H [\psi_\nu ([suc \rightarrow x, 0 \rightarrow y] \bullet z_1 \ldots z_p)] 0 \) 

\bigskip

I will also define a function \( \psi^*_n(\alpha) \) where n is a natural number, that nests calls of \( \psi_k(\alpha) \) for successive values of k between 1 and n, for example \( \psi'_3(0) = \psi_1(\psi_2(\psi_3(0))) \). More generally, this function is defined by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi^*_1(\alpha) = \psi_1(\alpha) \)

\item \( \psi^*_{k+1}(\alpha) = \psi^*_k(\psi_{k+1}(\alpha)) \)

\item \( \psi^*_{Lim_\kappa h}(\alpha) = Lim_\kappa (\eta \mapsto \psi^*_{h(\eta)}(\alpha)) \)

\end{itemize}


\bigskip

Classically, other authors often call \( \psi_\kappa \) the function that I call \( \psi_{1+\kappa} \). This convention implies the slightly more complicated rules:

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi_\nu(0) = z(n) \) 

\item \( \psi_\nu(suc\ \alpha) = f(\psi_\nu(\alpha)) \) 

\item \( \psi_\nu(Lim_{\kappa+1} h) = Lim_{\kappa+1}(\psi_\nu \circ h) \) if \( \kappa < \nu \), 
 or with fundamental sequence notation : \( \psi_\nu(\alpha)[\eta] = \psi_\nu(\alpha[\eta]) \)

\item \( \psi_\nu(Lim_{\kappa+1} h) = lim [ (\psi_\nu \circ h)^\bullet (\zeta) ] \) if \(\kappa \ge \nu \), with \( \zeta = 0 \) or 1 or \( \psi_\nu(0) \) for example.

\end{itemize}

\end{comment}

\begin{comment}
To simplify notation, \( \psi_1 \) will sometimes be written \( \psi \).
\end{comment}

More generally, the family of ordinal collapsing functions \( \psi \) can be extended to a family of hierarchies of ordinal collapsing functions \( \psi_\nu \). 

We will use uncountable ordinals \( \Omega = \Omega_1, \Omega_2, \Omega_3, \ldots \) to define countable ordinals. For more simplicity, we will take \( \Omega_\kappa = \omega_\kappa = Lim_\kappa I = lim_{\omega_\kappa} I =  H_\kappa suc\ 0 \) in RHS0 notation, where I is the identity function \( I = [\bullet] \). We also have \( \Omega_0 = \omega_0 = \omega \).

This family of hierarchies of ordinal collapsing functions \( \psi_\nu \) where \( \nu \) is an ordinal, is parametrized by the functions z and f, where z and f are functions  that, given an ordinal, gives an ordinal, and is defined by : 

\begin{comment}
\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi_\nu(0) = z(\nu) \) ( for example : \( \psi_0(0) = 1; \psi_{1+\nu}(0) = \Omega_{1+\nu} = \omega_{1+\nu} \) 

\item \( \psi_\nu(suc\ \alpha) = f(\psi_\nu(\alpha)) \) 

\item \( \psi_\nu(Lim_\kappa h) = Lim_\kappa(\psi_\nu \circ h) \) if \( \kappa < 1+\nu \), 
 or with fundamental sequence notation : \( \psi_\nu(\alpha)[\eta] = \psi_\nu(\alpha[\eta]) \)

\item \( \psi_\nu(Lim_{1+\nu} h) = lim [ (\psi_\nu \circ h)^\bullet (\zeta) ] \) with \( \zeta = 0 \) or 1 or \( \psi_\nu(0) \) for example.

\end{itemize}
\end{comment}

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi_\nu(0) = z(\nu) \) ( for example : \( \psi_\nu(0) = \Omega_\nu \), or \( \psi_0(0) = 1; \psi_{1+\nu}(0) = \Omega_{1+\nu} = \omega_{1+\nu} \) 

\item \( \psi_\nu(suc\ \alpha) = f(\psi_\nu(\alpha)) \) 

\item \( \psi_\nu(lim\ h) = lim(\psi_\nu \circ h) \) ( with \( lim = Lim_0 \) )

\item \( \psi_\nu(Lim_{\kappa+1} h) = Lim_{\kappa+1}(\psi_\nu \circ h) \) if \( \kappa < \nu \), 
 or with fundamental sequence notation : \( \psi_\nu(\alpha)[\eta] = \psi_\nu(\alpha[\eta]) \)

\begin{comment}
\item \( \psi_\nu(Lim_{\kappa+1} h) = lim [ (\psi_\nu \circ h)^\bullet (\zeta) ] \) if \( \kappa \ge \nu \), with \( \zeta = 0 \) or 1 or \( \psi_\nu(0) \) for example.
\end{comment}

\item \( \psi_\nu (Lim_{\kappa+1} h) = lim [ \psi_\nu (h ((\psi_\kappa \circ h)^\bullet (\zeta)))] \) if \( \kappa \ge \nu \), with \( \zeta = 0 \) or 1 or \( \psi_\kappa(0) \) for example.

\end{itemize}

\begin{comment}
(We could also define \( \psi_\nu(\alpha) \) where \( \nu \) is an ordinal, provided that z is a function that, given an ordinal, gives an ordinal, and that we define \( Lim_\kappa \) for \( \kappa \) ordinal.)
\end{comment}

We can see that for \( \psi_0 \) we get the same definition as the previous definition of \( \psi \).

Concerning the last formula, with \( \psi_\nu(Lim_{\kappa+1} h) = lim [ (\psi_\nu \circ h)^\bullet (\zeta) ] \) we also get the previous one for \( \psi_0 \) but it is not the same formula as for Buchholz function which we will see later.

The choice of \( \zeta = 0, 1 \) or \( \psi_\nu(0) \) is not very important since it does not change the value of the limit. Traditionaly, \( \psi_\nu(0) \) is generally chosen, but 0 or 1 seems simpler to me.

Note that as a particular case of the fourth rule, when h is the identity function, we have \( \psi_\nu(Lim_{\nu+1} I) = \psi_\nu(\Omega_{\nu+1}) = lim [ {\psi_\nu}^\bullet 0 ] = sup \lbrace 0, \psi_\nu(0), \psi_\nu(\psi_\nu(0)), \ldots \rbrace \) which is the least fixed point of \( \psi_\nu \), so we have \( \psi_\nu(\psi_\nu(\Omega_{\nu+1})) = \psi_\nu(\Omega_{\nu+1}) \).

Concerning the values of \( \psi_\nu \) between \( \psi_\nu(\Omega_{\nu+1}) \) and \( \Omega_{\nu+1} \), some authors consider that it is \( \psi_\nu(\Omega_{\nu+1}) \), which implies that the rule \( \psi_\nu(suc\ \alpha) = f(\psi_\nu(\alpha)) \) is not true for any \( \alpha \) and must be restricted by adding some condition like "In \( \psi_\nu(g(\alpha)) \), we must have \( \alpha < g(\psi(\alpha)) \), but it seems simpler to me to consider that the rule \( \psi_\nu(suc\ \alpha) = f(\psi_\nu(\alpha)) \) is always true, which implies for example that \( \psi_\nu(suc \psi_\nu(\Omega_{\nu+1})) = f(\psi_\nu(\psi_\nu(\Omega_{\nu+1})) = f(\psi_\nu(\Omega_{\nu+1})) \).

\bigskip

With RHS0 notation, \( \Omega_\kappa = \omega_\kappa = H_\kappa suc\ 0 \) and the least fixed point of a function f is H f 0.

We also have :

\( \psi_\nu (H_{\nu+1} x y z_1 \ldots z_p) \)

\( = \psi_\nu (Lim_{\nu+1} [x^\bullet y z_1 \ldots z_p]) \)

\( = lim [(\psi_\nu \circ [x^\bullet y z_1 \ldots z_p])^\bullet 0] \)

\( = lim [[\psi_\nu (x^\bullet y z_1 \ldots z_p)]^\bullet 0] \)

\( = H [\psi_\nu (x^\bullet y z_1 \ldots z_p)] 0 \)

\( = H [\psi_\nu ([suc \rightarrow x, 0 \rightarrow y] \bullet z_1 \ldots z_p)] 0 \) 

\bigskip


I will also define a function \( \psi^*_n(\alpha) \) where n is a natural number, that nests calls of \( \psi_k(\alpha) \) for successive values of k between 0 and n, for example \( \psi'_3(0) = \psi_0(\psi_1(\psi_2(\psi_3(0)))) \). More generally, this function is defined by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi^*_0(\alpha) = \psi_0(\alpha) \)

\item \( \psi^*_{k+1}(\alpha) = \psi^*_k(\psi_{k+1}(\alpha)) \)

\item \( \psi^*_{Lim_\kappa h}(\alpha) = Lim_\kappa (\eta \mapsto \psi^*_{h(\eta)}(\alpha)) \)

\end{itemize}


\begin{comment}
We can generalize this function to transfinite indices, for example \( \psi^*_\omega(\alpha) = lim [ \psi^*_\bullet(\alpha) ] \).
\end{comment}

\begin{comment}
To simplify notation, \( \psi_1 \) will sometimes be written \( \psi \).
\end{comment}

\bigskip



Here are some example of such ordinal collapsing functions with the corresponding "traditional" ordinal collapsing function which we will see later and some of their values :

\bigskip

\begin{tabular}{|c|c|c|c|c|c|}
\hline
Corresponding             & None                      &                                       & Buchholz \(\psi_0\)             &                                                               & Madore's \(\psi\)                \\ 
"traditional" OCF         &                           &                                       &                                 &                                                               &                                  \\ 
\hline    
                          &                           & \( C(\alpha) \) generated             & \( C_0(\alpha) \) generated     &                                                               & \( C(\alpha) \) generated        \\
                          &                           & by 1, suc, \( \psi(\xi) \)            & by 1, +, \( \psi_\mu(\xi) \)    &                                                               & by \( 0, 1, \omega, \Omega, \)   \\
                          &                           & where \( \xi < \alpha \)              & where \( \mu < \omega \)        &                                                               & \( +, \cdot, exp., \psi(\xi) \) \\
                          &                           &                                       & and \( \xi < \alpha \)          &                                                               & where \( \xi < \alpha \)         \\ 
\hline
\( \psi(0) \)            & 1                         & 1                                     & 1                               & \( \omega \)                                                  & \( \varepsilon_0 \)              \\ 
\hline
\( \psi(\alpha+1) \)     & \( \psi(\alpha)+1 \)     & \( \psi(\alpha)+\omega \)            & \( \psi(\alpha)\cdot\omega \) & \( sup\lbrace\psi(\alpha)^{\vdots^{\psi(\alpha)}}\rbrace \) & \( sup\lbrace\psi(\alpha)
                                                                                                                                                                                                  ^{\vdots^{\psi(\alpha)}}\rbrace \) \\
\hline
\( \psi(1) \)            & 2                         & \( \omega \)                          & \( \omega \)                    & \( \varepsilon_0 \)                                           & \( \varepsilon_1 \)              \\
\hline
\( \psi(\alpha+\beta) \) & \( \psi(\alpha)+\beta \) & \( \psi(\alpha)+\omega\cdot\beta \) & \( \psi(\alpha)+\omega^\beta \)&                                                               &                                  \\
\hline
\( \psi(\alpha) \)       & \( 1+\alpha \)            & \( \omega \cdot \alpha \)            & \( \omega^\alpha \)             & \( \varepsilon'_\alpha \)                                     & \( \varepsilon_\alpha \)         \\
cond. if \( \psi \) monotone& if \( \alpha<\omega\)  & if \( \alpha < \omega^2 \)            & if \( \alpha < \varepsilon_0 \) & if \( \alpha < \zeta_0 \)                                     & if \( \alpha < \zeta_0 \)        \\
\hline
\( \psi(\omega) \)       & \( \omega \)              & \( \omega^2 \)                        & \( \omega^\omega \)             & \( \varepsilon_\omega \)                                      & \( \varepsilon_\omega \)         \\
\hline
\( \psi(\Omega) \)       & \( \omega \)              & \( \omega^\omega \)                   & \( \varepsilon_0 \)             & \( \zeta_0 \)                                                 & \( \zeta_0 \)                    \\
\hline
\( \psi(\Omega+1) \)     & \( \omega+1 \)            & \( \omega^\omega+\omega \)            & \( \varepsilon_0\cdot\omega \) & \( \varepsilon_{\zeta_0+1} \)                                 & \( \varepsilon_{\zeta_0+1} \)    \\
                          &                           &                                       & \( = \omega^{\varepsilon_0+1} \)&                                                               &                                  \\
\hline
\( \psi(\Omega\cdot 2)\)& \( \omega^2 \)            & \( \omega^{\omega+1} \)               & \( \varepsilon_1 \)             & \( \zeta_1 \)                                                 & \( \zeta_1 \)                    \\
\hline
\( \psi(\Omega^2) \)     & \( \varepsilon_0 \)       & \( \varepsilon_0 \)                   & \( \zeta_0 \)                   & \( \eta_0 \)                                                  & \( \eta_0 \)                     \\
\hline
\( \psi(\Omega^\Omega) \)& \( \Gamma_0 \)            & \( \Gamma_0 \)                        & \( \Gamma_0 \)                  & \( \Gamma_0 \)                                                & \( \Gamma_0 \)                   \\
\hline

\( \psi_1(0) \)          & \( \Omega \)              & \( \Omega \)                          & \( \Omega \)                    & \( \varepsilon_{\Omega+1} \)                                  & \( \varepsilon_{\Omega+1} \)     \\
\hline
\( \psi_1(\alpha+1) \)   & \( \psi_1(\alpha)+1 \)   & \( \psi_1(\alpha)+\omega \)          & \(\psi_1(\alpha)\cdot\omega\) &\(sup\lbrace\psi_1(\alpha)^{\vdots^{\psi_1(\alpha)}}\rbrace\)& \( sup\lbrace\psi_1(\alpha)
                                                                                                                                                                                                  ^{\vdots^{\psi_1(\alpha)}}\rbrace \) \\
\hline
\( \psi_1(1) \)          & \( \Omega+1 \)            & \( \Omega+\omega \)                   & \( \Omega\cdot\omega \)        & \( \varepsilon_{\Omega+2} \)                                  & \( \varepsilon_{\Omega+2} \)     \\
                          &                           &                                       & \( = \omega^{\Omega+1} \)       &                                                               &                                  \\
\hline
\( \psi_1(\alpha) \)     & \( \Omega+\alpha \)       & \( \Omega+\omega\cdot\alpha \)       & \( \Omega\cdot\omega^\alpha \) & \( \varepsilon_{\Omega+1+\alpha} \)                           & \( \varepsilon_{\Omega+1+\alpha} \) \\
                          &                           &                                       & \( = \omega^{\Omega+\alpha} \)  &                                                               &                                  \\
\hline
\( \psi_1(\omega) \)     & \( \Omega+\omega \)       & \( \Omega+\omega^2 \)                 & \( \Omega\cdot\omega^\omega \) & \( \varepsilon_{\Omega+\omega} \)                             & \( \varepsilon_{\Omega+\omega} \) \\
                          &                           &                                       & \( = \omega^{\Omega+\omega} \)  &                                                               &                                  \\
\hline
\( \psi_1(\Omega) \)     & \( \Omega\cdot\omega \)  & \( \Omega\cdot\omega \)               & \( \Omega^2 \)                 & \( \varepsilon_{\Omega \cdot 2} \)                           & \( \varepsilon_{\Omega \cdot 2} \) \\
\hline

\end{tabular}

\bigskip

With more details, the function defined by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi(0) = 1 \)
\item \( \psi(\alpha+1) = \psi(\alpha)+1 \)
\end{itemize}

has the following properties :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi(\alpha+\beta)=\psi(\alpha)+\beta \)
\item \( \psi(\alpha) = 1+\alpha \)
\end{itemize}

\( \psi(\Omega) \) is the limit or least upper bound of :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( 0 \)
\item \( \psi(0) = 1 \)
\item \( \psi(\psi(0)) = \psi(1) = 2 \)
\item \( \ldots \)
\end{itemize}

which is \( \omega \).

Then we have :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi(\Omega+1) = \omega+1 \)
\item \( \psi(\Omega+\alpha) = \omega+\alpha \)
\item \( \psi(\Omega+\Omega) = \psi(\Omega \cdot 2) = \) limit of :
   \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
   \item 0
   \item \( \psi(\Omega)=\omega \)
   \item \( \psi(\Omega+\omega)=\omega+\omega=\omega \cdot 2 \)
   \item \( \ldots \)
   \end{itemize}
   \( = \omega \cdot \omega = \omega^2 \)
\item \( \psi(\Omega \cdot 2 + \Omega) = \psi(\Omega \cdot 3) = \) limit of :
   \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
   \item 0
   \item \( \psi(\Omega \cdot 2) = \omega^2 \)
   \item \( \psi(\Omega \cdot 2 + \omega^2) = \omega^2+\omega^2 = \omega^2 \cdot 2 \)
   \item \( \ldots \)
   \end{itemize}
   \( = \omega^2 \cdot \omega = \omega^3 \)
\item \( \psi(\Omega \cdot \alpha) = \omega^\alpha \)
\item \( \psi(\Omega \cdot \Omega) = \psi(\Omega^2) = \) limit of :
   \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
   \item 1
   \item \( \psi_0(\Omega) = \omega \)
   \item \( \psi_0(\Omega \cdot \omega) = \omega^\omega \)
   \item \( \ldots \)
   \end{itemize}
   \( = \varepsilon_0 = \varphi(1,0) = \varphi'(0,1) \)
\item \( \psi(\Omega^2+\alpha) = \varepsilon_0+\alpha \)
\item \( \psi(\Omega^2+\Omega) = \) limit of :
   \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
   \item 0
   \item \( \psi(\Omega^2)=\varepsilon_0 \)
   \item \( \psi(\Omega^2+\varepsilon_0) = \varepsilon_0 \cdot 2 \)
   \item \( \ldots \)
   \end{itemize}
   \( = \varepsilon_0 \cdot \omega \)
\item \( \psi(\Omega^2+\Omega+\alpha = \varepsilon_0 \cdot \omega + \alpha \)
\item \( \psi(\Omega^2+\Omega+\Omega) = \psi(\Omega^2+\Omega \cdot 2) = \) limit of : 
   \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
   \item 0
   \item \( \psi(\Omega^2+\Omega) = \varepsilon_0 \cdot \omega \)
   \item \( \psi(\Omega^2+\Omega+\varepsilon_0 \cdot \omega) = \varepsilon_0 \cdot \omega \cdot 2 \)
   \item \( \ldots \)
   \end{itemize}
   \( = \varepsilon_0 \cdot \omega^2 \)
\item \( \psi(\Omega^2+\Omega \cdot \alpha) = \varepsilon_0 \cdot \omega^\alpha \)
\item \( \psi(\Omega^2+\Omega \cdot \Omega) = \psi(\Omega^2+\Omega^2) = \psi(\Omega^2 \cdot 2) = \) limit of :
   \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
   \item 0
   \item \( \psi(\Omega^2) = \varepsilon_0 \)
   \item \( \psi(\Omega^2+\Omega \cdot \varepsilon_0) = \varepsilon_0 \cdot \omega^\varepsilon_0 = {\varepsilon_0}^2 \)
   \item \( \psi(\Omega^2+\Omega \cdot {\varepsilon_0}^2) = \varepsilon_0 \cdot \omega^{{\varepsilon_0}^2} = \varepsilon_0 \cdot \omega^{\varepsilon_0 \cdot \varepsilon_0} = \varepsilon_0 \cdot (\omega^{\varepsilon_0})^{\varepsilon_0} = \varepsilon_0 \cdot {\varepsilon_0}^{\varepsilon_0} = {\varepsilon_0}^{1+\varepsilon_0} = {\varepsilon_0}^{\varepsilon_0} \)
   \item \( \psi(\Omega^2+\Omega \cdot {\varepsilon_0}^{\varepsilon_0}) = \varepsilon_0 \cdot \omega^{{\varepsilon_0}^{\varepsilon_0}} = \varepsilon_0 \cdot {\varepsilon_0}^{{\varepsilon_0}^{\varepsilon_0}} = {\varepsilon_0}^{1+{\varepsilon_0}^{\varepsilon_0}} = {\varepsilon_0}^{{\varepsilon_0}^{\varepsilon_0}} \) 
   \item \( \ldots \)
   \end{itemize}
   \( = \varepsilon_1 = \varphi(1,1) = \varphi'(0,2) \)
\item \( \psi(\Omega^2 \cdot \alpha) = \varphi'(0,\alpha) \)
\item \( \psi(\Omega^2 \cdot \Omega) = \psi(\Omega^3) = \) limit of :
   \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
   \item 1
   \item \( \psi(\Omega^2) = \varepsilon_0 = \varphi(1,0) = \varphi'(0,1) \)
   \item \( \psi(\Omega^2 \cdot \varepsilon_0) = \varphi'(0,\varphi'(0,1)) \)
   \item \( \ldots \)
   \end{itemize}
   \( = \varphi'(1,1) = \zeta_0 = \varphi(2,0) \)
\item \( \psi(\Omega^{2+\alpha} = \varphi(1+\alpha,0) = \varphi'(\alpha,1) \)
\item \( \psi(\Omega^\Omega) = \) limit of : 
   \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
   \item 1
   \item \( \psi(\Omega) = \omega \)
   \item \( \psi(\Omega^\omega) = \varphi'(\omega,1) \)
   \item \( \psi(\Omega^{\varphi'(\omega,1)}) = \varphi'(\varphi'(\omega,1),1) \)
   \item \( \ldots \)
   \end{itemize} 
   \( = \Gamma_0 \)
\item \( \ldots \)
\end{itemize}

\bigskip

The function defined by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi(0) = 1 \)
\item \( \psi(\alpha+1) = \psi(\alpha)+\omega \)
\end{itemize}

has the following properties :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi(\alpha+\beta)=\psi(\alpha)+\omega \cdot \beta \)
\item \( \psi(\alpha) = \omega \cdot \alpha \)
\end{itemize}

\( \psi(\Omega) \) is the limit or least upper bound of :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( 0 \)
\item \( \psi(0) = 1 \)
\item \( \psi(\psi(0)) = \psi(1) = \omega \)
\item \( \psi(\omega) = \omega^2 \)
\item \( \ldots \)
\end{itemize}

which is \( \omega^\omega \).

Then we have :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi(\Omega+1) = \omega^\omega+\omega \)
\item \( \psi(\Omega+\alpha) = \omega^\omega+\omega \cdot \alpha \)
\item \( \psi(\Omega+\Omega) = \) limit of : 
   \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
   \item 0
   \item \( \psi(\Omega) = \omega^\omega \)
   \item \( \psi(\Omega+\psi(\Omega)) = \psi(\Omega+\omega^\omega) = \omega^\omega+\omega \cdot \omega^\omega = \omega^\omega \cdot 2 \)
   \item \( \ldots \)
   \end{itemize}
   \( = \omega^\omega \cdot \omega = \omega^{\omega+1} \)
\item \( \psi(\Omega \cdot 2 + \alpha) = \psi(\Omega \cdot 2) + \omega \cdot \alpha = \omega^{\omega+1} + \omega \cdot \alpha \)
\item \( \psi(\Omega \cdot 2 + \Omega) = \psi(\Omega \cdot 3) = \) limit of : 
   \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
   \item 0
   \item \( \psi(\Omega \cdot 2) = \omega^{\omega+1} \)
   \item \( \psi(\Omega \cdot 2 + \omega^{\omega+1}) = \omega^{\omega+1} + \omega \cdot \omega^{\omega+1} = \omega^{\omega+1} \cdot 2 \)
   \item \( \ldots \)
   \end{itemize}
   \( = \omega^{\omega+1} \cdot \omega = \omega^{\omega+2} \)
\item \( \psi(\Omega \cdot (1+\alpha)) = \omega^{\omega+\alpha} \)
\item \( \psi(\Omega \cdot \Omega) = \psi(\Omega^2) = \) limit of :
   \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
   \item 1
   \item \( \psi(\Omega) = \omega^\omega \)
   \item \( \psi(\Omega \cdot \omega^\omega) = \omega^{\omega+\omega^\omega} = \omega^{\omega^\omega} \)
   \item \( \ldots \)
   \end{itemize} 
   \( = \varepsilon_0 \)
\item \( \psi(\Omega^2+\alpha) = \varepsilon_0+\omega \cdot \alpha \)
\item \( \psi(\Omega^2 + \Omega) = \) limit of :
   \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
   \item 0
   \item \( \psi(\Omega^2) = \varepsilon_0 \)
   \item \( \psi(\Omega^2+\varepsilon_0) = \varepsilon_0+\omega \cdot \varepsilon_0 = \varepsilon_0 \cdot 2 \)
   \item \( \ldots \)
   \end{itemize}
   \( = \varepsilon_0 \cdot \omega \)
\item \( \psi(\Omega^2+\Omega+\alpha) = \varepsilon_0 \cdot \omega + \omega \cdot \alpha \)
\item \( \psi(\Omega^2+\Omega+\Omega) = \psi(\Omega^2+\Omega \cdot 2) = \) limit of :
   \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
   \item 0
   \item \( \psi(\Omega^2+\Omega) = \varepsilon_0 \cdot \omega \)
   \item \( \psi(\Omega^2+\Omega+\varepsilon_0 \cdot \omega) = \varepsilon_0 \cdot \omega + \omega \cdot \varepsilon_0 \cdot \omega = \varepsilon_0 \cdot \omega \cdot 2 \)
   \item \( \ldots \)
   \end{itemize}
   \( = \varepsilon_0 \cdot \omega^\alpha \)
\item \( \psi(\Omega^2+\Omega \cdot \alpha) = \varepsilon_0 \cdot \omega^\alpha \)
\item \( \psi(\Omega^2+\Omega \cdot \Omega) = \psi(\Omega^2+\Omega^2) = \psi(\Omega^2 \cdot 2) = \) limit of :
   \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
   \item  0
   \item \( \psi(\Omega^2) = \varepsilon_0 \)
   \item \( \psi(\Omega^2+\Omega \cdot \varepsilon_0) = \varepsilon_0 \cdot \omega^{\varepsilon_0} = {\varepsilon_0}^2 \)
   \item \( \psi(\Omega^2+\Omega \cdot {\varepsilon_0}^2) = \varepsilon_0 \cdot \omega ^{{\varepsilon_0}^2} = \varepsilon_0 \cdot \omega^{\varepsilon_0 \cdot \varepsilon_0} = \varepsilon_0 \cdot (\omega^{\varepsilon_0})^{\varepsilon_0} = \varepsilon_0 \cdot {\varepsilon_0}^{\varepsilon_0} = {\varepsilon_0}^{1+\varepsilon_0} = {\varepsilon_0}^{\varepsilon_0} \)
   \item \( \psi(\Omega^2+\Omega \cdot {\varepsilon_0}^{\varepsilon_0}) = \varepsilon_0 \cdot \omega^{{\varepsilon_0}^{\varepsilon_0}} = \varepsilon_0 \cdot {\varepsilon_0}^{{\varepsilon_0}^{\varepsilon_0}} = {\varepsilon_0}^{1+{\varepsilon_0}^{\varepsilon_0}} = {\varepsilon_0}^{{\varepsilon_0}^{\varepsilon_0}} \) 
   \item \( \ldots \)
   \end{itemize} 
   \( = \varepsilon_1 = \varphi(1,1) = \varphi'(0,2) \)
\item \( \psi(\Omega^2 \cdot \alpha) = \varphi'(0,\alpha) \)
\item \( \psi(\Omega^2 \cdot \Omega) = \psi(\Omega^3) = \) limit of : 
   \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
   \item  1
   \item \( \phi'(0,1) = \varepsilon_0 \)
   \item \( \phi'(0,\varepsilon_0) = \varepsilon_{\varepsilon_0} \)
   \item \( \ldots \)
   \end{itemize} 
   \( = \zeta_0 = \varphi(2,0) = \varphi'(1,1) \)
\item \( \psi(\Omega^{2+\alpha} = \varphi'(\alpha,1) \)
\item \( \psi(\Omega^{2+\alpha} \cdot \beta) = \varphi'(\alpha,\beta) \)
\item \( \psi(\Omega^\Omega) = \) limit of : 
   \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
   \item 0
   \item \( \psi(\Omega^0) = \psi(1) = \omega \)
   \item \( \psi(\Omega^\omega) = \varphi'(\omega,1) \)
   \item \( \psi(\Omega^{\varphi'(\omega,1)}) = \varphi'(\varphi'(\omega,1),1) \)
   \item \( \ldots \)
   \end{itemize} 
   \( = \Gamma_0 \)
\item \( \ldots \)
\end{itemize}

\bigskip

The function defined by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi(0) = 1 \)
\item \( \psi(\alpha+1) = \psi(\alpha) \cdot \omega \)
\end{itemize}

has the following properties :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi(\alpha+\beta)=\psi(\alpha) \cdot \omega^\beta \)
\item \( \psi(\alpha) = \omega^\alpha \)
\end{itemize}

\( \psi(\Omega) \) is the limit or least upper bound of :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( 0 \)
\item \( \psi(0) = 1 \)
\item \( \psi(\psi(0)) = \psi(1) = \omega \)
\item \( \psi(\omega) = \omega^\omega \)
\item \( \psi(\omega^\omega) = \omega^{\omega^\omega} \)
\item \( \ldots \)
\end{itemize}

which is \( \varepsilon_0 \).

Then we have : 

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi(\Omega+1) = \varepsilon_0 \cdot \omega = \omega^{\varepsilon_0+\alpha} \)

\item \( \psi(\Omega+\alpha) = \varepsilon_0 \cdot \omega^\alpha = \omega^{\varepsilon_0+\alpha} \)

\item \( \psi(\Omega+\Omega) = \psi(\Omega \cdot 2) = \) limit of : 
   \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
   \item 0
   \item \( \psi(\Omega) = \varepsilon_0 \)
   \item \( \psi(\Omega+\psi(\Omega)) = \psi(\Omega+\varepsilon_0) = \varepsilon_0 \cdot \omega^{\varepsilon_0} = \varepsilon_0 \cdot \varepsilon_0 = {\varepsilon_0}^2 \)
   \item \( \psi(\Omega+{\varepsilon_0}^2) = \varepsilon_0 \cdot \omega^{{\varepsilon_0}^2} = \varepsilon_0 \cdot \omega^{\varepsilon_0 \cdot \varepsilon_0} = \varepsilon_0 \cdot (\omega^{\varepsilon_0})^{\varepsilon_0} = \varepsilon_0 \cdot {\varepsilon_0}^{\varepsilon_0} = {\varepsilon_0}^{1+\varepsilon_0} = {\varepsilon_0}^{\varepsilon_0} \)
   \item \( \psi(\Omega+{\varepsilon_0}^{\varepsilon_0}) = \varepsilon_0 \cdot \omega^{{\varepsilon_0}^{\varepsilon_0}} = \varepsilon_0 \cdot {\varepsilon_0}^{{\varepsilon_0}^{\varepsilon_0}} = {\varepsilon_0}^{1+{\varepsilon_0}^{\varepsilon_0}} = {\varepsilon_0}^{{\varepsilon_0}^{\varepsilon_0}} \)
   \item \( \ldots \)
   \end{itemize}
   \( = \varepsilon_1 = \varphi(1,1) = \varphi'(0,2) \)

\item \( \psi(\Omega \cdot \alpha) = \varphi'(0,\alpha) \)

\item \( \psi(\Omega \cdot \Omega) = \psi(\Omega^2) = \) limit of : 
   \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
   \item 0
   \item \( \psi(\Omega \cdot 0) = \psi(0) = 1 \)
   \item \( \psi(\Omega \cdot 1) = \psi(\Omega) = \varepsilon_0 = \varphi'(0,1) \)
   \item \( \psi(\Omega \cdot \varphi'(0,1)) = \varphi'(0,\varphi'(0,1)) \)
   \item \( \ldots \)
   \end{itemize}
   \( = \varphi'(1,1) = \varphi(2,0) = \zeta_0 \)

\item \( \psi(\Omega^\alpha) = \varphi(\alpha,0) \)

\item \( \psi(\Omega^\Omega) = \) limit of :
   \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
   \item 0
   \item \( \psi(\Omega^0) = \psi(1) = \omega \)
   \item \( \psi(\Omega^\omega) = \varphi(\omega,0) \)
   \item \( \psi(\Omega^{\varphi(\omega,0)} = \varphi(\varphi(\omega,0),0) \)
   \item \( \ldots \) 
   \end{itemize}
   \( = \varphi(1,0,0) = \Gamma_0 \)

\item \( \ldots \)

\end{itemize}

\bigskip

The function defined by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi(0) = \omega \)
\item \( \psi(\alpha+1) = sup \lbrace \psi(\alpha), \psi(\alpha)^{\psi(\alpha)}, \psi(\alpha)^{\psi(\alpha)^{\psi(\alpha)}}, \ldots \rbrace \)
\end{itemize}

has the following property :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi(\alpha) = \varepsilon'_\alpha \)
\end{itemize}

\( \psi(\Omega) \) is the limit of :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( 0 \)
\item \( \psi(0) = \omega \)
\item \( \psi(\psi(0)) = \psi(\omega) = \) limit of
	\begin{itemize}
	     \setlength{\itemsep}{1pt}
	     \setlength{\parskip}{0pt}
	     \setlength{\parsep}{0pt}
	\item \( \psi(0) = \omega \)
	\item \( \psi(1) =  sup \lbrace \omega, \omega^\omega, \omega^{\omega^\omega} \rbrace = \varepsilon_0 = \varepsilon'_1 \)
	\item \( \psi(2) = sup \lbrace \varepsilon'_1, {\varepsilon'_1}^{\varepsilon'_1}, {\varepsilon'_1}^{{\varepsilon'_1}^{\varepsilon'_1}}, \ldots \rbrace = \varepsilon'_2 \)
	\end{itemize}
	\( = \varepsilon'_\omega = \varepsilon_\omega \)
\item \( \psi(\varepsilon_\omega) = \varepsilon_{\varepsilon_\omega} \)
\item \( \ldots \)
\end{itemize}

which is \( \zeta_0 \).

Then we have

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi(\Omega+1) = sup \lbrace \psi(\Omega), \psi(\Omega)^{\psi(\Omega)}, \ldots \rbrace = sup \lbrace \zeta_0, \zeta_0^{\zeta_0}, \ldots \rbrace = \varepsilon_{\zeta_0+1} \)
\item \( \psi(\Omega+2) = \varepsilon_{\zeta_0+2} \)
\item \( \psi(\Omega+\alpha) = \varepsilon_{\zeta_0+\alpha} \)

\item \( \ldots \)
\end{itemize}

\bigskip

\begin{comment}

Then we must define \( \psi \) for the case when it collapses an uncountable ordinal, in such a way that \( \psi(h(\Omega)) \), for h correctly defined, is the least fixed point of \( \psi \circ h \), which can be written for example \( sup \lbrace 1, \psi(h(1)), \psi(h(\psi(h(1)))), \ldots \rbrace \)  as we previously saw. 

In RHS0 notation, \( \Omega \) is written \( H_1 suc\ 0 \) and the least fixed point of \( \psi \circ h \) can be written \( H (\psi \circ h) \zeta \) (with \( \zeta \) = 0 or 1 for example) \( = H [\psi(h(\bullet))] \zeta = H [\psi([suc \rightarrow x, 0 \rightarrow y] \bullet z_1 \ldots z_n)] \zeta \) if \( h(\Omega) = H_1 x y z_1 \ldots z_n \), so we have \( \psi(h(\Omega)) = \psi(H_1 x y z_1 \ldots z_n) = H [\psi([suc \rightarrow x, 0 \rightarrow y] \bullet z_1 \ldots z_n)] \zeta \) with always \( \zeta \) = 0 or 1 for example.

If \( h(\alpha) = \alpha \), then \( H(\Omega) = \Omega = H_1 suc\ 0, x = suc, y = 0, n = 0, \psi(\Omega) = \psi(H_1 suc\ 0) = H [\psi(suc \rightarrow suc, 0 \rightarrow 0] \bullet)] 0 = H \psi 0 = sup \lbrace 0, \psi(0), \psi(\psi(0)), \ldots \rbrace \).

If \( h(\alpha) = \Omega+\alpha \), then \( h(\Omega) = \Omega+\Omega = \Omega \cdot 2 = H_1 suc (H_1 suc\ 0), x = suc, y = H_1 suc\ 0, n = 0, \psi(h(\Omega)) = \psi(\Omega+\Omega) = \psi(\Omega \cdot 2) = \psi(H_1 suc (H_1 suc\ 0)) = H [\psi([suc \rightarrow suc, 0 \rightarrow H_1 suc 0] \bullet)] 0 = sup \lbrace 0, \psi([suc \rightarrow suc, 0 \rightarrow H_1 suc 0] 0) = \psi(H_1 suc_ 0) = psi(\Omega),  \psi([suc \rightarrow suc, 0 \rightarrow H_1 suc\ 0] (\psi(\Omega))) = \psi(\Omega+\psi(\Omega)), \ldots \rbrace \).

\bigskip

\end{comment}

In summary, we can define completely this \( \psi \) function by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi(0) = \omega \)

\item \( \psi(\alpha+1) = sup \lbrace \psi'(\alpha), \psi'(\alpha)^{\psi'(\alpha)}, \psi'(\alpha)^{\psi'(\alpha)^{\psi'(\alpha)}}, \ldots \rbrace \)

\item  \( \psi(lim(f)) = lim(n \mapsto \psi(f(n)) \)

\item \( \psi (H_1 x y z_1 \ldots z_n) = H [\psi([suc \rightarrow x, 0 \rightarrow y] \bullet z_1 \ldots z_n)] 0 \)

\end{itemize}

\bigskip

We will see with more details other functions after having seen the corresponding functions defined with the "classical" approach.

\subsection{Classical approach}

Remember that this approach consists in defining a set of ordinals C(a) or C(a,b) where a and b are ordinals, which contains all ordinals that can be built using an initial set of ordinals and some operations or functions, and then define \( \psi(a) \) or \( \psi(a,b) \) as the smallest ordinal that is not in C(a) or C(a,b), or the least ordinal that is greater than than all countable ordinals of C(a) or C(a,b).

Some examples of ordinal collapsing functions are described in http://googology.wikia.com/wiki/Ordinal\_notation .

These functions are extensions of functions on countable ordinals, whose fixed points can be reached by applying them to an uncountable ordinal.

Here is a correspondence between basic notation systems and their collapsing extensions based on formula : least fixed point of \( f = f(\Omega) \) :

\bigskip

\begin{tabular}{|c|c|c|c|c|c|} \hline
Basic notation	& Formula			& Limit					& Extension		& Correspondence					& Crossing 				\\ \hline
Cantor		& \( cantor(\alpha,\beta) \)	& least \( \alpha = cantor(\alpha,0) \)	& Taranovsky's C	& \( C(\alpha,\beta) = \beta+\omega^\alpha \)		& \( C(\Omega,0) = \varepsilon_0 \)	\\
		& \( = \beta + \omega^\alpha \)	& \( = \omega^\alpha = \varepsilon_0 \)	&			& iff \( C(\alpha,\beta) \geq \alpha \)			&					\\ \hline
		& \( \omega^\alpha \)		& least \( \alpha = \omega^\alpha \)	& Buchholz \( \psi_0 \) & \( \psi_0(\alpha) = \omega^\alpha \)			& \( \psi_0(\Omega) = \varepsilon_0 \)	\\
		&				& \( = \varepsilon_0 \)			&			& if \( \alpha < \varepsilon_0 \)			&					\\ \hline
Epsilon		& \( \varepsilon_\alpha	\)	& least \( \alpha = \varepsilon_\alpha\)& Madore's \( \psi \)	& \( \psi(\alpha) = \varepsilon_\alpha \)		& \( \psi(\Omega) = \zeta_0 \)		\\
		&				& \( = \zeta_0 \)			&			& for all \( \alpha < \zeta_0 \)			& 					\\ \hline
Binary Veblen	& \( \varphi_\alpha(\beta) \)	& least \( \alpha = \varphi(\alpha,0) \)& \( \theta \)		& \( \theta(\alpha,\beta) = \varphi(\alpha,\beta) \)	& \( \theta(\Omega,0) = \Gamma_0 \)	\\
		& or \( \varphi(\alpha,\beta) \)& \( = \Gamma_0 \)			&			& below \( \Gamma_0 \)					&					\\ \hline
													
\end{tabular}

\subsection{Buchholz \( \psi_\nu \) functions}

Buchholz's psi-functions are a hierarchy of single-argument ordinal functions \(\psi_\nu(\alpha)\) introduced by german mathematician Wilfried Buchholz in 1986.[1] These functions are a simplified version of the \(\theta\)-functions, but nevertheless have the same strength as those.

\subsubsection{Definition}

Buchholz defined his functions as follows :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \(C_\nu^0(\alpha) = \Omega_\nu\),

\item \(C_\nu^{n+1}(\alpha) = C_\nu^n(\alpha) \cup \{\gamma | P(\gamma) \subseteq C_\nu^n(\alpha)\} \cup \{\psi_\mu(\xi) | \xi \in \alpha \cap C_\nu^n(\alpha) \wedge \xi \in C_\mu(\xi) \wedge \mu \leq \omega\}\),

\item \(C_\nu(\alpha) = \bigcup_{n < \omega} C_\nu^n (\alpha)\),

\item \(\psi_\nu(\alpha) = \min\{\gamma | \gamma \not\in C_\nu(\alpha)\}\),

\end{itemize}

where

\(\Omega_\nu=\left\{\begin{array}{lcr} 1\text{ if }\nu=0\\ \aleph_\nu\text{ if }\nu>0\\ \end{array}\right.\)

and \(P(\gamma)=\{\gamma_1,...,\gamma_k\}\) is the set of additive principal numbers in form \(\omega^\xi\),

\(P=\{\alpha\in On: 0<\alpha \wedge \forall \xi, \eta < \alpha (\xi+\eta < \alpha)\}=\{\omega^\xi: \xi \in On\}\),

the sum of which gives this ordinal \(\gamma\):

\(\gamma=\alpha_1+\alpha_2+\ldots+\alpha_k\) where \(\alpha_1\geq\alpha_2\geq\ldots\geq\alpha_k\) and \(\alpha_1,\alpha_2,...,\alpha_k \in P(\gamma)\).

Note: Greek letters always denotes ordinals. \(On\) denotes the class of all ordinals.

The limit of this notation is Takeuti-Feferman-Buchholz ordinal.


\subsubsection{Properties}


Buchholz showed following properties of those functions:

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \(\psi_\nu(0)=\Omega_\nu\),
\item \(\psi_\nu(\alpha)\in P\),
\item \(\psi_\nu(\alpha+1)=\text{min}\{\gamma\in P: \psi_\nu(\alpha)<\gamma\}\text{ if }\alpha\in C_\nu(\alpha)\),
\item \(\Omega_\nu\le\psi_\nu(\alpha)<\Omega_{\nu+1}\),
\item \(\alpha\le\beta\Rightarrow\psi_\nu(\alpha)\le\psi_\nu(\beta)\),
\item \(\psi_0(\alpha)=\omega^\alpha \text{ if }\alpha<\varepsilon_0\),
\item \(\psi_\nu(\alpha)=\omega^{\Omega_\nu+\alpha} \text{ if }\alpha<\varepsilon_{\Omega_\nu+1} \text{ and } \nu\neq 0\),
\item \(\theta(\varepsilon_{\Omega_\nu+1},0)=\psi_0(\varepsilon_{\Omega_\nu+1})\) for \(0<\nu\le\omega\).
\end{itemize}

\subsubsection{Normal form and fundamental sequences}

Normal form :

The normal form for 0 is 0. If \(\alpha\) is a nonzero ordinal number \(\alpha<\Lambda=\text{min}\{\beta|\psi_\beta(0)=\beta\}\) then the normal form for \(\alpha\) is \(\alpha=\psi_{\nu_1}(\beta_1)+\psi_{\nu_2}(\beta_2)+\ldots+\psi_{\nu_k}(\beta_k)\) where \(k\) is a positive integer and \(\psi_{\nu_1}(\beta_1)\geq\psi_{\nu_2}(\beta_2)\geq\ldots\geq\psi_{\nu_k}(\beta_k)\) and each \(\nu_i\), \(\beta_i\) are also written in normal form.

Fundamental sequences :

The fundamental sequence for an ordinal number \(\alpha\) with cofinality \(\text{cof}(\alpha)=\beta\) is a strictly increasing sequence \((\alpha[\eta])_{\eta<\beta}\) with length \(\beta\) and with limit \(\alpha\), where \(\alpha[\eta]\) is the \(\eta\)-th element of this sequence. If \(\alpha\) is a successor ordinal then \(\text{cof}(\alpha)=1\) and the fundamental sequence has only one element \(\alpha[0]=\alpha-1\). If \(\alpha\) is a limit ordinal then \(\text{cof}(\alpha)\in\{\omega\}\cup\{\Omega_{\mu+1}|\mu\geq 0\}\).

For nonzero ordinals \(\alpha<\Lambda\), written in normal form, fundamental sequences are defined as follows:

\begin{enumerate}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item If \(\alpha=\psi_{\nu_1}(\beta_1)+\psi_{\nu_2}(\beta_2)+\ldots+\psi_{\nu_k}(\beta_k)\) where \(k\geq2\) then \(\text{cof}(\alpha)=\text{cof}(\psi_{\nu_k}(\beta_k))\) and \(\alpha[\eta]=\psi_{\nu_1}(\beta_1)+\ldots+\psi_{\nu_{k-1}}(\beta_{k-1})+(\psi_{\nu_k}(\beta_k)[\eta])\),
\item If \(\alpha=\psi_{0}(0)=1\), then \(\text{cof}(\alpha)=1\) and \(\alpha[0]=0\),
\item If \(\alpha=\psi_{\nu+1}(0)\), then \(\text{cof}(\alpha)=\Omega_{\nu+1}\) and \(\alpha[\eta]=\Omega_{\nu+1}[\eta]=\eta\),
\item If \(\alpha=\psi_{\nu}(0)\) and \(\text{cof}(\nu)\in\{\omega\}\cup\{\Omega_{\mu+1}|\mu\geq 0\}\), then \(\text{cof}(\alpha)=\text{cof}(\nu)\) and \(\alpha[\eta]=\psi_{\nu[\eta]}(0)=\Omega_{\nu[\eta]}\),
\item If \(\alpha=\psi_{\nu}(\beta+1)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[\eta]=\psi_{\nu}(\beta)\cdot \eta\) (and note: \(\psi_\nu(0)=\Omega_\nu\)),
\item If \(\alpha=\psi_{\nu}(\beta)\) and \(\text{cof}(\beta)\in\{\omega\}\cup\{\Omega_{\mu+1}|\mu<\nu\}\) then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=\psi_{\nu}(\beta[\eta])\),
\item If \(\alpha=\psi_{\nu}(\beta)\) and \(\text{cof}(\beta)\in\{\Omega_{\mu+1}|\mu\geq\nu\}\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[\eta]=\psi_{\nu}(\beta[\gamma[\eta]])\) where \(\left\{\begin{array}{lcr} \gamma[0]=\Omega_\mu \\ \gamma[\eta+1]=\psi_\mu(\beta[\gamma[\eta]])\\ \end{array}\right.\).
\item If \(\alpha=\Lambda\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=0\) and \(\alpha[\eta+1]=\psi_{\alpha[\eta]}(0)=\Omega_{\alpha[\eta]}\).
\end{enumerate}

These fundamental sequences are equivalent to the following recursive definition of \( \psi_\nu(\alpha) \) :

\begin{enumerate}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item The first fundamental sequence is not part of the definition of \( \psi_\nu(\alpha) \), it it a particular case of the general definition of addition, with \( \alpha + Lim_\nu(h) = Lim_\nu (\xi \mapsto \alpha + h(\xi)) \)
\item \( \psi_0(0) = 1 \)
\item \( \psi_{\nu+1}(0) = \Omega_{\nu+1} \) 
\item \( \psi_{Lim_\mu h}(0) = Lim_\mu (\xi \mapsto \psi_{h(\xi)}(0)) = Lim_\mu (\xi \mapsto \Omega_{h(\xi)}) \)
\item \( \psi_\nu(\beta+1) = \psi_\nu(\beta) \cdot \omega \)
\item \( \psi_\nu (lim\ h) = lim (\xi \mapsto \psi_\nu(h(\xi))) = lim (\psi_\nu \circ h) \) ( with \( lim = Lim_0 \) )
\item \( \psi_\nu (Lim_{\mu+1} h) = Lim_{\mu+1} (\xi \mapsto \psi_\nu(h(\xi))) = Lim_{\mu+1} (\psi_\nu \circ h) \) if \( \mu < \nu \)
\begin{comment}
\item \( \psi_\nu (Lim_{\mu+1} h) = lim (\xi \mapsto (\psi_\nu \circ h)^\xi (\psi_\nu(0))) \) if \( \mu \ge \nu \)
\end{comment}
\item \( \psi_\nu(Lim_{\mu+1} h) = lim (\xi \mapsto \psi_\nu (h ((\psi_\mu \circ h)^\xi (\Omega_\mu)))) \) if \( \mu \ge \nu \)
\item This fundamental sequence is not part of the definition of \( \psi_\nu(\alpha) \), it can be deduced from the definition of \( \Lambda = min \lbrace \beta | \psi_\beta(0) = \beta \rbrace \)
\end{enumerate}


\subsubsection{Explanation}

Buchholz is working in Zermelo–Fraenkel set theory, that means every ordinal \(\alpha\) is equal to set \(\{\beta|\beta<\alpha\}\). Then condition \(C_\nu^0(\alpha)=\Omega_\nu\) means that set \(C_\nu^0(\alpha)\) includes all ordinals less than \(\Omega_\nu\) in other words \(C_\nu^0(\alpha)=\{\beta|\beta<\Omega_\nu\}\).

The condition \(C_\nu^{n+1}(\alpha) = C_\nu^n(\alpha) \cup \{\gamma | P(\gamma) \subseteq C_\nu^n(\alpha)\} \cup \{\psi_\mu(\xi) | \xi \in \alpha \cap C_\nu^n(\alpha) \wedge \mu \leq \omega\}\) means that set \(C_\nu^{n+1}(\alpha)\) includes:

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item all ordinals from previous set \(C_\nu^n(\alpha)\),
\item all ordinals that can be obtained by summation the additively principal ordinals from previous set \(C_\nu^n(\alpha)\),
\item all ordinals that can be obtained by applying ordinals less than \(\alpha\) from the previous set \(C_\nu^n(\alpha)\) as arguments of functions \(\psi_\mu\), where \(\mu\le\omega\).
\end{itemize}

That is why we can rewrite this condition as:

\(C_\nu^{n+1}(\alpha) = \{\beta+\gamma,\psi_\mu(\eta)|\beta, \gamma,\eta\in C_{\nu}^n(\alpha)\wedge\eta<\alpha \wedge \mu \leq \omega\}\).

Thus union of all sets \(C_\nu^n (\alpha)\) with \(n<\omega\) i.e. \(C_\nu(\alpha) = \bigcup_{n < \omega} C_\nu^n (\alpha)\) denotes the set of all ordinals which can be generated from ordinals \(<\aleph_\nu\) by the functions + (addition) and \(\psi_{\mu}(\xi)\), where \(\mu\le\omega\) and \(\xi<\alpha\).

Then \( \psi_\nu(\alpha) = \min\{\gamma | \gamma \not\in C_\nu(\alpha)\}\) is the smallest ordinal that does not belong to this set.

Examples :

Consider the following examples:

\(C_0^0(\alpha)=\{0\} =\{\beta:\beta<1\}\),

\(C_0(0)=\{0\}\) (since no functions \(\psi(\eta<0)\) and 0+0=0).

Then \(\psi_0(0)=1\).

\(C_0(1)\) includes \(\psi_0(0)=1\) and all possible sums of natural numbers:

\(C_0(1)=\{0,1,2,...,\text{googol}, ...,\text{TREE(googol)},...\}\).

Then \(\psi_0(1)=\omega\) - first transfinite ordinal, which is greater than all natural numbers by its definition.

\(C_0(2)\) includes \(\psi_0(0)=1, \psi_0(1)=\omega\) and all possible sums of them.

Then \(\psi_0(2)=\omega^2\).

For \(C_0(\omega)\) we have set \(C_0(\omega)=\{0,\psi(0)=1,...,\psi(1)=\omega,...,\psi(2)=\omega^2,...,\psi(3)=\omega^3,...\}\).

Then \(\psi_0(\omega)=\omega^\omega\).

For \(C_0(\Omega)\) we have set \(C_0(\Omega)=\{0,\psi(0)=1,...,\psi(1)=\omega,...,\psi(\omega)=\omega^\omega,...,\psi(\omega^\omega)=\omega^{\omega^\omega},...\}\).

Then \(\psi_0(\Omega)=\varepsilon_0\).

For \(C_0(\Omega+1)\) we have set \(C_0(\Omega)=\{0,1,...,\psi_0(\Omega)=\varepsilon_0,...,\varepsilon_0+\varepsilon_0,...\psi_1(0)=\Omega,...\}\).

Then \(\psi_0(\Omega+1)=\varepsilon_0\omega=\omega^{\varepsilon_0+1}\).

\(\psi_0(\Omega2)=\varepsilon_1\),

\(\psi_0(\Omega^2)=\zeta_0\),

\(\varphi(\alpha,1+\beta)=\psi_0(\Omega^\alpha\beta)\),

\(\psi_0(\Omega^\Omega)=\Gamma_0=\theta(\Omega,0)\), using Feferman theta-function,

Note that we find the same result as with the previously seen function defined recursively with \( \psi(0) = 1 \) and \( \psi(\alpha+1) = \psi(\alpha) \cdot \omega \).

\(\psi_0(\Omega^{\Omega^\Omega})\) is large Veblen ordinal,

\(\psi_0(\Omega\uparrow\uparrow\omega)=\psi_0(\varepsilon_{\Omega+1})=\theta(\varepsilon_{\Omega+1},0)\).

Now let's research how \(\psi_1\) works:

\(C_1^0(\alpha)=\{\beta:\beta<\Omega_1\}=\{0,\psi(0)=1,2,...\text{googol},...,\psi_0(1)=\omega,...,\psi_0(\Omega)=\varepsilon_0,...\)

\(...,\psi_0(\Omega^\Omega)=\Gamma_0,...,\psi(\Omega^{\Omega^\Omega+\Omega^2}),...\}\) i.e. includes all countable ordinals.

\(C_1(\alpha)\) includes all possible sums of all countable ordinals. Then

\(\psi_1(0)=\Omega_1\) first uncountable ordinal which is greater than all countable ordinal by its definition i.e. smallest number with cardinality \(\aleph_1\).

\(C_1(1)=\{0,...,\psi_0(0)=\omega,...,\psi_1(0)=\Omega,...,\Omega+\omega,...,\Omega+\Omega,...\}\)

Then \(\psi_1(1)=\Omega\omega=\omega^{\Omega+1}\).

Then \(\psi_1(2)=\Omega\omega^2=\omega^{\Omega+2}\),

\(\psi_1(\psi_0(\Omega))=\Omega\varepsilon_0=\omega^{\Omega+\varepsilon_0}\),

\(\psi_1(\psi_0(\Omega^\Omega))=\Omega\Gamma_0=\omega^{\Omega+\Gamma_0}\),

\(\psi_1(\psi_1(0))=\psi_1(\Omega)=\Omega^2=\omega^{\Omega+\Omega}\),

\(\psi_1(\psi_1(\psi_1(0)))=\omega^{\Omega+\omega^{\Omega+\Omega}}=\omega^{\Omega\cdot\Omega}=(\omega^{\Omega})^\Omega=\Omega^\Omega\),

\(\psi_1^4(0)=\Omega^{\Omega^\Omega}\),

\(\psi_1(\Omega_2)=\psi_1^\omega(0)=\Omega\uparrow\uparrow\omega=\varepsilon_{\Omega+1}\).

For case \(\psi(\Omega_2)\) the set \(C_0(\Omega_2)\) includes functions \(\psi_0\) with all arguments less than \(\Omega_2\) i.e. such arguments as \(0, \psi_1(0), \psi_1(\psi_1(0)), \psi_1^3(0),..., \psi_1^\omega(0)\)

and then \(\psi_0(\Omega_2)=\psi_0(\psi_1(\Omega_2))=\psi_0(\varepsilon_{\Omega+1})\).

In general case: \(\psi_0(\Omega_{\nu+1})=\psi_0(\psi_\nu(\Omega_{\nu+1}))=\psi_0(\varepsilon_{\Omega_\nu+1})=\theta(\varepsilon_{\Omega_\nu+1},0)\).

We also can write:

\(\theta(\Omega_\nu,0)=\psi_0(\Omega_\nu^{\Omega_\nu})\) ( for \( 1\le\nu<\omega\)).

\subsubsection{Extension}

We rewrite Buchholz's definition as follows[2]:

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \(C_\nu^0(\alpha) = \{\beta|\beta<\Omega_\nu\}\),
\item \(C_\nu^{n+1}(\alpha) = \{\beta+\gamma,\psi_\mu(\eta)|\mu,\beta, \gamma,\eta\in C_{\nu}^n(\alpha)\wedge\eta<\alpha\}\),
\item \(C_\nu(\alpha) = \bigcup_{n < \omega} C_\nu^n (\alpha)\),
\item \(\psi_\nu(\alpha) = \min\{\gamma | \gamma \not\in C_\nu(\alpha)\}\),
\end{itemize}

where

\(\Omega_\nu=\left\{\begin{array}{lcr} 1\text{ if }\nu=0\\ \text{smallest ordinal with cardinality }\aleph_\nu \text{ if }\nu>0\\ \end{array}\right.\)

and \(\omega\) is the smallest infinite ordinal.

There is only one little detail difference with original Buchholz definition: ordinal \(\mu\) is not limited by \(\omega\), now ordinal \(\mu\) belongs to previous set \(C_n\).

For example if \(C_0^0(1)=\{0\}\) then \(C_0^1(1)=\{0,\psi_0(0)=1\}\) and \(C_0^2(1)=\{0,...,\psi_1(0)=\Omega\}\) and \(C_0^3(1)=\{0,...,\psi_\Omega(0)=\Omega_\Omega\}\) and so on.

Limit of this notation must be omega fixed point \(\psi(\Omega_{\Omega_{\Omega_{...}}})=\psi(\psi_{\psi_{...}(0)}(0))\), where \(\psi\) without subscript denotes \(\psi_0\).

\subsubsection{Sources}

Buchholz, W. "A New System of Proof-Theoretic Ordinal Functions". Annals of Pure and Applied Logic, vol. 32. Retrieved 2017-05-13.

Maksudov, Denis. The extension of Buchholz's function. Traveling To The Infinity. Retrieved 2017-05-18.

http://googology.wikia.com/wiki/Buchholz%27s_function

Jaiger, G (1984). "P-inaccessible ordinals, collapsing functions, and a recursive notation system". Archiv f. math. Logik und Grundlagenf. pp. 49–62.

Buchholz, W.; Schiitte, K. (1983). "Ein Ordinalzahlensystem ftir die beweistheoretische Abgrenzung der H~-Separation und Bar-Induktion". Sitzungsberichte der Bayerischen Akademie der Wissenschaften, Math.-Naturw. Klasse.

https://en.wikipedia.org/wiki/Buchholz\_psi\_functions


\subsection{Madore's \( \psi \)}

This ordinal collapsing function is described in :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item https://en.wikipedia.org/wiki/Ordinal\_collapsing\_function 
\item http://quibb.blogspot.fr/2012/03/infinity-impredicative-ordinals.html 
\end{itemize}

The definition of this function uses the ordinal \( \Omega \) which is the least uncountable ordinal. 

\( C(\alpha) \) is the set of all ordinals constructible using only \( 0, 1, \omega, \Omega \) and addition, multiplication, exponentiation, and the function \( \psi \) (which will be defined later) restricted to ordinals smaller than \( \alpha \).

\( \psi(\alpha) \) is the smallest ordinal not in \( C(\alpha) \). 

The smallest ordinal not in C(0) is the limit of \( \omega, \omega^\omega, \omega^{\omega^\omega}, \ldots \) which is \( \varepsilon_0 \), so \( \psi(0) = \varepsilon_0 \). More generally, \( \psi(\alpha) = \varepsilon_\alpha \) for all \( \alpha < \zeta_0, \psi(\alpha) = \zeta_0 \) for \( \zeta_0 \leq a \leq \Omega \), and \( \psi(\Omega+\alpha) = \varepsilon_(\zeta_0+\alpha) \) for \( \alpha <= \zeta_1 \). 

Note that \( \psi(\Omega) = \zeta_0 \) is the least fixed point of \( \alpha \mapsto \varepsilon_\alpha \); we already saw such an equality when we introduced collapsing in the Veblen function.

The \( \psi \) function can be defined recursively by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi(0) = \varepsilon_0 \)

\item \( \psi(\alpha+1) = sup \lbrace \psi(\alpha), \psi(\alpha)^{\psi(\alpha)}, \psi(\alpha)^{\psi(\alpha)^{\psi(\alpha)}}, \ldots \rbrace \)

\item \( \psi(lim f) = lim (\psi \circ f) \)

\item \( \psi(Lim_1 f) = lim (n \mapsto (\psi \circ f)^n (\psi(0))) \)

\end{itemize}

Some examples of fundamental sequences (FS) are :

A FS of \( \omega \) is 0, 1, 2, 3, ...

A FS of \( \psi(0) \) is \( \omega, \omega^\omega, \omega^{\omega^\omega}, \ldots \).

A FS of \( \psi(\alpha+1) \) is \( \psi(\alpha), \psi(\alpha)^{\psi(\alpha)}, \psi(\alpha)^{\psi(\alpha)^{\psi(\alpha)}}, \ldots \).

A FS of \( \psi(f(\Omega)) \) is \( \psi(0), \psi(f(\psi(0))), \psi(f(\psi(f(\psi(0))))), \ldots \).

For example :

A FS of \( \psi(\Omega) \) is \( \psi(0), \psi(\psi(0)), \psi(\psi(\psi(0))), \ldots \).

A FS of \( \psi(\Omega \cdot 2) \) is \( \psi(0), \psi(\Omega+\psi(0)), \psi(\Omega+\psi(\Omega+\psi(0))), \ldots \).

A FS of \( \psi(\Omega^\Omega \cdot 3) \) is \( \psi(0), \psi(\Omega^\Omega \cdot 2+\Omega^{\psi(0)}), \psi(\Omega^\Omega \cdot 2+\Omega^{\Omega^\Omega \cdot 2+\Omega^{\psi(0)}}), \ldots \).

\bigskip

The limit \( \psi(\varepsilon_{\Omega+1}) \) of \( \psi(\Omega), \psi(\Omega^\Omega), \psi(\Omega^{\Omega^\Omega}), \ldots \) is the Bachmann-Howard ordinal. 

But \( \varepsilon_{\Omega+1} \) cannot be expressed in this system, because \( [ \varepsilon_\bullet ] \) does not belong to the functions used to define \( C(\alpha) \). We could add it, but that would not bring us very far. A better idea is to define a new function \( \psi_1 \) :

\begin{itemize}\item[\hspace{12pt}]

Let \( \psi_1(\alpha) \) be the smallest ordinal which cannot be expressed from all countable ordinals, \( \Omega \) and \( \Omega _{2} \) using sums, products, exponentials, and the \( \psi _{1} \) function itself (to previously constructed ordinals less than \( \alpha \)), where \( \Omega_2 \) is an ordinal which is greater than all the ordinals that will be constructed using \( \psi_1 \), for example we can take \( \Omega = \omega_1 \) (the least uncountable ordinal) and \( \Omega_2 = \omega_2 \), the least ordinal whose cardinal is strictly greater than the cardinal of \( \omega_1 \).

\end{itemize}

With this definition, we have \( \psi_1(0) = \varepsilon_{\Omega+1}, \psi_1(1) = \varepsilon_{\Omega+2} \), and more generally \( \psi_1(\alpha) = \varepsilon_{\Omega+1+\alpha} \).

\bigskip

We can define a hierarchy of functions \( \psi_n \), like explained in YouTube video 'Extremely Large Numbers 22" :

https://www.youtube.com/watch?v=O7EftYZEivo

(Note that here \( \Omega_n \) has been replaced by \( \Omega_{n+1} \) to be consistent with Madore's notations)

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi \) is associated to the set \( \lbrace 0, 1, \omega, \Omega \rbrace \)
\item \( \psi_0 = \psi \)
\item \( \psi_1 \) is associated to the set \( \lbrace 0, 1, \omega, \Omega, \Omega_2 \rbrace \)
\item \( \psi_1(0) = \varepsilon_{\Omega+1} \)
\item \( \psi_1(\alpha) = \varepsilon_{\Omega+1+\alpha} \)
\item \( \psi_1(\Omega_2) = \zeta_{\Omega+1} \)
\item \( \psi_1(\Omega_2 \cdot \alpha) = \zeta_{\Omega+1+\alpha} \)
\item \( \psi_1({\Omega_2}^2) = \eta_{\Omega+1} \)
\item \( \psi_1({\Omega_2}^\alpha) = \psi_{\alpha+1}(\Omega+1) \)
\item \( \psi_1({\Omega_1}^{\Omega_1}) = \Gamma_{\Omega+1} \)
\item \( \psi_2(0) = \varepsilon_{\Omega_2+1} \)
\item \( \psi_3(0) = \varepsilon_{\Omega_3+1} \)
\item \( \ldots \)
\end{itemize}

Note that to get a countable ordinal which interests us, we must nest successive calls of \( \psi_n \), for example \( \psi(\psi_1(\psi_2(\psi_3(0)))) \). We can simplify the notation by replacing the nested call \( \psi(\psi_1(\psi_2(\psi_3(0)))) \) by just \( \psi_3(0) \). This convention also permits to define for example \( \psi_\omega(0) \) as the limit or least upper bound of \( \psi(0), \psi_1(0), \psi_2(0), \psi_3(0), \ldots \). We can also define \( \psi_\alpha \) for any ordinal \( \alpha \). The limit of this notation, sometimes called \( \alpha_0 \), is the limit or least upper bound of \( \psi(0), \psi_{\psi(0)}(0), \psi_{\psi_{\psi(0)}(0)}(0), \ldots \). Using other notation systems, it is the limit of \( \psi(\Omega), \psi(\Omega_\Omega), \psi(\Omega_{\Omega_\Omega}), \ldots \).

See also :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item https://en.wikipedia.org/wiki/Ordinal\_collapsing\_function
\item https://www.youtube.com/watch?v=O7EftYZEivo
\item http://googology.wikia.com/wiki/Buchholz\%27s\_function
\item https://medium.com/@joshkerr/mind-blown-the-fast-growing-hierarchy-for-laymen-aka-enormous-numbers-d9a865c6443b
\end{itemize}

\subsection{Haskell implementation of Madore's \( \psi \)}

\begin{verbatim}

module Madore where

 ident x = x

 comp f g x = f (g x)

 data Ord 
  = Zero
  | Suc Ord
  | Lim Ord (Ord -> Ord)

 one = Suc Zero
 two = Suc one

 instance Show Ord where
  show Zero = "Zero"
  show (Suc a) = "(Suc " ++ show a ++ ")"
  show (Lim n f) = "(Lim " ++ show n ++ " " ++ 
   show (f Zero) ++ "," ++ show (f one) ++ "," ++ show (f two) ++",..." ++ ")"

 omega = Lim Zero ident
 omega_plus_one = Suc omega

 omega1 = Lim one ident
 omega2 = Lim two ident

 -- plus a b = b+a
 plus Zero b = b
 plus (Suc a) b = Suc (plus a b)
 plus (Lim n f) b = Lim n (\x -> plus (f x) b)

 -- times a b = b.a
 times Zero b = Zero
 times (Suc a) b = plus b (times a b)
 times (Lim n f) b = Lim n (\x -> times (f x) b)

 -- power a b = b^a
 power Zero b = one
 power (Suc a) b = times b (power a b)
 power (Lim n f) b = Lim n (\x -> power (f x) b)

 -- power of a funcion : fpower0 a f = f^a
 fpower Zero f = ident
 fpower (Suc a) f = comp f (fpower a f)
 fpower (Lim n g) f = \x -> Lim n (\y -> fpower (g y) f x)
 
 epsilon0 = fpower omega (\x -> power x omega) Zero

 -- Madore psi
 madore Zero = epsilon0
 madore (Suc a) = fpower omega (\x -> power x (madore a)) Zero
 madore (Lim Zero g) = Lim Zero (comp madore g)
 madore (Lim (Suc Zero) g) = Lim Zero (\n -> fpower n (comp madore g) (madore Zero))

\end{verbatim}

\subsection{Correspondence between Madore's \( \psi \) and other notations}

To distinguish between the different Veblen functions, let us call \( \varphi_F \) the Veblen function with finitely many variables, and \( \varphi_T \) the Veblen function with transfinitely many variables.

\( \varphi_F \) is a function that, when applied to a list of countable ordinals, gives a countable ordinal. A list of countable ordinals can be seen as a function that, when applied to a natural number, gives a countable ordinal, with the restriction that the result differs from 0 for finitely many integers. If we denote \( \omega \) the set of natural numbers and \( \Omega \) the set of countable ordinals, then this can be written : \( \varphi_F : (\omega \rightarrow \Omega) \rightarrow \Omega \). If we replace \( \alpha \rightarrow \beta \) by \( \beta^\alpha \), we get \( \Omega^{\Omega^\omega} \), and if we apply \( \psi \) to it, we get \( \psi(\Omega^{\Omega^\omega}) \), which is the small Veblen ordinal, the least ordinal that cannot be reached using \( \varphi_F \).

For \( \varphi_T \), the position of a variable is represented by a countable ordinal instead of a natural number, also with the restriction that finitely many variables differ from 0, so we have \( \varphi_T : (\Omega \rightarrow \Omega) \rightarrow \Omega \). If we replace \( \alpha \rightarrow \beta \) by \( \beta^\alpha \), we get \( \Omega^{\Omega^\Omega} \), and if we apply \( \psi \) to it, we get \( \psi(\Omega^{\Omega^\Omega}) \), which is the large Veblen ordinal, the least ordinal that cannot be reached using \( \varphi_T \).

\bigskip

A correspondence between Madore's \( \psi \) and other notations can be established by starting from \( \psi(0) = \varepsilon_0 \) and using the properties \( \psi(\alpha+1) = sup \lbrace \psi(\alpha), \psi(\alpha)^{\psi(\alpha)}, \psi(\alpha)^{\psi(\alpha)^{\psi(\alpha)}}, \ldots \rbrace \) and \( \psi(f(\Omega)) = \) least fixed point of \( \alpha \mapsto \psi(f(\alpha)) \).

This method gives the following correspondence :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi(0) = \varepsilon_0 = R_1 H suc\ 0 \)

\item \( \psi(1) = sup \lbrace \psi(0), \psi(0)^{\psi(0)}, \psi(0)^{\psi(0)^{\psi(0)}}, \ldots \rbrace = sup \lbrace \varepsilon_0, {\varepsilon_0}^{\varepsilon_0}, {\varepsilon_0}^{{\varepsilon_0}^{\varepsilon_0}}, \ldots \rbrace = \varepsilon_1 = R_1 (R_1 H) suc\ 0 \)

\item \( \psi(\alpha) = \varepsilon_\alpha = [suc \rightarrow R_1,0 \rightarrow H] (1+\alpha) suc\ 0 \)

\item \( \psi(\Omega) = \psi(H_1 suc\ 0) = sup \lbrace 0, \varepsilon_0, \varepsilon_{\varepsilon_0}, \ldots \rbrace = \zeta_0 = H [[suc \rightarrow R_1,0 \rightarrow H] \bullet suc\ 0] (suc\ 0) = sup \lbrace suc\ 0, R_1 H suc\ 0, R_1 H R_1 H suc\ 0, \ldots \rbrace = R_2 R_1 H suc\ 0 \)

\item \( \psi(\Omega+1) = \psi(suc\ (H_1 suc\ 0)) = sup \lbrace \zeta_0, {\zeta_0}^{\zeta_0}, {\zeta_0}^{{\zeta_0}^{\zeta_0}}, \ldots \rbrace = \varepsilon_{\zeta_0+1} \) (see proof below) \( = R_1 (R_2 R_1 H) suc\ 0 \)

\item \( \psi(\Omega+2) = \psi(suc\ (suc\ (H_1 suc\ 0))) = \varepsilon_{\zeta_0+2} = R_1 (R_1 (R_2 R_1 H)) suc\ 0 \)

\item \( \psi(\Omega+\alpha) = \varepsilon_{\zeta_0+\alpha} = [suc \rightarrow R1, 0 \rightarrow R_2 R_1 H] \alpha suc\ 0 \)

\item \( \psi(\Omega+\Omega) = \psi(\Omega \cdot 2) = \psi(H_1 suc\ (H_1 suc\ 0)) = \zeta_1 = H [[suc \rightarrow R1, 0 \rightarrow R_2 R_1 H] \bullet suc\ 0] (suc\ 0) = R_2 R_1 (R_2 R_1 H) suc\ 0 \)

\item \( \psi(\Omega \cdot (1+\alpha)) = \zeta_\alpha \)

\item \( \psi(\Omega \cdot \alpha) = \zeta'_\alpha = [suc \rightarrow R_2 R_1, 0 \rightarrow H] \alpha suc\ 0 \)

\item \( \psi(\Omega \cdot \Omega) = \psi(\Omega^2) = \psi (H_1 (H_1 suc) 0) = sup \lbrace 0, \zeta_0, \zeta_{\zeta_0}, \ldots \rbrace = \eta_0 = \varphi(3,0) = \varphi'(2,1) = H [[suc \rightarrow R_2 R_1, 0 \rightarrow H] \bullet suc\ 0] (suc\ 0) = R_2 (R_2 R_1) H suc\ 0 \)

\item \( \psi(\Omega^\alpha) = \varphi(1+\alpha,0) = \varphi'(\alpha,1) = [suc \rightarrow R_2, 0 \rightarrow R_1] \alpha suc\ 0 \)

\item \( \psi(\Omega^\alpha \cdot \beta) = \varphi'(\alpha,\beta) \)

\item \( \psi(\Omega^\Omega) = \psi(H_1 H_1 suc\ 0) = \Gamma_0 = \varphi(1,0,0) = \varphi'(1,0,1) = H [[suc \rightarrow R_2, 0 \rightarrow R_1] \bullet suc\ 0] (suc\ 0) = R_3 R_2 R_1 H suc\ 0 \) (Note that this confirms the Simmons - RHS0 correspondence conjecture ; note also that since \( \psi(\Omega) \) and before this point we have \( \psi(\alpha) = [H_1 \rightarrow R_2,suc \rightarrow R_1, 0 \rightarrow H]\ \alpha \ suc\ 0 \), but this does not work anymore from this point)

\item \( \psi(\Omega^{\Omega \cdot \alpha + \beta} \cdot \gamma) = \varphi'(\alpha,\beta,\gamma) = \varphi'_{\alpha,\beta}(\gamma) \)

\item \( \psi(\Omega^{\Omega^\Omega}) = LVO = R_4 R_3 R_2 R_1 H suc\ 0 \)
\item \( \psi(\varepsilon_{\Omega+1}) = BHO = R_{\omega \ldots 1} H suc\ 0 \) with \( \varepsilon_{\Omega+1} = sup \lbrace \Omega, \Omega^\Omega, \Omega^{\Omega^\Omega}, \ldots \rbrace \)


\item \( \psi(\varepsilon_{\Omega+1}+1) = sup \lbrace BHO, BHO^{BHO}, BHO^{BHO^{BHO}}, \ldots \rbrace = R_1 (R_{\omega \ldots 1} H) suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1}+2) = R_1 (R_1 (R_{\omega \ldots 1} H)) suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1}+\alpha) = [suc \rightarrow R_1, 0 \rightarrow R_{\omega \ldots 1} H] \alpha suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1}+\Omega) = H [[suc \rightarrow R_1, 0 \rightarrow R_{\omega \ldots 1} H] \bullet suc\ 0] (suc\ 0) = R_2 R_1 (R_{\omega \ldots 1} H) suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1}+\Omega+1) = R_1 (R_2 R_1 (R_{\omega \ldots 1} H)) suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1}+\Omega+2) = R_1 (R_1 (R_2 R_1 (R_{\omega \ldots 1} H))) suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1}+\Omega+\alpha) = [suc \rightarrow R_1, 0 \rightarrow R_2 R_1 (R_{\omega \ldots 1} H)] \alpha suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1}+\Omega+\Omega) = \psi(\varepsilon_{\Omega+1}+\Omega \cdot 2) = H [[suc \rightarrow R_1, 0 \rightarrow R_2 R_1 (R_{\omega \ldots 1} H)] \bullet suc\ 0] (suc\ 0) = R_2 R_1 (R_2 R_1 (R_{\omega \ldots 1} H) suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1}+\Omega \cdot \alpha) = [suc \rightarrow R_2 R_1, 0 \rightarrow R_{\omega \ldots 1} H] \alpha suc\ 0 \) 

\item \( \psi(\varepsilon_{\Omega+1}+\Omega \cdot \Omega) = \psi(\varepsilon_{\Omega+1}+\Omega^2) = H [[suc \rightarrow R_2 R_1, 0 \rightarrow R_{\omega \ldots 1} H] \bullet suc\ 0] (suc\ 0) = R_2 (R_2 R_1) (R_{\omega \ldots 1} H) suc\ 0 \) 

\item \( \psi(\varepsilon_{\Omega+1}+\Omega^\alpha) = [suc \rightarrow R_2, 0 \rightarrow R_1] \alpha (R_{\omega \ldots 1} H) suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1}+\Omega^\Omega) = H [[suc \rightarrow R_2, 0 \rightarrow R_1] \bullet (R_{\omega \ldots 1} H) suc\ 0] (suc\ 0) = R_3 R_2 R_1 (R_{\omega \ldots 1} H) suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1}+\Omega^{\Omega^\Omega}) = R_4 R_3 R_2 R_1 (R_{\omega \ldots 1} H) suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1}+\varepsilon_{\Omega+1}) = \psi(\varepsilon_{\Omega+1} \cdot 2) = R_{\omega \ldots 1} (R_{\omega \ldots 1} H) suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot \alpha) = [suc \rightarrow R_{\omega \ldots 1}, 0 \rightarrow H] \alpha suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot \Omega) = H [[suc \rightarrow R_{\omega \ldots 1}, 0 \rightarrow H] \bullet suc\ 0] (suc\ 0) = R_2 R_{\omega \ldots 1} H suc\ 0 \)


\item \( \psi(\varepsilon_{\Omega+1} \cdot \Omega+1) = R_1 (R_2 R_{\omega \ldots 1} H) suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot \Omega+\alpha) = [suc \rightarrow R_1, 0 \rightarrow R_2 R_{\omega \ldots 1} H] \alpha suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot \Omega+\Omega) = H [[suc \rightarrow R_1, 0 \rightarrow R_2 R_{\omega \ldots 1} H] \bullet suc\ 0] (suc\ 0) = R_2 R_1 (R_2 R_{\omega \ldots 1} H) suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot \Omega+\Omega+1) = R_1 (R_2 R_1 (R_2 R_{\omega \ldots 1} H)) suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot \Omega+\Omega+\alpha) = [suc \rightarrow R_1, 0 \rightarrow R_2 R_1 (R_2 R_{\omega \ldots 1} H)] \alpha suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot \Omega+\Omega+\Omega) = \psi(\varepsilon_{\Omega+1} \cdot \Omega+\Omega \cdot 2) = H [[suc \rightarrow R_1, 0 \rightarrow R_2 R_1 (R_2 R_{\omega \ldots 1} H)] \bullet suc\ 0] (suc\ 0) = R_2 R_1 (R_2 R_1 (R_2 R_{\omega \ldots 1} H)) suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot \Omega+\Omega \cdot \alpha) = [suc \rightarrow R_2 R_1, 0 \rightarrow R_2 R_{\omega \ldots 1} H] \alpha suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot \Omega+\Omega \cdot \Omega) = \psi(\varepsilon_{\Omega+1} \cdot \Omega+\Omega^2) = H [[suc \rightarrow R_2 R_1, 0 \rightarrow R_2 R_{\omega \ldots 1} H] \bullet suc\ 0] (suc\ 0) = R_2 (R_2 R_1) (R_2 R_{\omega \ldots 1} H) suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot \Omega+\Omega^\alpha) = [suc \rightarrow R_2, 0 \rightarrow R_1] \alpha (R_2 R_{\omega \ldots 1} H) suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot \Omega+\Omega^\Omega) = H [[suc \rightarrow R_2, 0 \rightarrow R_1] \bullet (R_2 R_{\omega \ldots 1} H) suc\ 0] (suc\ 0) = R_3 R_2 R_1 (R_2 R_{\omega \ldots 1} H) suc_ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot \Omega+\Omega^{\Omega^\Omega}) = R_4 R_3 R_2 R_1 (R_2 R_{\omega \ldots 1} H) suc_ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot \Omega+\varepsilon_{\Omega+1}) = \psi(\varepsilon_{\Omega+1} \cdot (\Omega+1)) = R_{\omega \ldots 1} (R_2 R_{\omega \ldots 1} H) suc_ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot (\Omega+2)) = R_{\omega \ldots 1} (R_{\omega \ldots 1} (R_2 R_{\omega \ldots 1} H)) suc_ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot (\Omega+\alpha)) = [suc \rightarrow R_{\omega \ldots 1}, 0 \rightarrow R_2 R_{\omega \ldots 1} H] \alpha suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot (\Omega+\Omega)) = \psi(\varepsilon_{\Omega+1} \cdot \Omega \cdot 2) = H [[suc \rightarrow R_{\omega \ldots 1}, 0 \rightarrow R_2 R_{\omega \ldots 1} H] \bullet suc\ 0] (suc\ 0) = R_2 R_{\omega \ldots 1} (R_2 R_{\omega \ldots 1} H) suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot \Omega \cdot \alpha) = [suc \rightarrow R_2 R_{\omega \ldots 1}, 0 \rightarrow  H] \alpha suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot \Omega \cdot \Omega) = \psi(\varepsilon_{\Omega+1} \cdot \Omega^2) = H [[suc \rightarrow R_2 R_{\omega \ldots 1}, 0 \rightarrow  H] \bullet suc\ 0] (suc\ 0) = R_2 (R_2 R_{\omega \ldots 1}) H suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot \Omega^\alpha) = [suc \rightarrow R_2, 0 \rightarrow R_{\omega \ldots 1}] \alpha H suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot \Omega^\Omega) = H [[suc \rightarrow R_2, 0 \rightarrow R_{\omega \ldots 1}] \bullet H suc\ 0] (suc\ 0) = R_3 R_2 R_{\omega \ldots 1} H suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot \Omega^{\Omega^\Omega}) = R_4 R_3 R_2 R_{\omega \ldots 1} H suc\ 0 \)

\item \( \psi(\varepsilon_{\Omega+1} \cdot \varepsilon_{\Omega+1}) = \psi({\varepsilon_{\Omega+1}}^2) = R_{\omega \ldots 2}  R_{\omega \ldots 1} H suc\ 0 = R_{\omega \cdot 2 \ldots 1} H suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^\alpha) = R_{\omega \cdot \alpha \ldots 1} H suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega) = H [R_{\omega \cdot \bullet \ldots 1} H suc\ 0] 0 = H [R_{\bullet \ldots 1} H suc\ 0] 0 = R^1_1 H suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega+1) = R_1 (R^1_1) H suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega+\alpha) = [suc \rightarrow R_1, 0 \rightarrow R^1_1 H] \alpha suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega+\Omega) = H [[suc \rightarrow R_1, 0 \rightarrow R^1_1 H] \bullet suc\ 0] (suc\ 0) = R_2 R_1 (R^1_1 H) suc\ 0 \)

\item \( \ldots \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega+\Omega^\Omega) = R_3 R_2 R_1 (R^1_1 H) suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega+\varepsilon_{\Omega+1}) = R_{\omega \ldots 1} (R^1_1 H) suc\ 0 \)

\item \( \ldots \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega+\varepsilon_{\Omega+1} \cdot 2) = R_{\omega \ldots 1} (R_{\omega \ldots 1} (R^1_1 H)) suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega+\varepsilon_{\Omega+1} \cdot \alpha) = [suc \rightarrow R_{\omega \ldots 1}, 0 \rightarrow R^1_1 H] \alpha suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega+\varepsilon_{\Omega+1} \cdot \Omega) = H [[suc \rightarrow R_{\omega \ldots 1}, 0 \rightarrow R^1_1 H] \bullet suc\ 0] (suc\ 0) = R_2 R_{\omega \ldots 1} (R^1_1 H) suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega+\varepsilon_{\Omega+1} \cdot \Omega+\varepsilon_{\Omega+1}) = \psi({\varepsilon_{\Omega+1}}^\Omega+\varepsilon_{\Omega+1} \cdot (\Omega+1)) = R_{\omega \ldots 1} (R_2 R_{\omega \ldots 1} (R^1_1 H)) suc\ 0 \)

\item \( \ldots \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega+\varepsilon_{\Omega+1} \cdot \Omega^\Omega) = R_3 R_2 R_{\omega \ldots 1} (R^1_1 H) suc\ 0 \)

\item \( \ldots \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega+\varepsilon_{\Omega+1}^2) = R_{\omega \ldots 2} R_{\omega \ldots 1} (R^1_1 H) suc\ 0 = R_{\omega \cdot 2 \ldots 1} (R^1_1 H) suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega+\varepsilon_{\Omega+1}^\alpha) = R_{\omega \cdot \alpha \ldots 1} (R^1_1 H) suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega+\varepsilon_{\Omega+1}^\Omega) = \psi({\varepsilon_{\Omega+1}}^\Omega \cdot 2) = H [R_{\bullet \ldots 1} (R^1_1 H) suc\ 0] 0 = R^1_1 (R^1_1 H) suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega \cdot \alpha) = [suc \rightarrow R^1_1, 0 \rightarrow H] \alpha suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega \cdot \Omega) = H [[suc \rightarrow R^1_1, 0 \rightarrow H] \bullet suc\ 0] (suc\ 0) = R_2 R^1_1 H suc\ 0 \)

\item \( \ldots \)

\item \( \psi(\ldots \cdot \Omega) = R_2 \ldots H suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega \cdot \Omega^2) = R_2 (R_2 R^1_1) H suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega \cdot \Omega^\alpha) = [suc \rightarrow R_2, 0 \rightarrow R^1_1] \alpha H suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega \cdot \Omega^\Omega) = H [[suc \rightarrow R_2, 0 \rightarrow R^1_1] \bullet H suc\ 0] (suc\ 0) = R_3 R_2 R^1_1 H suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega \cdot \varepsilon_{\Omega+1}) = \psi({\varepsilon_{\Omega+1}}^{\Omega+1}) = R_{\omega \ldots 2} R^1_1 H suc\ 0 \)

\item \( \ldots \)

\item \( \psi(\ldots \cdot \varepsilon_{\Omega+1}) = R_{\Omega \ldots \ldots} \ldots H suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega \cdot \varepsilon_{\Omega+1}^2) = R_{\omega \ldots 3} R_{\omega \ldots 2} R^1_1 H suc\ 0 = R_{\omega \cdot 2 \ldots 2} R^1_1 H suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^\Omega \cdot \varepsilon_{\Omega+1}^\Omega) = \psi(({\varepsilon_{\Omega+1}}^\Omega)^2) = \psi(\varepsilon_{\Omega+1}^{\Omega \cdot 2}) = R^1_2 R^1_1 H suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^{\Omega \cdot \alpha}) = R^1_{\alpha \ldots 1} H suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^{\Omega^2} = H [R^1_{\bullet \ldots 1} H suc\ 0] 0 = R^2_1 H suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^{\Omega^\alpha} = R^\alpha_1 H suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^{\Omega^\Omega} = H [R^\bullet_1 H suc\ 0] 0 = R^{1,0}_1 H suc\ 0 = R^\Omega_1 H suc\ 0 = R_{\Omega^\Omega} H suc\ 0 = R^{H_1 suc\ 0}_1 H suc\ 0 = R_{H_1 H_1 suc\ 0} H suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+1}}^{\varepsilon_{\Omega+1}}) = R_{\varepsilon_{\Omega+1}} H suc\ 0 = R_{R_1 H_1 suc\ 0} H suc\ 0 \)

\item \( \psi({\varepsilon_{\Omega+2}}) = R^{H [R^\bullet_1 H_1 suc\ 0] 0}_1 H suc\ 0 \)

\item \( \ldots \)

\end{itemize}

Proof of \( sup \lbrace \zeta_0, {\zeta_0}^{\zeta_0}, {\zeta_0}^{{\zeta_0}^{\zeta_0}}, \ldots \rbrace = \varepsilon_{\zeta_0+1} \) :

We have \( \varepsilon_{\alpha+1} = sup \lbrace \varepsilon_\alpha+1, \omega^{\varepsilon_\alpha+1}, \omega^{\omega^{\varepsilon_\alpha+1}}, \ldots \rbrace \), which gives for \( \zeta_0 : \varepsilon_{\zeta_0+1} = sup \lbrace \varepsilon_{\zeta_0}+1, \omega^{\varepsilon_{\zeta_0}+1}, \omega^{\omega^{\varepsilon_{\zeta_0}+1}}, \ldots \rbrace \)
so we have to prove \( sup \lbrace \varepsilon_{\zeta_0}+1, \omega^{\varepsilon_{\zeta_0}+1}, \omega^{\omega^{\varepsilon_{\zeta_0}+1}}, \ldots \rbrace = sup \lbrace \zeta_0, {\zeta_0}^{\zeta_0}, {\zeta_0}^{{\zeta_0}^{\zeta_0}}, \ldots \rbrace \).

We have already seen concerning Veblen functions that the ordinals respectively limits of the fondamental sequence whose n-th term is \(\varepsilon_0^{\varepsilon_0^{\vdots^{{\varepsilon_0}^\omega}}} \) and the one whose n-th term is \( \varepsilon_0^{\varepsilon_0^{\vdots^{\varepsilon_0^{\varepsilon_0}}}} \) is the same, the least fixed point of the function \( \alpha \mapsto {\varepsilon_0}^\alpha \), which is greater than \( \omega \) and also than \( \varepsilon_0 \).

For a similar reason, we also have \( sup \lbrace \zeta_0, {\zeta_0}^{\zeta_0}, {\zeta_0}^{{\zeta_0}^{\zeta_0}}, \ldots \rbrace = sup \lbrace {\zeta_0}^\omega, {\zeta_0}^{{\zeta_0}^\omega}, {\zeta_0}^{{\zeta_0}^{{\zeta_0}^\omega}}, \ldots \rbrace \).

So we have to prove \(  sup \lbrace \varepsilon_{\zeta_0}+1, \omega^{\varepsilon_{\zeta_0}+1}, \omega^{\omega^{\varepsilon_{\zeta_0}+1}}, \ldots \rbrace = sup \lbrace {\zeta_0}^\omega, {\zeta_0}^{{\zeta_0}^\omega}, {\zeta_0}^{{\zeta_0}^{{\zeta_0}^\omega}}, \ldots \rbrace \).

We can prove this by proving \( \omega^{\omega^{\vdots^{\omega^{\omega^{\varepsilon_{\zeta_0}+1}}}}} = \zeta_0^{\zeta_0^{\vdots^{{\zeta_0}^\omega}}} \) in a similar way we proved \( \omega^{\omega^{\vdots^{\omega^{\omega^{\varepsilon_0+1}}}}} = \varepsilon_0^{\varepsilon_0^{\vdots^{{\varepsilon_0}^\omega}}} \), where \( \alpha^{\vdots^{\alpha^\beta}} \) represents an "exponential tower" with \( \alpha \) repeated n times.

For n = 0, we have : 

\( \omega^{\omega^{\varepsilon_{\zeta_0}+1}} = \omega^{\omega^{\zeta_0+1}} = \omega^{\omega^{\zeta_0} \cdot \omega} = \omega^{\zeta_0 \cdot \omega} = (\omega^{\zeta_0})^\omega = {\zeta_0}^\omega \).

Suppose we have \( \omega^{\omega^{\vdots^{\omega^{\omega^{\varepsilon_{\zeta_0}+1}}}}} = \zeta_0^{\zeta_0^{\vdots^{{\zeta_0}^\omega}}} \).

We must prove the equality for n+1, which can be written \( \omega^{\omega^{\omega^{\vdots^{\omega^{\omega^{\varepsilon_{\zeta_0}+1}}}}}} = {\zeta_0}^{{\zeta_0}^{{\zeta_0}^{\vdots^{{\zeta_0}^\omega}}}} \). 

We have \( \omega^{\omega^{\omega^{\vdots^{\omega^{\omega^{\varepsilon_{\zeta_0}+1}}}}}} = \omega^{{\zeta_0}^{{\zeta_0}^{\vdots^{{\zeta_0}^\omega}}}} \) (by our hypothesis) \( = \omega^{{\zeta_0}^{1+{\zeta_0}^{\vdots^{{\zeta_0}^\omega}}}} \) (for the same reason than \( 1+\omega = \omega \), see above) \( = \omega^{{\zeta_0} \cdot {\zeta_0}^{{\zeta_0}^{\vdots^{{\zeta_0}^\omega}}}} = (\omega^{\zeta_0})^{{\zeta_0}^{{\zeta_0}^{\vdots^{{\zeta_0}^\omega}}}} = {\zeta_0}^{{\zeta_0}^{{\zeta_0}^{\vdots^{{\zeta_0}^\omega}}}} \). QED.

In RHSZ notation, this corresponds to the equality \( H (R_2 R_1 H) H \ldots H suc\ 0 = H (R_2 R_1 H) (R_2 R_1 H) \ldots (R_2 R_1 H) suc\ 0 = R_1 (R_2 R_1 H) suc\ 0 \).

\subsection{Comparison between Buchholz \( \psi_0 \) and Madore's \( \psi \)}

These ordinal collapsing function are very similar. In both cases, we define a set containing all ordinals which can be built from some starting ordinals and some operations, and we consider the least ordinal which does not belong to this set. But the starting ordinals are not the same : 1 for Buchholz \( \psi_0 \), and 0, 1, \( \omega \) and \( \Omega \) for Madore's \( \psi \). The operations also differs : only addition for Buchholz, but addition, multiplication and exponentiation for Madore. 

\bigskip

Here is a comparison of some of the main features of these two ordinal collapsing functions.

\bigskip

\begin{tabular}{|c|c|c|c|c|c|c|c|} \hline

Buchholz \(\psi_0\)& \(C_0(\alpha)\) generated by & \(\psi_0(0)=1\)         & \(\psi_0(1)=\omega\)    & \(\psi_0(\alpha+1)\)           &\(\psi_0(\alpha+\beta)\)             & \(\psi_0(\alpha)=\omega^\alpha\)    &\(\psi_0(\Omega)=\varepsilon_0\)\\
                   & 1, +,\(\psi_\mu(\xi)\)       &                         &                         & \(=\psi_0(\alpha)\cdot\omega\)&\(=\psi_0(\alpha)\cdot\omega^\beta\)& if \(\alpha<\varepsilon_0\)         &                                \\
                   & where \( \mu < \omega \)     &                         &                         &                                &                                     &                                     &                                \\
                   & and \( \xi < \alpha \)       &                         &                         &                                &                                     &                                     &                                \\ 
\hline

Madore's \(\psi\)  & \(C(\alpha)\) generated by   &\(\psi(0)=\varepsilon_0\)&\(\psi(1)=\varepsilon_1\)& \(\psi(\alpha+1)\)             &                                     &\(\psi_0(\alpha)=\varepsilon_\alpha\)& \(\psi_0(\Omega)=\zeta_0\)     \\
                   & \(0,1,\omega,\Omega,\)       &                         &                         & \(=sup\lbrace\psi(\alpha)^{\vdots^{\psi(\alpha)}}\rbrace\) 
                                                                                                                                       &                                     & if \(\alpha<\zeta_0\)               &                                \\
                   & \(+,\cdot,exp.,\psi(\xi)\)  &                         &                         &                                &                                     &                                     &                                \\
                   & where \( \xi < \alpha \)     &                         &                         &                                &                                     &                                     &                                \\
\hline
													
\end{tabular}

\subsection{A recursively defined rationalized variant of Madore's \( \psi \) function}

We have already seen that the recursive approach of ordinal collapsing functions consists, instead of defining ordinal collapsing functions by taking the least ordinal that cannot be constructed using a given set of ordinals and operations, in defining it recursively according to the value of the variable.

Let us call \( \psi' \) a new collapsing function similar to Madore's \( \psi \). 

We have already seen this function in the section concerning the recursive approach of ordinal collapsing functions, but we will now see how we can retrieve it from Madore's \( \psi \), with the goal of producing a rationalized variant of it.

First, to be consistent with the rationalized functions previously defined, we would like to have \( \psi'(\alpha) = \varepsilon'_\alpha \) instead of \( \psi(\alpha) = \varepsilon_\alpha \). So \( \psi'(0) \) must be equal to \( \varepsilon'_0 \). As we have \( \varepsilon'_{\alpha+1} = sup \lbrace \varepsilon'_\alpha, {\varepsilon'_\alpha}^{\varepsilon'_\alpha}, {\varepsilon'_\alpha}^{{\varepsilon'_\alpha}^{\varepsilon'_\alpha}}, \ldots \rbrace \), it is consistent to define \( \varepsilon'_0 = \omega \), because \( \varepsilon'_1 = \varepsilon_0 = sup \lbrace \omega, \omega^\omega, \omega^{\omega^\omega}, \ldots \rbrace \).

Then we can define \( \psi'(\alpha+1) \) as the limit or least upper bound of \( \psi'(\alpha), \psi'(\alpha)^{\psi'(\alpha)}, \psi'(\alpha)^{\psi'(\alpha)^{\psi'(\alpha)}}, \ldots \).

Then we can define canonically \( \psi'(lim(f)) = lim(n \mapsto \psi'(f(n)) \).

Then we must define \( \psi' \) for the case when it collapses an uncountable ordinal, in such a way that \( \psi'(f(\Omega)) \), for f correctly defined, is the least fixed point of \( \psi' \circ f \), which can be written for example \( sup \lbrace 1, \psi'(f(1)), \psi'(f(\psi'(f(1)))), \ldots \rbrace \)  as we previously saw. In RHS0 notation, if we write \( \Omega = H_1 suc\ 0 \), this gives : \( \psi (H_1 x y z_1 \ldots z_n) = H [\psi([suc \rightarrow x, 0 \rightarrow y] \bullet z_1 \ldots z_n)] (suc\ 0) \).

\bigskip

In summary, we can define the \( \psi' \) function by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi'(0) = \omega \)

\item \( \psi'(\alpha+1) = sup \lbrace \psi'(\alpha), \psi'(\alpha)^{\psi'(\alpha)}, \psi'(\alpha)^{\psi'(\alpha)^{\psi'(\alpha)}}, \ldots \rbrace \)

\item  \( \psi'(lim(f)) = lim(n \mapsto \psi'(f(n)) \)

\item \( \psi' (H_1 x y z_1 \ldots z_n) = H [\psi'([suc \rightarrow x, 0 \rightarrow y] \bullet z_1 \ldots z_n)] (suc\ 0) \)

\end{itemize}

Note that this definition does not give exactly the same function as Madore's \( \psi \), apart from the shift of one unit for finite values due to rationalization : for example, we have \( \psi(\zeta_0+1) = \zeta_0 \), but \( \psi'(\zeta_0+1) = sup \lbrace \psi'(\zeta_0), \psi'(\zeta_0)^{\psi'(\zeta_0)}, \psi'(\zeta_0)^{\psi'(\zeta_0)^{\psi'(\zeta_0)}}, \ldots \rbrace = \varepsilon_{\zeta_0+1} = \varepsilon'_{\zeta'_1+1} \).

\bigskip

Something similar can be done with Buchholz function, defining :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi'(0) = 1 \)

\item \( \psi'(\alpha+1) = \psi'(\alpha) \cdot \omega \)

\item \( \psi'(lim(f)) = lim(n \mapsto \psi'(f(n)) \)

\item \( \psi' (H_1 x y z_1 \ldots z_n) = H [\psi'([suc \rightarrow x, 0 \rightarrow y] \bullet z_1 \ldots z_n)] (suc\ 0) \)

\end{itemize}

\bigskip

As we have already seen, other ordinal collapsing functions can be defined similarily by defining the value of \( \psi'(0) \) and of \( \psi'(\alpha+1) = f(\psi'(\alpha)) \) for some function f.

\bigskip

\begin{comment}
To define notations based on these functions, we also need a way to express the ordinals to which they are applied. This can be done by introducing in the notation the operations which permit to express them, like addition, multiplication, exponentiation. This can also be done by introducing, like we have seen for Madore's \( \psi \), a function \( \psi'_1 \) which generates these expressions, defined in a similar way to \( \psi' \), but starting for example with \( \psi'(0) = \Omega \).

\bigskip

Here are some example of such ordinal collapsing functions :

\bigskip


\begin{tabular}{|c|c|c|c|c|c|c|c|c|} \hline

Corresponding      &                            & \( \psi'(0) \)     & \( \psi'(\alpha+1) \)         & \( \psi'(1) \)     & \( \psi'(\alpha+\beta) \)          & \( \psi'(\alpha) \)        & \( \psi'(\Omega) \)&\(\psi'(\Omega+1)\)     \\
"traditional"      &                            &                    &                               &                    &                                    & for sufficiently           &                    &                        \\
OCF                &                            &                    &                               &                    &                                    & small values               &                    &                        \\
\hline
None               &                            & 1                  & \( \psi'(\alpha)+1 \)         & 2                  & \( \psi'(\alpha)+\beta \)          & \( \alpha+1 \)             & \( \omega \)       & \( \omega + 1 \)       \\
\hline
                   & \(C(\alpha)\) generated    & 1                  & \( \psi'(\alpha)+\omega \)    & \( \omega \)       &\( \psi'(\alpha)+\omega\cdot\beta\)& \( \omega\cdot\alpha \)   & \( \omega^\omega \)&\(\omega^\omega+\omega\)\\
                   & by 1, suc, \(\psi(\xi) \)  &                    &                               &                    &                                    &                            &                    &                        \\
                   & where \( \xi < \alpha \)   &                    &                               &                    &                                    &                            &                    &                        \\
\hline
Buchholz \(\psi_0\)& \(C_0(\alpha)\) generated  & 1                  & \( \psi'(\alpha)\cdot\omega\)& \( \omega \)       &\( \psi'(\alpha)\cdot\omega^\beta\)& \( \omega^\alpha \)        & \( \varepsilon_0\) &\(\varepsilon_O\cdot\omega\)\\
                   & by 1, +,\(\psi_\mu(\xi)\)  &                    &                               &                    &                                    & if \(\alpha<\varepsilon_0\)&                    &\(=\omega^{\varepsilon_0+1}\)\\
                   & where \( \mu < \omega \)   &                    &                               &                    &                                    &                            &                    &                        \\
                   & and \( \xi < \alpha \)     &                    &                               &                    &                                    &                            &                    &                        \\
\hline
                   &                            & \( \omega \)       & \( sup\lbrace\psi'(\alpha)^{\vdots^{\psi'(\alpha)}}\rbrace \)
                                                                                                     & \( \varepsilon_0 \)&                                    & \( \varepsilon'_\alpha \)  & \( \zeta_0 \)      &                        \\
                   &                            &                    &                               &                    &                                    & if \(\alpha<\zeta_0\)      &                    &                        \\
                   &                            &                    &                               &                    &                                    &                            &                    &                        \\
                   &                            &                    &                               &                    &                                    &                            &                    &                        \\
\hline
Madore's \(\psi\)  & \(C(\alpha)\) generated    & \( \varepsilon_0 \)& \( sup\lbrace\psi'(\alpha)^{\vdots^{\psi'(\alpha)}}\rbrace \)             
                                                                                                     & \( \varepsilon_1 \)&                                    & \( \varepsilon_\alpha \)   & \( \zeta_0 \)      &\(\varepsilon_{\zeta_0+1}\)\\
                   & by \(0,1,\omega,\Omega,\)  &                    &  
                                                                                                     &                    &                                    & if \(\alpha<\zeta_0\)      &                    &                        \\
                   & \(+,\cdot,exp.,\psi(\xi)\)&                    &                               &                    &                                    &                            &                    &                        \\
                   & where \( \xi < \alpha \)   &                    &                               &                    &                                    &                            &                    &                        \\
\hline
													
\end{tabular}

\bigskip



\begin{tabular}{|c|c|c|c|c|c|}
\hline
Corresponding             & None                      &                                       & Buchholz \(\psi_0\)             &                                                               & Madore's \(\psi\)                \\ 
"traditional" OCF         &                           &                                       &                                 &                                                               &                                  \\ 
\hline    
                          &                           & \( C(\alpha) \) generated             & \( C_0(\alpha) \) generated     &                                                               & \( C(\alpha) \) generated        \\
                          &                           & by 1, suc, \( \psi(\xi) \)            & by 1, +, \( \psi_\mu(\xi) \)    &                                                               & by \( 0, 1, \omega, \Omega, \)   \\
                          &                           & where \( \xi < \alpha \)              & where \( \mu < \omega \)        &                                                               & \( +, \cdot, exp., \psi(\xi) \) \\
                          &                           &                                       & and \( \xi < \alpha \)          &                                                               & where \( \xi < \alpha \)         \\ 
\hline
\( \psi'(0) \)            & 1                         & 1                                     & 1                               & \( \omega \)                                                  & \( \varepsilon_0 \)              \\ 
\hline
\( \psi'(\alpha+1) \)     & \( \psi'(\alpha)+1 \)     & \( \psi'(\alpha)+\omega \)            & \( \psi'(\alpha)\cdot\omega \) & \( sup\lbrace\psi'(\alpha)^{\vdots^{\psi'(\alpha)}}\rbrace \) & \( sup\lbrace\psi'(\alpha)
                                                                                                                                                                                                  ^{\vdots^{\psi'(\alpha)}}\rbrace \) \\
\hline
\( \psi'(1) \)            & 2                         & \( \omega \)                          & \( \omega \)                    & \( \varepsilon_0 \)                                           & \( \varepsilon_1 \)              \\
\hline
\( \psi'(\alpha+\beta) \) & \( \psi'(\alpha)+\beta \) & \( \psi'(\alpha)+\omega\cdot\beta \) & \( \psi'(\alpha)+\omega^\beta \)&                                                               &                                  \\
\hline
\( \psi'(\alpha) \) for   & \( 1+\alpha \)            & \( \omega \cdot \alpha \)            & \( \omega^\alpha \)             & \( \varepsilon'_\alpha \)                                     & \( \varepsilon_\alpha \)         \\
sufficiently small values &                           &                                       & if \( \alpha < \varepsilon_0 \) & if \( \alpha < \zeta_0 \)                                     & if \( \alpha < \zeta_0 \)        \\
\hline
\( \psi'(\omega) \)       & \( \omega \)              & \( \omega^2 \)                        & \( \omega^\omega \)             & \( \varepsilon_\omega \)                                      & \( \varepsilon_\omega \)         \\
\hline
\( \psi'(\Omega) \)       & \( \omega \)              & \( \omega^\omega \)                   & \( \varepsilon_0 \)             & \( \zeta_0 \)                                                 & \( \zeta_0 \)                    \\
\hline
\( \psi'(\Omega+1) \)     & \( \omega+1 \)            & \( \omega^\omega+\omega \)            & \( \varepsilon_0\cdot\omega \) & \( \varepsilon_{\zeta_0+1} \)                                 & \( \varepsilon_{\zeta_0+1} \)    \\
                          &                           &                                       & \( = \omega^{\varepsilon_0+1} \)&                                                               &                                  \\
\hline
\( \psi'(\Omega\cdot 2)\)& \( \omega^2 \)            & \( \omega^{\omega+1} \)               & \( \varepsilon_1 \)             & \( \zeta_1 \)                                                 & \( \zeta_1 \)                    \\
\hline
\( \psi'(\Omega^2) \)     & \( \varepsilon_0 \)       & \( \varepsilon_0 \)                   & \( \zeta_0 \)                   & \( \eta_0 \)                                                  & \( \eta_0 \)                     \\
\hline
\( \psi'(\Omega^\Omega) \)& \( \Gamma_0 \)            & \( \Gamma_0 \)                        & \( \Gamma_0 \)                  & \( \Gamma_0 \)                                                & \( \Gamma_0 \)                   \\
\hline
\( \psi'_1(0) \)          & \( \Omega \)              & \( \Omega \)                          & \( \Omega \)                    & \( \varepsilon_{\Omega+1} \)                                  & \( \varepsilon_{\Omega+1} \)     \\
\hline
\( \psi'_1(\alpha+1) \)   & \( \psi'_1(\alpha)+1 \)   & \( \psi'_1(\alpha)+\omega \)          & \(\psi'_1(\alpha)\cdot\omega\) &\(sup\lbrace\psi'_1(\alpha)^{\vdots^{\psi'_1(\alpha)}}\rbrace\)& \( sup\lbrace\psi'_1(\alpha)
                                                                                                                                                                                                  ^{\vdots^{\psi'_1(\alpha)}}\rbrace \) \\
\hline
\( \psi'_1(1) \)          & \( \Omega+1 \)            & \( \Omega+\omega \)                   & \( \Omega\cdot\omega \)        & \( \varepsilon_{\Omega+2} \)                                  & \( \varepsilon_{\Omega+2} \)     \\
                          &                           &                                       & \( = \omega^{\Omega+1} \)       &                                                               &                                  \\
\hline
\( \psi'_1(\alpha) \)     & \( \Omega+\alpha \)       & \( \Omega+\omega\cdot\alpha \)       & \( \Omega\cdot\omega^\alpha \) & \( \varepsilon_{\Omega+1+\alpha} \)                           & \( \varepsilon_{\Omega+1+\alpha} \) \\
                          &                           &                                       & \( = \omega^{\Omega+\alpha} \)  &                                                               &                                  \\
\hline
\( \psi'_1(\omega) \)     & \( \Omega+\omega \)       & \( \Omega+\omega^2 \)                 & \( \Omega\cdot\omega^\omega \) & \( \varepsilon_{\Omega+\omega} \)                             & \( \varepsilon_{\Omega+\omega} \) \\
                          &                           &                                       & \( = \omega^{\Omega+\omega} \)  &                                                               &                                  \\
\hline
\( \psi'_1(\Omega) \)     & \( \Omega\cdot\omega \)  & \( \Omega\cdot\omega \)               & \( \Omega^2 \)                 & \( \varepsilon_{\Omega \cdot 2} \)                           & \( \varepsilon_{\Omega \cdot 2} \) \\
\hline
\end{tabular}

\bigskip



With more details, the function defined by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi'(0) = 1 \)
\item \( \psi'(\alpha+1) = \psi'(\alpha)+1 \)
\end{itemize}

has the following properties :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi'(\alpha+\beta)=\psi'(\alpha)+\beta \)
\item \( \psi'(\alpha) = 1+\alpha \)
\end{itemize}

\( \psi'(\Omega) \) is the limit or least upper bound of :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( 0 \)
\item \( \psi'(0) = 1 \)
\item \( \psi'(\psi'(0)) = \psi'(1) = 2 \)
\item \( \ldots \)
\end{itemize}

which is \( \omega \).

Then we have :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi'(\Omega+1) = \omega+1 \)
\item \( \psi'(\Omega+\alpha) = \omega+\alpha \)
\item \( \psi'(\Omega+\Omega) = \psi'(\Omega \cdot 2) = sup \lbrace 0, \psi'(\Omega)=\omega, \psi'(\Omega+\omega)=\omega+\omega=\omega \cdot 2, \ldots \rbrace = \omega \cdot \omega = \omega^2 \)
\item \( \psi'(\Omega \cdot 2 + \Omega) = \psi'(\Omega \cdot 3) = sup \lbrace 0, \psi'(\Omega \cdot 2) = \omega^2, \psi'(\Omega \cdot 2 + \omega^2) = \omega^2+\omega^2 = \omega^2 \cdot 2, \ldots \rbrace = \omega^2 \cdot \omega = \omega^3 \)
\item \( \psi'(\Omega \cdot \alpha) = \omega^\alpha \)
\item \( \psi'(\Omega \cdot \Omega) = \psi'(\Omega^2) = sup \lbrace 1, \psi_0(\Omega) = \omega, \psi_0(\Omega \cdot \omega = \omega^\omega, \ldots \rbrace = \varepsilon_0 = \varphi(1,0) = \varphi'(0,1) \)
\item \( \psi'(\Omega^2+\alpha) = \varepsilon_0+\alpha \)
\item \( \psi'(\Omega^2+\Omega) = sup \lbrace 0, \psi'(\Omega^2)=\varepsilon_0, \psi'(\Omega^2+\varepsilon_0) = \varepsilon_0 \cdot 2, \ldots \rbrace = \varepsilon_0 \cdot \omega \)
\item \( \psi'(\Omega^2+\Omega+\alpha = \varepsilon_0 \cdot \omega + \alpha \)
\item \( \psi'(\Omega^2+\Omega+\Omega) = \psi'(\Omega^2+\Omega \cdot 2) = sup \lbrace 0, \psi'(\Omega^2+\Omega) = \varepsilon_0 \cdot \omega, \psi'(\Omega^2+\Omega+\varepsilon_0 \cdot \omega) = \varepsilon_0 \cdot \omega \cdot 2, \ldots \rbrace = \varepsilon_0 \cdot \omega^2 \)
\item \( \psi'(\Omega^2+\Omega \cdot \alpha) = \varepsilon_0 \cdot \omega^\alpha \)
\item \( \psi'(\Omega^2+\Omega \cdot \Omega) = \psi'(\Omega^2+\Omega^2) = \psi'(\Omega^2 \cdot 2) = sup \lbrace 0, \psi'(\Omega^2) = \varepsilon_0, \psi'(\Omega^2+\Omega \cdot \varepsilon_0) = \varepsilon_0 \cdot \omega^\varepsilon_0 = {\varepsilon_0}^2, \psi'(\Omega^2+\Omega \cdot {\varepsilon_0}^2 = \varepsilon_0 \cdot \omega^{{\varepsilon_0}^2} = \varepsilon_0 \cdot \omega^{\varepsilon_0 \cdot \varepsilon_0} = \varepsilon_0 \cdot (\omega^{\varepsilon_0})^{\varepsilon_0} = \varepsilon_0 \cdot {\varepsilon_0}^{\varepsilon_0}, \ldots = \varepsilon_1 = \varphi(1,1) = \varphi'(0,2) \)
\item \( \psi'(\Omega^2 \cdot \alpha) = \varphi'(0,\alpha) \)
\item \( \psi'(\Omega^2 \cdot \Omega) = \psi'(\Omega^3) = sup \lbrace 1, \psi'(\Omega^2) = \varepsilon_0 = \varphi(1,0) = \varphi'(0,1), \psi'(\Omega^2 \cdot \varepsilon_0) = \varphi'(0,\varphi'(0,1)), \ldots \rbrace = \varphi'(1,1) = \zeta_0 = \varphi(2,0) \)
\item \( \psi'(\Omega^{2+\alpha} = \varphi(1+\alpha,0) = \varphi'(\alpha,1) \)
\item \( \psi'(\Omega^\Omega) = sup \lbrace 1, \psi'(\Omega) = \omega, \psi'(\Omega^\omega) = \varphi'(\omega,1), \psi'(\Omega^{\varphi'(\omega,1)}) = \varphi'(\varphi'(\omega,1),1), \ldots \rbrace = \Gamma_0 \)
\item \( \ldots \)
\end{itemize}

\bigskip

The function defined by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi'(0) = 1 \)
\item \( \psi'(\alpha+1) = \psi'(\alpha)+\omega \)
\end{itemize}

has the following properties :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi'(\alpha+\beta)=\psi'(\alpha)+\omega \cdot \beta \)
\item \( \psi'(\alpha) = \omega \cdot \alpha \)
\end{itemize}

\( \psi'(\Omega) \) is the limit or least upper bound of :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( 0 \)
\item \( \psi'(0) = 1 \)
\item \( \psi'(\psi'(0)) = \psi'(1) = \omega \)
\item \( \psi'(\omega) = \omega^2 \)
\item \( \ldots \)
\end{itemize}

which is \( \omega^\omega \).

Then we have :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi'(\Omega+1) = \omega^\omega+\omega \)
\item \( \psi'(\Omega+\alpha) = \omega^\omega+\omega \cdot \alpha \)
\item \( \psi'(\Omega+\Omega) = sub \lbrace 0, \psi'(\Omega) = \omega^\omega, \psi'(\Omega+\psi'(\Omega)) = \psi'(\Omega+\omega^\omega) = \omega^\omega+\omega \cdot \omega^\omega = \omega^\omega \cdot 2, \ldots \rbrace = \omega^\omega \cdot \omega = \omega^{\omega+1} \)
\item \( \psi'(\Omega \cdot 2 + \alpha) = \psi'(\Omega \cdot 2) + \omega \cdot \alpha = \omega^{\omega+1} + \omega \cdot \alpha \)
\item \( \psi'(\Omega \cdot 2 + \Omega) = \psi'(\Omega \cdot 3) = sup \lbrace 0, \psi'(\Omega \cdot 2) = \omega^{\omega+1}, \psi'(\Omega \cdot 2 + \omega^{\omega+1}) = \omega^{\omega+1} + \omega \cdot \omega^{\omega+1} = \omega^{\omega+1} \cdot 2, \ldots \rbrace = \omega^{\omega+1} \cdot \omega = \omega^{\omega+2} \)
\item \( \psi'(\Omega \cdot (1+\alpha)) = \omega^{\omega+\alpha} \)
\item \( \psi'(\Omega \cdot \Omega) = \psi'(\Omega^2) = sup \lbrace 1, \psi'(\Omega) = \omega^\omega, \psi'(\Omega \cdot \omega^\omega) = \omega^{\omega+\omega^\omega} = \omega^{\omega^\omega}, \ldots \rbrace = \varepsilon_0 \)
\item \( \psi'(\Omega^2+\alpha) = \varepsilon_0+\omega \cdot \alpha \)
\item \( \psi'(\Omega^2 + \Omega) = sup \lbrace 0, \psi'(\Omega^2) = \varepsilon_0, \psi'(\Omega^2+\varepsilon_0) = \varepsilon_0+\omega \cdot \varepsilon_0 = \varepsilon_0 \cdot 2, \ldots \rbrace = \varepsilon_0 \cdot \omega \)
\item \( \psi'(\Omega^2+\Omega+\alpha) = \varepsilon_0 \cdot \omega + \omega \cdot \alpha \)
\item \( \psi'(\Omega^2+\Omega+\Omega) = \psi'(\Omega^2+\Omega \cdot 2) = sup \lbrace 0, \psi'(\Omega^2+\Omega) = \varepsilon_0 \cdot \omega, \psi'(\Omega^2+\Omega+\varepsilon_0 \cdot \omega) = \varepsilon_0 \cdot \omega + \omega \cdot \varepsilon_0 \cdot \omega = \varepsilon_0 \cdot \omega \cdot 2 \)
\item \( \psi'(\Omega^2+\Omega \cdot \alpha) = \varepsilon_0 \cdot \omega^\alpha \)
\item \( \psi'(\Omega^2+\Omega \cdot \Omega) = \psi'(\Omega^2+\Omega^2) = \psi'(\Omega^2 \cdot 2) = sup \lbrace 0, \psi'(\Omega^2) = \varepsilon_0, \psi'(\Omega^2+\Omega \cdot \varepsilon_0) = \varepsilon_0 \cdot \omega^{\varepsilon_0} = {\varepsilon_0}^2, \psi'(\Omega^2+\Omega \cdot {\varepsilon_0}^2) = \varepsilon_0 \cdot \omega ^{{\varepsilon_0}^2} = \varepsilon_0 \cdot \omega^{\varepsilon_0 \cdot \varepsilon_0} = \varepsilon_0 \cdot (\omega^{\varepsilon_0})^{\varepsilon_0} = \varepsilon_0 \cdot {\varepsilon_0}^{\varepsilon_0} = {\varepsilon_0}^{\varepsilon_0}, \ldots \rbrace = \varepsilon_1 = \varphi(1,1) = \varphi'(0,2) \)
\item \( \psi'(\Omega^2 \cdot \alpha) = \varphi'(0,\alpha) \)
\item \( \psi'(\Omega^2 \cdot \Omega) = \psi'(\Omega^3) = sup \lbrace 1, \phi'(0,1) = \varepsilon_0, \phi'(0,\varepsilon_0) = \varepsilon_{\varepsilon_0}, \ldots \rbrace = \zeta_0 = \varphi(2,0) = \varphi'(1,1) \)
\item \( \psi'(\Omega^{2+\alpha} = \varphi'(\alpha,1) \)
\item \( \psi'(\Omega^{2+\alpha} \cdot \beta) = \varphi'(\alpha,\beta) \)
\item \( \psi'(\Omega^\Omega) = sup \lbrace 0, \psi'(\Omega^0) = \psi'(1) = \omega, \psi'(\Omega^\omega) = \varphi'(\omega,1), \psi'(\Omega^{\varphi'(\omega,1)}) = \varphi'(\varphi'(\omega,1),1), \ldots \rbrace = \Gamma_0 \)
\item \( \ldots \)
\end{itemize}

\end{comment}

\bigskip

Here is a Scheme inplementation of the \( \psi' \) variant of Madore's \( \psi \) function :

\begin{verbatim}

(define mp (lambda (x)
	(if (pair? x)
		(if (eq? (car x) ':) (list (mp (cdr x)))
			 (cons (mp (car x)) (mp (cdr x))) )
		x ) ))

(eval (mp '(begin

(define last : lambda (l) : 
 if (not : pair? l) l :
 if (not : pair? : cdr l) l :
 last : cdr l)

(define butlast : lambda (l) :
 if (not : pair? l) '() :
 if (not : pair? : cdr l) '() :
 cons (car l) : butlast : cdr l)

(define length : lambda (l) : 
 if (not : pair? l) 0 :
 + 1 : length : cdr l)

(define r2a : lambda (l) : 
 if (not : pair? l) l :
 if (pair? : car l) (r2 : append (car l) : cdr l) :
 if (eq? (car l) 'suc) (cdr l) :
 if (eq? (car l) 'H) (cons (cadr l) : cons (list (cadr l) (caddr l)) : cdddr l) :
 if (eq? (car l) 'R1) (cons (cadr l) : cons (cadr l) : cddr l) :
 if (eq? (car l) 'R2) (cons (cadr l) : cons (caddr l) : cons (cadr l) : cons (caddr l) : cdddr l) 
 l)

(define r : lambda (l) :
 if (not : pair? l) l :
 let ((l1 (map r l))) : 
 if (pair? : car l1) (append (car l1) (cdr l1)) 
 l1)

(define r2 : lambda (l) : r : r2a l)

(define loopr2 : lambda (n l) :
 begin (display n) (display " ") (display l) (newline) :
 if (equal? n 0) '() :
 loopr2 (- n 1) (r2 l))

(loopr2 10 '(R1 H suc 0))

(define simplif : lambda (x) :
 if (not : pair? x) x :
 if (not : pair? : cdr x) (car x) 
 x)
 
(define subst : lambda (s z a) :
 if (equal? '0 a) z :
 if (equal? 'suc a) s :
 if (not : pair? a) a :
 cons (subst s z : car a) (subst s z : cdr a))

(define format : lambda (a) : 
 if (not : pair? a) a : 
 if (not : pair? : car a) (cons (car a) : map format : cdr a) : 
 format : append (car a) (cdr a))

(define memo '())

(define find : lambda (a memo) :
 if (not : pair? memo) '#f :
 if (equal? a : caar memo) (cdar memo) :
 find a : cdr memo)

(define psi : lambda (a) :
 let ((m : find a memo)) :
 if m m :
 let ((b : psi1 a)) 
  (if (or (not : pair? a) (not : pair? : car a)) 
   (begin
    (display "psi ") (display : format a) (display " = ") (display : format b) (newline)
;    (read-char)
     ;(newline)
  ))
  (set! memo : cons (cons a b) memo)
  b)

(define psi1 : lambda (a) : 
 if (not : pair? a) a :
 if (pair? : car a) (psi : myappend (car a) (cdr a)) :
 if (equal? (car a) '0) '(H suc 0) :
 if (equal? 'suc : car a)
  (let ((b : psi : cdr a)) :
   if (and (equal? '(0) : last b)
           (equal? '(suc) : last : butlast b)) 
    (list 'R1 (simplif : butlast : butlast b) 'suc '0)
    (list 'psi a)) :
 if (and (equal? 'H : car a) (>= (length a) 3)) 
  (limit (psi : cddr a)
         (psi : cdr a)
         (psi : cons (cadr a) : cons (list (cadr a) (caddr a)) : cdddr a)) :
 if (and (equal? 'R1 : car a) (>= (length a) 2)) 
  (limit (psi : cddr a)
         (psi : cdr a)
         (psi : cons (cadr a) : cdr a)) :
 if (and (equal? 'R2 : car a) (>= (length a) 3))
  (limit (psi : cdddr a)
         (psi : cdr a)
         (psi : cons (cadr a) : cons (caddr a) : cdr a)) :
 if (and (equal? 'H1 : car a) (>= (length a) 3))
  (let ((b : psi : cdr a)) :
   limit '(suc 0)
         b
         (psi : myappend (subst (cadr a) (caddr a) b) : cdddr a))
 a)

(define myappend : lambda (a b) :
 if (not : pair? a) (cons a b) : 
 append a b)

(define commonstart : lambda (a b) :
 if (not : pair? a) (list '() a b) :
 if (not : pair? b) (list '() a b) :
 if (not : equal? (car a) (car b)) (list '() a b) :
 let ((c : commonstart (cdr a) (cdr b))) :
 let ((com : car c) (dif1 : cadr c) (dif2 : caddr c)) :
 list (cons (car a) com) dif1 dif2)

(define limit : lambda (a b c) :
 if (and (equal? (cdr a) (cddr b))
         (equal? (cdr a) (cddr c))
         (equal? a (cdr b))
         (equal? (car b) (car c))
         (equal? (cadr c) (list (car b) (cadr b))))
  (cons 'H b) :
 if (and (equal? a (myappend (cadr b) (cddr b)))
         (equal? (car b) (car c))
         (equal? (cadr c) (list (car b) (cadr b)))
         (equal? (cddr b) (cddr c)))
  (cons 'H b) :
 let ((d : commonstart b c)) :
 let ((com : car d) (difb : cadr d) (difc : caddr d)) :
 if (and (pair? com)
         (equal? com : butlast : car difc)
         (equal? (car difb) (car : last : car difc))
         (equal? a : myappend (car difb) (cdr difb))
         (equal? (cdr difb) (cdr difc)))
  (cons 'H : cons com difb) :
 if (and (equal? a : cdr b)
         (equal? b : cdr c)
         (equal? (car b) (car c))
         (equal? (car c) (cadr c)))
  (cons 'R1 b) :
 if (and (equal? a : myappend (cadr b) : cddr b)
         (equal? b : cdr c)
         (equal? (car c) (cadr c)))
  (cons 'R1 b) :       
 if (and (equal? a difb)
         (equal? difc : cons com difb))
  (cons 'R1 : cons com difb) : 
 if (and (equal? a : cddr b)
         (equal? b : cddr c)
         (equal? (car b) (car c))
         (equal? (cadr b) (cadr c))
         (equal? (car c) (caddr c))
         (equal? (cadr c) (cadddr c)))
  (cons 'R2 b) :
 list 'limit a b c)

;(display : psi '(H H suc 0))
(display : psi '(H1 suc 0))
;(display : psi '(H1 suc (H1 suc 0)))
(newline)

)))

\end{verbatim}

\bigskip

C implementation :

\begin{verbatim}

#include <stdlib.h>
#include <stdio.h>
#include <string.h>

typedef long expr;

int ispair (expr x)
{
    return x < 0;
}

int isatom (expr x)
{
    return x >= 0;
}

expr atom (char *s)
{
    expr x;
    x = *(int *)s;
    if (x < 0 || strlen(s) >= sizeof(expr))
    {
        printf ("Bad name for atom: %s\n", s);
        exit(0);
    }
    return x;
}

struct pair
{
    expr fst, snd;
};

#define SIZE 10000000

int npairs = 0;

struct pair mem[SIZE];

expr fst (expr x)
{
    if (!ispair(x))
    {
        printf ("fst of not pair 0x%X\n", x);
        exit(0);
    }
    return mem[-x-1].fst;
}

expr snd (expr x)
{
    if (!ispair(x))
    {
        printf ("fst of not pair 0x%X\n", x);
        exit(0);
    }
    return mem[-x-1].snd;
}

expr newpair (expr x, expr y)
{
    if (npairs >= SIZE)
    {
        printf("Overflow\n");
        exit(0);
    }
    mem[npairs].fst = x;
    mem[npairs].snd = y;
    npairs++;
    return -npairs;
}

expr findpair (expr x, expr y)
{
    int i;
    for (i=0; i<npairs; i++)
    {
        if (mem[i].fst == x && mem[i].snd == y)
            return -i-1;
    }
    return 0;
}

expr pair (expr x, expr y)
{
    expr z;
    z = findpair (x, y);
    if (z)
        return z;
    else
        return newpair (x, y);
}

expr eq (expr x, expr y)
{
    return x == y;
}

struct charwriter
{
    int (*f) (struct charwriter *, char);
};

int writechar (struct charwriter *cw, char c)
{
    return (*(cw->f))(cw,c);
}

void writeexpr (struct charwriter *cw, expr x)
{
    char s[sizeof(expr)+1];
    int i;
    if (isatom(x))
    {
        for (i=0; i<sizeof(s); i++)
            s[i] = 0;
        memcpy (s, &x, sizeof(s));
        for (i=0; s[i]; i++)
            writechar(cw,s[i]);
    }
    else
    {
        writechar(cw,'-');
        writeexpr(cw,fst(x));
        writechar(cw,' ');
        writeexpr(cw,snd(x));
    }
    
}

expr zero, suc, H, H1, R1, R2, R3, Psi, lim, w;

#define ap(x,y) pair(x,y)
#define fnc(x) fst(x)
#define arg(x) snd(x)
#define isap(x) ispair(x)
#define isnap(x) isatom(x)

init ()
{
    zero = atom("0");
    suc = atom("suc");
    H = atom("H");
    H1 = atom("H1");
    R1 = atom("R1");
    R2 = atom("R2");
    R3 = atom("R3");
    Psi = atom("psi");
    lim = atom("lim");
    w = ap(ap(H,suc),zero);
}

expr first (expr a)
{
    if (isnap(a))
        return ap(atom("fst"),a);
    if (isap(fnc(a)) && eq(H,fnc(fnc(a))))
        return arg(a);
    if (isap(fnc(a)) && eq(R1,fnc(fnc(a))))
        return arg(a);
    if (isap(fnc(a)) && isap(fnc(fnc(a))) && eq(R2,fnc(fnc(fnc(a)))))
        return arg(a);
    return ap(first(fnc(a)),arg(a));
}

expr next (expr a)
{
    if (isnap(a))
        return ap(atom("nxt"),a);
    if (isap(fnc(a)) && eq(H,fnc(fnc(a))))
        return ap(fnc(a),ap(arg(fnc(a)),arg(a)));
    if (eq(R1,fnc(a)))
        return ap(ap(R1,arg(a)),arg(a));
    if (isap(fnc(a)) && eq(R2,fnc(fnc(a))))
        return ap(ap(a,arg(fnc(a))),arg(a));
    return ap(next(fnc(a)),arg(a));
}

expr subst (expr s, expr z, expr a)
{
    if (eq(zero,a))
        return z;
    if (eq(suc,a))
        return s;
    if (isnap(a))
        return a;
    return ap(subst(s,z,fnc(a)),subst(s,z,arg(a)));
}

expr limit (expr a, expr b, expr c)
{
    if (isap(b) && 
        eq(a,arg(b)) && 
        isap(c) && 
        eq(fnc(b),fnc(c)) && 
        eq(b,arg(c)))
        return ap(ap(H,fnc(b)),a);  
    if (isap(b) &&
        eq(a,arg(b)) &&
        isap(c) &&
        eq(a,arg(c)) &&
        isap(fnc(c)) &&
        eq(fnc(b),fnc(fnc(c))) &&
        eq(fnc(b),arg(fnc(c))))
        return ap(ap(R1,fnc(b)),a);
    if (isap(b) &&
        eq(a,arg(b)) &&
        isap(c) &&
        eq(a,arg(c)) &&
        isap(fnc(c)) &&
        isap(fnc(fnc(c))) &&
        eq(fnc(b),fnc(fnc(fnc(c)))) &&
        isap(fnc(b)) &&
        eq(arg(fnc(b)),arg(fnc(c))) &&
        eq(fnc(fnc(b)),arg(fnc(fnc(c)))))
        return ap(ap(ap(R2,fnc(fnc(b))),arg(fnc(b))),a);
    if (isap(a) && isap(b) && isap(c) &&
        eq(arg(a),arg(b)) && eq(arg(b),arg(c)))
        return ap(limit(fnc(a),fnc(b),fnc(c)),arg(a));         
    return ap(ap(ap(lim,a),b),c);
}

#define MAXMEMO SIZE

int nmemo = 0;

struct item
{
    expr arg;
    expr val;
};

struct item memo[MAXMEMO];

int count = 0;

int cwf_putchar (struct charwriter *cw, char c)
{
    return putchar(c);
}

expr psi2 (int level, expr a);

expr psi (expr a)
{
    return psi2(0,a);
}

expr psi1 (int level, expr a);

expr psi2 (int level, expr a)
{
    expr b;
    struct charwriter cw;
    int i;
    for (i=0; i<nmemo; i++)
    {
        if (eq(a,memo[i].arg))
            return memo[i].val;
    }
    b = psi1(level,a);
    memo[nmemo].arg = a;
    memo[nmemo].val = b;
    nmemo++;
    cw.f = cwf_putchar;
    count++;
    
    printf ("\n %6d %3d ", count, level);
    writeexpr (&cw, a);
    printf ("\n            ");
    writeexpr (&cw, b);
    printf ("\n");
    
    return b;
}

expr psi1 (int level, expr a)
{
    expr b, c, d;
    if (eq(zero,a))
        return w;
    if (isnap(a))
        return ap(Psi,a);    
    if (eq(suc,fnc(a)))
    {
        expr c;
        c = psi2(level+1,arg(a));
        if (isap(c) && eq(zero,arg(c)) && isap(fnc(c)) && eq(suc,arg(fnc(c))))
            return ap(ap(ap(R1,fnc(fnc(c))),suc),zero);
    }    
    if (isnap(fnc(a)))
        return ap(Psi,a);
    if (eq(H1,fnc(fnc(a))))
    {
        expr b, c, d;
        b = ap(suc,zero);
        c = psi2(level+1,ap(arg(fnc(a)),arg(a)));
        d = psi2(level+1,subst(arg(fnc(a)),arg(a),c));
        return limit(b,c,d);
    }        
    /*if (eq(H,fnc(fnc(a))))
        return limit (
            psi(arg(a)), 
            psi(ap(arg(fnc(a)),arg(a))), 
            psi(ap(arg(fnc(a)),ap(arg(fnc(a)),arg(a))))
            );*/
    //return limit (psi2(level+1,first(a)), psi2(level+1,first(next(a))), psi2(level+1,first(next(next(a)))));
    b = psi2(level+1,first(a));
    c = psi2(level+1,first(next(a)));
    d = psi2(level+1,first(next(next(a))));
    return limit(b,c,d);
    //return ap(Psi,a);
}

dump ()
{
    int i;
    for (i=0; i<npairs; i++)
    {
        printf(" %4d %08X : %08X %08X \n", i, -i-1, mem[i].fst, mem[i].snd);
    }
}

main ()
{
    struct charwriter cw;
    cw.f = cwf_putchar;

    printf(" %d ", sizeof(expr));
    expr x;
    x = pair (pair (atom("abc"), atom("def")), atom("ghi"));
    // x = pair (atom("abc"), atom("def"));
    printf("x = %d\n",x);
    printf("mem: %X %X\n", mem[0].fst, mem[0].snd);
    writeexpr(&cw,x);

    printf("\n");
    
    init(); 

    expr a, b, c, d, f;
    a = ap(ap(H,suc),zero);
    b = next(a);
    printf ("b = ");
    writeexpr(&cw,b);
    printf("\n");

    a = ap(ap(ap(R1,H),suc),zero);
    b = first(next(next(a)));
    printf ("b = ");
    writeexpr(&cw,b);
    printf("\n");

    a = ap(ap(ap(ap(R2,R1),H),suc),zero);
    b = first(next(next(a)));
    printf ("b = ");
    writeexpr(&cw,b);
    printf("\n");

    x = atom("x");
    f = atom("f");
    a = x;
    b = ap(f,a);
    c = ap(f,b);
    d = limit(a,b,c);
    printf ("d = ");
    writeexpr(&cw,d);
    printf("\n");
    //a = ap(suc,ap(suc,zero));
    //a = ap(ap(ap(H,H),suc),zero);
    //a = ap(ap(ap(R1,H),suc),zero);

    a = ap(ap(H1,suc),zero);

    //a = ap(ap(ap(R1,H),suc),ap(ap(H1,suc),zero));
    //a = ap(ap(H1,suc),ap(ap(H1,suc),zero));
    //a = ap(suc,ap(ap(H1,suc),zero));
    //a = ap(ap(ap(ap(R2,R1),H),suc),ap(ap(H1,suc),zero));
    //a = ap(ap(ap(R1,H),suc),ap(ap(H1,suc),zero));
    //a = ap(ap(ap(ap(H,R1),H),suc),ap(ap(H1,suc),zero));
    //a = ap(ap(H,ap(ap(ap(H,R1),H),suc)),ap(ap(H1,suc),zero));
    //a = ap(ap(ap(R1,H),ap(ap(ap(H,R1),H),suc)),ap(ap(H1,suc),zero));
    
    //a = ap(ap(ap(H,ap(R1,H)),ap(ap(ap(H,R1),H),suc)),ap(ap(H1,suc),zero));

    //a = ap(ap(ap(H,ap(H,ap(R1,H))),ap(ap(ap(H,R1),H),suc)),ap(ap(H1,suc),zero));
    //a = ap(ap(ap(ap(H,H),ap(R1,H)),ap(ap(ap(H,R1),H),suc)),ap(ap(H1,suc),zero));
    //a = ap(ap(ap(ap(R1,H),ap(R1,H)),ap(ap(ap(H,R1),H),suc)),ap(ap(H1,suc),zero));
    //a = ap(ap(ap(R1,ap(R1,H)),ap(ap(ap(H,R1),H),suc)),ap(ap(H1,suc),zero));
    //a = ap(ap(ap(ap(H,R1),H),ap(ap(ap(H,R1),H),suc)),ap(ap(H1,suc),zero));
    //a = ap(ap(ap(H,ap(ap(H,R1),H)),suc),ap(ap(H1,suc),zero));
    //a = ap(ap(ap(ap(ap(H,R1),H),ap(ap(H,R1),H)),suc),ap(ap(H1,suc),zero));
    //a = ap(ap(ap(R1,ap(ap(H,R1),H)),suc),ap(ap(H1,suc),zero));
    //a = ap(ap(ap(ap(H,R1),ap(ap(H,R1),H)),suc),ap(ap(H1,suc),zero));
    //a = ap(ap(ap(ap(H,ap(H,R1)),H),suc),ap(ap(H1,suc),zero));
    //a = ap(ap(ap(ap(ap(H,H),R1),H),suc),ap(ap(H1,suc),zero));
    //a = ap(ap(ap(ap(ap(R1,H),R1),H),suc),ap(ap(H1,suc),zero));

    //a = ap(ap(H1,suc),ap(ap(H1,suc),zero));

    b = psi(a);
    //dump();
    printf ("\na=%X b=%X\n",a,b);
    printf("psi ");
    writeexpr(&cw,a);
    printf (" = ");
    writeexpr(&cw,b);
    printf("\n");

    printf("npairs = %d\n", npairs);

}

\end{verbatim}



\subsection{Correspondence between different ordinal collapsing functions and RHS0 notation}

\subsubsection{Buchholz $\psi$}

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi(0) = 1 = suc\ 0 \)
\item \( \psi(\alpha+1) = \psi(\alpha) \cdot \omega \)
\item \( \psi(\alpha) = f 0 \Rightarrow \psi(\alpha+1) = H f 0 \)
\item \( \psi(1) = H suc 0 = \omega \)
\item \( \psi(2) = H (H suc) 0 = \omega^2 \)
\item \( \psi(\alpha) = [suc \rightarrow H, 0 \rightarrow suc] \alpha 0 = \omega^\alpha \) if \( \alpha < \varepsilon_0 \)
\item \( \psi(\Omega) = H \psi 0 = H [[suc \rightarrow H,0 \rightarrow suc] \bullet 0] 0 = sup \lbrace 0, suc 0, H suc 0, H H suc 0, \ldots \rbrace = R_1 H suc 0 = \varepsilon_0 \)
\item \( \psi(\Omega+1) = H (R_1 H suc) 0 = \varepsilon_0 \cdot \omega \)
\item \( \psi(\Omega+2) = H (H (R_1 H suc)) 0 = \varepsilon_0 \cdot \omega^2 \)
\item \( \psi(\Omega+\alpha) = [suc \rightarrow H, 0 \rightarrow R_1 H suc] \alpha 0 \)
\item \( \psi(\Omega \cdot 2) = \psi(\Omega+\Omega) = H [\psi(\Omega+\bullet)] 0 = H [[suc \rightarrow H, 0 \rightarrow R_1 H suc] * 0] 0 = sup \lbrace \)

\( 0, \)

\( R_1 H suc 0, \) 

\( R_1 H H (R_1 H suc) 0 = R_1 H (R_1 H suc) 0, \)

\( R_1 H (R_1 H H) (R_1 H suc) 0 = R_1 H (R_1 H) (R_1 H suc) 0, \)

\( \ldots \rbrace = R_1 (R_1 H) (R_1 H suc) 0 = R_1 (R_1 H) suc 0 = \varepsilon_1 \)

See below proof that \( R_1 (R_1 H) (R_1 H suc) 0 = R_1 (R_1 H) suc 0 \).

\item \( \psi(\Omega \cdot 2+1) = H (R_1 (R_1 H) suc) 0 \)
\item \( \psi(\Omega \cdot 2+2) = H (H (R_1 (R_1 H) suc)) 0 \)
\item \( \psi(\Omega \cdot 2+\alpha) = [suc \rightarrow H, 0 \rightarrow R_1 (R_1 H) suc] \alpha 0 \)
\item \( \psi(\Omega \cdot 3) = \psi(\Omega \cdot 2+\omega) = H [\psi(\Omega \cdot 2+\bullet] 0 = H [[suc \rightarrow H, 0 \rightarrow R_1 (R_1 H) suc] \bullet 0] 0 = sup \lbrace \)

\( 0, \)

\( R_1 (R_1 H) suc 0, \)

\( R_1 (R_1 H) H (R_1 (R_1 H) suc) 0, \)

\( R_1 (R_1 H) H (R_1 (R_1 H) H) (R_1 (R_1 H) suc) 0, \)

\( \ldots \rbrace = R_1 (R_1 (R_1 H) H) (R_1 (R_1 H) suc) 0 \)

From \( \psi(\Omega \cdot 2) = R_1 (R_1 H) suc 0 \) we can conjecture \( \psi(\Omega \cdot \alpha) = [suc \rightarrow R_1, 0 \rightarrow H] \alpha suc 0 \) which gives \( \psi(\Omega \cdot 3) = R_1 (R_1 (R_1 H)) suc 0 \). We can go on with this conjecture.

\item \( \psi(\Omega \cdot \alpha) = [suc \rightarrow R_1, 0 \rightarrow H] \alpha suc 0 \)
\item \( \psi(\Omega^2) = \psi(\Omega \cdot \Omega) = H [\psi(\Omega \cdot \bullet)] 0 = H [[suc \rightarrow R_1, 0 \rightarrow H] \bullet suc 0] 0 = sup \lbrace \)

\( 0, \)

\( H suc 0, \)

\( H R_1 H suc 0, \)

\( H R_1 H R_1 H suc 0, \)

\( \ldots \rbrace = R_2 R_1 H suc 0 \)

At this point, the general formula for \( \psi(\Omega^\alpha) \) is not clear and we have to go on with :

\item \( \psi(\Omega^2+1) = H (R_2 R_1 H suc) 0 \)
\item \( \psi(\Omega^2+2) = H (H (R_2 R_1 H suc)) 0 \)
\item \( \psi(\Omega^2+\alpha) = [suc \rightarrow H, 0 \rightarrow R_2 R_1 H suc] \alpha 0 \)
\item \( \psi(\Omega^2+\Omega) = H [\psi(\Omega^2+\bullet)] 0 = H [[suc \rightarrow H, 0 \rightarrow R_2 R_1 H suc] \bullet 0] 0 = sup \lbrace \)

\( 0, \)

\( R_2 R_1 H suc 0, \)

\( R_2 R_1 H H (R_2 R_1 H suc) 0 = R_2 R_1 H (R_2 R_1 H suc) 0 \)

\( R_2 R_1 H (R_2 R_1 H H) (R_2 R_1 H suc) 0 = R_2 R_1 H (R_2 R_1 H) (R_2 R_1 H suc) 0 \)

\( \ldots \rbrace = R_1 (R_2 R_1 H) (R_2 R_1 H suc) 0 = R_1 (R_2 R_1 H) suc 0 \)

\item \( \psi(\Omega^2+\Omega+1) = H (R_1 (R_2 R_1 H) suc) 0 \)
\item \( \psi(\Omega^2+\Omega+2) = H (H (R_1 (R_2 R_1 H) suc) 0 \)
\item \( \psi(\Omega^2+\Omega+\alpha) = [suc \rightarrow H, 0 \rightarrow R_1 (R_2 R_1 H) suc] \alpha 0 \)
\item \( \psi(\Omega^2+\Omega \cdot 2) = H [[suc \rightarrow H, 0 \rightarrow R_1 (R_2 R_1 H) suc] \bullet 0] 0 = sup \lbrace \)

\( 0, \)

\( R_1 (R_2 R_1 H) suc 0, \)

\( R_1 (R_2 R_1 H) H (R_1 (R_2 R_1 H) suc) 0, \)

\( R_1 (R_2 R_1 H) H (R_1 (R_2 R_1 H) H) (R_1 (R_2 R_1 H) suc) 0 \)

\( \ldots \rbrace = R_1 (R_1 (R_2 R_1 H) H) (R_1 (R_2 R_1 H) suc) 0 = R_1 (R_1 (R_2 R_1 H) H) suc 0 = R_1 (R_1 (R_2 R_1 H)) suc 0 \)

\item \( \psi(\Omega^2+\Omega \cdot \alpha) = [suc \rightarrow< R_1, 0 \rightarrow R_2 R_1 H] \alpha qsuc 0 \)

\item \( \psi(\Omega^2 \cdot 2) = \psi(\Omega^2 + \Omega \cdot \Omega) = H [[suc \rightarrow R_1, 0 \rightarrow R_2 R_1 H] \bullet suc 0] 0 = sup \lbrace \)

\( 0, \)

\( R_2 R_1 H suc 0, \)

\( R_2 R_1 H R_1 (R_2 R_1 H) suc 0, \)

\( R_2 R_1 H R_1 (R_2 R_1 H) R_1 (R_2 R_1 H) suc 0, \)

\( \ldots \rbrace = R_2 R_1 (R_2 R_1 H) suc 0 \)

\( \psi(\Omega^2 \cdot \alpha) = [suc \rightarrow R_2 R_1, 0 \rightarrow H] \alpha suc 0 \)

\( \psi(\Omega^3) = H [[suc \rightarrow R_2 R_1, 0 \rightarrow H] \bullet suc 0] 0 = sup \lbrace \)

\( 0, \)

\( H suc 0, \)

\( H (R_2 R_1) H suc 0, \)

\( H (R_2 R_1) H (R_2 R_1) H suc 0, \)

\( \ldots \rbrace = R_2 (R_2 R_1) H suc 0 \)

\item \( \psi(\Omega^\alpha) = [suc \rightarrow R_2, 0 \rightarrow R_1] \alpha H suc 0 \)

\item \( \psi(\Omega^\Omega) = H [\psi(\Omega^\bullet)] 0 = H [[suc \rightarrow R_2, 0 \rightarrow R_1] \bullet H suc 0] 0 = sup \lbrace \)

\( 0, \)

\( R_1 H suc 0, \)

\( R_1 R_2 R_1 H suc 0, \)

\( R_1 R_2 R_1 H R_2 R_1 H suc 0, \)

\( \ldots \rbrace = R_3 R_2 R_1 H suc 0 \)

\item \( \ldots \)

\end{itemize}

Proof that \( R_1 (R_1 H) (R_1 H suc) 0 = R_1 (R_1 H) suc 0 \) :

Let us start with the equality \( 1+\varepsilon_1 = \varepsilon_1 \).

In RHS0 notation, it gives \( R_1 (R_1 H) suc (suc 0) = R_1 (R_1 H) suc 0 \).
 
We have seen previously that \( {\varepsilon_0}^\alpha = [suc \rightarrow R_1 H, 0 \rightarrow suc] \alpha 0 \).

If we apply it to the previous equality, we get \( R_1 (R_1 H) (R_1 H) (R_1 H suc) 0 = R_1 (R_1 H) (R_1 H) suc 0 \).

But for any x we have \( R_1 x x = R_1 x \).

So we get \( R_1 (R_1 H) (R_1 H suc) 0 = R_1 (R_1 H) suc 0 \). QED.


\subsubsection{Variant of Madore $\psi$}

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi(0) = H suc 0 = \omega \)
\item \( \psi(\alpha+1) = \psi(\alpha)^{\psi(\alpha)^{\vdots^{\psi(\alpha)}}} \)
\item \( \psi(\alpha) = f suc 0 \Rightarrow \psi(\alpha+1) = R_1 f suc 0 \)
\item \( \psi(1) = R_1 H suc 0 = \varepsilon_0 \)
\item \( \psi(2) = R_1 (R_1 H) suc 0 \)
\item \( \psi(\alpha) = [suc \rightarrow R_1, 0 \rightarrow H] \alpha suc 0 = \varepsilon'_\alpha \)
\item \( \psi(\Omega) = H \psi 0 = H [[suc \rightarrow R_1, 0 \rightarrow H] \bullet suc 0] 0 = sup \lbrace 0, H suc 0, H R_1 H suc 0, H R_1 H R_1 H suc 0, \ldots \rbrace = R_2 R_1 H suc 0 = \zeta_0 \)
\item \( \psi(\Omega+1) = R_1 (R_2 R_1 H) suc 0 \)
\item \( \psi(\Omega+2) = R_1 (R_1 (R_2 R_1 H)) suc 0 \)
\item \( \psi(\Omega+\alpha) = [suc \rightarrow R_1, 0 \rightarrow R_2 R_1 H] \alpha suc 0 \)
\item \( \psi(\Omega \cdot 2) = \psi(\Omega+\Omega) = H [\psi(\Omega+\bullet)] 0 = H [[suc \rightarrow R1, 0 \rightarrow R_2 R_1 H] \bullet suc 0] 0 = sup \lbrace \)

 \( 0, \)

 \( R_2 R_1 H suc 0, \)

 \( R_2 R_1 H R_1 (R_2 R_1 H) suc 0, \)

 \( R_2 R_1 H R_1 (R_2 R_1 H) R_1 (R_2 R_1 H) suc 0, \)

 \( \ldots \rbrace = R_2 R_1 (R_2 R_1 H) suc 0 = \zeta_1 \)

\item \( \psi(\Omega \cdot 2+1) = R_1 (R_2 R_1 (R_2 R_1 H)) suc 0 \)
\item \( \psi(\Omega \cdot 2+2) = R_1 (R_1 (R_2 R_1 (R_2 R_1 H))) suc 0 \)
\item \( \psi(\Omega \cdot 2+\alpha) = [suc \rightarrow R_1, 0 \rightarrow R_2 R_1 (R_2 R_1 H)] \alpha suc 0 \)
\item \( \psi(\Omega \cdot 3) = \psi(\Omega \cdot 2+\Omega) = H [\psi(\Omega \cdot 2+\bullet] 0 = H [[suc \rightarrow R_1, 0 \rightarrow R_2 R_1 (R_2 R_1 H)] \alpha suc 0] 0 = sup \lbrace \)

\( 0, \)

\( R_2 R_1 (R_2 R_1 H) suc 0, \)

\( R_2 R_1 (R_2 R_1 H) R_1 (R_2 R_1 (R_2 R_1 H)) suc 0, \)

\( R_2 R_1 (R_2 R_1 H) R_1 (R_2 R_1 (R_2 R_1 H)) R_1 (R_2 R_1 (R_2 R_1 H)) suc 0, \)

\( \ldots \rbrace = R_2 R_1 (R_2 R_1 (R_2 R_1 H)) suc 0 \)

\item \( \psi(\Omega \cdot \alpha) = [suc \rightarrow R_2 R_1, 0 \rightarrow H] \alpha suc 0 \)

\item \( \psi(\Omega^2) = \psi(\Omega \cdot \Omega) = H [\psi(\Omega \cdot \bullet)] 0 = H [[suc \rightarrow R_2 R_1, 0 \rightarrow H] \bullet suc 0] 0 = sup \lbrace \)

\( 0, \)

\( H suc O, \)

\( H (R_2 R_1) H suc 0, \)

\( H (R_2 R_1) H (R_2 R_1) H suc 0, \)

\( \ldots \rbrace = R_2 (R_2 R_1) H suc 0 \)

\item \( \psi(\Omega^\alpha) = [suc \rightarrow R_2, 0 \rightarrow R_1] \alpha H suc 0 \)
\item \( \psi(\Omega^\Omega) = H [\psi(\Omega^\bullet)] 0 = H [[suc \rightarrow R_2, 0 \rightarrow R_1] \bullet H suc 0] 0 = sup \lbrace \)

\( 0, \)

\( R_1 H suc 0, \)

\( R_1 H R_2 R_1 H suc 0, \)

\( R_1 H R_2 R_1 H R_2 R_1 H suc 0, \)

\( \ldots \rbrace = R_3 R_2 R_1 H suc 0 \)

\end{itemize}


\subsubsection{Generic ordinal collapsing function}

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi(0) = z a_{n-1} \ldots a_0 \)
\item \( \psi(\alpha) = f a_{n-1} \ldots a_0 \Rightarrow \psi(\alpha+1) = s f a_{n-1} \ldots a_0 \)
\item \( \psi(1) = s z a_{n-1} \ldots a_0 \)
\item \( \psi(2) = s (s z) a_{n-1} \ldots a_0 \)
\item \( \psi(\alpha) = [suc \rightarrow s, 0 \rightarrow z] \alpha a_{n-1} \ldots a_0 \)
\item \( \psi(\Omega) = H \psi 0 = H [[suc \rightarrow s, 0 \rightarrow z] \bullet a_{n-1} \ldots a_0] 0 = sup \lbrace 0, z a_{n-1} \ldots a_0, \ldots \rbrace = z' a'_{n-1} \ldots a'_0 \)
\item \( \psi(\Omega+1) = s z' a'_{n-1} \ldots a'_0 \)
\item \( \psi(\Omega+2) = s (s z') a'_{n-1} \ldots a_0 \)
\item \( \psi(\Omega+\alpha) = [suc \rightarrow s, 0 \rightarrow z'] \alpha a'_{n-1} \ldots a'_0 \)
\item \( \psi(\Omega \cdot 2) = \psi(\Omega+\Omega) = H [\psi(\omega+\bullet)] 0 = H [[suc \rightarrow s, 0 \rightarrow z'] \bullet a'_{n-1} \ldots a'_0 ] 0 \)

\end{itemize}

Buchholz : 
\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( z = suc \)
\item \( a_0 = 0 \)
\item \( s = H \)
\item \( z' = R_1 H suc \)
\item \( a'_0 = 0 \)
\end{itemize}

Madore variant : 
\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( z = H \)
\item \( a_1 = suc ; a_0 = 0 \)
\item \( s = R_1 \)
\item \( z' = R_2 R_1 H \)
\item \( a'_1 = suc ; a'_0 = 0 \)
\end{itemize}
\subsubsection{Other example of ordinal collapsing function}

We will consider the ordinal collapsing function defined as the instantiation of the previous generic ordinal collapsing function with :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( z = R_1 \)
\item \( a_2 = H ; a_1 = suc ; a_0 = 0 \)
\item \( s = R_2 \)
\end{itemize}

Then we have :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( \psi(0) = R_1 H suc 0 = \varepsilon_0 \)
\item \( \psi(\alpha) = f H suc 0 \Rightarrow \psi(\alpha+1) = R_2 f H suc 0 \)
\item \( \psi(1) = R_2 R_1 H suc 0 = \zeta_0 \) 
\item \( \psi(2) = R_2 (R_2 R_1) H suc 0 \)
\item \( \psi(\alpha) = [suc \rightarrow R_2, 0 \rightarrow R_1] \alpha H suc 0 \)
\item \( \psi(\Omega) = H \psi 0 = H [[suc \rightarrow R_2, 0 \rightarrow R_1] \bullet H suc 0] 0 = sup \lbrace 0, R_1 H suc 0, R_1 H R_2 R_1 H suc 0, R_1 H R_2 R_1 H R_2 R_1 H suc 0, \ldots \rbrace = R_3 R_2 R_1 H suc 0 \) which gives \( z' = R_3 R_2 R_1 ; a'_2 = H ; a'_1 = suc ; a'_0 = 0 \)
\item \( \psi(\Omega+1) = R_2 (R_3 R_2 R_1) H suc 0 \)
\item \( \psi(\Omega+2) = R_2 (R_2 (R_3 R_2 R_1)) H suc 0 \)
\item \( \psi(\Omega+\alpha) = [suc \rightarrow R_2, 0 \rightarrow R_3 R_2 R_1] \alpha H suc 0 \)
\item \( \psi(\Omega \cdot 2) = \psi(\Omega+\Omega) = H [\psi(\Omega+\bullet)] 0 = H [[suc \rightarrow R_2, 0 \rightarrow R_3 R_2 R_1] \bullet H suc 0] 0 = sup \lbrace \)

\( 0, \)

\( R_3 R_2 R_1 H suc 0, \)

\( R_3 R_2 R_1 H R_2 (R_3 R_2 R_1) H suc 0, \)

\( R_3 R_2 R_1 H R_2 (R_3 R_2 R_1) H R_2 (R_3 R_2 R_1) H suc 0, \)

\( \ldots \rbrace = R_3 R_2 (R_3 R_2 R_1) H suc 0 \)

\item \( \psi(\Omega \cdot 2+1) = R_2 (R_3 R_2 (R_3 R_2 R_1)) H suc 0 \)
\item \( \psi(\Omega \cdot 2+2) = R_2 (R_2 (R_3 R_2 (R_3 R_2 R_1))) H suc 0 \)
\item \( \psi(\Omega \cdot 2+\alpha) = [suc \rightarrow R_2, 0 \rightarrow R_3 R_2 (R_3 R_2 R_1)] \alpha H suc 0 \)
\item \( \psi(\Omega \cdot 3) = \psi(\Omega \cdot 2+\Omega) = H [\psi(\Omega \cdot 2+\bullet] 0 = H [[suc \rightarrow R_2, 0 \rightarrow R_3 R_2 (R_3 R_2 R_1)] \bullet H suc 0] 0 = sup \lbrace \)

\( 0, \)

\( R_3 R_2 (R_3 R_2 R_1) H suc 0, \)

\( R_3 R_2 (R_3 R_2 R_1) H R_2 (R_3 R_2 (R_3 R_2 R_1)) H suc 0, \)

\( R_3 R_2 (R_3 R_2 R_1) H R_2 (R_3 R_2 (R_3 R_2 R_1)) H R_2 (R_3 R_2 (R_3 R_2 R_1)) H suc 0, \)

\( \ldots \rbrace = R_3 R_2 (R_3 R_2 (R_2 R_2 R_1)) H suc 0 \)

\item \( \psi(\Omega \cdot \alpha) = [suc \rightarrow R_3 R_2, 0 \rightarrow R_1] \alpha H suc 0 \)

\item \( \psi(\Omega^2) = \psi(\Omega \cdot \Omega) = H [\psi(\Omega \cdot \bullet)] 0 = H [[suc \rightarrow R_3 R_2, O \rightarrow R_1] \bullet H suc 0] 0 = sup \lbrace \)

\( 0, \)

\( R_1 H suc 0, \)

\( R_1 H (R_3 R_2) R_1 H suc 0, \)

\( R_1 H (R_3 R_2) R_1 H (R_3 R_2) R_1 H suc 0, \)

\( \ldots = R_3 (R_3 R_2) R_1 H suc 0 \)

\item \( \psi(\Omega^\alpha) = [suc \rightarrow R_3, 0 \rightarrow R_2] \alpha R_1 H suc 0 \)
\item \( \psi(\Omega^\Omega) = H [\psi(\Omega^\bullet] 0 = H [[suc \rightarrow R_3, 0 \rightarrow R_2] \bullet R_1 H suc 0] 0 = sup \lbrace \)

\( 0, \)

\( R_2 R_1 H suc 0, \)

\( R_2 R_1 H R_3 R_2 R_1 H suc 0, \)

\( R_2 R_1 H R_3 R_2 R_1 H R_3 R_2 R_1 H suc 0, \)

\( \ldots \rbrace = R_4 R_3 R_2 R_1 H suc 0 \)

\end{itemize}


\subsubsection{Comparison}

If we compare the correspondences for the Buchholz OCF, the variant of the Madore OCF and the third example of OCF, it seems more complicated for the Buchholz OCF, the simplest for the variant of the Madore OCF, and almost as simple for the third example.

We have already seen in the previous section ( Correspondence between Madore’s $\psi$ and other notations ) that we can go easily very far with the correspondence between Madore OCF and RHS0 notation.


\subsubsection{Summary table of some values of Madore variant $\psi$ with RHS0 notation}

\begin{tabular}{|c|c|}
\hline
$\alpha$					& $\psi(\alpha)$ 			\\ \hline
0						& H suc 0 				\\ \hline
1 = suc 0					& \( \varepsilon_0 = R_1 H suc 0 \)	\\ \hline
2 = suc (suc 0)					& \( R_1 (R_1 H) suc 0		\)	\\ \hline
$\omega$ = H suc 0				& \( H R_1 H suc 0 		\)	\\ \hline
\( \varepsilon_0 = R_1 H suc 0	 	\)	& \( R_1 H R_1 H suc 0		\)	\\ \hline
\( \Omega = H_1 suc 0 			\)	& \( R_2 R_1 H suc 0		\)	\\ \hline
\( \Omega+1 = suc (H_1 suc 0)		\)	& \( R_1 (R_2 R_1 H) suc 0	\)	\\ \hline
\( \Omega \cdot 2 = H_1 suc (H_1 suc 0)	\)	& \( R_2 R_1 (R_2 R_1 H) suc 0	\)	\\ \hline
\( \Omega^2 = H_1 (H_1 suc) 0		\)	& \( R_2 (R_2 R_1) H suc 0 	\)	\\ \hline
\( \Omega^\Omega = H_1 H_1 suc 0 	\)	& \( R_3 R_2 R_1 H suc 0 	\)	\\ \hline
\( \Omega^{\Omega^\Omega} = H_1 H_1 H_1 suc 0 \)& \( R_4 R_3 R_2 R_1 H suc 0	\)	\\ \hline
	
\end{tabular}

\bigskip

We can see that informally, we have somethink like "\( \psi(\alpha) = [H_1 \rightarrow R_n, suc \rightarrow R_1, 0 \rightarrow H]\ \alpha\ suc\ 0 \)" where n is greater than 1 and depends on the position of $H_1$ and $R_n$.

\subsubsection{Computing Madore variant $\psi$ in RHZ0 representation : slow method}

The following rule is used :

\[ \psi(H_1 x y z_1 \ldots z_n) = H [\psi([suc \rightarrow x, 0 \rightarrow y] \bullet z_1 \ldots z_n)] 0 \]

Example :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi(\Omega^\Omega) = \psi(H_1 H_1 suc 0) = H [\psi([suc \rightarrow H_1, 0 \rightarrow suc] \bullet 0)] 0 = sup \lbrace \)

\( 0, \)

\( \psi(suc 0) = R_1 H suc 0, \)

\( \psi(R_1 H H_1 suc 0) = \ldots, \)

\( \ldots \rbrace = \ldots \)

\end{itemize}


\subsubsection{Computing Madore variant $\psi$ in RHZ0 representation : fast method}

Method : To compute \( \psi(H_1 x y z_1 \ldots z_n) \), compute \( \psi(x (x y) z_1 \ldots z_n) \). If it gives something in the form \( x' (x' y') z'_1 \ldots z'_n \), then \( \psi(H_1 x y z_1 \ldots z_n) = H [[suc \rightarrow x', 0 \rightarrow y'] \bullet z'_1 \ldots z'_n] 0 \).

Example : 

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi(\Omega^\Omega) = \psi(H_1 H_1 suc 0) \)
\item \( \psi(H_1 (H_1 suc) 0) \)
\item \( \psi(H_1 suc (H_1 suc 0)) \)
\item \( \psi(suc (suc (H_1 suc 0))) \)
\item \( \psi(H_1 suc 0) \)
\item \( \psi(suc (suc 0)) \)
\item \( \psi(0) = H suc 0 \)
\item \( \psi(suc (suc 0)) = R_1 (R_1 H) suc 0 \)
\item \( \psi(H_1 suc 0) = H [[suc \rightarrow R_1, 0 \rightarrow H] \bullet suc 0] 0 = R_2 R_1 H suc 0 \)
\item \( \psi(suc (suc (H_1 suc 0))) = R_1 (R_1 (R_2 R_1 H)) suc 0 \)
\item \( \psi(H_1 suc (H_1 suc 0)) = H [[suc \rightarrow R_1, 0 \rightarrow R_2 R_1 H] \bullet suc 0] 0 = R_2 R_1 (R_2 R_1 H) suc 0 \)
\item \( \psi(H_1 (H_1 suc) 0 = H [[suc \rightarrow R_2 R_1, 0 \rightarrow H] \bullet suc 0] 0 = R_2 (R_2 R_1) H suc 0 \)
\item \( \psi(H_1 H_1 suc 0) = H [[suc \rightarrow R_2, 0 \rightarrow R_1] \bullet H suc 0] 0 = R_3 R_2 R_1 H suc 0 \)
 
\end{itemize}

Scheme implementation :

\begin{verbatim}

(define mp (lambda (x)
	(if (pair? x)
		(if (eq? (car x) ':) (list (mp (cdr x)))
			 (cons (mp (car x)) (mp (cdr x))) )
		x ) ))

(eval (mp '(begin

(define cadddr : lambda (x) : 
 car : cdr : cdr : cdr x)

(define last : lambda (l) : 
 if (not : pair? l) l :
 if (not : pair? : cdr l) l :
 last : cdr l)

(define butlast : lambda (l) :
 if (not : pair? l) '() :
 if (not : pair? : cdr l) '() :
 cons (car l) : butlast : cdr l)

(define length : lambda (l) : 
 if (not : pair? l) 0 :
 + 1 : length : cdr l)

(define r2a : lambda (l) : 
 if (not : pair? l) l :
 if (pair? : car l) (r2 : append (car l) : cdr l) :
 if (eq? (car l) 'suc) (cdr l) :
 if (eq? (car l) 'H) (cons (cadr l) : cons (list (cadr l) (caddr l)) : cdddr l) :
 if (eq? (car l) 'R1) (cons (cadr l) : cons (cadr l) : cddr l) :
 if (eq? (car l) 'R2) (cons (cadr l) : cons (caddr l) : cons (cadr l) : cons (caddr l) : cdddr l) 
 l)

(define r : lambda (l) :
 if (not : pair? l) l :
 let ((l1 (map r l))) : 
 if (pair? : car l1) (append (car l1) (cdr l1)) 
 l1)

(define r2 : lambda (l) : r : r2a l)

(define loopr2 : lambda (n l) :
 begin (display n) (display " ") (display l) (newline) :
 if (equal? n 0) '() :
 loopr2 (- n 1) (r2 l))

;(loopr2 10 '(R1 H suc 0))

(define simplif : lambda (x) :
 if (not : pair? x) x :
 if (not : pair? : cdr x) (car x) 
 x)
 
(define subst : lambda (s z a) :
 if (equal? '0 a) z :
 if (equal? 'suc a) s :
 if (not : pair? a) a :
 cons (subst s z : car a) (subst s z : cdr a))

(define format : lambda (a) : 
 if (not : pair? a) a : 
 if (not : pair? : car a) (cons (car a) : map format : cdr a) : 
 format : append (car a) (cdr a))

(define memo '())

(define find : lambda (a memo) :
 if (not : pair? memo) '#f :
 if (equal? a : caar memo) (cdar memo) :
 find a : cdr memo)

(define psi : lambda (a) :
 let ((m : find a memo)) :
 if m m :
 let ((b : psi1 a)) 
  (if (or (not : pair? a) (not : pair? : car a)) 
   (begin
    (display "psi ") (display : format a) (display " = ") (display : format b) (newline)
;    (read-char)
  ))
  (set! memo : cons (cons a b) memo)
  b)

(define psi1 : lambda (a) : 
 if (not : pair? a) a :
 if (pair? : car a) (psi : myappend (car a) (cdr a)) :
 if (equal? (car a) '0) '(H suc 0) :
 if (equal? 'suc : car a)
  (let ((b : psi : cdr a)) :
   if (and (equal? '(0) : last b)
           (equal? '(suc) : last : butlast b)) 
    (list 'R1 (simplif : butlast : butlast b) 'suc '0)
    (list 'psi a)) :
 if (and (equal? 'H : car a) (>= (length a) 3)) 
  (limit (psi : cddr a)
         (psi : cdr a)
         (psi : cons (cadr a) : cons (list (cadr a) (caddr a)) : cdddr a)) :
 if (and (equal? 'R1 : car a) (>= (length a) 2)) 
  (limit (psi : cddr a)
         (psi : cdr a)
         (psi : cons (cadr a) : cdr a)) :
 if (and (equal? 'R2 : car a) (>= (length a) 3))
  (limit (psi : cdddr a)
         (psi : cdr a)
         (psi : cons (cadr a) : cons (caddr a) : cdr a)) :
 if (and (equal? 'H1 : car a) (>= (length a) 3))
  (let ((b : psi : cdr a)) :
   limit '(suc 0)
         b
         (psi : myappend (subst (cadr a) (caddr a) b) : cdddr a))
 a)

(define myappend : lambda (a b) :
 if (not : pair? a) (cons a b) : 
 append a b)

(define commonstart : lambda (a b) :
 if (not : pair? a) (list '() a b) :
 if (not : pair? b) (list '() a b) :
 if (not : equal? (car a) (car b)) (list '() a b) :
 let ((c : commonstart (cdr a) (cdr b))) :
 let ((com : car c) (dif1 : cadr c) (dif2 : caddr c)) :
 list (cons (car a) com) dif1 dif2)

(define limit : lambda (a b c) :
 if (and (equal? (cdr a) (cddr b))
         (equal? (cdr a) (cddr c))
         (equal? a (cdr b))
         (equal? (car b) (car c))
         (equal? (cadr c) (list (car b) (cadr b))))
  (cons 'H b) :
 if (and (equal? a (myappend (cadr b) (cddr b)))
         (equal? (car b) (car c))
         (equal? (cadr c) (list (car b) (cadr b)))
         (equal? (cddr b) (cddr c)))
  (cons 'H b) :
 let ((d : commonstart b c)) :
 let ((com : car d) (difb : cadr d) (difc : caddr d)) :
 if (and (pair? com)
         (equal? com : butlast : car difc)
         (equal? (car difb) (car : last : car difc))
         (equal? a : myappend (car difb) (cdr difb))
         (equal? (cdr difb) (cdr difc)))
  (cons 'H : cons com difb) :
 if (and (equal? a : cdr b)
         (equal? b : cdr c)
         (equal? (car b) (car c))
         (equal? (car c) (cadr c)))
  (cons 'R1 b) :
 if (and (equal? a : myappend (cadr b) : cddr b)
         (equal? b : cdr c)
         (equal? (car c) (cadr c)))
  (cons 'R1 b) :       
 if (and (equal? a : cddr b)
         (equal? b : cddr c)
         (equal? (car b) (car c))
         (equal? (cadr b) (cadr c))
         (equal? (car c) (caddr c))
         (equal? (cadr c) (cadddr c)))
  (if (and (pair? a) : equal? (car a) (car b)) 
    (cons 'R2 : cons (cadr b) a)
    (cons 'R2 b)) :
 if (and (equal? a : cdddr b)
         (equal? b : cdddr c)
         (equal? (car b) (car c))
         (equal? (cadr b) (cadr c))
         (equal? (caddr b) (caddr c))
         (equal? (car c) (car : cdddr c))
         (equal? (cadr c) (cadr : cdddr c))
         (equal? (caddr c) (caddr : cdddr c)))
  (cons 'R3 b) :  
; if (and (pair? : cdr a)
;         (pair? : cdr b)
;         (pair? : cdr c))
;  (limit (cons (list (car a) (cadr a)) : cddr a)
;         (cons (list (car b) (cadr b)) : cddr b)
;         (cons (list (car c) (cadr c)) : cddr c)) :   
 list 'limit a b c)

(define substsz : lambda (s z x) :
 if (equal? 'suc x) s :
 if (equal? '0 x) z :
 if (not : pair? x) x :
 let ((a : substsz s z : car x)
      (b : substsz s z : cdr x)) :
 ;if (pair? a) (append a b) :
 cons a b)

(define fpsi : lambda (a) :
 if (not : pair? a) a :
 if (pair? : car a) (fpsi : myappend (car a) (cdr a)) :
 if (equal? (car a) '0) '(H suc 0) :
 if (equal? 'suc : car a)
  (let ((b : fpsi : cdr a)) :
   if (and (equal? '(0) : last b)
           (equal? '(suc) : last : butlast b)) 
    (list 'R1 (simplif : butlast : butlast b) 'suc '0)
    (list 'psi a)) :
 if (and (equal? 'H : car a) (>= (length a) 3)) 
  (limit (fpsi : cddr a)
         (fpsi : cdr a)
         (fpsi : cons (cadr a) : cons (list (cadr a) (caddr a)) : cdddr a)) :
 if (and (equal? 'R1 : car a) (>= (length a) 2)) 
  (limit (fpsi : cddr a)
         (fpsi : cdr a)
         (fpsi : cons (cadr a) : cdr a)) :
 if (and (equal? 'R2 : car a) (>= (length a) 3))
  (limit (fpsi : cdddr a)
         (fpsi : cdr a)
         (fpsi : cons (cadr a) : cons (caddr a) : cdr a)) :
 if (and (equal? 'H1 : car a) (>= (length a) 3))
  (let ((b : fpsi : cdr a)
        (c : fpsi : cons (cadr a) :
                    cons (list (cadr a) (caddr a)) :
                    cdddr a)) :
   let ((cs : commonstart b c)) :
   let ((com : car cs) (dif1 : cadr cs) (dif2 : caddr cs)) :
   if (and (equal? (car dif2) : append com : list : car dif1)
           (equal? (cdr dif1) (cdr dif2))) 
    (let ((x1 : append (substsz com (car dif1) '(suc 0)) : cdr dif1)) :
     let ((x2 : append (substsz com (car dif1) x1) : cdr dif1)) :
     ;begin (display : list "b="  b "; c=" c "; com=" com " ;dif1=" dif1 "; dif2=" dif2 " ;x1=" x1 "; x2=" x2) :

   ;if (equal? (car c) (car (cadr c)))  
   ;(let ((x1 : append (substsz (car c) (cadr : cadr c) '(suc 0) ) : cddr c)) :
   ; let ((x2 : append (substsz (car c) (cadr : cadr c) x1) : cddr c)) :
   ; let ((x3 : append (substsz (car c) (cadr : cadr c) x2) : cddr c)) :
     limit '(suc 0) x1 x2) :
   list 'psi a) :
 list 'psi a)

;(display : psi '(H H suc 0))
(let ((x '(H1 H1 suc 0))) 
 (display 'psi)
 (display x)
 (display " = ")
 (display : fpsi x)
 (newline)
)

)))

\end{verbatim}

Result : psi(H1 H1 suc 0) = (R3 (R2) (R1) H suc 0)


\subsection{Correspondence between Madore $\psi$ variant and Simmons notation}

\bigskip

Reminder :

\( Fix\ f \zeta = f^\omega (\zeta+1) \) 

\( Next = Fix\ \omega^\bullet = Fix (\alpha \mapsto \omega^\alpha) \) ; \( Next\ \zeta \) is the next \( \varepsilon_\alpha \) after \( \zeta \).

\( [0] h = Fix [h^\bullet \omega] \)

\( [1] h g = Fix [h^\bullet g \omega] \)

\( [2] h g f = Fix [h^\bullet g f \omega] \) 

\bigskip

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \psi(0) = \omega \)
\item \( \psi(\alpha+1) = Next\ \psi(\alpha) \)
\item \( \psi(1) = Next\ \omega \)
\item \( \psi(2) = Next^2 \omega \)
\item \( \psi(\alpha) = Next^\alpha \omega \)
\item \( \psi(\Omega) = Fix [Next^\bullet \omega] \omega = [0] Next\ \omega \)
\item \( \psi(\Omega+1) = Next ([0] Next\ \omega) \)
\item \( \psi(\Omega+\alpha) = Next^\alpha ([0] Next\ \omega) \)
\item \( \psi(\Omega \cdot 2) = \psi(\Omega+\Omega) = Fix [Next^\bullet ([0] Next \omega)] \omega = [0] Next ([0] Next\ \omega) \)
\item \( \psi(\Omega \cdot \alpha) = ([0] Next)^\alpha \omega \)
\item \( \psi(\Omega^2) = \psi(\Omega \cdot \Omega) = Fix [([0] Next)^\bullet \omega] \omega \)
\item \( \psi(\Omega^\alpha) = [0]^\alpha Next\ \omega \)
\item \( \psi(\Omega^\Omega) = Fix [[0]^\bullet Next\ \omega] \omega = [1] [0] Next\ \omega \)
\item \( \ldots \)
\end{itemize}


\subsection{Feferman \( \theta \) function}

Feferman's \(\theta\)-functions constitute a hierarchy of single-argument functions \(\theta_\alpha: \text{On} \mapsto \text{On}\) for \(\alpha \in \text{On}\).[4] It is often considered a two-argument function with \(\theta_\alpha(\beta)\) written as \(\theta\alpha\beta\). It is defined like so:

\begin{eqnarray*}
C_0(\alpha, \beta) &=& \beta \cup \{0, \omega_1, \omega_2, \ldots, \omega_\omega\}\\
C_{n+1}(\alpha, \beta) &=& \{\gamma + \delta, \theta_\xi(\eta) | \gamma, \delta, \xi, \eta \in C_n(\alpha, \beta); \xi < \alpha\} \\
C(\alpha, \beta) &=& \bigcup_{n < \omega} C_n (\alpha, \beta) \\
\theta_\alpha(\beta) &=& \min\{\gamma | \gamma \not\in C(\alpha, \gamma) \wedge \forall \delta < \beta: \theta_\alpha(\delta) < \gamma\} \\
\end{eqnarray*}

Informally:

 An ordinal \(\beta\) is considered \(\alpha\)-critical iff it cannot be constructed with the following elements:
 all ordinals less than \(\beta\),
 all ordinals in the set \(\{0, \omega_1, \omega_2, \ldots, \omega_\omega\}\),
 the operation \(+\),
 applications of \(\theta_\xi\) for \(\xi < \alpha\).
 \(\theta_\alpha\) is the enumerating function for all \(\alpha\)-critical ordinals.

The Feferman theta function is considered an extension of the two-argument Veblen function — for \(\alpha < \Gamma_0\), \(\theta_\alpha(\beta) = \varphi_\alpha(\beta)\). For this reason, \(\varphi\) may be used interchangeably with \(\theta\) for \(\alpha < \Gamma_0\). Because of the restriction of \(\xi \in C_n(\alpha, \beta)\) imposed in the definition of \(C_{n+1}(\alpha, \beta)\), which makes \(\theta_{\Gamma_0}\) never used in the calculation of C set when \(\alpha < \Omega\), \(\theta\) function does not grow until \(\alpha < \Omega\). This results in \(\theta_\Omega(0) = \Gamma_0\) while \(\varphi_\Omega(0) = \Omega\). The value of \(\theta_\Omega(0) = \Gamma_0\) can be used above \(\Omega\) because of the definition of \(C_0\) which includes \(\Omega = \omega_1\).
The supremum of the range of the function is the Takeuti-Feferman-Buchholz ordinal \(\theta_{\varepsilon_{\Omega_\omega + 1}}(0)\).

Buchholz discusses a set he calls \(\theta(\omega + 1)\), which is the set of all ordinals describable with \(\{0, \omega_1, \omega_2, \ldots, \omega_\omega\}\) and finite applications of \(+\) and \(\theta\).

\bigskip


Below you can see rules to assign fundamental sequences for the Feferman theta-function at least up to Large Veblen ordinal (they are same as rules for finitary/transfinitary Veblen function from previous post , but I rewrote them for the application for theta-function). Here theta-function is considered as a two-argument function with \(\theta_\xi(\gamma)\) written as \(\theta(\xi,\gamma)\).

If a limit ordinal \(\alpha\) is written in next normal form

\(\alpha=\theta(\xi_1,\gamma_1)+\theta(\xi_2,\gamma_2)+\cdots+\theta(\xi_k,\gamma_k)\),

where

\(\theta(\xi_1,\gamma_1)\geq \theta(\xi_2,\gamma_2)\geq\cdots\geq\theta(\xi_k,\gamma_k)\),

\(\xi_i=\Omega^{\beta_{i,1}}\cdot \alpha_{i,1}+\Omega^{\beta_{i,2}}\cdot \alpha_{i,2}+\cdots+\Omega^{\beta_{i,n_i}}\cdot \alpha_{i,n_i}\) for all \(i \in \{1,...,k\}\) where

\(\beta_{i,1}>\beta_{i,2}>\cdots>\beta_{i,n_i} \geq 0\) ,

\(\alpha_{i,j}\geq 1\) for all \(j \in \{1,...,n_i \}\),

\(n_i \) is a non-negative integer,

\(\theta(\xi_k,\gamma_k)\) is a limit ordinal,

\(\beta_{i,j},\alpha_{i,j},\gamma_i < \theta(\xi_i, \gamma_i)\) for all \(i \in \{1,...,k\}\), \(j \in \{1,...,n_i \}\),

\(k\) is a positive integer,

then \(\alpha[n]=\theta(\xi_1,\gamma_1)+\theta(\xi_2,\gamma_2)+\cdots+\theta(\xi_k,\gamma_k)[n]\)

If write a limit ordinal as \(\theta(\cdots+\Omega^{\beta_k} \cdot \alpha_k,\gamma)\) where dots \(\cdots\) denote \(\sum_{i=1}^{k-1}\Omega^{\beta_{i}}\cdot \alpha_{i}\),

then

1)if \(k=0\) then \(\theta(\cdots+\Omega^{\beta_k} \cdot \alpha_k,\gamma)=\theta(0,\gamma)\) and in this case:

1.1) \(\theta(0,\gamma)=\omega^\gamma\),

1.2) \(\theta(0,0)=\omega^0=1\),

1.3) \(\theta(0,\gamma)[n]=\theta(0,\gamma-1)\cdot n=\omega^{\gamma-1} n\) if \(\gamma\) is a successor ordinal,

1.4) \(\theta(0,\gamma)[n]=\theta(0,\gamma[n])=\omega^{\gamma[n]} \) if \(\gamma\) is a limit ordinal,

1.5) \((\theta(0,\gamma_1)+\cdots+\theta(0,\gamma_k))[n]=\theta(0,\gamma_1)+\cdots+\theta(0,\gamma_k)[n]\), where

\(\gamma_1 \geq \cdots \geq \gamma_k \geq 1\),

\(\gamma_m<\theta(0,\gamma_m)\) for all \(m \in \{1,...,k\}\),

2) if \(\beta_k=0\) then \(\Omega^{\beta_k} \cdot \alpha_k=\alpha_k\) and in this case:

2.1) \(\theta(\cdots+\alpha_k,0)[0]=0\)

and \(\theta(\cdots+\alpha_k,0)[n+1]=\theta(\cdots+\alpha_k-1,\theta(\cdots+\alpha_k,0)[n])\) if \(\alpha_k\) is a successor ordinal,

2.2) \(\theta(\cdots+\alpha_k,\gamma+1)[0]=\theta(\cdots+\alpha_k,\gamma)+1\)

and \(\theta(\cdots+\alpha_k,\gamma+1)[n+1]=\theta(\cdots+\alpha_k-1,\theta(\cdots+\alpha_k,\gamma+1)[n])\) if \(\alpha_k\) is a successor ordinal,

2.3) \(\theta(\cdots+\alpha_k,\gamma)[n]=\theta(\cdots+\alpha_k,\gamma[n])\) if \(\gamma\) is a limit ordinal,

2.4) \(\theta(\cdots+\alpha_k,0)[n]=\theta(\cdots+\alpha_k[n],0)\) if \(\alpha_k\) is a limit ordinal,

2.5) \(\theta(\cdots+\alpha_k,\gamma+1)[n]=\theta(\cdots+\alpha_k[n],\theta(\cdots+\alpha_k,\gamma))\) if \(\alpha_k\) is a limit ordinal,

3) if \(\beta_k > 0\) then:

3.1) \(\theta(\cdots+\Omega^{\beta_k}\cdot\alpha_k,0)[0]=0\)

and \(\theta(\cdots+\Omega^{\beta_k}\cdot\alpha_k,0)[n+1]=\theta(\cdots+\Omega^{\beta_k}\cdot(\alpha_k-1)+\Omega^{\beta_k-1}\cdot(\theta(\cdots+\Omega^{\beta_k}\cdot\alpha_k,0)[n]),0)\)

if \(\alpha_k\) and \(\beta_k\) are successor ordinals,

3.2) \(\theta(\cdots+\Omega^{\beta_k}\cdot\alpha_k,\gamma)[0]=\theta(\cdots+\Omega^{\beta_k}\cdot\alpha_k,\gamma-1)+1\)

and \(\theta(\cdots+\Omega^{\beta_k}\cdot\alpha_k,\gamma)[n+1]=\theta(\cdots+\Omega^{\beta_k}\cdot(\alpha_k-1)+\Omega^{\beta_k-1}\cdot(\theta(\cdots+\Omega^{\beta_k}\cdot\alpha_k,\gamma)[n]),0)\)

if \(\alpha_k\) and \(\beta_k\) are successor ordinals,

3.3) \(\theta(\cdots+\Omega^{\beta_k}\cdot\alpha_k,\gamma)[n]=\theta(\cdots+\Omega^{\beta_k}\cdot\alpha_k,\gamma[n])\) if \(\gamma\) is a limit ordinal,

3.4) \(\theta(\cdots+\Omega^{\beta_k}\cdot\alpha_k,0)[n]=\theta(\cdots+\Omega^{\beta_k}\cdot(\alpha_k[n]),0)\) if \(\alpha_k\) is a limit ordinal and \(\beta_k\) is a successor ordinal,

3.5) \(\theta(\cdots+\Omega^{\beta_k}\cdot\alpha_k,\gamma)[n]=\theta(\cdots+\Omega^{\beta_k}\cdot(\alpha_k[n])+\Omega^{\beta_k-1}\cdot(\theta(\cdots+\Omega^{\beta_k}\cdot\alpha_k,\gamma-1)+1),0)\)

if \(\alpha_k\) is a limit ordinal, \(\beta_k\) and \(\gamma\) are successor ordinals,

3.6) \(\theta(\cdots+\Omega^{\beta_k}\cdot\alpha_k,0)[n]=\theta(\cdots+\Omega^{\beta_k}\cdot(\alpha_k-1)+\Omega^{\beta_k[n]},0)\) if \(\beta_k\) is a limit ordinal and \(\alpha_k\) is a successor ordinal,

3.7) \(\theta(\cdots+\Omega^{\beta_k}\cdot\alpha_k,\gamma)[n]=\theta(\cdots+\Omega^{\beta_k}\cdot(\alpha_k-1)+\Omega^{\beta_k[n]}\cdot(\theta(\cdots+\Omega^{\beta_k}\cdot\alpha_k,\gamma-1)+1),0)\)

if \(\beta_k\) is a limit ordinal, \(\alpha_k\) and \(\gamma\) are successor ordinals,

3.8) \(\theta(\cdots+\Omega^{\beta_k}\cdot\alpha_k,0)[n]=\theta(\cdots+\Omega^{\beta_k}\cdot(\alpha_k[n]),0)\) if \(\beta_k\) and \(\alpha_k\) are limit ordinals,

3.9) \(\theta(\cdots+\Omega^{\beta_k}\cdot\alpha_k,\gamma)[n]=\theta(\cdots+\Omega^{\beta_k}\cdot(\alpha_k[n])+\Omega^{\beta_k[n]}\cdot(\theta(\cdots+\Omega^{\beta_k}\cdot\alpha_k,\gamma-1)+1),0)\)

if \(\beta_k\) and \(\alpha_k\) are limit ordinals and \(\gamma\) is a successor ordinal.

Large Veblen ordinal \(\theta(\Omega^\Omega,0)[0]=0\) and \(\theta(\Omega^\Omega,0)[n+1]=\theta(\Omega^{\theta(\Omega^\Omega,0)[n]},0)\).

Note: \(\theta(\xi,0)\) can be abbriviated as \(\theta(\xi)\).

\bigskip

References :

http://googology.wikia.com/wiki/Ordinal\_notation

http://googology.wikia.com/wiki/User\_blog:Denis\_Maksudov/Fundamental\_sequences\_for\_the\_theta-function


\subsection{Hypcos \( \theta \) function}

\( \theta  \) function is a binary function. It’s defined as follows:

\begin{itemize}

\item \( C_0(\alpha,\beta) = \lbrace \gamma|\gamma<\beta \rbrace \cup \lbrace 0 \rbrace \).

\item \( C_{n+1}(\alpha,\beta) = \lbrace \gamma+\delta|\gamma,\delta \in C_n(\alpha,\beta) \rbrace \cup \lbrace \theta(\gamma,\delta)|\gamma<\alpha \& \gamma,\delta \in C_n(\alpha,\beta) \rbrace \cup \lbrace \Omega_c|c \in C_n(\alpha,\beta) \rbrace \).

\item \( C(\alpha,\beta) = \cup_{n<\omega} C_n(\alpha,\beta) \)

\item \( \theta(\alpha,\beta) = min \lbrace c|~(c \in C(\alpha,\gamma) \& (\forall \delta<\beta:\gamma>\theta(\alpha,\delta)) \rbrace \)

where \( \Omega_0 = 0 \) and \( \Omega_a \) represents the a-th uncountable ordinal.

\end{itemize}

It means that \( \theta(\alpha,\beta) \) is the \( (1+\beta) \)-th ordinal such that it cannot be built from ordinals less than it by addition, applying \( \theta(\delta,\ldots) \) where \( \delta < \alpha \) and getting an uncountable cardinal.

It seems that \( \theta(\alpha,\beta) = \varphi(\alpha,\beta) \) below \( \Gamma_0 \), making \( \theta \) function an extension of \( \varphi \) function. Even \( \theta(\Gamma_0,\beta) = \varphi(\Gamma_0,\beta) \) is true.

\bigskip

Other important values are :

\begin{itemize}

\item \( \theta(\Omega,\alpha) = \Gamma_\alpha \)

\item \( \theta(\Omega^\omega,0) = \) small Veblen ordinal

\item \( \theta(\Omega^\Omega,0) = \) large Veblen ordinal

\item \( \theta(\varepsilon_{\Omega+1},0) = \) Bachmann Howard ordinal

\end{itemize}

Reference: https://stepstowardinfinity.wordpress.com/2015/05/04/ordinal2/  

\subsection{Deedlit's extension of hierarchy of \(\vartheta\)-functions with \(\varphi\) and \(\Omega_\alpha\)}

\subsubsection{Definition}

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \(C_0(\nu,\alpha,\beta)=\beta\cup\Omega_\nu\cup\{0\}\)
\item \(C_{n+1}(\nu,\alpha,\beta)=\{\gamma+\delta,\varphi(\gamma,\delta),\Omega_\gamma,\vartheta_\gamma(\eta):\gamma,\delta,\eta\in C_n(\nu,\alpha,\beta);\eta<\alpha\}\)
\item \(C(\nu,\alpha,\beta)=\cup_{n<\omega}C_n(\nu,\alpha,\beta)\)
\item \(\vartheta_\nu(\alpha)=\text{min}(\{\beta<\Omega_{\nu+1}:C(\nu,\alpha,\beta)\cap\Omega_{\nu+1}\subseteq\beta\wedge\alpha\in C(\nu,\alpha,\beta)\}\cup\{\Omega_{\nu+1}\})\)
\end{itemize}

\subsubsection{Standard form}

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item If \(\alpha=0\), then the standard form for \(\alpha\) is 0.
\item If \(\alpha\) is not additively principal, then the standard form for \(\alpha\) is \(\alpha=\alpha_1+\alpha_2+\cdots+\alpha_n\), where the \(\alpha_i\) are principal ordinals with \(\alpha_1\geq\alpha_2\geq\cdots\geq\alpha_n\), and the \(\alpha_i\) are expressed in standard form.
\item If \(\alpha\) is an additively principal ordinal but not a strongly critical ordinal, then the standard form for \(\alpha\) is \(\alpha=\varphi(\beta,\gamma)\) where \(\gamma<\alpha\) where \(\beta\) and \(\gamma\) are expressed in standard form.
\item If \(\alpha\) is of the form \(\Omega_\beta\), then \(\Omega_\beta\) is the standard form for \(\alpha\).
\item If \(\alpha\) is a strongly critical ordinal but not of the form \(\Omega_\beta\), then \(\alpha\) is expressible in the form \(\vartheta_\nu(\gamma)\). Then the standard form for \(\alpha\) is \(\alpha=\vartheta_\nu(\gamma)\) where \(\gamma\) and \(\nu\) are expressed in standard form.
\end{itemize}

\subsubsection{Fundamental sequences} 

For ordinals \(\alpha<\vartheta(\Omega_{\Omega_{\Omega_{\ldots}}})\), written in normal form, fundamental sequences are defined as follows:

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item If \(\alpha=0\), then \(\text{cof}(\alpha)=0\) and \(\alpha\) has fundamental sequence the empty set.
\item If \(\alpha=\varphi(0,0)=1\) then \(\text{cof}(\alpha)=1\) and \(\alpha[0]=0\)
\item If \(\alpha=\alpha_1+\alpha_2+\cdots+\alpha_n\), then \(\text{cof}(\alpha)=\text{cof}(\alpha_n)\) and \(\alpha[\eta]=\alpha_1+\alpha_2+\cdots+(\alpha_n[\eta])\)
\item If \(\alpha=\varphi(\beta,\gamma)\) where \(\gamma\) is a limit ordinal then \(\text{cof}(\alpha)=\text{cof}(\gamma)\) and \(\alpha[\eta]=\varphi(\beta,\gamma[\eta])\)
\item If \(\alpha=\varphi(0,\gamma+1)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[\eta]=\varphi(0,\gamma)\cdot\eta\)
\item If \(\alpha=\varphi(\beta+1,0)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=0\) and \(\alpha[\eta+1]=\varphi(\beta,\alpha[\eta])\)
\item If \(\alpha=\varphi(\beta+1,\gamma+1)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=\varphi(\beta+1,\gamma)+1\) and \(\alpha[\eta+1]=\varphi(\beta,\alpha[\eta])\)
\item If \(\alpha=\varphi(\beta,0)\) where \(\beta\) is a limit ordinal then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=\varphi(\beta[\eta],0)\)
\item If \(\alpha=\varphi(\beta,\gamma+1)\) where \(\beta\) is a limit ordinal then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=\varphi(\beta[\eta],\varphi(\beta,\gamma)+1)\)
\item If \(\alpha=\Omega_{\beta+1}\) then \(\text{cof}(\alpha)=\Omega_{\beta+1}\) and \(\alpha[\eta]=\eta\)
\item If \(\alpha=\Omega_{\beta}\) where \(\beta\) is a limit ordinal then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=\Omega_{\beta[\eta]}\)
\item If \(\alpha=\vartheta_\nu(\beta+1)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=\vartheta_\nu(\beta)+1\) and \(\alpha[\eta+1]=\varphi(\alpha[\eta],0)\)
\item If \(\alpha=\vartheta_\nu(\beta)\) where \(\omega\le\text{cof}(\beta)\le\Omega_\nu\) then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=\vartheta_\nu(\beta[\eta])\)
\item If \(\alpha=\vartheta_\nu(\beta)\) where \(\omega\le\text{cof}(\beta)=\Omega_{\mu+1}>\Omega_{\nu}\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[\eta]=\vartheta_\nu(\beta[\gamma[\eta]])\) with \(\gamma[0]=\Omega_\mu\) and \(\gamma[\eta+1]=\vartheta_\mu(\beta[\gamma[\eta]])\)
\end{itemize}

Reference: http://googology.wikia.com/wiki/List\_of\_systems\_of\_fundamental\_sequences

\subsection{Deedlit's extension of hierarchy of \(\vartheta\)-functions without \(\varphi\) and \(\Omega_\alpha\)}

\subsubsection{Definition} 

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \(C_0(\alpha,\beta)=\beta\)
\item \(C_{n+1}(\alpha,\beta)=\{\gamma+\delta,\vartheta_\gamma(\eta):\gamma,\delta,\eta\in C_n(\alpha,\beta);\eta<\alpha\}\)
\item \(C(\alpha,\beta)=\cup_{n<\omega}C_n(\alpha,\beta)\)
\item \(\vartheta_\nu(\alpha)=\text{min}\{\beta:|\omega\beta|=\Omega_\nu;C(\alpha,\beta)\cap\Omega_{\nu+1}\subseteq\beta;\alpha\in C(\alpha,\beta)\}\)
\end{itemize}

\subsubsection{Standard form} 

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item If \(\alpha=0\), then the standard form for \(\alpha\) is 0.
\item If \(\alpha\) is not additively principal, then the standard form for \(\alpha\) is \(\alpha=\alpha_1+\alpha_2+\cdots+\alpha_n\), where the \(\alpha_i\) are principal ordinals with \(\alpha_1\geq\alpha_2\geq\cdots\geq\alpha_n\), and the \(\alpha_i\) are expressed in standard form.
\item If \(\alpha\) is additively principal, then \(\alpha\) is expressible in the form \(\vartheta_\nu(\gamma)\). Then the standard form for \(\alpha\) is \(\alpha=\vartheta_\nu(\gamma)\) where \(\gamma\) and \(\nu\) are expressed in standard form.
\end{itemize}

\subsubsection{Fundamental sequences} 

For ordinals \(\alpha<\vartheta(\Omega_{\Omega_{\Omega_{\ldots}}})\), written in normal form, fundamental sequences are defined as follows:

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item If \(\alpha=0\), then \(\text{cof}(\alpha)=0\) and \(\alpha\) has fundamental sequence the empty set.
\item If \(\alpha=\vartheta_0(0)=1\) then \(\text{cof}(\alpha)=1\) and \(\alpha[0]=0\)
\item If \(\alpha=\alpha_1+\alpha_2+\cdots+\alpha_n\), then \(\text{cof}(\alpha)=\text{cof}(\alpha_n)\) and \(\alpha[\eta]=\alpha_1+\alpha_2+\cdots+(\alpha_n[\eta])\)
\item If \(\alpha=\vartheta_{\beta+1}(0)\) then \(\text{cof}(\alpha)=\Omega_{\beta+1}\) and \(\alpha[\eta]=\eta\)
\item If \(\alpha=\vartheta_{\beta}(0)\) where \(\beta\) is a limit ordinal then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=\vartheta_{\beta[\eta]}(0)\)
\item If \(\alpha=\vartheta_\nu(\beta+1)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[\eta]=\vartheta_\nu(\beta)\eta\)
\item If \(\alpha=\vartheta_\nu(\beta)\) where \(\omega\le\text{cof}(\beta)\le\Omega_\nu\) then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=\vartheta_\nu(\beta[\eta])\)
\item If \(\alpha=\vartheta_\nu(\beta)\) where \(\text{cof}(\beta)=\Omega_{\mu+1}>\Omega_{\nu}\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[\eta]=\vartheta_\nu(\beta[\gamma[\eta]])\) with \(\gamma[0]=\Omega_\mu\) and \(\gamma[\eta+1]=\vartheta_\mu(\beta[\gamma[\eta]])\)
\end{itemize}

Note that these fundamental sequences are the same as those of Buchholz \( \psi_\nu \) functions.

These fundamental sequences can be reformulated :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item (0 = 0)
\item \( \vartheta_0(0) = 1 \)
\item (standard definition of addition of a limit ordinal)
\item \( \vartheta_{\beta+1}(0) = \Omega_{\beta+1} \)
\item \( \vartheta_{Lim_\mu f}(0) = Lim_\mu (\xi \mapsto \vartheta_{f(\xi)}(0)) \)
\item \( \vartheta_\nu(\beta+1) = \vartheta_\nu(\beta) \cdot \omega \)
\item \( \vartheta_\nu (Lim_\mu f) = Lim_\mu (\vartheta_\nu \circ f) \) if \( \mu \le \nu \)
\item \( \vartheta_\nu(Lim_{\mu+1} f) = lim (\xi \mapsto \vartheta_\nu (f ((\vartheta_\mu \circ f)^\xi (\Omega_\mu)) \) if \( \mu+1 > \nu \)
\end{itemize}
  
Reference: http://googology.wikia.com/wiki/List\_of\_systems\_of\_fundamental\_sequences

\begin{comment}

\subsection{Taranovsky's C}

C(a,b) is the least element above b that has degree a.

Definition: A degree for a well-ordered set S is a binary relation on S such that :

\begin{itemize}
	\item Every element \( c \in S \) has degree \( 0_S \) (the least element of S). \( 0_S \) only has degree \( 0_S \).
	\item For a limit a, c has degree a iff it has every degree less than a.
	\item For a successor a'=a+1, either of the following holds:
	\begin{itemize}
		\item An element has degree a' iff it is a limit of elements of degree a.
		\item There is a limit element d <= a such that for every c in S, c has degree a' iff it has degree a and either c <= d or c is a limit of elements of degree a (or both).
	\end{itemize}
\end{itemize}

Note: The third condition can be equivalently written as \( \forall a (C_{a+1} = lim(C_a) \vee \exists d \in lim(S) \cap (a+1) C_{a+1} = lim(C_a) \cup (C_a \cap (d+1))) \), where S is identified with an ordinal (so a+1 consists of ordinals \( \leq a), C_a \) is the set of elements that have degree a, and lim is limit points.

In other terms : Let \( \eta \) be an ordinal, and let \( 0_S \) and let Ld(a,b) be the statement that a is a limit of ordinals c such that \( (c,b) \in D \). Let D be the following binary relation over \( \eta \) :

\begin{itemize}
	\item \( \forall a<\eta:(a,0) \in D \)
	\item \( \forall a<\eta:a \neq 0 \Rightarrow (0,a) \notin D \)
	\item \( \forall b\in Lim \cup \eta:(a,b)\in D \Leftrightarrow \forall c<b:(a,c)\in D \)
	\item \( \forall b:(a,b)\in D \Leftrightarrow Ld(a,b+1)\forall b:(a,b)\in D \Leftrightarrow Ld(a,b+1) \)
	\item \( \forall b:\exists d\in Lim \cup  \eta :d<=b \Rightarrow \forall c:(c,a+1)\in D \Leftrightarrow (c<=d \vee Ld(c,b)) \)
\end{itemize}

Then \( C(a,b)=min{c:c\in  \eta  \wedge c>b \wedge (c,a)\in D} \).

\( C(a, b) = b+\omega^a \) iff \( C(a, b) \geq  a \).


For ordinals in the standard representation written in the postfix form, the comparison is done in the lexicographical order where \( 'C' < '0' < '\Omega' \): For example, \( C(C(0,0),0) < C(\Omega, 0) \) because \( 000CC < 0 \omega C \). (This does not hold for non-standard representations of ordinals.)

The fundamental sequences of Taranovsky’s notation can be easily defined.

Let \( L(\alpha) \) be the amount of C’s in standard representation of \( \alpha \), then \( \alpha [n]=max \lbrace \beta | \beta < \alpha  \wedge L(\beta) \leq L(\alpha)+n \rbrace \).

Here is a summary of the system by Taranovsky (see https://cs.nyu.edu/pipermail/fom/2012-March/016349.html) :

\begin{verbatim}

I discovered a conjectured ordinal notation system that I conjecture 
reaches full second order arithmetic.  I implemented the system in a 
python module/program:
http://web.mit.edu/dmytro/www/other/OrdinalArithmetic.py
along with ordinal arithmetic operations (addition, multiplication, 
exponentiation, etc.) and other functions.  The ordinal arithmetic 
functionality is useful even if you are only interested in ordinals 
below epsilon_0.

The notation system is simple enough to be defined in full here.

Definition: An ordinal a is 0-built from below from b iff a<=b
a is n+1-built from below from b iff the standard representation of a 
does not use ordinals above a except in the scope of an ordinal n-built 
from below from b.

(Note: "in the scope of" means "as a subterm of".)

The nth (n is a positive integer) ordinal notation system is defined as 
follows.

Syntax: Two constants (0, W_n) and a binary function C.
Comparison: For ordinals in the standard representation written in the 
postfix form, the comparison is done in the lexicographical order where 
'C' < '0' < 'W_n': For example, C(C(0,0),0) < C(W_n, 0) because 0 0 0 C 
C < 0 W_n C.

Standard Form:
0, W_n are standard
"C(a, b)" is standard iff
1. "a" and "b" are standard,
2. b is 0 or W_n or "C(c, d)" with a<=c, and
3. a in n-built from below from b.

I conjecture that the strength of the nth ordinal notation system is 
between Pi^1_{n-1}-CA and Pi^1_n-CA_0, and thus the sum of the order 
types of these ordinal notation systems is the proof-theoretical ordinal 
of second order arithmetic.

The full notation system is obtained by combining these notation systems 
as follows:
Constants 0 and W_i (for every positive integer i), and a binary function C.
W_i = C(W_{i+1}, 0) and the standard form always uses W_i instead of 
C(W_{i+1}, 0).
To check for standard form and compare ordinals use W_i = C(W_{i+1}, 0) 
to convert each W to W_n for a single positive integer n (it does not 
matter which n) and then use the nth ordinal notation system.

To make C a total function for a and b in the notation system (this is 
not required for standard forms), let C(a, b) be the least ordinal (in 
the notation system) of degree >=a above b, where the degree of W_i is 
W_{i+1} and the degree of C(c,d) is c if "C(c,d)" is the standard form.  
A polynomial time computation of C(a, b) (that I believe is correct) is 
included in the program.

To complete ordinal analysis of second order arithmetic, one would need:
* A canonical assignment of notations to formulas that provably in 
second order arithmetic denote an ordinal, and such that for every two 
ordinals/formulas, comparison is provable in second order arithmetic.  
The idea is that the notation system captures not only provably 
recursive ordinals of second order arithmetic but all ordinals that have 
a provable canonical definition in second order arithmetic.  For 
example, W_1 is best assigned to the least admissible ordinal above 
omega. A partial assignment is in my paper.  (It is because of such 
assignment that I believe that the system reaches full second order 
arithmetic.)
* Proof that the system is well-founded and that it has the right 
strength, etc.  (If you do not fully understand the notation system, or 
if you think that it is not well-founded, let me know.)

Historical Note:  In 2005, I discovered the right general form of C, 
defined a notation system at the level of alpha-recursively inaccessible 
ordinals (FOM postings in August 2005), and had an idea for reaching 
second order arithmetic.  In January 2006 (or possibly late 2005), I 
defined the notation system with W_2 and in 2009 (June 29, 2009 FOM 
posting) implemented it is a computer program.  This year I defined the 
key concept -- n-built from below -- that allowed me to complete the 
full notation system.

Details about the ordinal notation system and its initial segments are 
in my paper:
http://web.mit.edu/dmytro/www/other/OrdinalNotation.htm

Sincerely,
Dmytro Taranovsky

\end{verbatim}

Here are some examples of representations of some ordinals : 

\begin{itemize}
\item \( 0 = 0 \)
\item \( 1 = 0+\omega^0 = C(0,0) \)
\item \( 2 = 1+\omega^0 = C(0,1) = C(0,C(0,0)) \)
\item \( \omega = 0+\omega^1 = C(1,0) = C(C(0,0),0) \)
\item \( \omega+1 = \omega+\omega^0 = C(0,\omega) = C(0,C(1,0)) \)
\item \( \omega \cdot 2 =\omega+\omega^1 = C(1,\omega) = C(1,C(1,0)) \)
\item \( \omega^2 = 0+\omega^2 = C(2,0) \)
\item \( \omega^\omega = 0+\omega^\omega = C(\omega,0) = C(C(1,0),0) \)
\item \( \omega^{\omega^\omega} = 0+\omega^{\omega^\omega} = C(\omega^\omega,0) = C(C(C(1,0),0),0) \)
\item \( \varepsilon_0 = \varphi(1,0) = \varphi'(0,1) = C(\Omega_1,0) \)
\item \( \varepsilon_1 = \varphi(1,1) = \varphi'(0,2) = C(W,C(W,0)) \) (note that the correspondence with \( \varphi' \) is simpler than with \( \varphi \))
\item \( \zeta_0 = \varphi(2,0) = \varphi'(1,1) = C(C(\Omega_1,\Omega_1),0) = C(\Omega_1 \cdot 2,0) \) with \( \Omega_1 \cdot 2 = C(\Omega_1,\Omega_1)
 \)
\item \( \zeta_1 = \varphi(2,1) = \varphi'(1,2) = C(\Omega_1 \cdot 2,C(\Omega_1 \cdot 2,0)) \)
\item \( \eta_0 = \varphi(3,0) = \varphi'(2,1) = C(\Omega_1 \cdot 3,0) \) with \( \Omega_1 \cdot 3 = C(\Omega_1,C(\Omega_1,\Omega)) \)
\item \( \Gamma_0 = \varphi(1,0,0) = \varphi'(1,0,1) = C(C(\Omega_1 \cdot 2,\Omega_1),0) = C({\Omega_1}^2,0) \) with \( {\Omega_1}^2 = C(\Omega_1 \cdot 2,\Omega_1) \)
\item \( \Gamma_1 = C({\Omega_1}^2,C({\Omega_1}^2,0)) \)
\item \( \Gamma_\omega = C({\Omega_1}^2+1,0) \)
\item Small Veblen ordinal \( = C({\Omega_1}^\omega,0) \)
\item Large Veblen ordinal \( = C({\Omega_1}^{\Omega_1},0) \)
\item Bachmann Howard ordinal \( = C(C(\Omega_2,\Omega_1),0) \)
\end{itemize}

\bigskip

Properties :

\begin{itemize}
\item \( C(\alpha,\beta) = \beta+\omega^\alpha \) if \( C(\alpha,\beta) \ge \alpha \)
\item \( C(0,\alpha) = \alpha+1 = suc(\alpha) \)
\item \( C(\alpha+1,\beta) = C(C(0,\alpha),\beta) = [C(\alpha,\bullet)]^\omega(\beta) = H [C(\alpha,\bullet)] \beta \)
\item \( C(1,\alpha) = C(C(0,0),\alpha) = \alpha+\omega \)
\item \( C(lim\ f) \beta = lim [C(f(\bullet),\beta)] \)
\item \( C(Lim_1 f,0) = [C(f(\bullet),0)]^\omega(0) \)
\item \( C(Lim_1 f,\beta) = [C(f(\bullet),\beta)]^\omega(0) \) (not in all cases)
\end{itemize}

Examples :
\begin{itemize}
\item \( 1 = \omega^0 = C(0,0) \)
\item \( \omega = C(C(0,0),0) = [C(0,\bullet)]^\omega(0) = H [C(0,\bullet)] 0 = suc^\omega(0) = H suc\ 0 \)
\item \( \omega \cdot 2 = C(C(0,0),C(C(0,0),0) = [C(C(0,0),\bullet)]^\omega(0) = [C(0,\bullet)]^\omega(C(C(0,0),0)) = suc^\omega(\omega) = H suc (H suc\ 0) \)
\item \( \omega^2 = C(C(0,C(0,0)),0) = [C(C(0,0),\bullet)]^\omega(0) = [\bullet+\omega]^\omega(0) = H (H suc) 0 \)
\item \( \omega^\omega = C(C(C(0,0),0),0) = C([C(0,\bullet)]^\omega(0),0) = C(\omega,0) \)
\item \( C(\Omega_1,0) = C(Lim_1 [\bullet],0) = [C(\bullet,0)]^\omega(0) = sup \lbrace 0, C(0,0) = 1 = \omega^0, C(C(0,0),0) = \omega = \omega^1, C(C(C(0,0),0),0) = \omega^\omega, \ldots \rbrace = \varepsilon_0 \)
\item \( C(\Omega_1,\varepsilon_0) = C(Lim_1 [\bullet],\varepsilon_0) = [C(\bullet,\varepsilon_0)]^\omega(0) = sup \lbrace \)
	\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
	\item \( 0 \)
	\item \( C(0,\varepsilon_0) = \varepsilon_0+1 \)
	\item \( C(\varepsilon_0+1,\varepsilon_0) = \varepsilon_0 + \omega^{\varepsilon_0+1} = \varepsilon_0 \cdot \omega \)
	\item \( C(\varepsilon_0 \cdot \omega,\varepsilon_0) = \varepsilon_0 + \omega^{\varepsilon_0 \cdot \omega} = {\varepsilon_0}^\omega \)
	\item \( C({\varepsilon_0}^\omega,\varepsilon_0) = {\varepsilon_0}^{{\varepsilon_0}^\omega} \)
	\item \( \ldots \rbrace = \varepsilon_1 \)
	\end{itemize}
\item \( C(\Omega_1 \cdot 2,0) = C(Lim_1 [\Omega+\bullet],0) = [C(\Omega_1+\bullet,0)]^\omega(0) = sup \lbrace 0, C(\Omega_1,0) = \varepsilon_0, C(\Omega+\varepsilon_0,0) = \varepsilon_{\varepsilon_0}, \ldots \rbrace = \zeta_0 \)
\item Case where \( C(Lim_1 f,\beta) \neq [C(f(\bullet),\beta)]^\omega(0) : C(\Omega_1,\Omega_1) = \Omega_1 \cdot 2 \), but \( [C(\bullet,\Omega_1)]^\omega(0) = \varepsilon_{\Omega_1+1} \)
\end{itemize}

\bigskip

References :

http://web.mit.edu/dmytro/www/other/OrdinalNotation.htm 

https://stepstowardinfinity.wordpress.com/2015/06/22/ordinal3/ 

http://googology.wikia.com/wiki/User\_blog:Hyp\_cos/Fundamental\_Sequences\_in\_Taranovsky\%27s\_Notation


\section{Ordinal trees}

Ordinal can also be represented by trees. An example of such a representation is given in :

http://www.madore.org/~david/math/ordtrees.pdf .

In this representation, the order on finite rooted trees is recursively defined as follows : \( A < B \) if and only if one of this conditions is true :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item There is some mmediate subtree B' of B such that \( A \leq B' \).
\item Every child A' of A satisfies \( A' < B \) and the list of children of A is lexicographically less than the list of children of B for the order \( < \) with the leftmost children having the most weight.
\end{itemize}

Trees can also be represented by parenthesized expressions, for example :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item 0 = ()
\item 1 = (())
\item 2 = ((()))
\item \( \omega = (()()) \)
\item \( \omega+1 = ((()())) \)
\item \( \omega \cdot 2 = (()(())) \)
\item \( \omega \cdot 3 = (()((()))) \)
\item \( \omega^2 = (()(()())) \)
\item \( \omega^2+\omega = (()((()()))) \)
\item \( \omega^2 \cdot 2 = (()(()(()))) \)
\item \( \omega^2 \cdot 3 = (()(()((())))) \)
\item \( \omega^3 = (()(()(()()))) \)
\item \( \omega^\omega = ((())()) \)
\item \( \omega^{\omega^\omega} = ((()())()) \)
\item \( \epsilon_0 = \varphi_1(0) = (()()()) \)
\item \( \varepsilon_1 = \varphi_1(1) = (()()(())) \)
\item \( \varepsilon_2 = \varphi_1(2) = (()()(())) \)
\item \( \varepsilon_\omega = \varphi_1(\omega) = (()()(()())) \)
\item \( \varepsilon_{\varepsilon_0} = (()()(()()())) \) 
\item \( \zeta_0 = \varphi_2(0) = (()(())()) \)
\item \( \Gamma_0 = \varphi(1,0,0) = ((())()()) \)
\item \( \varphi(1,0,0,0) = (()()()()) \)
\item \( \ldots \)
\end{itemize}

Another example of tree representation is Takeuti ordinal diagrams, see :

 https://projecteuclid.org/download/pdf\_1/euclid.jmsj/1261153819 .


\section{An application of ordinals : defining large numbers using the Fast Growing Hierarchy}

The Fast Growing Hierarchy is a family of fast growing functions indexed by ordinals \( f_\alpha \) which, when applied to a number, give a much greater one, allowing to produce huge numbers.

It is traditionally defined as follows :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( f_0(n) = n+1 \)
\item \( f_{\alpha+1}(n) = {f_\alpha}^n(n) \)
\item \( f_\alpha(n) = f_{\alpha[n]}(n) \) if \( \alpha \) is a limit ordinal, where \( \alpha[n] \) denotes the n-th element of the fundamental sequence assigned to \( \alpha \).
\end{itemize}

The first functions of this hierarchy are :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( f_0(n) = n+1 = suc\ n \)
\item \( f_1(n) = suc^n(n) = n \cdot 2 \)
\item \( f_2(n) = [\bullet \cdot 2]^n(n) = n \cdot 2^n \)
\end{itemize}

But there is a problem with this definition, because the value of \( f_\alpha(n) \) depends of the fundamental sequence chosen for \( \alpha \) if it is a limit ordinal. Let us consider for example \( f_\omega(2) \). If we take the canonical fundamental sequence \( \omega[n] = n \), then we get \( f_\omega(2) = f_{\omega[2]}(2) = f_2(2) = 2 \cdot 2^2 = 8 \). But \( \omega[n] \) = n+1 is also a valid fundamental sequence for \( \omega \). Taking this fundamnetal sequence gives \( f_\omega(2) = f_{\omega[2]}(2) = f_3(2) = [\bullet \cdot 2^\bullet]^2(2) = 2048 \).

In fact, the notation \( \alpha[n] \) is not rigorous because there are several possible fundamental sequences for a given ordinal \( \alpha \). Instead of writing \( \alpha[n] = F(n) \) it would be more rigorous to write \( \alpha = lim F \). One cannot write \( \omega[n] = n \) and \( \omega[n] = n+1 \) because this implies n = n+1, but there is no problem writing \( \omega = lim (n \mapsto n) = lim (n \mapsto n+1) \).

So, if we want to define rigorously the Fast Growing Hierarchy, we need to index the functions not by ordinals but by something which look likes ordinals but which are considered as different if the fundamental sequences are differents. These mathematical objects originally due to Bachmann are called "tree ordinals" (do not confuse with "ordinal trees" previously seen). 


\section{Tree ordinals}

Definitions of tree ordinals can be found in :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item https://www.youtube.com/watch?v=RmuASZSO2s8\&t=9s\&index=41\&list=PL3A50BB9C34AB36B3
\item http://www.iam.unibe.ch/ltgpub/2011/fab11.pdf
\item Proof and system-reliability
\end{itemize}

A tree ordinal a belongs to the tree ordinal class \( \Omega_n (n \in \mathbb{N}) \) if either :
\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item a = 0
\item a = a' + 1 for some tree ordinal a' belonging to the tree ordinal class \( \Omega_n \)
\item a is a function from \( \Omega_k \) to \( \Omega_n \) for some \( k \in \mathbb{N} \) with \( k < n \). In this case, we will say that a is a limit tree ordinal.
\end{itemize}

Let us first consider \( \Omega_0 \). The third case cannot apply (\( k \in \mathbb{N} \) and \(k < 0 \)), so the definition of \( \Omega_0 \) is given by the first two cases, which correspond to the inductive definition of the natural numbers, so \( \Omega_0 \) may be identified to \( \mathbb{N} \) or \( \omega \).

Next, \( \Omega_1 \) also includes all natural numbers, and also functions that, to a natural number, associates an element of \( \Omega_1 \), or sequences of elements of \( \Omega_1 \). For example, the identity function a[k] = k is an element of \( \Omega_1 \) called \( \omega_0 \). The function b[k] = k+1 is also an element of \( \Omega_1 \), but these two tree ordinals are considered as different tree ordinals, because the functions or sequences are different, even if the associated ordinal (the ordinal which has the corresponding fundamental sequence) is the same for both, the ordinal \( \omega \). So \( \Omega_1 \) can be seen as the class of countable ordinals associated with the choice of a particular fundamental sequence for limit ordinals.

Then it goes on with \( \Omega_2 \) which includes \( \Omega_0, \Omega_1 \), and functions from \( \Omega_1 \) to \( \Omega_2 \), like for example \( \omega_1 \) defined by \( \omega_1(a) = a \) where \( a \in \Omega_1 \), and so on.

There is a correspondence between tree ordinals and ordinals : if we ignore the choice of a particular fundamental sequence of a tree ordinal, we get an ordinal. To any tree ordinal a, we can associate a corresponding ordinal \( \alpha = |a| \) obtained by ignoring the choice of particular fundamental sequences, and defined by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( |0| = 0 \)
\item \( |a+1| = |a|+1 \)
\item \( |a| = sup |a[b]| \) if a is a function from \( \Omega_k \) to \( \Omega_n \).
\end{itemize}

or equivalently

\( |a| = sup_{b<a} \lbrace |b|+1 \rbrace \)

\bigskip

We can define arithmetical operations on tree ordinals in a way similar to the previously seen definitions for ordinals, replacing lim(f) by f because the ordinal tree is identified with its fundamental sequence or function.

\bigskip

Using tree ordinals, we can define rigorously the Fast Growing Hierarchy \( f_a(n) \) where \( a \in \Omega_1 \) :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( f_0(n) = n+1 \)
\item \( f_{a+1}(n) = {f_a}^n(n) \)
\item \( f_a(n) = f_{a[n]}(n) \) if \( a \) is a limit tree ordinal, where \( a[n] \) denotes the result of the application of the function a to the integer n.
\end{itemize}

\section{Using tree ordinals to define ordinals}

Let us define a hierarchy of functions \( F_n(a,b) \) where \( n \in \mathbb{N}, a \in \Omega_{n+1} \) and \( b \in \Omega_n \), which is an extension of the Fast Growing Hierarchy : for n = 0, it corresponds to the Fast Growing Hierarchy : \( F_0(a,b) = f_a(b) \) with \( a \in \Omega_1 \) and \( b \in \Omega_0 = \mathbb{N} \), or :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( F_0(0,b) = b+1 \)
\item \( F_0(a+1,b) = [F_0(a,\bullet)]^b(b) \)
\item \( F_0(a,b) = F_0(a[b],b) \) if a is a limit tree ordinal
\end{itemize}

We generalize this definition for \( n > 0 \) :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( F_n(0,b) = b+1 \)
\item \( F_n(a+1,b) = [F_n(a,\bullet)]^b(b) \)
\item \( (F_n(a,b))[c] = F_n(a[c],b) \) if a is a function from \( \Omega_k \) to \( \Omega_{n+1} \) with \( k < n \)
\item \( (F_n(a,b)) = F_n(a[b],b) \) if a is a function from \( \Omega_n \) to \( \Omega_{n+1} \)
\end{itemize}

where the exponentiation of a function to a tree ordinal power is defined by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( f^0(a) = a \)
\item \( f^{b+1} = f(f^b(a)) \)
\item \( (f^b(a))[c] = f^{b[c]}(a) \) if b is a limit tree ordinal
\end{itemize}

This hierarchy of functions \( F_n(a,b) \) may be used to define ordinals as follows :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( F_1(0,b) = b+1 = suc(b) \)
\item \( F_1(1,b) = suc^b(b) = b+b = b \cdot 2\)
\item \( F_1(2,b) = b \cdot 2^b \)
\item \( |F_1(2,\omega_0)| = |\omega_0 \cdot 2^{\omega_0}| = \omega \cdot 2^\omega = \omega \cdot \omega = \omega^2 \)
\item \( |F_1(2,F_1(2,\omega_0)) = |(\omega_0 \cdot 2^{\omega_0}) \cdot 2^{\omega_0 \cdot 2^{\omega_0}}| = \omega^2 \cdot 2^{\omega^2} = \omega^2 \cdot 2^{\omega \cdot \omega} = \omega^2 \cdot (2^\omega)^\omega = \omega^2 \cdot \omega^\omega = \omega^{2+\omega} = \omega^\omega \) 
\item \( |F_1(3,\omega_0)| = |[F_1(2,\bullet)]^{\omega_0}(\omega_0)| = sup |[F_1(2,\bullet)]^{\omega_0[k]}(\omega_0)| = sup |[F_1(2,\bullet)]^k(\omega_0)| = sup (\omega^{\vdots^\omega}) = \varepsilon_0 \)
\item \( |F_1(2,F_1(3,\omega_0))| = \varepsilon_0 \cdot 2^{\varepsilon_0} = {\varepsilon_0}^2 \)
\item \( |[F_1(2,\bullet)]^2(F_1(3,\omega_0))| = {\varepsilon_0}^2 \cdot 2^{{\varepsilon_0}^2} = {\varepsilon_0}^{\varepsilon_0} \)
\item \( |F_1(3,F_1(3,\omega_0))| = sup \lbrace {\varepsilon_0}^{\vdots^{\varepsilon_0}} \rbrace = \varepsilon_1 \)
\item \( |F_1(4,\omega_0)| = \zeta_0 = \varphi(2,0) = \varphi'(1,1) \)
\item \( |F_1(3,F_1(4,\omega_0))| = sup \lbrace {\zeta_0}^{\vdots^{\zeta_0}} \rbrace = \varepsilon_{\zeta_0+1} \)
\item \( |F_1(4,F_1(4,\omega_0))| = sup \lbrace \varepsilon_{\ddots_{\varepsilon_{\zeta_0+1}}} \rbrace = \zeta_1 = \varphi(2,1) = \varphi'(1,2) \)
\item \( |F_1(5,\omega_0)| = \eta_0 = \varphi(3,0) = \varphi'(2,1) \)
\item \( |F_1(\omega_0,\omega_0)| = \varphi_\omega(0) \)
\item \( |F_1(\omega_1+1,\omega_0)| = \Gamma_0 \)
\item \( |F_1(F_2(3,\omega_1),\omega_0)| = BHO \)

\item \( \ldots \)
\end{itemize}

\end{comment}

\subsection{Going further with ordinal collapsing functions}

We began to define ordinal collapsing functions that collapse an ordinal named \( \Omega \) or \( \Omega_1 \) which has to be greater than all ordinals we want to define, which are recursive ordinals. We could take \( \omega_1^{CK} \), the least non recursive (but still countable) ordinal for \( \Omega \), but this could lead to some technical complications, so \( \omega_1 \), the least uncountable ordinal, which can be identified to the cardinal \( \aleph_1 \), is generally chosen. Then we saw we can go further using greater uncountable ordinals named \( \Omega_2, \Omega_3, \ldots \) for which we can take \( \omega_2, \omega_3, \ldots \) which can be identified to the corresponding cardinals \( \aleph_2, \aleph_3, \ldots \). A way to go further with ordinal collapsing function is to collapse more and more large uncountable ordinals (or corresponding cardinals) like \( \omega_\omega, \omega_{\omega_\omega}, \ldots \) and much further.
 
Before studying some of these functions collapsing these large cardinals, we will see how we can build these large cardinals.

\section{Cardinals}

Each ordinal has a cardinality which is a cardinal number (or more briefly a cardinal). The cardinality is a generalization of the notion of number of elements of a set. Two sets have the same cardinality if there exist a bijection (a one-to-one correspondence) between them.
The least ordinal whose cardinality is a given cardinal is called the initial ordinal of this cardinal.

The cardinality of \( \omega \) is called \( \aleph_0 \), and it is also the cardinality of \( \omega+1, \omega \cdot 2, \omega^2, \omega^\omega, \epsilon_0, \Gamma_0, \ldots \) and more generally of any countable ordinal.

\( \omega_1 \) is the least uncountable ordinal, and its cardinality is the cardinal \( \aleph_1 \).

More generally, the cardinality of the ordinal \( \omega_\alpha \) is the cardinal \( \aleph_\alpha \).

Some authors identify ordinals and cardinals, writing \( \omega_\alpha = \aleph_\alpha \).

The cardinals \( \beth_\alpha \) are defined by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \beth_0 = \aleph_0 \)

\item \( \beth_{\alpha+1} = 2^{\beth_\alpha} \)

\item \( \beth_\lambda = sup \lbrace \beth_\xi | \xi < \lambda \) if \( \lambda \) is a limit ordinal

\end{itemize}

According to the generalized continuum hypothesis (GCH), \( \aleph_{\alpha+1} = 2^{\aleph_\alpha} \). If this hypothesis is accepted, then \( \aleph_\alpha = \beth_\alpha \) for any ordinal \( \alpha \).

A cardinal \( \aleph_\alpha \) is said to be a limit cardinal (or weak limit cardinal) if \( \alpha \) is a limit ordinal.

A cardinal \( \kappa \) is a strong limit cardinal if whenever \( \gamma < \kappa \) then \( 2^\gamma < \kappa \). Thus, the strong limit cardinals are those cardinals closed under the exponential operation. The strong limit cardinals are precisely the cardinals of the form \( \beth_\lambda \) for a limit ordinal \( \lambda \).

A weakly inaccessible cardinal is a regular limit cardinal, or an uncountable regular limit cardinal according to some authors.

A strongly inaccessible cardinal, or inaccessible cardinal, is a regular strong limit cardinal, or an uncountable regular strong limit cardinal according to some authors.

Every strongly inaccessible cardinal is also weakly inaccessible, as every strong limit cardinal is also a weak limit cardinal. If the generalized continuum hypothesis holds, then a cardinal is strongly inaccessible if and only if it is weakly inaccessible.

\bigskip

The weakly inaccessible cardinals are the regular fixed points of the $\aleph$ function $\alpha \mapsto \aleph_\alpha$, which means that the following propositions are equivalent :
\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item $\kappa$ is a weakly inaccessible cardinal
\item $\aleph_\kappa = \kappa \land cof(\kappa) = \kappa$ 
\end{itemize}

Reference :

https://math.stackexchange.com/questions/3413563/weakly-inaccessible-cardinal-equivalent-to-regular-aleph-fixed-point

The inaccessible cardinals are the regular fixed points of the $\beth$ function $\alpha \mapsto \beth_\alpha$.

Reference :

https://mathoverflow.net/questions/64955/is-there-a-least-fixed-point-formulation-of-inaccessible-cardinals

\bigskip

It can be proved that if a cardinal \( \kappa \) is weakly inaccessible, then it is the \(\kappa\)-th fixed point of the function \( \xi \mapsto \aleph_\xi \). 

Proof by Joel David Hamkins :

https://mathoverflow.net/questions/117806/if-k-is-weakly-inaccessible-then-it-is-the-k-th-aleph-fixed-point 

If $\kappa$ is weakly inaccessible, then it is a limit cardinal and hence $\kappa=\aleph_\lambda$
for some limit ordinal $\lambda$. Since the cofinality of $\aleph_\lambda$ is
the same as the cofinality of $\lambda$, it follows by the regularity of $\kappa$ that
$\lambda=\kappa$, and so $\kappa=\aleph_\kappa$, an $\aleph$-fixed point. 

The next
$\aleph$-fixed point after any ordinal $\beta_0$ must have
cofinality $\omega$, since it is $\sup_n\beta_n$, where
$\beta_{n+1}=\aleph_{\beta_n}$. So if a weakly inaccessible
$\kappa$ is the $\delta$-th $\aleph$-fixed point, it cannot be
that $\delta$ is a successor ordinal, and so $\delta$ is a limit ordinal. Since the
$\aleph$-fixed points are closed, this implies $\kappa$ has the same cofinality as $\delta$, and so by regularity it follows that $\kappa=\delta$ and thus, $\kappa$ is the $\kappa$-th fixed point.

\bigskip
 
\begin{comment}
Weakly inaccessible cardinals can be defined using Simmons notation.

Remember this notation :

\( Fix\ f \zeta = f^\omega (\zeta+1) \) is the least fixed point of f that is strictly greater than \( \zeta \).

\( [0] h = Fix (\alpha \mapsto h^\alpha 0) \)

If we define \( Next' = Fix (\xi \mapsto \aleph_\xi) \), then \( Next' \zeta \) is the least fixed point of the function \( \xi \mapsto \aleph_\xi \) which is strictly greater than \( \zeta \). In particular, \( Next' 0 \) is the least (or first) fixed point of \( \xi \mapsto \aleph_\xi \), \( Next' (Next' 0) = Next'^2 0 \) is its second fixed point, and more generally \( Next'^\alpha 0 \) is the \(\alpha\)-th fixed point of \( \xi \mapsto \aleph_\xi \).

\( [0] Next' 0 = Fix (\alpha \mapsto Next'^\alpha 0) 0 \) is the least \( \kappa \) such that \( \kappa = Next'^\kappa 0 = \kappa\)-th fixed point of \( \xi \mapsto \aleph_\xi \), so it is the least (or first) weakly inaccessible cardinal. 

More generally, \( ([0] Next')^\alpha 0 \) is the \(\alpha\)-th weakly inaccessible cardinal.

\bigskip
\end{comment}

Degrees of inaccessibility can be defined for weak inaccessibility and for strong inaccessibility, so the following holds replacing "inaccessible" by "weakly inaccessible" or "strongly inaccessible".

A cardinal \( \kappa \) is said to be 1-inaccessible if it is inaccessible and the following equivalent conditions hold :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \(\kappa\) is a limit of inaccessible cardinals

\item There are \(\kappa\) inaccessible cardinals less than \( \kappa \) (or in \( \kappa \)).

\item \(\kappa\) is the \(\kappa\)-th inaccessible cardinal, or equivalently \(\kappa\) is a fixed point of the function \( \xi \mapsto \xi\)-th inaccessible cardinal

\end{itemize}

These definitions can be generalized to any degree : \( \kappa \) is \((\alpha+1)\)-inaccessible if it is \(\alpha\)-inaccessible and the following equivalent conditions hold :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \(\kappa\) is a limit of \(\alpha\)-inaccessible cardinals

\item There are \(\kappa\) \(\alpha\)-inaccessible cardinals less than \(\kappa\) (or in \(\kappa\))

\item \(\kappa\) is the \(\kappa\)-th \(\alpha\)-inaccessible cardinal

\end{itemize}

More generally, \(\kappa\) is \(\alpha\)-inaccessible if it is inaccessible and for every \( \beta < \alpha \), the following equivalent conditions hold :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \(\kappa\) is a limit of \(\beta\)-inaccessible cardinals

\item There are \(\kappa\) \(\beta\)-inaccessible cardinals less than \(\kappa\) (or in \(\kappa\))

\item \(\kappa\) is the \(\kappa\)-th \(\beta\)-inaccessible cardinal

\end{itemize}

A cardinal \(\kappa\) is hyperinaccessible (or (1,0)-inaccessible) if it is \(\kappa\)-inaccessible.

Degrees of hyperinaccessibility can be defined like degrees of inaccessibility : \(\kappa\) is \(\alpha\)-hyperinaccessible if it is inaccessible and, for every \( \beta < \alpha \), the following equivalent conditions hold : 

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \(\kappa\) is a limit of \(\beta\)-hyperinaccessible cardinals

\item There are \(\kappa\) \(\beta\)-hyperinaccessible cardinals less than \(\kappa\) (or in \(\kappa\))

\item \(\kappa\) is the \(\kappa\)-th \(\beta\)-hyperinaccessible cardinal

\end{itemize}

\(\kappa\) is hyperhyperinaccessible or hyper\(^2\)-inaccessible if it is \(\kappa\)-hyperinaccessible, and so on.

More generally :

\(\kappa\) is hyper\(^\alpha\)-inaccessible if it is hyperinaccessible and for every \( \beta < \alpha \), it is \(\kappa\)-hyper\(^\beta\)-inaccessible.

\(\kappa\) is \(\alpha\)-hyper\(^\beta\)-inaccessible if it is hyper-\(^\beta\)-inaccessible and for every \( \gamma < \alpha \), the following equivalent conditions hold :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \(\kappa\)  it is a limit of \(\gamma\)-hyper\(^\beta\)-inaccessible cardinals

\item There are \(\kappa\) \(\gamma\)-hyper\(^\beta\)-inaccessible cardinals less than \(\kappa\) (or in \(\kappa\))

\item \(\kappa\) is the \(\kappa\)-th \(\gamma\)-hyper\(^\beta\)-inaccessible cardinal.

\end{itemize}

Sources : 

http://cantorsattic.info/Inaccessible

https://math.stackexchange.com/questions/477314/hyper-inaccessible-cardinals

https://arxiv.org/pdf/1506.03432.pdf : Force to change large cardinal strength by Erin Carmody


\bigskip

In http://forums.xkcd.com/viewtopic.php?p=2585190\#p2585190, Deedlit defines a generalization of these levels of inaccessibility which looks like the Veblen function at a higher level. He writes (\(\alpha,\beta)\)-weakly inaccessible for \(\beta\)-hyper\(^\alpha\)-weakly inaccessible. Here are his definitions :

\bigskip

"Define a cardinal to be 0-weakly inaccessible if it is a regular limit cardinal.

(A cardinal alpha is regular if it is not the union of fewer than alpha many smaller ordinals;
a cardinal is limit if it is \(\omega\)\(\alpha\) for \(\alpha\) limit.)

\bigskip

A cardinal is \(\alpha\)+1-weakly inaccessible if it is an \(\alpha\)-weakly inaccessible cardinal and a limit of \(\alpha\)-weakly inaccessible cardinals.

A cardinal is \(\beta\)-weakly inaccessible for \(\beta\) limit if it is \(\alpha\)-weakly inaccessible for all \(\alpha\) \(<\) \(\beta\).

\bigskip

A cardinal \(\alpha\) is (1,0)-weakly inaccessible if it is \(\alpha\)-weakly inaccessible.

A cardinal \(\alpha\) is (2,0)-weakly inaccessible if it is (1,\(\alpha\))-weakly inaccessible.

A cardinal \(\alpha\) is (\(\alpha\),0)-weakly inaccessible for \(\alpha\) limit if it is (\(\beta\),0)-weakly inaccessible for all \(\beta\) \(<\) \(\alpha\).

\bigskip

A cardinal \(\alpha\) is (1,0,0)-weakly inaccessible if it is (\(\alpha\),0)-weakly inaccessible.

A cardinal \(\alpha\) is (2,0,0)-weakly inaccessible if it is (1,\(\alpha\),0)-weakly inaccessible.

A cardinal \(\alpha\) is (\(\alpha\),0,0)-weakly inaccessible for \(\alpha\) limit if it is (\(\beta\),0,0)-weakly inaccessible for all \(\beta\) \(<\) \(\alpha\).

and so on.

\bigskip

Denote (a@8,b@6,c@4,d@1) to mean (a,0,b,0,c,0,0,d), for instance. This notation allows us to go express transfinite places like (1@\(\omega\))

\bigskip

A cardinal is (1@\(\omega\))-weakly inaccessible if it is (1@n)-weakly inaccessible for all n \(<\) \(\omega\).

A cardinal is (2@\(\omega\))-weakly inaccessible if it is (1@\(\omega\),1@n)-weakly inaccessible for all n \(<\) \(\omega\).

A cardinal \(\alpha\) is (\(\alpha\)@\(\omega\))-weakly inaccessible for \(\alpha\) limit if it is (\(\beta\)@\(\omega\))-weakly inaccessible for all \(\beta\) \(<\) \(\alpha\).

\bigskip

and so on.

\bigskip

More generally, 

\bigskip

A cardinal \(\gamma\) is (a1@b1, a2@b2,..., an+1@1)-weakly inaccessible if it is (a1@b1, a2@b2,..., an@1)-weakly inaccessible and a limit of (a1@b1, a2@b2,..., an+1@1)-weakly inaccessible cardinals.

A cardinal \(\gamma\) is (a1@b1, a2@b2,..., an+1@bn+1)-weakly inaccessible if it is (a1@b1, a2@b2,..., an@bn+1, \(\gamma\)@bn)-weakly inaccessible.

A cardinal \(\gamma\) is (a1@b1, a2@b2,..., an+1@bn)-weakly inaccessible (with bn limit) if it is (a1@b1, a2@b2,..., an@bn, 1@c)-weakly inaccessible for all c \(<\) bn.

A cardinal \(\gamma\) is (a1@b1, a2@b2,..., an@bn)-weakly inaccessible (with an limit) if it is (a1@b1, a2@b2,..., c@bn)-weakly inaccessible for c \(<\) an."

\bigskip

Finally, we define I(a1@b1, a2@b2,..., an@bn,c@0) to be the c'th (a1@b1, a2@b2,..., an@bn)-weakly inaccessible cardinal."

\bigskip

There is a correspondence between inaccessible cardinals and Veblen and Simmons hierarchies.

In both case, there is a function f that, given some ordinal \( \alpha \), produces a greater ordinal \( f(\alpha) \). A way to get large ordinals is to enumerate the fixed points of this function. For Veblen and Simmons hierarchies, this function is \( \xi \mapsto \omega^\xi \) or \( [\omega^\bullet] \), and for inaccessible cardinals it is \( \xi \mapsto \aleph_\xi \) or \( [\aleph_\bullet] \), but since we want to get regular cardinals, we have to consider regular fixed points. 

The least fixed point of \( \xi \mapsto \omega^\xi \) is \( \varepsilon_0 =  \varepsilon'_1 = \varphi(1,0) = \varphi'(0,1) \). It is the limit of \( \omega, \omega^\omega, \omega^{\omega^\omega}, \ldots \). In a similar way, we can define \( E_0 = E'_1 = \Phi(1,0) = \Phi'(0,1) \) as the least \textit{regular} fixed point of \( \xi \mapsto \aleph_\xi \).
\begin{comment}
, which is the limit of \( \aleph_0, \aleph_{\aleph_0}, \aleph_{\aleph_{\aleph_0}}, \ldots \).
\end{comment}

Then, like we have defined \( \varepsilon_1 = \varepsilon'_2 = \varphi(1,1) = \varphi'(0,2) \) as the second fixed point of \( \xi \mapsto \omega^\xi \), we can define \( E_1 = E'_2 \) as the second \textit{regular} fixed point of \( \xi \mapsto \aleph_\xi \).
\begin{comment}
, which is the limit of \( E_0+1, \aleph_{E_0+1}, \aleph_{\aleph_{E_0+1}}, \ldots \).
\end{comment}

More generally, like we defined \( \varepsilon_\alpha = \varepsilon'_{1+\alpha} \) as the \(1+\alpha\)-th fixed point of \( \xi \mapsto \omega^\xi \), we can define \( E_\alpha = E'_{1+\alpha} \) as the \(1+\alpha\)-th \textit{regular} fixed point of \( \xi \mapsto \aleph_\xi \).

Then, like we defined \( \zeta_0 = \zeta'1 = \varphi(2,0) = \varphi'(1,1) \) as the least fixed point of \( \xi \mapsto \varepsilon_\xi \), the limit of \( \varepsilon_0, \varepsilon_{\varepsilon_0}, \ldots \), we can define \( Z_0 = Z'_1 \) as the least \textit{regular} fixed point of \( \xi \mapsto E_\xi \), the limit of \( E_0, E_{E_0}, \ldots \).
This is the least ordinal \( \kappa \) such that \( \kappa = E_\kappa = \kappa\)-th fixed point of \( \xi \mapsto \aleph_\xi \) (the "1+" being absorbed). This is the least weakly inaccessible ordinal.

\bigskip

We can also use the Simmons notation to produce weakly inaccessible cardinals.

Remember this notation : 

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( Fix f \zeta = f^\omega (\zeta+1) \) is the least fixed point of f that is strictly greater than \( \zeta \).

\item \( Next = Fix (\alpha \mapsto \omega^\alpha) \)

\item \( [0] h = Fix (\alpha \mapsto h^\alpha 0) \)

\item \( [1] h g = Fix (\alpha \mapsto h^\alpha g 0)  \)

\item \( [2] h g f = Fix (\alpha \mapsto h^\alpha g f 0) \)

\end{itemize}

We can define the following similar functions for weakly inaccessible cardinals :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( FIX f \zeta \) is the least \textit{regular} fixed point of f that is strictly greater than \( \zeta \).

\item \( NEXT = FIX (\alpha \mapsto \aleph_\alpha) \)

\item \( [[0]] h = FIX (\alpha \mapsto h^\alpha 0) \)

\item \( [[1]] h g = FIX (\alpha \mapsto h^\alpha g 0)  \)

\item \( [[2]] h g f = FIX (\alpha \mapsto h^\alpha g f 0) \)

\end{itemize}

With this notation, \( NEXT\ 0 = E_0 = \Phi(1,0) = \Phi'(0,1) \) is the least regular $\aleph$ fixed point, which is the least weakly inaccessible cardinal. \( NEXT (NEXT\ 0) = NEXT^2 0 = E_1 = E'_2 = \Phi(1,1) = \Phi'(0,2) \) is the next regular $\aleph$ fixed point, which is the second weakly inaccessible cardinal. More generally, \( NEXT^\alpha 0 = E'_\alpha = \Phi'(0,\alpha) \) is the $\alpha$-th inaccessible cardinal.

The least 1-weakly inaccessible cardinal is the least $\kappa$ such that $\kappa$ is the $\kappa$-th weakly inaccessible cardinal, which can be written \( \kappa = NEXT^\kappa 0 \). This is \( [[0]] NEXT\ 0 = FIX (\alpha \mapsto NEXT^\alpha 0) 0 = Z_0 = Z'_1 = \Phi(2,0) = \Phi'(1,1) \), the least regular cardinal $\kappa$ such that \( \kappa = NEXT^\kappa 0 \) which means that $\kappa$ is the $\kappa$-th weakly inaccessible cardinal.

The $\alpha$-th 1-weakly inaccessible cardinal is \( ([[0]] NEXT)^\alpha 0 = Z'_\alpha = \Phi'(1,\alpha) \).

The least 2-weakly inaccessible cardinal is the least $\kappa$ such that $\kappa$ is the $\kappa$-th 1-weakly inaccessible cardinal, which can be written\( \kappa = ([[0]] NEXT)^\kappa 0 \). This is \( [[0]] ([[0]] NEXT) 0 = [[0]]^2 NEXT\ 0 = \Phi(3,0) = \Phi'(2,1) \).

More generally, the least $\alpha$-weakly inaccessible cardinal is \( [[0]]^\alpha NEXT 0 = \Phi(1+\alpha,0) = \Phi'(\alpha,1)  \) and the $\beta$-th $\alpha$-weakly inaccessible cardinal is \( ([[0]]^\alpha NEXT)^\beta O = \Phi'(\alpha,\beta) \).

\bigskip

\begin{comment}

Like Simmons defined the function \( \operatorname{Next} = Fix (\xi \mapsto \omega^\xi)\) which gives the next \( \varepsilon \) ordinal after a given ordinal, we can define the function \( \operatorname{NEXT} = Fix (\xi \mapsto \aleph_\xi) \) which gives the next fixed point of \( \xi \mapsto \aleph_\xi \) after a given ordinal or cardinal. For example, NEXT 0 is the least fixed point of \( \xi \mapsto \aleph_\xi, \operatorname{NEXT} (\operatorname{NEXT} 0) = \operatorname{NEXT}^2 0 \) is the second one, and more generally \( \operatorname{NEXT}^\alpha 0\) is the \(\alpha\)-th fixed point.

[0] NEXT 0 = Fix \( (\alpha \mapsto \operatorname{NEXT}^\alpha 0) 0 \) is the least \( \kappa \) such that \( \kappa = \operatorname{NEXT}^\kappa 0 = \kappa\)-th fixed point of \( \xi \mapsto \aleph_\xi \), which is the least weakly inaccessible cardinal.

More generally, \( ([0] \operatorname{NEXT})^\alpha 0 = Z'_\alpha = \Phi'(1,\alpha) \) is the \(\alpha\)-th weakly inaccessible cardinal.

The least 1-weakly inaccessible cardinal is the least \( \kappa \) such that \( \kappa \) is the \(\kappa\)-th weakly inaccessible cardinal, which can be written \( \kappa = ([0] \operatorname{NEXT})^\kappa 0 \). This \( \kappa \) is \( [0] ([0] \operatorname{NEXT}) 0 = [0]^2 \operatorname{NEXT} 0 = \Phi(3,0) = \Phi'(2,1) \).

The \(\alpha\)-th 1-weakly inaccessible cardinal is \( [0]^2 \operatorname{NEXT})^\alpha 0 \).

The least 2-weakly inaccessible cardinal is the least \( \kappa \) such that \( \kappa \) is the \(\kappa\)-th 1-weakly inaccessible cardinal, which can be written \( \kappa = ([0]^2 \operatorname{NEXT})^\kappa 0 \). This \( \kappa \) is \( [0] ([0]^2 \operatorname{NEXT}) 0 = [0]^3 \operatorname{NEXT} 0 = \Phi(4,0) = \Phi'(3,1) \).

More generally, the least \(\alpha\)-weakly inaccessible cardinal is \( [0]^{1+\alpha} \operatorname{NEXT} 0 = \Phi(2+a,0) = \Phi'(1+a,1) \) and the \(\beta\)-th \(\alpha\)-weakly inaccessible cardinal is \( ([0]^{1+\alpha} \operatorname{NEXT})^\beta 0 = \Phi'(1+\alpha,\beta) \).

\end{comment}

The least hyper-weakly inaccessible cardinal is the least \( \kappa \) such that \( \kappa \) is \(\kappa\)-inaccessible, which can be written \( \kappa = [[0]]^\kappa \operatorname{NEXT} 0 \). This \( \kappa \) is \( [[1]] [[0]] \operatorname{NEXT} 0 = \Phi(1,0,0) \).

The second one is \( ([[1]] [[0]] \operatorname{NEXT})^2 0 \), and more generally the \(\alpha\)-th one is \( ([[1]] [[0]] \operatorname{NEXT})^\alpha 0 \).

Then, \( \kappa \) is 1-hyper-weakly inaccessible if \( \kappa \) is the \(\kappa\)-th hyper-weakly inaccessible cardinal, which can be written \( \kappa = ([[1]] [[0]] \operatorname{NEXT})^\kappa 0 \). This is [[0]] ([[1]] [[0]] NEXT) 0. The second one is \( ([[0]] ([[1]] [[0]] \operatorname{NEXT}))^2 0 \), and the \(\alpha\)-th one is \( ([[0]] ([[1]] [[0]] \operatorname{NEXT}))^\alpha 0 \).

Similarily, the least 2-hyper-weakly inaccessible cardinal is \( [[0]]^2 ([[1]] [[0]] \operatorname{NEXT}) 0 \) and the \(\alpha\)-th one is \( ([[0]]^2 ([[1]] [[0]] \operatorname{NEXT}))^\alpha 0 \).

More generally, the \(\alpha\)-th \(\beta\)-hyper-weakly inaccessible cardinal is \( ([[0]]^\beta ([[1]] [[0]] \operatorname{NEXT}))^\alpha 0 = \Phi'(1,\beta,\alpha) \).

The least hyper-hyper-weakly inaccessible cardinal, or hyper\(^2\) weakly inaccessible cardinal is the least \( \kappa \) such that \( \kappa \) is \(\kappa\)-hyper-weakly inaccessible, or \( \kappa = [[0]]^\kappa ([[1]]  [[0]] \operatorname{NEXT}) 0 \), which is  \( [[1]] [[0]] ([[1]] [[0]] \operatorname{NEXT}) 0  = ([[1]] [[0]])^2 \operatorname{NEXT} 0 \).

More generally, the least hyper\(^\gamma\)-weakly inaccessible cardinal is \( ([[1]] [[0]])^\gamma \operatorname{NEXT} 0 \), and the \(\alpha\)-th one is \( (([[1]] [[0]])^\gamma \operatorname{NEXT})^\alpha 0 \).

The least 1-hyper\(^\gamma\)-weakly inaccessible cardinal is the least \( \kappa \) such that \( \kappa \) is the \(\kappa\)-th hyper\(^\gamma\)-weakly inaccessible cardinal, or \( \kappa = (([[1]] [[0]])^\gamma \operatorname{NEXT})^\kappa 0 \). This \( \kappa \) is \( [[0]] (([[1]] [[0]])^\gamma \operatorname{NEXT}) 0 \).

More generally, the least \(\beta\)-hyper\(^\gamma\)-weakly inaccessible cardinal is \( [[0]]^\beta (([[1]] [[0]])^\gamma \operatorname{NEXT}) 0 \).

Finally, the \(\alpha\)-th \(\beta\)-hyper\(^\gamma\)-weakly inaccessible cardinal is \( ([[0]]^\beta (([[1]] [[0]])^\gamma \operatorname{NEXT}))^\alpha 0 = \Phi'(\gamma,\beta,\alpha) \).

We can also define higher inaccessiblility degrees corresponding to \( \Phi'(\delta,\gamma,\beta,\alpha) \) and so on, with finitely and transfinitely many variables.


\bigskip

In "Force to change large cardinal strength" ( https://arxiv.org/pdf/1506.03432.pdf ) Erin Carmody defines greatly inaccessible cardinals which have every possible inaccessible degree.
Carmody shows that a cardinal is greatly inaccessible if and only if it is Mahlo. 
In  page 3 (page 11 of PDF document) Erin Carmody says "Since greatly
inaccessible cardinals are every possible inaccessible degree, as defined in chapter 1, Mahlo
cardinals are every possible inaccessible degree defined".
Having every possible inaccessible degrees is the equivalent of being greater than any ordinal definable with the Veblen function with transfinitely many variables, or with Schütte Klammersymbols, whose limit is the large Veblen ordinal which can be written "[[2]] [[1]] [0] Next 0" with Simmons notation. 
So the least Mahlo cardinal can be written "[2] [1] [[0]] NEXT 0".

\begin{comment}
In  page 3 of "Force to change large cardinal strength" ( https://arxiv.org/pdf/1506.03432.pdf ) (page 11 of PDF document) Erin Carmody says "Since greatly
inaccessible cardinals are every possible inaccessible degree, as defined in chapter 1, Mahlo
cardinals are every possible inaccessible degree defined", every possible inaccessible degree being the equivalent of Veblen function with transfinitely many variables, or Schütte Klammersymbols, whose limit is the large Veblen ordinal, written [2] [1] [0] Next 0, so the least Mahlo cardinal can be written [2] [1] [0] NEXT 0.
\end{comment}


\section{Correspondence between cardinals and non recursive countable ordinals}

Collapsing functions require ordinals which are greater than all ordinals defined by these collapsing functions, i.e. recursive ordinals. We use some unspecified ordinals called \( \Omega_1, \Omega_2, \Omega_3, \ldots \). If we want to specify them, the uncountable ordinals \( \omega_1, \omega_2, \omega_3 \), which can be identified with the cardinals \( \aleph_1, \aleph_2, \aleph_3, \ldots \) can be chosen, but the non recursive ordinals \( \omega_1^{CK}, \omega_2^{CK}, \omega_3^{CK}, \ldots \) where \( \omega_2^{CK} \) is the least admissible ordinal after \( \omega_1^{CK} \) and so on, are also valid. More generally, there is a correspondence between cardinals and non recursive countable ordinals. There are equivalents of inaccessible, hyperinaccessible, Mahlo, ... cardinals in the domain of non recursive countable ordinals, called recursively inaccessible, recursively hyperinaccessible, recursively Mahlo, etc...

\bigskip

Here is a table summarizing this correspondence :

\bigskip

\begin{tabular}{|c|c|}
\hline
Non recursive countable ordinals & Uncountable ordinals \\ \hline
Admissible ordinal & Cardinal \\ \hline
\( \omega_1^{CK} \) & \( \omega_1, \aleph_1 \) \\ \hline
recursively inaccessible & inaccessible \\ \hline
recursively hyperinaccessible & hyperinaccessible \\ \hline
recursively Mahlo & Mahlo \\ \hline
$\Pi_3$-reflecting & compact \\ \hline
\end{tabular}


\section{Functions collapsing large cardinals}

Collapsing functions can be used to collapse large cardinals to produce large ordinals.

Some examples of such collapsing functions are given in :

https://sites.google.com/site/travelingtotheinfinity/

http://googology.wikia.com/wiki/Ordinal\_notation

http://googology.wikia.com/wiki/List\_of\_systems\_of\_fundamental\_sequences

http://cantorsattic.info/Cantor\%27s\_Attic

\begin{comment}
An example of such functions are the "Hypcos's functions" which collapses weakly inaccessible cardinals, described in

https://sites.google.com/site/travelingtotheinfinity/hypcos-s-notation-with-weakly-inaccessibles.
\end{comment}


\subsection{Hypcos's functions collapsing weakly inaccessible cardinals}



\subsubsection{Definition}



\(\Omega_\alpha\) with \(\alpha>0\) is the \(\alpha\)-th uncountable cardinal, \(I_\alpha\) with \(\alpha>0\) is the \(\alpha\)-th weakly inaccessible cardinal and for this notation \(I_0=\Omega_0=0\).



In this section the variables \(\rho\), \(\pi\) are reserved for uncountable regular cardinals of the form \(\Omega_{\nu+1}\) or \(I_{\mu+1}\).



Then,



\(C_0(\alpha,\beta) = \beta\cup\{0\}\)

\(C_{n+1}(\alpha,\beta) = \{\gamma+\delta|\gamma,\delta\in C_n(\alpha,\beta)\}\)

\(\cup \{\Omega_\gamma|\gamma\in C_n(\alpha,\beta)\}\)

\(\cup \{I_\gamma|\gamma\in C_n(\alpha,\beta)\}\)

\(\cup \{\psi_\pi(\gamma)|\pi,\gamma\in C_n(\alpha,\beta)\wedge\gamma<\alpha\}\)

\(C(\alpha,\beta) = \bigcup_{n<\omega} C_n(\alpha,\beta)\)

\(\psi_\pi(\alpha) = \min\{\beta<\pi|C(\alpha,\beta)\cap\pi\subseteq\beta\}\)



\subsubsection{Properties}



\(\psi_{\pi}(0)=1\)

\(\psi_{\Omega_1}(\alpha)=\omega^\alpha\) for \(\alpha<\varepsilon_0\)

\(\psi_{\Omega_{\nu+1}}(\alpha)=\omega^{\Omega_\nu+\alpha}\) for \(1\le\alpha<\varepsilon_{\Omega_\nu+1}\) and \(\nu>0\)



\subsubsection{Standard form for ordinals \(\alpha<\beta=\text{min}\{\xi|I_\xi=\xi\}\)}



 The standard form for 0 is 0

 If \(\alpha\) is of the form \(\Omega_\beta\), then the standard form for \(\alpha\) is \(\alpha= \Omega_\beta\) where \(\beta<\alpha\) and \(\beta\) is expressed in standard form

 If \(\alpha\) is of the form \(I_\beta\), then the standard form for \(\alpha\) is \(\alpha= I_\beta\) where \(\beta<\alpha\) and \(\beta\) is expressed in standard form

 If \(\alpha\) is not additively principal and \(\alpha>0\), then the standard form for \(\alpha\) is \(\alpha=\alpha_1+\alpha_2+\cdots+\alpha_n\), where the \(\alpha_i\) are principal ordinals with \(\alpha_1\geq\alpha_2\geq\cdots\geq\alpha_n\), and the \(\alpha_i\) are expressed in standard form

 If \(\alpha\) is an additively principal ordinal but not of the form \(\Omega_\beta\) or \(I_\gamma\), then \(\alpha\) is expressible in the form \(\psi_\pi(\delta)\). Then the standard form for \(\alpha\) is \(\alpha=\psi_\pi(\delta)\) where \(\pi\) and \(\delta\) are expressed in standard form



\subsubsection{Fundamental sequences}



The fundamental sequence for an ordinal number \(\alpha\) with cofinality \(\text{cof}(\alpha)=\beta\) is a strictly increasing sequence \((\alpha[\eta])_{\eta<\beta}\) with length \(\beta\) and with limit \(\alpha\), where \(\alpha[\eta]\) is the \(\eta\)-th element of this sequence.



Let \(S=\{\alpha|\text{cof}(\alpha)=1\}\) and \(L=\{\alpha|\text{cof}(\alpha)\geq\omega\}\) where \(S\) denotes the set of successor ordinals and \(L\) denotes the set of limit ordinals.



For non-zero ordinals written in standard form fundamental sequences defined as follows:

\begin{enumerate}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item If \(\alpha=\alpha_1+\alpha_2+\cdots+\alpha_n\) with \(n\geq 2\) then \(\text{cof}(\alpha)=\text{cof}(\alpha_n)\) and \(\alpha[\eta]=\alpha_1+\alpha_2+\cdots+(\alpha_n[\eta])\)

\item If \(\alpha=\psi_{\pi}(0)\) then \(\alpha=\text{cof}(\alpha)=1\) and \(\alpha[0]=0\)

\item If \(\alpha=\psi_{\Omega_{\nu+1}}(1)\) then \(\text{cof}(\alpha)=\omega\) and \(\left\{\begin{array}{lcr} \alpha[\eta]=\Omega_{\nu}\cdot\eta \text{ if }\nu>0 \\ \alpha[\eta]=\eta \text{ if }\nu=0\\ \end{array}\right.\)

\item If \(\alpha=\psi_{\Omega_{\nu+1}}(\beta+1)\) and \(\beta\geq 1\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[\eta]=\psi_{\Omega_{\nu+1}}(\beta)\cdot\eta\)

\item If \(\alpha=\psi_{ I_{\nu+1}}(1)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=I_\nu+1\) and \(\alpha[\eta+1]=\Omega_{\alpha[\eta]}\)

\item If \(\alpha=\psi_{ I_{\nu+1}}(\beta+1)\) and \(\beta\geq 1\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=\psi_{ I_{\nu+1}}(\beta)+1\) and \(\alpha[\eta+1]=\Omega_{\alpha[\eta]}\)

\item If \(\alpha=\pi\) then \(\text{cof}(\alpha)=\pi\) and \(\alpha[\eta]=\eta\)

\item If \(\alpha=\Omega_\nu\) and \(\nu\in L\) then \(\text{cof}(\alpha)=\text{cof}(\nu)\) and \(\alpha[\eta]=\Omega_{\nu[\eta]}\)

\item If \(\alpha=I_\nu\) and \(\nu\in L\) then \(\text{cof}(\alpha)=\text{cof}(\nu)\) and \(\alpha[\eta]=I_{\nu[\eta]}\)

\item If \(\alpha=\psi_\pi(\beta)\) and \(\omega\le\text{cof}(\beta)<\pi\) then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=\psi_\pi(\beta[\eta])\)

\item If \(\alpha=\psi_\pi(\beta)\) and \(\text{cof}(\beta)=\rho\geq\pi\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[\eta]=\psi_\pi(\beta[\gamma[\eta]])\) with \(\gamma[0]=1\) and \(\gamma[\eta+1]=\psi_{\rho}(\beta[\gamma[\eta]])\)

\end{enumerate}

Limit of this notation is \(\lambda\). If \(\alpha=\lambda\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=1\) and \(\alpha[\eta+1]=I_{\alpha[\eta]}\).

\bigskip

These fundamental sequences can be reformulated giving the following recursive definitions :

\smallskip

\advance\leftskip by 10 pt

1. Classical definition of addition of limit ordinals

2. \( \psi_\pi(0) = 1 \)

3a. \( \psi_{\Omega_1}(1) = \omega \)

3b. \( \psi_{\Omega_{\nu+1}}(1) = \Omega_\nu \cdot \omega \) if \( \nu > 0 \)

4. \( \psi_{\Omega_{\nu+1}}(\beta+1) = \psi_{\Omega_{\nu+1}}(\beta) \cdot \omega \)
 
5. \( \psi_{I_{\nu+1}}(1) = [\Omega_\bullet]^\omega (I_\nu+1) \)

6. \( \psi_{I_{\nu+1}}(\beta+1) = [\Omega_\bullet]^\omega (\psi_{I_{nu+1}}(\beta)+1) \) if \( \beta \ge 1 \)

8. \( \Omega_{Lim_\mu f} = Lim_\mu [\Omega_{f(\bullet)}] \)

9. \( I_{Lim_\mu f} = Lim_\mu [I_{f(\bullet)}] \)

10 \( \psi_\pi (Lim_\mu f) = Lim_\mu (\psi_\pi \circ f) \) if \( \omega_\mu < \pi \)

11. \( \psi_\pi (Lim_\mu f) = lim [ \psi_\pi (f ((\psi_{\omega_\mu} \circ f)^\bullet (1)) ] \) if \( \omega_\mu \ge \pi \)

\advance\leftskip by -10 pt

\subsubsection{References}

http://googology.wikia.com/wiki/List\_of\_systems\_of\_fundamental\_sequences

https://sites.google.com/site/travelingtotheinfinity/hypcos-s-notation-with-weakly-inaccessibles



\subsection{Functions collapsing \(\alpha\)-weakly inaccessible cardinals}



\subsubsection{Definition}



An ordinal is \(\alpha\)-weakly inaccessible if it's an uncountable regular cardinal and it's a limit of \(\gamma\)-weakly inaccessible cardinals for all \(\gamma<\alpha\).



Let \(I(\alpha,\beta)\) be the \((1+\beta)\)th \(\alpha\)-weakly inaccessible cardinal if \(\beta=0\) or \(\beta=\gamma+1\), and \(I(\alpha,\beta)=\text{sup}\{I(\alpha, \xi)|\xi<\beta\}\) if \(\beta\) is a limit ordinal.

As we saw previously, using Simmons notation, we can write \( I(\alpha,\beta) = ([0]^{1+\alpha} NEXT)^{1+\beta} 0 \) with \( NEXT = Fix [\aleph_\bullet], [0] h = Fix [h^\bullet 0] \) and \( Fix f \zeta = f^\omega(\zeta+1) \).

In this section the variables \(\rho\), \(\pi\) are reserved for uncountable regular cardinals of the form \(I(\alpha,0)\) or \(I(\alpha,\beta+1)\).



Then,



\(C_0(\alpha,\beta) = \beta\cup\{0\}\)

\(C_{n+1}(\alpha,\beta) = \{\gamma+\delta|\gamma,\delta\in C_n(\alpha,\beta)\}\)

\(\cup \{I(\gamma,\delta)|\gamma,\delta\in C_n(\alpha,\beta)\}\)

\(\cup \{\psi_\pi(\gamma)|\pi,\gamma\in C_n(\alpha,\beta)\wedge\gamma<\alpha\}\)

\(C(\alpha,\beta) = \bigcup_{n<\omega} C_n(\alpha,\beta)\)

\(\psi_\pi(\alpha) = \min\{\beta<\pi|C(\alpha,\beta)\cap\pi\subseteq\beta\}\)



\subsubsection{Properties}



\(I(0,\alpha)=\Omega_{1+\alpha}=\aleph_{1+\alpha}\)

\(I(1,\alpha)=I_{1+\alpha}\)

\(\psi_{I(0,0)}(\alpha)=\omega^\alpha\) for \(\alpha<\varepsilon_0\)

\(\psi_{I(0,\alpha+1)}(\beta)=\omega^{I(0,\alpha)+1+\beta}\) for \(\beta<\varepsilon_{I(0,\alpha)+1}\)



\subsubsection{Standard form for ordinals \(\alpha<\psi_{I(1,0,0)}(0)=\text{min}\{\xi|I(\xi,0)=\xi\}\)}



 The standard form for 0 is 0

 If \(\alpha\) is of the form \(I(\beta,\gamma)\), then the standard form for \(\alpha\) is \(\alpha=I(\beta,\gamma)\) where \(\beta,\gamma<\alpha\) and \(\beta,\gamma\) are expressed in standard form

 If \(\alpha\) is not additively principal and \(\alpha>0\), then the standard form for \(\alpha\) is \(\alpha=\alpha_1+\alpha_2+\cdots+\alpha_n\), where the \(\alpha_i\) are principal ordinals with \(\alpha_1\geq\alpha_2\geq\cdots\geq\alpha_n\), and the \(\alpha_i\) are expressed in standard form

 If \(\alpha\) is an additively principal ordinal but not of the form \(I(\beta,\gamma)\), then \(\alpha\) is expressible in the form \(\psi_\pi(\delta)\). Then the standard form for \(\alpha\) is \(\alpha=\psi_\pi(\delta)\) where \(\pi\) and \(\delta\) are expressed in standard form



\subsubsection{Fundamental sequences}



The fundamental sequence for an ordinal number \(\alpha\) with cofinality \(\text{cof}(\alpha)=\beta\) is a strictly increasing sequence \((\alpha[\eta])_{\eta<\beta}\) with length \(\beta\) and with limit \(\alpha\), where \(\alpha[\eta]\) is the \(\eta\)-th element of this sequence.



Let \(S=\{\alpha|\text{cof}(\alpha)=1\}\) and \(L=\{\alpha|\text{cof}(\alpha)\geq\omega\}\) where \(S\) denotes the set of successor ordinals and \(L\) denotes the set of limit ordinals.



For non-zero ordinals \(\alpha<\psi_{I(1,0,0)}(0)\) written in standard form fundamental sequences defined as follows:[2]

\begin{enumerate}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item If \(\alpha=\alpha_1+\alpha_2+\cdots+\alpha_n\) with \(n\geq 2\) then \(\text{cof}(\alpha)=\text{cof}(\alpha_n)\) and \(\alpha[\eta]=\alpha_1+\alpha_2+\cdots+(\alpha_n[\eta])\)

\item If \(\alpha=\psi_{I(0,0)}(0)\) then \(\alpha=\text{cof}(\alpha)=1\) and \(\alpha[0]=0\)

\item If \(\alpha=\psi_{I(0,\beta+1)}(0)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[\eta]=I(0,\beta)\cdot\eta\)

\item If \(\alpha=\psi_{I(0,\beta)}(\gamma+1)\) and \(\beta\in\{0\}\cup S\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[\eta]=\psi_{I(0,\beta)}(\gamma)\cdot\eta\)

\item If \(\alpha=\psi_{I(\beta+1,0)}(0)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=0\) and \(\alpha[\eta+1]=I(\beta,\alpha[\eta])\)

\item If \(\alpha=\psi_{I(\beta+1,\gamma+1)}(0)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=I(\beta+1,\gamma)+1\) and \(\alpha[\eta+1]=I(\beta,\alpha[\eta])\)

\item If \(\alpha=\psi_{I(\beta+1,\gamma)}(\delta+1)\) and \(\gamma\in\{0\}\cup S\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=\psi_{I(\beta+1,\gamma)}(\delta)+1\) and \(\alpha[\eta+1]=I(\beta,\alpha[\eta])\)

\item If \(\alpha=\psi_{I(\beta,0)}(0)\) and \(\beta\in L\) then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=I(\beta[\eta],0)\)

\item If \(\alpha=\psi_{I(\beta,\gamma+1)}(0)\) and \(\beta\in L\) then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=I(\beta[\eta],I(\beta,\gamma)+1)\)

\item If \(\alpha=\psi_{I(\beta,\gamma)}(\delta+1)\) and \(\beta\in L\) and \(\gamma\in \{0\}\cup S\) then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=I(\beta[\eta],\psi_{I(\beta,\gamma)}(\delta)+1)\)

\item If \(\alpha=\pi\) then \(\text{cof}(\alpha)=\pi\) and \(\alpha[\eta]=\eta\)

\item If \(\alpha=I(\beta,\gamma)\) and \(\gamma\in L\) then \(\text{cof}(\alpha)=\text{cof}(\gamma)\) and \(\alpha[\eta]=I(\beta,\gamma[\eta])\)

\item If \(\alpha=\psi_\pi(\beta)\) and \(\omega\le\text{cof}(\beta)<\pi\) then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=\psi_\pi(\beta[\eta])\)

\item If \(\alpha=\psi_\pi(\beta)\) and \(\text{cof}(\beta)=\rho\geq\pi\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[\eta]=\psi_\pi(\beta[\gamma[\eta]])\) with \(\gamma[0]=1\) and \(\gamma[\eta+1]=\psi_{\rho}(\beta[\gamma[\eta]])\)

\end{enumerate}

Limit of this notation \(\psi_{I(1,0,0)}(0)\). If \(\alpha=\psi_{I(1,0,0)}(0)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=0\) and \(\alpha[\eta+1]=I(\alpha[\eta],0)\)

\bigskip

These fundamental sequences can be reformulated giving the following recursive definitions :

\smallskip

\advance\leftskip by 10 pt

1. Classical definition of addition of limit ordinals

2. \( \psi_{I(0,0)}(0) = 1 \)

3. \( \psi_{I(0,\beta+1)}(0) = I(0,\beta) \cdot \omega \)

4. \( \psi_{I(0,\beta)}(\gamma+1) = \psi_{I(0,\beta)}(\gamma) \cdot \omega \) if \( \beta \) is not a limit ordinal

5. \( \psi_{I(\beta+1,0)}(0) = [I(\beta,\bullet)]^\omega (0) \)

6. \( \psi_{I(\beta+1,\gamma+1)}(0) = [I(\beta,\bullet)]^\omega (I(\beta+1,\gamma)+1) \)

7. \( \psi_{I(\beta+1,\gamma)}(\delta+1) = [I(\beta,\bullet)]^\omega (\psi_{I(\beta+1,\gamma)}(\delta)+1) \) if \( \gamma \) is not a limit ordinal

8. \( \psi_{I(Lim_\mu f,0)}(0) = Lim_\mu [I(f(\bullet),0)] \)

9. \( \psi_{I(Lim_\mu f,\gamma+1)}(0) = Lim_\mu [I(f(\bullet),I(Lim_\mu f,\gamma)+1)] \)

10. \( \psi_{I(Lim_\mu f,\gamma)}(\delta+1) = Lim_\mu [I(f(\bullet),\psi_{I(Lim_\mu f,\gamma)}(\delta)+1)] \) if \( \gamma \) is not a limit ordinal 

12. \( I(\beta,Lim_\mu f) = Lim_\mu [I(\beta,f(\bullet))] \)

13. \( \psi_\pi(Lim_\mu f) = Lim_\mu (\psi_\pi \circ f) \) if \( \omega_\mu < \pi \)

14. \( \psi_\pi(Lim_\mu f) = lim [\psi_\pi (f ((\psi_{\omega_\mu} \circ f)^\bullet (0)))] \) if \( \omega_\mu \ge \pi \)

\subsubsection{References}

http://googology.wikia.com/wiki/List\_of\_systems\_of\_fundamental\_sequences

https://sites.google.com/site/travelingtotheinfinity/the-collapsing-functions-using-math-alpha-beta-math--weakly-inaccessible-cardinals



\subsection{Jäger's collapsing functions}

Jäger's collapsing functions are a hierarchy of single-argument ordinal functions \(\psi_\pi\) introduced by German mathematician Gerhard Jäger in 1984. This is an extension of Buchholz's notation.


\subsubsection{Basic Notions}

\(M_0\) is the least Mahlo cardinal, small Greek letters denote ordinals less than \(M_0\). Each ordinal \(\alpha\) is identified with the set of its predecessors \(\alpha=\{\beta|\beta<\alpha\}\). 

\(L\) denotes the set of all limit ordinals less than \(M_0\).

An ordinal \(\alpha\) is an additive principal number if \(\alpha>0\) and \(\xi+\eta<\alpha\) for all \(\xi,\eta<\alpha\). Let \(P\) denote the set of all additive principal numbers less than \(M_0\).

\(\alpha=_{NF}\alpha _{1}+\cdots +\alpha _{n}:\Leftrightarrow \alpha =\alpha _{1}+\cdots +\alpha _{n}\wedge \alpha _{1}\geq \cdots \geq \alpha _{n}\wedge \alpha _{1},... ,\alpha _{n}\in P\)

Cofinality \(\text{cof}(\alpha)\) of an ordinal \(\alpha\) is the least \(\beta\) such that there exists a function \(f:\beta\rightarrow\alpha\) with \(\text{sup}\{f(\xi )|\xi <\beta \}=\alpha\). An ordinal \(\alpha\) is regular, if \(\alpha\) is a limit ordinal and \(\text{cof}(\alpha)=\alpha\). Let \(R\) denote the set of all regular ordinals \(\in(\omega, M_0)\). 

An ordinal \(\alpha\) is (weakly) inaccessible if \(\alpha\) is a regular limit cardinal larger than \(\omega\).

Enumeration function \(F\) of class of ordinals \(X\) is the unique increasing function such that \(X=\{F(\alpha)|\alpha\in\text{dom}(F)\}\) where domain of \(F\), \(\text{dom}(F)\) is an ordinal number. We use \(\text{Enum}(X)\) to donate \(F\).


\subsubsection{Veblen function}

\(\varphi_\alpha=\text{Enum}(\{\beta\in P|\forall\gamma<\alpha(\varphi_\gamma(\beta)=\beta)\})\)

Normal form

\(\alpha=_{NF}\varphi_\beta(\gamma):\Leftrightarrow\alpha=\varphi_\beta(\gamma)\wedge\beta,\gamma<\alpha\)

An ordinal \(\alpha\) is a strongly critical if \(\varphi(\alpha,0)=\alpha\). Let \(S\) denote the set of
all strongly critical ordinals less than \(M_0\).

Definition of \(S(\gamma)\) for arbitrary \(\gamma\).

\(S(\gamma)=\{\gamma\}\) if \(\gamma\in S\cup\{0\}\)

\(S(\gamma)=\{\alpha_1,...,\alpha_n\}\) if \(\gamma=_{NF}\alpha_1+\cdots+\alpha_n\notin P\)

\(S(\gamma)=\{\alpha,\beta\}\) if \(\gamma=_{NF}\varphi_\alpha(\beta)\notin S\)


\subsubsection{\(\rho\)-Inaccessible Ordinals}

An ordinal is \(\rho\)-inaccessible if it is a regular cardinal and limit of \(\alpha\)-inaccessible ordinals for all \(\alpha<\rho\). So the 0-inaccessible ordinals are exactly the regular cardinals \(>\omega\), the 1-inaccessible ordinals are the inaccessible ordinals. Functions \(I_\rho:M_0 \rightarrow M_0\) enumerate the \(\rho\)-inaccessible ordinals less than \(M_0\) and their limits.

\(I_\alpha=\text{Enum}(\{\beta\in R|\forall\gamma<\alpha(I_\gamma(\beta)=\beta)\}) \)

Normal form

\(\alpha=_{NF}I_\beta(\gamma):\Leftrightarrow\alpha=I_\beta(\gamma)\wedge\gamma\notin L\)

Definition of \(\gamma^{-}\) for \(\gamma\in R\).

\(\gamma^{-}=0\) if \(\gamma=_{NF}I_\alpha(0)\)

\(\gamma^{-}=I_\alpha(\beta)\) if \(\gamma=_{NF}I_\alpha(\beta+1)\)

'''Properties'''

\begin{tabular}{|c|c|}
\hline
Veblen function &
\(\rho\)-Inaccessible Ordinals
\\ \hline
\(\varphi_\alpha(\beta)\in P\) &
\(I_\alpha(0), I_\alpha(\beta+1)\in R\)
\\ \hline
\(\gamma<\alpha\Rightarrow\varphi_\gamma(\varphi_\alpha(\beta))=\varphi_\alpha(\beta)\) &
|\(\gamma<\alpha\Rightarrow I_\gamma(I_\alpha(\beta))=I_\alpha(\beta)\)
\\ \hline
\(\beta<\gamma\Rightarrow\varphi_\alpha(\beta)<\varphi_\alpha(\gamma)\) &
\(\beta<\gamma\Rightarrow I_\alpha(\beta)<I_\alpha(\gamma)\)
\\ \hline
\(\alpha<\beta\Rightarrow\varphi_\alpha(0)<\varphi_\beta(0)\) &
\(\alpha<\beta\Rightarrow I_\alpha(0)<I_\beta(0)\)
\\ \hline
\end{tabular}


\subsubsection{The Ordinal Functions \(\psi_\kappa\)}

Every \(\psi_\kappa\) is a function from \(M_0\) to \(\kappa\) which "collapses" the elements of \(M_0\) below \(\kappa\). By the Greek letters \(\kappa\) and \(\pi\) we shall denote uncountable regular cardinals less than \(M_0\).

'''Inductive Definition''' of \(C_\kappa(\alpha)\) and \(\psi_\kappa(\alpha)\).

\(\{\kappa^{-}\}\cup\kappa^{-}\subset C_\kappa^n(\alpha)\)

\(S(\gamma)\subset C_\kappa^n(\alpha)\Rightarrow\gamma\in C_\kappa^{n+1}(\alpha)\)

\(\beta,\gamma\in C_\kappa^n(\alpha)\Rightarrow I_\beta(\gamma)\in C_\kappa^{n+1}(\alpha)\)

\(\gamma<\pi<\kappa\wedge\pi\in C_\kappa^n(\alpha)\Rightarrow \gamma\in C_\kappa^{n+1}(\alpha)\)

\(\gamma<\alpha\wedge\gamma,\pi\in C_\kappa^n(\alpha)\wedge\gamma\in C_\pi(\gamma)\Rightarrow \psi_\pi(\gamma)\in C_\kappa^{n+1}(\alpha)\)

\(C_\kappa(\alpha)=\cup\{C_\kappa^n(\alpha)|n<\omega\}\)

\(\psi_\kappa(\alpha)=\text{min}\{\xi|\xi\notin C_\kappa(\alpha)\}\)

Normal form

\(\alpha=_{NF}\psi_\kappa(\beta):\Leftrightarrow\alpha=\psi_\kappa(\beta)\wedge\beta\in C_\kappa(\beta)\)


\subsubsection{Fundamental sequences}
 
The fundamental sequence for an ordinal number \(\alpha\) with cofinality \(\text{cof}(\alpha)=\beta\) is a strictly increasing sequence \((\alpha[\eta])_{\eta<\beta}\) with length \(\beta\) and with limit \(\alpha\), where \(\alpha[\eta]\) is the \(\eta\)-th element of this sequence.

'''Inductive Definition''' of \(T\).
\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \(0 \in T\)
\item \(\alpha=_{NF}\alpha _{1}+\cdots +\alpha _{n}\wedge \alpha _{1},... ,\alpha _{n}\in T\Rightarrow\alpha\in T\)
\item \(\alpha=_{NF}\varphi_\beta(\gamma)\wedge\beta,\gamma\in T\Rightarrow\alpha\in T\)
\item \(\alpha=_{NF}I_\beta(\gamma)\wedge\beta,\gamma\in T\Rightarrow\alpha\in T\)
\item \(\alpha=_{NF}\psi_\kappa(\beta)\wedge\kappa, \beta\in T\Rightarrow\alpha\in T\)
\end{itemize}

Below we write \(I(\alpha,\beta)\) for \(I_\alpha(\beta)\) and \(\varphi(\alpha,\beta)\) for \(\varphi_\alpha(\beta)\)

For non-zero ordinals \(\alpha\in T\) we define the fundamental sequences as follows:
\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item If \(\alpha=\varphi(0,\beta+1)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[\eta]=\varphi(0,\beta)\times\eta\)
\item If \(\alpha=\varphi(\beta+1,0)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=0\) and \(\alpha[\eta+1]=\varphi(\beta,\alpha[\eta])\)
\item If \(\alpha=\varphi(\beta+1,\gamma+1)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=\varphi(\beta+1,\gamma)+1\) and \(\alpha[\eta+1]=\varphi(\beta,\alpha[\eta])\)
\item If \(\alpha=\varphi(\beta,0)\) and \(\beta\in L\) then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=\varphi(\beta[\eta],0)\)
\item If \(\alpha=\varphi(\beta,\gamma+1)\) and \(\beta\in L\) then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=\varphi(\beta[\eta],\varphi(\beta,\gamma)+1)\)
\item If \(\alpha=\varphi(\beta,\gamma)\) and \(\gamma\in L\) then \(\text{cof}(\alpha)=\text{cof}(\gamma)\) and \(\alpha[\eta]=\varphi(\beta,\gamma[\eta])\)

\bigskip

\item If \(\alpha=\psi_{I(0,0)}(0)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=0\) and \(\alpha[\eta+1]=\varphi(\alpha[\eta],0)\)
\item If \(\alpha=\psi_{I(0,\beta+1)}(0)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=I(0,\beta)+1\) and \(\alpha[\eta+1]=\varphi(\alpha[\eta],0)\)
\item If \(\alpha=\psi_{I(0,\beta)}(\gamma+1)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=\psi_{I(0,\beta)}(\gamma)+1\) and \(\alpha[\eta+1]=\varphi(\alpha[\eta],0)\)

\bigskip

\item If \(\alpha=\psi_{I(\beta+1,0)}(0)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=0\) and \(\alpha[\eta+1]=I(\beta,\alpha[\eta])\)
\item If \(\alpha=\psi_{I(\beta+1,\gamma+1)}(0)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=I(\beta+1,\gamma)+1\) and \(\alpha[\eta+1]=I(\beta,\alpha[\eta])\)
\item If \(\alpha=\psi_{I(\beta+1,\gamma)}(\delta+1)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=\psi_{I(\beta+1,\gamma)}(\delta)+1\) and \(\alpha[\eta+1]=I(\beta,\alpha[\eta])\)

\bigskip

\item If \(\alpha=\psi_{I(\beta,0)}(0)\) and \(\beta\in L\) then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=I(\beta[\eta],0)\)
\item If \(\alpha=\psi_{I(\beta,\gamma+1)}(0)\) and \(\beta\in L\) then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=I(\beta[\eta],I(\beta,\gamma)+1)\)
\item If \(\alpha=\psi_{I(\beta,\gamma)}(\delta+1)\) and \(\beta\in L\) then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=I(\beta[\eta],\psi_{I(\beta,\gamma)}(\delta)+1)\)

\bigskip

\item If \(\alpha=\alpha_1+\alpha_2+\cdots+\alpha_n\) with \(n\geq 2\) then \(\text{cof}(\alpha)=\text{cof}(\alpha_n)\) and \(\alpha[\eta]=\alpha_1+\alpha_2+\cdots+(\alpha_n[\eta])\)
\item If \(\alpha=\varphi(0,0)\) then \(\text{cof}(\alpha)=\alpha=1\) and \(\alpha[0]=0\)
\item If \(\alpha=I(\beta,0)\) or \(\alpha=I(\beta,\gamma+1)\) then \(\text{cof}(\alpha)=\alpha\) and \(\alpha[\eta]=\eta\)
\item If \(\alpha=I(\beta,\gamma)\) and \(\gamma\in L\) then \(\text{cof}(\alpha)=\text{cof}(\gamma)\) and \(\alpha[\eta]=I(\beta,\gamma[\eta])\)
\item If \(\alpha=\psi_\pi(\beta)\) and \(\omega\le\text{cof}(\beta)<\pi\) then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=\psi_\pi(\beta[\eta])\)
\item If \(\alpha=\psi_\pi(\beta)\) and \(\text{cof}(\beta)=\rho\geq\pi\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[\eta]=\psi_\pi(\beta[\gamma[\eta]])\) with \(\gamma[0]=1\) and \(\gamma[\eta+1]=\psi_{\rho}(\beta[\gamma[\eta]])\)
\end{itemize}

Limit of this notation \(\lambda\). If \(\alpha=\lambda\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=0\) and \(\alpha[\eta+1]=I(\alpha[\eta],0)\)

These fundamental sequences can be reformulated to produce recursive definitions :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( \varphi(0,\beta) = \omega^\beta \)
\item \( \varphi(\beta+1,0) = [\varphi(\beta,\bullet]^\omega 0 = H [\varphi(\beta,\bullet)] 0 \)
\item \( \varphi(\beta+1,\gamma+1) = [\varphi(\beta,\bullet)]^\omega (\varphi(\beta+1,\gamma)+1) \)
\item \( \varphi(Lim_\nu f,0) = Lim_\nu [\varphi(f \bullet,0)] \)
\item \( \varphi(Lim_\nu f,\gamma+1) = Lim_\nu [\varphi(f \bullet , \varphi(Lim_\nu f,\gamma)+1)] \)
\item \( \varphi(\beta,Lim_\nu g) = Lim_\nu [\varphi(\beta, g \bullet)] \)

\bigskip

\item \( \psi_{I(0,0)}(0) = [\varphi(\bullet,0)]^\omega 0 = \Gamma_0 \)
\item \( \psi_{I(0,\beta+1)}(0) = [\varphi(\bullet,0)]^\omega (I(0,\beta)+1) \)
\item \( \psi_{I(0,\beta)}(\gamma+1) = [\varphi(\bullet,0)]^\omega (\psi_{I(0,\beta)}(\gamma)+1) \)

\bigskip

\item \( \psi_{I(\beta+1,0)}(0) = [I(\beta,\bullet)]^\omega 0 \)
\item \( \psi_{I(\beta+1,\gamma+1)}(0) = [I(\beta,\bullet)]^\omega (I(\beta+1,\gamma)+1) \)
\item \( \psi_{I(\beta+1,\gamma)}(\delta+1) = [I(\beta,\bullet)]^\omega (\psi_{I(\beta+1,\gamma)}(\delta)+1) \)

\bigskip

\item \( \psi_{I(Lim_\nu f,0)}(0) = Lim_\nu [I(f \bullet,0)] \)
\item \( \psi_{I(Lim_\nu f,\gamma+1)}(0) = Lim_\nu [I(f \bullet,I(Lim_\nu f,\gamma)+1)] \)
\item \( \psi_{I(Lim_\nu f,\gamma)}(\delta+1) = Lim_\nu [I(f \bullet, \psi_{I(Lim_\nu f,\gamma)}(\delta)+1)] \)

\bigskip

\item \( \beta + Lim_\nu g  = Lim_\nu [\beta + g \bullet] \)
\item \( \varphi(0,0) = 1 \)

\bigskip

\item \( I(\beta,0) = I(\beta,\gamma+1) = Lim_{cof(I(\beta,0)} [\bullet] \) where \( [\bullet] \) is the identity function
\item \( I(\beta,Lim_\nu g) = Lim_\nu [I(\beta,g \bullet)] \)
\item \( \psi_\pi(Lim_\nu f) = Lim_\nu [\psi_\pi(f \bullet)] \) if \( \omega_\nu < \pi \)
\begin{comment}
\item \( \psi_\pi(Lim_\nu f) = lim [\psi_\pi(f (g \bullet)] \) with \( g(0) = 1 \) and \( g (n+1) = \psi_\nu(f(g(n))) \) if \( \nu \ge \pi \)
\end{comment}
\item \( \psi_\pi(Lim_\nu f) = lim [ \psi_\pi(f((\psi_{\omega_\nu} \circ f)^\bullet(1)))] \) if \( \omega_\nu \ge \pi \)

\end{itemize}

\begin{comment}

\subsubsection{See also}

Other ordinal collapsing functions:

[[Madore's \(\psi\) function]]

[[Buchholz's \(\psi\) functions]]

[[User blog:Denis Maksudov/Ordinal functions collapsing the least weakly Mahlo cardinal; a system of fundamental sequences|collapsing functions based on a weakly Mahlo cardinal]]

\end{comment}

\subsubsection{References}

1. W.Buchholz. A New System of Proof-Theoretic Ordinal Functions. Annals of Pure and Applied Logic (1986),32

2. M.Jäger. \(\rho\)-inaccessible ordinals, collapsing functions and a recursive notation system. Arch. Math. Logik Grundlagenforsch (1984),24

3. http://cantorsattic.info/J\%C3\%A4ger\%27s\_collapsing\_functions\_and\_\%CF\%81-inaccessible\_ordinals


\subsection{Rathjen's functions collapsing the least weakly Mahlo cardinal}

\subsubsection{Definition of Jäger's function}

 \(I_\alpha:M\rightarrow M\) which enumerate the \(\alpha\)-inaccessible ordinals less than \(M\) and their limits

\(I_\alpha=\text{Enum}(\{\beta\in R|\forall\gamma<\alpha(I_\gamma(\beta)=\beta)\}) \)

Below we write \(I(\alpha,\beta)\) for \(I_\alpha(\beta)\)

\subsubsection{Inductive Definition of  functions \(\chi_\alpha: M\rightarrow M\) for \(\alpha <M^{\Gamma}\) (Rathjen, 1990)}

1) \(\{0,M\}\cup\beta\subset B^n(\alpha, \beta)\)

2) \(\gamma=_{NF}\gamma_1+\cdots+\gamma_k\wedge\gamma_1,...,\gamma_k\in B^n(\alpha, \beta)\Rightarrow\gamma\in B^{n+1}(\alpha, \beta)\)

3) \(\gamma=\chi_\eta(\xi)\wedge\eta,\xi\in B^n(\alpha, \beta)\wedge\eta<\alpha\wedge\xi<M\Rightarrow\gamma\in B^{n+1}(\alpha, \beta)\)

4) \(\gamma=_{NF}\varphi(\delta,\eta) \wedge\delta,\eta\in B^n(\alpha, \beta)\Rightarrow\gamma\in B^{n+1}(\alpha, \beta)\)

5) \(\gamma<\pi\wedge\pi\in B^n(\alpha, \beta)\Rightarrow\gamma\in B^{n+1}(\alpha, \beta)\)

6) \(B(\alpha,\beta)=\cup_{n<\omega}B^{n}(\alpha, \beta)\)

7) \(\chi_\alpha=\text{Enum}(cl_M(\{\kappa|\kappa\notin B(\alpha,\kappa)\wedge\alpha\in B(\alpha,\kappa)\}))\)

Note: as was said \(\kappa\) and \(\pi \) are reserved for uncountable regular cardinals less than \(M\). 

Below we write \(\chi(\alpha,\beta)\) for \(\chi_\alpha(\beta)\)

\subsubsection{Properties of  \(\chi\)-functions}

1) \(\chi(\alpha,\beta)<M\)

2) \(\beta>\gamma\geq 0 \Rightarrow \chi(\alpha,\beta)>\chi(\alpha,\gamma)\) 

3) \(\alpha>\gamma\geq 0 \Rightarrow \chi(\alpha,\beta)=\chi(\gamma,\chi(\alpha,\beta))\)

4) \(\chi(\alpha,0),\chi(\alpha,\beta+1) \in R\)

5) \(\chi(0,\alpha)=\aleph_{1+\alpha}\)

6) \(\chi(\alpha,\beta)=I(\alpha,\beta)\) for all \(\alpha<\lambda\) where \(\lambda=\sup\{\gamma(n)|n<\omega\}\) with \(\gamma(0)=0\) and \(\gamma(n+1)=\chi(\gamma(n),0)\)

\bigskip

Definition: \(\alpha=_{NF}\chi(\beta,\gamma) \Leftrightarrow\alpha=\chi(\beta,\gamma)\wedge\gamma<\alpha\)

\bigskip

Let \(\Pi\)  be the set of uncountable regular cardinals of the form \(\chi(\alpha,0)\) or \(\chi(\alpha,\beta+1)\) 

\(\Pi=\{\chi(\alpha,0)|\alpha<\varepsilon_{M+1}\}\cup\{\chi(\alpha,\beta+1)|\alpha<\varepsilon_{M+1}\wedge\beta<M\}\)

\subsubsection{Inductive Definition of  functions \(\psi_\pi: M\rightarrow \pi\) for \(\pi\in \Pi\)}

1) \(C^0(\alpha, \beta)=\{0,M\}\cup\beta\)

2) \(C^{n+1}(\alpha, \beta)=\{\gamma+\delta,\chi(\gamma,\delta), \omega^{M+\gamma}, \psi_\kappa(\eta)|\gamma,\delta,\eta,\kappa\in C^{n}(\alpha, \beta)\wedge\eta<\alpha\wedge\kappa\in\Pi\}\)

3) \(C(\alpha,\beta)=\cup_{n<\omega}C^{n}(\alpha, \beta)\)

4) \(\psi_\pi(\alpha)=\min\{\beta<\pi|C(\alpha,\beta)\cap \pi\subset\beta\}\)

\subsubsection{Properties of  \(\psi\)-functions}

1) \(\psi_{\chi(0,0)}(0)=1\) 

2) \(\alpha>\beta\geq 0 \Rightarrow \psi_\pi(\beta)<\psi_ \pi(\alpha)<\pi\)

3) \(\psi_\pi(\alpha)\in P\)

We write \(\psi(\alpha)\)  for \(\psi_{\chi(0,0)}(\alpha)\)

\bigskip

Definition: \(\alpha=_{NF}\psi_\pi(\beta)\Leftrightarrow\alpha=\psi_\pi(\beta) \wedge\beta\in C(\beta, \psi_\pi(\beta))\)

\subsubsection{Inductive definition of \(T\)}

1) \(0 \in T\)

2) \(\alpha=_{NF}\alpha_1+\alpha_2+\cdots+\alpha_n\wedge\alpha_1,\alpha_2,...,\alpha_n\in T\Rightarrow\alpha\in T\)

3) \(\alpha=_{NF}\chi(\beta,\gamma)\wedge\beta,\gamma\in T\Rightarrow\alpha\in T\)

4) \(\alpha=_{NF}\psi_\pi(\beta)\wedge\pi,\beta\in T\Rightarrow\alpha\in T\)

5) \(\alpha=_{NF}M^\beta\gamma\wedge\beta,\gamma\in T\Rightarrow\alpha\in T\)

For better understanding of collapsing functions \(\psi_\pi\) we define for each ordinal  \(\alpha\in T\)  its cofinality \(\text{cof}(\alpha) \) and  sequence   \( (\alpha[\eta])_{\eta<\text{cof}(\alpha) }\)  such that \(\alpha=\sup\{\alpha[\eta]|\eta<\text{cof}(\alpha) \}\)

\subsubsection{Definition of fundamental sequences for non-zero ordinals \(\alpha\in T\)}

1) \(\alpha=\alpha_1+\alpha_2+\cdots+\alpha_n \wedge \alpha_1\geq\alpha_2\geq\cdots\geq\alpha_n \Rightarrow \text{cof} (\alpha)= \text{cof} (\alpha_n) \wedge \alpha[\eta]=\alpha_1+\alpha_2+\cdots+(\alpha_n[\eta])\)

2) \(\alpha=0\Rightarrow\text{cof}(\alpha)=0\) 

\bigskip

3) \(\alpha=\psi _{\chi(0,0)}(0) \vee \alpha=\chi(\beta,0) \vee \alpha=\chi(\beta,\gamma+1) \vee \alpha=M\Rightarrow \text{cof} (\alpha)=\alpha \wedge \alpha[\eta]=\eta\)

4) \(\alpha=\psi _{\chi(0,\beta+1)}(0) \Rightarrow \text{cof}(\alpha)=\omega \wedge \alpha[n]=\chi(0,\beta)\times n\)

5) \(\alpha=\psi_{ \chi(0,\beta)}(\gamma+1) \Rightarrow \text{cof}(\alpha)=\omega \wedge \alpha[n]=\psi_{\chi(0,\beta)}(\gamma)\times n\)

\bigskip

6) \(\alpha=\psi _{\chi(\beta+1,0)}(0) \Rightarrow \text{cof}(\alpha)=\omega \wedge \alpha[0]=0 \wedge \alpha[n+1]=\chi(\beta,\alpha[n])\)

7) \(\alpha=\psi _{\chi(\beta+1,\gamma+1)}(0) \Rightarrow \text{cof}(\alpha)=\omega \wedge \alpha[0]=\chi(\beta+1,\gamma)+1 \wedge \alpha[n+1]=\chi(\beta,\alpha[n])\)

8) \(\alpha=\psi_{\chi(\beta+1,\gamma)}(\delta+1) \Rightarrow \text{cof}(\alpha)=\omega \wedge \alpha[0]= \psi_{\chi(\beta+1,\gamma)}(\delta)+1 \wedge \alpha[n+1]=\chi(\beta,\alpha[n])\)

\bigskip

9) \(\alpha=\psi _{\chi(\beta,0)}(0) \wedge M>\text{cof}(\beta)\geq\omega \Rightarrow \text{cof} (\alpha)= \text{cof} (\beta) \wedge \alpha[\eta]=\chi(\beta[\eta],0)\)

10) \(\alpha=\psi_{ \chi(\beta,\gamma+1)}(0) \wedge M>\text{cof}(\beta)\geq\omega \Rightarrow \text{cof}(\alpha)=\text{cof}(\beta)\wedge \alpha[\eta]=\chi(\beta[\eta],\chi(\beta,\gamma)+1)\)

11) \(\alpha=\psi_{ \chi(\beta,\gamma)}(\delta+1) \wedge M>\text{cof} (\beta)\geq\omega \Rightarrow \text{cof}(\alpha)=\text{cof}(\beta) \wedge \alpha[\eta]=\chi(\beta[\eta],\psi_{\chi(\beta,\gamma)}(\delta)+1)\)

\bigskip

12) \(\alpha=\psi_{\chi(\beta,0)}(0) \wedge \text{cof}(\beta)=M\Rightarrow \text{cof}(\alpha)= \omega \wedge \alpha[0]=1 \wedge \alpha[n+1]=\chi(\beta[\alpha[n]],0)\)

13) \(\alpha=\psi_{ \chi(\beta,\gamma+1)}(0) \wedge \text{cof} (\beta)=M \Rightarrow \text{cof} (\alpha)= \omega \wedge \alpha[0]=\chi(\beta,\gamma)+1 \wedge \alpha[n+1]=\chi(\beta[\alpha[n]],0)\)

14) \(\alpha=\psi_{\chi(\beta,\gamma)}(\delta+1) \wedge \text{cof} (\beta)=M \Rightarrow \text{cof} (\alpha)= \omega \wedge \alpha[0]= \psi_{ \chi(\beta,\gamma)}(\delta)+1 \wedge \alpha[n+1]=\chi(\beta[\alpha[n]],0)\)

\bigskip

15) \(\alpha=M^{\beta}\times\gamma \wedge \gamma<M \wedge \text{cof} (\gamma)\geq\omega \Rightarrow \text{cof} (\alpha)= \text{cof}(\gamma)\wedge\alpha[\eta]=M^{\beta}\times(\gamma[\eta])\)

16) \(\alpha=M^{\beta+1}\times(\gamma+1) \wedge \gamma<M \Rightarrow \text{cof} (\alpha)=M \wedge\alpha[\eta]=M^{\beta+1}\times\gamma+M^\beta\times\eta\)

17) \(\alpha=M^\beta\times(\gamma+1) \wedge \gamma<M \wedge\text{cof}(\beta)\geq\omega \Rightarrow \text{cof}(\alpha)= \text{cof}(\beta) \wedge \alpha[\eta]=M^\beta\times\gamma+M^{\beta[\eta]}\)

\bigskip

18) \(\alpha=\chi(\beta,\gamma) \wedge \text{cof}(\gamma)\geq\omega \Rightarrow \text{cof} (\alpha)=\text{cof}(\gamma)\wedge \alpha[\eta]=\chi(\beta,\gamma[\eta])\)

19) \(\alpha=\psi_\pi(\beta) \wedge \pi>\text{cof}(\beta)\geq\omega \Rightarrow \text{cof} (\alpha)= \text{cof}(\beta) \wedge \alpha[\eta]=\psi_\pi(\beta[\eta])\)

20) \(\alpha=\psi_\pi(\beta) \wedge \text{cof}(\beta)=\mu\geq\pi \Rightarrow \text{cof} (\alpha)=\omega \wedge \alpha[n]=\psi _\pi(\beta[\gamma[n]])\) where  \(\gamma[0]=1\) and  \(\gamma[k+1]=\psi_\mu(\beta[\gamma[k]])\)

\bigskip

Limit of this notation is \(\Lambda\)

21) \(\alpha=\Lambda \Rightarrow \text{cof}(\alpha)=\omega \wedge \alpha[n]=\chi(\beta[n],0)\) where \(\beta[0]=0\) and  \(\beta[k+1]=M^{\beta[k]}\)

\bigskip

Note the similitude with the fundamental sequences of the functions collapsing \(\alpha\)-weakly inaccessible cardinals previously seen.

\bigskip

\begin{tabular}{|c|c|c|}
\hline

&Examples
&applied rules
\\ \hline
 1.
&\(\psi(\Lambda)[3]=\psi(\chi(M^M,0))\)
&19, 21
\\ \hline
 2.
&\(\psi(\chi(M^M,0))[3]=\psi(\psi_{\chi(M^M,0)}(\psi_{\chi(M^M,0)}(\psi_{\chi(M^M,0)}(1))))\)
&3, 20
\\ \hline
 3.
&\(\psi(\psi_{\chi(M^M,0)}(0))[3]=\psi(\chi(M^{\chi(M^{\chi(M,0)},0)},0))\)
&3, 12, 17, 19
\\ \hline
 4.
&\(\psi(\chi(M,0))[3]=\psi(\psi_{\chi(M,0)}(\psi_{\chi(M,0)}(\psi_{\chi(M,0)}(1))))\)
&3, 20
\\ \hline
 5.
&\(\psi(\psi_{\chi(M,0)}(0))[3]=\psi(\chi(\chi(\chi(1,0),0),0))\)
&3, 12, 19
\\ \hline
 6.
&\(\psi(\psi_{\chi(1,0)}(0))[3]=\psi(\chi(0,\chi(0,\chi(0,0))))\)
&6, 19
\\ \hline
 7.
&\(\psi(\chi(0,\chi(0,0)))[3]=\psi(\chi(0,\psi(\chi(0,\psi(\chi(0,1))))))\)
&3, 18, 20
\\ \hline
 8
&\(\psi(\chi(0, \psi(1)+\psi(1)))[3]=\psi(\chi(0, \psi(1)+3))\)
&1, 5, 18, 19
\\ \hline
 9.
&\(\psi(\chi(0,1))[3]=\psi(\psi_{\chi(0,1)}(\psi_{\chi(0,1)}(\psi_{\chi(0,1)}(1))))\)
&3, 20
\\ \hline
 10.
&\(\psi(\psi_{\chi(0,1)}(0))[3]=\psi(\chi(0,0)+\chi(0,0)+\chi(0,0))\)
&4, 19
\\ \hline
 11.
&\(\psi(\chi(0,0))[3]=\psi(\psi(\psi(\psi(1))))\)
&3, 20
\\ \hline
\end{tabular}

\bigskip

These fundamental sequences can be reformulated like this :

\bigskip

3) \( \psi_{\chi(0,0)}(0) = 1 \)

4) \( \psi_{\chi(0,\beta+1)}(0) = \chi(0,\beta) \cdot \omega \)

5) \( \psi_{\chi(0,\beta)}(\gamma+1) = \psi_{\chi(0,\beta)}(\gamma) \cdot \omega \)

\bigskip

6) \( \psi_{\chi(\beta+1,0)}(0) = [\chi(\beta,\bullet)]^\omega (0) \)

7) \( \psi_{\chi(\beta+1,\gamma+1)}(0) = [\chi(\beta,\bullet)]^\omega (\chi(\beta+1,\gamma)+1) \)

8) \( \psi_{\chi(\beta+1,\gamma)}(\delta+1) = [\chi(\beta,\bullet)]^\omega (\psi_{\chi(\beta+1,\gamma)}(\delta)+1) \)

\bigskip

9) \( \psi_{\chi(Lim_\mu f,0)}(0) = Lim_\mu [\chi(f(\bullet),0)] \) if \( \omega_\mu \ge \omega \)

10) \( \psi_{\chi(Lim_\mu f,\gamma+1)}(0) = Lim_\mu [\chi(f(\bullet),chi(Lim_\mu f,\gamma)+1))] \) if \( M > \omega_\mu \ge \omega \)

11) \( \psi_{\chi(Lim_\mu f,\gamma)}(\delta+1) = Lim_\mu [\chi(f(\bullet),\psi_{\chi(Lim_\mu f,\gamma)}(\delta)+1)] \)

\bigskip

12) \( \psi_{\chi(lim_M f,0)}(0) = [\chi(f(\bullet),0]^\omega (1) \)

13) \( \psi_{\chi(lim_M f,\gamma+1)}(0) = [\chi(f(\bullet),0]^\omega (\chi(Lim_M f,\gamma)+1) \)

14) \( \psi_{\chi(lim_M f,\gamma)}(\delta+1) = [\chi(f(\bullet),0]^\omega (\psi_{\chi(Lim_M f,\gamma)}(\delta)+1) \)

\bigskip

18) \( \chi(\beta,Lim_\mu f) = Lim_\mu [\chi(\beta,f(\bullet))] \) if \( \omega_\mu \ge \omega \)

19) \( \psi_\pi(Lim_\mu f) = Lim_\mu (\psi_\pi \circ f) \) if \( \pi > \omega_\mu \)

20) \( \psi_\pi(Lim_\mu f) = lim [ \psi_\pi(f((\psi_{\omega_\mu} \circ f)^\bullet(1))) ] \) if \( \omega_\mu \ge \pi \)


\bigskip


References :

1. Buchholz, W.; Wainer, S.S (1987). "Provably Computable Functions and the Fast Growing Hierarchy". Logic and Combinatorics, edited by S. Simpson, Contemporary Mathematics, Vol. 65, AMS, 179-198.

2. W.Buchholz (1986). A New System of Proof-Theoretic Ordinal Functions. Annals of Pure and Applied Logic, Vol. 32, 195-207

3. M.Jäger (1984). \(\rho\)-inaccessible ordinals, collapsing functions and a recursive notation system. Arch. Math. Logik Grundlagenforsch, Vol. 24, 49-62

4. M. Rathjen (1990). Ordinal Notations Based on a Weakly Mahlo Cardinal. Arch. Math. Logic, Vol. 29, 249-263

5. http://cantorsattic.info/index.php?title=User\_blog:Denis\_Maksudov/Ordinal\_functions\_collapsing\_the\_least\_weakly\_Mahlo\_cardinal

;\_a\_system\_of\_fundamental\_sequences\&redirect=no


\subsection{Maksudov's functions collapsing the least weakly Mahlo cardinal}

This notation allows to obtain much simpler system of fundamental sequences.

\subsubsection{Basic notions}

Small Greek letters denote ordinals. Each ordinal \(\alpha\) is identified with the set of its predecessors \(\alpha=\{\beta|\beta<\alpha\}\). 

\(\omega\) is the first transfinite ordinal and the set of all natural numbers.

\(P=\{\alpha>0|\forall\beta,\gamma<\alpha(\beta+\gamma<\alpha)\}\) is the  set of additive principal numbers.

Normal form. \(\alpha=_{NF}\alpha_1+\cdots+\alpha_n\Leftrightarrow\alpha=\alpha_1+\cdots+\alpha_n\wedge\alpha>\alpha_1\geq\cdots\geq\alpha_n\wedge\alpha_1,...,\alpha_n\in P\)

Cofinality of an ordinal \(\alpha\) is the least length of increasing sequence such that the limit of this sequence is the ordinal \(\alpha\). 

\(\text{cof}(\alpha)\) denotes the cofinality of an ordinal \(\alpha\).

\(R=\{\alpha>\omega|\text{cof}(\alpha)=\alpha\}\) is the set of uncountable regular cardinals.

\(M\) is the least weakly Mahlo cardinal. 

Normal form. \(\alpha=_{NF}M^\beta\gamma\Leftrightarrow\alpha=M^\beta\gamma\wedge\gamma<M\)

\(\varepsilon_{M+1}=\min\{\alpha>M|\alpha=\omega^\alpha\}\) is the least epsilon number greater than \(M\). 

In this notation \(\alpha\in R\Leftrightarrow\alpha=\chi(\beta)\vee\alpha=M\). The variable \(\pi\) is reserved for uncountable regular cardinals less than \(M\). 

\subsubsection{Definition of the function \(\chi:\varepsilon_{M+1}\rightarrow M\)}

1) \(B_0(\alpha,\beta)=\beta\cup\{0\}\)

2) \(\gamma=_{NF}\gamma_1+\cdots+\gamma_k\wedge\gamma_1,...,\gamma_k\in B_n(\alpha,\beta)\Rightarrow\gamma\in B_{n+1}(\alpha,\beta)\)

3) \(\gamma=\omega^{M+\delta}\wedge\delta\in B_n(\alpha,\beta)\Rightarrow\gamma\in B_{n+1}(\alpha,\beta)\)

4) \(\gamma=\chi(\eta)\wedge\eta\in B_n(\alpha,\beta)\cap\alpha \Rightarrow\gamma\in B_{n+1}(\alpha,\beta)\)

5) \(\gamma<\pi\wedge\pi\in B_n(\alpha,\beta) \Rightarrow\gamma\in B_{n+1}(\alpha,\beta)\)

6) \(B(\alpha,\beta)=\cup_{n<\omega}B_n(\alpha,\beta)\)

7) \(\chi(\alpha)=\min\{\beta<M|B(\alpha,\beta)\cap M\subset\beta\wedge\beta\in R\}\)

Normal form. \(\alpha=_{NF}\chi(\beta)\Leftrightarrow\alpha=\chi(\beta)\wedge\beta\in B(\beta,\chi(\beta))\)

\subsubsection{Definition of functions \(\psi_\pi:M\rightarrow \pi\)}

1) \(C_0(\alpha,\beta)=\beta\cup\{0\}\)

2) \(\gamma=_{NF}\gamma_1+\cdots+\gamma_k\wedge\gamma_1,...,\gamma_k \in C_n(\alpha,\beta)\Rightarrow\gamma\in C_{n+1}(\alpha,\beta)\)

3) \(\gamma=\omega^{M+\delta}\wedge\delta\in C_n(\alpha,\beta)\Rightarrow\gamma\in C_{n+1}(\alpha,\beta)\)

4) \(\gamma=_{NF}\chi(\eta)\wedge\eta\in C_n(\alpha,\beta) \Rightarrow\gamma\in C_{n+1}(\alpha,\beta)\)

5) \(\gamma=\psi_\pi(\eta)\wedge\eta<\alpha\wedge\pi,\eta\in C_n(\alpha,\beta)\Rightarrow\gamma\in C_{n+1}(\alpha,\beta)\)

6) \(C(\alpha,\beta)=\cup_{n<\omega}C_n(\alpha,\beta)\)

7) \(\psi_\pi(\alpha)=\min\{\beta<\pi|C(\alpha,\beta)\cap \pi\subset\beta\}\)

Below \(\psi(\alpha)\) is an abbreviation for \(\psi_{\chi(0)}(\alpha)\)

Normal form. \(\alpha=_{NF}\psi_\pi(\beta)\Leftrightarrow\alpha=\psi_\pi(\beta)\wedge\beta\in C(\beta,\psi_\pi(\beta))\)

\subsubsection{Definition of the set \(T\) of ordinals which can be generated from the ordinals \(0\) and \(M\) using addition, multiplication, exponentiation and the functions \(\chi,\psi_\pi\)}

1) \(0\in T\)

2) \(\alpha=_{NF}\alpha_1+\cdots+\alpha_n\wedge\alpha_1,...,\alpha_n\in T\Rightarrow\alpha\in T\)

3) \(\alpha=_{NF}M^\beta\gamma\wedge\beta,\gamma\in T\Rightarrow\alpha\in T\)

4) \(\alpha=_{NF}\psi_\pi(\beta)\wedge\pi,\beta\in T\Rightarrow\alpha\in T\)

5) \(\alpha=_{NF}\chi(\beta)\wedge\beta\in T\Rightarrow\alpha\in T\)

\subsubsection{A system of fundamental sequences}

For each non-zero ordinal \(\alpha\in T\) we define its cofinality \(\text{cof}(\alpha)\) and assign a fundamental sequence i.e. a strictly increasing sequence \((\alpha[\eta])_{\eta<\text{cof}(\alpha)}\) with length \(\text{cof}(\alpha)\) and with limit \(\alpha\)

1) \(\alpha=\alpha_1+\cdots+\alpha_n\Rightarrow\text{cof}(\alpha)=\text{cof}(\alpha_n)\wedge\alpha[\eta]=\alpha_1+\cdots+(\alpha_n[\eta])\)

2) \(\alpha=\psi_{\chi(\beta+1)}(0)\Rightarrow\text{cof}(\alpha)=\omega\wedge\alpha[\eta]=\chi(\beta)\times \eta\)

3) \(\alpha=\psi_{\chi(\beta)}(0)\wedge\omega\le\text{cof}(\beta)<M\Rightarrow\text{cof}(\alpha)=\text{cof}(\beta)\wedge\alpha[\eta]=\chi(\beta[\eta])\)

4) \(\alpha=\psi_{\chi(\beta)}(0)\wedge\text{cof}(\beta)=M\Rightarrow\text{cof}(\alpha)=\omega\wedge\alpha[0]=1\wedge\alpha[\eta+1]=\chi(\beta[\alpha[\eta]])\)

5)  \(\alpha=\psi_{\chi(\beta)}(\gamma+1)\wedge(\beta=0\vee\beta=\delta+1\vee\omega\le\text{cof}(\beta)<M)\Rightarrow\text{cof}(\alpha)=\omega\wedge\alpha[\eta]=\psi_{\chi(\beta)}(\gamma)\times \eta\)

6)  \(\alpha=\psi_{\chi(\beta)}(\gamma+1)\wedge\text{cof}(\beta)=M\Rightarrow\text{cof}(\alpha)=\omega\wedge\alpha[0]=\psi_{\chi(\beta)}(\gamma)+1\wedge\alpha[\eta+1]=\chi(\beta[\alpha[\eta]])\)

7)  \(\alpha=\psi_{\chi(0)}(0)=1\vee\alpha=\chi(\beta)\vee\alpha=M\Rightarrow\text{cof}(\alpha)=\alpha\wedge\alpha[\eta]=\eta\)

8) \(\alpha=M^{\beta}\times\gamma \wedge \text{cof} (\gamma)\geq\omega \Rightarrow \text{cof} (\alpha)= \text{cof}(\gamma)\wedge\alpha[\eta]=M^{\beta}\times(\gamma[\eta])\)

9) \(\alpha=M^{\beta+1}\times(\gamma+1) \Rightarrow \text{cof} (\alpha)=M \wedge\alpha[\eta]=M^{\beta+1}\times\gamma+M^\beta\times\eta\)

10) \(\alpha=M^\beta\times(\gamma+1) \wedge\text{cof}(\beta)\geq\omega \Rightarrow \text{cof}(\alpha)= \text{cof}(\beta) \wedge \alpha[\eta]=M^\beta\times\gamma+M^{\beta[\eta]}\)

11) \(\alpha=\psi_\pi(\beta) \wedge \pi>\text{cof}(\beta)\geq\omega \Rightarrow \text{cof} (\alpha)= \text{cof}(\beta) \wedge \alpha[\eta]=\psi_\pi(\beta[\eta])\)

12) \(\alpha=\psi_\pi(\beta) \wedge \text{cof}(\beta)=\mu\geq\pi \Rightarrow \text{cof} (\alpha)=\omega \wedge \alpha[n]=\psi _\pi(\beta[\gamma[n]])\) where  \(\gamma[0]=1\) and  \(\gamma[k+1]=\psi_\mu(\beta[\gamma[k]])\)

Let \(\lambda\) denote the limit of this notation

13) \(\alpha=\lambda\Rightarrow\text{cof} (\alpha)=\omega \wedge \alpha[n]=\psi(\chi(\beta[n]))\) where \(\beta[0]=0\) 
and \(\beta[k+1]=M^{\beta[k]}\)

\bigskip

\begin{tabular}{|c|c|c|}
\hline

&Examples
&applied rules
\\ \hline
 1.
&\(\lambda[3]=\psi(\chi(M^M))\)
&13
\\ \hline
 2.
&\(\psi(\chi(M^M))[3]=\psi(\psi_{\chi(M^M)}(\psi_{\chi(M^M)}(\psi_{\chi(M^M)}(1))))\)
&7, 12
\\ \hline
 3.
&\(\psi(\psi_{\chi(M^M)}(0))[3]=\psi(\chi(M^{\chi(M^{\chi(M)})}))\)
&4, 7, 10,11
\\ \hline
 4.
&\(\psi(\psi_{\chi(M^2)}(0))[3]=\psi(\chi(M\times\chi(M\times\chi(M))))\)
&4, 9, 11
\\ \hline
 5.
&\(\psi(\psi_{\chi(M+M)}(0))[3]=\psi(\chi(M+\chi(M+\chi(M+1))))\)
&4, 9, 11
\\ \hline
 6.
&\(\psi(\chi(M))[3]=\psi(\psi_{\chi(M)}(\psi_{\chi(M)}(\psi_{\chi(M)}(1))))\)
&7, 12
\\ \hline
 7.
&\(\psi(\psi_{\chi(M)}(0))[3]=\psi(\chi(\chi(\chi(1))))\)
&4, 7, 11
\\ \hline
 8.
&\(\psi(\psi_{\chi(\chi(0))}(0))[3]=\psi(\chi(\psi(\chi(\psi(\chi(1))))))\)
&3, 7, 12
\\ \hline
 9
&\(\psi(\psi_{\chi(\psi(1)+\psi(1))}(0))[3]=\psi(\chi(\psi(1)+3))\)
&1, 3, 5, 11
\\ \hline
 10.
&\(\psi(\chi(1))[3]=\psi(\psi_{\chi(1)}(\psi_{\chi(1)}(\psi_{\chi(1)}(1))))\)
&7, 12
\\ \hline
 11.
&\(\psi(\psi_{\chi(1)}(0))[3]=\psi(\chi(0)+\chi(0)+\chi(0))\)
&2, 11
\\ \hline
 12.
&\(\psi(\chi(0))[3]=\psi(\psi(\psi(\psi(1))))\)
&7, 12
\\ \hline
\end{tabular}

\bigskip

These fundamental sequences can be reformulated like this :

7) \( \psi_{\chi(0)}(0) = 1 \)

2) \( \psi_{\chi(\beta+1)}(0) = \chi(\beta) \cdot \omega \)

3) \( \psi_{\chi(Lim_\mu f)}(0) = Lim_\mu(\chi \circ f) \) if \( \omega_\kappa < M \)

4) \( \psi_{\chi(lim_M f)}(0) = (\chi \circ f)^\omega (1) \)

6) \( \psi_{\chi(\lim_M f)}(\gamma+1) = (\chi \circ f)^\omega (\psi_{\chi(Lim_\mu f)}(\gamma)+1) \)

5) \( \psi_{\chi(\beta)}(\gamma+1) = \psi_{\chi(\beta)}(\gamma) \cdot \omega \)

11) \( \psi_\pi (Lim_\mu f) = Lim_\mu (\psi_\pi \circ f) \) if \( \pi > \omega_\mu \)

12) \( \psi_\pi (Lim_\mu f) = lim [\psi_\pi(f((\psi_{\omega_\mu} \circ f)^\bullet(1)))] \) if \( \omega_\mu \ge \pi \)

\bigskip

Reference :

http://cantorsattic.info/index.php?title=User\_blog:Denis\_Maksudov/Ordinal\_functions\_collapsing\_the\_least\_weakly\_Mahlo\_cardinal

;\_a\_system\_of\_fundamental\_sequences\&redirect=no


\subsection{Functions collapsing weakly Mahlo cardinals}



\subsubsection{Definition}



An ordinal is weakly Mahlo if it's an uncountable regular cardinal, and regular cardinals in it (in another word, less than it) are stationary.



Let \(M_0=0\), \(M_{\alpha+1}\) be the next weakly Mahlo cardinal after \(M_\alpha\), and \(M_\alpha=\sup\{M_\beta|\beta<\alpha\}\) for limit ordinal \(\alpha\). Then, \begin{eqnarray*} C_0(\alpha,\beta) &=& \beta\cup\{0\} \\ C_{n+1}(\alpha,\beta) &=& \{\gamma+\delta|\gamma,\delta\in C_n(\alpha,\beta)\} \\ &\cup& \{M_\gamma|\gamma\in C_n(\alpha,\beta)\} \\ &\cup& \{\chi_\pi(\gamma)|\pi,\gamma\in C_n(\alpha,\beta)\wedge\gamma<\alpha\wedge\pi\text{ is weakly Mahlo}\} \\ &\cup& \{\psi_\pi(\gamma)|\pi,\gamma\in C_n(\alpha,\beta)\wedge\gamma<\alpha\wedge\pi\text{ is uncountable regular}\} \\ C(\alpha,\beta) &=& \bigcup_{n<\omega} C_n(\alpha,\beta) \\ \chi_\pi(\alpha) &=& \min\{\beta<\pi|C(\alpha,\beta)\cap\pi\subseteq\beta\wedge\beta\text{ is uncountable regular}\} \\ \psi_\pi(\alpha) &=& \min\{\beta<\pi|C(\alpha,\beta)\cap\pi\subseteq\beta\} \end{eqnarray*}



In this section the variables \(\rho, \pi\) are reserved for uncountable regular cardinals of the form \(\chi_\alpha(\beta)\) or \(M_{\gamma+1}\).



\subsubsection{Standard form for ordinals \(\alpha<\text{min}\{\xi|M_\xi=\xi\}\)}



 The standard form for 0 is 0

 If \(\alpha\) is a weakly Mahlo cardinal, then the standard form for \(\alpha\) is \(\alpha= M_\beta\) where \(\beta<\alpha\) and \(\beta\) is expressed in standard form

 If \(\alpha\) is an uncountable regular cardinal of the form \(\chi_\pi(\beta)\), then the standard form for \(\alpha\) is \(\alpha= \chi_\pi(\beta)\) where \(\pi\) is a weakly Mahlo cardinal and \(\pi,\beta\) are expressed in standard form

 If \(\alpha\) is not additively principal and \(\alpha>0\), then the standard form for \(\alpha\) is \(\alpha=\alpha_1+\alpha_2+\cdots+\alpha_n\), where the \(\alpha_i\) are principal ordinals with \(\alpha_1\geq\alpha_2\geq\cdots\geq\alpha_n\), and the \(\alpha_i\) are expressed in standard form

 If \(\alpha\) is an additively principal ordinal but not of the form \(M_\beta\) or \(\chi_\rho(\gamma)\), then \(\alpha\) is expressible in the form \(\psi_\pi(\delta)\). Then the standard form for \(\alpha\) is \(\alpha=\psi_\pi(\delta)\) where \(\pi\) is an uncountable regular cardinal and \(\pi, \delta\) are expressed in standard form



\subsubsection{Fundamental sequences for the functions collapsing weakly Mahlo cardinals}



The fundamental sequence for an ordinal number \(\alpha\) with cofinality \(\text{cof}(\alpha)=\beta\) is a strictly increasing sequence \((\alpha[\eta])_{\eta<\beta}\) with length \(\beta\) and with limit \(\alpha\), where \(\alpha[\eta]\) is the \(\eta\)-th element of this sequence.



Let \(L=\{\alpha|\text{cof}(\alpha)\geq\omega\}\) denotes the set of all limit ordinals.



For non-zero ordinals \(\alpha<\text{min}\{\xi|M_\xi=\xi\}\) written in the standard form fundamental sequences are defined as follows:

\begin{enumerate}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item If \(\alpha=\alpha_1+\alpha_2+\cdots+\alpha_n\) with \(n\geq 2\) then \(\text{cof}(\alpha)=\text{cof}(\alpha_n)\) and \(\alpha[\eta]=\alpha_1+\alpha_2+\cdots+(\alpha_n[\eta])\)

\item If \(\alpha=\psi_\pi(0)\) then \(\text{cof}(\alpha)=\alpha=1\) and \(\alpha[0]=0\)

\item If \(\alpha=\psi_{\chi_\pi(\beta)}(\gamma+1)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[\eta]=\left\{\begin{array}{lcr} \chi_\pi(\gamma)\cdot \eta \text{ if }0\le\gamma<\beta\\ \psi_{\chi_\pi(\beta)}(\gamma)\cdot \eta \text{ if }\gamma\geq\beta\\ \end{array}\right.\)

\item If \(\alpha=\psi_{M_\beta}(\gamma+1)\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[\eta]=\chi_{M_\beta}(\gamma)\cdot \eta\)

\item If \(\alpha=\pi\) then \(\text{cof}(\alpha)=\pi\) and \(\alpha[\eta]=\eta\)

\item If \(\alpha=M_\beta\) and \(\beta\in L\) then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=M_{\beta[\eta]}\)

\item If \(\alpha=\psi_\pi(\beta)\) and \(\omega\le\text{cof}(\beta)<\pi\) then \(\text{cof}(\alpha)=\text{cof}(\beta)\) and \(\alpha[\eta]=\psi_\pi(\beta[\eta])\)

\item If \(\alpha=\psi_\pi(\beta)\) where \(\text{cof}(\beta)=\rho\geq\pi\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[\eta]=\psi_\pi(\beta[\gamma[\eta]])\) 

with \(\gamma[0]=1\) and \(\gamma[\eta+1]=\left\{\begin{array}{lcr} \psi_{\rho}(\beta[\gamma[\eta]])\text{ if }\rho=\chi_{M_{\delta+1}}(\epsilon)\\ \chi_{\rho}(\beta[\gamma[\eta]])\text{ if }\rho= M_{\delta+1}\\ \end{array}\right.\)

\end{enumerate}

Limit of this notation is \(\nu\). If \(\alpha=\nu\) then \(\text{cof}(\alpha)=\omega\) and \(\alpha[0]=1\) and \(\alpha[\eta+1]=M_{\alpha[\eta]}\)

\bigskip

These fundamental sequences can be reformulated giving the following recursive definitions :

\smallskip

\advance\leftskip by 10 pt

1. Standard definition of addition of limit ordinals

2. \( \psi_\pi(0) = 1 \)

3a. \( \psi_{\chi_\pi(\beta)}(\gamma+1) = \chi_\pi(\gamma) \cdot \omega \) if \( \gamma < \beta \)

3b. \( \psi_{\chi_\pi(\beta)}(\gamma+1) = \psi_{\chi_\pi(\beta)}(\gamma) \cdot \omega \) if \( \gamma \ge \beta \)

4. \( \psi_{M_\beta}(\gamma+1) = \psi_{M_\beta}(\gamma) \cdot \omega \)

6. \( M_{Lim_\mu f} = Lim_\mu (\xi \mapsto M_{f(\xi)}) \)

7. \( \psi_\pi(Lim_\mu f) = Lim_\mu (\psi_\pi \circ f) \) if \( \omega_\mu < \pi \)

8a. \( \psi_\pi (Lim_\mu f) = lim (\xi \mapsto \psi_\pi (f ((\psi_{\omega_\mu} \circ f)^\xi (1)))) \)
 if \( \omega_\mu \ge \pi \) and \( \omega_\mu = \chi_{M_{\delta+1}}(\varepsilon) \)

8b. \( \psi_\pi (Lim_\mu f) = lim (\xi \mapsto \psi_\pi (f ((\chi_{\omega_\mu} \circ f)^\xi (1)))) \)
 if \( \omega_\mu \ge \pi \) and \( \omega_\mu = M_{\delta+1} \)

\advance\leftskip by -10 pt

\subsubsection{Another system of fundamental sequences}



For the function, collapsing weakly Mahlo cardinals to countable ordinals, the fundamental sequences also can be defined as follows:

\(C_0= \{0,1\}\)

\(C_{n+1}= \{\alpha+\beta,M_\gamma,\chi_\delta(\epsilon),\psi_\zeta(\eta)|\alpha,\beta,\gamma,\delta,\epsilon,\zeta,\eta\in C_n\wedge\delta\in W\wedge\zeta\in R\}\)

\(L(\alpha)=\text{min}\{n<\omega|\alpha\in C_n\}\)

\(\alpha[n]=\text{max}\{\beta<\alpha|L(\beta)\le L(\alpha)+n\}\)

where \(R\) denotes set of all uncountable regular cardinals and \(W\) denotes set of all weakly Mahlos cardinals.



\subsubsection{References}

http://googology.wikia.com/wiki/List\_of\_systems\_of\_fundamental\_sequences

https://sites.google.com/site/travelingtotheinfinity/the-function-collapsing-weakly-mahlo-cardinals


\subsection{Collapsing cardinals greater than Mahlo}

After Mahlo cardinals, things become more and more complicated. 

Jan-Carl Stegert wrote a dissertation on this subject ("Ordinal proof theory of Kripke-Platek set theory augmented by strong reflection principles") available here :

https://miami.uni-muenster.de/Record/429ac0b8-092f-426d-bf84-1e3a0adc8957

which is often considered as the state of the art in the domain of ordinal notations.

To get an idea of the complexity reached at this level, let us read what David Madore says in 

http://www.madore.org/~david/weblog/d.2017-08-31.2462.ordinaux-interessants.html :

(translated from French by Google and me)

"But beyond that, there are far more important complications: to crush a "\(\Pi_4\)-reflective" ordinal, one must begin to manage ordinals whose description is really more complex than the collapsing of something (for example Ordinal \(\Pi_2\)-reflecting on \(\Pi_3\)-reflecting): the collapsing functions take as argument not just an ordinal to which to collapse and a simple level of Mahloness, but much richer data which are "configurations of reflection" or "instances of reflection" (one does not just collapse to an ordinal of Mahloness level \(\xi\) and less than \(\pi\) but to an ordinal having some properties of reflection which lead themselves to other collapsing functions), and the notation system becomes incredibly more subtle and defined by a pretty awesome number of nested recursions. At least the "\(\Pi_5\)-reflecting" ordinals or more do not bring more substantial complexity compared to \(\Pi_4\)-reflecting, but there are still some subtleties if we want to include all levels at once, or even levels indexed by the system of ordinals we are defining. This is basically the point at which Jan-Carl Stegert's thesis (Ordinal proof theory of Kripke-Platek set theory augmented by strong reflection principles (2010), available here in PDF), introduces ordinal notational systems. whose only definition extends over a large number of pages (especially pp. 13-30 for the main system, pp. 68-70 for a simplified version, pp. 66-67 for an even more simplified version equivalent to collapsing of a Mahlo cardinal / \(\Pi_3\)-reflecting ordinal, and pp. 100-113 for an even richer system). From what I know, it is the largest explicit system of ordinal notation that has been introduced and rigorously analyzed in mathematical literature."

\begin{comment}
\section{The mystery of Taranovsky's notation}

And last but biggest comes Taranovsky's notation...

While Stegert gets entangled in an inextricable complexity with the collapse of gigantic cardinals, Dmitro Taranovsky, in a self-published web page ( http://web.mit.edu/dmytro/www/other/OrdinalNotation.htm ), presents a much simpler notation, which collapses only cardinals less than \( \Omega_\omega \) or \( \aleph_\omega \), but claims to be strong enough to provide an ordinal analysis of full second-order arithmetic, which means much more powerful than Stegert's system, which Taranovsky does not even mention. 
\end{comment}

\section{Taranovsky's conjectured ordinal notations}

Dmytro Taranovsky presents, in a self-published web page ( http://web.mit.edu/dmytro/www/other/OrdinalNotation.htm ), several conjectured ordinal notations, which means that it is not proved that expressions in these notations really represents ordinals, because it is not proved that these notations are well-founded, which means that every set has a least element, which is a fundamental property of ordinals. The well-foundedness of a notation system is equivalent to the existence of an order-preserving injective map from this system to ordinal, which means that every expression in the notation is associated with a unique ordinal, and an ordinal which can be represented in this notation has a unique standard form in it. Well-foundedness is proved only for one of the notations called "Built-from-below with Passthrough", described in chapter 8 of the web page.

These notations are much simpler than ordinal collapsing functions that collapse big cardinals, they collapse only cardinals less than \( \Omega_\omega \) or \( \aleph_\omega \), but Taranovsky conjectures they are strong enough to provide an ordinal analysis of full second-order arithmetic, which means much more powerful than Stegert's system.

There are reasons to suspect him of overestimating the power of his notation : the simplicity of the notation compared to its allegated power and the complexity of concurrent less powerful notations, the fact that Taranovsky published his work on a personal page and not in a recognized journal and he did not present a thesis of mathematics...

More technically, Madore thinks that "Taranovsky missed the fact (which is what makes ordinal analysis very delicate beyond \(\Pi_3\)-reflection) that to deal with \(\Pi_4\)-reflection we need to account for those ordinals which are \(\Pi_2\)-reflecting on a set of \(\Pi_3\)-reflecting ordinals, which means we need to go beyond collapsing functions and talk of collapsing hierarchies".

( https://johncarlosbaez.wordpress.com/2016/07/07/large-countable-ordinals-part-3/ )

But a look at his work shows that it seems to make sense. So is he a pretentious or a genius who should be more recognized? Personally I am not competent enough to judge it. Some opinions about it can be found here :

https://mathoverflow.net/questions/118854/does-taranovskys-system-of-ordinal-notations-make-sense/118888

https://johncarlosbaez.wordpress.com/2016/07/07/large-countable-ordinals-part-3/

http://www.madore.org/~david/weblog/d.2017-08-31.2462.ordinaux-interessants.html

\subsection{Definition of Taranovsky's Ordinal Notation}

In http://web.mit.edu/dmytro/www/other/OrdinalNotation.htm , Dmytro Taranovsky defines in fact several ordinal notation systems which belong to a same framework. Here, we will study principally what he calls "Main Ordinal Notation System" described in chapter 5 of his article. At the end of this chaper, we will have a short look at his other notations.

This main system is in fact an indexed sequence of systems : the 0th system, the 1st system, the 2nd system, ...

In any n-th system, a syntactically correct representation of an ordinal is either 0, or $\Omega$, or C(a,b) where a and b are representations of ordinals. Example : C(C(0,0),C($\Omega$,0)). Taranovsky writes "$\Omega_n$" instead of "$\Omega$", but it seems simpler to me to write it "$\Omega$".
0 represents the ordinal 0, $\Omega$ represents $\Omega_n$. \( C(\alpha,\beta) \) is more difficult to define, for the moment I will only say that it represents \( \beta+\omega^\alpha \) if \( C(\alpha,\beta) \ge \alpha \).

A representation of an ordinal may also be written in postfix form, for example 0$\Omega$C00CC.
This form can be defined by a generative grammar :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item Ord $\rightarrow$ 0
\item Ord $\rightarrow$ $\Omega$
\item Ord $\rightarrow$ Ord Ord C
\end{itemize}

Then we can define an order relation on syntactically correct expressions by lexicographical order with C $<$ 0 $<$ $\Omega$.
For example, C(C(0,0),0) $<$ C($\Omega$, 0) because lexicographically 000CC $<$ 0$\Omega$C.
At this point, we get an ordered set of expressions which might be interesting, but does not describe ordinals because it is not well ordered (some sets do not have a least element).
To describe ordinals, we must introduce some restrictions defining standard forms, lexicographical comparison of postfix forms being valid only for ordinals in standard forms.
The first restriction introduced by Taranovsky is that \( C(\alpha,C(\beta,\gamma)) \) is standard only if \( \alpha \le \beta \).
The second one is that \( C(\alpha,\beta) \) is standard only if $\alpha$ is n-built from below from \( C(\alpha,\beta) \). We will see later what means "n-built from below".

The complete definition of a standard form is :
\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item 0 and $\Omega$ are standard
\item \( C(\alpha,\beta) \) is standard if and only if :
 \begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
 \item $\alpha$ and $\beta$ are standard
 \item $\beta$ is 0 or $\Omega$ or \( C(\gamma,\delta) \) with \( \alpha \le \gamma \)
 \item $\alpha$ is n-built from below from \( C(\alpha,\beta) \)
 \end{itemize}
\end{itemize}

Now what does "n-built from below" mean ?
Taranovsky defines it as follows :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item An ordinal $\alpha$ is 0-built from below from $\beta$ iff \( \alpha \le \beta \).
\item $\alpha$ is n+1-built from below from $\beta$ iff the standard representation of $\alpha$ 
does not use ordinals above $\alpha$ except in the scope of an ordinal n-built from below from $\beta$.
\end{itemize}
(Note: "in the scope of" means "as a subterm of".)

\bigskip

Nayuta Ito gives in https://googology.wikia.org/wiki/User\_blog:Nayuta\_Ito/Introduction\_to\_Taranovsky's\_Ordinal\_Notation an equivalent but more explicit definition :

1. $\alpha$ is 0-BFB from $\beta$ if and only if \( \alpha < \beta \).

2. $\alpha$ is (k+1)-BFB from $\beta$ if and only if:

 2a. For all subterm $\gamma$ of $\alpha$, either of them follows:

  2aa. \( \gamma \le \alpha \) 

  2ab. there exists subterm $\delta$ of $\alpha$ such that $\gamma$ is subterm of $\delta$ and $\delta$ is k-built from below from $\beta$.

\bigskip

In the n-th system, $\Omega$ represents $\Omega_n$, and C($\Omega_{i+1}$,0) represents $\Omega_i$, which permits to represent any $\Omega_i$ with i $\le$ n.

\bigskip

What is the least ordinal in this notation ? We can answer to this question considering the lexicographical order on postfix representations, with \( C < 0 < \Omega \). A postfix representation cannot start with C because C must be preceded by two other postfix representations, so the least postfix representation is 0, which represents the ordinal 0.  

Then the correspondence between Taranovsky's notation and ordinals goes on :

\begin{itemize}

\item The next postfix representation starts with 0, it cannot be 0C for the same reason, it can start with 00, and must be completed with C for syntactical validity, so it is 00C or C(0,0) which represents the ordinal 1.

\item Similarily, after comes 00C0C = C(0,C(0,0)) which represents 2, and so on.

\item More generally, \( C(0,\alpha) \) represents the successor of \( \alpha , \alpha+1 \) (for more language simplicity we will sometimes identify ordinals with their representations).

\item After all natural numbers comes 000CC = C(C(0,0),0) which represents \( \omega \).

\item More generally, \( C(C(0,\alpha),\beta) \) represents \( sup \lbrace \beta, C(\alpha,\beta), C(\alpha,C(\alpha,\beta)), \ldots \rbrace \).

\item For example, \( \omega \cdot 2 = sup \lbrace \omega, \omega+1, \omega+2, \ldots \rbrace = sup \lbrace C(C(0,0),0), C(0,C(C(0,0),0)), C(0,C(0,C(C(0,0),0))), \ldots \rbrace = C(C(0,0),C(C(0,0),0)) \).

\item Then, \( \omega^2 = sup \lbrace 0, \omega, \omega \cdot 2, \ldots \rbrace = sup \lbrace 0, C(C(0,0),0), C(C(0,0),C(C(0,0),0)), \ldots \rbrace = C(C(0,C(0,0)),0) \).

\item After all the \( \omega^n \) comes \( \omega^\omega = sup \lbrace \omega^0 = 1, \omega^1 = \omega, \omega^2, \ldots \rbrace = sup \lbrace C(0,0), C(C(0,0),0), C(C(0,C(0,0)),0), \ldots \rbrace = C(C(C(0,0),0),0) \).

\end{itemize}

Then comes \( \varepsilon_0 = sup \lbrace 0, \omega^0 = 1, \omega^1 = \omega, \omega^\omega, \ldots \rbrace = sup \lbrace 0, C(0,0), C(C(0,0),0), C(C(C(0,0),0),0), \ldots \). This is the least fixed point of \( \xi \mapsto C(\xi,0) \). To represent it in Taranovsky's notation, we use \( \Omega_1 \) as a fixed point operator : \( \varepsilon_0 = C(\Omega_1,0) \). In the first system, we have \( \Omega = \Omega_1 \). In the second system, \( \Omega = \Omega_2 \) and \( \Omega_1 = C(\Omega_2,0) = C(\Omega,0) \).

After \( \varepsilon_0 \) comes successively :

\begin{itemize}

\item \( \varepsilon_0+1 = C(0,C(\Omega_1,0)) \)

\item \( \varepsilon_0+2 = C(0,C(0,C(\Omega_1,0))) \)

\item \( \varepsilon_0+\omega = C(C(0,0),C(\Omega_1,0)) \)

\item \( \varepsilon_0+\omega \cdot 2 = C(C(0,0),C(C(0,0),C(\Omega_1,0))) \)

\item \( \varepsilon_0+\omega^2 = C(C(0,C(0,0)),C(\Omega_1,0)) \)

\item \( \varepsilon_0+\omega^\omega = C(C(C(0,0),0),C(\Omega_1,0)) \)

\item \( \varepsilon_0+\varepsilon_0 = \varepsilon_0 \cdot 2 = C(C(\Omega_1,0),C(\Omega_1,0)) \)

\item \( \varepsilon_0 \cdot 3 = C(C(\Omega_1,0),C(C(\Omega_1,0),C(\Omega_1,0))) \)

\item \( \varepsilon_0 \cdot \omega = C(C(0,C(\Omega_1,0)),C(\Omega_1,0)) \)

\item \( {\varepsilon_0}^2 = C(C(C(\Omega_1,0),C(\Omega_1,0)),C(\Omega,0)) \)

\item \( {\varepsilon_0}^\omega = C(C(C(0,C(\Omega_1,0)),C(\Omega_1,0)),C(\Omega_1,0)) \)

\item \( {\varepsilon_0}^{\varepsilon_0} = C(C(C(C(\Omega_1,0),C(\Omega_1,0)),C(\Omega_1,0)) \)

\item \( \varepsilon_1 = C(\Omega_1,C(\Omega_1,0)) \)

\item \( \varepsilon_2 = C(\Omega_1,C(\Omega_1,C(\Omega_1,0))) \)

\item \( \varepsilon_\omega = C(C(0,\Omega_1),0) \)

\item \( \varepsilon_{\omega^2} = C(C(0,C(0,\Omega_1)),0) \)

\item \( \varepsilon_{\varepsilon_0} = C(C(C(\Omega_1,0),\Omega_1),0) \)

\item \( \zeta_0 = C(C(\Omega_1,\Omega_1),0) \) 

\item \( \Gamma_0 = C(C(C(\Omega_1,\Omega_1),\Omega_1),0) \)

\item \( LVO = C(C(C(C(\Omega_1,\Omega_1),\Omega_1),\Omega_1),0) \)

\item \( BHO = C(C(\Omega_2,\Omega_1),0) \)

\end{itemize}


\bigskip

To make C a total function for a and b in the notation system (this is not required for standard forms), let C(a, b) be the least ordinal (in the notation system) of degree $\ge$ a above b, where the degree of $\Omega_i$ is $\Omega_{i+1}$ and the degree of C(c,d) is c if "C(c,d)" is the standard form. 

More precisely and more generally, a degree for a well-ordered set S is a binary relation on S such that :

\begin{itemize}
	\item Every element \( c \in S \) has degree \( 0_S \) (the least element of S). \( 0_S \) only has degree \( 0_S \).
	\item For a limit a, c has degree a iff it has every degree less than a.
	\item For a successor a'=a+1, either of the following holds:
	\begin{itemize}
		\item An element has degree a' iff it is a limit of elements of degree a.
		\item There is a limit element d \(\le\) a such that for every c in S, c has degree a' iff it has degree a and either c \(\le\) d or c is a limit of elements of degree a (or both).
	\end{itemize}
\end{itemize}

Note: The third condition can be equivalently written as \( \forall a (C_{a+1} = lim(C_a) \vee \exists d \in lim(S) \cap (a+1) C_{a+1} = lim(C_a) \cup (C_a \cap (d+1))) \), where S is identified with an ordinal (so a+1 consists of ordinals \( \leq a), C_a \) is the set of elements that have degree a, and lim is limit points.

In other terms : Let \( \eta \) be an ordinal, and let \( 0_S \) and let Ld(a,b) be the statement that a is a limit of ordinals c such that \( (c,b) \in D \). Let D be the following binary relation over \( \eta \) :

\begin{itemize}
	\item \( \forall a<\eta:(a,0) \in D \)
	\item \( \forall a<\eta:a \neq 0 \Rightarrow (0,a) \notin D \)
	\item \( \forall b\in Lim \cup \eta:(a,b)\in D \Leftrightarrow \forall c<b:(a,c)\in D \)
	\item \( \forall b:(a,b)\in D \Leftrightarrow Ld(a,b+1)\forall b:(a,b)\in D \Leftrightarrow Ld(a,b+1) \)
	\item \( \forall b:\exists d\in Lim \cup  \eta :d<=b \Rightarrow \forall c:(c,a+1)\in D \Leftrightarrow (c<=d \vee Ld(c,b)) \)
\end{itemize}

Then \( C(a,b)=min \lbrace c:c\in  \eta  \wedge c>b \wedge (c,a)\in D \rbrace \).

\( C(a, b) = b+\omega^a \) iff \( C(a, b) \geq  a \).

\bigskip


For ordinals of cofinality $\omega$, the fundamental sequences of Taranovsky's notation can easily be defined: for example :

Let L($\alpha$) be the amount of C's in standard representation of $\alpha$.

Then :

\[ \alpha[n] = max \lbrace \beta | \beta < \alpha \land L(\beta) \le L(\alpha)+n \rbrace \]

or

\[ \alpha[n] = max \lbrace \beta | \beta < \alpha \land L(\beta) \le n \rbrace \]

Examples with this last definition :

a = C(C(0,0),0) = $\omega$

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item a[0] = 0
\item a[1] = C(0,0)
\item a[2] = C(0,C(0,0))
\item ...
\end{itemize}

a = C (C(0,0),C(C(0,0),0)) = H [C(0,*)] C(C(0,0),0)

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item a[0] = 0
\item a[1] = C(0,0)
\item a[2] = C(C(0,0),0)
\item a[3] = C(0,C(C(0,0),0))
\item a[4] = C(0,C(0,C(C(0,0),0)))
\item ...
\end{itemize}

a = C(C(0,C(0,0)),0) = $\omega^2$ = H [C(C(0,0),*)] 0

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item a[0] = 0					  or	  a[0] = 0
\item a[1] = C(0,0)
\item a[2] = C(C(0,0),0)				  a[1] = C(C(0,0),0)
\item a[3] = C(0,C(C(0,0),0))
\item a[4] = C(C(0,0),C(C(0,0),0))  	  a[2] = C(C(0,0),C(C(0,0),0))
\item ...
\end{itemize}

Normally, $\Omega_1$ has no fundamental sequence indexed by integers since it is not countable, but if we use this formula with $\Omega_1$, we get a fundamental sequence of the limit ordinal of the notation. For example, for system number 1, the limit ordinal is the Bachmann-Howard ordinal, and with a = $\Omega_1$ we get the following fundamental sequence of the Bachmann-Howard ordinal :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( a[0] = 0 \)
\item \( a[1] = C(\Omega_1,0) \)
\item \( a[2] = C(C(\Omega_1,\Omega_1),0) \)
\item \( a[3] = C(C(C(\Omega_1,\Omega_1),\Omega_1),0) \)
\item \( a[4] = C(C(C(C(\Omega_1,\Omega_1),\Omega_1),\Omega_1),0) \)
\item \( \ldots \)
\end{itemize}

Here is a Haskell program implementing these definitions :

\verbatiminput{ton_explore.hs}

Here is the output of this program : 

\begin{verbatim}

$ hugs
__   __ __  __  ____   ___      _________________________________________
||   || ||  || ||  || ||__      Hugs 98: Based on the Haskell 98 standard
||___|| ||__|| ||__||  __||     Copyright (c) 1994-2005
||---||         ___||           World Wide Web: http://haskell.org/hugs
||   ||                         Bugs: http://hackage.haskell.org/trac/hugs
||   || Version: September 2006 _________________________________________

Haskell 98 mode: Restart with command line option -98 to enable extensions

Type :? for help
Hugs> :load ton_explore
Main> main
w n=1
C (C O O) O
[1] C O O
[2] C O (C O O)
[3] C O (C O (C O O))

w.2 n=1
C (C O O) (C (C O O) O)
[1] C O O
[2] C (C O O) O
[3] C O (C (C O O) O)
[4] C O (C O (C (C O O) O))
[5] C O (C O (C O (C (C O O) O)))

w^2 n=1
C (C O (C O O)) O
[1] C O O
[2] C (C O O) O
[3] C O (C (C O O) O)
[4] C (C O O) (C (C O O) O)
[5] C O (C (C O O) (C (C O O) O))
[6] C (C O O) (C (C O O) (C (C O O) O))

w^w n=1
C (C (C O O) O) O
[1] C O O
[2] C (C O O) O
[3] C (C O (C O O)) O
[4] C (C O (C O (C O O))) O
[5] C (C O (C O (C O (C O O)))) O
[6] C (C O (C O (C O (C O (C O O))))) O

e_0 n=1
C W O
[1] C O O
[2] C (C O O) O
[3] C (C (C O O) O) O
[4] C (C (C (C O O) O) O) O
[5] C (C (C (C (C O O) O) O) O) O
[6] C (C (C (C (C (C O O) O) O) O) O) O

e_0 n=2
C (C W O) O
[1] C O O
[2] C (C O O) O
[3] C (C (C O O) O) O
[4] C (C (C (C O O) O) O) O
[5] C (C (C (C (C O O) O) O) O) O
[6] C (C (C (C (C (C O O) O) O) O) O) O

e_0.2 n=1
C (C W O) (C W O)
[1] C W O
[2] C O (C W O)
[3] C (C O O) (C W O)
[4] C (C (C O O) O) (C W O)
[5] C (C (C (C O O) O) O) (C W O)
[6] C (C (C (C (C O O) O) O) O) (C W O)

z_0 n=1
C (C W W) O
[1] C W O
[2] C (C O W) O
[3] C (C (C W O) W) O
[4] C (C (C (C O W) O) W) O
[5] C (C (C (C (C W O) W) O) W) O
[6] C (C (C (C (C (C O W) O) W) O) W) O

z_0 n=2
C (C (C W O) (C W O)) O
[1] C O O
[2] C (C W O) O
[3] C (C O (C W O)) O
[4] C (C (C O O) (C W O)) O
[5] C (C (C (C W O) O) (C W O)) O
[6] C (C (C (C O (C W O)) O) (C W O)) O

G_0 n=1
C (C (C W W) W) O
[1] C W O
[2] C (C W W) O
[3] C (C (C O W) W) O
[4] C (C (C (C W O) W) W) O
[5] C (C (C (C (C W W) O) W) W) O
[6] C (C (C (C (C (C O W) W) O) W) W) O

LVO n=1
C (C (C (C W W) W) W) O
[1] C W O
[2] C (C W W) O
[3] C (C (C W W) W) O
[4] C (C (C (C O W) W) W) O
[5] C (C (C (C (C W O) W) W) W) O
[6] C (C (C (C (C (C W W) O) W) W) W) O

BHO n=2
C (C W (C W O)) O
[1] C O O
[2] C (C W O) O
[3] C (C O (C W O)) O
[4] C (C (C W O) (C W O)) O
[5] C (C (C O (C W O)) (C W O)) O
[6] C (C (C (C W O) (C W O)) (C W O)) O

W_0 n=0
W
[1] C O O
[2] C (C O O) O
[3] C (C (C O O) O) O
[4] C (C (C (C O O) O) O) O
[5] C (C (C (C (C O O) O) O) O) O
[6] C (C (C (C (C (C O O) O) O) O) O) O

W_1 n=1
W
[1] C W O
[2] C (C W W) O
[3] C (C (C W W) W) O
[4] C (C (C (C W W) W) W) O
[5] C (C (C (C (C W W) W) W) W) O
[6] C (C (C (C (C (C W W) W) W) W) W) O

W_1 n=2
C W O
[1] C O O
[2] C (C W O) O
[3] C (C (C W W) O) O
[4] C (C (C (C W W) W) O) O
[5] C (C (C (C (C W W) W) W) O) O
[6] C (C (C (C (C (C W W) W) W) W) O) O

W_2 n=2
W
[1] C W O
[2] C (C W W) O
[3] C (C (C W W) W) O
[4] C (C (C (C W W) W) W) O
[5] C (C (C (C (C W W) W) W) W) O
[6] C (C (C (C (C (C W W) W) W) W) W) O


Main> 

\end{verbatim}

\begin{comment}

module Main where

 -- Definition of ordinals in Taranovsky Ordinal Notation 
 data Ton = O | W | C Ton Ton
  deriving (Eq, Show)

 -- Item of postfix representation
 data PostfixItem = CP | OP | WP
  deriving (Eq, Show, Ord)

 -- Convert to postscript representation
 postfix O = [ OP ]
 postfix W = [ WP ]
 postfix (C a b) = postfix b ++ postfix a ++ [ CP ]

 -- short representation of postfix form
 string_postfix [] = ""
 string_postfix (CP:l) = "C" ++ string_postfix l
 string_postfix (OP:l) = "O" ++ string_postfix l
 string_postfix (WP:l) = "W" ++ string_postfix l

 -- Compare ordinals by comparing postfix representations
 instance Ord Ton where
  compare a b = compare (postfix a) (postfix b)

 -- List of subterms of an ordinal
 subterms O = [ O ]
 subterms W = [ W ]
 subterms (C a b) = [ C a b ] ++ subterms a ++ subterms b

 -- nbfbf n a b : a is n-built from below from b 
 nbfbf 0 a b = a <= b                    -- a is O-BFB from b if and only if a<b
 nbfbf n1 a b = let n = n1-1 in          -- a is (n+1)-BFB from b if and only if:
  flip all (subterms a) (\c ->           --  for all subterm c of a,
   c <= a ||                             --   either c <= a
   flip any (subterms a) (\d ->          --   or there exists subterms d of a such that
    elem c (subterms d) && nbfbf n d b)) --    c is a subterm of d and d is n-BFB from b

 -- standard n a : a is in standard form in n-th system
 standard _ O = True    -- 0 is standard
 standard _ W = True    -- W is standard
 standard n (C a b) =   -- C(a,b) is standard if and only if :
  standard n a &&       --  a is standard
  standard n b &&       --  b is standard
  (case b of            --  b is 0 or W or C(c,d) with a <= c
    O -> True
    W -> True
    C c d -> a <= c) &&
  nbfbf n a (C a b)     -- a is n-BFB from C(a,b)

 -- list_ton_l l = list of ordinals with l C's in their representation
 list_ton_l 0 = [ O, W ]
 list_ton_l k1 = let k = k1-1 in 
  concat (flip map [0..k] (\l ->
   concat (flip map (list_ton_l l) (\c -> 
    concat (flip map (list_ton_l (k-l)) (\d -> 
     [ C c d ] )) )) ))

 -- fs n a k = k-th element of findamental sequence of a in n-th system
 -- a[k] = max { b | L(b) = k, b is standard and b < a }
 fs n a k = foldr (\x -> \y -> if (x <= y) then y else x) O
             (flip filter (list_ton_l k) (\b -> (standard n b) && (b < a)))

 main = print (fs 1 (C (C O O) O) 3)

\end{comment}

\begin{comment}

\subsection{Definition of Taranovsky's C}

C(a,b) is the least element above b that has degree a.

Definition: A degree for a well-ordered set S is a binary relation on S such that :

\begin{itemize}
	\item Every element \( c \in S \) has degree \( 0_S \) (the least element of S). \( 0_S \) only has degree \( 0_S \).
	\item For a limit a, c has degree a iff it has every degree less than a.
	\item For a successor a'=a+1, either of the following holds:
	\begin{itemize}
		\item An element has degree a' iff it is a limit of elements of degree a.
		\item There is a limit element d \(\le\) a such that for every c in S, c has degree a' iff it has degree a and either c \(\le\) d or c is a limit of elements of degree a (or both).
	\end{itemize}
\end{itemize}

Note: The third condition can be equivalently written as \( \forall a (C_{a+1} = lim(C_a) \vee \exists d \in lim(S) \cap (a+1) C_{a+1} = lim(C_a) \cup (C_a \cap (d+1))) \), where S is identified with an ordinal (so a+1 consists of ordinals \( \leq a), C_a \) is the set of elements that have degree a, and lim is limit points.

In other terms : Let \( \eta \) be an ordinal, and let \( 0_S \) and let Ld(a,b) be the statement that a is a limit of ordinals c such that \( (c,b) \in D \). Let D be the following binary relation over \( \eta \) :

\begin{itemize}
	\item \( \forall a<\eta:(a,0) \in D \)
	\item \( \forall a<\eta:a \neq 0 \Rightarrow (0,a) \notin D \)
	\item \( \forall b\in Lim \cup \eta:(a,b)\in D \Leftrightarrow \forall c<b:(a,c)\in D \)
	\item \( \forall b:(a,b)\in D \Leftrightarrow Ld(a,b+1)\forall b:(a,b)\in D \Leftrightarrow Ld(a,b+1) \)
	\item \( \forall b:\exists d\in Lim \cup  \eta :d<=b \Rightarrow \forall c:(c,a+1)\in D \Leftrightarrow (c<=d \vee Ld(c,b)) \)
\end{itemize}

Then \( C(a,b)=min \lbrace c:c\in  \eta  \wedge c>b \wedge (c,a)\in D \rbrace \).

\( C(a, b) = b+\omega^a \) iff \( C(a, b) \geq  a \).

\bigskip

Taranovsky’s notation is actually made up of many systems, called 1st system, 2nd system, 3rd system, and so on.

In the n-th system, we uses a binary function: C(\(\alpha\),\(\beta\)), and two constants: 0 and \(\Omega_n\).

Here’s the definition of standard form. First, 0 and \(\Omega_n\) are in standard form. Then C(\(\alpha\),\(\beta\)) is in standard form iff it fits all those shown below:

\(\alpha\) and \(\beta\) are in standard form

\(\beta\) = 0, or \(\beta\) = \(\Omega_n\), or \(\beta\) = C(\(\gamma\),\(\delta\)) with \(\alpha\) \(\le\) \(\gamma\)

\(\alpha\) is n-built from below from \(<\)C(\(\alpha\),\(\beta\))

But what’s "\(\le\)" and what’s "n-built from below from"? To answer this question, we need to define some more things.

First we need to define "n-built from below from" as follows.

a is 0-built from below by b iff a\(<\)b

a is k+1-built from below by b iff the standard representation of a does not use ordinals above a except in the scope of an ordinal k-built from below by b.

or in other words :

\(\alpha\) is 0-built from below from \(<\)\(\beta\) iff \(\alpha\) \(<\) \(\beta\).

\(\alpha\) is (k+1)-built from below from \(\beta\) iff for all subterm \(\gamma\) of \(\alpha\),
 \(\gamma\) \(\le\) \(\alpha\) or there is such a subterm \(\delta\) of \(\alpha\) that \(\gamma\) is subterm of \(\delta\) and \(\delta\) is k-built from below from \(\beta\).

The "subterm" in \(\alpha\) can be defined as follows.

In any part of expression of \(\alpha\), \(\eta\) is subterm of \(\eta\) itself.

In any part of expression of \(\alpha\), if \(\eta\) = C(\(\gamma\),\(\delta\)), and x is a subterm of \(\gamma\) or \(\delta\), then x is a subterm of \(\eta\).

\bigskip

For ordinals in the standard representation written in the postfix form, the comparison is done in the lexicographical order where \( 'C' < '0' < '\Omega_n' \): For example, \( C(C(0,0),0) < C(\Omega, 0) \) because \( 000CC < 0 \Omega C \). (This does not hold for non-standard representations of ordinals.)

\bigskip

Taranovsky's notation, then, is an infinite family of notations indexed by positive integer n defined individually as follows:

The language consists of constants "0" and "\(\Omega_n\)" and a binary function "C" written in reverse Polish notation.

Ordering is lexicographic with "C" \(<\) "0" \(<\) "\(\Omega_n\)".

The strings "0" and "\(\Omega_n\)" are in standard form.

The string "abC" is in standard form iff all the following are true:

"a" and "b" are in standard form.

If "a" is of the form "cdC", b\(\le\)d according to the aforementioned lexicographic ordering.

"b" is n-built from below by "abC".

For n=1, Taranovsky showed that the system reaches the Bachmann-Howard ordinal.


\bigskip

The fundamental sequences of Taranovsky’s notation can be easily defined.

Let \( L(\alpha) \) be the amount of C’s in standard representation of \( \alpha \), then \( \alpha [n]=max \lbrace \beta | \beta < \alpha  \wedge L(\beta) \leq L(\alpha)+n \rbrace \).

\end{comment}

Here is a summary of the system by Taranovsky (see https://cs.nyu.edu/pipermail/fom/2012-March/016349.html) :

\begin{verbatim}

I discovered a conjectured ordinal notation system that I conjecture 
reaches full second order arithmetic.  I implemented the system in a 
python module/program:
http://web.mit.edu/dmytro/www/other/OrdinalArithmetic.py
along with ordinal arithmetic operations (addition, multiplication, 
exponentiation, etc.) and other functions.  The ordinal arithmetic 
functionality is useful even if you are only interested in ordinals 
below epsilon_0.

The notation system is simple enough to be defined in full here.

Definition: An ordinal a is 0-built from below from b iff a<=b
a is n+1-built from below from b iff the standard representation of a 
does not use ordinals above a except in the scope of an ordinal n-built 
from below from b.

(Note: "in the scope of" means "as a subterm of".)

The nth (n is a positive integer) ordinal notation system is defined as 
follows.

Syntax: Two constants (0, W_n) and a binary function C.
Comparison: For ordinals in the standard representation written in the 
postfix form, the comparison is done in the lexicographical order where 
'C' < '0' < 'W_n': For example, C(C(0,0),0) < C(W_n, 0) because 0 0 0 C 
C < 0 W_n C.

Standard Form:
0, W_n are standard
"C(a, b)" is standard iff
1. "a" and "b" are standard,
2. b is 0 or W_n or "C(c, d)" with a<=c, and
3. a in n-built from below from b.

I conjecture that the strength of the nth ordinal notation system is 
between Pi^1_{n-1}-CA and Pi^1_n-CA_0, and thus the sum of the order 
types of these ordinal notation systems is the proof-theoretical ordinal 
of second order arithmetic.

The full notation system is obtained by combining these notation systems 
as follows:
Constants 0 and W_i (for every positive integer i), and a binary function C.
W_i = C(W_{i+1}, 0) and the standard form always uses W_i instead of 
C(W_{i+1}, 0).
To check for standard form and compare ordinals use W_i = C(W_{i+1}, 0) 
to convert each W to W_n for a single positive integer n (it does not 
matter which n) and then use the nth ordinal notation system.

To make C a total function for a and b in the notation system (this is 
not required for standard forms), let C(a, b) be the least ordinal (in 
the notation system) of degree >=a above b, where the degree of W_i is 
W_{i+1} and the degree of C(c,d) is c if "C(c,d)" is the standard form.  
A polynomial time computation of C(a, b) (that I believe is correct) is 
included in the program.

To complete ordinal analysis of second order arithmetic, one would need:
* A canonical assignment of notations to formulas that provably in 
second order arithmetic denote an ordinal, and such that for every two 
ordinals/formulas, comparison is provable in second order arithmetic.  
The idea is that the notation system captures not only provably 
recursive ordinals of second order arithmetic but all ordinals that have 
a provable canonical definition in second order arithmetic.  For 
example, W_1 is best assigned to the least admissible ordinal above 
omega. A partial assignment is in my paper.  (It is because of such 
assignment that I believe that the system reaches full second order 
arithmetic.)
* Proof that the system is well-founded and that it has the right 
strength, etc.  (If you do not fully understand the notation system, or 
if you think that it is not well-founded, let me know.)

Historical Note:  In 2005, I discovered the right general form of C, 
defined a notation system at the level of alpha-recursively inaccessible 
ordinals (FOM postings in August 2005), and had an idea for reaching 
second order arithmetic.  In January 2006 (or possibly late 2005), I 
defined the notation system with W_2 and in 2009 (June 29, 2009 FOM 
posting) implemented it is a computer program.  This year I defined the 
key concept -- n-built from below -- that allowed me to complete the 
full notation system.

Details about the ordinal notation system and its initial segments are 
in my paper:
http://web.mit.edu/dmytro/www/other/OrdinalNotation.htm

Sincerely,
Dmytro Taranovsky

\end{verbatim}

Here are some examples of representations of some ordinals : 

\begin{itemize}
\item \( 0 = 0 \)
\item \( 1 = 0+\omega^0 = C(0,0) \)
\item \( 2 = 1+\omega^0 = C(0,1) = C(0,C(0,0)) \)
\item \( \omega = 0+\omega^1 = C(1,0) = C(C(0,0),0) \)
\item \( \omega+1 = \omega+\omega^0 = C(0,\omega) = C(0,C(1,0)) \)
\item \( \omega \cdot 2 =\omega+\omega^1 = C(1,\omega) = C(1,C(1,0)) \)
\item \( \omega^2 = 0+\omega^2 = C(2,0) \)
\item \( \omega^\omega = 0+\omega^\omega = C(\omega,0) = C(C(1,0),0) \)
\item \( \omega^{\omega^\omega} = 0+\omega^{\omega^\omega} = C(\omega^\omega,0) = C(C(C(1,0),0),0) \)
\item \( \varepsilon_0 = \varphi(1,0) = \varphi'(0,1) = C(\Omega_1,0) \)
\item \( \varepsilon_1 = \varphi(1,1) = \varphi'(0,2) = C(W,C(W,0)) \) (note that the correspondence with \( \varphi' \) is simpler than with \( \varphi \))
\item \( \zeta_0 = \varphi(2,0) = \varphi'(1,1) = C(C(\Omega_1,\Omega_1),0) = C(\Omega_1 \cdot 2,0) \) with \( \Omega_1 \cdot 2 = C(\Omega_1,\Omega_1)
 \)
\item \( \zeta_1 = \varphi(2,1) = \varphi'(1,2) = C(\Omega_1 \cdot 2,C(\Omega_1 \cdot 2,0)) \)
\item \( \eta_0 = \varphi(3,0) = \varphi'(2,1) = C(\Omega_1 \cdot 3,0) \) with \( \Omega_1 \cdot 3 = C(\Omega_1,C(\Omega_1,\Omega)) \)
\item \( \Gamma_0 = \varphi(1,0,0) = \varphi'(1,0,1) = C(C(\Omega_1 \cdot 2,\Omega_1),0) = C({\Omega_1}^2,0) \) with \( {\Omega_1}^2 = C(\Omega_1 \cdot 2,\Omega_1) \)
\item \( \Gamma_1 = C({\Omega_1}^2,C({\Omega_1}^2,0)) \)
\item \( \Gamma_\omega = C({\Omega_1}^2+1,0) \)
\item Small Veblen ordinal \( = C({\Omega_1}^\omega,0) \)
\item Large Veblen ordinal \( = C({\Omega_1}^{\Omega_1},0) \)
\item Bachmann Howard ordinal \( = C(C(\Omega_2,\Omega_1),0) \)
\end{itemize}

\bigskip

Properties :

\begin{itemize}
\item \( C(\alpha,\beta) = \beta+\omega^\alpha \) if \( C(\alpha,\beta) \ge \alpha \)
\item \( C(0,\alpha) = \alpha+1 = suc(\alpha) \)
\item \( C(\alpha+1,\beta) = C(C(0,\alpha),\beta) = [C(\alpha,\bullet)]^\omega(\beta) = H [C(\alpha,\bullet)] \beta \) if \( C(C(0,\alpha),\beta) \) is in standard form
\item \( C(1,\alpha) = C(C(0,0),\alpha) = \alpha+\omega \)
\item \( C(lim\ f) \beta = lim [C(f(\bullet),\beta)] \)
\item \( C(Lim_1 f,0) = [C(f(\bullet),0)]^\omega(0) \)
\begin{comment}
\item \( C(Lim_1 f,\beta) = [C(f(\bullet),\beta)]^\omega(0) \) (not in all cases)
\end{comment}

\item if \( \alpha < \Omega_n, C(\Omega_n,\alpha) = sup \lbrace 0, C(0,\alpha), C(C(0,\alpha),\alpha), \ldots \rbrace \) 
\item if \( \alpha \ge \Omega_n \) and \( \beta < \Omega_n, C(C(\Omega_n,\alpha),\beta) = sup \lbrace 0, C(C(0,\alpha),\beta), C(C(C(C(0,\alpha),\beta),\alpha),\beta), \ldots \rbrace \)
\item if \( \alpha \ge \Omega_n, \beta \ge \Omega_n \) and \( \gamma < \Omega_n, C(C(C(\Omega_n,\alpha),\beta),\gamma) = sup \lbrace 0, C(C(C(0,\alpha),\beta),\gamma), C(C(C(C(C(C(0,\alpha),\beta),\gamma),\alpha),\beta),\gamma), \ldots \rbrace \)

\item if \( k>0, C(Lim_k f,\beta) = \) 
 \begin{itemize}
 \item \( Lim_k [C(f(\bullet),\beta)] \) if \( card(Lim_k f) \le card(\beta) \)
 \item \( [C(f(\bullet),\beta)]^\omega(0) \) if \( card(Lim_k f) > card(\beta) \)
 \end{itemize}
\end{itemize}

These properties give other possible fundamental sequences :

\begin{itemize}
\item if \( \alpha=0 \) then \( cof(\alpha) = 0 \)
\item if \( \alpha = \Omega_n \) then \( cof(\alpha) = \Omega_n \) and \( \alpha[\eta] = \eta \)
\item if \( \alpha = C(0,\beta) = \beta+1 \) then \( cof(\alpha) = 1 \) and \( \alpha[0] = \beta \)
\item if \( \alpha = C(\beta+1,\gamma) \) then \( cof(\alpha) = \omega \) and \( \alpha[0] = \gamma, \alpha[k+1] = C(\beta,\alpha[k]) \)
\item if \( \alpha = C(\beta,\gamma) \) and $\beta$ is a limit :
 \begin{itemize}
 \item if \( card(\beta) = \omega \) or \( card(\beta) \le card(\gamma), cof(\alpha) = cof(\beta) \) and \( \alpha[\eta] = C(\beta[\eta],\gamma) \)
 \item otherwise \( cof(\alpha) = \omega \) and \( \alpha[0] = 0, \alpha[k+1] = C(\beta[\alpha[k]], \gamma) \)
 \end{itemize}
\end{itemize} 

Examples :
\begin{itemize}

\item \( 1 = \omega^0 = C(0,0) \)

\item \( \omega = C(C(0,0),0) = [C(0,\bullet)]^\omega(0) = H [C(0,\bullet)] 0 = suc^\omega(0) = H suc\ 0 \)

\item \( \omega \cdot 2 = C(C(0,0),C(C(0,0),0) = [C(C(0,0),\bullet)]^\omega(0) = [C(0,\bullet)]^\omega(C(C(0,0),0)) = suc^\omega(\omega) = H suc (H suc\ 0) \)

\item \( \omega^2 = C(C(0,C(0,0)),0) = [C(C(0,0),\bullet)]^\omega(0) = [\bullet+\omega]^\omega(0) = H (H suc) 0 \)

\item \( \omega^\omega = C(C(C(0,0),0),0) = C([C(0,\bullet)]^\omega(0),0) = C(\omega,0) \)

\item \( C(\Omega,0) \) is the least \( \alpha \) such that \( \alpha = C(\alpha,0) = \omega^\alpha \), which is \( \varepsilon_0 \) : \( C(\Omega_1,0) = C(Lim_1 [\bullet],0) = [C(\bullet,0)]^\omega(0) = sup \lbrace 0, C(0,0) = 1 = \omega^0, C(C(0,0),0) = \omega = \omega^1, C(C(C(0,0),0),0) = \omega^\omega, \ldots \rbrace = \varepsilon_0 \)

\item \( C(\Omega_1,\varepsilon_0) = C(Lim_1 [\bullet],\varepsilon_0) = [C(\bullet,\varepsilon_0)]^\omega(0) = sup \lbrace \)
	\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
	\item \( 0 \)
	\item \( C(0,\varepsilon_0) = \varepsilon_0+1 \)
	\item \( C(\varepsilon_0+1,\varepsilon_0) = \varepsilon_0 + \omega^{\varepsilon_0+1} = \varepsilon_0 \cdot \omega \)
	\item \( C(\varepsilon_0 \cdot \omega,\varepsilon_0) = \varepsilon_0 + \omega^{\varepsilon_0 \cdot \omega} = {\varepsilon_0}^\omega \)
	\item \( C({\varepsilon_0}^\omega,\varepsilon_0) = {\varepsilon_0}^{{\varepsilon_0}^\omega} \)
	\item \( \ldots \rbrace = \varepsilon_1 \)
	\end{itemize}

\item More generally, \( C(\Omega,\beta) \) is the least \( \alpha \) such that \( \alpha = C(\alpha,\beta) \). This is the limit of :
\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( 0 \)
\item \( C(0,\beta) = \beta+1 \)
\item \( C(\beta+1,\beta) = \beta+\omega^{\beta+1} = \omega^{\beta+1} \)
\item \( C(\omega^{\beta+1},\beta) = \omega^{\omega^{\beta+1}} \)
\item \( \ldots \)
\end{itemize}
This limit is written \( Next\ \beta \) in Simmons notation, with \( Next = Fix [\omega^\bullet] \) and \( Fix f \zeta = f^\omega(\zeta) \).

So we have :
\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( C(\Omega,0) = Next\ 0 = \varepsilon_0 \)
\item \( C(\Omega,C(\Omega,0)) = C(\Omega,\varepsilon_0) = Next\ \varepsilon_0 = \varepsilon_1 \)
\item \( C(\Omega,C(\Omega,C(\Omega,0))) = C(\Omega,\varepsilon_1) = \varepsilon_2 \)
\item \( \ldots \)
\end{itemize}

\item \( C(\Omega_1+1,0) = [C(\Omega,\bullet)]^\omega(0) = sup \lbrace 0, C(\Omega,0) = \varepsilon_0, C(\Omega,C(\Omega,0)) = \varepsilon_1, \ldots \rbrace = \varepsilon_\omega \)

\item \( C(\Omega_1 \cdot 2,0) = C(Lim_1 [\Omega+\bullet],0) = [C(\Omega_1+\bullet,0)]^\omega(0) = sup \lbrace 0, C(\Omega_1,0) = \varepsilon_0, C(\Omega+\varepsilon_0,0) = \varepsilon_{\varepsilon_0}, \ldots \rbrace = \zeta_0 \)

\item Noting that $\Omega_1 \cdot 2 = C(\Omega_1,\Omega_1)$  and $\Omega_1 = Lim_1 I$ where I is the identity function, we can also get the following fundamental sequence of $\zeta_0$ : 

\( C(C(\Omega_1,\Omega_1),0) = C(C(Lim_1 I,\Omega_1),0) = C (Lim_1 [ C(\bullet,\Omega_1) ], 0) = [ C(C(\bullet,\Omega_1),0]^\omega(0) \)

\( = sup \lbrace 0, C(C(0,\Omega_1),0) = \varepsilon_\omega, C(C(C(C(0,\Omega_1),0),\Omega_1),0) = \varepsilon_{\varepsilon_\omega}, \ldots \rbrace = \zeta_0 \)

\item Case where \( C(Lim_1 f,\beta) \neq [C(f(\bullet),\beta)]^\omega(0) : C(\Omega_1,\Omega_1) = \Omega_1 \cdot 2 \), but \( [C(\bullet,\Omega_1)]^\omega(0) = \varepsilon_{\Omega_1+1} \)

\end{itemize}

\bigskip

We saw that \( C(\Omega,0) \) is the least \( \alpha \) such that \( \alpha = C(\alpha,0) = \omega^\alpha \), which is \( \varepsilon_0 \). 

\bigskip

We saw that if \( C(C(0,\alpha),\beta) \) is in standard form, then \( C(C(0,\alpha),\beta) = [C(\alpha,\bullet)]^\omega(\beta) \). But if it is not in standard form, this is not necessarily the case. Let us consider for example \( C(C(0,C(\Omega_1,0)),0) \) with \( \alpha=C(\Omega_1,0) \) and \( \beta=0 \). This is not a normal form. \( [C(C(\Omega_1,0),\bullet)]^\omega(0) \) is the limit of the sequence :
\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( 0 \)
\item \( C(C(\Omega_1,0),0) = \varphi(1,0) = \varepsilon_0 \)
\item \( C(C(\Omega_1,0),C(C(\Omega_1,0),0)) = \varphi(1,0) \cdot 2 \)
\item \( \ldots \)
\end{itemize}
The limit of this sequence is \( \varphi(1,0) \cdot \omega \), but \( C(C(0,C(\Omega_1,0)),0) = \varphi(1,0) \).

If we consider the standard form \( C(C(0,C(\Omega_1,0)),C(\Omega_1,0)) \) with \( \alpha=C(\Omega_1,0) \) and \( \beta=C(\Omega_1,0) \), it is equal to \( \varphi(1,0) \cdot \omega \) which is also equal to \( [C(C(\Omega_1,0),\bullet)]^\omega(C(\Omega_1,0)) \) which is the limit of the sequence :
\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( C(\Omega_1,0) = \varphi(1,0) \)
\item \( C(C(\Omega_1,0),C(\Omega_1,0)) = \varphi(1,0) \cdot 2 \)
\item \( C(C(\Omega_1,0),C(C(\Omega_1,0),C(\Omega_1,0))) = \varphi(1,0) \cdot 3 \)
\item \( \ldots \)
\end{itemize}

Here are the results obtained with Taranovsky's ordinal arithmetic program :

( http://web.mit.edu/dmytro/www/other/OrdinalArithmetic.py )

\begin{verbatim}

>>> C2(C2(W(1),0),0)
phi(1,0)
>>> C2(C2(W(1),0),C2(C2(W(1),0),0))
phi(1,0)*2
>>> C2(C2(0,C2(W(1),0)),0)
phi(1,0)
>>> C2(C2(0,C2(W(1),0)),C2(W(1),0))
phi(1,0)*w
>>> C2(W(1),0)
phi(1,0)
>>> C2(C2(W(1),0),C2(W(1),0))
phi(1,0)*2
>>> C2(C2(W(1),0),C2(C2(W(1),0),C2(W(1),0)))
phi(1,0)*3
>>> 

\end{verbatim}

Here is a Haskell program which converts an ordinal in Taranovsky ordinal notation into an ordinal represented in terms of zero, successor and limits :

\begin{verbatim}

module Main where

 ident x = x

 comp f g x = f (g x)

 data Ord 
  = Zero
  | Suc Ord
  | Lim Integer (Ord -> Ord)

 one = Suc Zero
 two = Suc one
 three = Suc two

 show_ord n Zero = "0"
 show_ord n (Suc a) = "S " ++ show_ord (n+2) a
 show_ord n (Lim k f) = "L" ++ show k ++ " " ++ show_ord (n+3) (f Zero) ++ "\n" ++ replicate (n+3) ' ' ++ show_ord (n+3) (f one) ++ "\n" ++ replicate (n+3) ' ' ++ show_ord (n+3) (f two) -- ++ "\n" ++ replicate (n+3) ' ' ++ show_ord (n+3) (f three)

 instance Show Ord where
  show a = show_ord 0 a

  -- Definition of ordinals in Taranovsky Ordinal Notation 
 data Ton = O | W | C Ton Ton
  deriving (Eq, Show)

 ord_of_int 0 = Zero
 ord_of_int (n+1) = Suc (ord_of_int n)

 -- power of a function : fpower0 a f = f^a
 fpower0 Zero f = ident
 fpower0 (Suc a) f = comp f (fpower0 a f)
 fpower0 (Lim n g) f = \x -> Lim n (\y -> fpower0 (g y) f x)

 level Zero = 0
 level (Suc a) = level a
 level (Lim k f) = k

 c n Zero a = Suc a
 c n (Suc a) b = Lim 0 (\i -> fpower0 i (c n a) b)
 c n (Lim k f) b = if level (Lim k f) <= level b
                   then Lim k (\x -> c n (f x) b)
                   else Lim 0 (\i -> fpower0 i (\x -> c n (f x) b) Zero)

 ord_of_ton n O = Zero
 ord_of_ton n W = Lim n ident
 ord_of_ton n (C a b) = c n (ord_of_ton n a) (ord_of_ton n b)

\end{verbatim}


\subsection{$\Omega$ as limit}

\begin{comment}
Another possibility is to consider that $\Omega_1$ represents not the least uncountable ordinal but the limit of the notation, and to use the previously defined fundamental sequences.
\end{comment}

We have previously seen a definition of fundamental sequences which works for countable ordinals :

\[ \alpha[n] = max \lbrace \beta | \beta < \alpha \land L(\beta) \le n \rbrace \]

and a Haskell function which, given an ordinal, displays the corresponding fundamental sequence.

This formula is valid for countable ordinals. If we apply it to uncountable ordinals like $\Omega_1$ (considered here as the least uncountable ordinal $\omega_1$ ), of course, we don't obtain a fundamental sequence of $\Omega_1$ : this is impossible because $\Omega_1$, which is uncountable, cannot have a countable fundamental sequence. We have seen that we get a fundamental sequence whose limit in the limit of the system, which is the least ordinal that cannot be represented in the system.

But we can define another system in which we consider that $\Omega_1$, instead of representing the least uncountable ordinal, represents the limit $\lambda$ of the initial system. This system has a higher limit $\lambda' > \lambda$ because $\lambda$ can be represented in this new system by $\Omega_1$.

In the system $S_2$, we can then apply the formula to \( \Omega = \Omega_2 \) interpreting the terms of the resulting fundamental sequence in the new system. Then we can define another system in which we consider that $\Omega_2$ represents the limit of this fundamental sequence, and so on.

\subsubsection{Example : System $S_0$}

The limit of system $S_0$ is : 

\[ \lambda_0 = sup \lbrace 0, C(0,0) = 1, C(C(0,0),0) = \omega, C(C(C(0,0),0),0) = \omega^\omega, C(C(C(C(0,0),0),0),0) = \omega^{\omega^\omega}, \ldots \rbrace = \varepsilon_0 \]

In system $S_0'$, $\Omega$ represents $\varepsilon_0$. The limit of this system is :

\[ \lambda_0' = sup \lbrace \Omega = \varepsilon_0, C(\Omega,\Omega) = \varepsilon_0 \cdot 2, C(C(\Omega,\Omega),\Omega) = {\varepsilon_0}^2, C(C(C(\Omega,\Omega),\Omega),\Omega) = {\varepsilon_0}^{\varepsilon_0}, C(C(C(C(\Omega,\Omega),\Omega),\Omega,\Omega) = {\varepsilon_0}^{{\varepsilon_0}^{\varepsilon_0}}, \ldots \rbrace = \varepsilon_1 \]

\subsubsection{Example : System $S_1$}

The limit of system $S_1$ is (where $\Omega = \Omega_1$) :

\[ \lambda_1 = sup \lbrace C(\Omega,0) = \varepsilon_0, C(C(\Omega,\Omega),0) = \zeta_0, C(C(C(\Omega,\Omega),\Omega),0) = \Gamma_0, C(C(C(C(\Omega,\Omega),\Omega),\Omega),0) = LVO, \ldots \rbrace = BHO \]

In system $S_1'$, $\Omega$ represents BHO. The limit of this system is :

\[ \lambda_1' = sup \lbrace \Omega = BHO, C(\Omega,\Omega) = BHO \cdot 2, C(C(\Omega,\Omega),\Omega) = BHO^2, C(C(C(\Omega,\Omega),\Omega),\Omega) = BHO^{BHO},  \ldots \rbrace \]

\subsubsection{Example : System $S_2$}

The limit of system $S_2$ is :

\[ \lambda_2 = sup \lbrace C(C(\Omega_2,0),0) = C(\Omega_1,0) = \varepsilon_0, C(C(C(\Omega_2,\Omega_2),0),0) = | \Pi_1^1 - TR_0 | _{con}, C(C(C(C(\Omega_2,\Omega_2),\Omega_2),0),0), \ldots \rbrace \]

In system $S_2'$, $\Omega_1 = C(\Omega_2,0)$ represents $\lambda_2$.


\subsubsection{Conversion into "classical" representation with zero, successor and limit}

Here is a Haskell program implementing the conversion from this variant of Taranovsky ordinal notation into "classical" representation with zero, successor and limit :

\begin{verbatim}

module Main where

 import Data.Typeable

 -- Definition of ordinals in Taranovsky Ordinal Notation 
 data Ton = O | W | C Ton Ton
  deriving (Eq, Show)

 -- Item of postfix representation
 data PostfixItem = CP | OP | WP
  deriving (Eq, Show, Ord)

 -- Convert to postscript representation
 postfix O = [ OP ]
 postfix W = [ WP ]
 postfix (C a b) = postfix b ++ postfix a ++ [ CP ]

 -- short representation of postfix form
 string_postfix [] = ""
 string_postfix (CP:l) = "C" ++ string_postfix l
 string_postfix (OP:l) = "O" ++ string_postfix l
 string_postfix (WP:l) = "W" ++ string_postfix l

 -- Compare ordinals by comparing postfix representations
 instance Ord Ton where
  compare a b = compare (postfix a) (postfix b)

 -- List of subterms of an ordinal
 subterms O = [ O ]
 subterms W = [ W ]
 subterms (C a b) = [ C a b ] ++ subterms a ++ subterms b

 -- nbfbf n a b : a is n-built from below from b 
 nbfbf 0 a b = a <= b                    -- a is O-BFB from b if and only if a<b
 nbfbf n1 a b = let n = n1-1 in          -- a is (n+1)-BFB from b if and only if:
  flip all (subterms a) (\c ->           --  for all subterm c of a,
   c <= a ||                             --   either c <= a
   flip any (subterms a) (\d ->          --   or there exists subterms d of a such that
    elem c (subterms d) && nbfbf n d b)) --    c is a subterm of d and d is n-BFB from b

 -- standard n a : a is in standard form in n-th system
 standard _ O = True    -- 0 is standard
 standard _ W = True    -- W is standard
 standard n (C a b) =   -- C(a,b) is standard if and only if :
  standard n a &&       --  a is standard
  standard n b &&       --  b is standard
  (case b of            --  b is 0 or W or C(c,d) with a <= c
    O -> True
    W -> True
    C c d -> a <= c) &&
  nbfbf n a (C a b)     -- a is n-BFB from C(a,b)

 -- list_ton_l l = list of ordinals with l C's in their representation
 list_ton_l 0 = [ O, W ]
 list_ton_l k1 = let k = k1-1 in 
  concat (flip map [0..k] (\l ->
   concat (flip map (list_ton_l l) (\c -> 
    concat (flip map (list_ton_l (k-l)) (\d -> 
     [ C c d ] )) )) ))

 -- fs n a k = k-th element of fundamental sequence of a in n-th system
 -- a[k] = max { b | L(b) = k, b is standard and b < a }
 fs n a k = foldr (\x -> \y -> if (x <= y) then y else x) O
             (flip filter (list_ton_l k) (\b -> (standard n b) && (b < a)))

 data On = Zero | Suc On | Lim (Integer -> On)

 on_of_ton n O = Zero
 on_of_ton n (C O a) = Suc (on_of_ton n a)
 on_of_ton n a = Lim (\i -> on_of_ton n (fs n a i))

\end{verbatim}

\subsection{The power of the notation}

If Taranovsky's notation is correct, where could its power come from ?

\bigskip

Let us compare Taranovsky's C with a "classical" ordinal collapsing function like Buchholz \( \psi_0 \).

For sufficiently small values of \( \alpha \), we have \( \psi_0(\alpha) = \omega^\alpha \) and \( C(\alpha,\beta) = \beta+\omega^\alpha \), so \( \psi_0(\alpha) = C(\alpha,0) \), but after \( \Omega \) the results are different. Here is a comparative table :

\bigskip

\begin{tabular}{|c|c|c|} \hline
\( \alpha		\) & \( \psi_0(\alpha)	\) & \( C(\alpha,0)		\) \\ \hline
\( 0			\) & \( 1		\) & \( 1			\) \\ \hline
\( 1 			\) & \( \omega		\) & \( \omega			\) \\ \hline
\( \omega		\) & \( \omega^\omega	\) & \( \omega^\omega		\) \\ \hline
\( \varepsilon_0	\) & \( \varepsilon_0	\) & \( \varepsilon_0		\) \\ \hline
\( \varepsilon_0+1	\) & \( \varepsilon_0	\) & \( \varepsilon_0		\) \\ \hline
\( \Omega_1		\) & \( \varepsilon_0	\) & \( \varepsilon_0 		\) \\ \hline
\( \Omega_1+1		\) & \( \varepsilon_0 \cdot \omega = \omega^{\varepsilon_0+1} 
						\) & \( \varepsilon_\omega 	\) \\ \hline
\( \Omega_1 \cdot 2 	\) & \( \varepsilon_1	\) & \( \zeta_0			\) \\ \hline
\( {\Omega_1}^2 		\) & \( \zeta_0		\) & \( \Gamma_0		\) \\ \hline
\end{tabular}

\bigskip

We see that \( C(\alpha,0) \) grows faster than \( \psi_0(\alpha) \).

We generally have \( \psi_0(\alpha+1) = \psi_0(\alpha) \cdot \omega \), but \( C(\alpha+1,0) = [C(\alpha,\bullet)]^\omega(0) \), which grows faster.

This can be compared with F function previously seen : 

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item \( F_n(0,b) = b+1 \)
\item \( F_n(a+1,b) = [F_n(a,\bullet)]^b(b) \)
\item \( (F_n(a,b))[c] = F_n(a[c],b) \) if a is a function from \( \Omega_k \) to \( \Omega_{n+1} \) with \( k < n \)
\item \( (F_n(a,b)) = F_n(a[b],b) \) if a is a function from \( \Omega_n \) to \( \Omega_{n+1} \)
\end{itemize}


\bigskip

The power of Taranovsky's notation could also come from the notion of "n-built from below", and the "n-shiftedness" of functions. Concerning this, Boris Dimitrov writed in 

https://mathoverflow.net/questions/118854/does-taranovskys-system-of-ordinal-notations-make-sense/118888 : 

[ with my comments ]

\bigskip

"The reason why "n-build from below" is so important is because it's a crucial part of defining which ordinals are standard and which are not. The thing which makes Taranovsky's notation so unique is that it's not defined simply by recursion. Instead, it gives you rules that tell you the universal set of all ordinals standard in the notation and all strings valid in it, and from there you have to use the binary function C as a hierarchy that connects them. In order to answer why it's so strong, first we need to ask what makes a notation strong in general. For ordinal notations, one is cosidered strong if it can express really large ordinals, but for recursive notations, they should be able to express everything below a certain ordinal, especially for notations like Taranovsky's. So it's fare to say that a recursive ordinal notation is strong if it can express "a lot" of ordinals. (whatever "a lot" means for infinities) In the case of Taranovsky's notation, which can express every ordinal below it's limit, how many terms are valid in it depends soley on the requirements for and ordinal to be valid (standard) and for that we need the ordinal C(\(\alpha\),\(\beta\)) to be standard and one of the 3 requirements for that is that \(\beta\) has to be n-built from below by C(\(\alpha\),\(\beta\)).

\bigskip

For large ordinals, however n-bult from below starts to behave irregularly, and we get this weird property of "n-shiftedness" of functions. Typically, each ordinal that has a standard representation in a particular n+1-system but not in the n-system is a result of an n-shifted function. We say that a function is n-shifted if it's supremums are within another "layer" or nesting in the function. I know this definition is not formal, but formalizing it is aqtually quite difficult. For example, the least fixed point of \( \alpha \mapsto C(\Omega_1 \cdot 2 + C(\Omega_1+\alpha,0),0) \) is \( C(\Omega_1 \cdot 2 + C(\Omega_1 \cdot 2,0),0) \) [ obtained by replacing \( \alpha \) by \( \Omega_1 \) ], so this expression is not shifted. Meanwhile, the least fixed point of \( \alpha \mapsto C(\Omega_2 \cdot 2 + C(\Omega_2+\alpha,0),0) \) is \( C(\Omega_2 \cdot 2 + C(\Omega_2 + C(\Omega_2 \cdot 2,0),0),0) \) [ which is 1-shifted ] and the least fixed point of \( \alpha \mapsto C(\Omega_3 \cdot 2 + C(\Omega_3+\alpha,0),0) \) is \( C(\Omega_3 \cdot 2 + C(\Omega_3 + C(\Omega_3 + C(\Omega_3 \cdot 2,0),0),0),0) \) [ which is 2-shifted ]. Generally, we say that a function is 0-shifted if it has no shiftedness properties and that a function is n+1-shifted if it has a 1-shiftedness property of reflection above n-shifted functions within the same system. The n=1 system is 0-shifted, and that's why it's similar to many other Ordinal Collapsing Functions, the n=2 system is 1-shifted and that's why it's stronger than pretty much everything else. Generally any n+1 system of Taranovsky's C is n-shifted. This may seem like a small thing, but it totally changes the set of all ordinals standard in that notation, which we mentioned is precisely it's strength. Most other notations are 0 shifted, so even if they seem very strong, they likely fall within the range of Taranovsky's second system."

\bigskip

\begin{comment}


\( C(0,\alpha) = \alpha+1 \)

\( C(\beta+1,\alpha) = H [C(\beta,\bullet)] \alpha \)

\( C(1,\alpha) = H [C(0,\bullet)] \alpha = H suc \alpha = \alpha+\omega \)

\( C(\Omega,\alpha) = C(1,0,a) = H [C(\bullet, \alpha)] 0 \)

\( C(0,b,a) = C(b,a) \)

\( C(\gamma+1,\beta,\alpha) = H [C(\gamma,\bullet,\alpha)] \beta \)

\( C(\Omega,\alpha) = C(1,0,\alpha) = H [C(0,*,\alpha)] 0 = H [C(\bullet,\alpha)] 0 \)

\( \varphi(\alpha) = \omega^\alpha \)

\( \varphi(\beta+1,0) = H [\varphi(\beta,\bullet)] 0 \)

\( \varphi(\beta+1,\gamma+1) = H [\varphi(\beta,\bullet)] (\varphi(\beta+1,\gamma)+1) \)

\bigskip

\( C(1,0,0,0) = \varphi(1,0,0) = \Gamma_0 = [1] [0] Next\ 0 = R3 R2 R1 H suc\ 0 = C(\Omega^2,0) = H [C(\bullet,0,0)] 0 \)

C(0,0,0) = C(0,0) = 1

\( C(\alpha+1,0,0) = H [C(\alpha,0,0)] 0 \)

\( C(1,0,0) = C(\Omega,0) = \varepsilon_0 = \varphi(1,0) \)

\( C(2,0,0) = C(\Omega \cdot 2,0) = \zeta_0 = \varphi(2,0) \)

\( C(\alpha,0,0) = \varphi(\alpha,0) \)

\( C(1,0,0,0) = H [C(\bullet,0,0)] 0 = H [phi(\bullet,0)] 0 = \Gamma_0 \)

\bigskip

\( C(1,1,0) = H [C(1,0,\bullet)] 0 \)

c=0, b suc:

\( \varphi(s,b,z,c)[0] = 0 \)

\( \varphi(s,b,z,c)[n+1] = phi(s,b-a,phi(s,b,z,c)[n],z) \)

\( \varphi(s,b+1,0,...0,0) = H [\varphi(s,b,\bullet,0,...,0)] 0 \)

\( \varphi(1,1,0) = H [phi(1,0,\bullet)] 0 \)

\( C(1,1,\alpha) = H [C(1,0,\bullet)] \alpha \)

c and b suc:

\( \varphi(s,b,z,c)[0] = \varphi(s,b,z,c-1)+1 \)

\(varphi(s,b,z,c)[n+1] = \varphi(s,b-1,\varphi(s,b,z,c)[n],z) \)

\( \varphi(s,b+1,0,...,0,c+1) = H [phi(s,b,\bullet,0,...,0)] (phi(s,b+1,0,...0,c)+1) \)

\( phi(1,1,1) = H [phi(1,0,\bullet)] 1 \)

\bigskip

\begin{verbatim}

phi						C
phi(c+1,b+1) = H [phi(c,*)] (phi(c+1,b)+1)	C(c+1,b+1,0) = H [C(c,*,0)] (b+1)
phi(1,1) = H [phi(0,*)] (phi(1,0)+1)		C(W+1,0) = C(1,1,0) = H [C(W,*)] 0 = H [C(1,0,*)] 0
 = H [phi(0,*) (phi(1,0)+1)			 = lim 0, C(1,0,0) = C(W,0) = e\_0, C(1,0,C(1,0,0)) = e1,... 
 = H [w^*] (e\_0+1)				 = e\_w
 = w^...^w^(e\_0+1) = e\_1
						C(1,0,e\_0) = C(W,e\_0) = e\_1 = H [C(*,e\_0)] 0 
						 = lim 0, C(0,e\_0) = e\_0+1, C(E\_0+1,e\_0) = w^(e\_0+1), C(w^(e\_0+1),e\_0) = w^w^(e\_0+1), ... = e\_1

\end{verbatim}

\( \varphi^-(\alpha) = \alpha+1 = \varphi^-(\alpha,0) \)

\( \varphi^-(\beta+1,0) = H [\varphi^-(\beta,\bullet)] 0 \)

\( \varphi^-(\beta+1,\gamma+1) = H [\varphi^-(\beta,\bullet)] (\varphi^-(\beta+1,\gamma)+1) \)

\bigskip

\( \varphi^-(0,0) = 1 ; C(0,0) = 1 \)

\( \varphi^-(0,\alpha) = \alpha+1 ; C(0,\alpha) = \alpha+1 \)

\( \varphi^-(1,0) = H [\varphi^-(0,\bullet)] 0 = H suc 0 = \omega ; C(1,0) = \omega \)

\( \varphi^-(1,1) = H suc (\varphi^-(1,0)+1) = H suc (\omega+1) = \omega+1+\omega = \omega \cdot 2 \) 

\( \varphi^-(1,2) = H suc (\omega \cdot 2+1) = \omega \cdot 3 \)

\( \varphi^-(1,\alpha) = \omega \cdot(1+\alpha) \)

\( \varphi^-(2,0) = H [\varphi^-(1,\bullet)] 0 = lim 0, \varphi^-(1,0) = \omega \cdot  \varphi^-(\omega,0) = \omega \cdot(1+\omega) = \omega^2, \varphi^-(\omega \cdot 2,0) = \omega \cdot (1+\omega^2) = \omega^3, \ldots = \omega^\omega \) 

\( \varphi^-(2,1) = H [\varphi^-(1,\bullet)] (\omega^\omega+1) \)

\( \varphi^-(3,0) = \omega^\omega \)

\( \varphi^-(\alpha,0) = \omega \uparrow \uparrow \alpha \)

\( \varphi^-(\omega,0) = \varepsilon_0 \)

\( \varphi^-(1,0,0) = H [\varphi^-(\bullet,0)] 0 \)

\bigskip

\( BHO = C(C(\Omega_2,\Omega_1),0) \)

\( C_1(\Omega_2.2) = C(\Omega_2,C(\Omega_2,0)) \)

\bigskip

comparison

\( \varphi(\beta,\alpha) ; C(\beta,\alpha,0) ; \varphi^-(\beta,\alpha,0) \)

\( \varphi(0,a) = \omega^a ; C(0,a,0) = \omega^a ; \varphi^-(0,\alpha,0) = \omega \uparrow \uparrow \alpha \) 

\( \varphi(1,0) = \varepsilon_0 ; C(1,0,0) = C(\Omega,0) = \varepsilon_0 \)

\( \varphi(1,1) = \varepsilon_1 = H [phi(0,\bullet)]  (\varepsilon_0+1) = \omega^{\vdots^{\omega^{\varepsilon_0+1}}} = \varepsilon_1 \) 


\end{comment}

\subsection{Analysis of Taranovsky's Ordinal Notation with "standard OCFs"}

From https://googology.wikia.org/wiki/User\_blog:Boboris02/Analysis\_of\_Taranovsky's\_Ordinal\_Notation\_with\_"standard\_OCFs." 

\bigskip

The actual definition of the notation is quite complicated,in my opinion. So I will try to break it down and simplify it.

Let's denote a binary relation of "\(\alpha\) is \(n\)-built from below by \(\beta\)" and a unary relation of "standard form" to ordinals.

\(\alpha\) is 0-built from below by \(\beta\) if \(\alpha<\beta\).

\(\alpha\) is (n+1)-built from below by \(\beta\) iff the standard representation of \(\beta\) does not use ordinals above \(\alpha\) unless it's an ordinal \(\gamma\) that is n-built from below by \(\beta\).

But what is standard representation?

Ordinals \(0,\Omega_n\) for \(0<n<\omega\) are axiomatically standard.

Ordinal \(C(\alpha,\beta)\) is in standard form iff:

\begin{itemize}
\item Both \(\alpha\) and \(\beta\) are in standard form.
\item \(\beta\) is in the form \(C(\gamma,\delta)\) where \(\alpha\leq\gamma\).
\item \(\alpha\) is n-built from below by \(C(\alpha,\beta)\)
\end{itemize}

A "standard representation" of an ordinal is in the form \(C(\alpha,\beta)\) such that all of the ordinals used are \(0\) and \(\Omega_n\) respectively for an expression within the n-system.

But what is an n-system?

The description of standart form above describes an infinite collection of functions,the concatenation of which is all of Taranovsky's C function.

An ordinal is in the scope of the n-system if it's representable in the form \(C(\Omega^{\alpha}_n \beta + \gamma ,\delta)\).

Every term within an n-system is valid if it has a standard representation within that said system.

With all of this said,let \(L(\alpha)\) be equal to the amount of \(C\)s in the standard representation of \(\alpha\) and let \(\alpha [n]\) denote the \(n\)th term of the fundamental sequence of \(\alpha\).

Then \(\alpha[n] = max\{\beta|\beta<\alpha\land L(\beta)\leq L(\alpha) + n\}\).

(I've removed the trinary lexicographic \(\{C,0,\Omega_n\}\) code because I don't feel like it's necessary here.)


\subsubsection{Comparison of system n=1}

\(C(0,\alpha)\) is simply the successor of \(\alpha\).

\(C(0,0)=1\)

\(C(0,C(0,0))=2\)

\(C(0,C(0,C(0,0)))=3\)

\(C(1,0)=\omega\)

\(C(0,C(1,0))=\omega + 1\)

\(C(0,C(0,C(1,0)))=\omega + 2\)

\(C(1,C(1,0))=\omega 2\)

\(C(0,C(1,C(1,0)))=\omega 2 +1\)

\(C(1,C(1,C(1,0)))=\omega 3\)

\(C(2,0)=\omega^2\)

\(C(0,C(2,0))=\omega^2 +1\)

\(C(0,C(0,C(2,0)))=\omega^2 +2\)

\(C(1,C(2,0))=\omega^2 +\omega\)

\(C(2,C(2,0))=\omega^2 2\)

\(C(2,C(2,C(2,0)))=\omega^2 3\)

\(C(3,0)=\omega^3\)

Generally, \(\forall\alpha ,\beta < \Omega_1:C(\alpha,\beta) = \beta+\omega^\alpha\).

\(C(C(1,0),0) = C(\omega,0)=\omega^\omega\)

\(C(C(0,C(1,0)),0)=C(\omega +1,0) = \omega^{\omega+1}\)

\(C(C(1,C(1,0)),0)=\omega^{\omega 2}\)

\(C(C(2,0),0)=\omega^{\omega^2}\)

\(C(C(C(C(0,0),0),0),0)=C(C(C(1,0),0),0)=C(C(\omega ,0),0)=\omega^{\omega^\omega}\)

\(C(C(C(C(C(0,0),0),0),0),0)=\omega^{\omega^{\omega^\omega}}\)

\(C(\Omega ,0)=\varepsilon_0\)

\(C(C(\Omega ,0),C(\Omega ,0))=\varepsilon_0 2\)

\(C(C(\Omega ,0),C(C(\Omega ,0),C(\Omega ,0)))=\varepsilon_0 3\)

\(C(C(\Omega ,0)+1,C(\Omega ,0))=\varepsilon_0 \omega\)

\(C(C(\Omega ,0)+C(1,0),C(\Omega ,0))=\varepsilon_0 \omega^\omega\)

\(C(C(C(\Omega ,0),C(\Omega ,0)),C(\Omega ,0))=C(C(\Omega ,0)2,C(\Omega ,0)) = \varepsilon^{2}_0\)

\(C(C(C(\Omega ,0)+1,C(\Omega ,0)),C(\Omega ,0))=\varepsilon^{\omega}_0\)

\(C(C(C(C(\Omega ,0),C(\Omega ,0)),C(\Omega ,0)),C(\Omega ,0)) = C(C(C(\Omega ,0)2,C(\Omega ,0)),C(\Omega ,0))=\varepsilon^{\varepsilon_0}_0\)

\(C(C(C(C(C(\Omega ,0),C(\Omega ,0)),C(\Omega ,0)),C(\Omega ,0)),C(\Omega ,0)) = \varepsilon^{\varepsilon^{\varepsilon_0}_0}_0\)

\(C(\Omega ,C(\Omega ,0))=\varepsilon_1\)

\(C(\Omega ,C(\Omega ,C(\Omega ,0)))=\varepsilon_2\)

\(C(\Omega +1,0)=\varepsilon_\omega\)

\(C(\Omega +2,0)=\varepsilon_{\omega^2}\)

\(C(\Omega +C(1,0),0)=\varepsilon_{\omega^\omega}\)

\(C(\Omega +C(\Omega ,0),0)=\varepsilon_{\varepsilon_0}\)

\(C(\Omega +C(\Omega +C(\Omega ,0),0),0)=\varepsilon_{\varepsilon_{\varepsilon_0}}\)

\(C(\Omega 2,0)=\zeta_0\)

Generally,from \(C(\Omega ,0)\) on,the n=1 system is almost the same as the \(\vartheta()\) function and somewhat to \(\psi()\) function.

\(C(\Omega\omega ,0)=\varphi(\omega,0)\)

\(C(\Omega^2,0)=\Gamma_0\)

\(C(\Omega^\omega,0)=\psi(\Omega^{\Omega^\omega})\)

\(C(\Omega^\Omega,0)=\psi(\Omega^{\Omega^\Omega})\)

\(C(\Omega^{\Omega^\Omega},0)=\psi(\Omega^{\Omega^{\Omega^\Omega}})\)

So the limit of the n=1 system is the Bacchman-Howard ordinal.


\subsubsection{Up to \(\psi(\psi_{I}(0))\)}

\(C(C(\Omega_2 ,\Omega),0)=\psi(\varepsilon_{\Omega +1})\)

\(C(\Omega ,C(C(\Omega_2 ,\Omega),0))=\psi(\varepsilon_{\Omega +1}+1)\)

\(C(\Omega 2,C(C(\Omega_2 ,\Omega),0))=\psi(\varepsilon_{\Omega +1}+\Omega)\)

\(C(C(\Omega_2 ,\Omega),C(C(\Omega_2 ,\Omega),0))=\psi(\varepsilon_{\Omega +1}2)\)

\(C(C(\Omega_2 ,\Omega)+1,0)=\psi(\varepsilon_{\Omega +1}\omega)\)

\(C(C(\Omega_2 ,\Omega)+\Omega,0)=\psi(\varepsilon_{\Omega +1}\Omega)\)

\(C(C(\Omega_2 ,\Omega)+\Omega^\Omega,0)=\psi(\varepsilon_{\Omega +1}\Omega^\Omega)\)

\(C(C(\Omega_2 ,\Omega)+\Omega^{\Omega^\Omega},0) = \psi(\varepsilon_{\Omega +1}\Omega^{\Omega^\Omega})\)

\(C(C(\Omega_2 ,\Omega)+C(C(\Omega_2 ,\Omega),\Omega),0)=\psi(\varepsilon^{2}_{\Omega +1})\)

\(C(C(\Omega_2 ,\Omega)+C(C(\Omega_2 ,\Omega),\Omega)2,0)=\psi(\varepsilon^{3}_{\Omega +1})\)

\(C(C(\Omega_2 ,\Omega)+C(C(\Omega_2 ,\Omega),\Omega)^2,0)=\psi(\varepsilon^{\varepsilon_{\Omega +1}}_{\Omega +1})\)

\(C(C(\Omega_2 ,\Omega)+C(C(C(C(C(\Omega_2 ,\Omega),\Omega),C(C(\Omega_2 ,\Omega),\Omega)),C(C(\Omega_2 ,\Omega),\Omega))\\,C(C(\Omega_2 ,\Omega),\Omega)),0) = C(C(\Omega_2,\Omega)+C(C(\Omega_2 ,\Omega),\Omega)^{C(C(\Omega_2 ,\Omega),\Omega)},0) \\= \psi(\varepsilon^{\varepsilon^{\varepsilon_{\Omega +1}}_{\Omega +1}}_{\Omega +1})\)

\(C(C(\Omega_2,\Omega)+C(C(\Omega_2,\Omega),C(C(\Omega_2,\Omega),\Omega)),0)=\psi(\varepsilon_{\Omega +2})\)

\(C(C(\Omega_2 ,\Omega)+C(C(\Omega_2 ,\Omega)+1,\Omega),0)=\psi(\varepsilon_{\Omega +\omega})\)

\(C(C(\Omega_2 ,\Omega)+C(C(\Omega_2 ,\Omega)+\Omega ,\Omega),0)=\psi(\varepsilon_{\Omega 2})\)

\(C(C(\Omega_2 ,\Omega)+C(C(\Omega_2 ,\Omega)+C(C(\Omega_2 ,\Omega),\Omega),\Omega),0) = \psi(\varepsilon_{\varepsilon_{\Omega +1}})\)

\(C(C(C(\Omega_2 ,\Omega),C(\Omega_2 ,\Omega)),0)=C(C(\Omega_2 ,\Omega)2,0)=\psi(\psi_1(\Omega_2))\)

From here on it's a similar pattern:

\(C(\Omega_2 ,\Omega)\) corresponds to \(\Omega_2\)

\(C(C(\Omega_2,\Omega),\Omega)\) corresponds to \(\varepsilon_{\Omega_2 +1}\)

\(C(\Omega_2,C(\Omega_2,\Omega))\) corresponds to \(\Omega_3\)

\(C(\Omega_2,C(\Omega_2,C(\Omega_2 ,\Omega)))\) corresponds to \(\Omega_4\)

\(C(C(\Omega_2 +1,0),0)=\psi(\Omega_\omega)\)

\(C(C(\Omega_2 +2,0),0)=\psi(\Omega_{\omega^2})\)

\(C(C(\Omega_2 +\Omega,0),0)=\psi(\Omega_\Omega)\)

\(C(C(\Omega_2+C(\Omega_2+\Omega ,0),0),0)=\psi(\Omega_{\Omega_\Omega})\)

\(C(C(\Omega_2 2,0),0)=\psi(\psi_I(0))\)


\subsubsection{Up to \(\psi(\psi_I(I))\)}

Let \(a=C(\Omega_2 2,0)\) and \(b=C(\Omega_2,a)\).

\(C(a,0)=\psi(\psi_I(0))\)

\(C(b,0)=\psi(\varepsilon_{\psi_I(0)+1})\)

\(C(\Omega,C(b,0))=\psi(\varepsilon_{\psi_I(0)+1}+1)\)

\(C(a,C(b,0))=\psi(\varepsilon_{\psi_I(0)+1}+\psi_I(0))\)

\(C(b,C(b,0))=\psi(\varepsilon_{\psi_I(0)+1}2)\)

\(C(b+1,0)=\psi(\varepsilon_{\psi_I(0)+1}\omega)\)

\(C(b+a,0)=\psi(\varepsilon_{\psi_I(0)+1}\psi_I(0))\)

\(C(b+C(b,a),0)=\psi(\varepsilon^{2}_{\psi_I(0)+1})\)

\(C(b+C(C(b,a),C(b,a)),0)=\psi(\varepsilon^{3}_{\psi_I(0)+1})\)

\(C(b+C(C(b,a)+1,C(b,a),0)=\psi(\varepsilon^{\omega}_{\psi_I(0)+1})\)

\(C(b+C(C(C(b,a),C(b,a)),C(b,a)),0)=\psi(\varepsilon^{\varepsilon_{\psi_I(0)+1}}_{\psi_I(0)+1})\)

\(C(b+C(C(C(C(b,a),C(b,a)),C(b,a)),C(b,a)),0)=\psi(\varepsilon^{\varepsilon^{\varepsilon_{\psi_I(0)+1}}_{\psi_I(0)+1}}_{\psi_I(0)+1})\)

\(C(b+C(b,C(b,a)),0)=\psi(\varepsilon_{\psi_I(0)+2})\)

\(C(b+C(b+1,a),0)=\psi(\varepsilon_{\psi_I(0)+\omega})\)

\(C(b+C(b+a,a),0)=\psi(\varepsilon_{\psi_I(0)2})\)

\(C(b+C(b+C(b,a),a),0)=\psi(\varepsilon_{\varepsilon_{\psi_I(0)+1}})\)

\(C(b+C(b+C(b+C(b,a),a),a),0)=\psi(\varepsilon_{\varepsilon_{\varepsilon_{\psi_I(0)+1}}})\)

\(C(b2,0)=\psi(\zeta_{\psi_I(0)+1}=\psi_{\Omega_{\psi_I(0)+1}}(\Omega_{\psi_I(0)+1}))\)

From here \(b\) corresponds to \(\Omega_{\psi_I(0)+1}\)

\(C(\Omega_2,b)\) corresponds to \(\Omega_{\psi_I(0)+2}\)

\(C(\Omega_2 +1,a)\) corresponds to \(\Omega_{\psi_I(0)+\omega}\)

\(C(\Omega_2 2,a)\) corresponds to \(\Omega_{\psi_I(0)2}\)

\(C(C(\Omega_2 2+1,0),0)=\psi(\Omega_{\psi_I(0)\omega})\)

\(C(C(\Omega_2 2+\Omega,0),0)=\psi(\Omega_{\psi_I(0)\Omega})\)

\(C(C(\Omega_2 2+C(\Omega_2+1,0),0),0)=\psi(\Omega_{\psi_I(0)\Omega_\omega})\)

\(C(C(\Omega_2 2+C(\Omega_2+C(\Omega_2,0),0)),0)=\psi(\Omega_{\psi_I(0)\Omega_\Omega})\)

\(C(C(\Omega_2 2+C(\Omega_2+a,0),0),0)=\psi(\Omega_{\psi_I(0)^2})\)

\(C(C(\Omega_2 2+C(\Omega_2+a,0),C(\Omega_2 2+C(\Omega_2+a,0),0)),0)=\psi(\Omega_{\psi_I(0)^2 2})\)

\(C(C(\Omega_2 2+C(\Omega_2+a,0)+1,0),0)=\psi(\Omega_{\psi_I(0)^2\omega})\)

\(C(C(\Omega_2 2+C(\Omega_2+a,0)2,0),0)=\psi(\Omega_{\psi_I(0)^3})\)

Here \(C(\Omega_2+C(\Omega_2 2,0),0)\) corresponds to \(\psi_I(0)\)

\(C(C(\Omega_2 2+C(C(\Omega_2+a,0)+1,C(\Omega_2+a,0)),0),0)=\psi(\Omega_{\psi_I(0)^\omega})\)

\(C(C(\Omega_2 2+C(C(C(\Omega_2+a,0),C(\Omega_2+a,0)),C(\Omega_2+a,0)),0),0)=\psi(\Omega_{\psi_I(0)^{\psi_I(0)}})\)

\(C(C(\Omega_2 2+C(\Omega_2,C(\Omega_2+a,0)),0),0)=\psi(\Omega_{\varepsilon_{\psi_I(0)+1}})\)

Here \(C(\Omega_2,C(\Omega_2+C(\Omega_2 2,0),0))\) corresponds to \(\Omega_{\psi_I(0)+1}\)

\(C(C(\Omega_2 2+C(\Omega_2+1,C(\Omega_2+a,0)),0),0)=\psi(\Omega_{\Omega_{\psi_I(0)+\omega}})\)

\(C(C(\Omega_2 2+C(\Omega_2+C(\Omega_2+a,0),C(\Omega_2+a,0)),0),0)=\psi(\Omega_{\Omega_{\psi_I(0)2}})\)

\(C(C(\Omega_2 2+C(\Omega_2+a,C(\Omega_2+a,0)),0),0)=\psi(\psi_I(1))\)

\(C(C(\Omega_2 2+C(\Omega_2+a+1,0),0),0)=\psi(\psi_I(\omega))\)

\(C(C(\Omega_2 2+C(\Omega_2+a2,0),0),0)=\psi(\psi_I(I))\)


\subsubsection{Up to the limit of "standard OCFs"}

Here we still keep the shorthands \(a=C(\Omega_2 2,0)\) \(b=C(\Omega_2,a)\).

Also here the equal sign means "corresponds to in psi notation" because TON expressions like \(C(\Omega_2 2+C(\Omega_2+C(C(\Omega_2,C(\Omega_2 2,0)),C(\Omega_2,C(\Omega_2 2,0))),0),0)\) may correspond to \(\psi_I(I)\) in psi function,yet the actual expressions are less than \(\Omega_2\) itself,which is way less than \(\psi_I(I)\).
\(C(\Omega_2 2+C(\Omega_2+a,C(\Omega_2+a2,0)),0)=\psi_I(I+1)\)

\(C(\Omega_2 2+C(\Omega_2+a+1,C(\Omega_2+a2,0)),0)=\psi_I(I+\omega)\)

\(C(\Omega_2 2+C(\Omega_2+a+C(\Omega_2+a2,0),C(\Omega_2+a2,0)),0)=\psi_I(I+\psi_I(I))\)

\(C(\Omega_2 2+C(\Omega_2+a2,C(\Omega_2+a2,0)),0)=\psi_I(I2)\)

\(C(\Omega_2 2+C(\Omega_2+a2+1,0),0)=\psi_I(I\omega)\)

\(C(\Omega_2 2+C(\Omega_2+a3,0),0)=\psi_I(I^2)\)

\(C(\Omega_2 2+C(\Omega_2+C(a+1,a),0),0)=\psi_I(I^\omega)\)

\(C(\Omega_2 2+C(\Omega_2+C(C(a,a),a),0),0)=\psi_I(I^I)\)

\(C(\Omega_2 2+C(\Omega_2+C(C(C(a,a),a),a),0),0)=\psi_I(I^{I^I})\)

\(C(\Omega_2 2+C(\Omega_2+b,0),0)=\psi_I(\varepsilon_{I+1})\)

\(C(\Omega_2 2+C(\Omega_2,C(\Omega_2+b,0)),0)=\psi_I(\varepsilon_{I+2})\)

Here \(C(\Omega_2+\gamma,C(\Omega_2+C(\Omega_2,C(\Omega_22,0)),0))\) corresponds to \(\Omega_{I+\omega^\gamma}\)

\(C(\Omega_2,C(\Omega_2+b,0))\) corresponds to \(\Omega_{I+1}\)

\(C(\Omega_2+a,C(\Omega_2+b,0))\) corresponds to \(\psi_{I_2}(0)\)

\(C(\Omega_2+a+1,C(\Omega_2+b,0))\) corresponds to \(\psi_{I_2}(\omega)\)

\(C(\Omega_2+a2,C(\Omega_2+b,0))\) corresponds to \(\psi_{I_2}(I_2)\)

\(C(\Omega_2+b,C(\Omega_2+b,0))\) corresponds to \(\psi_{I_2}(\varepsilon_{I_2+1})\)

\(C(\Omega_2+b+1,0)\) corresponds to \(I_\omega\)

\(C(\Omega_2+b+\gamma,0)\) corresponds to \(I_{\omega^\gamma}\)

\(C(\Omega_2+b+a,0)\) corresponds to \(\psi_{I(1,0)}(0)\)

\(C(\Omega_2+b+a2,0)\) corresponds to \(\psi_{I(1,0)}(I(1,0))\)

\(C(\Omega_2+b+C(b,a),0)\) corresponds to \(\psi_{I(1,0)}(\varepsilon_{I(1,0)+1})\)

\(C(\Omega_2+b2,0)\) corresponds to \(\psi_{I(1,0)}(\zeta_{I(1,0)+1})\)

This so far seems to fit Taranovsky's claims that:

\(C(\Omega_2+C(\Omega_2,C(\Omega_2 2,0)),0)\) corresponds to \(I\)

\(C(\Omega_2+C(\Omega_2,C(\Omega_2 2,0))2,0)\) corresponds to \(I(1,0)\)

\(C(\Omega_2+C(\Omega_2,C(\Omega_2 2,0))^2,0)\) corresponds to \(M\)

\(C(\Omega_2+C(\Omega_2,C(\Omega_2 2,0))^2 2,0)\) corresponds to \(M(1,0)\)

\(C(\Omega_2+C(\Omega_2,C(\Omega_2 2,0))^3,0)\) corresponds to \(\Xi(3,0)\)

\(C(\Omega_2+C(\Omega_2,C(\Omega_2 2,0))^{C(\Omega_2,C(\Omega_2 2,0))},0)\) corresponds to \(K\) or \(\Pi_3\)-reflection.

\(C(\Omega_2+C(\Omega_2,C(\Omega_2 2,0))^{C(\Omega_2,C(\Omega_2 2,0))^{n}},0)\) corresponds to \(\Pi_{n+2}\)-reflection or the limit to any system using recursively \(\Pi^{1}_n\)-indescribable cardinals.

Therefore, \(C(C(\Omega_2 2+C(\Omega_2+C(\Omega_2,C(\Omega_2 2,0))^{C(\Omega_2,C(\Omega_2 2,0))^{n}},0),0),0)\) is the proof-theoretic ordinal of KP + \(\Pi_{n+2}\)-Reflection and \(C(C(\Omega_2 2+C(\Omega_2+C(\Omega_2,C(\Omega_2 2,0))^{C(\Omega_2,C(\Omega_2 2,0))^\omega},0),0),0)\) is the limit to \(\Pi_\omega\)-reflection,the strongest "standard ordinal notation" and therefore marks the strength of "standard OCFs." There are only a few ordinal notations I know of which might surpass this limit: Alemagno's lambda notation 

( http://googology.wikia.com/wiki/User\_blog:Alemagno12/Making\_an\_OCF,\_attempt\_2 ) ,Stegert's notation (which I can't find any information for anywhere) and my Sigma Ordinal Notation 

( http://googology.wikia.com/wiki/User\_blog:Boboris02/Large\_number\_combinatorics\_III:Sigma\_ordinal\_notation ) that I defined almost a year ago.

\subsubsection{Beyond}

Beyond that,Taranovsky has made multiple claims about the strength of the notation.

In an earlier analysis he gave some examples and proposed that \(C(C(....C(\Omega_{n+1}+1,0)....),0)\) with \(n+1\) zeros might be the proof theoretic ordinal of \(\Pi^1_n-CA_0\). If this is in fact true,then TON is just as strong as second order arithmetic,yet according to him,this old analysis is wrong.

In newer articals,he has said that the overall function may be much stronger than \(Z_2\) and that the PTO of \(Z_2\) might be \(C(C(\Omega_2\omega,0),0)\) or at least it may fall somewhere within his n=2 system. He has even claimed it to be stronger than ZFC,claiming that \(C(C(\Omega_2\omega,C(\Omega^2_2+\Omega_2,0)),0)\),while still falling within the n=2 system might be the PTO of ZFC. If this is true,then this makes not just TON,but specifically the n=2 system ridiculously strong.

Those claims for the recursive level of the notation range from Second Order Arithmetic (\(Z_2\)) to Second Order Arithmetic with Projectile Determinacy (\(Z_2 + \text{PD}\)). More specifically,he has given multiple possibilities for the strength of the overall system which are as follows:

\begin{enumerate}
\item Not well founded;
\item Second Order Arithmetic;
\item Rudamentary Set Theory + "there exists an n-subtle cardinal" for n is a natural number;
\item Second Order Arithmetic with Projectile Determinacy;
\end{enumerate}


\subsection{Second Order Arithmetic Subsystems in Terms of Taranovsky's C}

\small

Source : https://googology.wikia.org/wiki/User\_blog:Boboris02/Second\_Order\_Arithmetic\_Subsystems\_in\_Terms\_of\_Taranovsky\%27s\_C

\bigskip

We define the proof-theoretic ordinal of a theory T (denoted with $|T|_{Con}$) as follows :

\( |T|_{Con} = \) least ordinal $\alpha$ such that \( F + EC - TI(\alpha) \vdash Con(T) \)

where F is primitive recursion arithmetic and \( EC - TI(\alpha) \) stands for transfinite induction up to $\alpha$.

Here are some proof-theoretic ordinals in Taranovsky's notation :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( |RCA_0^*|_{Con} = C(3,0) = C(C(0,C(0,C(0,0))),0) \)

\item \( |WKL_0|_{Con} = |RCA_0|_{Con} = C(\omega,0) = C(C(C(0,0),0),0) \)

\item \( |ACA_0|_{Con} = C(\Omega_1,0) \)

\item \( |ATR_0|_{Con} = C({\Omega_1}^2,0) = C(C(C(\Omega_1,\Omega_1),\Omega_1),0) \)

\item \( |\Pi_1^1 - CA_0|_{Con} = |\Delta_2^1 - CA_0|_{Con} = C(C(\Omega_2+1,0),0) = C(C(C(0,\Omega_2),0),0) \)

\item \( |\Pi_1^1 - CA|_{Con} = C(C(\Omega_2+1,0) \cdot \varepsilon_0,0) = C(C(C(C(C(\Omega_2,0),0),C(C(0,\Omega_2),0)),C(C(0,\Omega_2),0)),0) \)

\item \( |\Pi_1^1 - CA + BI|_{Con} = C(C(\Omega_2,C(\Omega_2+1,0)),0) = C(C(\Omega_2,C(C(0,\Omega_2),0)),0) \)

\item \( |\Pi_1^1 - TR_0|_{Con} = C(C(\Omega_2 \cdot 2,0),0) = C(C(C(\Omega_2,\Omega_2),0),0) \)

\item \( \Delta_2^1 - CA + BI|_{Con} = |KPi|_{Con} = C(C(\Omega_2 \cdot 2+C(\Omega_2+C(\Omega_2,C(\Omega_2 \cdot 2,0)),0),0),0) \)

\( = C(C(C(C(C(C(\Omega_2,C(C(\Omega_2,\Omega_2),0)),\Omega_2),0),C(\Omega_2,\Omega_2)),0),0) \)

\item \( |PA|_{Con} = C(\Omega_1,0) \)

\item \( |KP|_{Con} = C(C(\Omega_2,\Omega_1),0) = C(C(\Omega_2,C(\Omega_2,0)),0) \)

\item \( |\text{ML}_1\text{W}|_{\text{Con}} = C(C(\Omega_2 2+C(\Omega_2+1,C(\Omega_2+C(\Omega_2,C(\Omega_2 2,0)),0)),0),0) \)

\( = C(C(C(C(C(C(0,\Omega_2),C(C(\Omega_2,C(C(\Omega_2,\Omega_2),0)),\Omega_2)),0),C(\Omega_2,\Omega_2)),0),0) \)

\item \( |\text{KPh}|_{\text{Con}} = C(C(\Omega_2 2+C(\Omega_2+C(\Omega_2,C(\Omega_2 2,0))2,0),0),0) \)

\( = C(C(C(C(C(C(C(\Omega_2,C(C(\Omega_2,\Omega_2),0)),C(\Omega_2,C(C(\Omega_2,\Omega_2),0))),\Omega_2),0),C(\Omega_2,\Omega_2)),0),0) \)

\item \( |\text{KPM}^+|_{\text{Con}} = C(C(\Omega_2 2+C(\Omega_2+1,C(\Omega_2+C(\Omega_2,C(\Omega_2 2,0))^2,0)),0),0) \)

\( = C(C(C(C(C(C(0,\Omega_2),C(C(C(C(\Omega_2,C(C(\Omega_2,\Omega_2),0)),C(\Omega_2,C(C(\Omega_2,\Omega_2),0))),\\C(\Omega_2,C(C(\Omega_2,\Omega_2),0))),\Omega_2)),0),C(\Omega_2,\Omega_2)),0),0) \)

\end{itemize}


\subsection{Defining non recursive countable admissible ordinals with Taranovsky's notation}

Sources :

\small

http://web.mit.edu/dmytro/www/other/OrdinalNotation.htm

https://googology.wikia.org/wiki/User\_blog:Boboris02/Algorithm\_for\_Generating\_LUCOs\_From\_TON\_Expressions\_\%2B\_Intuitive\_Analysis

https://googology.wikia.org/wiki/User\_blog:Hyp\_cos/TON,\_stable\_ordinals,\_and\_my\_array\_notation

\normalsize

\bigskip

Let us put the following definitions

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( a = C(\Omega_2 \cdot 2, 0) \) where \( \Omega_2 \cdot 2 = C(\Omega_2,\Omega_2) \)

\item \( \alpha+ = C(\Omega_2,\alpha) \)

\item \( d = a+ = C(\Omega_2,a) = C(\Omega_2,C(C(\Omega_2,\Omega_2),0)) \)

\item \( 0 < \kappa < a \)

\end{itemize}

Then we have :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( C(\Omega_2,\kappa) \) is the least admissible ordinal after $\kappa$.

\item \( C(\Omega_2+d,0) \) is the least recursively inaccessible ordinal.

\item \( C(\Omega_2+d,\kappa) \) is the next recursively inaccessible ordinal after $\kappa$.

\item \( C(\Omega_2+d,C(\Omega_2+d,0)) \) is the second recursively inaccessible ordinal.

\item \( C(\Omega_2+d \cdot 2,0) \) is the least recursively hyperinaccessible ordinal.

\item \( C(\Omega_2+d \cdot 2,\kappa) \) is the least recursively hyperinaccessible ordinal after $\kappa$.

\item \( C(\Omega_2+d^2,0) \) is the least recursively Mahlo ordinal..

\item \( C(\Omega_2+d^2,\kappa) \) is the least recursively Mahlo ordinal after $\kappa$.

\item \( C(\Omega_2+d^d,0) \) is the least $\Pi_3$-reflecting ordinal.

\item \( C(\Omega_2+d^d,\kappa) \) is the least $\Pi_3$-reflecting ordinal after $\kappa$.

\item \( C(\Omega_2+d^{d^d},0) \) is the least $\Pi_4$-reflecting ordinal.

\item \( C(\Omega_2+d^{d^{d^d}},0) \) is the least $\Pi_5$-reflecting ordinal.

\end{itemize}


\subsection{Graphical representation}

\small
In https://googology.wikia.org/wiki/User\_blog:Rpakr/Analysis\_of\_Taranovsky\%27s\_C\_by\_AAAgoogology\_(Translation\_by\_me\_and\_koteitan)
\normalsize
is presented a graphical representation for Taranovsky's ordinal notation. In this notation, ordinals are represented by binary trees. C($\alpha$,$\beta$) is represented by a node C with the tree representing $\alpha$ above and the tree representing $\beta$ on the right. This representation may be simplified since there is only one node C, so it may be omitted. For a better visual effect, 0 may also be replaced by a white circle and $\Omega$ by a black circle. Here are some examples of representations of ordinals in this simplified graphical representation :

\input{ton_graph_inc.tex}

\bigskip

Here is a Haskell program generating LaTeX code of graphical representation of ordinals :

\verbatiminput{ton_graph_min.hs}

\bigskip

Another possibility to represent expressions in Taranovsky's system 2 is to represent $\Omega_2 = \Omega$ by a black circle with another circle around it and $\Omega_1 = C(\Omega_2,0) = C(\Omega,0)$ by a simple black circle, 0 being still represented by a white circle. Here are some examples of representations of ordinals :

\input{ton_graph_wn_bho_inc.tex}

\bigskip
 
Here is a Haskell program generating LaTex code for this representation :

\verbatiminput{ton_graph_wn_bho.hs}

\bigskip

\subsection{Other Taranovsky's ordinal notation systems}

In http://web.mit.edu/dmytro/www/other/OrdinalNotation.htm, Taranovsky describes several ordinal notation systems, which are also summerized in https://googology.wikia.org/wiki/User:Hyp\_cos/Taranovsky's\_various\_ordinal\_notations. 

\bigskip

For example, in the system called "Degrees of Reflection", the condition "$\alpha$ is n-built from below from \(C(\alpha,\beta) \) which appears in the definition of standard forms is replaced by :

\[ \forall x \in T_\alpha \forall y \sqsubset x (x < y < \Omega) \implies \exists z \sqsupseteq y (z < \Omega) \land (z \sqsupset x \lor z < C(\alpha,\beta)) \]

where \( x \sqsubseteq y \) and \( y \sqsupseteq x \) mean that x is a subset of y and  \( x \sqsubset y \) and \( y \sqsupset x \) mean that x is a proper subterm of y (a subterm of y different from y).


\subsection{References}

http://web.mit.edu/dmytro/www/other/OrdinalNotation.htm 

https://stepstowardinfinity.wordpress.com/2015/06/22/ordinal3/ 

http://googology.wikia.com/wiki/User\_blog:Hyp\_cos/Fundamental\_Sequences\_in\_Taranovsky\%27s\_Notation


\section{"Concatenation" of ordinal notations}

An ordinal notation can be considered as a function Ord such that \( Ord(s) = \alpha \) where s is a character string and \( \alpha \) is the ordinal represented by this character string in the considered notation.

Suppose we have two ordinal notations represented by the functions \( Ord_1 \) and \( Ord_2 \), whose limits are respectively \( \lambda_1 \) and \( \lambda_2 \).

From these two ordinal notations, we can define an ordinal notation \( Ord \) which we will call the "concatenation" of these two ordinal notations, defined for example by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item \( Ord("1,".s) = Ord_1(s) \)

\item \( Ord("2,".s) = \lambda_1+Ord_2(s) \)

\end{itemize}

The limit of this notation is \( \lambda_1 + \lambda_2 \).

The concatenation of ordinal notation can be generalized to any number of notations.
 

\section{Proof-theoretic ordinals}

\subsection{Definition}

The proof-theoretic ordinal of a theory is a measure of the strength of this theory. 

The proof-theoretic ordinal of a theory T can be defined in different equivanent ways :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item the smallest recursive ordinal that the theory cannot prove to be well founded

\item the supremum of all ordinals for which there exists a notation such that the theory proves that this notation is an ordinal notation

\item the supremum of all ordinals \( \alpha \) such that there exists a recursive relation R on \( \omega \) that well-orders it with \( \alpha \) and such that T proves transfinite induction of arithmetical statements for R.

\end{itemize}

For example, the proof-theoretic ordinal of Peano arithmetic is \( \varepsilon_0 \).

\subsection{Trivial construction}

In http://www.madore.org/~david/weblog/d.2017-08-31.2462.ordinaux-interessants.html, David Madore explains how to build an ad-hoc ordinal notation whose limit is the proof theoretic ordinal of a given theory T (for example ZFC), but if the goal is to better understand a theory, this notation is not very interesting because it is difficult to understand and not very explicit, and does not teach us anything about the theory.

The representation of an ordinal in this notation is made of 3 elements (p,e,x) where p is a proof in T that a given Turing machine e computes a well-ordering of \( \omega \), and \( x \in \omega \). The comparison of two ordinals represented respectively by (p,e,x) and (p',e',x') is done by first comparing lexicographically p and p', and if they are equal, comparing x and x' with e.

Suppose for example that the least proof in lexicographical order is a proof \( p_0 \) which proves that the Turing machine \( e_0 \) which computes the "natural" ordering on \( \omega \) computes a well-ordering. This well-ordering is associated to the ordinal \( \omega \). So an ordinal below \( \omega \) (a natural number n) will be represented by \( (p_0,e_0,n) \). Then suppose the next proof is \( p_1 \) which proves that the turing machine \( e_1 \) computes a well-ordering on \( \omega \), and this well-ordering considers 0 as the largest element, the other being ordered with "natural" order. This well-ordering is associated to \( \omega+1 \). Then, in our notation, \( \omega \) is represented by \( (p_1,e_1,1) \), \( \omega+1 \) by \( (p_1,e_1,2) \), \( \omega+n \) by \( (p_1,e_1,1+n) \), and \( \omega \cdot 2 \) by \( (p_1,e_1,0) \).

This notation is effectively a correct computable, recursive ordinal notation whose limit is the proof theoretic ordinal of the considered theory, but we see it is not a very "natural" notation.

In https://mathoverflow.net/questions/164148/is-there-a-computable-ordinal-encoding-the-proof-strength-of-zf-is-it-knowable, Taranovsky says : 

"The problem is that the above \(<\) is uninformative about T. A key goal of ordinal analysis is to find a canonical \(<\) that makes the power of T simple and explicit, and thus give us a qualitatively better understanding of T. Existence of a noncanonical \(<\), combined with existence of canonical \(<\) for weaker theories, suggests that a canonical \(<\) also exists for ZFC, but it is difficult to be certain until we actually find and prove such a \(<\). Typically, an approach to finding \(<\) can be extended until it becomes too complex, and then a new idea permits \(<\) to become simpler again."

See also :

https://mathoverflow.net/questions/165338/why-isnt-this-a-computable-description-of-the-ordinal-of-zf


\subsection{Using trivial construction of proof-theoretic ordinals to define very large ordinals}

We saw that a reason to define large ordinals can be to better understand theories by defining proof-theoretic ordinals of these theories. We also saw that we can start with a theory to define trivially a proof-theoretic ordinal of this theory, using a complicated, not very natural notation.

Another goal of defining large ordinals could be to raise the power of a theory. If we add to a theory the axiom of its own consistency,, we get a more powerful theory. We can repeat this process, a finite number of times, or transfinitely many times.

Transfinite iteration of a reflection principle on a theory T up to an ordinal \( \alpha \) gives a new theory \( T' = TIRP(T,\alpha) \) where the function TIRP is defined by :

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item TIRP(T,0) = T 
\item TIRP(T,\(\alpha\)+1) = TIRP(T,\(\alpha\))+Consis(TIRP(T,\(\alpha\))) 
\item TIRP(T,lim f) = union for all integers n of TIRP(T,f(n)) 
\end{itemize}

From a given theeory T, we can build a more powerful theory T' by iterating the reflection principle PTO(T) times, where PTO(T) is the proof-theoretic ordinal of T defined trivially as the set of the ordinals represented by (p,e,x) where p is a proof in T that the Turing machine e computes a well ordering on \( \omega \) : T' = TIRP(T,PTO(T)).

We can even go further by defining a very fast growing ordinal function \( PTOTIRP_T \) which, to a given ordinal \( \alpha \), associates the proof-theoretic ordinal of the theory obtained by transfinitely iterating \( \alpha \) times the reflection principle on T : \( PTOTIRP_T(\alpha) = PTO(TIRP(T,\alpha)) \). Then we can iterate PTO(T) times this function to get \( {PTOTIRP_T}^{PTO(T)}(0) \), and iterate transfinitely this number of times the reflection principle to get the theory \( TIRP(T,{PTOTIRP_T}^{PTO(T)}(0)) \).


\section{Summary}

Any ordinal can be defined as the least ordinal strictly greater than all ordinals of a set : the empty set for 0, \(\lbrace \alpha \rbrace\) for the successor of \( \alpha \),  \(\lbrace \alpha_0,\alpha_1,\alpha_2,...\rbrace\) for an ordinal with fundamental sequence \(\alpha_0, \alpha_1, \alpha_2, ...\)

\subsection{Algebraic notation}

We define the following operations on ordinals :

\smallskip
\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item addition : \( \alpha+0=\alpha ; \alpha+suc(\beta)=suc(\alpha+\beta); \alpha+lim(f)=lim(n \mapsto \alpha+f(n)) \)

\item multiplication : \( \alpha \cdot 0 = 0 ; \alpha \cdot suc(\beta) = (\alpha \cdot \beta) + \alpha ; \alpha \cdot lim(f) = lim (n \mapsto \alpha \cdot f(n)) \)

\item exponentiation : \( \alpha^0 = 1 ; \alpha^{suc(\beta)} = \alpha^\beta \cdot \alpha ; \alpha^{lim(f)} = lim (n \mapsto \alpha^{f(n)}) \)
\end{itemize}


\subsection{Veblen functions}

These functions use fixed points enumaration : \(\varphi(\ldots,\beta,0,\ldots,0,\gamma) \) represents the \((1+\gamma)^{th}\) common fixed point of the functions \( \xi \mapsto \varphi(\ldots,\delta,\xi,0,\ldots,0)\) for all \(\delta < \beta\).


\subsection{Simmons notation}

\( Fix f z = f^w(z+1)\) = least fixed point of f strictly greater than z.

\( Next = Fix (\alpha \mapsto \omega^\alpha) \) 

\( [0] h = Fix (\alpha \mapsto h^\alpha \omega) \) ;
\( [1] h g = Fix (\alpha \mapsto h^\alpha g \omega) \) ;
\( [2] h g f = Fix (\alpha \mapsto h^\alpha g f \omega) \) ; etc...

Correspondence with Veblen's \(\phi\) : \( \phi(1+\alpha,\beta) = ([0]^\alpha Next)^{1+\beta} \omega ; 
 \phi(\alpha,\beta,\gamma) = ([0]^\beta (([1] [0])^\alpha Next))^{1+\gamma} \omega \)




\subsection{RHS0 notation}

We start from 0, if we don(t see any regularity we take the successor, if we see a regularity, if we have a notation for this regularity, we use it, else we invent it, then we jump to the limit.

\( H f x = lim\ x, f x, f (f x), \ldots ; R_1 f g x = lim\ g x, f g x, f f g x, \ldots ; R_2 f g h x = lim\ h x, f g h x, f g f g h x, \ldots \)

Correspondence with Simmons notation : 
\( \ldots, [3] \rightarrow R5, [2] \rightarrow R4, [1] \rightarrow R3, [0] \rightarrow R2, Next \rightarrow R1, \omega \rightarrow H suc\ 0 \)



\subsection{Ordinal collapsing functions}

These functions use uncountable ordinals to define countable ordinals.

We define sets of ordinals that can be built from given ordinals and operations, then we take the least ordinal that is not in this set, or the least ordinal which is greater than all contable ordinals of this set.

These functions are extensions of functions on countable ordinals, whose fixed points can be reached by applying them to an uncountable ordinal.

Examples :

\smallskip
\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}
\item Madore's \(\psi\) : \(\psi(\alpha) = \varepsilon_\alpha \) if \(\alpha < \zeta_0 ; \psi(\Omega) = \zeta_0 \) which is the least fixed point of \( \alpha \mapsto \varepsilon_\alpha \).

\item Feferman's \(\theta\) : \(\theta(\alpha,\beta) = \varphi(\alpha,\beta) \) if \( \alpha < \Gamma_0 \) and \( \beta < \Gamma_0 ; \theta(\Omega,0) = \Gamma_0 \) which is the least fixed point of \( \alpha \mapsto \varphi(\alpha,0) \).

\item Taranovsky's C : \( C(\alpha,\beta) = \beta+\omega^\alpha \) if \( \alpha \) is countable; \( C(\Omega_1,0) = \varepsilon_0 \) which is the least fixed point of \( \alpha \mapsto \omega^\alpha \).
\end{itemize}

\section{Comparison table}

\begin{tabular}{|c|c|c|c|c|c|c|c|c|}
\hline
Name		& Symbol		& Algebraic			& Veblen			& Simmons			& RHS0 		& Madore				& Taranovsky 			\\
\hline
Zero		& 0			& 0				& 				& 				& 0			& 					& 0				\\ \hline
One		& 1			& 1				& \(\varphi(0,0)\)		& 				& suc 0			& 					& C(0,0)			\\ \hline
Two		& 2			& 2				& 				& 				& suc (suc 0)		& 					& C(0,C(0,0))			\\ \hline
Omega		& \(\omega\)		& \(\omega\)			& \(\varphi(0,1)\)		& \(\omega\)			& H suc 0		& 					& C(1,0)			\\ \hline
		& 			& \(\omega+1\)			& 				& 				& suc (H suc 0)		& 					& C(0,C(1,0))			\\ \hline
		&			& \(\omega\cdot2\)		&				& 				& H suc (H suc 0)	& 					& C(1,C(1,0))			\\ \hline
		&			& \(\omega^2\)			& \(\varphi(0,2)\)		& 				& H (H suc) 0		& 					& C(C(0,C(0,0)),0)		\\ \hline
		&			& \(\omega^\omega\)		& \(\varphi(0,\omega)\)		& 				& H H suc 0		& 					& C(C(1,0),0)			\\ \hline
		&			& \(\omega^{\omega^\omega}\)	& \(\varphi(0,\omega^\omega)\)	&				& H H H suc 0		&					& C(C(C(1,0),0),0)		\\ \hline
Epsilon zero	& \(\varepsilon_0\)	& \(\varepsilon_0\)		& \(\varphi(1,0)\)		& \(Next\ \omega\)		& \(R_1 H suc\ 0\)	& \(\psi(0)\)				& \(C(\Omega_1,0)\)		\\ \hline
		& 			& \(\varepsilon_1\)		& \(\varphi(1,1)\)		& \(Next^2 \omega\)	& \(R_1 (R_1 H) suc\ 0\)& \(\psi(1)\)				& \(C(\Omega_1,C(\Omega_1,0)\)	\\ \hline
		& 			& \(\varepsilon_\omega\)	& \(\varphi(1,\omega)\) 	& \(Next^\omega \omega\) & \(H R_1 H suc\ 0\)	& \(\psi(\omega)\)			& \(C(C(0,\Omega_1),0)\)	\\ \hline
		& 			&\(\varepsilon_{\varepsilon_0}\)& \(\varphi(1,\varphi(1,0))\)	& \(Next^{Next \omega} \omega \) & \(R_1 H R_1 H suc\ 0\)& \(\psi(\psi(0))\)			& \(C(C(C(\Omega_1,0),\Omega_1),0)\)\\ \hline
Zeta zero	& \(\zeta_0\)		& \(\zeta_0\)			& \(\varphi(2,0)\)		& \([0] Next\ \omega\)		& \(R_2 R_1 H suc\ 0\)	& \(\psi(\Omega)\)			& \(C(C(\Omega_1,\Omega_1),0)\)	\\ \hline
Eta zero	& \(\eta_0\)		& \(\eta_0\)			& \(\varphi(3,0)\)		& \([0]^2 Next\ \omega\) 	& \(R_2 (R_2 R_1) H suc\ 0\)&					& \(C(C(\Omega,C(\Omega,\Omega)),0)\) \\ \hline
		&			&			& \(\varphi(\omega,0)\)		& \([0]^\omega Next\ \omega\) & \(H R_2 R_1 H suc\ 0\)&					& \(C(C(C(0,\Omega_1),\Omega_1),0)\) \\ \hline
Feferman	& \(\Gamma_0\)		
								& \(\Gamma_0\)			& \(\varphi(1,0,0)\)		& \([1] [0] Next\ \omega\)	& \(R_3 R_2 R_1 H suc\ 0\) & \(\psi(\Omega^\Omega)\)		& \(C(C(C(\Omega_1,\Omega_1),\) \\ 
-Schütte	&			&				& \(=\varphi(2 \mapsto 1)\)	&				& \(= R_{3 \ldots 1} H suc\ 0\) & 					& \(\Omega_1),0)\)		\\ \hline
Ackermann	&			&				& \(\varphi(1,0,0,0)\)		& \([1]^2 [0] Next\ \omega\) & \(R_3 (R_3 R_2) R_1 H suc\ 0\) & \(\psi(\Omega^{\Omega^2})\)		&				\\ 
		&			&				& \(=\varphi(3 \mapsto 1)\)	&				&			&					&				\\ \hline
Small Veblen	&			&				& \(\varphi(\omega \mapsto 1)\)	& \([1]^\omega [0] Next\ \omega\) & \(H R_3 R_2 R_1 H suc\ 0\) & \(\psi(\Omega^{\Omega^\omega})\)	& \(C(\Omega_1^\omega,0)\)	\\
ordinal		&			&				&				&				&			&					& \(=C(C(C(C(0,\Omega_1), \)	\\ 
		&			&				&				&				&			&					& \(\Omega_1),\Omega_1),0)\)	\\ \hline
Large Veblen	&			&				& least ord.	 	 	& \([2] [1] [0] Next\ \omega\)	& \(R_4 R_3 R_2 R_1 H suc\ 0\) & \(\psi(\Omega^{\Omega^\Omega})\)	& \(C(\Omega_1^{\Omega_1},0)\)	\\
ordinal		&			&				& not rep.			&				& \(= R_{4 \ldots 1} H suc\ 0\) &					& \(=C(C(C(C(\Omega_1,\Omega_1),\) \\ 
		&			&				&				&				&			&					& \( \Omega_1),\Omega_1),0) \)	\\ \hline
Bachmann-	&			&				&				& least ord.			& \(R_{\omega \ldots 1} H suc\ 0\) & \(\psi(\varepsilon_{\Omega+1})\)	& \(C(C(\Omega_2,\Omega_1),0)\)	\\
Howard		&			&				&				& not rep.			&			&					&				\\ 
ordinal		&			&				&				&				&			&					&				\\ \hline
  
\end{tabular}

\section{Links}

\begin{itemize}
     \setlength{\itemsep}{1pt}
     \setlength{\parskip}{0pt}
     \setlength{\parsep}{0pt}

\item http://www.madore.org/\%7Edavid/weblog/2011-09-18-nombres-ordinaux-intro.html :
Tutorial introduction to ordinal numbers in French

\item http://www.madore.org/~david/weblog/d.2017-08-31.2462.ordinaux-interessants.html :
"Petit guide bordélique de quelques ordinaux intéressants" by David Madore

\item https://sites.google.com/site/pointlesslargenumberstuff/home/l/pglin?tmpl=\%2Fsystem\%2Fapp\%2Ftemplates\%2Fprint\%2F : 
Pointless Gigantic List of Infinite Numbers

\item https://sites.google.com/site/largenumbers/home/appendix/a/infinite\_numbers : 
Sbiis Saibian's !!! FORBIDDEN LIST !!! of Infinite Numbers

\item http://quibb.blogspot.fr/p/infinity-series-portal.html : 
Professor Quibb's Infinity Series Portal

\item http://googology.wikia.com/wiki/Ordinal\_notation : 
Ordinal notation

\item https://sites.google.com/site/travelingtotheinfinity/ : 
Traveling to the infinity

\item http://www.cs.man.ac.uk/~hsimmons/TEMP/OrdNotes.pdf : 
A short introduction to Ordinal Notations by Harold Simmons

\item http://www.mathematik.uni-muenchen.de/~buchholz/articles/jaegerfestschr\_buchholz3.pdf : 
A survey on ordinal notations around the Bachmann-Howard ordinal by Wilfried Buchholz

\item http://web.mit.edu/dmytro/www/other/OrdinalNotation.htm : 
Ordinal Notation by Dmytro Taranovsky

\item http://arxiv.org/html/1203.2270 : 
Higher Order Set Theory with Reflective Cardinals by Dmytro Taranovsky

\item https://www1.maths.leeds.ac.uk/~rathjen/realm.pdf : 
The Realm of Ordinal Analysis by Michael Rathjen

\item https://www.sciencedirect.com/science/article/pii/0168007287900790 :
Ordinal notations based on a hierarchy of inaccessible cardinals by Wolfram Pohlers

\item https://cage.ugent.be/~jvdm/Site/Research\_files/DissertationJeroenVanderMeerenPrinted.pdf : 
Connecting the Two Worlds: Well-partial-orders and Ordinal Notation Systems by Jeroen Van der Meeren

\item https://en.wikipedia.org/wiki/Veblen\_function : 
Veblen function on Wikipedia

\item http://www.ams.org/journals/tran/1908-009-03/S0002-9947-1908-1500814-9/S0002-9947-1908-1500814-9.pdf : 
Continuous increasing functions of finite and transfinite ordinals by
Oswald Veblen

\item http://en.wikipedia.org/wiki/Ordinal\_collapsing\_function : 
Ordinal collapsing function on Wikipedia

\item https://en.wikipedia.org/wiki/Buchholz\_psi\_functions : 
Buchholz psi functions on Wikipedia

\item http://www.madore.org/\%7Edavid/math/ordtrees.pdf : 
Ordinal trees

\item https://johncarlosbaez.wordpress.com/2016/06/29/large-countable-ordinals-part-1/ : Large Countable Ordinals by John Baez, Part 1
\item https://johncarlosbaez.wordpress.com/2016/07/04/large-countable-ordinals-part-2/ : Large Countable Ordinals by John Baez, Part 2
\item https://johncarlosbaez.wordpress.com/2016/07/07/large-countable-ordinals-part-3/ : Large Countable Ordinals by John Baez, Part 3

\item https://medium.com/@joshkerr/mind-blown-the-fast-growing-hierarchy-for-laymen-aka-enormous-numbers-d9a865c6443b : Mind blown: the fast growing hierarchy for laymen — aka enormous numbers

\item https://sites.google.com/site/largenumbers/home : 
Sbiis Saibian's Large Number Site

\item https://www.youtube.com/playlist?list=PLUZ0A4xAf7nkaYHtnqVDbHnrXzVAOxYYC :
Extremely large numbers (videos) 

\item https://www.youtube.com/playlist?list=PL3A50BB9C34AB36B3 :
Ridiculously huge numbers (videos)

\item http://forums.xkcd.com/viewtopic.php?f=14\&t=7469 : 
My number is bigger !

\item http://www.cl.cam.ac.uk/\%7Ejrh13/papers/reflect.html : 
Metatheory and Reflection in Theorem Proving: A Survey and Critique by John Harrison

\item http://math.stanford.edu/\%7Efeferman/papers/penrose.pdf : 
Penrose's Gödelian argument by Solomon Feferman

\item http://www.turingarchive.org/browse.php/B/15 : 
Systems of logic based on ordinals by Alan Turing

\item https://coq.inria.fr/documentation : 
Coq documentation

\item http://wiki.portal.chalmers.se/agda/pmwiki.php?n=Main.Documentation : 
Agda documentation

\end{itemize}


\end{document}

