Mega-Extended First-order Array Notation
Mega-Extended First-order Array Notation (MExFoAN) is the seventh part of almighty array notation. A valid expression in MExFoAN is of the form a*(a, b X c X d X e X ... X n) where a, b, c, d, e, ..., n ≥ 1, and X are the separators.
Definition
The Hyper-Extended First-order Array Notation has the following form:
a*(a, b X c X d X e X ... X n) where a, b, c, d, e, ..., n ≥ 1, and X are the separators.
The separator can come in many forms, such as {3}, {1, 4, 5}, {1, 1, 3 {2} 2}.
The first entry of the array is the base, the number after it is the iterator.
The {1} separator stands for comma.
In this extension, the separators are the comma, the exclamation mark (!) [not to be confused with the factorial operation], and {x A n} where x is an expression, A is a separator, and n is an integer > 1.
Rules
Empty array rule: a*() = 1, since a*(1) = a*() using the tailing rule.
Base rule: a*(a) = a and a*(a, b) = a^b
Tailing rule 1: a*(# 1 X #) = a*(#) where # indicates the rest of array (X can be any separators)
Tailing rule 2: a*(# X 1) = a*(#)
Tailing rule 3: a*(# {% 1} #) = a*(# {%} #) where % indicates the rest of array in the separator
Prime rule: a*(a, 1 #) = a
Recursion rule: a*(a, b, 1, 1, ..., 1, 1, c #) = a*(a, a, a, a, ..., a, a*(a, b - 1, 1, 1, ..., 1, 1, c #), c - 1 #) (w/ b number of a's) for a, b, c > 1 and the length of the array ≥ 4
If rules 1 - 7 do not apply: a*(a, b, c #) = a*(a, a*(a, b - 1, c #), c - 1 #)
Comma rule: a*(a, b {1} c #) = a*(a, b, c #)
If more than one rule(s) apply to an array, start from step 1, and find the nearest rule that applies to that array.
So a*(2, 1, 1, 1, 1, 1, 2, 2) = a*(2) = 2 (by rule 6) instead of a*(2, 2, 2, 2, ..., 2, a*(2, 0, 1, 1, ..., 1, 1, 2, 2), 1, 2) (by rule 7), which is ill-formed due to the occurrence of 0.
Followed by some previous rules by following:
Reuse the rules for linear arrays to that row (after separators other than commas)
a*(a, b {2} c) a*(a, a, 1, 1, 1, ..., 1, 1, 2 {2} c - 1) with b string of 1's using comma as a separator.
a*(a, b {2} 1 {2} ... {2} 1 {2} c) = a*(a, a, {2} 1 {2} ... {2} 1, 1, 1, ..., 1, 1, 2 {2} c - 1) with b string of 1's using comma as a separator.
a*(a, b {d} 1 {d} ... {d} 1 {d} c) = a*(a, a, {d - 1} 1 {d - 1} ... {d - 1} 1, 1, 1, ..., 1, 1, 2 {d - 1} c - 1) with b string of 1's using {d - 1} as a separator.
a*(a, b {1, 1, 1, ..., 1, 1, c, d%} 2) = a*(a, a {1, 1, 1, ..., 1, b, c - 1, d%} 2), which is different from a*(a, b, 1, 1, ..., 1, 1, c #) = a*(a, a, a, a, ..., a, a*(a, b - 1, 1, 1, ..., 1, 1, c #), c - 1 #).
a*(a, b {1 {2} c} 2) = a*(a, a {1 {1, 1, 1, ..., 1, 1, 2 {2} c - 1} 2), and so on. Nested arrays reuse the rules 2 through 5.
If n < m, a*(# {n} 1 {m} #) = a*(# {m} #).
At this part, we define the new rules by following:
Reuse the previous rules above and ignore the exclamation mark separators.
Define the simplest expression for that part as a*(a, b {1 ! 2} 2) = a*(a, a {1 { ... 1 {1, 2} 2 ... } 2} 2)
If the first entry before an exclamation mark is just 1, change the {1 ! n + 1 #} to Sb (b is the iterator), where S1 is {1 ! n #}, Sn + 1 = {1 {Sn} 2 ! n #}, then change the iterator to the base.
Now it's time to extend the Hyper-Extended First-order Array Notation, using the same rule as the previous chapters.
For the array 1 <1 ! 2> 2, let S1 be 1 ! 2, Sn to be <1 {S(n - 1)} 2>, hence a*(a, b {%} 2) = Sb. For example, S2 is equal to <1 {1 ! 2} 2>, so a*(a, b {1 <1 ! 2> 2} 2) = a*(a, a {Sa} 2)
For example, a*(3, 4 {1 <1 ! 2> 2} 2), we can do in that manner by:
a*(3, 2 {1 <1 ! 2> 2} 2) = a*(3, 3 {1 <1 {1 ! 2} 2> 2} 2)
a*(3, 3 {1 <1 ! 2> 2} 2) = a*(3, 3 {1 <1 {1 <1 {1 ! 2} 2> 2} 2> 2} 2)
Therefore, a*(3, 4 {1 <1 ! 2> 2} 2) is equal to a*(3, 3 {1 <1 {1 <1 {1 <1 {1 ! 2} 2> 2} 2> 2} 2> 2} 2).
For higher arrays in the MExFoAN, we can do the same rules in the manner as follows:
1 {1 ! 2 <1 ! 2> 2} 2 iterates Sn = 1 {S(n - 1)} 2 <1 ! 2> 2 where S1 = 1 <1 ! 2> 2.
1 {1 <1 ! 2> 3} 2 iterates Sn = 1 <1 {S(n - 1)} 2> 2 <1 ! 2> 2 where S1 = 1 <1 ! 2> 2.
1 {1 <1 ! 2> 1 ! 2} 2 iterates Sn = 1 <1 ! 2> 1 {S(n - 1)} 2 where S1 = 1 <1 ! 2> 2.
1 {1 <2 ! 2> 2} 2 iterates Sn = 1 <1 ! 2> 1 {S(n - 1)} 2 where S1 = 1 <1 ! 2> 2.
1 {1 <1 ! 3> 2} 2 iterates Sn = 1 <1 {S(n - 1)} 2 ! 2> 2 where S1 = 1 <1 ! 2> 2.
1 {1 <1 ! 1 ! 2> 2} 2 iterates Sn = 1 <1 ! 1 {S(n - 1)} 2> 2 where S1 = 1 <1 ! 2> 2.
1 {1 <1 ! 1 ! 1 ! 2> 2} 2 iterates Sn = 1 <1 <1 {S(n - 1)} 2> 2> 2 where S1 = 1 <1 ! 2> 2.
And so on. The other rules remain unchanged.
Examples:
a*(3, 2 {1 ! 2 <1 ! 2> 2} 2) = a*(3, 3 {1 {1 <1 ! 2> 2} 2 <1 ! 2> 2} 2)
a*(3, 2 {1 <1 ! 2> 3} 2) = a*(3, 3 {1 <1 {1 <1 ! 2> 2} 2> 2 <1 ! 2> 2} 2)
a*(3, 2 {1 <1 ! 2> 1 ! 2} 2) = a*(3, 3 {1 <1 ! 2> 1 {1 <1 ! 2> 2} 2} 2)
a*(3, 2 {1 <1 ! 3> 2} 2) = a*(3, 3 {1 <1 {1 <1 ! 2> 2} 2 ! 2> 2} 2)
a*(3, 2 {1 <1 ! 1 ! 2> 2} 2) = a*(3, 3 {1 <1 <1 {1 <1 ! 2> 2} 2> 2> 2} 2)
a*(3, 2 {1 <1 <1 ! 2> 2> 2} 2) = a*(3, 3 {1 <1 <1 {1 <1 ! 2> 2} 2> 2> 2} 2)
Analysis
Since the separators are getting complicated, I'll only provide the growth rate in a*(a, b {...} 2) from now on.
With this system of fundamental sequences for the OCF ψ, where I used ψ as the abbrivation of ψ0 here.
1 <2> 2 has level φ(ω, 0)
1 ! 2 <2> 2 has level ε(φ(ω, 0) + 1)
1 ! 1 ! 2 <2> 2 has level ζ(φ(ω, 0) + 1)
1 <2> 3 has level φ(ω, 1)
1 <2> 1, 2 has level φ(ω, ω)
1 <2> 1 {1 <2> 2} 2 has level φ(ω, φ(ω, 0))
1 <2> 1 ! 2 has level φ(ω + 1, 0)
1 <2> 1 ! 1 ! 2 has level φ(ω + 2, 0)
1 <2> 1 <2> 2 has level φ(ω2, 0)
1 <2> 1 <2> 1 <2> 2 has level φ(ω3, 0)
1 <3> 2 has level φ(ω^2, 0)
1 <4> 2 has level φ(ω^3, 0)
1 <1,2> 2 has level φ(ω^ω, 0)
1 <1 {2} 2> 2 has level φ(ω^ω^ω, 0)
1 <1 {1 ! 2}2 > 2 has level φ(ε0, 0)
1 <1{1 ! 1 ! 2}2> 2 has level φ(ζ0, 0)
1 <1 {1 <2> 2} 2> 2 has level φ(φ(ω, 0), 0)
1 <1 {1 <1 {1 ! 2} 2> 2} 2> 2 has level φ(φ(ε0, 0), 0)
1 <1 {1 <1 {1 <1 {1 !2} 2> 2} 2> 2} 2> 2 has level φ(φ(φ(ε0, 0), 0), 0)
...
1 <1 ! 2> 2 has level Γ0 (Feferman-Schütte ordinal) = φ(1, 0, 0)
1 ! 2 <1 ! 2> 2 has level ε(Γ0 + 1)
1 ! 1 ! 2 <1 ! 2> 2 has level ζ(Γ0 + 1)
1 <2> 2 <1 ! 2> 2 has level φ(ω, Γ0 + 1)
1 <1 {1 ! 2} 2> 2 <1 ! 2> 2 has level φ(ε0, Γ0 + 1)
1 <1 {1 <1 ! 2> 2} 2> 2 <1 ! 2> 2 has level φ(Γ0, 1)
1 <1 {1 <1 ! 2> 2} 2> 3 <1 ! 2> 2 has level φ(Γ0, 2)
1 <1 {1 <1 ! 2> 2} 2> 1, 2 <1 ! 2> 2 has level φ(Γ0, ω)
1 <1 {1 <1 ! 2> 2} 2> 1 {1 <1 ! 2> 2} 2 <1 ! 2> 2 has level φ(Γ0, Γ0)
1 <1 {1 <1 ! 2> 2} 2> 1 ! 2 <1 ! 2> 2 has level φ(Γ0 + 1, 0)
1 <1 {1 <1 ! 2> 2} 2> 1 ! 1 ! 2 <1 ! 2> 2 has level φ(Γ0 + 2, 0)
1 <1 {1 <1 ! 2> 2} 2> 1 <2> 2 <1 ! 2> 2 has level φ(Γ0 + ω, 0)
1 <1 {1 <1 ! 2> 2} 2> 1 <1 {1 <1 ! 2> 2} 2> 2 <1 ! 2> 2 has level φ(Γ0*2, 0)
1 <2 {1 <1 ! 2> 2} 2> 2 <1 ! 2> 2 has level φ(Γ0*ω, 0)
1 <3 {1 <1 ! 2> 2} 2> 2 <1 ! 2> 2 has level φ(Γ0*ω^2, 0)
1 <1, 2 {1 <1 ! 2> 2} 2> 2 <1 ! 2> 2 has level φ(Γ0*ω^ω, 0)
1 <1 {1 ! 2} 2 {1 <1 ! 2> 2} 2> 2 <1 ! 2> 2 has level φ(Γ0*ε0, 0)
1 <1 {1 <1 ! 2> 2} 3> 2 <1 ! 2> 2 has level φ(Γ0^2, 0)
1 <1 {1 <1 ! 2> 2} 1, 2> 2 <1 ! 2> 2 has level φ(Γ0^ω, 0)
1 <1 {1 <1 ! 2> 2} 1 {1 <1 ! 2> 2} 2> 2 <1 ! 2> 2 has level φ(Γ0^Γ0, 0)
1 <1 {2 <1 ! 2> 2} 2> 2 <1 ! 2> 2 has level φ(Γ0^Γ0^ω, 0)
1 <1{1 ! 2 <1 ! 2> 2}2> 2 <1 ! 2> 2 has level φ(ε(Γ0 + 1), 0)
1 <1 {1 <1 {1 <1 ! 2> 2} 2> 2 <1 / 2> 2} 2> 2 <1 / 2> 2 has level φ(φ(Γ0, 1), 0)
1 <1 ! 2> 3 has level Γ1 = φ(1, 0, 1)
1 <1 {1 <1 ! 2> 2} 2> 2 <1 ! 2> 3 has level φ(Γ0, Γ1 + 1)
1 <1 {1 <1 ! 2> 3} 2> 2 <1 ! 2> 3 has level φ(Γ1, 1)
1 <1 ! 2> 4 has level Γ2 = φ(1, 0, 2)
1 <1 ! 2> 1, 2 has level Γω = φ(1, 0, ω)
1 <1 ! 2> 1 {1 <1 ! 2> 2} 2 has level Γ(Γ0) = φ(1, 0, Γ0)
1 <1 ! 2> 1 ! 2 has level φ(1, 1, 0)
1 <1 ! 2> 2 ! 2 has level Γ(φ(1, 1, 0) + 1)
1 <1 ! 2> 1 ! 3 has level φ(1, 1, 1)
1 <1 ! 2> 1 ! 1 ! 2 has level φ(1, 2, 0)
1 <1 ! 2> 1 ! 1 ! 1 ! 2 has level φ(1, 3, 0)
1 <1 ! 2> 1 <2> 2 has level φ(1, ω, 0)
1 <1 ! 2> 1 <1{1! 2}2> 2 has level φ(1, Γ0, 0)
1 <1 ! 2> 1 <1 ! 2> 2 has level φ(2, 0, 0)
1 <1 ! 2> 2 <1 ! 2> 2 has level Γ(φ(2, 0, 0) + 1)
1 <1 ! 2> 1 <1 {1 <1 ! 2> 1 <1 ! 2> 2} 2> 2 <1 ! 2> 2 has level φ(1, φ(2, 0, 0), 1)
1 <1 ! 2> 1 <1 ! 2> 3 has level φ(2, 0, 1)
1 <1 ! 2> 1 <1 ! 2> 1 ! 2 has level φ(2, 1, 0)
1 <1 ! 2> 1 <1 ! 2> 1 <2> 2 has level φ(2, ω, 0)
1 <1 ! 2> 1 <1 ! 2> 1 <1 ! 2> 2 has level φ(3, 0, 0)
1 <1 ! 2> 1 <1 ! 2> 1 <1 ! 2> 1 <1 ! 2> 2 has level φ(4, 0, 0)
1 <2 ! 2> 2 has level φ(ω, 0, 0)
1 <2 ! 2> 3 has level φ(ω, 0, 1)
1 <2 ! 2> 1 ! 2 has level φ(ω, 1, 0)
1 <2 ! 2> 1 <1 ! 2> 2 has level φ(ω + 1, 0, 0)
1 <2 ! 2> 1 <2 ! 2> 2 has level φ(ω2, 0, 0)
1 <3 ! 2> 2 has level φ(ω^2, 0, 0)
1 <1, 2 ! 2> 2 has level φ(ω^ω, 0, 0)
1 <1 {1 ! 2} 2 ! 2> 2 has level φ(ε0, 0, 0)
1 <1 {1 <1 ! 2> 2} 2 ! 2> 2 has level φ(Γ0, 0, 0)
1 <1 ! 3> 2 has level φ(1, 0, 0, 0)
1 <1 ! 3> 3 has level φ(1, 0, 0, 1)
1 <1 ! 3> 1 ! 2 has level φ(1, 0, 1, 0)
1 <1 ! 3> 1 <2> 2 has level φ(1, 0, ω, 0)
1 <1 ! 3> 1 <1 ! 2> 2 has level φ(1, 1, 0, 0)
1 <1 ! 3> 1 <2 ! 2> 2 has level φ(1, ω, 0, 0)
1 <1 ! 3> 1 <1 ! 3> 2 has level φ(2, 0, 0, 0)
1 <2 ! 3> 2 has level φ(ω, 0, 0, 0)
1 <1 {1 <1 ! 3> 2} 2 ! 3> 2 has level φ(φ(1, 0, 0, 0), 0, 0, 0)
1 <1 ! 4> 2 has level φ(1, 0, 0, 0, 0)
1 <1 ! 5> 2 has level φ(1, 0, 0, 0, 0, 0)
1 <1 ! 1, 2> 2 has level ψ(Ω^Ω^ω) (small Veblen ordinal)
1 <2 ! 1, 2> 2 has level ψ(Ω^(Ω^ω*ω))
1 <1 ! 2, 2> 2 has level ψ(Ω^Ω^(ω+1))
1 <1 ! 1, 3> 2 has level ψ(Ω^Ω^(ω2))
1 <1 ! 1, 1, 2> 2 has level ψ(Ω^Ω^(ω^2))
1 <1 ! 1 {2} 2> 2 has level ψ(Ω^Ω^(ω^ω))
1 <1 ! 1 {1 ! 2} 2> 2 has level ψ(Ω^Ω^ψ(Ω))
1 <1 ! 1 {1 <1 ! 2> 2} 2> 2 has level ψ(Ω^Ω^ψ(Ω^Ω))
1 <1 ! 1 {1 <1 ! 1, 2> 2} 2> 2 has level ψ(Ω^Ω^ψ(Ω^Ω^ω))
...
1 <1 ! 1 ! 2> 2 has level ψ(Ω^Ω^Ω) (large Veblen ordinal)
1 ! 2 <1 ! 1 ! 2> 2 has level ψ(Ω^Ω^Ω + Ω)
1 <1 ! 2> 2 <1 ! 1 ! 2> 2 has level ψ(Ω^Ω^Ω + Ω^Ω)
1 <1 ! 1 ! 2> 3 has level ψ(Ω^Ω^Ω*2)
1 <1 ! 1 ! 2> 1, 2 has level ψ(Ω^Ω^Ω*ω)
1 <1 ! 1 ! 2> 1 ! 2 has level ψ(Ω^(Ω^Ω + 1))
1 <1 ! 1 ! 2> 1 <2> 2 has level ψ(Ω^(Ω^Ω + ω))
1 <1 ! 1 ! 2> 1 <1 ! 2> 2 has level ψ(Ω^(Ω^Ω + Ω))
1 <1 ! 1 ! 2> 1 <1 ! 1, 2> 2 has level ψ(Ω^(Ω^Ω + Ω^ω))
1 <1 ! 1 ! 2> 1 <1 ! 1 ! 2> 2 has level ψ(Ω^(Ω^Ω*2))
1 <2 ! 1 ! 2> 2 has level ψ(Ω^(Ω^Ω*ω))
1 <1 ! 2 ! 2> 2 has level ψ(Ω^Ω^(Ω + 1))
1 <1 ! 1, 2 ! 2> 2 has level ψ(Ω^Ω^(Ω + ω))
1 <1 ! 1 ! 3> 2 has level ψ(Ω^Ω^(Ω2))
1 <1 ! 1 ! 1, 2> 2 has level ψ(Ω^Ω^(Ωω))
1 <1 ! 1 ! 1 ! 2> 2 has level ψ(Ω^Ω^Ω^2)
1 <1 ! 1 ! 1 ! 1 ! 2> 2 has level ψ(Ω^Ω^Ω^3)
1 <1 <2> 2> 2 has level ψ(Ω^Ω^Ω^ω)
1 <1 <1 {1 <1 ! 2> 2} 2> 2> 2 has level ψ(Ω^Ω^Ω^ψ(Ω^Ω))
1 <1 <1 ! 2> 2> 2 has level ψ(Ω^Ω^Ω^Ω)
1 <1 <1 ! 2> 1 ! 2> 2 has level ψ(Ω^Ω^Ω^(Ω+1))
1 <1 <1 ! 2> 1 <1 ! 2> 2> 2 has level ψ(Ω^Ω^Ω^(Ω2))
1 <1 <2 ! 2> 2> 2 has level ψ(Ω^Ω^Ω^(Ωω))
1 <1 <1 ! 3> 2> 2 has level ψ(Ω^Ω^Ω^Ω^2)
1 <1 <1 ! 1 ! 2> 2> 2 has level ψ(Ω^Ω^Ω^Ω^Ω)
1 <1 <1 <1 ! 2> 2> 2> 2 has level ψ(Ω^Ω^Ω^Ω^Ω^Ω)
As you can see each layer of separators adds two Ω's into the ordinal power of the first uncountable ordinal, and hence the limit of the level is ψ(ε(Ω+1)) = ψ(Ω_2) (which is the Bachmann-Howard ordinal).