InverseCancellation
class qiskit.transpiler.passes.InverseCancellation(*args, **kwargs)
Basen: TransformationPass
Heben Sie bestimmte Gates auf, die invers zueinander sind, wenn sie nacheinander auftreten.
Initialisieren Sie InverseCancellation pass.
Parameter
-
gates_to_cancel -
Liste mit der Beschreibung der zu stornierenden Gates. Jedes Element der Liste ist entweder ein einzelnes Tor oder ein Paar von Toren. Wenn es sich um ein einzelnes Tor handelt, dann sollte es selbstumkehrend sein. Wenn es sich um ein Paar von Gattern handelt, dann sollten die Gatter des Paares invers zueinander sein. Bei
Nonewird eine Standardliste von selbstinversen Gattern und eine Standardliste von inversen Gatterpaaren verwendet. Die derzeitige Standardliste der selbstinvertierenden Gates lautet:und die Standardliste der inversen Gatterpaare ist:
-
run_default - Wenn diese Option auf true gesetzt ist und
gates_to_cancelauf eine Liste gesetzt ist, wird zusätzlich zu den ingates_to_cancelaufgelisteten Gattern die Standardliste der inversen Gatter (die gleiche wie beigates_to_cancelaufNone) ausgeführt. Die Reihenfolge der Auswertung ist entscheidend dafür, wie Sequenzen von Gattern abgebrochen werden, und die Standardgatter werden nach den ingates_to_cancelangegebenen Gattern ausgewertet. Wenngates_to_cancelaufNonesteht, hat diese Option keine Auswirkungen.
Erhöht
TranspilerError – Die Eingabe ist weder ein selbstinverses Gatter noch ein Paar inverser Gatter.
Attribute
is_analysis_pass
Prüfen Sie, ob der Pass ein Analysepass ist.
Wenn der Pass ein AnalysisPass, ist, bedeutet dies, dass der Pass die DAG analysieren und die Ergebnisse dieser Analyse in den Eigenschaftssatz schreiben kann. Änderungen an der DAG sind bei dieser Art von Pass nicht zulässig.
is_transformation_pass
Prüfen Sie, ob der Pass ein Transformationspass ist.
Wenn es sich bei dem Pass um TransformationPass, handelt, bedeutet dies, dass der Pass die DAG manipulieren kann, aber den Eigenschaftssatz nicht ändern kann (aber er kann gelesen werden).
Methoden
execute
execute(passmanager_ir, state, callback=None)
Ausführen der Optimierungsaufgabe für die Eingabe Qiskit IR.
Parameter
- passmanager_ir (DAGCircuit) – Qiskit IR zur Optimierung.
- state (DAGCircuit) – Zustand, der mit der Ausführung des Workflows durch den Pass-Manager selbst verbunden ist.
- callback (Callable[[Task, DAGCircuit, PropertySet, float, int], None] | None) – Eine Callback-Funktion, die bei jeder Ausführung einer Optimierungsaufgabe aufgerufen wird.
Rückgabe
Optimierte Qiskit IR und Stand des Workflows.
Rückgabetyp
name
run
run(dag)
Führen Sie den InverseCancellation Pass auf dag.
Parameter
dag (DAGCircuit) – den gerichteten azyklischen Graphen, auf dem er ausgeführt werden soll.
Rückgabe
Umgewandelte DAG.
Rückgabetyp
update_status
update_status(state, run_state)
Aktualisieren Sie den Workflow-Status.
Parameter
- state (PassManagerState) – Übergeben Sie den Status des Managers zur Aktualisierung.
- run_state (RunState) – Erledigungsstatus der aktuellen Aufgabe.
Rückgabe
Aktualisierter Status des Passmanagers.
Rückgabetyp