# Bird's array notation

This article was considered for deletion at Wikipedia on January 9 2019. This is a backup of Wikipedia:Bird's_array_notation. All of its AfDs can be found at Wikipedia:Special:PrefixIndex/Wikipedia:Articles_for_deletion/Bird's_array_notation, the first at Wikipedia:Wikipedia:Articles_for_deletion/Bird's_array_notation. Purge

The topic of this article may not meet Wikipedia's general notability guideline. But, that doesn't mean someone has to… establish notability by citing reliable secondary sources that are independent of the topic and provide significant coverage of it beyond its mere trivial mention. (December 2018)

Primary sources

DPv2 loves original research.

Bird's array notation is a large number notation invented by the English mathematician Chris Bird during the early 21st century. It is useful because it can express numbers far larger than those that are expressible in scientific notation.

Bird's array notation includes five parts, which are linear array notation[1], multidimensional array notation[2], hyperdimensional array notation[3], nested array notation[4], and hyper-nested array notation[5].

## Linear array notation

In its most basic form, an array is defined as a string of integers enclosed in a pair of curly brackets and separated by commas. The general form of an array is $\{a,b,c,d,e,\ldots,x\}$, where $a$, $b$, $c$, $d$, $e$ and $x$ are called entries. Examples of arrays are $\{3,5,9\}$ and $\{2,5,968,8,4^{100}\}$.

It is valid for an entry in an array itself to be an array. For example, expression $\{4,6,\{2,3,8\},567,\{49\}\}$ denotes a valid array.

For linear arrays, the rules are defined are follows[6]:

• Rule 1: If there is only one entry, then $\{a\}=a$
• Rule 2: If there are only two entries, then $\{a,b\}=a^b$
• Rule 3: If the last entry is 1, then let it be removed

Template:Spaces$\{a,b,c,d,\ldots,x,1\} = \{a,b,c,d,\ldots,x\}$

• Rule 4: If the second entry is 1, then $\{a,1,c,d, \ldots,x\} = a$
• Rule 5: If the third entry is 1, then apply the following:

Template:Spaces$\{a, b, 1, 1,\ldots, d, e,\ldots,x\} = \{a, a, a,\ldots,\{a, b-1, 1,\ldots, 1, d, e,\ldots,x\}, d-1, e,\ldots, x\}$

Template:SpacesThe '...' between the 1's represents an unbroken string of 1's. Noted that there can be any number (including one) of 1's

• Rule 6: If none of the rules mentioned above applies, then apply the following:

Template:Spaces$\{a,b,c,d,\ldots,x\} = \{a,\{a,b-1,c,d,\ldots,x\},c-1,d,\ldots,x\}$

### Arrays with three entries

If an array has three entries (i.e. array of the form $\{a,b,c\}$), the rules can be rewritten as:

Template:Spaces$\{a,b,c\} = \{a,\{a,b-1,c\},c-1\}$

• Examples:
• $\{3,4,2\} = \{3,\{3,3,2\},1\}$

Template:Spaces={$3,${$3,3,2$}}

Template:Spaces={$3,${$3,${$3,2,2$}$,1$}}

Template:Spaces={$3,${$3,${$3,2,2$}}}

Template:Spaces={$3,${$3,${$3,${$3,1,2$}$,1$}}}

Template:Spaces={$3,${$3,${$3,${$3,1,2$}}}}

Template:Spaces={$3,${$3,${$3,3$}}}

Template:Spaces={$3,${$3,3^3$}}

Template:Spaces={$3,3^{3^3}$}

Template:Spaces=$3^{3^{3^3}}$

Template:Spaces=$3^{3^{27}}$

Template:Spaces=$3^{7,625,597,484,987}$ = approx. $1.258$×$10^{3,638,334,640,024}$

• Template:Spaces{$4,5,3$}={$4,${$4,4,3$}$,2$}

Template:Spaces={$4,${$4,${$4,3,3$}$,2$}$,2$}

Template:Spaces={$4,${$4,${$4,${$4,2,3$}$,2$}$,2$}$,2$}

Template:Spaces={$4,${$4,${$4,${$4,${$4,1,3$}$,2$}$,2$}$,2$}$,2$}

Template:Spaces={$4,${$4,${$4,${$4,4,2$}$,2$}$,2$}$,2$}

