User talk:SamSim/Sandbox
Jonathan Bowers' "Exploding Array Function" is a highly recursive system of notation capable of expressing numbers unimaginably larger than anything found in Knuth's up-arrow notation, Conway's chained arrow notation or Steinhaus-Moser notation.
Superdimensions
[edit]The next step Bowers made is to make it possible to concisely express arrays-within-arrays. We do this by adding an extra parameter to our "navigation" instructions, (1), (2), (3) etc. This extra parameter defines the "dimensional set" to which the first parameter applies. Instructions of the form (a,0) are equivalent to (a) as before and show how to move within an inner array. Commands of the form (a,1) tell you how to move between these inner arrays, as they are arranged in a larger array. For example (0,1) says to move one array to the right. (Note that (0,0) = (0) can be used to represent "next entry", usually done with a comma.) (1,1) says move onto the next row of arrays. (2,1) the next plane, and so on.
The same rules for evaluating the array-of-arrays still apply. However, the definition of "previous structure" now includes entire previous arrays, rows of arrays, planes of arrays and so on, so we need to extend the definition of "prime block" to these new structures. We say the prime block of a previous array is a p^p array, the prime block of a row of arrays is a row of p p^p arrays, and so on.
Thus, for example:
- , a p^p array of bs
- , a row of p p^p arrays of bs, containing bs altogether
- , containing bs altogether
Named numbers expressible in this form:
Name | Value |
---|---|
hyperal | |
dimentri | , a 3-by-3-by-3 array of threes |
dimendecal | , a 10^10 array of 10s |
We can continue to extend our notation to incorporate arrays-of-arrays-of-arrays, using a third dimensional set, signified (a,2).
- , containing bs altogether
- , containing bs altogether
And as this preponderance of arrays-within-arrays becomes more tedious, we can keep going:
- , containing bs altogether
- If , , containing bs altogether
Spot the pattern yet?
More named numbers expressible in this form:
Name | Value |
---|---|
dulatri | , a 3^3 array of dimentris |
trilatri | , a 3^3 array of dulatris |
gingulus | , a 100^100 array of 100^100 arrays of tens |
gangulus | , a 100^100 array of ginguluses |
geengulus | , a 100^100 array of ganguluses |
gowngulus | , a 100^100 array of geenguluses |
gungulus | , a 100^100 array of gownguluses |
It is relatively straightforward to extend our navigational notation to a third argument, a fourth, and eventually unlimited arguments.
- , containing entries altogether at the lowest level
- , with entries
- , with entries
- , with entries
- , with entries
- , with entries
- , with entries
- , with entries
- , with entries
- , with entries altogether at the lowest level.
Name | Value |
---|---|
trilatri | , a 3^3 array of 3^3 arrays of 3^3 arrays of threes, with entries |
trimentri | , with entries |
bongulus | , with entries |
bingulus | , with entries |
bangulus | , with entries |
trongulus | , with entries |
quadrongulus | , with entries |
goplexulus | , with entries |
Adding extra dimensions to the navigation notation
[edit]Observe that is a structure with entries in it altogether at the lowest level.
Let's apply a similar kind of navigational instructions to this notation as we did to the original array notation. That is,
- where there are p zeros, with entries.
- where there are p zeros, with entries.
- where there are p+1 zeros, with entries.
- , with entries.
Note the overlap which arises if the first row in the navigation notation has more than p commands, for example:
Name | Value |
---|---|
trimentri | , with entries |
goplexulus | , with entries |
As the second row of entries expresses multiples of , so the row after that expresses multiples of , the row after that , and so on. Then the next plane expresses (by row) multiples of , multiples of , multiples of and so on.
- contains entries at the lowest level.
The plane after that, the family. The plane after that, the family.
The next 3-space, the family. The 3-space after that, the family. The next 4-space, the family. The next 5-space, the family. The next 6-space, the family...
This is getting complicated
[edit]What is going on here is not really recursion. Each additional layer of notation is just making it easier and easier to express ever larger levels of arrays-within-arrays. Regardless of how we expand our notation, everything will eventually collapse back to for some x and y. This structure has entries in it at the lowest level.
This is a p^x array of p^p arrays of p^p arrays of ... p^p arrays, where there are y nested p^p arrays.
Noting this relationship, we can simplify our analysis of the structures we are creating.
This notation is all becoming largely superfluous because Bowers hasn't used it to describe many numbers.
In general, then, we know how to render any power of into a set of nested arrays. And we can use array notation to generate that power of p in the first place. Keep watching.
Name | Value |
---|---|
goduplexulus | , a array of tens |
gotriplexulus | , a array of tens |
goppatoth | a array of tens |
goppatothplex | a array of tens |
triakulus | a array of threes |
kungulus | a array of tens |
kungulusplex | a array of tens |
quadrunculus | a array of tens |
tridecatrix | a array of tens |
humongulus | a array of tens |
golapulus | a array of tens |
golapulusplex | a golapulus array of tens |
Are we there yet?
[edit]For most arrays , we find for some (usually unspeakable) value of z(A). Let's say A corresponds to a structure of b^b arrays of b^b arrays of ... b^b arrays of b^b arrays of entries, where there are z(A) nested layers of arrays. Call this "an A-type array". (If A is small and the power of b generated is not divisible by b, but just b^p for some p, an A-type array would be just a b^p array of entries.)
This means we can turn almost any array, regardless of size, into a power of b and then into nested set of arrays. We can continue that recursive sequence further still by introducing some more notation. Let's say:
- & = an A-type array of is
- & & = an (A-type array of is)-type array of js
- & & & = an ((A-type array of is)-type array of js)-type array of ks
and so on.
Name | Value |
---|---|
tritri | 3 & 3 = |
tetratri | 4 & 3 = |
pentatri | 5 & 3 = |
hexatri | 6 & 3 = |
heptatri | 7 & 3 = |
ultatri | 27 & 3 = |
supertet | 4 & 4 = |
superpent | 5 & 5 = |
superhex | 6 & 6 = |
supersept | 7 & 7 = |
superoct | 8 & 8 = |
superenn | 9 & 9 = |
iteral (also called superdec) | 10 & 10 = |
tridecal | 3 & 10 = |
general (also called tetradecal) | 4 & 10 = |
pentadecal | 5 & 10 = |
hexadecal | 6 & 10 = |
heptadecal | 7 & 10 = |
octadecal | 8 & 10 = |
ennadecal | 9 & 10 = |
iteral (also called duperdecal) | 10 & 10 = |
hyperal | 2 & 2 & 10 = {2,2} & 10 = |
dutritri | {3,2} & 3 = |
dutridecal | {3,2} & 10 = |
xappol | {10,2} & 10 = |
xappolplex | {xappol,2} & 10 = a xappol-by-xappol array of tens |
dimentri | 2 & 3 & 3 = {3,3} & 3 = a 3-by-3-by-3 array of threes |
colossal | {10,3} & 10 = a 10-by-10-by-10 array of tens |
colossalplex | {colossal,3} & 10 = a colossal-by-colossal-by-colossal array of tens |
terossol | {10,4} & 10 = a 10-by-10-by-10-by-10 array of tens |
terossolplex | {terossol,4} & 10 |
petossol | {10,5} & 10 |
petossolplex | {petossol,5} & 10 |
ectossol | {10,6} & 10 |
ectossolplex | {ectossol,6} & 10 |
zettossol | {10,7} & 10 |
yottossol | {10,8} & 10 |
xennossol | {10,9} & 10 |
dimendecal | 2 & 10 & 10 = {10,10} & 10 |
googol | |
gongulus | & , a array of tens |
gongulusplex | {10,gongulus} & 10 |
gongulusduplex | {10,gongulusplex} & 10 |
gongulustriplex | {10,gongulusduplex} & 10 |
gongulusquadraplex | {10,gongulustriplex} & 10 |
golapulus | & , a gongulus-type array of tens |
golapulusplex | & , a golapulus-type array of tens |
golapulusplux | & & & & , with a golapulus of tens in a row |
trimentri | {3,3,2} & 3 = a array of threes |
goplexulus | {100,3,2} & 10 = a array of tens |
goduplexulus | {100,4,2} & 10 |
gotriplexulus | {100,5,2} & 10 |
goppatoth | {10,100,2} & 10 |
goppatothplex | {10,goppatoth,2} & 10 |
triakulus | 3 & 3 & 3 = {3,3,3} & 3 |
kungulus | {10,100,3} & 10 |
kungulusplex | {10,kungulus,3} & 10 |
quadrunculus | {10,100,4} & 10 |
tridecatrix | 3 & 10 & 10 = {10,10,10} & 10 |
humongulus | {10,10,100} & 10 |
This type of recursion exhausts itself pretty quickly so let's introduce the real second stage of array notation: legion arrays. Use the forward slash "/" for the beginning of a new legion and let's add the new rule:
{b,p / 2} = {b&b&...&b} where there are p bs.
Name | Value |
---|---|
tritri | {3,2 / 2} = 3 & 3 |
supertet | {4,2 / 2} = 4 & 4 |
superpent | {5,2 / 2} = 5 & 5 |
superhex | {6,2 / 2} = 6 & 6 |
supersept | {7,2 / 2} = 7 & 7 |
superoct | {8,2 / 2} = 8 & 8 |
superenn | {9,2 / 2} = 9 & 9 |
iteral | {10,2 / 2} = 10 & 10 |
triakulus | {3,3 / 2} = 3 & 3 & 3 |
big boowa | {3,3,3 / 2} |
great big boowa | {3,3,4 / 2} |
grand boowa | {3,3,big boowa / 2} |
super gongulus | {10,10(100)2 / 2} = 10 & ... & 10 with a gongulus of tens |
wompogulus | {10,10(100)2 / 100} |
wompogulusplex | {10,10(100)2 / wompogulus}, presumably |
It is more or less trivial to extend the notation to include (/2), (/3), (/4), ... , (/0,1), (/1,1), ... (/0,2), (/0,3) and so on and so on in legion form. This is familiar ground we have trodden many times - all we are doing is flooding the previous structures with bs separated by ampersands instead of commas. The result is legions of legions of legions of etc. etc. ad infinitum.
Name | Value |
---|---|
guapamonga | {{10,10(100)2},10 (/100) 2 }, a 10^100-type legion array of gonguluses |
guapamongaplex | {{10,10(guapamonga)2},10 (/guapamonga) 2}, a 10^guapamonga-type legion array of 10^guapamonga arrays of tens |
big hoss | {100,100 //////.......///// 2} - with 100 /'s. |
great big hoss | {big hoss, big hoss /////.......///// 2} - with big hoss /'s |
Meameamealokkapoowa | {L100,10}10,10 |
Meameamealokkapoowa Oompa | {LLL....a.....LLL,10}10,10 a = Meameamealokkapoowa array of L's |