Googology Wiki
Googology Wiki
Googology Wiki

Preconditions[]

We don't know the truth of the set theory in our real world. For example, what value of x1 satisfies ∃n(20=ℵn)→x1=n∧¬∃n(20=ℵn)→x1=0, after all?

To make mathmatical arguments possible, I assume that there exists a variable assignment s, such that for every ZFC theorem θ written in LFOST, Sat([θ],s) holds, where LFOST denotes the language of first-order set-theory that Rayo defined. This does not answer the above question, but fortunately it is not required in order to define the busy beaver function.

Although the valid LFOST variable symbols form xi, I freely use other symbols for readability. It should not affect the length calculation.

L(θ) denotes the length of a LFOST word θ by precedent.

Basic Definitions[]

Abbreviation Definition Length
x=y 3
x∈y 3
θ∧ξ (θ∧ξ) L(θ)+L(ξ)+3
¬θ (¬θ) L(θ)+3
(θ∨ξ) ¬(¬θ∧¬ξ) L(θ)+L(ξ)+12
θ∨ξ (θ∨ξ) L(θ)+L(ξ)+12
(θ→ξ) ¬(¬θ∧ξ) L(θ)+L(ξ)+9
θ→ξ (θ→ξ) L(θ)+L(ξ)+9
∀x(θ) ¬∃x(¬θ) L(θ)+10
∀x(θ→ξ) ¬∃x(θ∧¬ξ) L(θ)+L(ξ)+13
∀x(θ→¬ξ) ¬∃x(θ∧ξ) L(θ)+L(ξ)+10
∀x1..∀x_n(θ→¬ξ) ¬∃x1..∃x_n(θ∧ξ) L(θ)+L(ξ)+4*n+6
θ↔ξ (θ→ξ)∧(ξ→θ) 2*(L(θ)+L(ξ))+21
∀x1..∀x_n∃y1...∃y_m(θ) ¬∃x1..∃x_n¬∃y1...∃y_m(θ) L(θ)+(n+m)*4+6

Ordered Pairs[]

I employed the "shorter" definition (that is, (x,y)={x,{x,y}} instead of {{x},{x,y}}) because I assumed the Axiom of Regularity just like other ZFC axioms as written in the Preconditions section.

Abbreviation Definition Length
{x1,x2}=y x1∈y∧x2∈y∧¬∃z(z∈y∧¬z=x1∧¬z=x2) 40
(x1,x2)=y ∃z({x1,x2}=z∧{x1,z}=y) 87
(x1,x2,x3)=y ∃z((x2,x3)=z∧(x1,z)=y) 181
(x1,x2,x3,x4)=y ∃z((x2,x3,x4)=z∧(x1,z)=y) 275
(x1,x2,...,x_n)=y ∃z((x2,x3,...,x_n)=z∧(x1,z)=y) 87+94*(n-2)
(x1,x2)∈y ∃z((x1,x2)=z∧z∈y) L((x1,x2)=y)+10=97
(x1,x2,...,x_n)∈y ∃z((x1,x2,...,x_n)=z∧z∈y) 97+94*(n-2)

Functions[]

Abbreviation Definition Length
f(x)=y (x,y)∈f 97
f(x1,x2)=y (x1,x2,y)∈f 191
xfy=z f(x1,x2)=y 191 # infix notation
f(x1,x2)=(y1,y2) (x1,x2,y1,y2)∈f 285
f(x1,x2)=(y1,y2,y3) (x1,x2,y1,y2,y3)∈f 87+94*3+10=379
f(x1,x2)=(y1,y2,y3,y4) (x1,x2,y1,y2,y3,y4)∈f 87+94*4+10=473
IsFn(f(x)=y) f(x)=y∧∀z(f(x)=z→y=z) L(f(x)=y)*2+19
IsFn(f(x1,x2)=(y1,y2)) f(x1,x2)=(y1,y2)∧∀z1∀z2(f(x1,x2)=(z1,z2)→y1=z1∧y2=z2) L(f(x1,x2)=(y1,y2))*2+29

