Large numbers

Large numbers are numbers significantly larger than those typically used in everyday life (for instance in simple counting or in monetary transactions), appearing frequently in fields such as mathematics, cosmology, cryptography, and statistical mechanics. They are typically large positive integers, or more generally, large positive real numbers, but may also be other numbers in other contexts.
Googology is the study of nomenclature and properties of large numbers.
In the everyday world
Scientific notation was created to handle the wide range of values that occur in scientific study. 1.0 × 109, for example, means one billion, or a 1 followed by nine zeros: 1 000 000 000. The reciprocal, 1.0 × 10−9, means one billionth, or 0.000 000 001. Writing 109 instead of nine zeros saves readers the effort and hazard of counting a long series of zeros to see how large the number is. In addition to scientific (powers of 10) notation, the following examples include (short scale) systematic nomenclature of large numbers.
Examples of large numbers describing everyday real-world objects include:
The number of cells in the human body (estimated at 3.72 × 1013), or 37.2 trillion
The number of bits on a computer hard disk (typically about 1013, 1–2 TB), or 10 trillion
The number of neuronal connections in the human brain (estimated at 1014), or 100 trillion
The Avogadro constant is the number of “elementary entities” (usually atoms or molecules) in one mole; the number of atoms in 12 grams of carbon-12 approximately , or 602.2 sextillion.
The total number of DNA base pairs within the entire biomass on Earth, as a possible approximation of global biodiversity, is estimated at (5.3 ± 3.6) × 1037, or 53±36 undecillion
The mass of Earth consists of about 4 × 1051, or 4 sexdecillion, nucleons
The estimated number of atoms in the observable universe (1080), or 100 quinvigintillion
The lower bound on the game-tree complexity of chess, also known as the “Shannon number” (estimated at around 10120), or 1 novemtrigintillion
Note that this value of the Shannon number is for Standard Chess. It has even larger values for larger-board chess variants such as Grant Acedrex, Tai Shogi, and Taikyoku Shogi.
Astronomical
Other large numbers, as regards length and time, are found in astronomy and cosmology. For example, the current Big Bang model suggests that the universe is 13.8 billion years (4.355 × 1017 seconds) old, and that the observable universe is 93 billion light years across (8.8 × 1026 metres), and contains about 5 × 1022 stars, organized into around 125 billion (1.25 × 1011) galaxies, according to Hubble Space Telescope observations. There are about 1080 atoms in the observable universe, by rough estimation.
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
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. 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 rapidly generate even larger numbers. The factorial function, which defines the number of permutations on a set of fixed objects, grows very rapidly with the number of objects. Stirling's formula gives a precise asymptotic expression for this rate of growth.
Combinatorial processes generate very large numbers in statistical mechanics. These numbers are so large that they are typically only referred to using their logarithms.
Gödel numbers, and similar numbers used to represent bit-strings in algorithmic information theory, are very large, even for mathematical statements of reasonable length. However, some pathological numbers are even larger than the Gödel numbers of typical mathematical propositions.
Logician Harvey Friedman has done work related to very large numbers, such as with Kruskal's tree theorem and the Robertson–Seymour theorem.
"Billions and billions"
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". The phrase has, however, now become a humorous fictitious number—the Sagan. Cf., Sagan Unit.
Examples
googol =
centillion = or , depending on number naming system
millinillion = or , depending on number naming system
The largest known Smith number = (101031−1) × (104594 + 3 + 1)1476
The largest known Mersenne prime =
googolplex =
Skewes's numbers: the first is approximately , the second
Tritri {3, 3, 3} on the lower end of BEAF (Bowers Exploding Array Function). It can be written as 3{3}3, 3^^^3 or 3^^(3^^3), the latter 2 showing how Knuth's up-arrow notation begins to build Graham's number.
Tritet {4, 4, 4} on the lower end of BEAF (Bowers Exploding Array Function).
Graham's number, larger than what can be represented even using power towers (tetration). However, it can be represented using layers of Knuth's up-arrow notation.
Supertet {4, 4, 4, 4}, example of the numbers that can be generated through BEAF (Bowers Exploding Array Function). It can be written as 4{}4, a more clear representation of the denotetration used to generate the number.
Kruskal's tree theorem is a sequence relating to graphs. TREE(3) is larger than Graham's number.
Rayo's number is a large number named after Agustín Rayo which has been claimed to be the largest named number. It was originally defined in a "big number duel" at MIT on 26 January 2007.
Standardized system of writing
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 , the power towers of numbers 10, where denotes a functional power of the function (the function also expressed by the suffix "-plex" as in googolplex, see the googol family).
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 , i.e., with a power tower of 10s and a number at the top, possibly in scientific notation, e.g. , a number between and (note that if ). (See also extension of tetration to real heights.)
Thus googolplex is
Another example:
(between and )
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 to get a number between 1 and 10. Thus, the number is between and . As explained, a more precise description of a number also specifies the value of this number between 1 and 10, or the previous number (taking the logarithm one time less) between 10 and 1010, or the next, between 0 and 1.
Note that
I.e., if a number x is too large for a representation the power tower can be made one higher, replacing x by log10x, or find x from the lower-tower representation of the log10 of the whole number. If the power tower would contain one or more numbers different from 10, the two approaches would lead to different results, corresponding to the fact that extending the power tower with a 10 at the bottom is then not the same as extending it with a 10 at the top (but, of course, similar remarks apply if the whole power tower consists of copies of the same number, different from 10).
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. ) can be used. If the value after the double arrow is a very large number itself, the above can recursively be applied to that value.
Examples:
(between and )
(between and )
Similarly to the above, if the exponent of is not exactly given then giving a value at the right does not make sense, and instead of using the power notation of , it is possible to add to the exponent of , to obtain e.g. .
If the exponent of is large, the various representations for large numbers can be applied to this exponent itself. If this exponent is not exactly given then, again, giving a value at the right does not make sense, and instead of using the power notation of it is possible use the triple arrow operator, e.g. .
If the right-hand argument of the triple arrow operator is large the above applies to it, obtaining e.g. (between and ). This can be done recursively, so it is possible to have a power of the triple arrow operator.
Then it is possible to proceed with operators with higher numbers of arrows, written .
Compare this notation with the hyper operator and the Conway chained arrow notation:
= (a → b → n ) = hyper(a, n + 2, b)
An advantage of the first is that when considered as function of b, there is a natural notation for powers of this function (just like when writing out the n arrows): . For example:
= (10 → ( 10 → ( 10 → b → 2 ) → 2 ) → 2 )
and only in special cases the long nested chain notation is reduced; for obtains:
= (10 → 3 → 3 )
Since the b can also be very large, in general it can be written instead a number with a sequence of powers with decreasing values of n (with exactly given integer exponents ) with at the end a number in ordinary scientific notation. Whenever a is too large to be given exactly, the value of is increased by 1 and everything to the right of is rewritten.
For describing numbers approximately, deviations from the decreasing order of values of n are not needed. For example and . Thus is obtained the somewhat counterintuitive result that a number x can be so large that, in a way, x and 10x are "almost equal" (for arithmetic of large numbers see also below).
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 with an approximate n. For such numbers the advantage of using the upward arrow notation no longer applies, so the chain notation can be used instead.
The above can be applied recursively for this n, so the notation is obtained in the superscript of the first arrow, etc., or a nested chain notation, e.g.:
(10 → 10 → (10 → 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 = (10 → 10 → n), these levels become functional powers of f, allowing us to write a number in the form where m is given exactly and n is an integer which may or may not be given exactly (for example: ). If n is large, any of the above can be used for expressing it. The "roundest" of these numbers are those of the form fm(1) = (10→10→m→2). For example,
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 , but also .
If m in is too large to give exactly, it is possible to use a fixed n, e.g. n = 1, and apply the above recursively to m, i.e., the number of levels of upward arrows is itself represented in the superscripted upward-arrow notation, etc. Using the functional power notation of f this gives multiple levels of f. Introducing a function these levels become functional powers of g, allowing us to write a number in the form where m is given exactly and n is an integer which may or may not be given exactly. For example, if (10→10→m→3) = gm(1). If n is large any of the above can be used for expressing it. Similarly a function h, etc. can be introduced. If many such functions are required, they can be numbered instead of using a new letter every time, e.g. as a subscript, such that there are numbers of the form where k and m are given exactly and n is an integer which may or may not be given exactly. Using k=1 for the f above, k=2 for g, etc., obtains (10→10→n→k) = . If n is large any of the above can be used to express it. Thus is obtained a nesting of forms where going inward the k decreases, and with as inner argument a sequence of powers with decreasing values of n (where all these numbers are exactly given integers) with at the end a number in ordinary scientific notation.
When k is too large to be given exactly, the number concerned can be expressed as =(10→10→10→n) with an approximate n. Note that the process of going from the sequence =(10→n) to the sequence =(10→10→n) is very similar to going from the latter to the sequence =(10→10→10→n): it is the general process of adding an element 10 to the chain in the chain notation; this process can be repeated again (see also the previous section). Numbering the subsequent versions of this function a number can be described using functions , nested in lexicographical order with q the most significant number, but with decreasing order for q and for k; as inner argument yields a sequence of powers with decreasing values of n (where all these numbers are exactly given integers) with at the end a number in ordinary scientific notation.
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.
Examples
Numbers expressible in decimal notation:
22 = 4
222 = 2 ↑↑ 3 = 16
33 = 27
44 = 256
55 = 3,125
66 = 46,656
= 2 ↑↑ 4 = 2↑↑↑3 = 65,536
77 = 823,543
106 = 1,000,000 = 1 million
88 = 16,777,216
99 = 387,420,489
109 = 1,000,000,000 = 1 billion
1010 = 10,000,000,000
1012 = 1,000,000,000,000 = 1 trillion
333 = 3 ↑↑ 3 = 7,625,597,484,987 ≈ 7.63 × 1012
1015 = 1,000,000,000,000,000 = 1 million billion = 1 quadrillion
1018 = 1,000,000,000,000,000,000 = 1 billion billion = 1 quintilion
Numbers expressible in scientific notation:
Approximate number of atoms in the observable universe = 1080 = 100,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000
googol = 10100 = 10,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000
444 = 4 ↑↑ 3 = 2512 ≈ 1.34 × 10154 ≈ (10 ↑)2 2.2
Approximate number of Planck volumes composing the volume of the observable universe = 8.5 × 10184
555 = 5 ↑↑ 3 = 53125 ≈ 1.91 × 102184 ≈ (10 ↑)2 3.3
666 = 6 ↑↑ 3 ≈ 2.66 × 1036,305 ≈ (10 ↑)2 4.6
777 = 7 ↑↑ 3 ≈ 3.76 × 10695,974 ≈ (10 ↑)2 5.8
888 = 8 ↑↑ 3 ≈ 6.01 × 1015,151,335 ≈ (10 ↑)2 7.2
, the 51st and the largest known Mersenne prime.
999 = 9 ↑↑ 3 ≈ 4.28 × 10369,693,099 ≈ (10 ↑)2 8.6
101010 =10 ↑↑ 3 = 1010,000,000,000 = (10 ↑)3 1
Numbers expressible in (10 ↑)n k notation:
googolplex =
10 ↑↑ 5 = (10 ↑)5 1
3 ↑↑ 6 ≈ (10 ↑)5 1.10
2 ↑↑ 8 ≈ (10 ↑)5 4.3
10 ↑↑ 6 = (10 ↑)6 1
10 ↑↑↑ 2 = 10 ↑↑ 10 = (10 ↑)10 1
2 ↑↑↑↑ 3 = 2 ↑↑↑ 4 = 2 ↑↑ 65,536 ≈ (10 ↑)65,533 4.3 is between 10 ↑↑ 65,533 and 10 ↑↑ 65,534
Bigger numbers:
3 ↑↑↑ 3 = 3 ↑↑ (3 ↑↑ 3) ≈ 3 ↑↑ 7.6 × 1012 ≈ 10 ↑↑ 7.6 × 1012 is between (10 ↑↑)2 2 and (10 ↑↑)2 3
= (10 → 3 → 3 )
= (10 → 4 → 3 )
= (10 → 5 → 3 )
= (10 → 6 → 3 )
= (10 → 7 → 3 )
= (10 → 8 → 3 )
= (10 → 9 → 3 )
= (10 → 2 → 4 ) = (10 → 10 → 3 )
The first term in the definition of Graham's number, g1 = 3 ↑↑↑↑ 3 = 3 ↑↑↑ (3 ↑↑↑ 3) ≈ 3 ↑↑↑ (10 ↑↑ 7.6 × 1012) ≈ 10 ↑↑↑ (10 ↑↑ 7.6 × 1012) is between (10 ↑↑↑)2 2 and (10 ↑↑↑)2 3 (See Graham's number#Magnitude)
= (10 → 3 → 4)
= (4 → 4 → 4 )
= (10 → 4 → 4 )
= (10 → 5 → 4 )
= (10 → 6 → 4 )
= (10 → 7 → 4 )
= (10 → 8 → 4 )
= (10 → 9 → 4 )
= (10 → 2 → 5 ) = (10 → 10 → 4 )
(2 → 3 → 2 → 2 ) = (2 → 3 → 8 )
(3 → 2 → 2 → 2 ) = (3 → 2 → 9 ) = (3 → 3 → 8 )
(10 → 10 → 10 ) = (10 → 2 → 11 )
(10 → 2 → 2 → 2 ) = (10 → 2 → 100 )
(10 → 10 → 2 → 2 ) = (10 → 2 → ) =
The second term in the definition of Graham's number, g2 = 3 ↑g1 3 > 10 ↑g1 – 1 10.
(10 → 10 → 3 → 2 ) = (10 → 10 → (10 → 10 → ) ) =
g3 = (3 → 3 → g2) > (10 → 10 → g2 – 1) > (10 → 10 → 3 → 2)
g4 = (3 → 3 → g3) > (10 → 10 → g3 – 1) > (10 → 10 → 4 → 2)
...
g9 = (3 → 3 → g8) is between (10 → 10 → 9 → 2) and (10 → 10 → 10 → 2)
(10 → 10 → 10 → 2 )
g10 = (3 → 3 → g9) is between (10 → 10 → 10 → 2) and (10 → 10 → 11 → 2)
...
g63 = (3 → 3 → g62) is between (10 → 10 → 63 → 2) and (10 → 10 → 64 → 2)
(10 → 10 → 64 → 2 )
Graham's number, g64
(10 → 10 → 65 → 2 )
(10 → 10 → 10 → 3 )
(10 → 10 → 10 → 4 )
(10 → 10 → 10 → 10 )
(10 → 10 → 10 → 10 → 10 )
(10 → 10 → 10 → 10 → 10 → 10 )
(10 → 10 → 10 → 10 → 10 → 10 → 10 → ... → 10 → 10 → 10 → 10 → 10 → 10 → 10 → 10 ) where there are (10 → 10 → 10 ) "10"s
Other notations
Some notations for extremely large numbers:
Knuth's up-arrow notation/hyperoperators/Ackermann function, including tetration
Conway chained arrow notation
Steinhaus-Moser notation; apart from the method of construction of large numbers, this also involves a graphical notation with polygons. Alternative notations, like a more conventional function notation, can also be used with the same functions.
Fast-growing hierarchy
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.
Comparison of base values
The following illustrates the effect of a base different from 10, base 100. It also illustrates representations of numbers and the arithmetic.
, with base 10 the exponent is doubled.
, ditto.
, the highest exponent is very little more than doubled (increased by log102).
(thus if n is large it seems fair to say that is "approximately equal to" )
(compare ; thus if n is large it seems fair to say that is "approximately equal to" )
(compare )
(compare )
(compare ; if n is large this is "approximately" equal)
Accuracy
For a number , one unit change in n changes the result by a factor 10. In a number like , with the 6.2 the result of proper rounding using significant figures, the true value of the exponent may be 50 less or 50 more. Hence the result may be a factor too large or too small. This seems like extremely poor accuracy, but for such a large number it may be considered fair (a large error in a large number may be "relatively small" and therefore acceptable).
For very large numbers
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
and
The relative error is
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,
and
the relative error is larger, and
and
will have an even larger relative error. The question then becomes: on which level of iterated logarithms do to compare two numbers? There is a sense in which one may want to consider
and
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:
and
Such comparisons of iterated logarithms are common, e.g., in analytic number theory.
Classes
One solution to the problem of comparing large numbers is to define classes of numbers, such as the system devised by Robert Munafo, 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 (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).
Approximate arithmetic
There are some general rules relating to the usual arithmetic operations performed on very large numbers:
The sum and the product of two very large numbers are both "approximately" equal to the larger one.
Hence:
A very large number raised to a very large power is "approximately" equal to the larger of the following two values: the first value and 10 to the power the second. For example, for very large there is (see e.g. the computation of mega) and also . Thus , see table.
Systematically creating ever-faster-increasing sequences
Given a strictly increasing integer sequence/function (n≥1), it is possible to produce a faster-growing sequence (where the superscript n denotes the nth functional power). This can be repeated any number of times by letting , each sequence growing much faster than the one before it. Thus it is possible to define , which grows much faster than any for finite k (here ω is the first infinite ordinal number, representing the limit of all finite numbers k). This is the basis for the fast-growing hierarchy of functions, in which the indexing subscript is extended to ever-larger ordinals.
For example, starting with f0(n) = n + 1:
f1(n) = f0n(n) = n + n = 2n
f2(n) = f1n(n) = 2nn > (2 ↑) n for n ≥ 2 (using Knuth up-arrow notation)
f3(n) = f2n(n) > (2 ↑)n n ≥ 2 ↑2 n for n ≥ 2
fk+1(n) > 2 ↑k n for n ≥ 2, k < ω
fω(n) = fn(n) > 2 ↑n – 1 n > 2 ↑n − 2 (n + 3) − 3 = A(n, n) for n ≥ 2, where A is the Ackermann function (of which fω is a unary version)
fω+1(64) > fω64(6) > Graham's number (= g64 in the sequence defined by g0 = 4, gk+1 = 3 ↑gk 3)
This follows by noting fω(n) > 2 ↑n – 1 n > 3 ↑n – 2 3 + 2, and hence fω(gk + 2) > gk+1 + 2
fω(n) > 2 ↑n – 1 n = (2 → n → n-1) = (2 → n → n-1 → 1) (using Conway chained arrow notation)
fω+1(n) = fωn(n) > (2 → n → n-1 → 2) (because if gk(n) = X → n → k then X → n → k+1 = gkn(1))
fω+k(n) > (2 → n → n-1 → k+1) > (n → n → k)
fω2(n) = fω+n(n) > (n → n → n) = (n → n → n→ 1)
fω2+k(n) > (n → n → n → k)
fω3(n) > (n → n → n → n)
fωk(n) > (n → n → ... → n → n) (Chain of k+1 n'''s)
fω2(n) = fωn(n) > (n → n → ... → n → n) (Chain of n+1 n's)
In some noncomputable sequences
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 are 1, 4, 6, 13 . Σ(5) is not known but is definitely ≥ 4098. Σ(6) is at least 10↑↑15.
Infinite numbers
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. is the cardinality of the reals. The proposition that is known as the continuum hypothesis.
See also
Arbitrary-precision arithmetic
List of arbitrary-precision arithmetic software
Dirac large numbers hypothesis
Exponential growth
History of large numbers
Human scale
Indefinite and fictitious numbers
Largest number
Infinity
Law of large numbers
Myriads (10,000) in East Asia
Names of large numbers
Power of two
Power of 10
Tetration
References
Mathematical notation