ConvertToPauliRotations
class qiskit.transpiler.passes.ConvertToPauliRotations(*args, **kwargs)
Bases: TransformationPass
Convierte un circuito cuántico que contenga puertas estándar de un qubit, dos qubits y tres qubits, así como barreras y mediciones, en un circuito equivalente que contenga PauliProductRotationGate puertas e PauliProductMeasurement instrucciones.
Por ejemplo:
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)Atributos
is_analysis_pass
Comprueba si la pasada es una pasada de análisis.
Si el paso es un « AnalysisPass, », eso significa que el paso puede analizar el DAG y escribir los resultados de ese análisis en el conjunto de propiedades. Este tipo de pasada no permite realizar modificaciones en el DAG.
is_transformation_pass
Comprueba si el paso es un paso de transformación.
Si el acceso es de tipo « TransformationPass, », esto significa que dicho acceso puede manipular el DAG, pero no puede modificar el conjunto de propiedades (aunque sí puede leerlo).
Métodos
execute
execute(passmanager_ir, state, callback=None)
Ejecutar la tarea de optimización para el IR de Qiskit de entrada.
Parámetros
- passmanager_ir (Any) – Qiskit IR para optimizar.
- state (PassManagerState) – Estado asociado a la ejecución del flujo de trabajo por parte del propio gestor de pases.
- callback (Callable | None) – Una función de devolución de llamada que se invoca cada vez que se ejecuta una tarea de optimización.
Devuelve
IR de Qiskit optimizado y estado del flujo de trabajo.
Tipo de retorno
tupla [ Any, PassManagerState ]
name
run
run(dag)
Ejecuta la optimización « ConvertToPauliRotations » en dag.
Parámetros
dag (DAGCircuit) – el DAG de entrada.
Devuelve
El DAG de salida.
Subidas
TranspilerError – si el circuito contiene instrucciones que no son compatibles con el pase.
Tipo de retorno
update_status
update_status(state, run_state)
Actualizar el estado del flujo de trabajo.
Parámetros
- state (PassManagerState) – Pasa el estado del gestor para actualizarlo.
- run_state (RunState) – Estado de finalización de la tarea actual.
Devuelve
Se ha actualizado el estado del gestor de pases.
Tipo de retorno