At least I have to admit that this number is truly unbelievable. A Googol is nothing special; the total number of elementary particles in the known universe is about 10 to the power of 80. If this space was packed solid with neutrons, so there was no empty space anywhere, there would be about 10 to the power of 128 particles in it. This is quite a lot more than a Googol. But you simply cannot express the kind of Googolplex's numerical dimension with terms other than "10 to the power of something".
Note: Or can you? Physicist Don Page mailed me a text with a relatively simple description of how to imagine a value equivalent to Googolplex.
In print, a Googol also looks quite uninteresting. It is a 1 followed by 100 zeroes. It's boring. Now a Googolplex has a 1 followed by 10 to the power of 100 zeroes.
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
This is a Googol. See, there's nothing to it.
The beginning of Googolplex, in print, looks just like Googol, starting with 1 and a lot of zeroes. But this time, the zeroes are stretching out to infinity and beyond. Well, this is not entirely accurate, of course the number is much less than infinity. The fact alone that it was conceived is a proof of its finiteness.
Let's get real here. Let me show you a little program of mine, and then, in its explanations, try to picture a Googolplex.
Mindblowing Dimensions
It turned out to be rather simple to write a computer program that actually prints this number, this Googolplex. Because of this simplicity, even I fell for some ideas at first. I thought that I could just feed a Googolplex, generated by my program, to a compressor like gzip, and hoopla, I'd have a handy Googolplex on my hard disk. Then I thought about it some more and found out that, even if compressed to 0.1%, it'd need 10 to the power of 97 bytes.
There is simply no chance in downsizing a Googolplex to something handy.
It turned out to be rather simple to write a computer program that actually prints this number, this Googolplex. Because of this simplicity, even I fell for some ideas at first. I thought that I could just feed a Googolplex, generated by my program, to a compressor like gzip, and hoopla, I'd have a handy Googolplex on my hard disk. Then I thought about it some more and found out that, even if compressed to 0.1%, it'd need 10 to the power of 97 bytes.
There is simply no chance in downsizing a Googolplex to something handy.
The Program
Well, by twisting terms there is a chance to do exactly this, by introducing a generating function. Written in the C programming language, the function is only a couple of lines long. See below for more information on the program.
Well, by twisting terms there is a chance to do exactly this, by introducing a generating function. Written in the C programming language, the function is only a couple of lines long. See below for more information on the program.
The Proof
However, this program is completely useless, and it is possible to mathematically prove its uselessness. The proof first introduces two corollaries.
Corollary 1
However, this program is completely useless, and it is possible to mathematically prove its uselessness. The proof first introduces two corollaries.
Corollary 1
The computing power of microchips doubles every second year.
This statement is also known as "Moore's Law", named after the Intel Co-Founder. It has been empirically shown to be correct for the last 30 years. Actually, the original statement reads "every 18 months," I'm being a little more conservative than that. If you think that the value of two years is incorrect, invent another one. It doesn't make a lot of difference.
Corollary 2
This statement is also known as "Moore's Law", named after the Intel Co-Founder. It has been empirically shown to be correct for the last 30 years. Actually, the original statement reads "every 18 months," I'm being a little more conservative than that. If you think that the value of two years is incorrect, invent another one. It doesn't make a lot of difference.
Corollary 2
At today's speed, the program will run for 3.125*10^85 years.
The fastest available desktop computers of today will run the program at a speed that allows the printing of about 10 to the power of 7 digits per second. The average year has roughly 3.2*10^7 seconds, so this machine will print about 3.2*10^14 digits per year. We conclude that this machine will need 3.125*10^85 years to finish printing Googolplex.
We now combine these two corollaries in the following mental experiment. Imagine that you do not start the program now, but that you wait two years before starting it. Corollary 1 states that the processor power will have doubled by then, therefore halfing the running time calculated by corollary 2 to 1.5625*10^85 years.
The delayed program that's being started in two years therefore overtakes the program started today, and finishes its computation 1.5625*10^85 minus 2 years ahead of the undelayed program.
Of course, this makes it useless to run the program today, because it would only reproduce the already existing output of the program that's being started in the future. We have therefore shown that the program is useless today.
We complete the proof by iteratively using the above mental experiment on itself. It is easily understandable that it doesn't make any sense running the program as long as the computation time exceeds 4 years. A simple calculation shows that this will be not be the case for the next 282 "life cycles", that is, 564 years.
Until then, we can always overtake computation by running the same program two years later and therefore brand an undelayed program execution as useless.
We can summarize our thoughts in the following, now proven, sentence:
The program is useless today, and will be useless for the next 564 years. qed.
Lucas Watson (lwatkins@scri.fsu.edu) took a different approach, and pointed out that my program will be useless even in a million years, simply because there isn't enough matter to print a Googolplex on (and this fact is unlikely to change). According to him, this idea originated on Carl Sagan's Cosmos TV show.
But who said we have to print Googolplex in decimal? If we switch to base Googolplex, you can print it simply as 10. (suggested by Paul Dourishdourish@europarc.xerox.com).
The fastest available desktop computers of today will run the program at a speed that allows the printing of about 10 to the power of 7 digits per second. The average year has roughly 3.2*10^7 seconds, so this machine will print about 3.2*10^14 digits per year. We conclude that this machine will need 3.125*10^85 years to finish printing Googolplex.
We now combine these two corollaries in the following mental experiment. Imagine that you do not start the program now, but that you wait two years before starting it. Corollary 1 states that the processor power will have doubled by then, therefore halfing the running time calculated by corollary 2 to 1.5625*10^85 years.
The delayed program that's being started in two years therefore overtakes the program started today, and finishes its computation 1.5625*10^85 minus 2 years ahead of the undelayed program.
Of course, this makes it useless to run the program today, because it would only reproduce the already existing output of the program that's being started in the future. We have therefore shown that the program is useless today.
We complete the proof by iteratively using the above mental experiment on itself. It is easily understandable that it doesn't make any sense running the program as long as the computation time exceeds 4 years. A simple calculation shows that this will be not be the case for the next 282 "life cycles", that is, 564 years.
Until then, we can always overtake computation by running the same program two years later and therefore brand an undelayed program execution as useless.
We can summarize our thoughts in the following, now proven, sentence:
The program is useless today, and will be useless for the next 564 years. qed.
Lucas Watson (lwatkins@scri.fsu.edu) took a different approach, and pointed out that my program will be useless even in a million years, simply because there isn't enough matter to print a Googolplex on (and this fact is unlikely to change). According to him, this idea originated on Carl Sagan's Cosmos TV show.
But who said we have to print Googolplex in decimal? If we switch to base Googolplex, you can print it simply as 10. (suggested by Paul Dourishdourish@europarc.xerox.com).
No comments:
Post a Comment