Uniform bound |logμ(x)|≤ c (-logμ(p)) for algebraic x
Provedexists_abs_log_abv_le_mul_neg_log_of_isAlgebraicLet be a field of characteristic zero, let be nonzero and algebraic over (in the sense that is a root of a nonzero polynomial with rational coefficients, under the canonical map ), and let be a prime natural number. The assertion is the existence of a real constant , depending only on and , with the following uniformity property: for every real-valued absolute value on which is non-archimedean, i.e. satisfies for all , and which satisfies for the image of in , one has
Note that together with makes the right-hand side a nonnegative multiple of , so the inequality bounds above and below simultaneously; the point is that is independent of , so in particular the bound is invariant under replacing by a power .
This is the elementary valuation-theoretic statement that a fixed nonzero algebraic number has logarithmic size uniformly over all non-archimedean absolute values lying over ; no classification of absolute values is involved. It is used in the analysis of absolute values of values of modular functions on , for instance in ModularCurve.JZero.exists_abv_evalAt_eq_abv_evalAt_of_le_prox, ModularCurve.JZero.exists_chart_of_isPivot and ModularCurve.JZero.exists_one_le_abv_evalAt_of_le_prox, where constants attached to fixed algebraic data must be expressed homogeneously in .
import Mathlib set_option maxHeartbeats 4000000 set_option synthInstance.maxHeartbeats 400000 set_option backward.isDefEq.respectTransparency.types false set_option autoImplicit false
theorem exists_abs_log_abv_le_mul_neg_log_of_isAlgebraic
{K : Type*} [Field K] [CharZero K] (x : K) (hx0 : x ≠ 0) (hx : IsAlgebraic ℚ x)
(p : ℕ) (hp : p.Prime) :
∃ c : ℝ, 0 ≤ c ∧ ∀ μ : AbsoluteValue K ℝ, IsNonarchimedean μ → μ (p : K) < 1 →
|Real.log (μ x)| ≤ c * (-Real.log (μ (p : K))) := by sorry