QITE and QRTE

Imaginary-time evolution suppresses high-energy components, while real-time evolution tracks dynamics of a prepared state.

(1)\[|\psi(\tau)\rangle = e^{-H\tau}|\psi(0)\rangle\]

The VarQITE implementation approximates (1) through a projected variational update.

(2)\[A(\theta)\dot{\theta} = -C(\theta)\]

VarQRTE solves the projected linear system in (2) to advance parameters in real time.

Imaginary-time evolution:

\[ |\psi(\tau)\rangle = e^{-H\tau} |\psi(0)\rangle \]

Suppresses higher-energy components.

VarQITE approximates evolution using McLachlan projection.

VarQRTE uses the same projected-variational machinery, but for real-time unitary dynamics rather than imaginary-time relaxation.

Practical distinction in this repository:

  • VQE / VarQITE are state-finding workflows

  • QPE is a spectral / phase-estimation workflow

  • VarQRTE is a dynamics workflow used after a relevant state has already been prepared

For a time-independent Hamiltonian, real-time evolution should conserve energy up to numerical error. For that reason, the most useful VarQRTE diagnostics are usually:

  • time-dependent observables

  • fidelity to exact evolution on small systems

  • overlap with the initial state

  • trajectory error over time


Quantum Real Time Evolution

VarQRTE in this repository is a McLachlan-projected real-time evolution method on a variational state manifold.

Conceptually:

  1. start from a prepared state \(|\psi(\theta_0)\rangle\)

  2. project Schrödinger evolution onto the ansatz tangent space

  3. solve a linear system for parameter velocities

  4. integrate the parameter trajectory forward in time

Unlike VarQITE, VarQRTE does not try to suppress excited-state components or minimize the energy. Its role is to approximate the time evolution of a chosen initial state under a fixed Hamiltonian.

That means a good correctness question for VarQRTE is:

  • how well does the variational trajectory track exact real-time evolution of the same initial state?

not:

  • how low is the final energy?

Linear system:

\[ A(\theta)\dot{\theta} = -C(\theta) \]

with:

\[ A_{ij} = \Re \langle \partial_i\psi|\partial_j\psi\rangle \]
\[ C_i = \Re \langle \partial_i\psi| (H-\langle H\rangle) |\psi\rangle \]

Update:

\[ \theta \leftarrow \theta + \Delta\tau \dot{\theta} \]

Implementation features:

  • noiseless parameter updates

  • regularized linear solvers

  • noise applied only during evaluation