Template:Spaces={$4,${$4,${$4,${$4,${$4,3,2$}$,1$}$,2$}$,2$}$,2$}

Template:Spaces={$4,${$4,${$4,${$4,${$4,3,2$}}$,2$}$,2$}$,2$}

Template:Spaces={$4,${$4,${$4,${$4,${$4,${$4,2,2$}$,1$}}$,2$}$,2$}$,2$}

Template:Spaces={$4,${$4,${$4,${$4,${$4,${$4,2,2$}}}$,2$}$,2$}$,2$}

Template:Spaces={$4,${$4,${$4,${$4,${$4,${$4,${$4,1,2$}$,1$}}}$,2$}$,2$}$,2$}

Template:Spaces={$4,${$4,${$4,${$4,${$4,${$4,${$4,1,2$}}}}$,2$}$,2$}$,2$}

Template:Spaces={$4,${$4,${$4,${$4,${$4,${$4,${$4,4$}}}}$,2$}$,2$}$,2$}

Template:Spaces={$4,${$4,${$4,${$4,${$4,${$4,${$4,4$}}}}$,2$}$,2$}$,2$}

(after skipping 3 steps)={$4,${$4,${$4,4^{4^{4^4}},2$}$,2$}$,2$}

At this point, the expansion is getting extremely cumbersome, so we'll start to skip steps.

Template:Spaces={$4,${$4,${$4,${$4,(4^{4^{4^4}}-1),2$}$,1$}$,2$}$,2$}

Template:Spaces={$4,${$4,${$4,${$4,(4^{4^{4^4}}-1),2$}}$,2$}$,2$}

Template:Spaces={$4,${$4,${$4,${$4,${$4,(4^{4^{4^4}}-2),2$}}}$,2$}$,2$}

Template:Spaces... ...

Template:Spaces={$4,${$4,${$4,\underbrace{...}_{with4^{4^{4^4}} layers of curly brackets},${$4,1,2$}$...$}}}

Template:Spaces={$4,${$4,\underbrace{4^{4^{4^4}}}_{4^{4^{4^4}}},2$}$,2$}

Template:Spaces={$4,\underbrace{\underbrace{4^{4^{4^4}}}_{4^{4^{4^4}}}}_{4^{4^{4^4}}},2$}

Template:Spaces=$\underbrace{\underbrace{\underbrace{4^{4^{4^4}}}_{4^{4^{4^4}}}}_{4^{4^{4^4}}}}_{4^{4^{4^4}}}$ or $4\uparrow\uparrow\uparrow5$ (see Knuth up-arrow notation)

In general, Bird's 3-entry arrays of the form {$a,b,c$} correspond to $a\uparrow^cb$ in Knuth up-arrow notation or $f_{c+2}(a)$ in fast-growing hierarchy.

### Arrays with four entries

If an array has four entries (i.e., array of the form {$a,b,c,d$}), the rules can be rewritten as:

Template:Spaces{$a,b,1,d$}={$a,a,${$a,b-1,1,d$}$,d-1$}

Template:Spaces{$a,b,c,d$}={$a,${$a,b-1,c,d$}$,c-1,d$}

• Examples:
• {$3,4,1,2$}={$3,3,${$3,3,1,2$}$,1$}

Template:Spaces={$3,3,${$3,3,1,2$}}

Template:Spaces={$3,3,${$3,3,${$3,2,1,2$}}}

Template:Spaces={$3,3,${$3,3,${$3,3,${$3,1,1,2$}}}}

Template:Spaces={$3,3,${$3,3,${$3,3,3$}}}

Template:Spaces=$\underbrace{3\uparrow\uparrow\uparrow...\uparrow\uparrow\uparrow3}_{\underbrace{3\uparrow\uparrow\uparrow...\uparrow\uparrow\uparrow3}_{3\uparrow\uparrow\uparrow3}}$

• Template:Spaces{$3,3,3,2$}={$3,${$3,2,3,2$}$,2,2$}

Template:Spaces={$3,${$3,${$3,1,3,2$}$,2,2$}$,2,2$}

Template:Spaces={$3,${$3,3,2,2$}$,2,2$}

Template:Spaces={$3,${$3,${$3,2,2,2$}$,1,2$}$,2,2$}

Template:Spaces={$3,${$3,${$3,${$3,1,2,2$}$,1,2$}$,1,2$}$,2,2$}

