|
:"Big numbers" redirects here. For the comic book series, see Big Numbers. For the naming of large numbers in English, see names of large numbers. Large numbers are numbers that are significantly larger than those ordinarily used in everyday life, for instance in simple counting or in monetary transactions. The term typically refers to large positive integers, or more generally, large positive real numbers, but it may also be used in other contexts. Very large numbers often occur in fields such as mathematics, cosmology and cryptography. Sometimes people refer to numbers as being "astronomically large". However, it is easy to mathematically define numbers that are much larger than those even in astronomy. Using scientific notation to handle large and small numbers Scientific notation was created to handle the wide range of values which occur in scientific study. 1.0 × 109, for example, means one billion, a 1 followed by nine zeros: 1 000 000 000, and 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 string of zeros to see how large the number is. Adding a 0 onto the end of a number multiplies it by 10: 100 is 10 times 10. In scientific notation, however, the exponent only increases by one, from 101 to 102. Remember then, when reading numbers in scientific notation, that small changes in the exponent equate to large changes in the number itself: 2.5 × 100 dollars (USD 2.50) is the price of a large burger, 2.5 × 105 dollars (USD 250 000) is a common price for new homes in the U.S., while 2.5 × 1010 dollars (USD 25 billion) would make you one of the world's richest people (tied for third place in 2005) and 2.5 × 1015 dollars (USD 2.5 quadrillion) is more than all the government debts, all the money in circulation, and all the market capitalizations of all public corporations combined. Large numbers in the everyday world Some large numbers apply to things in the everyday world. Examples of large numbers describing everyday real-world objects are: A rule of thumb for converting between scientific notation and powers of two Here is a rule of thumb for converting between scientific notation and powers of two, since computer-related quantities are frequently stated in powers of two. Note that 103 = 1000 is very near 210 = 1024. This allows for a quick mental conversion between powers of ten and powers of two. For example, 220 is around 106 = 1,000,000, and 230 is around 109 = 1,000,000,000. Some other examples: and But note that this approximation "loses" one factor of 2 for every 292. Therefore, (not ) Computers and computational complexity Moore's Law, generally speaking, estimates that computers double in speed about every 18 months. This sometimes leads people to believe that eventually, computers will be able to solve any mathematical problem, no matter how complicated. This is not the case; computers are fundamentally limited by the constraints of physics, and certain upper bounds on what we can expect can reasonably be formulated. Also, there are certain theoretical results which show that some problems are inherently beyond the reach of complete computational solution, no matter how powerful or fast the computation; see N-body problem. Between 1980 and 2000, hard disk sizes increased from about 10 megabytes (1 × 107) to over 100 gigabytes (1011 bytes). A 100 gigabyte disk could store the given names of all of Earth's six billion inhabitants without using data compression. But what about a dictionary-on-disk storing all possible passwords containing up to 40 characters? Assuming each character equals one byte, there are about 2320 such passwords, which is about 2 × 1096. This paper points out that if every particle in the universe could be used as part of a huge computer, it could store only about 1090 bits, less than one millionth of the size our dictionary would require. Of course, even if computers can't store all possible 40 character strings, they can easily be programmed to start creating and displaying them one at a time. As long as we don't try to store all the output, our program could run indefinitely. Assuming a modern PC could output 1 billion strings per second, it would take one billionth of 2 × 1096 seconds, or 2 × 1087 seconds to complete its task, which is about 6 × 1079 years. By contrast, the universe is estimated to be 13.7 billion (1.37 × 1010) years old. Of course, computers will presumably continue to get faster, but the same paper mentioned before estimates that the entire universe functioning as a giant computer could have performed no more than 10120 operations since the Big Bang. This is trillions of times more computation than is required for our string-displaying problem, but simply by raising the stakes to printing all 50 character strings instead of all 40 character strings we can outstrip the estimated computational potential of even the universe itself. Problems like our simple string-displaying example grow exponentially in the number of computations they require, and are one reason why exponentially difficult problems are called "intractable" in computer science: for even small numbers like the 40 or 50 characters we used in our example, the number of computations required exceeds even theoretical limits on mankind's computing power. The traditional division between "easy" and "hard" problems is thus drawn between programs that do and do not require exponentially increasing resources to execute. However, not requiring exponentially increasing resources is not enough to guarantee computability in practice – e.g. there are many algorithms of polynomial growth whose numerical parameters are so large as to render them unusable. Such limits work to our advantage in cryptography, since we can safely assume that any cipher-breaking technique which requires more than, say, the 10120 operations mentioned before will never be feasible. Of course, many ciphers have been broken by finding efficient techniques which require only modest amounts of computing power and exploit weaknesses unknown to the cipher's designer. Likewise, much of the research throughout all branches of computer science focuses on finding new, efficient solutions to problems that work with far fewer resources than are required by a naïve solution. For example, one way of finding the greatest common divisor between two 1000 digit numbers is to compute all their factors by trial division. This will take up to 2 × 10500 division operations, far too large to contemplate. But the Euclidean algorithm, using a much more efficient technique, takes only a fraction of a second to compute the GCD for even huge numbers such as these. As a general rule, then, PCs in 2005 can perform 240 calculations in a few minutes. A few thousand PCs working for a few years could solve a problem requiring 264 calculations, but no amount of traditional computing power will solve a problem requiring 2128 operations (which is about what would be required to break the 128-bit SSL commonly used in web browsers, assuming the underlying ciphers remain secure). Limits on computer storage are comparable. Quantum computers may allow certain problems to become feasible, but as of 2005 it is far too soon to tell. "Astronomically large" numbers Other large numbers, as regards length and time, are found in astronomy Even larger numbers 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. Examples The total amount of printed material in the world is roughly 1.6 × 1018 bits; therefore the contents can be represented by a number which is roughly For a "power tower", the most relevant for the value are the height and the last few values. Compare with googolplex: Also compare: Standardized system of writing very large numbers 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. Tetration with base 10 can be used for very round numbers, each representing an order of magnitude in a generalized sense. Numbers in between can be expressed with a power tower of numbers 10, with a regular number at the top, possibly in scientific notation, e.g. , a number between and (if the exponent quite at the top is between 10 and , like here, the number like the 7 here is the height). If the height is too large to write out the whole power tower, a notation like can be used, where denotes a functional power of the function (the function also expressed by the suffix "-plex" as in googolplex, see the Googol family). Various names are used for this representation: The notation is in ASCII ((10^)^183)3.12e6; a proposed simplification is 10^^183@3.12e6; the notations 10^^1@3.12e6 and 10^^0@3.12e6 are not needed, one can just write 10^3.12e6 and 3.12e6. Thus googolplex = 10^^2@100 = 10^^3@2 = 10^^4@0.301; which notation is chosen may be considered on a number-by-number basis, or uniformly. In the latter case comparing numbers is sometimes a little easier. For example, comparing 10^^2@23.8 with 10^6e23 requires the small computation 10^.8=6.3 to see that the first number is larger. To standardize the range of the upper value (after the @), one can choose one of the ranges 0–1, 1–10, or 10–1e10: Another example: egin underbrace\ qquadquad 65,536mbox2 endapprox (10uparrow)^(6.0 imes 10^) (between and ) The "order of magnitude" of a number (on a larger scale than usually meant), can be characterized by the number of times (say n) one has to take the to get a number between 1 and 10. Then the number is between and An obvious property that is yet worth mentioning is: I.e., if a number x is too large for a representation we can make the power tower one higher, replacing x by , or find x from the lower-tower representation of the 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 not exactly given then giving a value at the top does not make sense, and a notation like can be used. If the value after the double arrow is a very large number itself, the above can recursively be applied on that value. Examples: (between and ) (between and ) Some large numbers which one may try to express in such standard forms include Graham's number and Steinhaus' Mega and Megiston, Moser's number. Accuracy Note that 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, 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). Accuracy for very large numbers With extremely large numbers, the relative error may be large, yet there may still be a sense in which we want to consider the numbers as "close in magnitude". For example, consider and The relative error is a large relative error. However, we 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 is only 10%. The point is that exponential functions magnify relative errors greatly – if a and b have small relative error, and may not have small relative error, and and will have even larger relative error. The question then becomes: on which level of iterated logarithms do we wish to compare two numbers? There is a sense in which we may want to consider and to be "close in magnitude". The relative error between these two number 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. Approximate arithmetic for very large numbers There are some general rules relating to the usual arithmetic operations performed on very large numbers: Uncomputably large numbers 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 1.29×10865. Some of the work by Harvey Friedman also involve sequences that grow faster than any computable function. * Infinite numbers Although all these numbers above are very large, they are all still finite. Some 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. Notations Some notations for extremely large numbers: Note that 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. English names In addition to in mathematical and scientific notation, large numbers can be written out in English. See also | |||||||
|
| ||||||||
![]() |
|
| |