Documentation

LeanPool.LieTrotter.Commutator

The commutator-scaling error bound #

For A, B in a complete normed algebra over ℝ with ‖1‖ = 1 and every n ≥ 1,

‖(exp (A/n) · exp (B/n))ⁿ − exp (A + B)‖ ≤ ‖AB − BA‖ / (2n) · e^{‖A‖ + ‖B‖}.

The bound vanishes when A and B commute. The constant 1/2 is sharp (not proved here): for small A, B the product is exp (A + B + [A, B]/(2n) + O(1/n²)). The exponential factor is not sharp. Adapted for Lean Pool's module paths and imports from the Apache-2.0 upstream development.

The chain:

theorem LieTrotter.norm_exp_smul_le {𝔸 : Type u_1} [NormedRing 𝔸] [NormedAlgebra ℝ 𝔸] [CompleteSpace 𝔸] [NormOneClass 𝔸] (X : 𝔸) {t : ℝ} (ht : 0 ≤ t) :

‖exp (t • X)‖ ≤ e^{t ‖X‖} for t ≥ 0.

theorem LieTrotter.hasDerivAt_exp_const_sub_smul {𝔸 : Type u_1} [NormedRing 𝔸] [NormedAlgebra ℝ 𝔸] [CompleteSpace 𝔸] (X : 𝔸) (c σ : ℝ) :
HasDerivAt (fun (σ : ℝ) => NormedSpace.exp ((c - σ) • X)) (-(X * NormedSpace.exp ((c - σ) • X))) σ

The derivative of σ ↦ exp ((c − σ) • X) is -(X * exp ((c − σ) • X)).

theorem LieTrotter.hasDerivAt_exp_const_sub_smul' {𝔸 : Type u_1} [NormedRing 𝔸] [NormedAlgebra ℝ 𝔸] [CompleteSpace 𝔸] (X : 𝔸) (c σ : ℝ) :
HasDerivAt (fun (σ : ℝ) => NormedSpace.exp ((c - σ) • X)) (-(NormedSpace.exp ((c - σ) • X) * X)) σ

The derivative of σ ↦ exp ((c − σ) • X), with X on the right.

theorem LieTrotter.norm_exp_smul_mul_sub_le {𝔸 : Type u_1} [NormedRing 𝔸] [NormedAlgebra ℝ 𝔸] [CompleteSpace 𝔸] [NormOneClass 𝔸] (A B : 𝔸) {t : ℝ} (ht : 0 ≤ t) :

The commutator with an exponential. For t ≥ 0, ‖exp (t • A) * B − B * exp (t • A)‖ ≤ t ‖AB − BA‖ e^{t ‖A‖}.

The one-step bound with the commutator. ‖exp A * exp B − exp (A + B)‖ ≤ ‖AB − BA‖ / 2 · e^{‖A‖ + ‖B‖}.

theorem LieTrotter.norm_trotter_sub_le_commutator {𝔸 : Type u_1} [NormedRing 𝔸] [NormedAlgebra ℝ 𝔸] [CompleteSpace 𝔸] [NormOneClass 𝔸] (A B : 𝔸) (n : ℕ) (hn : 1 ≤ n) :
‖(NormedSpace.exp ((↑n)⁻¹ • A) * NormedSpace.exp ((↑n)⁻¹ • B)) ^ n - NormedSpace.exp (A + B)‖ ≤ ‖A * B - B * A‖ / (2 * ↑n) * Real.exp (‖A‖ + ‖B‖)

The Lie–Trotter product formula with commutator scaling. For n ≥ 1, ‖(exp (A/n) · exp (B/n))ⁿ − exp (A + B)‖ ≤ ‖AB − BA‖ / (2n) · e^{‖A‖ + ‖B‖}.

theorem LieTrotter.trotter_eq_of_commute {𝔸 : Type u_1} [NormedRing 𝔸] [NormedAlgebra ℝ 𝔸] [CompleteSpace 𝔸] [NormOneClass 𝔸] {A B : 𝔸} (h : Commute A B) (n : ℕ) (hn : 1 ≤ n) :

When A and B commute, the product formula is exact at every step: the error bound vanishes.