Template:Spaces={$3,${$3,${$3,3,1,2$}$,1,2$}$,2,2$}

• Template:Spaces{$5,3,2,3$}={$5,${$5,2,2,3$}$,1,3$}

Template:Spaces={$5,${$5,${$5,1,2,3$}$,1,3$}$,1,3$}

Template:Spaces={$5,${$5,5,1,3$}$,1,3$}

Template:Spaces={$5,${$5,5,${$5,4,1,3$}$,2$}$,1,3$}

Template:Spaces={$5,${$5,5,${$5,5,${$5,3,1,3$}$,2$}$,2$}$,1,3$}

Template:Spaces={$5,${$5,5,${$5,5,${$5,5,${$5,2,1,3$}$,2$}$,2$}$,2$}$,1,3$}

Template:Spaces={$5,${$5,5,${$5,5,${$5,5,${$5,5,${$5,1,1,3$}$,2$}$,2$}$,2$}$,2$}$,1,3$}

Template:Spaces={$5,${$5,5,${$5,5,${$5,5,${$5,5,5,2$}$,2$}$,2$}$,2$}$,1,3$}

In general, Bird's 4-entry array of the form {$a,b,c,d$} roughly corresponds to $f_{\omega{(d-1)}+c}(a)$ in fast-growing hierarchy. The famous Graham's Number can be given a lower bound and an upper bound of {$3,65,1,2$} and {$3,66,1,2$} respectively[7] using Bird's Array Notation.

It has also been proven that Bird's 4-entry array of the form {$a,b,c,d$} roughly corresponds to $a{\rightarrow}a{\rightarrow}...{\rightarrow}a{\rightarrow}(b-1){\rightarrow}(c+1)$ in Conway's chained arrow notation[8]

### Arrays with five or more entries

Now let's do some examples of expansion with arrays that have five or more entries.

• {$10,4,1,1,2$}={$10,10,10,${$10,3,1,1,2$}$,1$}

Template:Spaces={$10,10,10,${$10,3,1,1,2$}}

Template:Spaces={$10,10,10,${$10,10,10,${$10,2,1,1,2$}}}

Template:Spaces={$10,10,10,${$10,10,10,${$10,10,10,${$10,1,1,1,2$}}}}

Template:Spaces={$10,10,10,${$10,10,10,${$10,10,10,10$}}}

• {$10,3,1,2,1,6$}={$10,10,${$10,2,1,2,1,6$}$,1,1,6$}

Template:Spaces={$10,10,${$10,10,${$10,1,1,2,1,6$}$,1,1,6$}$,1,1,6$}

Template:Spaces={$10,10,${$10,10,10,1,1,6$}$,1,1,6$}

Template:Spaces= ... ...

In general, Bird's linear array notation have limit growth rate of $f_{\omega^\omega}(n)$ on the fast-growing hierarchy. Bird's linear array of the form {$a,b,c,d,e,...,x$} (with k entries) roughly corresponds to $f^b_{\omega^{k-2}x+...+\omega^2e+\omega{d}+c}(a)$ in fast-growing hierarchy.

## Multi-dimensional array notation

Bird introduces multi-dimensional array notation as an extension to linear array notation. Multi-dimensional array notation allows arrays in 2,3 or higher number of dimensions.

In order to go beyond linear array notation, Bird introduced the concept of separators and angle brackets. A separator is a number enclosed in a pair of square brackets that appears in an array. The lowest-level valid separator is [2], other examples of separators include [3],[4] and [28]. In general, the separator [2] separates 1-dimensional spaces (rows), [3] separates 2-dimensional spaces (planes) and [n] separates (n-1)-dimensional spaces.

Angle brackets are defined as follows[9]:

Template:Spaces$a\langle 1\rangle b=a,a,a,...,a$ (with b terms of a),and

Template:Spaces$a\langle n\rangle b=a\langle n-1 \rangle b[n]a \langle n-1\rangle b[n]\ \ldots\ [n]a\langle n-1 \rangle b$ (with b terms of a<n-1>b)

For multi-dimensional arrays, the rules are defined as follows[10]:

• Rule 1: If there is only one entry and one dimension, then $\{a\}=a$
• Rule 2: If there are only two entries and one dimension, then $\{a,b\}=a^b$
• Rule 3: If the last entry in any row or higher dimension is 1,then let it be removed

