33
$\begingroup$

This question already has an answer here:

In his book "The Fabric of Reality", Penguin Books 1998, p. 218, David Deutsch says that the first quantum computer (built 1989 in the office of Charles Bennet, IBM Reasearch) "became the first machine ever to perform non-trivial computations that no Turing machine could perform".

My question: Do we really know that quantum computing is powerful enough to solve problems that not even Turing machines can solve? (Or is this just a personal belief of David Deutsch?)

$\endgroup$

marked as duplicate by Gilles Jul 18 '16 at 21:44

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

migrated from cstheory.stackexchange.com Jun 2 '16 at 15:05

This question came from our site for theoretical computer scientists and researchers in related fields.

  • 12
    $\begingroup$ As stated, this is wrong, or at least very imprecise: a classical Turing machine (TM) can compute everything that a quantum Turing machine (QTM) can. However, there is evidence to suggest that a QTM may solve certain problems exponentially faster than a TM, and that's probably what Deutsch is referring to. This remains a conjecture, because we lack the tools to prove strong complexity bounds against Turing machines. $\endgroup$ – Sasho Nikolov Jun 2 '16 at 14:14
  • 6
    $\begingroup$ David Deutsch's book is fascinating but contains some errors. For instance, he says that intuitionistic mathematics denies the existence of infinitely many natural numbers, and he confuses Hilbert's problems (gets the numbers wrong), so don't use it as a reference. $\endgroup$ – Andrej Bauer Jun 2 '16 at 14:38
  • 2
    $\begingroup$ @PeterLeupold, can you give a reference for the claim that there is a reasonable quantum computation model which can compute a function over natural numbers which is not computable by a Turing machine? $\endgroup$ – Kaveh Jun 2 '16 at 18:02
  • 1
    $\begingroup$ @Kaveh Maybe Peter means non-uniform models which can compute any function. $\endgroup$ – Sasho Nikolov Jun 2 '16 at 19:16
  • 2
    $\begingroup$ @Sasho, I am sure that is what Peter mean, although they can computable functions which are not computable by classical Turing machines, that is because of their nonuniformity, not quantumness; nonuniform classical models do that as well. $\endgroup$ – Kaveh Jun 3 '16 at 0:30
40
$\begingroup$

While it is true that the computation of a quantum Turing machine is vastly different from that of a classical one, nevertheless quantum Turing machines can be simulated on a classical Turing machine, albeit with exponential slowdown. In particular, everything that can be computed on a quantum Turing machine can also be computed on a classical Turing machine.

The main advantage of quantum Turing machines is that they appear to solve some problems much faster than classical Turing machines. As Sasho comments, at the moment we can't quite prove this, yet this advantage is believed to hold by most researchers.

For more, check out this talk by Ashley Montanaro.

$\endgroup$
19
$\begingroup$

There's no difference in terms of computability. Classical computers can simulate quantum computers. A Turing machine can compute anything that a quantum computer can compute.

This isn't some hypothetical point, we simulate quantum computations all the time. You can do it with pen and paper! It's a lot more convenient using one of the many software simulators that already exist, though. There's even toy ones that run in your browser.

To me, your David Deutsch quote is referring to the style of computation that was used, as opposed to some inaccessible aspect of the problem. He managed to phrase it terribly.


All that being said, be aware that there is a difference in efficiency. Although a Turing machine can simulate applying Shor's algorithm to a thousand digit number, doing so would take too long to be practical. The universe would die out before you finished.

(There are also other practical uses for quantum computers, like improving the resolution of sensors, but I think mostly people are interested because of the existence of a few key takes-too-long-to-simulate problems and algorithms.)

$\endgroup$
  • 1
    $\begingroup$ There is believed to be a difference in efficiency. It's true that Shor's algorithm is impractical to run on a classical computer, but there may be another factoring algorithm that can be executed efficiently on a classical computer (although it's unlikely). No one has proven that BPP != BQP. $\endgroup$ – tparker Jun 4 '16 at 1:53
5
$\begingroup$

In terms of computability, quantum computers provide no advantage -- anything which can be computed by a quantum computer may be computed by a classical computer, because as Yuval pointed out, classical computers can simulate quantum computers.

In terms of complexity, there are advantages for some problems. For example, the Deutsch-Josza algorithm is (provably) exponentially faster than any classical algorithm. Grover's algorithm provides a quadratic speedup compared to any classical computer, again this has been proved. However, the precise complexity relationship between classical and quantum computing is not known.

$\endgroup$
  • $\begingroup$ 0) Grover's algorithm is a square root speedup. 1) Your link to the Deutsch-Josza algorithm paper is paywalled. $\endgroup$ – Nayuki Jun 3 '16 at 1:57
  • 2
    $\begingroup$ @Nayuki 0) If you're going to accept "X is exponentially faster than Y" to mean that the running time of X is the logarithm of the running time of Y, then you should accept "X provides a quadratic speedup compared to Y" to mean that the running time of X is the square root of the running time of Y. 1) You can read it for free at Jstor (reguires registration and you can only read three different papers there every two weeks). $\endgroup$ – David Richerby Jun 3 '16 at 9:05
0
$\begingroup$

As far as we believe, a quantum Turing machine is able to simulate any quantum computer, and it is also equivalent to classical deterministic Turing machine in terms of computability. In other words, as far as we know the space of problems solvable by quantum computers is the same as space of problems solvable by classical computers.

However, if we consider practical computability, things may look a bit different. Imagine a problem where we have a classical solution which runs with $O(2^n)$ complexity. It is definitely solvable, but for any reasonable data size it will require massive amounts of operations. In practice, it will run for thousands of years, even on the fastest computers. Now imagine we have a quantum algorithm solving the same problem, but with $O(n)$ complexity. Out of a sudden, exact same problem can be solved in minutes, which is very reasonable (especially compared to thousands of years).

I think the original quote could be extended by adding "in any reasonable time", and we get a fair statement.

$\endgroup$
-1
$\begingroup$

In the generality that your question is asked, the answer is YES. Quantum computation is a very wide concept. Even in non-quantum computation there are many models that go beyond Turing computability. The field is sometimes called hypercomputation. A (in my opinion) nice model are red-green Turing machines by J. van Leeuwen and J. Wiedermann. With them you can climb up several steps in the arithmetical hierarchy. A more classical model are oracle machines.

You can define the same approches with Quantum Turing Machines, and then they compute more than a Turing machine. So again, the answer is YES, but also non-quantum models can do that.

If you only want to compare TMs to quantum TMs (which both compute only the Turing-computabel) or some other model of quantum computation, then you should refer to that model explicitly.

$\endgroup$
  • 5
    $\begingroup$ I think the question is asking about whether physical quantum computers can perform hypercomputation, not whether there are theoretical models of quantum computation that can do so. As you say, there are non-quantum models of hypercomputation so your answer of "YES" isn't really using "quantumness": it's just saying that there are models of hypercomputation. I don't think that really answers the question. $\endgroup$ – David Richerby Jun 3 '16 at 8:56