The first-order Trotter formula replaces the exact joint evolution
e−i(H1+H2)t with the product e−iH1te−iH2t.
These two operators agree only when H1 and H2 commute; in general there is a
discrepancy — the Trotter error — and knowing how to bound it is essential for
choosing the right number of Trotter steps in a simulation.
Where the error comes from
The Baker–Campbell–Hausdorff (BCH) lemma tells us
eAeB=eA+B+21[A,B]+⋯,
where [A,B]=AB−BA is the commutator. Setting A=−iH1t and B=−iH2t,
e−iH1te−iH2t=e−i(H1+H2)t−2t2[H1,H2]+O(t3).
The leading error is the extra term −2t2[H1,H2] in the exponent.
If the terms commute, [H1,H2]=0 and the formula is exact at any step size.
Bounding the error in spectral norm
The spectral norm∥⋅∥ (largest singular value) is the natural measure of
how far two unitaries are from each other. A standard bound gives
e−iH1te−iH2t−e−i(H1+H2)t≤2t2∥[H1,H2]∥.
This is the first-order Trotter error bound. It has three key consequences:
Quadratic in t: Halving the step size reduces the error by a factor of four.
Proportional to the commutator: Terms that nearly commute are much cheaper to Trotterise accurately.
Additive over steps: With r steps of size t/r the total bound becomes t2∥[H1,H2]∥/(2r), shrinking as r grows.
Worked example: H=X+Z
Consider the single-qubit Hamiltonian H=X+Z split as H1=X, H2=Z.
Using the Pauli product identity XZ=−iY and ZX=iY:
[X,Z]=XZ−ZX=−iY−iY=−2iY.
The spectral norm of −2iY is 2 (Pauli Y has eigenvalues ±1, so ∥−2Y∥=2).
With t=0.5:
ϵ≤2(0.5)2×2=20.25×2=0.25.
How the step count controls the error
Dividing total time t into r steps of size δ=t/r, the accumulated error satisfies
ϵtotal≤r⋅2δ2∥[H1,H2]∥=2rt2∥[H1,H2]∥.
To achieve target accuracy ε we need at least
r≥2εt2∥[H1,H2]∥.
For the X+Z example with t=1 and ε=0.01, that requires
r≥2/(2×0.01)=100 steps — showing why strongly non-commuting terms are
expensive to simulate accurately.
Try it
For H1=Z, H2=X (single qubit) and step size t=1.0, compute the
first-order Trotter error upper bound 2t2∥[H1,H2]∥ and return it as a
number. The Pauli identity gives [Z,X]=−2iY, so ∥[Z,X]∥=2.
Run your code to see the quantum state.
Sign in on the full site to ask questions and join the discussion.