Template:Spaces $\{\#[a]1\} = \{\#\}$ and

Template:Spaces $\{\#[a]1[b]\#^*\} = \{\#[b]\#^*\}$

where $\#$ and $\#^*$ are strings of characters representing the remainder of an array

• Rule 4: If there are only two entries in first row, and the next non-1 entry (represented by c) is not the first entry in its row, then apply the following:

Template:Spaces\begin{align} \{a,b[n_1]1[n_2]1[n_3]\ \ldots\ 1[n_k]1,c\#\}\end{align}

Template:Spaces\begin{align} =\{& a\langle n_1-1\rangle b[n_1]a\langle n_2-1\rangle b[n_2]\ \ldots\ a\langle n_k-1\rangle b[n_k]\{a,b-1[n_1]1[n_2]1[n_3]\ \ldots\ 1[n_k]1,c\#\},c-1\#\}\end{align}

• Rule 5:If there are only two entries in first row, and the next non-1 entry (represented by c) is the first entry in its row, then apply the following:

Template:Spaces\begin{align} \{a,b[n_1]1[n_2]1[n_3]\ \ldots\ 1[n_k]c\#\}=\{& a\langle n_1-1\rangle b[n_1]a\langle n_2-1\rangle b[n_2]\ \ldots\ a\langle n_k-1\rangle b[n_k]c-1\#\}\end{align}

• Rule 6:If rules 1-5 do not apply and third entry is 1, then apply the following:

Template:Spaces\begin{align} \{a,b,1,\ \ldots\ ,1,c\#\}=\{& a,a,a,\ \ldots\ ,\{a,b-1,1,\ \ldots\,1,c\#\},c-1\#\}\end{align}

• Rule 7:If rules 1-6 do not apply, then apply the following:

Template:Spaces\begin{align} \{a,b,c\#\}=\{&a,\{a,b-1,c\#\},c-1\#\}\end{align}

### Planar arrays (two-dimensional arrays)

If an array has two dimensions, rule 4 and rule 5 can be rewritten as follows:

\begin{align} \{a,b[2]1[2]1[2]\ \ldots\ 1[2]1,c\#\} =\{& a\langle 1\rangle b[2]a\langle 1\rangle b[2]\ \ldots\ a\langle 1\rangle b[2]\{a,b-1[2]1[2]1[2]\ \ldots\ 1[2]1,c\#\},c-1\#\}\end{align},and

\begin{align} \{a,b[2]1[2]1[2]\ \ldots\ 1[n_k]c\#\}=\{& a\langle 1\rangle b[2]a\langle 1\rangle b[2]\ \ldots\ a\langle 1\rangle b[2]c-1\#\}\end{align}

Examples:

• \begin{align} \{10,6[2]2\} =\{10\langle 1\rangle 6[2]1\}\end{align}

Template:Spaces\begin{align} =\{10\langle 1\rangle 6\}\end{align}

Template:Spaces\begin{align} =\{10,10,10,10,10,10\}\end{align}

• \begin{align} \{10,3,2[2]2\} =\{10,\{10,2,2[2]2\},1[2]2\}\end{align}

Template:Spaces\begin{align} =\{10,\{10,2,2[2]2\}[2]2\}\end{align}

Template:Spaces\begin{align} =\{10,\{10,\{10,1,2[2]2\}[2]2\}[2]2\}\end{align}

Template:Spaces\begin{align} =\{10,\{10,10[2]2\}[2]2\}\end{align}

Template:Spaces\begin{align} =\{10,\{10\langle 1\rangle 10[2]1\}[2]2\}\end{align}

Template:Spaces\begin{align} =\{10,\{10\langle 1\rangle 10\}[2]2\}\end{align}

Template:Spaces\begin{align} =\{10,\{10,10,10,10,10,10,10,10,10,10\}[2]2\}\end{align}

Template:Spaces\begin{align} =\{10\langle 1\rangle\{10,10,10,10,10,10,10,10,10,10\}\}\end{align}

Template:Spaces\begin{align} =\underbrace{\{10,10,10\ \ldots\ 10,10\}}_{with \{10,10,10,10,10,10,10,10,10,10\} entries}\end{align}

• \begin{align} \{10,8[2]3\} =\{10\langle 1\rangle 8[2]2\}\end{align}

Template:Spaces\begin{align} =\{10,10,10,10,10,10,10,10[2]2\}\end{align}

• \begin{align} \{10,3[2]1,2\} =\{10\langle 1\rangle 3[2]\{10,2[2]1,2\},1\}\end{align}

Template:Spaces\begin{align} =\{10\langle 1\rangle 3[2]\{10,2[2]1,2\}\}\end{align}

Template:Spaces\begin{align} =\{10,10,10[2]\{10,2[2]1,2\}\}\end{align}

Template:Spaces\begin{align} =\{10,10,10[2]\{10\langle 1\rangle 2[2]\{10,1[2]1,2\},1\}\}\end{align}

Template:Spaces\begin{align} =\{10,10,10[2]\{10\langle 1\rangle 2[2]\{10,1[2]1,2\}\}\}\end{align}

Template:Spaces\begin{align} =\{10,10,10[2]\{10\langle 1\rangle 2[2]10\}\}\end{align}

Template:Spaces\begin{align} =\{10,10,10[2]\{10,10[2]10\}\}\end{align}

• \begin{align} \{3,4[2]1[2]2\} =\{3\langle 1\rangle 4[2]3\langle 1\rangle 4[2]1\}\end{align}

Template:Spaces\begin{align} =\{3\langle 1\rangle 4[2]3\langle 1\rangle 4\}\end{align}

Template:Spaces\begin{align} =\{3,3,3,3[2]3,3,3,3\}\end{align}

In general, Bird's two-dimensional arrays of the form \begin{align}\{a_1,a_2,a_3,a_4,a_5...,a_x[2]b_1,b_2,b_3,...,b_y[2]...[2]n_1,n_2,n_3,...,n_z\}\end{align} (with n rows) roughly correspond to $f^{a_2}_{\omega^{\omega{n-1}+{(z-1)}}{n_z}+\ \ldots\ +\omega^{\omega{n-1}+2}{n_3}+\omega^{\omega{n-1}+1}{n_2}+\omega^{\omega{n-1}}{n_1}+\omega^{\omega+{(y-1)}}{b_y}+\ \ldots\ +\omega^{\omega+2}{b_3}+\omega^{\omega+1}{b_2}+\omega^{\omega}{b_1}+\omega^{x-3}{a_x}+\ \ldots\ +\omega^2{a_5}+\omega{a_4}+a_3}(a_1)$ in fast-growing hierarchy.

### Multidimensional arrays of 3 or more dimensions

Now let's do some examples of expansion with arrays of 3 or more dimensions.

• \begin{align} \{8,7[3]2\} =\{8\langle 2\rangle 7[3]1\}\end{align}

Template:Spaces\begin{align} =\{8\langle 2\rangle 7\}\end{align}

Template:Spaces\begin{align} =\{8\langle 1\rangle 7[2]8\langle 1\rangle 7[2]8\langle 1\rangle 7[2]8\langle 1\rangle 7[2]8\langle 1\rangle 7[2]8\langle 1\rangle 7[2]8\langle 1\rangle 7\}\end{align}

\begin{align} =\{8,8,8,8,8,8,8[2]8,8,8,8,8,8,8[2]8,8,8,8,8,8,8[2]8,8,8,8,8,8,8[2]8,8,8,8,8,8,8[2]8,8,8,8,8,8,8[2]8,8,8,8,8,8,8\}\end{align}

• \begin{align} \{10,4[3]126\} =\{10\langle 2\rangle 4[3]125\}\end{align}

Template:Spaces\begin{align} =\{10\langle 1\rangle 4[2]10\langle 1\rangle 4[2]10\langle 1\rangle 4[2]10\langle 1\rangle 4[3]125\}\end{align}

Template:Spaces\begin{align} =\{10,10,10,10[2]10,10,10,10[2]10,10,10,10[2]10,10,10,10[3]125\}\end{align}

## References

1. Chris Bird Super Huge Numbers at MROB
2. 1
3. 1
4. 1
5. 1
6. Bird, Chris (1 April 2012). "Bird's Linear Array Notation" (PDF). p. 1.
7. Bird, Chris (1 April 2012). "Bird's Linear Array Notation" (PDF). p. 4.
8.
9. Bird, Chris (2 April 2012). "Bird's Multi-dimensional Array Notation" (PDF). p. 3.
10. Bird, Chris (2 April 2012). "Bird's Multi-dimensional Array Notation" (PDF). p. 1-2.