Bird's array notation

Bird's array notation is a googological notation invented by Chris Bird. It goes very similar with BEAF, but has more formal definition.

Linear and multidimensional arrays
With linear arrays, there is no difference between Bird's and Bowers' variants, so it has the same set of rules:

Rule 1. Condition: only 2 entries.

\(\{a,b\} = a^b\)

Rule 2. Condition: last entry is 1.

\(\{\# 1\} = \{\#\}\)

Rule 3. Condition: 2nd entry is 1.

\(\{a,1 \#\} = a\)

Rule 4. Condition: there exists string of 1's from 3rd entry to nth.

\(\{a,b,1,1,\cdots,1,1,c \#\} = \{a,a,a,a,\cdots,a,\{a,b-1,1,1,\cdots,1,1,c \#\},c-1 \#\}\)

Rule 5. Condition: rules 1-4 don't apply.

\(\{a,b,c \#\} = \{a,\{a,b-1,c \#\},c-1 \#\}\)

The symbol # denotes

With multidimensional arrays, Bird used \('a \ b'\) instead of \(b^c \& a\). These strings are written in the inverted commas and have specific set of rules:

Rule A1. Condition: c=0.

\('a \<0\> b' = 'a'\)

Rule A2. Condition: rule A1 doesn't apply.

\('a \ b' = 'a \ b [c] a \ b-1'\)

Hence, the set of main rules must be looks like that:

Rule M1. Condition: only 2 entries.

\(\{a,b\} = a^b\)

Rule M2. Condition: [m]<[n] or 1 at the end of array.

\(\{\# [m] 1 [n] \#\} = \{\# [n] \#\}\)

Rule M3. Condition: 2nd entry is 1.

\(\{a,1 \#\} = a\)

Rule M4. Condition: non-zero entry immediately after batch of unfilled separators.

\(\{a,b [m_1] 1 [m_2] \cdots 1 [m_x] c \#\} = \{a  b [m_1] a  b [m_2] \cdots a  b [m_x] c-1 \#\}\)