Natual Numbers[]

Abbreviation Definition Length
X⊆Y ∀x(x∈X→x∈Y) 19
Def0(0) ¬∃x(x∈0) 10
Def1(1) 0∈1∧¬∃x(x∈1∧¬x=0) 25
IsLimit(x) 0∈x∧∀y(y∈x→∃z(y∈z)) 29
Meaning: x is a limit ordinal if it is an ordinal.
IsNat(x) 6+16+16+6+19+3+10+32=108
0∈x∧ # x is not zero. 3+3=6
∀y(y∈x→( 3+13=16
∀z(z∈y→( 3+13=16
z∈x∧ # x is transitive. 3+3=6
∀w(w∈z→w∈y) # y is transitive, 3+3+13=19
))∧ # hence x is an ordinal. 3
∃z(y∈z)∧ # x is a limit ordinal. 4+3+3=10
¬IsLimit(y) # x is the least limit ordinal. 3+29=32
))
Succ(x)=y y∈ℕ∧x∈y∧¬∃z(z∈ℕ∧x∈z∧z∈y) 34
must ensure x∈ℕ
Def2(2) Succ(1)=2 34
Def+(+:ℕ×ℕ→ℕ) 446+291=737
∀x∀y∃z(x∈ℕ∧y∈ℕ→(z∈ℕ∧IsFn(x+y=z)∧ 4*3+6+3+3+3+9+3+3+191*2+19+3=446
y=0→x=z∧∃y'(Succ(y)=y'∧∃z'(x+y'=z'∧Succ(z)=z'))) 3+9+3+3+4+34+3+4+191+3+34=291
x<y x∈y 3
x1+x2+x3=y ∃z(x1+x2=z∧((x3=0∧y=z)∨(x3=1∧Succ(z)=y))) 4+191+3+3+3+3+12+3+3+34=259
valid only if x3 is 0 or 1
Div2(x)=y ∃z(y+y=z∧(z=x∨Succ(z)=x)) 4+191+3+3+12+34=247
Meaning: ⌊x/2⌋=y where ⌊⌋ is the floor function.
Mod2(x)=y ∃z∃w(z+z=w∧((w=x∧y=0)∨(Succ(w)=x∧y=1))) 4+4+191+3+3+3+3+12+34+3+3=263
Meaning: x mod 2 = y.

Although LFOST does not contain constant symbols, we can define "constants" and use them as if they are constant symbols. For example, we can write a formula (∃0(Def0(0))∧φ) to use a "constant symbol" 0 in φ.

Turing Machines[]

I fixed following elements for simplicity and according to Rado's original paper.

  • The set of states is {0,1,...,n}.
  • The set of tape alphabets is {0,1}.
  • The blank symbol is 0.
  • The initial state is 1.
  • The halting state is 0.
