Hyperfactorial array notation

Hyperfactorial array notation is a large number notation invented by Lawrence Hollom.Lawrence Hollom Hyperfactorial array notation Archived 2021-11-13. It was first developed in April 2013.
== Basics ==
Each array consists of a finite sequence of zero or more entries. Each entry consists of either a positive integer or another array (and these arrays can only nest finitely). An example of a valid array is
:[1,1,[1,2,[3],4,[],1,1],1,3,10,1,[4,[4,3,1],5,6],1,[1,2],1,1]
First, we define the following notation:
:\(n!m = n\uparrow^{m}(n-1)\uparrow^{m}(n-2)\cdots 4\uparrow^{m} 3 \uparrow^{m} 2 \uparrow^{m} 1\),
where \(\uparrow\) is the arrow notation for the hyper operator.
Hyperfactorial array notation defines a function n!A, where A is an array. An example of a well-formed expression in hyperfactorial array notation is 5![6, [7, 8], 9].
In mathematics, the notion of a map is defined as a pair of the domain and the assignment, but the domain of hyperfactorial array notation, i.e. the set of all valid expressions in hyperfactorial array notation, is undefined. In particular, it is ambiguous when n!m is a valid expression for integers n and m. If we only consider the basic idea using the arrow notation, which is originally defined for tuples of positive integers, n!m is a valid expression only for positive integers n and m, but the creator considers more general a case.
According to the creator, n!0 coincides with n! because the creator perhaps uses an extension of the hyperoperator to allow \(\uparrow^0\) to be the multiplication. Also, n!(-1) is expressed as "addition", which perhaps was a typo of the explanation that the creator considers extension of the hyperoperators to allow \(\uparrow^{-1}\) to be the addition. In that case, \(n!(-1) = n+(n-1)+(n-2)+{\cdots 4}+3+2+1 = \frac{n(n+1)}{2}\).
== Linear arrays ==
Define the active entry as the first entry in the array that is not 1. This is analogous to BEAF's pilot.
Define the receiving entry as the entry before the active entry, if the active entry is not the first entry.
The first entry is the main entry.
The symbol ◆ can be anything.
The symbol ◇ means only 1's and separators
*Any ones may be cropped off the end of an array:
*: [@, 1] = [@]
*Any empty array can simply be replaced with n:
*: [] = n
*If the first entry is a number k>1:
*: f(a) = a![k-1,@]
*: n![k,@] = fn(n)
*Otherwise:
*: n![1,k] = n![n,k-1]
*:n![◇1,k@] = n![◇[◇1,1@],k-1@]
*Sometimes the active entry is an array. In that case:
*:Use its main entry
*:If the main entry is 1 reduce the array separately until either it produces a number or the main entry is no longer 1.
Where @ indicates the rest of the array.
== Dimensional arrays ==
(n) means next n-space. A comma is the same as (0).
▲ is any w/ chain.
▼ is an array with something before the first (k) divider.
▽ is an array without anything before the first (k) divider.
▬ is a string of ▽w(x)/'s for any x
◆ is any array or list of entries and separators.
▮ is a chain of ['s.
* ◆[▬▽w(k)/[q◆]▲]◆ = ◆[▬[1(k)1(k)1(k)...(k)1(k)2]w(k)/[1◆]▲]◆
*: The ▽ in ◆[▬▽w(k)/[q◆]▲]◆ becomes [1(k)1(k)...1(k)2] with q copies of 1, q is replaced with 1, and the rest of the array does not change.
* ◆[▬▼w(k)/[q◆]▲]◆
*: Evaluate ▼ like this:
*: When it is necessary to replace the receiving array with ▼ but the active entry changed to 1, or to make a w/ chain of ▼'s with the active entry decreased by one, use ▼w(k)/[q◆]▲ with the changes to ▼.
* Remove trailing 1's.
*If no k is specified for w(k)/, use 0, or w,/
== Analysis ==
HAN is quite new compared to other array notations, and its growth rate has not yet been agreed on. Hollom believes that it reaches all the way to the Takeuti-Feferman-Buchholz ordinal without a proof. n!n is smaller than the n+1th Ackermann number, and larger than the n-1th Ackermann number.
== Sources ==
== See also ==
*Up-arrow notation
*BEAF
*Bird's array notation
*Factorial numbers: minor giaxul hugexul enormaxul destruxul extremexul
ja:超階乗配列表記
zh:超階乘數陣記號
Category:Notations
Category:Functions
Category:Factorials
Category:Array Notations