September 16 – 21 , 2018, Dagstuhl Seminar 18381

Quantum Programming Languages


Michele Mosca (University of Waterloo, CA)
Martin Roetteler (Microsoft Corporation – Redmond, US)
Peter Selinger (Dalhousie University – Halifax, CA)

For support, please contact

Annette Beyer for administrative matters

Andreas Dolzmann for scientific matters


Quantum computing is getting real. Several laboratories around the world are implementing hardware platforms and there is a likely possibility within the next 2-3 years some of those will scale into the 50-100 qubit range. While research on the theoretical side of the field addressed fundamental questions such as how to best leverage this new model of computation for algorithmic applications, a topic that has received significantly less attention is how to actually program quantum computers. To take advantage of the immense computing power offered by quantum computers as they come online in the coming years, software tools will be essential. We want these tools to be available, efficient and reliable, so that we can quickly and reliably reap the positive benefits that quantum computers have to offer.

It is clear that quantum programming will require tools for automatically generating large-scale circuits and for synthesizing circuits from elementary fault-tolerant gates which then can be carried out by a future quantum computer. However, it is less clear what the best way will be to go about these challenging issues. Questions that are within the scope for this Dagstuhl Seminar include the following:

  • How can we program a quantum computer?What are the basic structures that a language should support and how can a compiler help a user develop abstract/high-level reasoning about algorithms?
  • How do we model the underlying instruction set? As currently the underlying hardware is quickly evolving, how can we best model a fault-tolerant quantum computer?
  • How to compile and optimize quantum programs? Automatic translation of high-level programs into circuits will be key to program quantum computers. How to design good tools for this?
  • How can we program near-term devices? Near-term quantum computers are likely to only have a few hundred noisy qubits, rather than a few thousand fault-tolerant ones. What are the best ways to make use of such a device? How would one program in such a highly constrained setting?
  • How to we test and verify quantum programs? Given that it is hard for classical computers to simulate the time evolution of a quantum computer, how can we ascertain correctness of a circuit?

Progress on these questions requires diverse skill sets from different research communities. We aim at bringing together researchers from quantum computing, mathematical foundations of programming languages, implementation of programming languages, and formal verification. We anticipate a vibrant exchange of novel ideas, to tackle important problems such as the analysis of quantum algorithms for real-world computational problems, compiler optimizations, reversible computing, and fault-tolerant quantum computing.

We expect that the Seminar will help to further establish quantum programming languages and circuit synthesis and optimization as a rapidly evolving research area in the intersection of quantum computing and programming languages.

  Creative Commons BY 3.0 DE
  Michele Mosca, Martin Roetteler, and Peter Selinger


  • Data Structures / Algorithms / Complexity
  • Programming Languages / Compiler


  • Quantum computing
  • Reversible computing
  • Functional programming
  • Compilers
  • Verification

Book exhibition

Books from the participants of the current Seminar 

Book exhibition in the library, ground floor, during the seminar week.


In the series Dagstuhl Reports each Dagstuhl Seminar and Dagstuhl Perspectives Workshop is documented. The seminar organizers, in cooperation with the collector, prepare a report that includes contributions from the participants' talks together with a summary of the seminar.


Download overview leaflet (PDF).


Furthermore, a comprehensive peer-reviewed collection of research papers can be published in the series Dagstuhl Follow-Ups.

Dagstuhl's Impact

Please inform us when a publication was published as a result from your seminar. These publications are listed in the category Dagstuhl's Impact and are presented on a special shelf on the ground floor of the library.

NSF young researcher support