Skip to main content

PyPI OS License: MIT CI CD Documentation codecov

MQT Banner

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). It builds upon MQT Core, which forms the backbone of the MQT.

Documentation

Key Features

  • Complementary equivalence checking engines: Decision-diagram construction, Alternating DD, Simulation-based falsification, and ZX-calculus rewriting—coordinated in an automated equivalence checking flow to prove equivalence or quickly find counterexamples.
  • Approximate equivalence checking with the projective Hilbert--Schmidt distance, including a standalone hybrid Schrödinger--Feynman checker for shallow circuits with few cross-cut gates. Guide
  • Compilation flow verification: validate transpiled/compiled circuits incl. layout permutations and measurements. Guide
  • Parameterized circuits: prove or refute equivalence with symbolic parameters. Guide
  • Partial equivalence: compare measured output distributions, handling ancillary and garbage qubits. Guide
  • Python-first API and Qiskit integration: pass QuantumCircuit or OpenQASM; one-call verify() or verify_compilation(). Quickstart • API
  • Efficient and portable: C++20 core with DD engines and ZX backend, prebuilt wheels for Linux/macOS/Windows via PyPI.

If you have any questions, feel free to create a discussion or an issue on GitHub.

Contributors and Supporters

The Munich Quantum Toolkit (MQT) is developed by the Chair for Design Automation at the Technical University of Munich and supported by MQSC. Among others, it is part of the Munich Quantum Software Stack (MQSS) ecosystem, which is being developed as part of the Munich Quantum Valley (MQV) initiative.

MQT Partner Logos

Thank you to all the contributors who have helped make MQT QCEC a reality!

Contributors to munich-quantum-toolkit/qcec

The MQT will remain free, open-source, and permissively licensed—now and in the future. We are firmly committed to keeping it open and actively maintained for the quantum computing community.

To support this endeavor, please consider:

Sponsor the MQT

Getting Started

MQT QCEC is available via PyPI.

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

Detailed documentation and examples are available at ReadTheDocs.

System Requirements and Building

Building the project requires a C++ compiler with support for C++20 and CMake 3.28 or newer. For details on how to build the project, please refer to the documentation. Building (and running) is continuously tested under Linux, macOS, and Windows using the latest available system versions for GitHub Actions. MQT QCEC is compatible with all officially supported Python versions.

Cite This

Please cite the work that best fits your use case.

MQT QCEC (the tool)

When citing the software itself or results produced with it, cite the MQT QCEC paper:

@article{burgholzerQCECJKQTool2021,
  title        = {{{QCEC}}: {{A JKQ}} tool for quantum circuit equivalence checking},
  author       = {Burgholzer, Lukas and Wille, Robert},
  year         = 2021,
  month        = feb,
  journal      = {Software Impacts},
  doi          = {10.1016/j.simpa.2020.100051}
}

The Munich Quantum Toolkit (the project)

When discussing the overall MQT project or its ecosystem, cite the MQT Handbook:

