Skip to main content

PyPI OS License: MIT CI Bindings codecov

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

A tool for quantum circuit mapping developed by the Chair for Design Automation at the Technical University of Munich 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.

QMAP is part of the Munich Quantum Toolkit (MQT; formerly known as JKQ and developed by the Institute for Integrated Circuits at the Johannes Kepler University Linz). It builds upon our quantum functionality representation (QFR) and can be used for mapping quantum circuits in any of the following formats:

to any given architecture 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 cda.cit.tum.de/research/ibm_qx_mapping/.

If you have any questions, feel free to contact us via quantum.cda@xcit.tum.de 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 import qmap
    
    circ_mapped, results = qmap.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

  • a Qiskit Backend instance such as those defined under qiskit.providers.fake_provider (recommended),
  • 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:

  • 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_Casablanca (7 qubit, undirected H-shape layout)
  • IBMQ_Tokyo (20 qubit, undirected brick-like layout)
  • Rigetti_Agave (8 qubit, undirected ring layout)
  • Rigetti_Aspen (16 qubit, undirected dumbbell 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 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.loadProperties(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}
}

Metadata

Release files for mqt-qmap 1.10.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mqt-qmap 1.10.1
File Size Uploaded
mqt.qmap-1.10.1.tar.gz 5.8 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for mqt-qmap 1.10.1
File
mqt.qmap-1.10.1-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
mqt.qmap-1.10.1-cp311-cp311-manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64 Details
mqt.qmap-1.10.1-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
mqt.qmap-1.10.1-cp311-cp311-macosx_10_15_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.15+ x86-64 Details
mqt.qmap-1.10.1-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
mqt.qmap-1.10.1-cp310-cp310-manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64 Details
mqt.qmap-1.10.1-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
mqt.qmap-1.10.1-cp310-cp310-macosx_10_15_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.15+ x86-64 Details
mqt.qmap-1.10.1-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
mqt.qmap-1.10.1-cp39-cp39-manylinux_2_28_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.28+ x86-64 Details
mqt.qmap-1.10.1-cp39-cp39-macosx_11_0_arm64.whl CPython 3.9 CPython 3.9 macOS 11.0+ ARM64 Details
mqt.qmap-1.10.1-cp39-cp39-macosx_10_15_x86_64.whl CPython 3.9 CPython 3.9 macOS 10.15+ x86-64 Details
mqt.qmap-1.10.1-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details
mqt.qmap-1.10.1-cp38-cp38-manylinux_2_28_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.28+ x86-64 Details
mqt.qmap-1.10.1-cp38-cp38-macosx_11_0_arm64.whl CPython 3.8 CPython 3.8 macOS 11.0+ ARM64 Details
mqt.qmap-1.10.1-cp38-cp38-macosx_10_15_x86_64.whl CPython 3.8 CPython 3.8 macOS 10.15+ x86-64 Details
mqt.qmap-1.10.1-cp37-cp37m-win_amd64.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-64 Details
mqt.qmap-1.10.1-cp37-cp37m-manylinux_2_28_x86_64.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.28+ x86-64 Details
mqt.qmap-1.10.1-cp37-cp37m-macosx_10_15_x86_64.whl CPython 3.7 CPython 3.7 pymalloc macOS 10.15+ x86-64 Details

Total release size: 171.8 MB

Release files / mqt.qmap-1.10.1.tar.gz

Download URL mqt.qmap-1.10.1.tar.gz
Size 5.8 MB
Tags Source
SHA-256 checksum
How to use checksums
bdb6ac79553c46a459f25d70d56abb71ea89b6b8a6257ed060f74cdcba8d80f4
BLAKE2b-256 checksum
How to use checksums
f59eafdf4c52e94b451f9b235b0f7179700e11f1e7ba1fa3a6a5906639be14df
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qmap-1.10.1-cp311-cp311-win_amd64.whl

Download URL mqt.qmap-1.10.1-cp311-cp311-win_amd64.whl
Size 6.7 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
a008b196c6d0c3ddb24370f51cf29ee6945d01d8d26c6b9d50b14193fcbd962f
BLAKE2b-256 checksum
How to use checksums
8fc14eed06bc6fff473a3a2423adbd5304ef220e71b27f538153afa241cf2247
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qmap-1.10.1-cp311-cp311-manylinux_2_28_x86_64.whl

