Googology Wiki
Googology Wiki
No edit summary
Tag: Source edit
No edit summary
Tag: Source edit
Line 12: Line 12:
   
 
\(@\) and \(\%\) are any string of nonnegative numbers separated by separators, \(\#\) is any string of 0’s separated by separators, and \($\) is any separator, with the following conditions:
 
\(@\) and \(\%\) are any string of nonnegative numbers separated by separators, \(\#\) is any string of 0’s separated by separators, and \($\) is any separator, with the following conditions:
* \(@\) must start and end with a number, and it can contain only one number.
+
* \(@\) must start and end with a number, and it can possibly contain only one number.
* \(\%\) must start with a number but end with a separator, and it can be empty.
+
* \(\%\) must start with a number but end with a separator, and it can possibly be empty.
* \(\#\) must start with a separator but end with a number, and it can be empty.
+
* \(\#\) must start with a separator but end with a number, and it can possibly be empty.
   
 
Sometimes subscripts are put beneath the @, %, #, and $ to distinguish between each other.
 
Sometimes subscripts are put beneath the @, %, #, and $ to distinguish between each other.

Revision as of 06:47, 22 August 2021

With the era of P destined to end in just a month or two, bringing PEGG to its doomsday, and Psi unfortunately blocked for the time being, it's time to properly extend the supporting array notation. Q itself calls for a nested array. In this post, I will first discuss planar arrays. At least it'll buy us some time. If Psi comes back before my definition is exhausted then I will stop this series.

Terminology

Here I introduce some useful terminology.

The notation looks like \((...)|x\), where \(x>0\) and the thing inside the parentheses are nonnegative numbers, called entries, separated by separators (there can be just one entry and no separators). \(x\) is called the base. Either the base is 10, or everything inside the parentheses are nonnegative integers. Separators are either "," or "[1]".

The rightmost nonzero entry is called the active entry.

We use \(a\) to \(q\) to denote a nonnegative integer, and \(r\) to \(z\) to denote a nonnegative real number.

\(@\) and \(\%\) are any string of nonnegative numbers separated by separators, \(\#\) is any string of 0’s separated by separators, and \($\) is any separator, with the following conditions:

  • \(@\) must start and end with a number, and it can possibly contain only one number.
  • \(\%\) must start with a number but end with a separator, and it can possibly be empty.
  • \(\#\) must start with a separator but end with a number, and it can possibly be empty.

Sometimes subscripts are put beneath the @, %, #, and $ to distinguish between each other.

Main idea

Recall the definition of P:

  • If \(x\le1\), \(Px=10^x\)
  • If \(1<x\le2\), \(Px=(1,0,0)|10^{x-1}\)
  • If \(x>2\), \(Px=(10^{\{x\}},\underbrace{0,\dots,0}_{\lfloor x\rfloor\text{ 0's}})|10\)

It would be nice to follow Bird's example, and introduce dimensional separators. The comma will become a shorthand of [0], and the next separator is [1]. We can write:

\(Px=(1[1]0)|x\)

The next step is to define (2[1]0)|x. This is very easy:

  • If \(x\le1\), \((2[1]0)|x=10^x\)
  • If \(1<x\le2\), \((2[1]0)|x=(1[1]1,0,0)|10^{x-1}\)
  • If \(x>2\), \((2[1]0)|x=(1[1]10^{\{x\}},\underbrace{0,\dots,0}_{\lfloor x\rfloor\text{ 0's}})|10\)

Similarly things like (1[1]0[1]0)|x can be easily defined.

Now, we have to decide what (1.5[1]0)|x is. Here, we consider an original rule, rule 6:

(a,b,...,x,<k zeros>)|10 = (a,b,...,int(x),frac(x)*10,<k-1 zeros>)|10

Notice that this rule almost seems like turning the array into a kind of decimal system: For example, we "assign" the number \(4*10^2+5*10+3=453\) to (4,5,3). Doing something like this will make (4.53,0,0) and (4,5,3) have the same assigned number, so naturally the first would expand into the second.

So, what number will (1[1]0) be assigned? The natural answer would be 1e10. Therefore, (1.5[1]0) would be assigned 1.5e10, and should thus expand to (1[1]5,0,0,0,0,0,0,0,0,0).

Definition

After some thinking the definition comes naturally. Apply the first rule applicable.

1. If \(x\le1\), \((@)|x=10^x\)

2. \((@_1[1]0,@_2)|x=(@_1[1]@_2)|x\)

3. \((0\#$@)|x=(@)|x\)

4. \((\%n+1)|x=\underbrace{(\%n)|(\%n)|...|(\%n)|}_{\lfloor x\rfloor\text{ }(\%n)|\text{'s}}10^{\{x\}}\)

5. If \(y\notin\mathbb{Z}\), \((\%y)|10=(\%\lceil y\rceil)|2*5^{\{y\}}\)

6a. If \(1<x\le2\), \((\%n+1,0\#)|x=(\%n,2\#)|10^{x-1}\)

6b. If \(1<x\le2\), \((\%n+1[1]0\#)|x=(\%n[1]1,0,0\#)|10^{x-1}\)

7a. If \(x>2\), \((\%n+1,0\#)|x=(\%n,x\#)|10\)

7b. If \(x>2\), \((\%n+1[1]0\#)|x=(\%n[1]10^{\{x\}},\underbrace{0,\dots,0}_{\lfloor x\rfloor\text{ 0's}}\#)|10\)

8a. If \(y\notin\mathbb{Z}\), \((\%y,0\#)|10=(\%\lfloor y\rfloor,10\{y\}\#)|10\)

8b. If \(y\notin\mathbb{Z}\), \((\%y[1]0\#)|10=(\%\lfloor y\rfloor[1]10\{y\},\underbrace{0,\dots,0}_{\text{9 0's}}\#)|10\)

Q

Now we define Q up to \(2+\log 2\).

1. If \(x\le1\), then \(Qx=10^x\)

2. If \(1<x\le2\), then \(Qx=(1[1]1)|x\)

3. If \(2<x\le2+\log 2\), then \(Qx=(10^{\{10\{y\}\}}\underbrace{,0,\dots,0}_{\lfloor10\{y\}\rfloor\text{ 0's}}\underbrace{[1]0\dots[1]0}_{\lfloor y\rfloor\text{ 0's}})|10\), where \(y=10^{10^{x-2}-1}\).