qdk_chemistry.algorithms.circuit_mapper package
QDK/Chemistry circuit mapper module.
- class qdk_chemistry.algorithms.circuit_mapper.CircuitMapperFactory
Bases:
AlgorithmFactoryFactory class for creating CircuitMapper instances.
- class qdk_chemistry.algorithms.circuit_mapper.PauliSequenceMapper
Bases:
CircuitMapperCircuit mapper using Pauli product formula term sequences.
Given a unitary expressed as a Pauli product formula \(U \approx \left[ \prod_j e^{-i\theta_j P_j} \right]^{r}\), this mapper constructs a circuit for \(U\) using the following pattern:
Each Pauli operator \(P_j\) is basis-rotated into the \(Z\) basis.
Qubits involved in \(P_j\) are entangled into a sequence using CNOT gates.
- A \(R_z\) rotation implements
\(e^{-i\,\theta_j\,P_j} \;\rightarrow\; R_z(2 \theta_j)\).
The basis rotations and entangling operations are uncomputed.
Notes
Requires a
PauliProductFormulaContainerfor the unitary representation.
- __init__()
Initialize the PauliSequenceMapper.
- class qdk_chemistry.algorithms.circuit_mapper.PauliSequenceMapperSettings
Bases:
SettingsSettings for PauliSequenceMapper.
- __init__()
Initialize PauliSequenceMapperSettings with default values.