Googology Wiki
Advertisement
Googology Wiki

Rampant Array Notation is an array notation developed by Googology Wiki user Nirvana Supermind[1]. The goal of it is to eventually catch up with the BEAF, BAN, and most other major notations and become one of the fastest notations. However, BEAF is known to be ill-defined beyond tetrational arrays, and hence the comparison does not make sense. It is composed of 6 extensions, 2 of which have been finished and are ill-defined:

Although it is not clarified in the original source, the range and domain of the notation is nonnegative integers according to the creator. However, the creator substitute not only a nonnegative integer, but also an array of nonnegative integers. Therefore the description of the domain is inconsistent with the actual explanation.

Basic notation

Basic Rampant Array Notation takes two entries. It is defined as:

  1. r(a) = a^2
  2. r(#,0) = r(#)
  3. r(a,b) = r(r(r(a,b-1),b-1),b-1…) with “a” times

Here # denotes a portion of the array. It can also be empty. This is exactly equivalent to a fast iteration hierarchy of x^2, so r(a,a)~f_w(a).

This notation is ill-defined, because of the lack the precise quantification of the third rule. Since b has no restriction other than that the domain is the set of (perhaps arrays of) non-negative integers, b can be 0. Then you can apply both the second and the third rule. However, if you apply the third rule, the result refers to an invalid expression.

Example

r(3,1) = r(r(r(3,0),0),0…) with 3 times r(3,1) = r(r(r(3,0),0),0) r(3,1) = ((3^2)^2)^2 r(3,1) = 6561


Linear notation

Linear Rampant Array Notation takes any amount of entries, so it is the limit of vanilla arrays/tuples. The rules are:

  1. r(a) = a^2
  2. r(#,0) = r(#)
  3. r(a,b,#) = r(r(r(a,b-1,#),b-1,#),b-1,#…) with “a” times

These rules are incomplete, and there are edge cases where they don't work (e.g. r(a,0,1)). So we begin a process if the rules dont work:

Start from the second-to-last entry, and move backwards.

  1. If you hit an entry which is 0, then turn the entry into “a” (the first entry) and decrease the following entry by 1.
  2. Otherwise, stop the process.

This notation is also ill-defined by the exactly same reason as the first one.

Example

r(2,1,0,1) = r(r(2,0,0,1),0,0,1) r(2,0,0,1) = r(2,2,2,2) r(2,2,2,2) = r(r(2,2,2,1),2,2,1) r(2,2,2,1) = r(r(2,2,2),2,2) r(2,2,2,2) = r(r(r(2,2,2),2,2),2,2,1) r(2,0,0,1) = r(r(r(2,2,2),2,2),2,2,1) r(2,1,0,1) = r(r(r(r(2,2,2),2,2),2,2,1),0,0,1) r(2,1,0,1) = r(r(r(r(2,2,2),2,2),2,2,1),r(r(r(2,2,2),2,2),2,2,1),r(r(r(2,2,2),2,2),2,2,1)) …

Sources

Advertisement