Measuring large numbers
The busy beaver functions are known to grow faster than any computable function, as do many of their variants. Because of this, values of the function, or lower bounds on the function can be very, very large, so it is tempting to find ways of representing these numbers; this article will cover these methods.
Paradoxically, although the Kolgomorov complexity of stating "The runtime of program X" to define the runtime of program X is typically very low, it is often not useful as it does not give us good information on the size of the number. Informally, more "natural" or "combinatorial" ways of measuring large numbers are desired which allow us to relatively compare the rough "ballparks" of the numbers' scales. Tools like Knuth's up-arrow notation can help us achieve this, as well as more powerful methods such as fast-growing hierarchy or the diagonalization of an axiomatic foundation of mathematics.
Scientific notation
Scientific notation is one of the most common ways of representing large numbers; numbers written in standard scientific notation symbolically consist of a multiplicand (taking a value between 1 and the base, though is sometimes omitted), a base (commonly 10) and an exponent (usually an integer, though sometimes takes non-integer values if the multiplicand is omitted).
For example, represents the number 8,680,000, whereas represents the number 602,200,000,000,000,000,000,000. These numbers are often approximations (to some number of digits) or lower/upper bounds on the precise integer.
Non-integer exponents are also often used to approximate. For example, representing a lower bound for the number 46,773,515.
Certain busy beaver values can most conveniently be represented using scientific notation; they include:
When representing even larger numbers using scientific notation, the exponent itself may also be represented using scientific notation. For example:
Knuth's up-arrow notation
Knuth's up-arrow notation extends the sequence of recursive operators (i.e. addition, multiplication, exponentiation) to higher-order functions (e.g. tetration, pentation) which grow much more rapidly.
Tetration, the operation following exponentiation in the sequence of "hyperoperators" is defined by:
The lower bound for can thus be more concisely (though more weakly) written as .
Knuth's up-arrow notation generalizes this though the following formula (where an arrow with a superscript of n represents the operator indicated by n arrows):
Larger busy beaver values represented using Knuth's up-arrow notation include:
bbchallenge uses a piecewise extension of tetration in order to write numbers of this scale more accurately:
Note that when using this method, the function , and other functions similar to it, are not analytic functions; however, that requirement is unnecessary when using this method to represent large numbers. Additionally, methods of obtaining analytic hyperoperators are complex, typically involving Abel functions, Riemann mappings, or Jabotinsky matrices; this method forgoes this, allowing for the ease of calculation.
In this format, the lower bound for can be written more precisely as .
Graham's number () is a famously large number that is defined using Knuth's up-arrow notation:
The Ackermann function grows at roughly the same rate as . It can be said to "diagonalize" across the hyperoperators, eventually dominating every single hyperoperator.
Fast-growing hierarchy
The fast-growing hierarchy uses the fundamental sequences of ordinals to define diagonalizations across previous functions in the hierarchy. Functions in the fast-growing hierarchy are written in the form , and are calculated according to three rules:
where is a limit ordinal (i.e. not a successor of any ordinal, nor zero.)
Usually, an ordinal is first chosen, and then is defined via to the clauses above for all ordinals . This requires a system of fundamental sequences to be fixed first, where for each limit ordinal the fundamental sequence of is a sequence of ordinals which has a supremum of .
It is suspected that in this wiki, and in most other spaces that deal with googology, the fundamental sequences described by Maksudov (2017)[citation needed] are used to define the fast-growing hierarchy.
In this manner, the value of can be more concisely (though more weakly) written as .
Other busy beaver values that necessitate the use of the fast-growing hierarchy include:
Defining fundamental sequences: ordinal notations and ordinal collapsing functions
Individually defining fundamental sequences for a transfinite number of ordinals may be less than ideal; thus, to define the fast-growing hierarchy effectively, ordinal notations, which define a computable mapping between sequences of symbols and ordinals can be used to define fundamental sequences instead. TODO
Comparing FGH and BB
| Ordinal α | Least m that BB(m) confirmed >= fα(2) | Least m that BB(m) confirmed >= fα(3) | Least m that BB(m) confirmed >= fα(10) |
|---|---|---|---|
| (Cantor normal form) | 3 | 6 | 7[1] |
| 7 | 8 | 10[2] | |
| 10 | 12 | 12[3] | |
| 10 | 14 | 20 | |
| 10 | 20 | 21 | |
| 10 | 29 | 31 | |
| 31 | 31 | 31 | |
| (Epsilon ordinals) | 10 | 31 | 51[4][5] |
| (Veblen's phi function) | |||
| (Buchholz's psi function) | |||
| (Bashicu matrix system) | 150 |
Theories
The proof-theoretic ordinal of a theory is defined as supremum of the order types of all ordinal notations that can be shown to be well-founded within the theory.
Some examples of proof theoretical ordinals include , , and . Here Q is Robinson arithmetic, PA is Peano Arithmetic, and KP is Kripke-Platek set theory.
Determination of the proof theoretic ordinal of second order arithmetic has been claimed in two preprints, one of which is a work-in-progress,[6][7] and is known to vastly exceed that of .
They can be used to compare the strength of different theories, as well as (by definition) an indicator as to which ordinal notations (or functions that are derived from ordinal notations) cannot be shown to be well-founded (or total) in a theory.
A notable example of a theory which is directly used to create fast growing functions is the Calculus of Constructions (CoC), which has a proof-theoretic ordinal greater than that of any nth order arithmetic (); well-formed statements in CoC can also be easily detected, and are strongly normalizing (TODO: explain what that means in this context).
CoC yields the fast growing function (defined by Ralph Loader in 2001 to create the eponymous Loader's number = ), which computes something similar to (but larger than) "The largest number \(x\) such that there is a formula such that is true and is provable in CoC with a proof of length \(\leq \log_2 n\)".[8] outgrows all recursive functions provably total in ; the growth rate of is sometimes informally written as , though no fundamental sequence has yet been defined for all ordinals under .
The simplicity of CoC and has been utilized to show the following bounds for certain busy beaver values:
An even stronger but simpler function, , has been derived from the structure of elementary embeddings, though it is unknown if this function can be shown to be total in alone, and whether it grows faster than the aforementioned . It is used in the following (conjectured) bounds:
Resources
The Googology wiki hosts good information on methods of describing large numbers or large upper bounds for numbers.
References
- ↑ See
1RB0RA_1LC1LF_1RD0LB_1RA1LE_1RZ0LC_1RG1LD_0RG0RF(bbch). - ↑ Jeff Ketchersid, "A 10-state machine at level f_(ω+1)". Github file, October 2026. Accessed 17 October 2026.
- ↑ Jeff Ketchersid, "M12: a 12-state machine at level f_(ω+2)". Github file, October 2026. Accessed 27 October 2026.
- ↑ https://discord.com/channels/960643023006490684/1026577255754903572/1276881449685094495
- ↑ Sligocki, "BB(51) epsilon_0 champion". bbchallenge wiki talk page edit, September 2024. Accessed 7 October 2026.
- ↑ T. Arai, "An ordinal analysis of -Collection" (2023). Accessed 8 October 2026.
- ↑ H. Towsner, "Proofs that Modify Proofs" (2024). Accessed 8 October 2026.
- ↑ R. Loader, "busy". GitHub repository (2003). Accessed 7 October 2026.
- ↑ CatsAreFluffy, "metamath-turing-machines". GitHub commit (September 2024). Accessed 7 October 2026.
- ↑ https://discord.com/channels/960643023006490684/1331570843829932063/1339669138510970881
- ↑ racheline, "Larger Champions". bbchallenge wiki talk post edit (February 2025). Accessed 7 October 2026.