Skip to main content
IBM Quantum Platform

ConvertToPauliRotations

class qiskit.transpiler.passes.ConvertToPauliRotations(*args, **kwargs)

GitHub

Grundlagen: TransformationPass

Wandle einen Quantenschaltkreis in einen äquivalenten Schaltkreis um, der aus PauliProductRotationGate Gattern und PauliProductMeasurement Befehlen besteht.

Der Pass wandelt alle Standardgatter für ein, zwei und drei Qubits in Pauli-Produkt-Rotationen um, wandelt Messungen in Pauli-Produkt-Messungen um und lässt Barrieren, Verzögerungen, Rücksetzungen, Pauli-Produkt-Rotationen und Pauli-Produkt-Messungen unverändert.

Zum Beispiel:

from qiskit.circuit import QuantumCircuit
from qiskit.transpiler.passes import ConvertToPauliRotations
from qiskit.quantum_info import Operator

qc = QuantumCircuit(3)
qc.h(0)
qc.cx(0, 1)
qc.ry(0.123, 0)
qc.t(2)
qc.rzz(pi/4, 0, 2)

# The transformed circuit consists of PauliProductRotationGate gates
qct = ConvertToPauliRotations()(qc)
ops_names = set(qct.count_ops().keys())
self.assertEqual(ops_names, {"pauli_product_rotation"})

# The circuits before and after the transformation are equivalent
assert Operator(qc) == Operator(qct)

Attribute

is_analysis_pass

Prüfen Sie, ob es sich um einen Analyse-Durchlauf handelt.

Wenn es sich bei dem Pass um einen „ AnalysisPass, “ handelt, bedeutet dies, dass der Pass den DAG analysieren und die Ergebnisse dieser Analyse in den Eigenschaftssatz schreiben kann. Änderungen am DAG sind bei dieser Art von Durchlauf nicht zulässig.

is_transformation_pass

Prüfe, ob es sich bei dem Pass um einen Transformationspass handelt.

Wenn es sich bei dem Pass um einen „ TransformationPass, “ handelt, bedeutet dies, dass der Pass den DAG bearbeiten kann, jedoch die Eigenschaften nicht ändern darf (sie können jedoch gelesen werden).


Methoden

execute

execute(passmanager_ir, state, callback=None)

GitHub

Optimierungsaufgabe für die Qiskit-IR-Eingabe ausführen.

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

Optimiertes Qiskit-IR und Status des Workflows.

Rückgabetyp

Tupel [ DAGCircuit, PassManagerState ]

name

name()

GitHub

Name des Passes.

Rückgabetyp

str

run

run(dag)

GitHub

Führen Sie den Optimierungsdurchlauf „ ConvertToPauliRotations “ für dag. aus.

Parameter

dag (DAGCircuit) – das Eingabe-DAG.

Rückgabe

Der Ausgabedag.

Erhöhungen

TranspilerError – wenn der Programmablauf Anweisungen enthält, die vom Pass nicht unterstützt werden.

Rückgabetyp

DAGCircuit

update_status

update_status(state, run_state)

GitHub

Status des Workflows aktualisieren.

Parameter

  • state (PassManagerState) – Den Status des Pass-Managers zur Aktualisierung übergeben.
  • run_state (RunState) – Fertigstellungsstatus der aktuellen Aufgabe.

Rückgabe

Status des Pass-Managers aktualisiert.

Rückgabetyp

PassManagerState

War diese Seite hilfreich?
Melden Sie auf GitHub einen Fehler, einen Tippfehler oder fordern Sie Inhalte an.