Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

PyPI OS License: MIT CI Bindings Documentation codecov

MQT QCEC - A tool for Quantum Circuit Equivalence Checking

A tool for quantum circuit equivalence checking developed by the Chair for Design Automation at the Technical University of Munich. QCEC 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 our decision diagram (DD) package.

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

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

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

(venv) $ pip install mqt.qcec

The following code gives an example on the usage:

from mqt import qcec

# verify the equivalence of two circuits provided as qasm files
result = qcec.verify("circ1.qasm", "circ2.qasm")

# print the result
print(result.equivalence)

System Requirements and Building

The implementation is compatible with any C++17 compiler and a minimum CMake version of 3.14. 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

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

a
L. Burgholzer and R. Wille, "Advanced Equivalence Checking for Quantum Circuits," Transactions on CAD of Integrated Circuits and Systems (TCAD), 2021

a
L. Burgholzer, R. Raymond, and R. Wille, "Verifying Results of the IBM Qiskit Quantum Circuit Compilation Flow," in IEEE International Conference on Quantum Computing (QCE), 2020

a
L. Burgholzer, R. Kueng, and R. Wille, "Random Stimuli Generation for the Verification of Quantum Circuits," in Asia and South Pacific Design Automation Conference (ASP-DAC), 2021

a
L. Burgholzer and R. Wille, "Handling Non-Unitaries in Quantum Circuit Equivalence Checking," in Design Automation Conference (DAC), 2022

Metadata

Release files for mqt-qcec 2.0.0rc3

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-qcec 2.0.0rc3
File Size Uploaded
mqt.qcec-2.0.0rc3.tar.gz 1.3 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for mqt-qcec 2.0.0rc3
File
mqt.qcec-2.0.0rc3-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
mqt.qcec-2.0.0rc3-cp310-cp310-musllinux_1_1_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.1+ x86-64 Details
mqt.qcec-2.0.0rc3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details
mqt.qcec-2.0.0rc3-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
mqt.qcec-2.0.0rc3-cp310-cp310-macosx_10_15_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.15+ x86-64 Details
mqt.qcec-2.0.0rc3-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
mqt.qcec-2.0.0rc3-cp39-cp39-musllinux_1_1_x86_64.whl CPython 3.9 CPython 3.9 Linux musl 1.1+ x86-64 Details
mqt.qcec-2.0.0rc3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64 Details
mqt.qcec-2.0.0rc3-cp39-cp39-macosx_11_0_arm64.whl CPython 3.9 CPython 3.9 macOS 11.0+ ARM64 Details
mqt.qcec-2.0.0rc3-cp39-cp39-macosx_10_15_x86_64.whl CPython 3.9 CPython 3.9 macOS 10.15+ x86-64 Details
mqt.qcec-2.0.0rc3-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details
mqt.qcec-2.0.0rc3-cp38-cp38-musllinux_1_1_x86_64.whl CPython 3.8 CPython 3.8 Linux musl 1.1+ x86-64 Details
mqt.qcec-2.0.0rc3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ x86-64 Details
mqt.qcec-2.0.0rc3-cp38-cp38-macosx_11_0_arm64.whl CPython 3.8 CPython 3.8 macOS 11.0+ ARM64 Details
mqt.qcec-2.0.0rc3-cp38-cp38-macosx_10_15_x86_64.whl CPython 3.8 CPython 3.8 macOS 10.15+ x86-64 Details
mqt.qcec-2.0.0rc3-cp37-cp37m-win_amd64.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-64 Details
mqt.qcec-2.0.0rc3-cp37-cp37m-musllinux_1_1_x86_64.whl CPython 3.7 CPython 3.7 pymalloc Linux musl 1.1+ x86-64 Details
mqt.qcec-2.0.0rc3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-64 Details
mqt.qcec-2.0.0rc3-cp37-cp37m-macosx_10_15_x86_64.whl CPython 3.7 CPython 3.7 pymalloc macOS 10.15+ x86-64 Details

Total release size: 15.5 MB

Release files / mqt.qcec-2.0.0rc3.tar.gz

Download URL mqt.qcec-2.0.0rc3.tar.gz
Size 1.3 MB
Tags Source
SHA-256 checksum
How to use checksums
eba1f8f9de4b387aa9bef32bdba45c65f20a5046fa38a68e351697c54d255af5
BLAKE2b-256 checksum
How to use checksums
808a30c7c0633e3771baa3ed0e0a36362d5beb1065879b5dac8e3744c25c425e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qcec-2.0.0rc3-cp310-cp310-win_amd64.whl

Download URL mqt.qcec-2.0.0rc3-cp310-cp310-win_amd64.whl
Size 543.0 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
c70393f4d14bf3a59e2a23944f125c1cab1b049051f2817ed1a24c6904354c9b
BLAKE2b-256 checksum
How to use checksums
b84e5107ebaecafd1146b471e2b53e39a31be1c51966eb5ecdac270f56d9c131
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qcec-2.0.0rc3-cp310-cp310-musllinux_1_1_x86_64.whl