Download URL mqt.qmap-1.10.1-cp311-cp311-manylinux_2_28_x86_64.whl
Size 12.8 MB
Tags CPython 3.11 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
ff09604d217e56d65e67575ec3552fd726109f83877a358442d305103bf8178e
BLAKE2b-256 checksum
How to use checksums
ee9466f2bf81028b3aa66f835fa5f59f2a519a9d5cdaf2df40ab112825b2e994
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qmap-1.10.1-cp311-cp311-macosx_11_0_arm64.whl

Download URL mqt.qmap-1.10.1-cp311-cp311-macosx_11_0_arm64.whl
Size 7.1 MB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
d71c8d234a4194996941b0da24091ead3f9b1e71517360af6798e7d1f945f13f
BLAKE2b-256 checksum
How to use checksums
3b7dc1d1c899f51445623c442e1cd395e27fd514e818852d5d53ec3459328174
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qmap-1.10.1-cp311-cp311-macosx_10_15_x86_64.whl

Download URL mqt.qmap-1.10.1-cp311-cp311-macosx_10_15_x86_64.whl
Size 8.0 MB
Tags CPython 3.11 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
513135dba24b47b8304e864a429dee8aae0a88ebe49e3371bbfe2f87789eb205
BLAKE2b-256 checksum
How to use checksums
9c8897108588a63b6340980de4481f1df249a514a0030316dc1c14376545a370
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qmap-1.10.1-cp310-cp310-win_amd64.whl

Download URL mqt.qmap-1.10.1-cp310-cp310-win_amd64.whl
Size 6.7 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
3d5308cca8b184d5087133be9aaefeb5304599d865bc8d26e8603864b5e42481
BLAKE2b-256 checksum
How to use checksums
1592fd12b304f99270780bd33f72306a79e4ba342bf0549e761753a2574e9ef8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qmap-1.10.1-cp310-cp310-manylinux_2_28_x86_64.whl

Download URL mqt.qmap-1.10.1-cp310-cp310-manylinux_2_28_x86_64.whl
Size 12.8 MB
Tags CPython 3.10 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
2ca5e6ac84fa3b1b0c4923cd85cea39903cce54cec50ab9b4f248bb2f28d61c5
BLAKE2b-256 checksum
How to use checksums
03e1a2cf2d26782a033de445383cf900dce33bee64ef6417c1edc5010c520985
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qmap-1.10.1-cp310-cp310-macosx_11_0_arm64.whl

Download URL mqt.qmap-1.10.1-cp310-cp310-macosx_11_0_arm64.whl
Size 7.1 MB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
1266d2d84bc6700842719e6b560c5006e3f45939fd1cf283fdf81cbd00fe9dc4
BLAKE2b-256 checksum
How to use checksums
ced77ea974d934a7e3d852721f984a8713802db0ef4e2b4c75be19eda779ad8e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qmap-1.10.1-cp310-cp310-macosx_10_15_x86_64.whl

Download URL mqt.qmap-1.10.1-cp310-cp310-macosx_10_15_x86_64.whl
Size 8.0 MB
Tags CPython 3.10 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
58e065ac5fdfb6a0d4c6c55969653f15c0a78e69e6354a58e943870393c9ce20
BLAKE2b-256 checksum
How to use checksums
7cd31f01bab492fea539b6378be036c8c1184f67d9b262859f2b6304606fed0e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qmap-1.10.1-cp39-cp39-win_amd64.whl

Download URL mqt.qmap-1.10.1-cp39-cp39-win_amd64.whl
Size 6.7 MB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
2cbef826cbcb6f9645ad00c9d09ae572245286321dc48a5fd328e3e10662c883
BLAKE2b-256 checksum
How to use checksums
10bcd72403f782743bed57fa083b9f1a774dc9eba55ef413991f0a24b1edfc3e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qmap-1.10.1-cp39-cp39-manylinux_2_28_x86_64.whl

Download URL mqt.qmap-1.10.1-cp39-cp39-manylinux_2_28_x86_64.whl
Size 12.8 MB
Tags CPython 3.9 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
5950418960b748805e64cc363ec8d4ea031a0f8b31b931ee6ea362b645ab505c
BLAKE2b-256 checksum
How to use checksums
ae275b9817bec7483905bac646683f7e80864d12c6967610c699178766bea481
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qmap-1.10.1-cp39-cp39-macosx_11_0_arm64.whl

