5

There are several equivalent computation models, each capable of simulating each other. For example, the lambda calculus or the SKI calculus which are based on rewriting, Cardelli's object calculus, Hoare's communicating sequential processes, and of course the universal Turing machine, all of them formally defined.

I do understand that though there are possibly different ways of building quantum computers, the ways we build them today are Turing-complete and equivalent to the other models of computation. My question is: have anyone formalized a mathematical computation model for a quantum computer (such as the D-Wave)? (As the other models, I assume this could be used as a programming language.)

(I do understand that a possible answer would be "the quantum mechanics", but that's not exactly what I'm looking for...)

paulotorrens
  • 731
  • 3
  • 11

3 Answers3

10

Yes. The quantum Turing machine is a mathematical formalization of a computation model for a quantum computer.

See also https://en.wikipedia.org/wiki/Quantum_computing#Developments and https://en.wikipedia.org/wiki/Quantum_complexity_theory and https://en.wikipedia.org/wiki/BQP.

D.W.
  • 167,959
  • 22
  • 232
  • 500
8

Just as Turing machines aren't widely used to model computation, so are quantum Turning machines not wildly used to model quantum computation. Instead Quantum circuits are more popular. Quantum circuits defined in the obvious way: reversible transformations on a quantum mechanical analog of an n-bit register.

Stella Biderman
  • 777
  • 4
  • 19
6

Peter Sellinger has been working on programming languages for quantum computing for a long time now. He is not the only one working in that field, of course, but I believe his work is accessible and largely accepted enough to fit your bill.

What he essentially developed is a "typed lambda calculus for quantum computation". I believe the best place to start is in the chapter of the textbook Semantic Techniques in Quantum Computation (written with B. Valiron), available at http://www.mscs.dal.ca/~selinger/papers/qlambdabook.pdf. I believe the list of references in that chapter is quite authoritative, too.

If you're looking for a concrete formalization, have a look at the Quipper language, which is embedded in Haskell. The introductory paper as well as the devoted webpage are probably the best places to start.

If you're looking for a more general discussion / introduction to those topics, you can have a look at the video and the article Programming the Quantum Future.

Clément
  • 161
  • 5