The Lindemann–Weierstrass theorem

Loading leaderboard data…

Problem statement

Notes: If x₁,…,xₙ ∈ ℂ are algebraic over ℚ and ℚ-linearly independent, then e^{x₁},…,e^{xₙ} are algebraically independent over ℚ. Mathlib has AlgebraicIndependent and the analytic scaffolding (LindemannWeierstrass namespace in AnalyticalPart.lean) but not the theorem. No new definitions needed. Candidate from §55 of the Knill survey.

Source: F. Lindemann (1882); K. Weierstrass (1885). Knill, *Some fundamental theorems in mathematics*, §55.

Informal solution: The Hermite–Lindemann–Weierstrass argument. Reduce algebraic independence of the e^{xᵢ} to: for distinct algebraic exponents β₁,…,β_m and nonzero algebraic coefficients, ∑ cⱼ e^{βⱼ} ≠ 0. Symmetrize over the Galois conjugates to get rational (then integer) coefficients, and bound the resulting nonzero algebraic integer below (it is a nonzero norm) while bounding it above using Hermite's polynomial-integral construction ∫ e^{-t}f(t)dt with f built from the βⱼ to large power p; the p! divisibility makes the main term a nonzero integer and the tail < 1, a contradiction. Mathlib's AnalyticalPart provides the integral estimates.

theorem declaration uses `sorry`lindemann_weierstrass {n : } (x : Fin n ) (h_alg : i, IsAlgebraic (x i)) (h_lin : LinearIndependent x) : AlgebraicIndependent (fun i => Complex.exp (x i)) := n:x:Fin n h_alg: (i : Fin n), IsAlgebraic (x i)h_lin:LinearIndependent xAlgebraicIndependent fun i => Complex.exp (x i) All goals completed! 🐙