Simulating Quantum Systems
One of the oldest arguments for building a quantum computer came not from cryptography or optimisation but from physics: nature is quantum, so simulate it with something quantum. Richard Feynman made this case in 1982, pointing out that classical computers appear to need exponentially many variables to keep track of the state of even a modest quantum system. A quantum computer, by contrast, can store and manipulate quantum states directly.
The core problem
Consider a physical system whose energy is captured by a Hamiltonian operator . In quantum mechanics the state obeys the Schrödinger equation
For a time-independent the formal solution is the time-evolution operator
The task of Hamiltonian simulation is: given a description of and a time , implement as a quantum circuit (or approximate it to within a desired error ).
Why classical computers struggle
Suppose the physical system contains spin-1/2 particles (qubits). The Hilbert space has dimension . To classically store a general state vector you need complex amplitudes; to apply a general unitary you need a matrix-vector product. For that is already entries — far beyond practical memory.
Quantum simulation sidesteps this because the quantum computer's physical qubits are the particles; the hardware encodes the exponentially large state implicitly.
What we actually want to compute
In practice we care about several related questions:
- Ground-state energy — the lowest eigenvalue of . Relevant for chemistry (molecular energy, reaction rates) and materials science (magnetism, superconductivity).
- Dynamics — how an initial state evolves under over time. Relevant for modelling quantum chemistry reactions or many-body physics.
- Spectral gaps — the difference between the lowest and next eigenvalue, which controls phase transitions.
Hamiltonian simulation algorithms address all three, because an efficient circuit is a building block for quantum phase estimation, which extracts eigenvalues.
A taste of the approach: Trotterisation
Most physically interesting Hamiltonians are sums of simpler terms:
where each acts on only a few qubits and is easy to exponentiate. The Trotter–Suzuki formula (first order) approximates the joint evolution by interleaving the individual evolutions:
with an operator error of .
The error is proportional to the commutator : if the terms commute the approximation is exact. Breaking into smaller steps of size reduces the error to , so we can make it arbitrarily small.
Each factor maps to a short quantum circuit, and we chain repetitions. This is first-order Trotterisation (also called the Lie–Trotter product formula), and it is the foundation for the more sophisticated algorithms we will build in this module.
Why this module matters
Hamiltonian simulation is among the most compelling near-term and long-term applications of quantum computing. In the near term, variational algorithms (VQE) use approximate ansatz circuits inspired by Trotterisation to estimate ground-state energies on noisy hardware. In the fault-tolerant era, Trotterisation and more advanced methods (LCU, qubitisation, QSVT) promise exponential speed-ups over the best classical algorithms for quantum chemistry and condensed-matter physics.
In the lessons that follow you will implement the time-evolution operator for concrete Hamiltonians, compare different Trotter step counts, and see how circuit depth grows with precision requirements.
Sign in on the full site to ask questions and join the discussion.