Laymen explanation of quantum computers and how they will lead toasters on a genocidal campaign to independence from humanity.
This superposition of qubits is what gives quantum computers their inherent parallelism. According to physicist David Deutsch, this parallelism allows a quantum computer to work on a million computations at once, while your desktop PC works on one. A 30-qubit quantum computer would equal the processing power of a conventional computer that could run at 10 teraflops (trillions of floating-point operations per second). Today's typical desktop computers run at speeds measured in gigaflops (billions of floating-point operations per second).
Blarg. Sorry, this one is a big pet peeve.
Quantum computers are not inherently faster than classical
except for certain classes of problems where entanglement and superposition let them come at the solution from a more efficient path. They do not work on a million computations at once. It's subtler and cooler than that, based on superposition and entanglement.
Take a simple period finding algorithm, found at the heart of factorisation and so encryption breaking.
We have a series Y that repeats in some period N. We want to find N.
We can write out our series associating each value in Y with an index value X (so the first value is associated with 0, second 1, X
n >
n).
Now we run a quantum algorithm that entangles two sets of quibits, such that if the first set has the value X
n the second set will have the value Y
n. But importantly we
do not measure either. This leaves us with two registers of entangled qubits. The first register is in a superposition of all possible values of X. The second is in a superposition of all possible values of Y. Because they are entangled, measuring the first and finding it in X
n will mean that the second register must have the value Y
n.
We can write the state of the system as a sum of these combined pairs (with some normalisation factor I will leave out; just divide all values by the squareroot of the total number of values);
|X
0 Y
0> + |X
1 Y
1> + |X
2 Y
2> + |X
3 Y
3> + ... + |X
n Y
n> + ...
Each of these kets represents a state of the system. Measuring the system will collapse it into a single state. Measuring the first register and finding a value X
n will collapse the state into |X
n Y
n>.
Except that because Y repeats with period N there will be multiple values of X
n that have the same value of Y
n. So if we measure the second register and find, say, Y
3 we will still have multiple possible values of X. The state of the system will now become;
|X
3 Y
3> + |X
3+N Y
3> + |X
3+2N Y
3> + |X
3+3N Y
3> + ...
At this point we can use some other trickery (the quantum Fourier transform) to remove the offset and set the X register to simply be a superposition of X
0, X
N, X
2N, ..., which, given our X register is just our index register, is equal to 0, N, 2N, ... At which point you just make a measurement. Then you repeat. Usually after two such measurements the greatest common divisor (found by running a classical algorithm, probably on a classical computer as quantum computers are likely to be inherently slower) of their values will be N. And so we have found the period of our series.
Of course this is still grossly simplified, but it's just to demonstrate that what is described as doing many calculations at once is really
doing something completely different. It's not really comparable to classical computation in these terms and describing it as such both short changes quantum computers and makes them out to give advantages they don't really give.
The algorithm above is more elegant and that allows you to achieve your goal with far fewer gates than a classical computer would need for the same problem. Whether this gives a time saving depends on the speed of the gates compared to a classical gate. With factorisation and period finding the saving is go great than it's almost a certainty, even if the computer runs at a crawl. For other algorithms where the savings are less or even non-existant (for many problems the classical algorithm is as good as any quantum algorithm) a classical gate's inherent speed advantage would make a quantum computer wasteful and pathetically slow in comparison.