ProjectQ is an open source effort for quantum computing.
It features a compilation framework capable of targeting various types of hardware, a high-performance quantum computer simulator with emulation capabilities, and various compiler plug-ins. This allows users to
- run quantum programs on the IBM Quantum Experience chip
- simulate quantum programs on classical computers
- emulate quantum programs at a higher level of abstraction (e.g., mimicking the action of large oracles instead of compiling them to low-level gates)
- export quantum programs as circuits (using TikZ)
- get resource estimates
To start using ProjectQ, simply follow the installation instructions in the tutorials. There, you will also find OS-specific hints, a small introduction to the ProjectQ syntax, and a few code examples. More example codes and tutorials can be found in the examples folder here on GitHub.
Also, make sure to check out the ProjectQ website and the detailed code documentation.
For information on how to contribute, please visit the ProjectQ website or send an e-mail to info@projectq.ch.
When using ProjectQ for research projects, please cite
- Damian S. Steiger, Thomas Häner, and Matthias Troyer "ProjectQ: An Open Source Software Framework for Quantum Computing" [arxiv:1612.08091]
- Thomas Häner, Damian S. Steiger, Krysta M. Svore, and Matthias Troyer "A Software Methodology for Compiling Quantum Programs" [arxiv:1604.01401]
The first release of ProjectQ (v0.1) was developed by Thomas Häner and Damian S. Steiger in the group of Prof. Dr. Matthias Troyer at ETH Zurich.
ProjectQ is released under the Apache 2 license.