qiskit/releasenotes/notes/0.19/cx-cancellation-pass-genera...

19 lines
666 B
YAML

---
features:
- |
Introduced a new transpiler pass :obj:`.InverseCancellation` that generalizes the :obj:`.CXCancellation`
pass to cancel any self-inverse gates or gate-inverse pairs. It can be used by
initializing :obj:`.InverseCancellation` and passing a gate to cancel, for example::
from qiskit.transpiler.passes import InverseCancellation
from qiskit import QuantumCircuit
from qiskit.circuit.library import HGate
from qiskit.transpiler import PassManager
qc = QuantumCircuit(2, 2)
qc.h(0)
qc.h(0)
pass_ = InverseCancellation([HGate()])
pm = PassManager(pass_)
new_circ = pm.run(qc)