@inproceedings{mqt,
  title        = {The {{MQT}} Handbook: {{A}} Summary of Design Automation Tools and Software for Quantum Computing},
  shorttitle   = {{The MQT Handbook}},
  author       = {Wille, Robert and Berent, Lucas and Forster, Tobias and Kunasaikaran, Jagatheesan and Mato, Kevin and Peham, Tom and Quetschlich, Nils and Rovara, Damian and Sander, Aaron and Schmid, Ludwig and Schoenberger, Daniel and Stade, Yannick and Burgholzer, Lukas},
  year         = 2024,
  booktitle    = {IEEE International Conference on Quantum Software (QSW)},
  doi          = {10.1109/QSW62656.2024.00013},
  eprint       = {2405.17543},
  eprinttype   = {arxiv},
  addendum     = {A live version of this document is available at \url{https://mqt.readthedocs.io}}
}

Peer-Reviewed Research

When citing the underlying methods and research, please reference the most relevant peer-reviewed publications from the list below:

[1] L. Burgholzer and R. Wille. Advanced Equivalence Checking for Quantum Circuits. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems (TCAD), 2021.

[2] L. Burgholzer, R. Raymond, and R. Wille. Verifying Results of the IBM Qiskit Quantum Circuit Compilation Flow. In IEEE International Conference on Quantum Computing and Engineering (QCE), 2020.

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

[4] L. Burgholzer and R. Wille. Handling Non-Unitaries in Quantum Circuit Equivalence Checking. In Design Automation Conference (DAC), 2022.

[5] T. Peham, L. Burgholzer, and R. Wille. Equivalence Checking of Quantum Circuits with the ZX-Calculus. IEEE Journal on Emerging and Selected Topics in Circuits and Systems (JETCAS), 2022.

[6] T. Peham, L. Burgholzer, and R. Wille. Equivalence Checking of Parameterized Quantum Circuits: Verifying the Compilation of Variational Quantum Algorithms. In Asia and South Pacific Design Automation Conference (ASP-DAC), 2023.


Acknowledgements

The Munich Quantum Toolkit has been supported by the European Research Council (ERC) under the European Union's Horizon 2020 research and innovation program (grant agreement No. 101001318), the Bavarian State Ministry for Science and Arts through the Distinguished Professorship Program, as well as the Munich Quantum Valley, which is supported by the Bavarian state government with funds from the Hightech Agenda Bayern Plus.

MQT Funding Footer

Metadata

Release files for mqt-qcec 3.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-qcec 3.10.1
File Size Uploaded
mqt_qcec-3.10.1.tar.gz 327.4 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for mqt-qcec 3.10.1
File
mqt_qcec-3.10.1-cp315-abi3t-win_arm64.whl CPython 3.15 abi3t Windows ARM64 Details
mqt_qcec-3.10.1-cp315-abi3t-win_amd64.whl CPython 3.15 abi3t Windows x86-64 Details
mqt_qcec-3.10.1-cp315-abi3t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.15 abi3t Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
mqt_qcec-3.10.1-cp315-abi3t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.15 abi3t Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details
mqt_qcec-3.10.1-cp315-abi3t-macosx_13_0_arm64.whl CPython 3.15 abi3t macOS 13.0+ ARM64 Details
mqt_qcec-3.10.1-cp311-abi3-win_arm64.whl CPython 3.11 abi3 Windows ARM64 Details
mqt_qcec-3.10.1-cp311-abi3-win_amd64.whl CPython 3.11 abi3 Windows x86-64 Details
mqt_qcec-3.10.1-cp311-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 abi3 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
mqt_qcec-3.10.1-cp311-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 abi3 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details
mqt_qcec-3.10.1-cp311-abi3-macosx_13_0_arm64.whl CPython 3.11 abi3 macOS 13.0+ ARM64 Details

Total release size: 4.4 MB

Release files / mqt_qcec-3.10.1.tar.gz

Download URL mqt_qcec-3.10.1.tar.gz
Size 327.4 kB
Tags Source
SHA-256 checksum
How to use checksums
2100e585657ffa14d25a2f950b02a908d3f806f84f384d7bb2df01de7c43fe46
BLAKE2b-256 checksum
How to use checksums
623a1f9862811459ce94667458edbbd37fdaf2f9824554d4dd059b00fbcd88dc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / mqt_qcec-3.10.1-cp315-abi3t-win_arm64.whl

Download URL mqt_qcec-3.10.1-cp315-abi3t-win_arm64.whl
Size 702.4 kB
Tags CPython 3.15 Windows ARM64 abi3t
SHA-256 checksum
How to use checksums
aef276b2e0d8a59bf3eac6c89352453dbb07596d38addf68d9fd0ccea1327a9c
BLAKE2b-256 checksum
How to use checksums
5b3e5db3f76073f6416d3ee92e149728fbd6f0d69c86ee3833e67a7df4bfc122
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / mqt_qcec-3.10.1-cp315-abi3t-win_amd64.whl

Download URL mqt_qcec-3.10.1-cp315-abi3t-win_amd64.whl
Size 505.4 kB
Tags CPython 3.15 Windows x86-64 abi3t
SHA-256 checksum
How to use checksums
f5d4f8f5857b6ea8d5990d18e6a4f96dcef9232efca755a3a71a2e2ffc4adbb1
BLAKE2b-256 checksum
How to use checksums
0dde544762f1125a00713e7293a9b91ffc9d1fbad32918e1262862e8701c9760
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / mqt_qcec-3.10.1-cp315-abi3t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL mqt_qcec-3.10.1-cp315-abi3t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 305.7 kB
Tags CPython 3.15 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 abi3t
SHA-256 checksum
How to use checksums
f6c6fe585a988552eaeca0801ac1e3e9fbcc2bf093207df422e4b48519e5f156
BLAKE2b-256 checksum
How to use checksums
e1b07ccacb144614b8cfa2b2426cf01eb10273d3b80befa3cbce8beb2f81f318
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / mqt_qcec-3.10.1-cp315-abi3t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL mqt_qcec-3.10.1-cp315-abi3t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 283.7 kB
Tags CPython 3.15 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 abi3t
SHA-256 checksum
How to use checksums
259af776622057d9a0f2d77696ffd4baf63e09f46248e4cd781d7177ce5dcbc6
BLAKE2b-256 checksum
How to use checksums
f95a967a39a814c76182043ef7270c7b89bb2ada505cb33188b5ea41b08ff410
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / mqt_qcec-3.10.1-cp315-abi3t-macosx_13_0_arm64.whl

Download URL mqt_qcec-3.10.1-cp315-abi3t-macosx_13_0_arm64.whl
Size 263.4 kB
Tags CPython 3.15 abi3t macOS 13.0+ ARM64
SHA-256 checksum
How to use checksums
c70296fa5440ad3ecfe0b02408efe082cb11c56e0d55dd335d32df43715e54a9
BLAKE2b-256 checksum
How to use checksums
cac76a03a803705c83ef525bd844b48ae254dfe0ab602c06eacb113b3bd00483
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / mqt_qcec-3.10.1-cp311-abi3-win_arm64.whl

Download URL mqt_qcec-3.10.1-cp311-abi3-win_arm64.whl
Size 680.6 kB
Tags CPython 3.11 Windows ARM64 abi3
SHA-256 checksum
How to use checksums
511cb8de923a6eee290df580f52764eb1d95502699f46802040d7a2059be4547
BLAKE2b-256 checksum
How to use checksums
5ed7267f99ce8e9d70465380213ebdd7cec89a1bc54fc355f96c51577851b433
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / mqt_qcec-3.10.1-cp311-abi3-win_amd64.whl

Download URL mqt_qcec-3.10.1-cp311-abi3-win_amd64.whl
Size 490.7 kB
Tags CPython 3.11 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
0ad2fc55f2347e164fe216bfb935dafbc1b3af05f44d52fd7046bd6a632f0147
BLAKE2b-256 checksum
How to use checksums
d91fa53af58f48494a7f4d0b26de5c11831dde392d8565bbc5b238c78483964d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / mqt_qcec-3.10.1-cp311-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL mqt_qcec-3.10.1-cp311-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 305.3 kB
Tags CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 abi3
SHA-256 checksum
How to use checksums
05a2e64ec6e27b08dcc1a43be6a31d9e033986701ec698bbcae648fda7ae3cbf
BLAKE2b-256 checksum
How to use checksums
5ff138b73d3ea74213251e9ff3a5d1874bd11657d2ec6ce6193c4179a99dbb4b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / mqt_qcec-3.10.1-cp311-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL mqt_qcec-3.10.1-cp311-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 283.6 kB
Tags CPython 3.11 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 abi3
SHA-256 checksum
How to use checksums
971f3849864de759e1816e15b6796b24e3711e9df3011943754978e29001840c
BLAKE2b-256 checksum
How to use checksums
97a4667764b9d9044eb97740c0f1d71bf2ba933fed566a741c4118ec81ecf294
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / mqt_qcec-3.10.1-cp311-abi3-macosx_13_0_arm64.whl

Download URL mqt_qcec-3.10.1-cp311-abi3-macosx_13_0_arm64.whl
Size 263.5 kB
Tags CPython 3.11 abi3 macOS 13.0+ ARM64
SHA-256 checksum
How to use checksums
85a6e54e4af2d89e1188464c9822ac020ce961b4a0fce0f7a67c1457279dc374
BLAKE2b-256 checksum
How to use checksums
4cf8d77d099af88b320f82acfe36ab001e8459ff8382ebace06e1815c64ac0a4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

3.10.1 This release

11 release files

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

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