Skip to main content

MQT QMAP - A tool for Quantum Circuit Mapping

Project description

PyPI GitHub Workflow Status Codecov branch GitHub arXiv arXiv arXiv

MQT QMAP - A tool for Quantum Circuit Mapping written in C++

A tool for quantum circuit mapping by the Institute for Integrated Circuits at the Johannes Kepler University Linz based on methods proposed in [1] , [2], [3] , [4].

[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.

The tool can be used for mapping quantum circuits in any of the following formats:

to any given architecture, e.g., the 5-qubit, T-shaped IBMQ London architecture, which is specified by the coupling map

5
0 1
1 0
1 2
2 1
1 3
3 1
3 4
4 3

with the following available methods:

  • Heuristic Mapper: Heuristic solution based on A* search. For details see [1] and [3].
  • Exact Mapper: Exact solution utilizing the SMT Solver Z3. For details see [2] and [4].

Note that, at the moment, circuits to be mapped are assumed to be already decomposed into elementary gates supported by the targeted device. More specifically, circuits must not contain gates acting on more than two qubits.

For more information, please visit iic.jku.at/eda/research/ibm_qx_mapping/.

If you have any questions, feel free to contact us via iic-quantum@jku.at or by creating an issue on GitHub.

Usage

MQT QMAP is developed as a C++ library with an easy to use Python interface.

  • In order to make the library as easy to use as possible (without compilation), we provide pre-built wheels for most common platforms (64-bit Linux, MacOS, Windows). These can be installed using
    pip install mqt.qmap
    
    However, in order to get the best performance out of QMAP, it is recommended to build it locally from the source distribution (see system requirements) via
    pip install  mqt.qmap --no-binary mqt.qmap
    
    This enables platform specific compiler optimizations that cannot be enabled on portable wheels.
  • Once installed, start using it in Python:
    from mqt.qmap import *
    results = compile(circ, arch)
    

where circ is either a Qiskit QuantumCircuit object or the path to an input file (in any of the formats listed above) and arch is either one of the pre-defined architectures (see below) or the path to a file containing the number of qubits and a line-by-line enumeration of the qubit connections.

Architectures that are available per default (either as strings or under qmap.Arch.<...>) include (corresponding files are available in extern/architectures/):

  • IBM_QX4 (5 qubit, directed bow tie layout)
  • IBM_QX5 (16 qubit, directed ladder layout)
  • IBMQ_Yorktown (5 qubit, undirected bow tie layout)
  • IBMQ_London (5 qubit, undirected T-shape layout)
  • IBMQ_Bogota (5 qubit, undirected linear chain layout)
  • IBMQ_Tokyo (20 qubit, undirected brick-like layout)

Whether the heuristic (default) or the exact mapper is used can be controlled by passing method="heuristic" or method="exact" to the compile function.

There are several configuration options that can be passed to the compile function:

  • The heuristic mapper offers the initial_layout option, which allows to choose one of the following strategies for choosing an initial layout:

    • identity: map logical qubit q_i to physical qubit Q_i,
    • static: determine fixed initial layout statically at the start of mapping,
    • dynamic (default): determine initial layout on demand during the mapping (this is the only one compatible with teleportation).
  • Both, the exact and the heuristic mapper also offer the layering option, which allows to choose one of the following strategies for partitioning the circuit:

    • individual_gates (default): consider each gate separately,
    • disjoint_qubits: consider gates acting on disjoint qubits as a layer,
    • odd_gates: group pairs of gates. (Note that this strategy was only tested for IBM QX4 with the exact mapping tool and may not work on different architectures)
    • qubit_triangle: add gates to a layer, as long as no more than three qubits are involved. (Note that this strategy only works if the architecture's coupling map contains a triangle, e.g. IBM QX4, and was only tested using the exact mapping tool)
  • The exact mapper offers the encoding option, which allows to choose a different encoding for at-most-one and exactly-one constraints:

    • naive (default): use naive encoding for constraints
    • commander: use commander encoding for at-most-one and exactly-one constraints
    • bimander: use bimander encoding for at-most-one and commander for exactly-one constraints

    As the commander encoding can use different strategies to group the variables, there are different commander_grouping options:

    • halves (default): each group contains half of the total variables
    • logarithm: each group contains at most log2 of the total variables
    • fixed2: each group contains exactly two variables
    • fixed3: each group contains exactly three variables
  • Per default, the exact mapper searches for a suitable mapping by considering every possible (connected) subset of qubits instead of the whole architecture at once. This can be disabled by setting use_subsets=False.

  • The exact mapper also offers the swap_reduction option to enable limiting the number of swaps considered per layer (as proposed in [4] , which offers the following options:

    • none: consider whole search space
    • coupling_limit (default): calculate the max swaps per layer based on the longest path of current choice of qubits, or if use_subsets is disabled considers the whole architecture
    • increasing: start with 0 swaps and geometrically increase the number of swaps per layer
    • custom: set a custom limit, needs the swap_limit option to set the limit

    Using the use_bdd option, the mapping utilizes BDDs instead of simply removing the permutations from the core routine. This option is not generally advised, as it is more resource intensive in most cases, but is something to try in cases of timeout.

Command-line Executable

QMAP also provides two standalone executables with command-line interface called qmap_heuristic and qmap_exact. They provide the same options as the Python module as flags. Per default, this produces JSON formatted output. In general, we recommend to use the Python approach described above, as these commandline executables might not be maintained in the future.

System Requirements

Building (and running) is continuously tested under Linux, MacOS, and Windows using the latest available system versions for GitHub Actions. However, the implementation should be compatible with any current C++ compiler supporting C++17 and a minimum CMake version of 3.14.

boost/program_options >= 1.50 is required for building the the commandline applications of the mapping tool.

In order to build the exact mapping tool and for the Python bindings to work, the SMT Solver Z3 >= 4.8.3 has to be installed and the dynamic linker has to be able to find the library. This can be accomplished in a multitude of ways:

  • Under Ubuntu 20.04 and newer: sudo apt-get install libz3-dev
  • Under macOS: brew install z3
  • Alternatively: pip install z3-solver and then append the corresponding path to the library path (LD_LIBRARY_PATH under Linux, DYLD_LIBRARY_PATH under macOS), e.g. via
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(python -c "import z3; print(z3.__path__[0]+'/lib')")
    
  • Download pre-built binaries from https://github.com/Z3Prover/z3/releases and copy the files to the respective system directories
  • Build Z3 from source and install it to the system

Library Organisation

Internally the MQT QMAP library works in the following way

  • Import input file into a qc::QuantumComputation object
    qc::QuantumComputation qc{};
    std::string circ = "<PATH_TO_CIRCUIT_FILE>";
    qc.import(circ);
    
  • Import architecture file into a Architecture object
    Architecture arch{};
    std::string cm = "<PATH_TO_ARCH_FILE>";
    arch.loadCouplingMap(cm);
    
  • (Optional) Import calibration file into arch object
    std::string cal = "<PATH_TO_CAL_FILE>";
    arch.loadCalibrationData(cal);
    
  • Depending on Method, instantiate a HeuristicMapper or ExactMapper object with the circuit and the architecture
    HeuristicMapper mapper(qc, arch);
    
    or
    ExactMapper mapper(qc, arch);
    
  • Set configuration options, e.g.,
    Configuration config{};
    config.layeringStrategy = Layering::DisjointQubits;
    
  • Perform the actual mapping
    mapper.map(config);
    
  • Dump the mapped circuit
    mapper.dumpResult("<PATH_TO_OUTPUT_FILE>");
    
  • Print the results
    mapper.printResult(std::cout);
    

Configure, Build, and Install

To start off, clone this repository using

git clone --recurse-submodules -j8 https://github.com/cda-tum/qmap 

Note the --recurse-submodules flag. It is required to also clone all the required submodules. If you happen to forget passing the flag on your initial clone, you can initialize all the submodules by executing git submodule update --init --recursive in the main project directory.

Our projects use CMake as the main build configuration tool. Building a project using CMake is a two-stage process. First, CMake needs to be configured by calling

cmake -S . -B build -DCMAKE_BUILD_TYPE=Release

This tells CMake to search the current directory . (passed via -S) for a CMakeLists.txt file and process it into a directory build (passed via -B). The flag -DCMAKE_BUILD_TYPE=Release tells CMake to configure a Release build (as opposed to, e.g., a Debug build).

After configuring with CMake, the project can be built by calling

cmake --build build --config Release

This tries to build the project in the build directory (passed via --build). Some operating systems and developer environments explicitly require a configuration to be set, which is why the --config flag is also passed to the build command. The flag --parallel <NUMBER_OF_THREADS> may be added to trigger a parallel build.

Building the project this way generates

  • the heuristic library libqmap_heuristic_lib.a (Unix) / qmap_heuristic_lib.lib (Windows) in the build/src directory
  • the heuristic mapper commandline executable qmap_heuristic in the build/apps directory (only available if Boost is found)
  • a test executable qmap_heuristic_test containing a small set of unit tests for the heuristic mapper in the build/test directory
  • the exact library libqmap_exact_lib.a (Unix) / qmap_exact_lib.lib (Windows) in the build/src directory (only available if Z3 is found)
  • the exact mapper commandline executable qmap_exact in the build/apps directory (only available if Boost and Z3 is found)
  • a test executable qmap_exact_test containing a small set of unit tests for the exact mapper in the build/test directory (only available if Z3 is found)

Extending the Python Bindings

To extend the Python bindings you can locally install the package in edit mode, so that changes in the Python code are instantly available. The following example assumes you have a virtual environment set up and activated.

(venv) $ pip install cmake
(venv) $ pip install --editable .

If you change parts of the C++ code, you have to run the second line to make the changes visible in Python.

Reference

If you use our tool for your research, we will be thankful if you refer to it by citing the appropriate publications.

For the heuristic mapping, please cite

@article{DBLP:journals/tcad/ZulehnerPW19,
  author    = {Alwin Zulehner and Alexandru Paler and Robert Wille},
  title     = {An Efficient Methodology for Mapping Quantum Circuits to the {IBM QX} Architectures},
  journal   = {{IEEE} Transactions on Computer-Aided Design of Integrated Circuits and Systems},
  volume    = {38},
  number    = {7},
  pages     = {1226--1236},
  year      = {2019}
}

For the teleportation in the heuristic mapping, please cite

@inproceedings{DBLP:conf/aspdac/HillmichZW21,
  author    = {Stefan Hillmich and Alwin Zulehner and Robert Wille},
  title     = {Exploiting Quantum Teleportation in Quantum Circuit Mapping},
  booktitle = {Asia and South Pacific Design Automation Conference},
  pages     = {792--797},
  publisher = {{ACM}},
  year      = {2021}
}

For the exact mapping, please cite

@inproceedings{DBLP:conf/dac/WilleBZ19,
  author    = {Robert Wille and Lukas Burgholzer and Alwin Zulehner},
  title     = {Mapping Quantum Circuits to {IBM QX} Architectures Using the Minimal Number of {SWAP} and {H} Operations},
  booktitle = {Design Automation Conference},
  publisher = {{ACM}},
  year      = {2019}
}

For the search space limitation in the exact mapping, please cite

@inproceedings{burgholzer2022limitingSearchSpace,
  author    = {Lukas Burgholzer and Sarah Schneider and Robert Wille},
  title     = {Limiting the Search Space in Optimal Quantum Circuit Mapping},
  booktitle = {Asia and South Pacific Design Automation Conference},
  year      = {2022}
}

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

Uploaded Source

Built Distributions

mqt.qmap-1.6.0-cp310-cp310-win_amd64.whl (6.6 MB view details)

Uploaded CPython 3.10 Windows x86-64

mqt.qmap-1.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.3 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

mqt.qmap-1.6.0-cp310-cp310-macosx_11_0_arm64.whl (6.9 MB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

mqt.qmap-1.6.0-cp310-cp310-macosx_10_15_x86_64.whl (7.4 MB view details)

Uploaded CPython 3.10 macOS 10.15+ x86-64

mqt.qmap-1.6.0-cp39-cp39-win_amd64.whl (6.6 MB view details)

Uploaded CPython 3.9 Windows x86-64

mqt.qmap-1.6.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.3 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

mqt.qmap-1.6.0-cp39-cp39-macosx_11_0_arm64.whl (6.9 MB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

mqt.qmap-1.6.0-cp39-cp39-macosx_10_15_x86_64.whl (7.4 MB view details)

Uploaded CPython 3.9 macOS 10.15+ x86-64

mqt.qmap-1.6.0-cp38-cp38-win_amd64.whl (6.6 MB view details)

Uploaded CPython 3.8 Windows x86-64

mqt.qmap-1.6.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.3 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

mqt.qmap-1.6.0-cp38-cp38-macosx_11_0_arm64.whl (6.9 MB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

mqt.qmap-1.6.0-cp38-cp38-macosx_10_15_x86_64.whl (7.4 MB view details)

Uploaded CPython 3.8 macOS 10.15+ x86-64

mqt.qmap-1.6.0-cp37-cp37m-win_amd64.whl (6.6 MB view details)

Uploaded CPython 3.7m Windows x86-64

mqt.qmap-1.6.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.3 MB view details)

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

mqt.qmap-1.6.0-cp37-cp37m-macosx_10_15_x86_64.whl (7.4 MB view details)

Uploaded CPython 3.7m macOS 10.15+ x86-64

mqt.qmap-1.6.0-cp36-cp36m-win_amd64.whl (6.6 MB view details)

Uploaded CPython 3.6m Windows x86-64

mqt.qmap-1.6.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.3 MB view details)

Uploaded CPython 3.6m manylinux: glibc 2.17+ x86-64

mqt.qmap-1.6.0-cp36-cp36m-macosx_10_15_x86_64.whl (7.4 MB view details)

Uploaded CPython 3.6m macOS 10.15+ x86-64

File details

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

File metadata

  • Download URL: mqt.qmap-1.6.0.tar.gz
  • Upload date:
  • Size: 7.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for mqt.qmap-1.6.0.tar.gz
Algorithm Hash digest
SHA256 b95aa99d35c70c8111e38aa4c0975ea3763f9afd5a14b627cf418cea896476d2
MD5 673388e5cdcd6b199beb9a93bd492051
BLAKE2b-256 04ab40b9257b06e2ce3f2fe56a6f22588dab43dce5f6c3b918680a9d7a395743

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mqt.qmap-1.6.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 6.6 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for mqt.qmap-1.6.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 732902b4fff2e589d125ceda293d8f07fceae696728f81dfe877bf15c9e6b329
MD5 acba3a37c316de8b9310205b5bcc685d
BLAKE2b-256 d780fd435641185284645e72da65f5b41c3e808579e5a88730eaa8e2af4a4226

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: mqt.qmap-1.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 12.3 MB
  • Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for mqt.qmap-1.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b54a258d4c7f7b86d1d480af9dd44605db8d249bfd0a204f633b1850ed0d1d9a
MD5 2fbe6958ea0635600af0b1de21f20f29
BLAKE2b-256 c4d6e5f4b5a50590e5ff32ddffc2704967bcaaa404af7780bd5c3e59ed1073b3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mqt.qmap-1.6.0-cp310-cp310-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 6.9 MB
  • Tags: CPython 3.10, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for mqt.qmap-1.6.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 931902e499e0a37b9137b783803e740a47c849c3c8de3aa5e0afaae24462196e
MD5 f1f7388c26f1db96e605b5965ec75b5c
BLAKE2b-256 1af8255b4cb0545ad33748e2edbf7fbfc42debd78bfcbcbf0c2bf306eab8403a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mqt.qmap-1.6.0-cp310-cp310-macosx_10_15_x86_64.whl
  • Upload date:
  • Size: 7.4 MB
  • Tags: CPython 3.10, macOS 10.15+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for mqt.qmap-1.6.0-cp310-cp310-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 7af8a96d170b7b6e4f78cf25b0f453d7dc52b93e7299b10ecffd8316d7b09803
MD5 3021c05e0190310032d89d74c7c81f34
BLAKE2b-256 3b7b7f278797c9e0c265d88331fb7f0c13631ed960b200e85fe3c8ed2562a590

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mqt.qmap-1.6.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 6.6 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for mqt.qmap-1.6.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 667b221dd5d11406cc8835783fffce866b84f7b8fe230cda0410d53191fd9c97
MD5 3837362c10b524eccc29232838498dbc
BLAKE2b-256 fd279c086f7f97d727b5d1918dc893c0fe3cbf01872a2ad433008faa44843160

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.6.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: mqt.qmap-1.6.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 12.3 MB
  • Tags: CPython 3.9, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for mqt.qmap-1.6.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e35cc16c4f3ea8d9679888db2781fddc78455d085c0faa8464a11a109c0f346c
MD5 6d652b939c1bd4974bdacf3a0aa32c83
BLAKE2b-256 eb62f3a38a006c99000ff617fe7cadea52dbcba31521581044977fe217ec3ac8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mqt.qmap-1.6.0-cp39-cp39-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 6.9 MB
  • Tags: CPython 3.9, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for mqt.qmap-1.6.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e06abe18a77cc40f7100151286f50cfbd2a2789ce4ebe62a07ef622cb36ed1fd
MD5 1e530e3eb4fca03843acf628597f63af
BLAKE2b-256 792967715c4f0badd5ed8bb9efbba3aceb1e995cf4bd43f55912e3e11f7980f0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mqt.qmap-1.6.0-cp39-cp39-macosx_10_15_x86_64.whl
  • Upload date:
  • Size: 7.4 MB
  • Tags: CPython 3.9, macOS 10.15+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for mqt.qmap-1.6.0-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 7068500a5c0e27dd6bffe6c5dfeb2608d9e29b5642b4ceb86ded8214137de38d
MD5 ab717eeee2fd8916642c1334ca0dea4b
BLAKE2b-256 86741b6e7de4347363e1fd726bb1a27c6fe7673e3a08d868c398253fb6b51c6a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mqt.qmap-1.6.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 6.6 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for mqt.qmap-1.6.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 88f1416100773a2fb2221a4423942d14787a7c4c6735f8265df56b6edd133fcb
MD5 ad28a7bfa57ef3befc123a72e05b7ef3
BLAKE2b-256 12821b79990eb50fbcd413b12a18a63cfe3c491a1e0aa15107ce79f2cd7bcdf3

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.6.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: mqt.qmap-1.6.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 12.3 MB
  • Tags: CPython 3.8, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for mqt.qmap-1.6.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 77ada8e6e17159b1de042d2856cbc8096c7043d68d1454c8a125a0bd57e13eee
MD5 b519d00f419a0c01954b025415beb61d
BLAKE2b-256 f704ae1ffd146921464ac5b3242ab73705a9f5b8101914b135638cec383a2569

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mqt.qmap-1.6.0-cp38-cp38-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 6.9 MB
  • Tags: CPython 3.8, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for mqt.qmap-1.6.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bb529f3955b1b3e4c3901dfb7ca54ceb5b67ebea5efbce11a06556074b170806
MD5 540dae6e9d1e932ff91b01ab18aa0b83
BLAKE2b-256 63aa0c679031630ec61be13fd8faa5f55ec250c21bb4ae713bdaf7720dd0b605

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mqt.qmap-1.6.0-cp38-cp38-macosx_10_15_x86_64.whl
  • Upload date:
  • Size: 7.4 MB
  • Tags: CPython 3.8, macOS 10.15+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for mqt.qmap-1.6.0-cp38-cp38-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 6d4babc7f962fc02ab754c1053d7bba6206f53e177d04aa8af3f0350f018de44
MD5 08b762a75715dd12bd2220789531be35
BLAKE2b-256 8e05ab9ca93474ac423cfe178964bc7752cacd9e0a9399ea407274cf350384b3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mqt.qmap-1.6.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 6.6 MB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for mqt.qmap-1.6.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 df390064f9f548d1d82ac42330d24436554ad0247a4536bb1056b0fb7c95d52b
MD5 a1fc755c570b0cacf1c4ed3e771339ae
BLAKE2b-256 69562ad8d39d14ddf84b770dca2b30f0e50b6c7225516a758202e130c590f4ac

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.6.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: mqt.qmap-1.6.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 12.3 MB
  • Tags: CPython 3.7m, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for mqt.qmap-1.6.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2ee7d78a9ae89ec7a389b9d5db34605897ad2218234d73fce88f920b862dbeed
MD5 edefa7b98ab00c321942428c9d643a1f
BLAKE2b-256 90394a990e46f3b9537da2866726ff91c26b611bc481cd09e9f1b844825f0a81

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mqt.qmap-1.6.0-cp37-cp37m-macosx_10_15_x86_64.whl
  • Upload date:
  • Size: 7.4 MB
  • Tags: CPython 3.7m, macOS 10.15+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for mqt.qmap-1.6.0-cp37-cp37m-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 a44cebccc3438a68a887f40c018edecfff8cde6a96bdae8410dcc057bd520812
MD5 49ace434a702c3610b77f6ef04c062db
BLAKE2b-256 073ceed118f16e3412b8ab4257bd1eecb7ae8add40743ed7529ef30702c75d19

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.6.0-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: mqt.qmap-1.6.0-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 6.6 MB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for mqt.qmap-1.6.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 8ecdd2bc2b522797c25b6635e25cec2250c15547485489d86bece2d5b1b5b064
MD5 f20acd732bd9686d7f1c1cb789aecab3
BLAKE2b-256 7819ca0c8208c24a79a0c246a470ffa5da1da9d90fb7ad20a3dc170fd1664b3b

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.6.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: mqt.qmap-1.6.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 12.3 MB
  • Tags: CPython 3.6m, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for mqt.qmap-1.6.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9214e53c210b59210820bd402ce2004ad59e6a42b87d4c5d244e0d0e7773c4bd
MD5 a13e8abaaacc9629cec65abc35471df9
BLAKE2b-256 45a266282a837924d1fec3646f93652313375025a0db0cae95fe9fe82bd6c127

See more details on using hashes here.

File details

Details for the file mqt.qmap-1.6.0-cp36-cp36m-macosx_10_15_x86_64.whl.

File metadata

  • Download URL: mqt.qmap-1.6.0-cp36-cp36m-macosx_10_15_x86_64.whl
  • Upload date:
  • Size: 7.4 MB
  • Tags: CPython 3.6m, macOS 10.15+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for mqt.qmap-1.6.0-cp36-cp36m-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 170915dcc802e743527e033e2650cbdd7100bc1579f8edadb1099d7d3aa34fbe
MD5 6e28f9a62b87866c73beb9eae73d5fb4
BLAKE2b-256 fa19cea1a17a12931a87550a4c4d4f88f96d6c2bc12ce75661c2f58db97f9142

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