1. Dirichlet density
Throughout, K denotes a number field, \mathcal{O}_K its ring of integers,
and \mathfrak{p} ranges over nonzero prime ideals of \mathcal{O}_K with
absolute norm \Norm\mathfrak{p} = [\mathcal{O}_K : \mathfrak{p}].
A set S of nonzero prime ideals of \mathcal{O}_K has Dirichlet density
\delta \in \mathbb{R}, written \delta(S) = \delta, if
\lim_{s \to 1^+} \frac{\displaystyle\sum_{\mathfrak{p} \in S} \Norm\mathfrak{p}^{-s}}{\displaystyle\sum_{\mathfrak{p}} \Norm\mathfrak{p}^{-s}} = \delta,
where the denominator sum runs over all nonzero prime ideals of \mathcal{O}_K.
Lean code for Definition1.1●1 definition
Associated Lean declarations
-
Chebotarev.HasDirichletDensity[complete]
-
Chebotarev.HasDirichletDensity[complete]
-
defdefined in CebotarevDensity/Density.leancomplete
def Chebotarev.HasDirichletDensity.{u_1} {K : Type u_1} [Field K] [NumberField K] (S : Set (Ideal (NumberField.RingOfIntegers K))) (δ : ℝ) : Prop
def Chebotarev.HasDirichletDensity.{u_1} {K : Type u_1} [Field K] [NumberField K] (S : Set (Ideal (NumberField.RingOfIntegers K))) (δ : ℝ) : Prop
The Dirichlet density of a set `S` of prime ideals of `𝓞 K` is `δ` when the ratio of partial sums tends to `δ` as `s ↓ 1`. Sharifi 7.1.13: `δ(S) = lim_{s → 1⁺} (Σ_{𝔭 ∈ S} N𝔭^{-s}) / (Σ_𝔭 N𝔭^{-s})`.
The denominator is asymptotically \log\bigl(1/(s-1)\bigr) as s \downarrow 1
(Sharifi Prop. 7.1.12, p. 140); the lemmas below break out the analytic
ingredients.
The higher-power tail of the log-Euler-product
\sum_{\mathfrak{p},\, k \ge 2} \frac{\Norm\mathfrak{p}^{-2s}}{1 - \Norm\mathfrak{p}^{-s}}
is bounded on a right neighbourhood of s = 1.
Lean code for Lemma1.2●1 theorem
Associated Lean declarations
-
theoremdefined in CebotarevDensity/Density.leancomplete
theorem Chebotarev.primeIdealZetaHigherTail_bounded.{u_1} (K : Type u_1) [Field K] [NumberField K] : ∃ C, ∀ᶠ (s : ℝ) in nhdsWithin 1 (Set.Ioi 1), ∑' (𝔭 : { 𝔭 // 𝔭.IsPrime ∧ 𝔭 ≠ ⊥ }), ↑(Ideal.absNorm ↑𝔭) ^ (-2 * s) / (1 - ↑(Ideal.absNorm ↑𝔭) ^ (-s)) ≤ C
theorem Chebotarev.primeIdealZetaHigherTail_bounded.{u_1} (K : Type u_1) [Field K] [NumberField K] : ∃ C, ∀ᶠ (s : ℝ) in nhdsWithin 1 (Set.Ioi 1), ∑' (𝔭 : { 𝔭 // 𝔭.IsPrime ∧ 𝔭 ≠ ⊥ }), ↑(Ideal.absNorm ↑𝔭) ^ (-2 * s) / (1 - ↑(Ideal.absNorm ↑𝔭) ^ (-s)) ≤ C
Sharifi 7.1.12 proof (p. 140), bounded tail step. The geometric higher-power tail `Σ_𝔭 N𝔭^{-2s}/(1 - N𝔭^{-s}) = Σ_{𝔭, k≥2} N𝔭^{-ks}` is bounded on a right neighbourhood of `s = 1` (in fact on `Re s > 1/2`). It dominates the weighted Euler-product log-tail `Σ_{𝔭, k≥2} N𝔭^{-ks}/k`, so bounding it suffices for the source's "`log ζ_K(s) ~ Σ_𝔭 N𝔭^{-s}`".
Euler-product-log identity: \bigl|\log\zeta_K(s) - \sum_\mathfrak{p} \Norm\mathfrak{p}^{-s}\bigr| \le C
on a right neighbourhood of 1.
Lean code for Lemma1.3●1 theorem
Associated Lean declarations
-
theoremdefined in CebotarevDensity/Density.leancomplete
theorem Chebotarev.logDedekindZeta_sub_primeIdealZetaSum_bounded.{u_1} (K : Type u_1) [Field K] [NumberField K] : ∃ C, ∀ᶠ (s : ℝ) in nhdsWithin 1 (Set.Ioi 1), |Real.log (NumberField.dedekindZeta K ↑s).re - Chebotarev.primeIdealZetaSum Set.univ s| ≤ C
theorem Chebotarev.logDedekindZeta_sub_primeIdealZetaSum_bounded.{u_1} (K : Type u_1) [Field K] [NumberField K] : ∃ C, ∀ᶠ (s : ℝ) in nhdsWithin 1 (Set.Ioi 1), |Real.log (NumberField.dedekindZeta K ↑s).re - Chebotarev.primeIdealZetaSum Set.univ s| ≤ C
Euler-product-log identity: `log ζ_K(s) = Σ_𝔭 N𝔭^{-s} + O(1)` as `s ↓ 1` (Sharifi 7.1.12, p. 140).
Simple-pole identity: \bigl|\log\zeta_K(s) - \log(1/(s-1))\bigr| \le C on a
right neighbourhood of 1.
Lean code for Lemma1.4●1 theorem
Associated Lean declarations
-
theoremdefined in CebotarevDensity/Density.leancomplete
theorem Chebotarev.logDedekindZeta_sub_log_inv_sub_one_bounded.{u_1} (K : Type u_1) [Field K] [NumberField K] : ∃ C, ∀ᶠ (s : ℝ) in nhdsWithin 1 (Set.Ioi 1), |Real.log (NumberField.dedekindZeta K ↑s).re - Real.log (1 / (s - 1))| ≤ C
theorem Chebotarev.logDedekindZeta_sub_log_inv_sub_one_bounded.{u_1} (K : Type u_1) [Field K] [NumberField K] : ∃ C, ∀ᶠ (s : ℝ) in nhdsWithin 1 (Set.Ioi 1), |Real.log (NumberField.dedekindZeta K ↑s).re - Real.log (1 / (s - 1))| ≤ C
Sharifi 7.1.12 proof (p. 140), simple-pole identity: `log ζ_K(s) = log(1/(s-1)) + O(1)` as `s ↓ 1`, from the simple pole of `ζ_K` at `s=1` (mathlib's `NumberField.tendsto_sub_one_mul_dedekindZeta_nhdsGT`).
From the simple pole of \zeta_K at s = 1 (mathlib's
NumberField.tendsto_sub_one_mul_dedekindZeta_nhdsGT): (s-1)\zeta_K(s) \to r > 0
(the residue, dedekindZeta_residue_pos), so
\log\zeta_K(s) - \log(1/(s-1)) = \log\bigl((s-1)\zeta_K(s)\bigr) converges to
\log r and is therefore bounded near 1.
Lean code for Lemma1.5●1 theorem
Associated Lean declarations
-
theoremdefined in CebotarevDensity/Density.leancomplete
theorem Chebotarev.log_minus_bounded_le_primeIdealZetaSum.{u_1} (K : Type u_1) [Field K] [NumberField K] : ∃ C, ∀ᶠ (s : ℝ) in nhdsWithin 1 (Set.Ioi 1), Real.log (1 / (s - 1)) - C ≤ Chebotarev.primeIdealZetaSum Set.univ s
theorem Chebotarev.log_minus_bounded_le_primeIdealZetaSum.{u_1} (K : Type u_1) [Field K] [NumberField K] : ∃ C, ∀ᶠ (s : ℝ) in nhdsWithin 1 (Set.Ioi 1), Real.log (1 / (s - 1)) - C ≤ Chebotarev.primeIdealZetaSum Set.univ s
Sharifi 7.1.12 proof (p. 140), lower bound: `log(1/(s-1)) - C ≤ Σ_𝔭 N𝔭^{-s}`.
Lean code for Lemma1.6●1 theorem
Associated Lean declarations
-
theoremdefined in CebotarevDensity/Density.leancomplete
theorem Chebotarev.primeIdealZetaSum_le_log_plus_bounded.{u_1} (K : Type u_1) [Field K] [NumberField K] : ∃ C, ∀ᶠ (s : ℝ) in nhdsWithin 1 (Set.Ioi 1), Chebotarev.primeIdealZetaSum Set.univ s ≤ Real.log (1 / (s - 1)) + C
theorem Chebotarev.primeIdealZetaSum_le_log_plus_bounded.{u_1} (K : Type u_1) [Field K] [NumberField K] : ∃ C, ∀ᶠ (s : ℝ) in nhdsWithin 1 (Set.Ioi 1), Chebotarev.primeIdealZetaSum Set.univ s ≤ Real.log (1 / (s - 1)) + C
Sharifi 7.1.12 proof (p. 140), upper bound: `Σ_𝔭 N𝔭^{-s} ≤ log(1/(s-1)) + C'`.
-
Chebotarev.tendsto_ratio_one_of_log_pm_bounded[missing declaration]
Let f : (1, \infty) \to \mathbb{R}. If f is sandwiched as
\log\bigl(1/(s-1)\bigr) - C \le f(s) \le \log\bigl(1/(s-1)\bigr) + C' on a right
neighbourhood of 1, then f(s)/\log\bigl(1/(s-1)\bigr) \to 1 as
s \downarrow 1.
Lean code for Lemma1.7●1 declaration, 1 missing
Associated Lean declarations
-
Chebotarev.tendsto_ratio_one_of_log_pm_bounded[missing declaration]
-
Chebotarev.tendsto_ratio_one_of_log_pm_bounded[missing declaration]
-
Chebotarev.tendsto_ratio_one_of_log_pm_boundedmissing declarationdeclaration not found (name was not present during directive/code-block registration)
Since \log\bigl(1/(s-1)\bigr) \to \infty as s \downarrow 1, the additive
constants C, C' wash out under division, and the squeeze gives the limit 1.
Lean code for Lemma1.8●1 theorem
Associated Lean declarations
-
theoremdefined in CebotarevDensity/Density.leancomplete
theorem Chebotarev.primeIdealZetaSum_univ_tendsto_log.{u_1} (K : Type u_1) [Field K] [NumberField K] : Filter.Tendsto (fun s ↦ Chebotarev.primeIdealZetaSum Set.univ s / Real.log (1 / (s - 1))) (nhdsWithin 1 (Set.Ioi 1)) (nhds 1)
theorem Chebotarev.primeIdealZetaSum_univ_tendsto_log.{u_1} (K : Type u_1) [Field K] [NumberField K] : Filter.Tendsto (fun s ↦ Chebotarev.primeIdealZetaSum Set.univ s / Real.log (1 / (s - 1))) (nhdsWithin 1 (Set.Ioi 1)) (nhds 1)
**Sharifi 7.1.12**, *Algebraic Number Theory*, p. 140. The denominator `Σ_𝔭 N𝔭^{-s}` is asymptotic to `log(1/(s-1))` as `s ↓ 1`. This is the analytic ingredient that makes the Dirichlet-density definition robust under the L-function comparisons in the Chebotarev proof.