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 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) 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

  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). ↩

Metadata

Release files for mqt-qcec 2.0.0rc4

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

Built distributions (wheels)

Table of built distributions (wheels) for mqt-qcec 2.0.0rc4
File
mqt.qcec-2.0.0rc4-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
mqt.qcec-2.0.0rc4-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.0rc4-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.0rc4-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
mqt.qcec-2.0.0rc4-cp310-cp310-macosx_10_15_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.15+ x86-64 Details
mqt.qcec-2.0.0rc4-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
mqt.qcec-2.0.0rc4-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.0rc4-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.0rc4-cp39-cp39-macosx_11_0_arm64.whl CPython 3.9 CPython 3.9 macOS 11.0+ ARM64 Details
mqt.qcec-2.0.0rc4-cp39-cp39-macosx_10_15_x86_64.whl CPython 3.9 CPython 3.9 macOS 10.15+ x86-64 Details
mqt.qcec-2.0.0rc4-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details
mqt.qcec-2.0.0rc4-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.0rc4-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.0rc4-cp38-cp38-macosx_11_0_arm64.whl CPython 3.8 CPython 3.8 macOS 11.0+ ARM64 Details
mqt.qcec-2.0.0rc4-cp38-cp38-macosx_10_15_x86_64.whl CPython 3.8 CPython 3.8 macOS 10.15+ x86-64 Details
mqt.qcec-2.0.0rc4-cp37-cp37m-win_amd64.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-64 Details
mqt.qcec-2.0.0rc4-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.0rc4-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.0rc4-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.0rc4.tar.gz

Download URL mqt.qcec-2.0.0rc4.tar.gz
Size 1.3 MB
Tags Source
SHA-256 checksum
How to use checksums
35f2263da60818ed9ab2ce7a1201b476b8b6ac88f416a770801a1b7c548f6826
BLAKE2b-256 checksum
How to use checksums
55594641f417015ca3c2f36c76814c346950965957442777254a79757ed30209
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.0rc4-cp310-cp310-win_amd64.whl

Download URL mqt.qcec-2.0.0rc4-cp310-cp310-win_amd64.whl
Size 543.9 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
6f40e5c12bc6232179feb74e700ad725f3fae0371cfe937a20bdb6214c2867ac
BLAKE2b-256 checksum
How to use checksums
ec203bd1e11ad21cc38c831098d164838e54d416a4a6bda7ee70e8e53a60adee
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.0rc4-cp310-cp310-musllinux_1_1_x86_64.whl

Download URL mqt.qcec-2.0.0rc4-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
c06b876680070dc4cb90c1d6c7cd60d39cd41672c8a29637102118ffa6356010
BLAKE2b-256 checksum
How to use checksums
84eaa833f5e05771889b398fc3a58bbea559385d7cb69d7685f0c454916c9737
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.0rc4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL mqt.qcec-2.0.0rc4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 720.9 kB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
5d8422ad2dda552bcd57ca03aa87f69cf2470f34e5ce0a6beb6c6de24ee89bf9
BLAKE2b-256 checksum
How to use checksums
4619139a39942a1e2f5c2c803c360ed53beffd27cd40c07de4c80c6684ceefe4
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.0rc4-cp310-cp310-macosx_11_0_arm64.whl

Download URL mqt.qcec-2.0.0rc4-cp310-cp310-macosx_11_0_arm64.whl
Size 577.5 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
4b7765d9f37afaf0c55ef77b8c0dcc49615fac8ce540587e99cddd40495165a6
BLAKE2b-256 checksum
How to use checksums
5970fa87bbee1e35c081f7b2d7b13d97e05e24c0b8c4d83d3eac0119a51bec44
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.0rc4-cp310-cp310-macosx_10_15_x86_64.whl

Download URL mqt.qcec-2.0.0rc4-cp310-cp310-macosx_10_15_x86_64.whl
Size 630.4 kB
Tags CPython 3.10 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
c5d3f398c5b906c3295b38ee81e5cbfa37214c6ddecf3a58ae7a5553b469e6c7
BLAKE2b-256 checksum
How to use checksums
44c422e0c066d880b0f6ab5c89e991d6eacdb60b73445731ec317de60da1e868
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.0rc4-cp39-cp39-win_amd64.whl

Download URL mqt.qcec-2.0.0rc4-cp39-cp39-win_amd64.whl
Size 544.1 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
539e2b35e744de09752117bfcafe8a052662dba5764f328cd9b6bff8df3a3b40
BLAKE2b-256 checksum
How to use checksums
20851f1c3d9e746f0254ad1aeba0c3582901c21efd7aff63bfc6a2deb5f347ec
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.0rc4-cp39-cp39-musllinux_1_1_x86_64.whl

Download URL mqt.qcec-2.0.0rc4-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
bf0a0b6389d8a08aa7712e4444549988f8c76cdfe76ad64258d4476d9e3bca22
BLAKE2b-256 checksum
How to use checksums
187de8fd51cbc226dca2993c9acf92404285e11cb083f5e8a523abe22fcc80d2
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.0rc4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL mqt.qcec-2.0.0rc4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 721.2 kB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
62327a62f99b153962d4ccf9ef333b06551a3ad39ae29350abc01e5d6783c21e
BLAKE2b-256 checksum
How to use checksums
9d993ff81179d3d51f11e0b28df3d2a4224274c9bea111a15dd19a58e4f6a792
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.0rc4-cp39-cp39-macosx_11_0_arm64.whl

