The criterion of Schneider–Lang for ℂ^{d₀}×(ℂ^×)^{d₁}, d₀ ≤ 1 (Corollary 4.2 of Waldschmidt's book)
ProvedTranscendence.schneider_lang_cartesianLet be vectors in with algebraic coordinates, linearly independent over , and let be a basis of . Optionally fix a coordinate at which every has an algebraic coordinate (the case ; otherwise ). If , the numbers
are not all algebraic.
This is Corollary 4.2 of Waldschmidt's book for , proved directly as in its §4.6: an auxiliary function by Thue–Siegel (Transcendence.siegel_small_values), Liouville's inequality at the points of the grid , Schwarz's lemma for Cartesian products (Transcendence.cartesian_schwarz) at the first non-vanishing derivative, and a contradiction. The cases and are the book's Corollaries 4.3 and 4.4, from which Baker's theorem follows (Transcendence.baker_number_field_basis).
The book's step 5 applies Proposition 4.7 after the change of variables to a vanishing hypothesis (every exponent below ) that this change of variables does not preserve. The proof here uses vanishing by total order throughout, which it does preserve; only the constants change.
It is one step of the proof of Baker's theorem formalised in this mission, which follows Chapter 4 of Waldschmidt's book: Baker's theorem from the criterion of Schneider–Lang for Cartesian products, as observed by Bertrand and Masser (1980).
Novelty. None for the statement. The contribution of this node is the formal proof, with the correction just described.
import Mathlib
namespace Transcendence
/-- **The criterion of Schneider–Lang for `ℂ^{d₀} × (ℂ^×)^{d₁}`, `d₀ ≤ 1`** (Waldschmidt, *Diophantine
Approximation on Linear Algebraic Groups*, Cor. 4.2, proved directly in §4.6). Let `x₁, …, x_{d₁}` be vectors
with algebraic coordinates, linearly independent over `ℚ`, and let `(y_j)` be a basis of `ℂ^ι`. Optionally fix a
coordinate `k = ι₀` at which every `y_j` has an algebraic coordinate (the case `d₀ = 1`). If `|ι| < d₀ + d₁`, the
numbers `e^{⟨xᵢ, y_j⟩}` cannot all be algebraic. The special cases `ι₀ = none` and `ι₀ = some k` are Cor. 4.3 and
Cor. 4.4 of the book, from which Baker's theorem follows. -/
theorem schneider_lang_cartesian {ι : Type*} [Fintype ι] [DecidableEq ι] {d₁ : ℕ}
(x : Fin d₁ → ι → ℂ) (hxalg : ∀ i ν, IsAlgebraic ℚ (x i ν)) (hxind : LinearIndependent ℚ x)
(y : ι → ι → ℂ) (hy : LinearIndependent ℂ y)
(ι₀ : Option ι) (hdim : Fintype.card ι < ι₀.elim 0 (fun _ => 1) + d₁)
(hy₀ : ∀ k, ι₀ = some k → ∀ j, IsAlgebraic ℚ (y j k))
(hexp : ∀ i j, IsAlgebraic ℚ (Complex.exp (∑ ν, x i ν * y j ν))) : False := by
sorry
end Transcendence