User:Moosey/Googology

From LifeWiki
Jump to navigation Jump to search

ah

Part one: Starter notations

define $_n as any entries (including no entries) in an array. It’s my symbol for we-don’t-care entries. In any one use of any one rule, if n is the same, $_n is the same

a#b = concatenation of a and b

n@m = n, m = 1 {n}#(n@(m-1)), m > 1, m not a lim ord n@(m[n]) if m is a lim ord

g(a,n,B) = ah_g(a-1,n,B) {B}, a > 1; n, a = 0

Basic ah rules

Rule 1. ah^a_n {$_0} = g(a,n,$_0) Rule 2. ah_n ({$_1}#{z}) = ah_n {$_1}, z = 0 Rule 3. ah_n{} = n+1 Rule 4. ah_n{a+1,$_2} = ah^n_n{a,$_2} Rule 5. ah_n{a,$_3} = ah_n{a[n],$_3}, a a lim ord Rule 6. ah_n ((0@b)#{a+1,$_4}) = ah_(n+1) (((a+1)@b)#{a,$_4}), b > 0 Rule 7. ah_n ((0@b)#{a,$_5}) = ah_n ((a@b)#{a[n],$_5}), a a lim ord & b > 0

Notating enormous arrays

ah_n{$_0//(b+1),$_1} = ah_n((($_0)(@^_n)ah_n{$_0//b})#{//b,$_1}) ah_n{$_0//0} = ah_n{$_0} ah_n{$_0//b,$_1} = ah_n{$_0//(b[n]),$_1} for lim ord b Else: apply ah's 7 rules, starting after legion bar. (e.g. ah_{$_0//,0,0,w+1} = ah_{$_0//,w+1,w+1,w})

($_1)(@^_n)a = ($_1)@(ah_n(($_1)(@^_n)(a-1))), a > 1, ah_n{$_1}, a=1

ah_n{$_0@@0} = ah_n{$_0} ah_n{$_0@@a,$_1} = ah_n{$_0@@a[n],$_1},a a lim ord ah_n{$_0@@(a+1),$_1} = ah_n({$_0//}#{$_0@@(a),$_1} Apply basic ah rules otherwise to everything after the @@

ah_n{$_0(@@b,$_2)0} = ah_n{$_0} ah_n{$_0((@@b,$_2)a,$_1} = ah_n{$_0(@@b)a[n],$_1},a a lim ord ah_n{$_0(@@0)(a+1),$_1} = ah_n({$_0//}#{$_0(@@0)(a),$_1} ah_n{$_0(@@b+1,$_2)(a+1),$_1} = ah_n({$_0(@@b,$_2)}#{$_0@@(a),$_1} ah_n{$_0(@@b,$_2)$_3} = ah_n{$_0(@@b[n],$_2)$_3}, if b is a lim ord Apply basic ah rules otherwise to everything after the (@@$) or everything inside the (@@$) depending on what is necessary

These array rules can be applied without the ah_n of the array, but any n refers to the n in the ah subscript.

Enormous array update

if unspecified, n is the subscript in the first (closest) ah that is in front of the array.

{$_0//(b+1),$_1} = ((($_0)(@^_n)ah_n{$_0//b})#{//b,$_1}) {$_0//0} = {$_0} {$_0//b,$_1} = {$_0//(b[n]),$_1} for lim ord b Else: apply ah’s 7 rules, starting after legion bar. This includes nesting and incrementing the subscript (e.g. ah_n{$_0//,0,0,w+1} = ah_(n+1){$_0//,w+1,w+1,w})

($_1)(@^_n)a = ($_1)@(ah_n(($_1)(@^_n)(a-1))), a > 1, ah_n{$_1}, a=1

{$_0@@0} = {$_0} {$_0@@a,$_1} = {$_0@@a[n],$_1},a a lim ord {$_0@@(a+1),$_1} = ({$_0//}#{$_0@@(a),$_1} Apply basic ah rules otherwise to everything after the @@. See legion bar notes for more details

{$_0(@@b,$_2)0} = {$_0} {$_0((@@b,$_2)a,$_1} = {$_0(@@b)a[n],$_1},a a lim ord {$_0(@@0)(a+1),$_1} = ({$_0//}#{$_0(@@0)(a),$_1} {$_0(@@b+1,$_2)(a+1),$_1} = ({$_0(@@b,$_2)}#{$_0@@(a),$_1} {$_0(@@b,$_2)$_3} = {$_0(@@b[n],$_2)$_3}, if b is a lim ord Apply basic ah rules otherwise to everything after the (@@$) or everything inside the (@@$) depending on what is necessary. See legion bar notes for more details.

(Now things such as ah_n{a(@@(a(@@a)a))a} are well defined.)

{$_0@@@(a+1),$_1} = {$_0(@@($_0@@@a,$_1))$_0,$_1} {$_0@@@0} = {$_0} {$_0@@@a,$_1} = {$_0@@@a[n],$_1}, a a lim ord.

Apply ah rules otherwise

Dimensional arrays: 2D

{$_010} = {$_0} {$_01a+1,$_1} = {$_0@@@$_01a,$_1} {$_01a,$_1} = {$_0,a1a[n],$_1}, a a lim ord {$_010@m,a+1,$_1} = {$_01(ah_n{$_01(a+1)@m,a,$_1})@m,a,$_1} {$_010@m,a,$_1} = {$_01a@m,a[n],$_1}, a a lim ord