Download URL mqt.qcec-2.0.0rc3-cp310-cp310-musllinux_1_1_x86_64.whl
Size 1.2 MB
Tags CPython 3.10 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
55aa7192c1d22863f62448074e3c7cb0e316044425de01bb0d6555fefabbe6a4
BLAKE2b-256 checksum
How to use checksums
3087f9cc74cfe3ddb4dcf4819aaa336af2ac7f47bf143914eae4da8244afae10
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qcec-2.0.0rc3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL mqt.qcec-2.0.0rc3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 719.4 kB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
4770af489940e8b4f04ba118a2801b156dbf1f61050c9130a990a6fce3d14a82
BLAKE2b-256 checksum
How to use checksums
0d4633e6b47b8b786e3767362dce56431e8a989fdc163e5deb2f4a67b674ba1c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qcec-2.0.0rc3-cp310-cp310-macosx_11_0_arm64.whl

Download URL mqt.qcec-2.0.0rc3-cp310-cp310-macosx_11_0_arm64.whl
Size 576.4 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
ee03f73ede437658ebdf90ba43e3dcb2cf9cf7581e417ce7981a3136c1cf8abe
BLAKE2b-256 checksum
How to use checksums
48a60a439b3a3ec0f48900e86be5511cd5172e88245e39a0a20606c065100147
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qcec-2.0.0rc3-cp310-cp310-macosx_10_15_x86_64.whl

Download URL mqt.qcec-2.0.0rc3-cp310-cp310-macosx_10_15_x86_64.whl
Size 629.4 kB
Tags CPython 3.10 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
d390440268061196842cb2ed9dedb23b76aae265b5af521d15393728ba960022
BLAKE2b-256 checksum
How to use checksums
fbf173938d4d247f4b1d8fcb511018428c2268790671cf1bc75a5cd1856b361b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qcec-2.0.0rc3-cp39-cp39-win_amd64.whl

Download URL mqt.qcec-2.0.0rc3-cp39-cp39-win_amd64.whl
Size 543.0 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
77d7152b624d2b197634c681ba48f244fe2624d8e39f433f79aaf8cf37a793df
BLAKE2b-256 checksum
How to use checksums
c1b04f9b73df1e5cd7cc2b925498990f6fefc02a3c06732d7fdbfdd1aa71f499
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qcec-2.0.0rc3-cp39-cp39-musllinux_1_1_x86_64.whl

Download URL mqt.qcec-2.0.0rc3-cp39-cp39-musllinux_1_1_x86_64.whl
Size 1.2 MB
Tags CPython 3.9 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
7028a466e82ddc2f69dd33e3fd018bbae122331ca422baa3b1246e8709ed3d8f
BLAKE2b-256 checksum
How to use checksums
33e864f67d898e829c976abbaf6307f04de073d6062f2bfff11f20cb536c6596
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qcec-2.0.0rc3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL mqt.qcec-2.0.0rc3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 719.6 kB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
d2a163a13da92c6fff9649eee4beb6c616fb7f249efd6c00586829543842bbbe
BLAKE2b-256 checksum
How to use checksums
cc15d384397a44ca06a88e3a896073f2fc15cbde45ffe14e167d4802001944f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qcec-2.0.0rc3-cp39-cp39-macosx_11_0_arm64.whl

Download URL mqt.qcec-2.0.0rc3-cp39-cp39-macosx_11_0_arm64.whl
Size 576.5 kB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
86a10700c62ac4ccf39e8db9f0bf9e8371de3c69a13781c2176c4401b9d63d56
BLAKE2b-256 checksum
How to use checksums
89407d7ec3b119b18802b26ff90b947e1fe46dde489caa34d3be95f65e677713
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qcec-2.0.0rc3-cp39-cp39-macosx_10_15_x86_64.whl

Download URL mqt.qcec-2.0.0rc3-cp39-cp39-macosx_10_15_x86_64.whl
Size 629.5 kB
Tags CPython 3.9 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
1ec3471e07ae538711ed1a80c2294e293902bc60c4cf0eeb60066615d0b7db02
BLAKE2b-256 checksum
How to use checksums
8305d16b4080bfac989f0bbafae7a49f00855b58520e710b51b386c7633fe5c7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qcec-2.0.0rc3-cp38-cp38-win_amd64.whl

Download URL mqt.qcec-2.0.0rc3-cp38-cp38-win_amd64.whl
Size 543.0 kB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
0ff1a47cfa09ccb2f22775e1089ff8d7b2512cff286a792e01a4a3bac884d969
BLAKE2b-256 checksum
How to use checksums
6f4f32c86ad3654819da5581d326c322d3ff73c391847294dccc0b09b51e6afd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qcec-2.0.0rc3-cp38-cp38-musllinux_1_1_x86_64.whl

