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 Institute for Integrated Circuits at the Johannes Kepler University Linz and the Chair for Design Automation at the Technical University of Munich. QCEC is part of the Munich Quantum Toolkit (formerly known as JKQ). 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 iic-quantum@jku.at 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

# initialize the equivalence checker
ecm = qcec.EquivalenceCheckingManager("circ1.qasm", "circ2.qasm")

# execute the check
ecm.run()

# obtain the result
print(ecm.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.0rc2

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.0rc2
File Size Uploaded
mqt.qcec-2.0.0rc2.tar.gz 629.5 kB Details

Built distributions (wheels)

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

Total release size: 14.3 MB

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

Download URL mqt.qcec-2.0.0rc2.tar.gz
Size 629.5 kB
Tags Source
SHA-256 checksum
How to use checksums
37703da4ce657791da5fa298f2a8a4ea273e439daaf27687b51c202e46aa7dde
BLAKE2b-256 checksum
How to use checksums
7c95badb73939d5021eaf3e201332925944e9e9428cfc510a4531d14fb9a9efa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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

Download URL mqt.qcec-2.0.0rc2-cp310-cp310-win_amd64.whl
Size 512.4 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
686930b226146acd49f2eb221ba092a7840ff8f19b28db0b6990c4f596250a47
BLAKE2b-256 checksum
How to use checksums
cd68bdd3c48051e4ecebfa3da8802d4b2ec3b2d6cacf0c16fdbd079adfeb257c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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

Download URL mqt.qcec-2.0.0rc2-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
6a6583a3e0a539214e321627f79332913b0c86f1baf5414d71be03d7a96db1b8
BLAKE2b-256 checksum
How to use checksums
f77ac1e30a3640ab1764896523d5a6812d9fcecf3416201eacf701306bbda676
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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

Download URL mqt.qcec-2.0.0rc2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 688.8 kB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
f7ab8ac5a18289126a256d9fa9e4d7d23ff0774d5a7c68abb7dbd849761a9766
BLAKE2b-256 checksum
How to use checksums
345bfae44517da089538c9399c117609ede7b3cab4794ff0df395d48ca690a9c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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

Download URL mqt.qcec-2.0.0rc2-cp310-cp310-macosx_11_0_arm64.whl
Size 547.0 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
0aadbc20264721b5374f35753e7b5caad971c05d8dd2defe14b993a693bd9beb
BLAKE2b-256 checksum
How to use checksums
62adb503750e7ba56bdb252e9cbfade0b085b38fa3a8e55fbdbfea206a250261
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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

Download URL mqt.qcec-2.0.0rc2-cp310-cp310-macosx_10_15_x86_64.whl
Size 601.0 kB
Tags CPython 3.10 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
96ee829ceff65857899450a62cada1c86e4adf60fb5c6ecf692900429eced1a6
BLAKE2b-256 checksum
How to use checksums
59eef9a91ac1cca45803c62c3ff20a4880d1914edeb58c3e931ecb2c53754679
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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

Download URL mqt.qcec-2.0.0rc2-cp39-cp39-win_amd64.whl
Size 512.5 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
a3884372cbaf68369a546c9669fc135939d184e15264d5ea8d80b3f0f2259640
BLAKE2b-256 checksum
How to use checksums
b9f02c897d433a5365b70af05ba616189a5827b479c141a7664dcd6d316d2a29
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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

Download URL mqt.qcec-2.0.0rc2-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
531eaf8c7a123bbca2fd36bacd32a14908338c851b392d7fc6292b0c4596944c
BLAKE2b-256 checksum
How to use checksums
8253a0155d0ee866754d4b60ac8f14ff224f72b4d847da297ac5692dc013ba2f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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

Download URL mqt.qcec-2.0.0rc2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 689.2 kB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
72403f459456f8f77a9fce5eb82ad80eb188181bee84ecda4b78ab54b39e8b1e
BLAKE2b-256 checksum
How to use checksums
15081f8dafb70bd3858a67a4b3c89277418567adeeea8cb18c0f11dc0de126af
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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

Download URL mqt.qcec-2.0.0rc2-cp39-cp39-macosx_11_0_arm64.whl
Size 547.3 kB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
20c624dc216de2379fef230c90694c9dd2977ab7aac65477a2b6a04112a2be04
BLAKE2b-256 checksum
How to use checksums
65df27e6ea562f876245bd14d5f5c14d5dc986cb5cefe2cf88e94770bbb639d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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

Download URL mqt.qcec-2.0.0rc2-cp39-cp39-macosx_10_15_x86_64.whl
Size 601.0 kB
Tags CPython 3.9 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
7e5f28d5235d25407e712a2ded69837808457d246c8333438515d35896ff0163
BLAKE2b-256 checksum
How to use checksums
139692f981c96622f464801427ba301d1b1accccd2e24c857be1f1591884b02c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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

Download URL mqt.qcec-2.0.0rc2-cp38-cp38-win_amd64.whl
Size 512.4 kB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
ba0d21f223f2fa916e1ad096209c5513f9ee5bddc0b7ae36005490242221bc3b
BLAKE2b-256 checksum
How to use checksums
093703bbe8a95912ad6a044f3e76a373967d71c5a5edec02503c2bca0fcddff0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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

Download URL mqt.qcec-2.0.0rc2-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
b2a066dce67fda21c1dc4beb2014d2d7c6fefe0ef23264afb74bcf62ac635c08
BLAKE2b-256 checksum
How to use checksums
137bfef0914aaeac95bed97c0acab3a3f49b31ca4c35369430e12ea707d0484e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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

Download URL mqt.qcec-2.0.0rc2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 688.7 kB
Tags CPython 3.8 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
3ddda47592973a487c32f6b8e0ccbfb60a8983f4f91d4f57b0bfbe8338439e27
BLAKE2b-256 checksum
How to use checksums
db65ca8ba89a1a7b55916117d8adb4f828c55310d5d18b82136f3f99e80093e8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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

Download URL mqt.qcec-2.0.0rc2-cp38-cp38-macosx_11_0_arm64.whl
Size 547.5 kB
Tags CPython 3.8 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
ca8e94cb2c53d1b81c62be3174eaa15243b45d4cda6d23f0b6e9accc9140b767
BLAKE2b-256 checksum
How to use checksums
bcf00a191f3f70d7d1f6b170cb604c132959a46e696e2f8fd9cdd1734b01a022
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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

Download URL mqt.qcec-2.0.0rc2-cp38-cp38-macosx_10_15_x86_64.whl
Size 601.0 kB
Tags CPython 3.8 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
a760b67b883036f147df50763e43310f267b509fd72dc2ecf18dabaa8eb5e814
BLAKE2b-256 checksum
How to use checksums
49b056794d397fad0fd4e3b8af7547a195be0786fc84998442f43f5f2eb96108
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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

Download URL mqt.qcec-2.0.0rc2-cp37-cp37m-win_amd64.whl
Size 524.7 kB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
bb52da618927a7bc47b4855d92fa4b82736ca40960399998449746f7052f2a61
BLAKE2b-256 checksum
How to use checksums
847b9a8b89e4e87a5f2a3f329255460e05f57caf019426fd580a0d4384728344
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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

Download URL mqt.qcec-2.0.0rc2-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
0d2cc73db3d6fd6161f2a79a9d2693905d3b5fe63be9ad7d2c242dbad8d45f23
BLAKE2b-256 checksum
How to use checksums
516f0c2af72ef4287f677a3e6f9f62c5838846f5ba366f07efdda1266462f85f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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

Download URL mqt.qcec-2.0.0rc2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 699.6 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
ee3adb8bb4cdc658014e340fc92abf0d9075bee03d72e52a6891aa827682a465
BLAKE2b-256 checksum
How to use checksums
ed21a4679f62f7f4b7b6643a667d52f43e973cc51a982ac1e78b183e429c2f60
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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

Download URL mqt.qcec-2.0.0rc2-cp37-cp37m-macosx_10_15_x86_64.whl
Size 594.9 kB
Tags CPython 3.7 CPython 3.7 pymalloc macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
c98ba0b59363109cab4595f6680c3af2b8e958274f2852ccb24c1d749db1725c
BLAKE2b-256 checksum
How to use checksums
123e2886e170bc89efda9fd9dd54711650657325b8605967021b2a4b9bf2cc9c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

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.0rc2 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