Releases: cda-tum/mqt-qcec
Version 1.7.1 Release
This small release adds the capability to extract I/O mapping information from Qiskit QuantumCircuit
objects.
As a result, the verification of a circuit compiled with IBM Qiskit becomes even easier:
from jkq import qcec
from qiskit import QuantumCircuit, transpile
# create your quantum circuit
qc = <...>
# append measurements to save output permutation
qc.measure_all()
# transpile circuit to appropriate backend using some optimization level
qc_trans = transpile(qc, backend=<...>, optimization_level=<0 | 1 | 2 | 3>)
# verify the compilation result
qcec.verify(qc, qc_trans, method=qcec.Method.compilationflow, statistics=True)
Version 1.7 Release
This release adds support for directly using Qiskit QuantumCircuit
objects (as well as corresponding .pickle
files) as input to the verification tool.
Many of Qiskit's operations are natively supported and directly translated to our Quantum Functionality Representation (QFR).
Any non-native operation is decomposed using Qiskit's definition of the operation until only native operations remain.
A release that allows to incorporate compilation information (e.g., logical to physical qubit mapping) is planned for the future.
Due to these changes, the interface of the qcec.verify
function has changed: the parameters file1
/file2
are now suitably called circ1
/circ2
.
This release also fixes a small issue where the naive
and lookahead
method could not be set correctly.
Version 1.6.2 Release
This minor release provides a functioning sdist
for Python distribution.
Version 1.6.1 Release
Minor release
- Switched CI/CD to Github Actions.
- Updated submodules
- Slight modification to Python bindings structure
Version 1.6 Release
v1.6 introduces random stimuli generation methods for the verification of quantum circuits.
It also adds the option of persisting the state vector used for verification methods based on simulation.
Version 1.5 Release
v1.5 adds JKQ QCEC to PyPI---allowing user to install the tool by calling
pip install jkq.qcec
and use it to verify quantum circuits in Python with
from jkq import qcec
qcec.verify([...])
Additionally, configuration options now also include optimization passes applied before equivalence checking:
- swapGateFusion: Reconstruct SWAP operations from elementary operations
- singleQubitGateFusion: Fuse consecutive single qubit gates
- removeDiagonalGatesBeforeMeasure: Remove diagonal gates before measurements
Beta Release for Version 1.5
v1.5 adds JKQ QCEC to PyPI---allowing user to install the tool by calling
pip install jkq.qcec
and use it to verify quantum circuits in Python with
from jkq import qcec
qcec.verify([...])
This beta release tests the CI/CD functionality for automatically building and deploying to PyPI.