GivensDecompositionOrbitalRotationSynthesis
class GivensDecompositionOrbitalRotationSynthesis
Bases: object
A F2QSynthesisPlugin for transpiling OrbitalRotation into Givens rotations.
Warning
This transpilation pass plugin makes the following assumptions:
- an occupation-basis encoding (like Jordan-Wigner)
- a trivial fermion-to-qubit layout (i.e. no change in their register lengths)
- a 1-to-1 mapping of fermionic mode indices to qubit indices
Methods
run
run(in_node, out_dag, *, f2q_layout)
Runs this transpilation plugin.
Parameters
- in_node (DAGOpNode) – the input fermion-based circuit instruction. When this plugin gets called, the
in_node.opattribute must be of typeOrbitalRotation. - out_dag (DAGCircuit) – the output qubit-based circuit.
- f2q_layout (dict[QuantumRegister, QuantumRegister]) – the global transpilation
F2QLayoutsetting.
Return type
None
See also
The documentation of F2QSynthesisPlugin for more detailed explanations of the arguments.
Raises
NotImplementedError – when in_node acts on fermionic modes that are spread across multiple FermionicRegister instances.
Parameters
- in_node (DAGOpNode)
- out_dag (DAGCircuit)
- f2q_layout (dict[QuantumRegister, QuantumRegister])
Return type
None