ffsim.qiskit.OrbitalRotationJW

class ffsim.qiskit.OrbitalRotationJW(norb, orbital_rotation, *, label=None, validate=True, rtol=1e-05, atol=1e-08)[source]

Bases: Gate

Orbital rotation under the Jordan-Wigner transformation.

An orbital rotation maps creation operators as

\[a^\dagger_{i\sigma} \mapsto \sum_{j} U_{ji} a^\dagger_{j\sigma}\]

where \(U\) is a unitary matrix. This is equivalent to applying the transformation given by

\[\prod_{\sigma} \exp\left(\sum_{ij} \log(U)_{ij} a^\dagger_{i\sigma} a_{j\sigma}\right)\]

This gate assumes that qubits are ordered such that the first norb qubits correspond to the alpha orbitals and the last norb qubits correspond to the beta orbitals.

Methods

inverse()

Inverse gate.

Attributes