ProjectQ: An open source software framework for quantum computing
Python C++
Switch branches/tags
Nothing to show
Clone or download
Pull request Compare This branch is 5 commits ahead, 119 commits behind ProjectQ-Framework:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
docs
examples
projectq
.gitignore
.travis.yml
LICENSE
NOTICE
README.rst
pytest.ini
requirements.txt
setup.py

README.rst

ProjectQ - An open source software framework for quantum computing

ProjectQ is an open source effort for quantum computing.

The first version (v0.1) 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

Getting started

To start using ProjectQ, simply run

python -m pip install --user projectq

Details regarding the installation on different operating systems can be found in the documentation (getting started). Alternatively, you can clone or download this repository and run

python setup.py install

or

python -m pip install --user .

Should something go wrong when compiling the C++ simulator extension in one of the above installation procedures, you can turn off this feature using the --without-cppsimulator parameter (note: this only works if one of the above installation methods has been tried and hence all requirements are now installed), i.e.,

python setup.py --without-cppsimulator install

If you are using pip, then this parameter can be supplied as follows

python -m pip install --global-option=--without-cppsimulator .

Then, please visit the ProjectQ website, where you will find tutorials, code examples, and the documentation.

How to contribute

For information on how to contribute, please visit the ProjectQ website or send an e-mail to info@projectq.ch.

Please cite

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]

Authors

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.

License

ProjectQ is released under the Apache 2 license.