Pasos del transpilador
Este módulo ofrece varias pasadas del transpilador para las etapas explicadas en qiskit_fermions.transpiler.
Pasos de optimización
Estas pasadas ofrecen diferentes tipos de optimización de las instancias FermionicDAGCircuit .
MergeOrbitalRotations() | Una pasada de transpilación que fusiona series de rotaciones orbitales consecutivas en una sola. |
MergeSlaterDeterminantPreparation() | Una pasada de transpilación que fusiona una inicialización y una rotación en una preparación del determinante de Slater. |
QDriftTrotterization(núm_términos, *[,...] ) | Una pasada de transpilación para «trotterizar» las puertas Evolution mediante el protocolo « qDRIFT ». |
RelabelModes( [permutación, solucionador] ) | Una pasada de transpilación para renombrar los modos fermiónicos. |
Pasos de maquetación
Estas etapas están diseñadas para ayudar a configurar los F2QLayout parámetros globales del proceso de transpilación. Esta configuración debe introducirse en el campo f2q_layout del property_set, desde donde se leerá durante las pasadas de síntesis.
TrivialF2QLayout() | Asigna de forma trivial los modos fermiónicos a los qubits . |
CustomF2QLayout(maquetación) | Establece el valor proporcionado por el usuario en F2QLayout el transpilador. |
Pasos de síntesis
La lógica principal para asignar un FermionicDAGCircuit a un DAGCircuit se implementa mediante una única pasada de síntesis, concretamente la F2QSynthesis. Es conceptualmente similar al de Qiskit, HighLevelSynthesis ya que simplemente recorre las instrucciones FermionicDAGCircuit y delega la conversión a instrucciones basadas en qubits a los complementos de la pasada del transpilador para cada uno de los tipos de que se encuentran FermionicGate.
F2QSynthesis( [config] ) | Una pasada de transpilación para mapear las instrucciones de los circuitos basados en fermiones a las basadas en qubits. |
F2QSynthesisConfig | El tipo de diccionario utilizado para configurar el F2QSynthesis.methods. |