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.11.2.tar.gz (3.7 MB view details)

Uploaded Source

Built Distributions

mqt.qmap-1.11.2-cp311-cp311-win_amd64.whl (7.7 MB view details)

Uploaded CPython 3.11 Windows x86-64

mqt.qmap-1.11.2-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.11.2-cp311-cp311-macosx_11_0_arm64.whl (565.6 kB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

mqt.qmap-1.11.2-cp310-cp310-win_amd64.whl (7.7 MB view details)

Uploaded CPython 3.10 Windows x86-64

mqt.qmap-1.11.2-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.11.2-cp310-cp310-macosx_11_0_arm64.whl (565.7 kB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

mqt.qmap-1.11.2-cp39-cp39-win_amd64.whl (7.7 MB view details)

Uploaded CPython 3.9 Windows x86-64

mqt.qmap-1.11.2-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.11.2-cp39-cp39-macosx_11_0_arm64.whl (565.8 kB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

mqt.qmap-1.11.2-cp38-cp38-win_amd64.whl (7.7 MB view details)

Uploaded CPython 3.8 Windows x86-64

mqt.qmap-1.11.2-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.11.2-cp38-cp38-macosx_11_0_arm64.whl (565.8 kB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

mqt.qmap-1.11.2-cp37-cp37m-win_amd64.whl (7.7 MB view details)

Uploaded CPython 3.7m Windows x86-64

mqt.qmap-1.11.2-cp37-cp37m-manylinux_2_28_x86_64.whl (12.9 MB view details)

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

File details

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

File metadata

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

File hashes

Hashes for mqt.qmap-1.11.2.tar.gz
Algorithm Hash digest
SHA256 2e450b0ddd8ea8abce39c16b1f841e79e390bcbbf63a4520c0374deed5d2140b
MD5 9a8cc52977f918bbc81bdf1f6e10c9e2
BLAKE2b-256 bcb7748463b7a4b8c94e715ccaefa023ebae97bd9c21888603305e83f6d06ed4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for mqt.qmap-1.11.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 fb274364584ceb15bb26074760cb1d7fd05813df3fe1fec00b42261d8f3db270
MD5 32508bb2f0c78dc7086be83ea56143b1
BLAKE2b-256 4ad1adf11fc58d95c7e171c531022e39c7f0f5b60b4fecf8dcefe9489ad27c1c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for mqt.qmap-1.11.2-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f20c2f8791df89c7380eeef68af6adbb83c0f25d930115876f075d721a1a291d
MD5 3a50211e0e56f7c01dd678e81e29c930
BLAKE2b-256 2d59f30bbffe56af64672b96c3eef99d6802b1b06cab9bc5eb40ded13d1bca01

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for mqt.qmap-1.11.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a7bacb19cd9ac55a9fa41f57deb3b1f78c1ef2cfd127c18064a59cfe36eb7684
MD5 929adb81503dd508405d7142920d3e98
BLAKE2b-256 9463cdbaaa5ed6d537a4c4312c519290e1df7e3791481c8dd825e19142b5a32f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for mqt.qmap-1.11.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 8801aa19cd240fe1f71731cadfa212a0a3eb33efb9069f1c82633e64134ffaec
MD5 7ccf39b73d9c86a959d47baefc61a570
BLAKE2b-256 47c2cf90f133d15d1056e2e9a761d978cf6c18ff6a0220cf9661ac4be25d3609

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for mqt.qmap-1.11.2-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9501dcd1947df5832ba1566711a1fc9b941b21458e3498010eb9bbcac5ef9a66
MD5 fa615bc3e5f93d94d800131520e0123c
BLAKE2b-256 c6e9ff243def9f6c436caf0f94c6361fc9e6b4359d929587e10de6fe25630427

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for mqt.qmap-1.11.2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9392ab2b2c0d358ac565733092c811acd563c809a1caf43c0dab3a10f43f5936
MD5 d753609ee26c005a8544cda032c07d8b
BLAKE2b-256 1fa1139f3d4a854e926252682cb2cada93a5808b47600ab31fa2618fe5f422c6

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for mqt.qmap-1.11.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 84b7c2cd331b5b1b22f634b503a883216d6520f891e4d8bee7481a8c5bdf7386
MD5 888c4f45dbe58e69707ced6acaf6bc38
BLAKE2b-256 b81fca3def620a7ba53385c12f060e888773486dc7ba936e6976458f21ade3b4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for mqt.qmap-1.11.2-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1ccd66dcd8fff8cc1f9ee49e7a25188402f776e4cb752f7ac42af4761cd6bdd2
MD5 6c2a7796d9b2e5e70a6a26c2661b4352
BLAKE2b-256 db87fd78a1dd5372d31926f78e7d568f8adca418989053eb2e1f8573c014d9d7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for mqt.qmap-1.11.2-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 20ad6ff180536c046e5e1858930079ea6a64432dfabf30c4595e628594d82d45
MD5 afa615230b1784f2f03e6f62081c7063
BLAKE2b-256 98bc95767386292b52be8419bdb1bca4d34147e45e3af830914548b16a92a7f9

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for mqt.qmap-1.11.2-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 309f59679ff8cabff93917378f1e046b8717e31b2146a77fafbbfbf72f4d9323
MD5 db48981b9cfafc234264906948470e75
BLAKE2b-256 85b0b8ea8556c99308a04d166bc00b5f38b9830d77d9095d5f994425030de882

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for mqt.qmap-1.11.2-cp38-cp38-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 334093d25bf06eb42ed64dfaec404ce51bb3026239907b70b544d142343a0765
MD5 ae17d9f9734e1b304a436a01ff2700a8
BLAKE2b-256 6c4efbe7e5238d68cf8de6e365fa45437b278b4acfdfb8adae049bf9597f788e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for mqt.qmap-1.11.2-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 470f2498363a8632ae589f912b209ba5bec3c798c9171701321e5b6fd912a572
MD5 a404feef1a875f161467101a54befc63
BLAKE2b-256 3de6de9dda4aa533e65df2d6b0733f9f8737f8d5ead096d84b0a1f691da58099

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for mqt.qmap-1.11.2-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 6e6c250727f37756fcf2388b593838d38a85a3889f37eb25bccca252c0e99216
MD5 ac41f29f4541fe9d736e2723b6901486
BLAKE2b-256 4083f5435fdc502cd1378e0a44e27d8903ec7ad251c33a2687c448a79b672be2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for mqt.qmap-1.11.2-cp37-cp37m-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 05c6a6fb201d1c5dae45b948c2435d2cfa7cd5fc02ec2c865d4bde42da0f29ec
MD5 3fa17a29e024b0ee22739240d87e2e01
BLAKE2b-256 565ac7aa10d989aef8e1b396fea2357a9e80c191b1082873d27fb0419d410bf4

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