User blog:Undeadlift/Supernova Array

The Supernova Array is a method of creating very large numbers using recursion of Up-Arrow Notation in a simple linear notation. It is loosely based on the Ultra-Factorial Funcional Array.

Definitions and Examples

 * Base Function: \(S(a,b) = a\uparrow^{(b)}a\), where \(b\) is the number of \(\uparrow)\'s.
 * \(S(a,b,0) = S(a,b)\)
 * \(S(a,b,c) = S(a,S(a,b),c-1)\)
 * \(S(a,b,c,0) = S(a,b,c)\)
 * \(S(a,b,c,d) = S(a,b,S(a,b,c),d-1)\)
 * \(S(a,b,c,...x,y,z) = S(a,b,c,...x,S(a,b,c,...x,y),z-1)\)

In general, replace the second to the last input (\(y\)) with the entire function excluding the last input (\(z\)), then subtract 1 from the last input. Do the same for the function within, and the subsequent function, and the function after that, etc. until you reach the base function \(S(a,b)\).

\(S(1,1) = 1\uparrow 1 = 1\)

\(S(2,2) = 2\uparrow \uparrow 2 = 4\)

\(S(3,3) = 3\uparrow \uparrow \uparrow 3\) = tritri

\(S(10,10) = 10\uparrow^{(10)} 10\) = tridecal

\(S(3,1,1) = S(3,S(3,1),0) = S(3,S(3,1)) = S(3,3\uparrow 3) = S(3,27)\)

\(S(3,3,1) = S(3,S(3,3)) = S(3,tritri)\)

\(S(10,10,1) = S(10,S(10,10)) = S(10,tridecal)\)

\(S(3,3,3) = S(3,(S,3,3),2) = S(3,tritri,2) = S(3,S(3,tritri),1) = S(3,S(3,S(3,tritri)),0)\)

Extended Notations
In extended notations, parentheses are added into the array in order to apply systems of recursion. In general, \(S(a,b)_n = S(a,a,a,...a)_{n-1}\), where \(n\) is the number of parentheses. Alternatively  \(S(((a,b)))\) can be written as \(S(a,b)_3\).
 * \(S((a,b)) = S(a,a,a,...a)\), where there are \(b\) number of \(a\)'s
 * \(S((a,b,c,...x,y,z)) = S((a,b,c,...x,S((a,b,c,...x,y)),z-1))\)
 * \(S(((a,b))) = S((a,a,a...,a))\), where there are \(b\) number of \(a\)'s
 * \(S(((a,b,c,...x,y,z))) = S(((a,b,c,...x,S(((a,b,c,...x,y))),z-1)))\)

There may be cases wherein a simplified notation may be desirable in the case of \(S(a,b)_{S(a,b)}\) may be needed. In this case, a subscript is added to S, such that the aforementioned function can be rewritten as \(S_1(a,b)\). In general,
 * \(S_0(a,b) = S(a,b)\)
 * \(S_{n+1}(a,b) = S(a,b)_{S_n(a,b)}\), where there are \(S_n(a,b)\) number of parentheses in \(S(((...(a,b)))...)\)

Likewise, a simplified notation may be desired for functions such as \(S_{S(a,b)}(a,b)\). A superscript is instead assigned to S, such that the aforementioned function may be rewritten as \(S^1(a,b)\). In general,
 * \(S^0(a,b) = S(a,b)\)
 * \(S^{n+1}(a,b) = S_{S^n(a,b)}(a,b)\)

Furthermore, \(S^{S(a,b)}(a,b)\) could also use a more simplified notation. A subscript is then added BEFORE S, such that the aforementioned function may be rewritten as \(_1S(a,b)\). In general,
 * \(_0S(a,b) = S(a,b)\)
 * \(_{n+1}S(a,b) = S^{_nS(a,b)}(a,b)\)

Finally, a function such as \(_{S(a,b)}(S(a,b)\) would also benefit from simplification. A superscript is then added BEFORE S, such that the aforementioned function may be rewritten as \(^1S(a,b)\). In general,
 * \(^0S(a,b) = S(a,b)\)
 * \(^{n+1}S(a,b) = _{_nS(a,b)}S(a,b)\)