Friday, September 11, 2009

Nature's Computer

Today, I try to form some arguments about computational nature of nature itself. From previous post on Emperor's new mind it is clear that out brain is non-computational in nature. What do we mean by non-computability? It's a subtle concept,but I try to define it for laity(Bye the way, I am too a laity :)). Imagine your computer has been empowered with infinite RAM and infinite hard-disk by some magical means. Now anything this computer can compute is said to be computable on the condition that it never uses whole of the infinite resources, it can use as much RAM as it wants and as much hard-disc as it wants but it has to be finite at every step of its operation. We don't care about the speed of this computer, as long as it can do something in finite time, that thing is by definition computable even if the time taken is trillions of years. So we know that our brain is non-computational, means that it can't be simulated by a computer. It seems pretty logical to me that our brain and we as whole follow the rules of nature(some of the rules we know by physics, some we don't know). Nature would be partial if it allowed humans to violate it's laws. So nature along with brain must be non-computational. So now can we imagine anything in nature that seems to be non-computable?. The model of the nature(universe) proposed by Einstein and Newton can easily be simulated on a computer given enough resources. If we have to have even a bit of trust in our knowledge of nature's laws, we have to find at least one problem which is impossible for our magic computer to solve but nature solves that problem easily. Can you think of anything?. Now I will try to show a problem of this kind. It's none other than random number generation. I believe that our magical computer can't generate purely random numbers. What do I mean by purely random?. By purely random I mean that it's impossible to predict the outcome even theoretically. Some might say that every programming language provides a random number generator function, that seems to be purely random. But reality is that internally these functions calculate these pseudo random numbers by many parameters( may be system clock's time, RAM usage,number of processes etc.). Although practically it seems quite impossible to predict the output yet if a person knows values of these parameters at the time of random number generation, he/she can easily predict the output. So how nature solves this problem?. It's pretty easy for nature. Let's say we want any number from 1 to n purely randomly. All we have to do is construct a quantum system which has n eigen states in superposition. When we perform a measurement, it jumps to a particular eigen state purely randomly. So nature provides a pure random number generator. There are no parameters. What can be the implications of this for other non-computable problems. For example, halting problem is non-computable. Is it possible that nature has a solution for halting problem also?. I don't know the answer to that question. I would like to add one more example of nature's majestic computational powers. This one comes from one of the very few classes I attended in college. Suppose we have n numbers, we want to sort them. The minimum number of steps that a computer will take to solve this problem is roughly (n log(n)). Nature can do it in almost 1 step. Everybody must have heard of prism, the magical device which forms aesthetic spectrum from sun light. The prism is basically doing the sorting of different wavelengths to produce that spectrum. That way nature solves sorting problem in 1 easy step. Of course I am assuming is that even if visible light would have consisted of 10 colors instead of 7, prism would have taken same time to produce the beautiful spectrum. This assumption does not seem far-fetched to me. With this, I hibernate my brain's non-computational computer.

No comments:

Post a Comment