User blog comment:Rgetar/Sharing thoughts/@comment-80.98.179.160-20180104160030/@comment-32213734-20180106110100

Formally, tetrarion is not defined for ordinals. We may, however, extend tetration to ordinals same way as exponentiation: I think that for tetration as defined here ω ↑↑ α = ε0 for all α ≥ ω
 * α ↑↑ 0 = 1
 * α ↑↑ (β + 1) = α ↑ (α ↑↑ β)
 * if β is a limit ordinal, then α ↑↑ β is the limit of the α ↑↑ δ for all δ < β

(Also, I think, if we apply to ω pentation or any BEAF operation defined same way, we cannot go beyond ε0).

But ordinal tetration may be defined other ways. At MathSE there is a definition, which is different for finite and infinite α: Then yes, this does work. But I would not name this "tetration"... For such operations I made up "up-down-arrow notation" which is "merger" of up-arrow and down-arrow notations: I was thinking to name "↕↕" as "tetrition" or something. and so on. Then whereas for pentation defined same way as I defined tetration here We can define up-down-arrow modification of BEAF, and this will work. In this case, I think, {ω, ...} will be roughly correspond to the same (reversed) array of Veblen function variables (to array of generalized Veblen function variables for multi-dimentional BEAF array).
 * α ↑↑ (β + 1) = α ↑ (α ↑↑ β) for finite α
 * α ↑↑ (β + 1) = (α ↑↑ β) ↑ (α ↑↑ β) for infinite α
 * α ↕↕ (β + 1) = (α ↕↕ β) ↑ (α ↕↕ β)
 * α ↑↑ (β + 1) = α ↑ (α ↑↑ β)
 * α ↓↓ (β + 1) = (α ↓↓ β) ↑ α
 * α ↕↕↕ (β + 1) = (α ↕↕↕ β) ↕↕ (α ↕↕↕ β)
 * ω ↕↕↕ 2 = ε0
 * ω ↕↕↕ 3 = εε 0
 * ω ↕↕↕ ω = ζ0
 * ω ↑↑↑ 2 = ε0
 * ω ↑↑↑ 3 = ε0
 * ω ↑↑↑ ω = ε0

But I do not use up-down-arrow modification of BEAF. I use simpler variation. First, BEAF starts from exponentiation, but I start from "zeration" α + 1. Second, in BEAF "empty" variables are ones, and in my notation "empty" variables are zeros. Third, in BEAF {α, ...} sometimes all array is filled with α, but in my notation α is always appeared no more one time in array (not counting "base" α). I think, this BEAF feature complicates calculations and does not gain much speed, but I set to α only the "strongest" part of array. For example, {α, 1, 1, 1, 1, 2} in my rules would be {α, 1, 1, 1, α} instead of {α, α, α, α, α}, and {10, 1 (1) 2} would be {10, 1, 1, 1, 1, 1, 1, 1, 1, 2} (here "10" is "coordinates" of "2") instead of {10, 10, 10, 10, 10, 10, 10, 10, 10, 10}, etc. Also, I use [] instead of {}, "reversed" order of arrays ("strongest-left" notation, as in Veblen function or in decimal numbering system), "base" is outside [], that is "[]α", coordinates arrays instead of inter-dimensional separators. So, in my notation least []ω for two-dimentional array is SVO, for "legiattic"-level array is BHO and so on.