qrunch.quantum.circuits.trotter.trotter_protocols

Module containing protocols for Trotterization of Hamiltonians.

Classes

TrotterizationStrategy

Protocol for strategies that Trotterize a Hamiltonian into a circuit.

class TrotterizationStrategy

Bases: Protocol

Protocol for strategies that Trotterize a Hamiltonian into a circuit.

A Trotterization strategy approximates the time-evolution operator \(e^{-iHt}\) of a Hermitian Pauli Hamiltonian \(H = \\sum_j c_j P_j\) as a product of single-Pauli exponentials arranged in \(n\) Trotter steps.

__init__(*args, **kwargs)
trotterize(hamiltonian: HermitianPauliSum, time: float, trotter_steps: int) Circuit

Construct a Trotter product-formula circuit approximating \(e^{-iHt}\).

The returned Circuit contains composite gates (HGate, SGate, SdgGate, CXGate, RZGate) and can be passed directly to a downstream Compiler for decomposition into a universal gate set.

Parameters:
  • hamiltonian (HermitianPauliSum) – The Hermitian Pauli Hamiltonian to Trotterize.

  • time (float) – Total evolution time \(t\).

  • trotter_steps (int) – Number of Trotter steps \(n\). Increasing this value reduces the Trotter error at the cost of a proportionally deeper circuit.

Return type:

Circuit