Skip to main content

A tool for Quantum Circuit Mapping

Project description

PyPI OS License: MIT CI Python-CI Bindings Documentation codecov

MQT QMAP - A tool for Quantum Circuit Compilation

A tool for quantum circuit compilation developed as part of the Munich Quantum Toolkit (MQT)[^1] by the Chair for Design Automation at the Technical University of Munich. It builds upon our quantum functionality representation (QFR). .

Documentation

If you have any questions, feel free to contact us via quantum.cda@xcit.tum.de or by creating an issue on GitHub.

Getting Started

QMAP is available via PyPI for Linux, macOS, and Windows.

(venv) $ pip install mqt.qmap

Compiling a given quantum circuit to a certain device is as easy as

from mqt import qmap
from qiskit import QuantumCircuit
from qiskit.providers.fake_provider import FakeLondon

circ = QuantumCircuit(3)
circ.h(0)
circ.cx(0, 1)
circ.cx(0, 2)

circ_mapped, results = qmap.compile(circ, arch=FakeLondon())

Detailed documentation on all available methods, options, and input formats is available at ReadTheDocs.

System Requirements and Building

The implementation is compatible with any C++17 compiler and a minimum CMake version of 3.19. Please refer to the documentation on how to build the project.

Building (and running) is continuously tested under Linux, macOS, and Windows using the latest available system versions for GitHub Actions.

References

QMAP has been developed based on methods proposed in the following papers:

[1] A. Zulehner, A. Paler, and R. Wille. An Efficient Methodology for Mapping Quantum Circuits to the IBM QX Architectures. IEEE Transactions on Computer Aided Design of Integrated Circuits and Systems (TCAD), 2018.

[2] R. Wille, L. Burgholzer, and A. Zulehner. Mapping Quantum Circuits to IBM QX Architectures Using the Minimal Number of SWAP and H Operations. In Design Automation Conference (DAC), 2019.

[3] S. Hillmich, A. Zulehner, and R. Wille. Exploiting Quantum Teleportation in Quantum Circuit Mapping. In Asia and South Pacific Design Automation Conference (ASP-DAC), 2021.

[4] L. Burgholzer, S. Schneider, and R. Wille. Limiting the Search Space in Optimal Quantum Circuit Mapping. In Asia and South Pacific Design Automation Conference (ASP-DAC), 2022.

[5] T. Peham, L. Burgholzer, and R. Wille. On Optimal Subarchitectures for Quantum Circuit Mapping. arXiv:2210.09321, 2022.

[^1]: The Munich Quantum Toolkit was formerly known under the acronym JKQ and developed by the Institute for Integrated Circuits at the Johannes Kepler University Linz).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mqt.qmap-1.12.1.tar.gz (3.7 MB view details)

Uploaded Source

Built Distributions

mqt.qmap-1.12.1-cp311-cp311-win_amd64.whl (7.8 MB view details)

Uploaded CPython 3.11 Windows x86-64

