Large numbers, far beyond those encountered in everyday life—such as simple counting or financial transactions—play a crucial role in various domains. These expansive quantities appear prominently in mathematics, cosmology, cryptography, and statistical mechanics. While they often manifest as large positive integers, they can also take other forms in different contexts (such as P-adic number). Googology delves into the naming conventions and properties of these immense numerical entities.[1] [2]
See also: Scientific notation, Logarithmic scale, Orders of magnitude and Names of large numbers.
Scientific notation was devised to manage the vast range of values encountered in scientific research. For instance, when we write 1.0, we express one billion—a 1 followed by nine zeros: 1,000,000,000. Conversely, the reciprocal, 1.0, signifies one billionth, equivalent to 0.000 000 001. By using 109 instead of explicitly writing out all those zeros, readers are spared the effort and potential confusion of counting an extended series of zeros to grasp the magnitude of the number. Additionally, alongside scientific notation based on powers of 10, there exists systematic nomenclature for large numbers in the short scale.
Examples of large numbers describing everyday real-world objects include:
In the vast expanse of astronomy and cosmology, we encounter staggering numbers related to length and time. For instance, according to the prevailing Big Bang model, our universe is approximately 13.8 billion years old (equivalent to 4.355 × 10^17 seconds). The observable universe spans an incredible 93 billion light years (approximately 8.8 × 10^26 meters) and hosts around 5 × 10^22 stars, organized into roughly 125 billion galaxies (as observed by the Hubble Space Telescope). As a rough estimate, there are about 10^80 atoms within the observable universe.[7]
According to Don Page, physicist at the University of Alberta, Canada, the longest finite time that has so far been explicitly calculated by any physicist is
| |||||||||||||
10 |
years
which corresponds to the scale of an estimated Poincaré recurrence time for the quantum state of a hypothetical box containing a black hole with the estimated mass of the entire universe, observable or not, assuming a certain inflationary model with an inflaton whose mass is 10−6 Planck masses.[8] [9] This time assumes a statistical model subject to Poincaré recurrence. A much simplified way of thinking about this time is in a model where the universe's history repeats itself arbitrarily many times due to properties of statistical mechanics; this is the time scale when it will first be somewhat similar (for a reasonable choice of "similar") to its current state again.
Combinatorial processes give rise to astonishingly large numbers. The factorial function, which quantifies permutations of a fixed set of objects, grows exponentially as the number of objects increases. Stirling's formula provides a precise asymptotic expression for this rapid growth.
In statistical mechanics, combinatorial numbers reach such immense magnitudes that they are often expressed using logarithms.
Gödel numbers, along with similar representations of bit-strings in algorithmic information theory, are vast—even for mathematical statements of moderate length. Remarkably, certain pathological numbers surpass even the Gödel numbers associated with typical mathematical propositions.
Logician Harvey Friedman has made significant contributions to the study of very large numbers, including work related to Kruskal's tree theorem and the Robertson–Seymour theorem.
To help viewers of Cosmos distinguish between "millions" and "billions", astronomer Carl Sagan stressed the "b". Sagan never did, however, say "billions and billions". The public's association of the phrase and Sagan came from a Tonight Show skit. Parodying Sagan's effect, Johnny Carson quipped "billions and billions".[10] The phrase has, however, now become a humorous fictitious number—the Sagan. Cf., Sagan Unit.
10100
10303
10600
103003
106000
2136,279,841-1
10googol
10100 | |
=10 |
| |||||
10 |
| |||||
10 |
A standardized way of writing very large numbers allows them to be easily sorted in increasing order, and one can get a good idea of how much larger a number is than another one.
To compare numbers in scientific notation, say 5×104 and 2×105, compare the exponents first, in this case 5 > 4, so 2×105 > 5×104. If the exponents are equal, the mantissa (or coefficient) should be compared, thus 5×104 > 2×104 because 5 > 2.
Tetration with base 10 gives the sequence
10\uparrow\uparrown=10\ton\to2=(10\uparrow)n1
(10\uparrow)n
f(n)=10n
These are very round numbers, each representing an order of magnitude in a generalized sense. A crude way of specifying how large a number is, is specifying between which two numbers in this sequence it is.
More precisely, numbers in between can be expressed in the form
(10\uparrow)na
| |||||||||||||
10 |
=(10\uparrow)54.829
10\uparrow\uparrow5
10\uparrow\uparrow6
10\uparrow\uparrown<(10\uparrow)na<10\uparrow\uparrow(n+1)
1<a<10
Thus googolplex is
10100 | |
10 |
=(10\uparrow)2100=(10\uparrow)32
Another example:
2\uparrow\uparrow\uparrow4=\begin{matrix}
| |||||||||||||||||||
\underbrace{2 | |||||||||||||||||||
10\uparrow\uparrow65,533
10\uparrow\uparrow65,534
Thus the "order of magnitude" of a number (on a larger scale than usually meant), can be characterized by the number of times (n) one has to take the
log10
10\uparrow\uparrown
10\uparrow\uparrow(n+1)
Note that
(10\uparrow)nx | |
10 |
=(10\uparrow)n10x
(10\uparrow)nx
If the height of the tower is large, the various representations for large numbers can be applied to the height itself. If the height is given only approximately, giving a value at the top does not make sense, so the double-arrow notation (e.g.
10\uparrow\uparrow(7.21 x 108)
Examples:
10\uparrow\uparrow
| |||||||||
10 |
10\uparrow\uparrow\uparrow2
10\uparrow\uparrow\uparrow3
10\uparrow\uparrow10\uparrow\uparrow(10\uparrow)497(9.73 x 1032)=(10\uparrow\uparrow)2(10\uparrow)497(9.73 x 1032)
10\uparrow\uparrow\uparrow4
10\uparrow\uparrow\uparrow5
Similarly to the above, if the exponent of
(10\uparrow)
(10\uparrow)
1
(10\uparrow\uparrow)
(10\uparrow\uparrow)3(2.8 x 1012)
If the exponent of
(10\uparrow\uparrow)
(10\uparrow\uparrow)
10\uparrow\uparrow\uparrow(7.3 x 106)
If the right-hand argument of the triple arrow operator is large the above applies to it, obtaining e.g.
10\uparrow\uparrow\uparrow(10\uparrow\uparrow)2(10\uparrow)497(9.73 x 1032)
10\uparrow\uparrow\uparrow10\uparrow\uparrow\uparrow4
10\uparrow\uparrow\uparrow10\uparrow\uparrow\uparrow5
Then it is possible to proceed with operators with higher numbers of arrows, written
\uparrown
Compare this notation with the hyper operator and the Conway chained arrow notation:
a\uparrownb
(a\uparrown)kb
(10\uparrow2)3b
''b''=1
10\uparrow33=(10\uparrow2)31
Since the b can also be very large, in general it can be written instead a number with a sequence of powers
(10\uparrown)
kn | |
{kn}
{kn}
{kn+1
kn+1 | |
({n+1}) |
For describing numbers approximately, deviations from the decreasing order of values of n are not needed. For example,
10\uparrow(10\uparrow\uparrow)5a=(10\uparrow\uparrow)6a
10\uparrow(10\uparrow\uparrow\uparrow3)=10\uparrow\uparrow(10\uparrow\uparrow10+1) ≈ 10\uparrow\uparrow\uparrow3
If the superscript of the upward arrow is large, the various representations for large numbers can be applied to this superscript itself. If this superscript is not exactly given then there is no point in raising the operator to a particular power or to adjust the value on which it act, instead it is possible to simply use a standard value at the right, say 10, and the expression reduces to
10\uparrown10=(10\to10\ton)
The above can be applied recursively for this n, so the notation
\uparrown
(10 → 10 → (10 → 10 →
3 x 105
10\uparrow
| |||||||
10
If the number of levels gets too large to be convenient, a notation is used where this number of levels is written down as a number (like using the superscript of the arrow instead of writing many arrows). Introducing a function
f(n)=10\uparrown10
fm(n)
f2(3 x 105)
(10\to10\to3\to2)=10\uparrow
| |||||||
10
Compare the definition of Graham's number: it uses numbers 3 instead of 10 and has 64 arrow levels and the number 4 at the top; thus
G<3 → 3 → 65 → 2<(10\to10\to65\to2)=f65(1)
G<f64(4)<f65(1)
If m in
fm(n)
g(n)=fn(1)
gm(n)
m(n) | |
f | |
k |
fk(n)=f
n(1) | |
k-1 |
mk | |
{f | |
k} |
(10\uparrown)
pn | |
When k is too large to be given exactly, the number concerned can be expressed as
{fn}(10)
10n
10\uparrown10
{fn}(10)
{fqk
(10\uparrown)
pn | |
For a number too large to write down in the Conway chained arrow notation it size can be described by the length of that chain, for example only using elements 10 in the chain; in other words, one could specify its position in the sequence 10, 10→10, 10→10→10, .. If even the position in the sequence is a large number same techniques can be applied again.
Numbers expressible in decimal notation:
| |||||
2 |
Numbers expressible in scientific notation:
| |||||||||
2 |
=2\uparrow\uparrow5=265,536 ≈ 2.0 x 1019,728 ≈ (10\uparrow)24.3
M136,279,841 ≈ 8.82 x 1041,024,319 ≈
107.6130 | |
10 |
≈ (10\uparrow)2 7.6130
| |||||
3 |
=3\uparrow\uparrow4 ≈ 1.26 x 103,638,334,640,024 ≈ (10\uparrow)31.10
Numbers expressible in (10 ↑)n k notation:
10100 | |
10 |
=(10\uparrow)32
| |||||||||||||
2 |
=2\uparrow\uparrow6=
265,536 | |
2 |
≈
(10\uparrow)24.3 | |
2 |
≈
(10\uparrow)24.3 | |
10 |
=(10\uparrow)34.3
| |||||
10 |
=10\uparrow\uparrow4=(10\uparrow)41
| |||||||||
3 |
=3\uparrow\uparrow5 ≈
| |||||
3 |
≈ (10\uparrow)41.10
| |||||||||||||||||
2 |
=2\uparrow\uparrow7 ≈ (10\uparrow)44.3
Bigger numbers:
10\uparrow\uparrow\uparrow3=(10\uparrow\uparrow)31
(10\uparrow\uparrow)211
(10\uparrow\uparrow)2
| |||||||||
10 |
10\uparrow\uparrow\uparrow4=(10\uparrow\uparrow)41
(10\uparrow\uparrow)2(10\uparrow)497(9.73 x 1032)
10\uparrow\uparrow\uparrow5=(10\uparrow\uparrow)51
10\uparrow\uparrow\uparrow6=(10\uparrow\uparrow)61
10\uparrow\uparrow\uparrow7=(10\uparrow\uparrow)71
10\uparrow\uparrow\uparrow8=(10\uparrow\uparrow)81
10\uparrow\uparrow\uparrow9=(10\uparrow\uparrow)91
10\uparrow\uparrow\uparrow\uparrow2=10\uparrow\uparrow\uparrow10=(10\uparrow\uparrow)101
10\uparrow\uparrow\uparrow\uparrow3=(10\uparrow\uparrow\uparrow)31
4\uparrow\uparrow\uparrow\uparrow4
≈ (10\uparrow\uparrow\uparrow)2(10\uparrow\uparrow)3154
10\uparrow\uparrow\uparrow\uparrow4=(10\uparrow\uparrow\uparrow)41
10\uparrow\uparrow\uparrow\uparrow5=(10\uparrow\uparrow\uparrow)51
10\uparrow\uparrow\uparrow\uparrow6=(10\uparrow\uparrow\uparrow)61
10\uparrow\uparrow\uparrow\uparrow7=(10\uparrow\uparrow\uparrow)71=
10\uparrow\uparrow\uparrow\uparrow8=(10\uparrow\uparrow\uparrow)81=
10\uparrow\uparrow\uparrow\uparrow9=(10\uparrow\uparrow\uparrow)91=
10\uparrow\uparrow\uparrow\uparrow\uparrow2=10\uparrow\uparrow\uparrow\uparrow10=(10\uparrow\uparrow\uparrow)101
1010
10\uparrow
1010 | |
10
1010
10\uparrow
| |||||||
10
Some notations for extremely large numbers:
These notations are essentially functions of integer variables, which increase very rapidly with those integers. Ever-faster-increasing functions can easily be constructed recursively by applying these functions with large integers as argument.
A function with a vertical asymptote is not helpful in defining a very large number, although the function increases very rapidly: one has to define an argument very close to the asymptote, i.e. use a very small number, and constructing that is equivalent to constructing a very large number, e.g. the reciprocal.
The following illustrates the effect of a base different from 10, base 100. It also illustrates representations of numbers and the arithmetic.
10012=1024
10012 | |
100 |
2*1024 | |
=10 |
| |||||
100 |
≈
| |||||
10 |
100\uparrow\uparrow2=10200
100\uparrow\uparrow
2 x 10200 | |
3=10 |
100\uparrow\uparrow4=(10\uparrow)2(2 x 10200+0.3)=(10\uparrow)2(2 x 10200)=(10\uparrow)3200.3=(10\uparrow)42.3
100\uparrow\uparrown=(10\uparrow)n-2(2 x 10200)=(10\uparrow)n-1200.3=(10\uparrow)n2.3<10\uparrow\uparrow(n+1)
100\uparrow\uparrown
10\uparrow\uparrown
100\uparrow\uparrow\uparrow2=(10\uparrow)98(2 x 10200)=(10\uparrow)1002.3
100\uparrow\uparrow\uparrow3=10\uparrow\uparrow(10\uparrow)98(2 x 10200)=10\uparrow\uparrow(10\uparrow)1002.3
100\uparrow\uparrow\uparrown=(10\uparrow\uparrow)n-2(10\uparrow)98(2 x 10200)=(10\uparrow\uparrow)n-2(10\uparrow)1002.3<10\uparrow\uparrow\uparrow(n+1)
10\uparrow\uparrow\uparrown=(10\uparrow\uparrow)n-2(10\uparrow)101<10\uparrow\uparrow\uparrow(n+1)
100\uparrow\uparrow\uparrown
10\uparrow\uparrow\uparrown
100\uparrow\uparrow\uparrow\uparrow2=(10\uparrow\uparrow)98(10\uparrow)1002.3
10\uparrow\uparrow\uparrow\uparrow2=(10\uparrow\uparrow)8(10\uparrow)101
100\uparrow\uparrow\uparrow\uparrow3=10\uparrow\uparrow\uparrow(10\uparrow\uparrow)98(10\uparrow)1002.3
10\uparrow\uparrow\uparrow\uparrow3=10\uparrow\uparrow\uparrow(10\uparrow\uparrow)8(10\uparrow)101
100\uparrow\uparrow\uparrow\uparrown=(10\uparrow\uparrow\uparrow)n-2(10\uparrow\uparrow)98(10\uparrow)1002.3
10\uparrow\uparrow\uparrow\uparrown=(10\uparrow\uparrow\uparrow)n-2(10\uparrow\uparrow)8(10\uparrow)101
For a number
10n
6.2 x 103 | |
10 |
1050
In the case of an approximation of an extremely large number, the relative error may be large, yet there may still be a sense in which one wants to consider the numbers as "close in magnitude". For example, consider
1010
109
The relative error is
1-
109 | |
1010 |
=1-
1 | |
10 |
=90\%
a large relative error. However, one can also consider the relative error in the logarithms; in this case, the logarithms (to base 10) are 10 and 9, so the relative error in the logarithms is only 10%.
The point is that exponential functions magnify relative errors greatly – if a and b have a small relative error,
10a
10b
the relative error is larger, and
10a | |
10 |
10b | |
10 |
will have an even larger relative error. The question then becomes: on which level of iterated logarithms to compare two numbers? There is a sense in which one may want to consider
1010 | |
10 |
109 | |
10 |
to be "close in magnitude". The relative error between these two numbers is large, and the relative error between their logarithms is still large; however, the relative error in their second-iterated logarithms is small:
log10(log10
1010 | |
(10 |
))=10
log10(log10
109 | |
(10 |
))=9
Such comparisons of iterated logarithms are common, e.g., in analytic number theory.
One solution to the problem of comparing large numbers is to define classes of numbers, such as the system devised by Robert Munafo,[13] which is based on different "levels" of perception of an average person. Class 0 – numbers between zero and six – is defined to contain numbers that are easily subitized, that is, numbers that show up very frequently in daily life and are almost instantly comparable. Class 1 – numbers between six and 1,000,000=10 – is defined to contain numbers whose decimal expressions are easily subitized, that is, numbers who are easily comparable not by cardinality, but "at a glance" given the decimal expansion.
Each class after these are defined in terms of iterating this base-10 exponentiation, to simulate the effect of another "iteration" of human indistinguishibility. For example, class 5 is defined to include numbers between 10 and 10, which are numbers where becomes humanly indistinguishable from [14] (taking iterated logarithms of such yields indistinguishibility firstly between log and 2log, secondly between log(log) and 1+log(log), and finally an extremely long decimal expansion whose length can't be subitized).
There are some general rules relating to the usual arithmetic operations performed on very large numbers:
(10a)
10b | |
a10b | |
=10 |
| |||||
=10 |
n
nn ≈ 10n
2n ≈ 10n
2\uparrow\uparrow65536 ≈ 10\uparrow\uparrow65533
See main article: fast-growing hierarchy. Given a strictly increasing integer sequence/function
f0(n)
f1(n)=
n(n) | |
f | |
0 |
fk(n)=
n(n) | |
f | |
k-1 |
f\omega(n)=fn(n)
fk
For example, starting with f0(n) = n + 1:
The busy beaver function Σ is an example of a function which grows faster than any computable function. Its value for even relatively small input is huge. The values of Σ(n) for n = 1, 2, 3, 4, 5 are 1, 4, 6, 13, 4098[15] . Σ(6) is not known but is at least 10↑↑15.
See main article: cardinal number.
See also: large cardinal, Mahlo cardinal and totally indescribable cardinal. Although all the numbers discussed above are very large, they are all still decidedly finite. Certain fields of mathematics define infinite and transfinite numbers. For example, aleph-null is the cardinality of the infinite set of natural numbers, and aleph-one is the next greatest cardinal number.
ak{c}
ak{c}=\aleph1
10\uparrown10<3\uparrown+13