Download URL mqt.qcec-2.0.0rc4-cp39-cp39-macosx_11_0_arm64.whl
Size 577.6 kB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
b821e165cfe2631bd30e107fe49c330a28b9ce8ebcd9d701c0e26040fece39e1
BLAKE2b-256 checksum
How to use checksums
732521c78ba02a6be1ea070a25cfebdeee07a6677bc8b33d0d4f126abc1fed91
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.0rc4-cp39-cp39-macosx_10_15_x86_64.whl

Download URL mqt.qcec-2.0.0rc4-cp39-cp39-macosx_10_15_x86_64.whl
Size 630.4 kB
Tags CPython 3.9 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
41da4fc57a99f7a55afa777b5538b6f33c2e50b4925bef29efab40f7f14081ba
BLAKE2b-256 checksum
How to use checksums
6091f0ff49d3de9b90c9382aecd63bc78d56d1f17a58d55057cdc613dfbff935
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.0rc4-cp38-cp38-win_amd64.whl

Download URL mqt.qcec-2.0.0rc4-cp38-cp38-win_amd64.whl
Size 543.9 kB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
32f2d1f66a7ad7c051a66c7f8383ad80c39f6d01ff7fb5f3a9584d728453bf52
BLAKE2b-256 checksum
How to use checksums
b488f230872142ccf586f2fcf0e3ef5230633ce560918bd324eda7ab13349e76
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.0rc4-cp38-cp38-musllinux_1_1_x86_64.whl

Download URL mqt.qcec-2.0.0rc4-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
47c7911560725673b651eaa29d70bf97c0a1f4d437b6f5400b81fed39697fff8
BLAKE2b-256 checksum
How to use checksums
1c6c5071c4309d76938549071ea2279e74bf611f8a472a4696dedc27d3628a70
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.0rc4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL mqt.qcec-2.0.0rc4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 721.2 kB
Tags CPython 3.8 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
4134c5f5b53089fdb3aa856af812a7936ae861e0801d3104ff41035e1b2e3e18
BLAKE2b-256 checksum
How to use checksums
b5a82f95a5400767ae08d06e17a236c4db02caaa89a6f83ffca79fccf2f50ebd
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.0rc4-cp38-cp38-macosx_11_0_arm64.whl

Download URL mqt.qcec-2.0.0rc4-cp38-cp38-macosx_11_0_arm64.whl
Size 577.6 kB
Tags CPython 3.8 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
27f61b2d2de060d0d953c7e8a1fa1db58305ed63e301ff4fdc89e9309e87cc16
BLAKE2b-256 checksum
How to use checksums
24f17ec9a91d67696fb4c2a07ff1b44322e9d2e6490b0446b7bdbcf51087ce48
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.0rc4-cp38-cp38-macosx_10_15_x86_64.whl

Download URL mqt.qcec-2.0.0rc4-cp38-cp38-macosx_10_15_x86_64.whl
Size 630.5 kB
Tags CPython 3.8 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
5e54be0bc8d025b15c1635192acbcc32ea1f6f2e1ee1bf6a3558275b5cd1033f
BLAKE2b-256 checksum
How to use checksums
1bda8b1cc4cf4611f93dfadd8acbd4815873eb7400541c088fe304572d166092
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.0rc4-cp37-cp37m-win_amd64.whl

Download URL mqt.qcec-2.0.0rc4-cp37-cp37m-win_amd64.whl
Size 556.4 kB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
5bd27e102f0a94c598d300a2bc8832208889bedea6408b90b9883964add0b8ca
BLAKE2b-256 checksum
How to use checksums
5102e90b29eb9774fd6e9255d4ba8133d28977307226ecb237566289cb9bf43e
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.0rc4-cp37-cp37m-musllinux_1_1_x86_64.whl

Download URL mqt.qcec-2.0.0rc4-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
a2d85b50135d439aa36024c1847fcaa30ef8f80cfa90f9681b615e56efc1af85
BLAKE2b-256 checksum
How to use checksums
5c73c9012f5469df1d496a98ad719560738934cfbcb3ba3fab9ece73651e3723
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.0rc4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL mqt.qcec-2.0.0rc4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 731.6 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
8f4fd737faf2c2dbd22ecbe21069b3c344f0287ff4619a8ad5feeda3476a7418
BLAKE2b-256 checksum
How to use checksums
01ee996d07fbb22e534ea57185e034e2032d8a0c9da00b7db3e13d9906c9235a
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.0rc4-cp37-cp37m-macosx_10_15_x86_64.whl

Download URL mqt.qcec-2.0.0rc4-cp37-cp37m-macosx_10_15_x86_64.whl
Size 625.8 kB
Tags CPython 3.7 CPython 3.7 pymalloc macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
5008456f900cb56ad13b616a8a194fb0f2fb3b0778e297530027d0c7502b93f5
BLAKE2b-256 checksum
How to use checksums
d8abc7cf2ab121b1b3c9a23a6925d70545cadb295a8169096ce32502043f783f
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.0rc4 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