Download URL mqt.qmap-1.10.1-cp39-cp39-macosx_11_0_arm64.whl
Size 7.1 MB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
67e4bcc2b4a4dbeadcd22cc7f9d8df1827b74d27df3c2a036355c0271ad7a019
BLAKE2b-256 checksum
How to use checksums
f116f8dbb67b9bff0f813e7f01cf87b48e3aa935ec35e6795a46a62086e7a6ce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qmap-1.10.1-cp39-cp39-macosx_10_15_x86_64.whl

Download URL mqt.qmap-1.10.1-cp39-cp39-macosx_10_15_x86_64.whl
Size 8.0 MB
Tags CPython 3.9 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
ee94e0bd2471f77209e45d32326a1c794a717d9b6d72aa033ee86eae1e3c8ec6
BLAKE2b-256 checksum
How to use checksums
8b417f50a15ddfbddf6abaead179f276daa407f84dcc60ee5034ca2327f20fce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qmap-1.10.1-cp38-cp38-win_amd64.whl

Download URL mqt.qmap-1.10.1-cp38-cp38-win_amd64.whl
Size 6.7 MB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
b01c2d96072e34896989fdc643e81c543c4a9fa67dbe4b5c18387b0f72ea88d2
BLAKE2b-256 checksum
How to use checksums
bfab80b3c2b16d923fde7b590fdc6817c33e54da95a59847527620624be85f94
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qmap-1.10.1-cp38-cp38-manylinux_2_28_x86_64.whl

Download URL mqt.qmap-1.10.1-cp38-cp38-manylinux_2_28_x86_64.whl
Size 12.8 MB
Tags CPython 3.8 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
61a0bb8e3115f9a8338f61e236f0e28ef92595ead92465ee63006c0e1a51db93
BLAKE2b-256 checksum
How to use checksums
6c53e85305c618745e3954f1a2938bed18ec0aff5c64bdd206032fe60a0c5cc8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qmap-1.10.1-cp38-cp38-macosx_11_0_arm64.whl

Download URL mqt.qmap-1.10.1-cp38-cp38-macosx_11_0_arm64.whl
Size 7.1 MB
Tags CPython 3.8 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
2c7b6fa0ade52cf732e7d827dc6aedd2f91aebd1d0987985713fbc5d64e3b0e9
BLAKE2b-256 checksum
How to use checksums
76fb4020bc00cdcf82aa6a06d4c13de544a7d3fbe5aa4a17af3a09fbd69dfc63
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qmap-1.10.1-cp38-cp38-macosx_10_15_x86_64.whl

Download URL mqt.qmap-1.10.1-cp38-cp38-macosx_10_15_x86_64.whl
Size 8.0 MB
Tags CPython 3.8 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
4540a0e3c79ade0741a2279ffca68262c8ad8ce3aea7d2c7cc28060eb9b970fd
BLAKE2b-256 checksum
How to use checksums
c0a3bec4ef85ece08bdfd25fc0da9428c94d247b4d086754970b25fe889a2dc5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qmap-1.10.1-cp37-cp37m-win_amd64.whl

Download URL mqt.qmap-1.10.1-cp37-cp37m-win_amd64.whl
Size 6.7 MB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
4514d03f9ca22ae826771ed3c9cb7a58d0737c784cbda56353e2c4459e199726
BLAKE2b-256 checksum
How to use checksums
4aabd6cd39da06646bfbf24014e58b4e82242bd8abd3b51cb6a5d939d26d6b04
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qmap-1.10.1-cp37-cp37m-manylinux_2_28_x86_64.whl

Download URL mqt.qmap-1.10.1-cp37-cp37m-manylinux_2_28_x86_64.whl
Size 12.8 MB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
a85283968f4e92867dff5c04806fd690b55e911df82100a96f1a97dcc62dd91e
BLAKE2b-256 checksum
How to use checksums
4e9b01e717254e324e56e97e0a1aa56c0c389908e4b0a5e98bde89afa42df693
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qmap-1.10.1-cp37-cp37m-macosx_10_15_x86_64.whl

Download URL mqt.qmap-1.10.1-cp37-cp37m-macosx_10_15_x86_64.whl
Size 7.9 MB
Tags CPython 3.7 CPython 3.7 pymalloc macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
d28e24cdbd4cec98df86acecb6022dc49366d300a756d2128c264ef1863e25ac
BLAKE2b-256 checksum
How to use checksums
551b24235ca087b1c55ea92f4289ed14b001b745261a94a1a4964413c3929da5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page