mqt.qmap-1.12.1-cp311-cp311-manylinux_2_28_x86_64.whl (12.9 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.28+ x86-64

mqt.qmap-1.12.1-cp311-cp311-macosx_11_0_arm64.whl (9.2 MB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

mqt.qmap-1.12.1-cp311-cp311-macosx_10_15_x86_64.whl (10.7 MB view details)

Uploaded CPython 3.11 macOS 10.15+ x86-64

mqt.qmap-1.12.1-cp310-cp310-win_amd64.whl (7.8 MB view details)

Uploaded CPython 3.10 Windows x86-64

mqt.qmap-1.12.1-cp310-cp310-manylinux_2_28_x86_64.whl (12.9 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.28+ x86-64

mqt.qmap-1.12.1-cp310-cp310-macosx_11_0_arm64.whl (9.2 MB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

mqt.qmap-1.12.1-cp310-cp310-macosx_10_15_x86_64.whl (10.7 MB view details)

Uploaded CPython 3.10 macOS 10.15+ x86-64

mqt.qmap-1.12.1-cp39-cp39-win_amd64.whl (7.8 MB view details)

Uploaded CPython 3.9 Windows x86-64

mqt.qmap-1.12.1-cp39-cp39-manylinux_2_28_x86_64.whl (12.9 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.28+ x86-64

mqt.qmap-1.12.1-cp39-cp39-macosx_11_0_arm64.whl (9.2 MB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

mqt.qmap-1.12.1-cp39-cp39-macosx_10_15_x86_64.whl (10.7 MB view details)

Uploaded CPython 3.9 macOS 10.15+ x86-64

mqt.qmap-1.12.1-cp38-cp38-win_amd64.whl (7.8 MB view details)

Uploaded CPython 3.8 Windows x86-64

mqt.qmap-1.12.1-cp38-cp38-manylinux_2_28_x86_64.whl (12.9 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.28+ x86-64

mqt.qmap-1.12.1-cp38-cp38-macosx_11_0_arm64.whl (9.2 MB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

mqt.qmap-1.12.1-cp38-cp38-macosx_10_15_x86_64.whl (10.7 MB view details)

Uploaded CPython 3.8 macOS 10.15+ x86-64

mqt.qmap-1.12.1-cp37-cp37m-win_amd64.whl (7.8 MB view details)

Uploaded CPython 3.7m Windows x86-64

mqt.qmap-1.12.1-cp37-cp37m-manylinux_2_28_x86_64.whl (13.0 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.28+ x86-64

mqt.qmap-1.12.1-cp37-cp37m-macosx_10_15_x86_64.whl (10.7 MB view details)

Uploaded CPython 3.7m macOS 10.15+ x86-64

File details

Details for the file mqt.qmap-1.12.1.tar.gz.

File metadata

  • Download URL: mqt.qmap-1.12.1.tar.gz
  • Upload date:
  • Size: 3.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.1

File hashes

Hashes for mqt.qmap-1.12.1.tar.gz
Algorithm Hash digest
SHA256 941dac5e26cd948b3a4dfe2b59d7a6df26cf52157088fd0418edc93f97d33611
MD5 72df077d44f9e20b200623d5a8f62c2e
BLAKE2b-256 b3cfd68c7140d9c4f76bd75e6f12ca3d466368b6c0765bd3fd146c4cc62f0cb0

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.12.1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for mqt.qmap-1.12.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 0453da4b584378d2c00e7702bc7491783b3ff21eaa75f11a24c054743c5f932c
MD5 3921928af7f6d13924821bb02a2ad054
BLAKE2b-256 8e74ced9697299b81606914cf1eb258bd555d9ed606690cbdd13886b38187a8b

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.12.1-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mqt.qmap-1.12.1-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 55258069892a9c3bdfa2316b5e701b681ee839116413eca5e57d10aa4801f193
MD5 9025d1d1a1c65c0d7cc887ccfe618bb4
BLAKE2b-256 a85a4fdac3861953d7e5bb8f96ca48669b0bab38cfddcec77944bf1a6521748d

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.12.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mqt.qmap-1.12.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9908bbc1b642849906f4887490dbbbc5805094169861cfeb7d64c5b80611856a
MD5 c710d21944f7702dbd247a5a3fa7e762
BLAKE2b-256 9a75d9f312e13a49de9960c70851f8557c39a9c92a901fe362772fe7f8e4a48f

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.12.1-cp311-cp311-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for mqt.qmap-1.12.1-cp311-cp311-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 d7bb2c1590868c2065ac241eeccdf006fad87caf98e4f1bcf3fca0d050a78290
MD5 b009762f8c3754ff19a028857833d2d4
BLAKE2b-256 eabc3435af7d2abee1b883d4f5eaa71348ba47466b1b63625a31d55a5c22f082

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.12.1-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for mqt.qmap-1.12.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 70a6ebe272fdc4ccbcf37452e92e41e4fa4a1b43b64bccf143f7fd5e8a17f3f0
MD5 513ff3ac65a5e83299058f466e2764a7
BLAKE2b-256 c647cc5f1dc8c5f661a9b20e8b8d5b8057528ece2a5e948f579c864ed671ef43

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.12.1-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mqt.qmap-1.12.1-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 fdbb73825b73bbfd20e376981f3a24134d8f4783099f740e00e348ee21f49388
MD5 27c8312624417d7f5678426639ff7633
BLAKE2b-256 084371bca2b5fd57148d18754761b67ba0bfa29e20faecaec3ac21f33423bc26

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.12.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mqt.qmap-1.12.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 52d4a78683240749b34d76200d5bf023ef61d27e3508b8c652eeafe16befac9d
MD5 78e974f99efdd69a9d2519a51d54b5f4
BLAKE2b-256 be578ecc5b5373a00218c03bcfab0903a1c3e9813482d12bcda8319deaab7e67

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.12.1-cp310-cp310-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for mqt.qmap-1.12.1-cp310-cp310-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 b1786541344df5ffd9d1c66b86eb37675a4b870ecf9d3ae3661e63a11192bc46
MD5 8c2d5bb0b4fc6a12e5e1450699b1ad1f
BLAKE2b-256 01cb3c86403383fe341fd5232624402c6cc41ee4e9072e9ed5f51257fbbd632d

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.12.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: mqt.qmap-1.12.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 7.8 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.1

File hashes

Hashes for mqt.qmap-1.12.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 f4bf1abcc8fe623a53aa4eab95834fe0265fe3c4a8bf3254db039933a9c4b5eb
MD5 61b2a246b2bba1868179a18eb814f9d2
BLAKE2b-256 ee17df5bc9ae302d6e15dd9908d0eb85cd341855096060f2d68875c59560621a

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.12.1-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mqt.qmap-1.12.1-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d6840027c26d73392ff9cb4e7d8da2c96e9fdda36f75985be1b65070942c9931
MD5 ff3e46f047c88b98b6d38e2f19237f70
BLAKE2b-256 fb44ae89b30460793632a4b9fabdba4d97f73dbcabb23a90453b00099bc95f46

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.12.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mqt.qmap-1.12.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 22ee6bda218a525cfb0eaf1f2ff5bde6fae1756ab36a5923f6cf0652b963213f
MD5 15534d7aee8837eb920f3b96c29276c9
BLAKE2b-256 89c70edf2d1321c4e2b64d02d3ad844c1f8ae23340c4076687482ba19e600696

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.12.1-cp39-cp39-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for mqt.qmap-1.12.1-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 3a158184bca1e894fcabbc2f113f8938140693483c43640ecde5f76bc451b98b
MD5 83207e43bdc042bc1b1a287e34f41c7d
BLAKE2b-256 500c565a964f12f089b3a6a8bc96d0848b3d114efb46bdfc8810d3f4ad7e0e3d

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.12.1-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: mqt.qmap-1.12.1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 7.8 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.1

File hashes

Hashes for mqt.qmap-1.12.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 44eb233cfb6fb1ca84eccc1fa7f33db87ea24ffa2fd80f246cfe8fee74bf8985
MD5 99b66592d22f462fb311e06983b23170
BLAKE2b-256 77260df69ef41e728f157210311fd0a1711acc46b73909712912526c1beb41bf

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.12.1-cp38-cp38-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mqt.qmap-1.12.1-cp38-cp38-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a0f0b7aae17556b9f9f154c33e5716fde57edbd24cdb104fe10fc691ca0d1aaf
MD5 e561ff036f688c7cb0ce37341b40771b
BLAKE2b-256 f3575bfffc509f40cb28ff34909b9e348a9a3a2b0abd719c29bf45445c6fa945

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.12.1-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mqt.qmap-1.12.1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 13355cc4dd0380b105037b1c4a514b3ac4487c186c64e575290ccb3d23a58f3d
MD5 daef2c181b9d6dc2afc23d1f7fd96348
BLAKE2b-256 fb258d526e27d251f691025391abccc20e39652e7ce8ded3b2c468e85dc1bad3

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.12.1-cp38-cp38-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for mqt.qmap-1.12.1-cp38-cp38-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 44e4c004c60b9bcefe273aa3fb37583817bc374384f8aee95793f3f41ed63ab8
MD5 195905c7bab6cfbf68ed48650d845ede
BLAKE2b-256 7633b8bda5e6b3c9d30b8aa8a6097fa31dc710c4e160e717b7b4afa087148dd4

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.12.1-cp37-cp37m-win_amd64.whl.

File metadata

File hashes

Hashes for mqt.qmap-1.12.1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 1debfe5c46f7744765c8dcaceb2402ea624991d553a5e427e13794a8303798c8
MD5 3c7bd728fd96c4ebb1bab9e673140aab
BLAKE2b-256 71b97148857c36d5d80dab847bdd68516e32abc2f46ae94821a6299df3160947

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.12.1-cp37-cp37m-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mqt.qmap-1.12.1-cp37-cp37m-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b903c69d11733f720f342633dbe4e7c297a499ee32c3617651a477879d376a40
MD5 9d2b454b5ff993100a5b56b559259fee
BLAKE2b-256 5e5041e4526732173f38d533c2a4f4fc43ed54a5411418856870320e3a939a59

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.12.1-cp37-cp37m-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for mqt.qmap-1.12.1-cp37-cp37m-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 94cfe27741a9994b1c6394240497fbb58a775eb33ffaaf8dff80c6a7a4a0b1e4
MD5 3f5a20c62028d0574991f9b57e3d86b0
BLAKE2b-256 3beff2704f6a0a8fdac1fa91d528517edae82a2c328c2fafebfad78cc0deb596

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page