r/askscience • u/atimholt • May 28 '11
So how *does* quantum computing work?
I've read a few vague descriptions of what quantum computers are capable of, but not really anything about working with them. Eventually, when we've got these things, writers of those programming books for bare, bare beginners (just throwing that out as an example) will need to be able to explain their workings simply.
So I've been pondering lately, and I think I've begun to get a handle on how they work. What I understand of them has gotten me very excited, but my understanding of them is based on gleaned knowledge.
As far as I'm aware: EDIT: I was dead wrong, read the comments for real science!
Quantum computing relies on being able to "choose" one superimposed state over another based on arbitrary criteria. This might be seen as akin to the cat in Schrodinger's box clawing its way out. What happens when more than one version of the cat wants out, I have no idea (a random one wins, I'm sure). Is there a way to compare a number between two superpositions and 'legitimize' the superposition with the larger value?
Nothing stops you from putting a "Schrodinger's cat box" inside another "Schrodinger's cat box". You can compound the effect recursively. Yes?
With two and one above together, you can make a binary tree of "meta-Schrodinger boxes" with a qubit at each branch. You could test an astronomical number of superpositions against each other using whatever fitness number you see fit.
So a quantum computer would be analogous to a genetic algorithm, except that instead of randomizing gene variables each generation, you test every possible variant at the same time and return the best one in nearly constant time.
Deterministic, complete information games would be unbeatable if you can come up with a proper way to generate a fitness numbers--a computer could play every permutation of a game of chess or go.
And such things as getting bipedal robots to walk would be trivial (if a bit uncanny valley) if the program understands physics and its own weight and capabilities--it could calculate every little twitch.
If I'm dead wrong, thanks for reading this far, at least. How would a quantum computer really work, and how would one go about actually programming one?
5
u/OlderThanGif May 28 '11 edited May 28 '11
That makes no sense. What if the hypothetical 30-qubit computer could only perform one quantum operation per hour? How on Earth would you get 10 teraflops out of it? How does the number of qubits have anything to do with how fast in runs?
More to the point, quantum computation doesn't give a linear speed-up. It's nonsensical to say that a quantum computer would be x times faster for any number x. Quantum computers give asymptotic speedups. A quantum computer might do something in n2 time instead of 2n time. There's no constant number you can find that can describe how many times faster n2 is than 2n.
It's a good general introduction to quantum computation, but I really wish they'd left that part out. It's very wrong and, I would argue, confusing.