The Possibilities of Quantum Computing
I just finished reading Automatic Quantum Computer Programming and it really got me thinking about the possibilities and promise of quantum computers. For those unawares, quantum computers have the potential to revolutionize our lives as much as the digital computer has. Why? Because they can solve problems that digital computers cannot solve.
How do they do it?
Quantum computers use the characteristics built into the quantum world such as superposition and entanglement to solve these difficult problems. In an ol’ skool digital computer, each bit can only have a value of 0 or 1. However, in a quantum computer, a single quantum bit can have a value of both 0 and 1, at the same time. This is stored as a probability of being a 0 or a 1. So, while the computer that you are reading this on can only store one piece of information in a single bit, a quantum computer can store much more information in a single quantum bit. This powerful ability is known as superposition.
The revolution will dawn as the quantum computer solves problems that are unsolvable with current digital computers. A good example is RSA cryptography. The current cryptography scheme used all around the world (and by billions of people on the internet as 128 bit SSL) relies of the fact that a large number cannot be factored in a reasonable amount of time. However, it has been shown that a quantum computer can solve this problem, rendering current RSA cryptography useless.
The interesting thing about quantum computers is that they have just begun to be developed. Perhaps they are comparable to the infant stages of the digital computer, circa 1944, when computers only had a few kilobytes of memory. (Computers have several gigabytes of memory now, for an increase of 1 million times.) Due to the subatomic scale, quantum computers are far more difficult to develop than traditional digital computers. However, we have much more powerful technology that we can use to develop quantum computers, so I think development will proceed quickly.
One of the biggest challenges to quantum computing is figuring out how to encode real world problems in terms of quantum bits and gates. Lee Spector, in his book Automatic Quantum Computer Programming, attempts to solve that exact problem through the use of Genetic Programming. Although a bit technical for most people, the book is actually quite easy to understand, at least compared to the research papers.
Recently we became interested in quantum computing though our development of Automated Trading systems. We discovered an interesting parallel between quantum computing and the results of an Automated Trading system. A quantum computer stores its information in Qbits, which encode a probability of a given value. The results of an Automated Trading system are also expressed in terms of probability of making money, know as expectancy. After doing some research, it seems likely that quantum computers could be used to create a new generation of Automated Trading systems.