What’s taking so long, Mr. Babbage?
scottaaronson.com
scottaaronson.com
I don't get the blog's subtitle. Why would anyone suppose that quantum computers could solve NPC problems in polynomial time if non-quantum computers can't? The P and NP complexity classes don't have anything to do with the hardware used to perform computation. Quantum computing isn't some new model of computation, i.e. it's equivalent to Turing machines or the lambda calculus.
Incidentally, P and NP certainly do have to do with the hardware. There are nonlinear variants on quantum mechanics in which all the problems in NP can be solved in polynomial time. See http://arxiv.org/abs/quant-ph/9801041 These variants are, however, unlikely to describe the way the world works.
In general, you're confusing decidability and running-time. Just because two models of computing are Turing equivalent (are capable of deciding the same problems) does not mean that they have the same running time on those problems.
There are two separate questions: 1) Can model of computation X recognize language Y? 2) How fast can it do so?
When someone says quantum computers are "equivalent" to Turing machines, that's referring only to question 1. In other words, any given language can be recognized by a quantum computer if and only if it can be recognized by a Turing machine.
Just because they are equivalent in this sense doesn't imply anything about question 2. For a concrete example, see http://en.wikipedia.org/wiki/Shors_algorithm -- if factorization takes polynomial time on a quantum computer but exponential time on a Turing machine, it must be reasonable to ask whether quantum computers can be that much faster for a whole class of problems.
Edit: also note that a complexity class is just a set of languages. We can talk about those languages in different contexts, even if they are specified in terms of a particular model of computation.
As for P & NP - aren't they defined in terms of decision problems that can be solved in polynomial time by deterministic and non-deterministic TMs respectively? Which is a distinction that is about as close to "the hardware used to perform computations" as it is possible to get while working with abstractions.
But what I'm getting at is that quantum computing today is basically trying to solve the question of where would you place the BQP (bounded-error quantum probabilistic algorithms) complexity class in the complexity zoo. If it is found equivalent to NP (that is, if a quantum computer can solve any NP problem with as high a probability as you want in polynomial time) that's what it means. There is nothing known so far that makes this a priori impossible. What there is is an exponential speedup for some problems (ie, problems that are not known to be in BPP, which is the deterministic equivalent of BQP for turing machines, are known to be in BQP), no NP-complete problem is in BQP and it does not seem possible for a quantum cmputer to solve an NP-complete problem. On the other hand, if you can prove that BQP is better than BPP but worse than NP you've just proven that P is not NP.
This isn't immediately obvious to someone who hears about quantum computing but doesn't actually get a proper explanation. The intuition that n qubits in superposition can evaluate a number of possibilities exponential in n simultaneously is understandable, even if it's not really correct.
I agree that there is no reason to believe that quantum computers will solve NPC problems.
[edit] On det. Turing machine, in polynomial time...
I don't know if any of this comment even makes since, considering I believe the complexity classes P and NP are formally defined in terms of Turing machines anyway. Any NPC problem along with some polynomial computation can be used to solve any other NPC problem. I don't think quantum computers aren't going to reveal a polynomial-time algorithm for a known NPC problem.
http://en.wikipedia.org/wiki/Shors_algorithm
(Also, remember that factoring is not (known to be) NP-complete.)