Download URL mqt.qcec-2.0.0rc3-cp38-cp38-musllinux_1_1_x86_64.whl
Size 1.2 MB
Tags CPython 3.8 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
5363f61cddf699ab37ad93c1ca25ddd80105e28a7531f4c312ecf1b1040f91ca
BLAKE2b-256 checksum
How to use checksums
3044abd08b85d995d616d7780630d37241446ca384b87ff8e72ddfbe7b31bc8b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qcec-2.0.0rc3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL mqt.qcec-2.0.0rc3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 719.4 kB
Tags CPython 3.8 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
5d2b5924b838e7b1eb1bc0b956bab84044795ee7f2efd0869814ccb7c2cf8c6c
BLAKE2b-256 checksum
How to use checksums
27b2ddc7246160a1ff73e31805569e8b7b3ae06e7a8c324d4770eebd846f8078
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qcec-2.0.0rc3-cp38-cp38-macosx_11_0_arm64.whl

Download URL mqt.qcec-2.0.0rc3-cp38-cp38-macosx_11_0_arm64.whl
Size 576.7 kB
Tags CPython 3.8 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
c69897b0a15bb3d8dd8baa8dfa6cdf8350e425e7393ec1b69a95e97278c2893e
BLAKE2b-256 checksum
How to use checksums
dbfe4539f3f6733bab14cf17316557dfb3d1a6ee8b654e92c82c98ca3855e8c7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qcec-2.0.0rc3-cp38-cp38-macosx_10_15_x86_64.whl

Download URL mqt.qcec-2.0.0rc3-cp38-cp38-macosx_10_15_x86_64.whl
Size 629.6 kB
Tags CPython 3.8 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
7109eb3263d11a4cac947fc1fa5760e5f7bdec2ee30ff7bb96456525adb02656
BLAKE2b-256 checksum
How to use checksums
c92a7d89b92a9fc338c009242fcd861d3996df52dbd1586349409cf8378b22a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qcec-2.0.0rc3-cp37-cp37m-win_amd64.whl

Download URL mqt.qcec-2.0.0rc3-cp37-cp37m-win_amd64.whl
Size 555.4 kB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
510f71473cd54da87ff098c1c3a7e401899184a5a4468af76092731b58a9c0d1
BLAKE2b-256 checksum
How to use checksums
51ce4a925a8458ff94019171d76e5ca43ba0b00016d916d969d6f1489629c6b9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qcec-2.0.0rc3-cp37-cp37m-musllinux_1_1_x86_64.whl

Download URL mqt.qcec-2.0.0rc3-cp37-cp37m-musllinux_1_1_x86_64.whl
Size 1.2 MB
Tags CPython 3.7 CPython 3.7 pymalloc Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
43ce625669cca8da7da92aad7399dacbc0bc423660c0f00c4fffa8ff62ed5ebd
BLAKE2b-256 checksum
How to use checksums
f84bfadd3c9076210adb7cc3768f4148621023ad9aa59eb6d656ea02ef8d3683
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qcec-2.0.0rc3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL mqt.qcec-2.0.0rc3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 729.5 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
f8984e44cfca3dcb0f6efbdd02b69802ea0e5e69942a0e3a4409a9dd6e5d5134
BLAKE2b-256 checksum
How to use checksums
3b57bee7e764b108631c37b1abc71fb7d2f1d33b11453952ca72772b606ac340
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / mqt.qcec-2.0.0rc3-cp37-cp37m-macosx_10_15_x86_64.whl

Download URL mqt.qcec-2.0.0rc3-cp37-cp37m-macosx_10_15_x86_64.whl
Size 624.5 kB
Tags CPython 3.7 CPython 3.7 pymalloc macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
89baaa7a6ce8bb96bc9d53b830155b3cccb0d5275ed1ee61fe5599b804dfb7a9
BLAKE2b-256 checksum
How to use checksums
8fcc327aea200eb885f9232ff088add07efb27d123aa91de0164bc1e2ef81926
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release history Release notifications | RSS feed

3.9.0

31 release files

3.6.1

25 release files

3.6.0

25 release files

3.4.0

25 release files

3.3.0

43 release files

3.1.0

37 release files

2.8.2

31 release files

2.8.1

43 release files

2.7.1

50 release files

2.6.0

36 release files

2.5.0

36 release files

2.4.5

36 release files

2.4.4

36 release files

2.4.1

36 release files

2.4.0

36 release files

2.3.1

36 release files

2.3.0

26 release files

2.2.2

21 release files

2.1.2

35 release files

2.1.1

35 release files

2.0.0

25 release files

This release

2.0.0rc3 This release

20 release files

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