Abbreviation Definition Length
IsTranFunc(δ,n) 26+36+797=859
∀q∀c∃w∃d∃q'( 5*4+6=26
q<n∧c<2→(w<2∧d<2∧q'<n∧ 3+3+3+9+3+3+3+3+3+3+=36
IsFn(δ(q,c)=(w,d,q')))) 379*2+39=797
Meaning: δ is a transition function of a (n-1)-state TM.
q: the current state.
c: the current tape symbol at the head.
w: the written symbol to the tape.
d: moving directions. 0=left, 1=right.
q': the next state.
DefΔ(Δ,n) ∀δ(δ∈Δ↔IsTranFunc(δ,n)) unused (see below)
Meaning: Δ is the set of all transition functions of (n-1)-state TMs.
The Rayo name does not have to include Δ. IsTranFunc(δ,n) will implicitly define the domain of δ.
DefConf(Conf:Δ×ℕ→ℕ×2×ℕ×n) 16+995+24+36+71+855+16+36+36+775=2860
∃l∃c∃r∃q( 4*4=16
IsFn(Conf(δ,s)=(l,c,r,q))∧ 473*2+49=995
l∈ℕ∧c<2∧r∈ℕ∧q<n∧ 3+3+3+3+3+3+3+3=24
s=0→l=0∧c=0∧r=0∧q=1∧ 3+9+3+3+3+3+3+3+3+3=36
(∃s'(Succ(s)=s')→(∃l'∃c'∃r'∃q'∃w∃d( 4+34+9+4*6=71
Conf(δ,s')=(l',c',r',q')∧δ(q,c)=(w,d,q')∧ 473+3+379=855
∃f∃b∃f'∃b'( 4*4=16
(d=0→f=l∧b=r∧f'=l'∧b'=r')∧ 3+9+3+3+3+3+3+3+3+3=36
(d=1→f=r∧b=l∧f'=r'∧b'=l')∧ 3+9+3+3+3+3+3+3+3+3=36
(f'=Div2(f)∧c'=Mod2(f)∧b'=b+b+w)) 247+3+263+3+259=775
))))
Meaning: the configuration of a (n-1)-state TM with transition function δ is (l,c,r,q) at step s.
Callers must quantify δ and s.
l: the content of left-hand tape (encoded in a bit string).
c: the symbol at the current head.
r: the content of right-hand tape (encoded in a bit string).
q: the current state.
DefSteps(Steps:Δ→ℕ) 227+874+2879+480+513+492=5465
∀δ∃s(IsFn(Steps(δ)=s)∧ 2*4+6+97*2+19=227
IsTranFunc(δ,n)→(s∈ℕ∧ 859+9+3+3=874
∃Conf(DefConf(Conf:Δ×ℕ→ℕ×2×ℕ×n))∧∃l∃c∃r( 4+2860+3+4*3=2879
(∃t(Conf(δ,t)=(l,c,r,0)∧ 4+473+3=480
∀u∀l'∀c'∀r'(Conf(δ,u)=(l',c',r',0)→¬u<t))→s=t)∧ 4*4+6+473+3+9+3+3=513
(¬∃t(Conf(δ,t)=(l,c,r,0))→s=0) 3+4+473+9+3=492
)))
Meaning: (n-1)-state TM with transition function δ halts at step s.
DefShift(Shift:ℕ→ℕ) 227+18+5472+104+114=5935
∀n∃s(IsFn(Shift(n)=s)∧ 2*4+6+97*2+19=227
n∈ℕ→(s∈ℕ∧ 3+9+3+3=18
∃Steps(DefSteps(Steps:Δ→ℕ))∧ 4+5465+3=5472
∃δS(Steps(δS)=s∧ 4+97+3=104
∀δ∀t(Steps(δ)=t→¬s<t) 2*4+6+97+3=114
)))
Meaning: the slowest (n-1)-state TM halts at step s.
n=265536 819+42*5-53-70=906
Taken from p進大好きbot's excellent blog post with some modifications:
Omitted (_IsTwo(x_j)∧) because we already have 2. -(50+3)=-53
Replaced _IsOrdinal(x_i) with x_i∈ℕ. -73+3=-70
Shift(265536)=x1 205+6686+1010=7901
∃0(Def0(0)∧∃1(Def1(1)∧∃ℕ(IsNat(ℕ)∧∃2(Def2(2)∧ 10+25+108+34+7*4=205
∃+Def+(+:ℕ×ℕ→ℕ∧∃Shift(DefShift(Shift:ℕ→ℕ)∧ 737+5935+7*2=6686
∃n(n=265536∧Shift(n)=x1))))))) 4+906+3+97=1010
Meaning: the slowest (265536-1)-state TM halts at step x1.

∴Rayo(7901)>Shift(265536)>BB(265536-1)>BB(10100)

Is 10¹⁰⁰ large enough?[]

As I shown in the above example, once we define a constant, we can refer it with only one symbol regardless of the definition length. Similarly, once we define a function, we can refer it with a constant length regardless of the definition length. I believe 10100 is large enough.