Documentation

PrimeNumberTheoremAnd.PerronFormula

theorem zeroTendstoDiff (L₁ L₂ : ) (f : ) (h : ∀ᶠ (T : ) in Filter.atTop, f T = 0) (h' : Filter.Tendsto f Filter.atTop (nhds (L₂ - L₁))) :
L₁ = L₂
theorem RectangleIntegral_tendsTo_VerticalIntegral {σ σ' : } {f : } (hbot : Filter.Tendsto (fun (y : ) => (x : ) in σ..σ', f (x + y * Complex.I)) Filter.atBot (nhds 0)) (htop : Filter.Tendsto (fun (y : ) => (x : ) in σ..σ', f (x + y * Complex.I)) Filter.atTop (nhds 0)) (hleft : MeasureTheory.Integrable (fun (y : ) => f (σ + y * Complex.I)) MeasureTheory.volume) (hright : MeasureTheory.Integrable (fun (y : ) => f (σ' + y * Complex.I)) MeasureTheory.volume) :
Filter.Tendsto (fun (T : ) => RectangleIntegral f (σ - Complex.I * T) (σ' + Complex.I * T)) Filter.atTop (nhds (VerticalIntegral f σ' - VerticalIntegral f σ))
theorem verticalIntegral_eq_verticalIntegral {σ σ' : } {f : } (hf : HolomorphicOn f (Set.uIcc σ σ' ×ℂ Set.univ)) (hbot : Filter.Tendsto (fun (y : ) => (x : ) in σ..σ', f (x + y * Complex.I)) Filter.atBot (nhds 0)) (htop : Filter.Tendsto (fun (y : ) => (x : ) in σ..σ', f (x + y * Complex.I)) Filter.atTop (nhds 0)) (hleft : MeasureTheory.Integrable (fun (y : ) => f (σ + y * Complex.I)) MeasureTheory.volume) (hright : MeasureTheory.Integrable (fun (y : ) => f (σ' + y * Complex.I)) MeasureTheory.volume) :
theorem verticalIntegral_sub_verticalIntegral_eq_squareIntegral {σ σ' : } {f : } {p : } ( : σ < p.re p.re < σ') (hf : HolomorphicOn f (Set.Icc σ σ' ×ℂ Set.univ \ {p})) (hbot : Filter.Tendsto (fun (y : ) => (x : ) in σ..σ', f (x + y * Complex.I)) Filter.atBot (nhds 0)) (htop : Filter.Tendsto (fun (y : ) => (x : ) in σ..σ', f (x + y * Complex.I)) Filter.atTop (nhds 0)) (hleft : MeasureTheory.Integrable (fun (y : ) => f (σ + y * Complex.I)) MeasureTheory.volume) (hright : MeasureTheory.Integrable (fun (y : ) => f (σ' + y * Complex.I)) MeasureTheory.volume) :
∀ᶠ (c : ) in nhdsWithin 0 (Set.Ioi 0), VerticalIntegral f σ' - VerticalIntegral f σ = RectangleIntegral f (-c - c * Complex.I + p) (c + c * Complex.I + p)
theorem RectangleIntegral_tendsTo_UpperU {σ σ' T : } {f : } (htop : Filter.Tendsto (fun (y : ) => (x : ) in σ..σ', f (x + y * Complex.I)) Filter.atTop (nhds 0)) (hleft : MeasureTheory.Integrable (fun (y : ) => f (σ + y * Complex.I)) MeasureTheory.volume) (hright : MeasureTheory.Integrable (fun (y : ) => f (σ' + y * Complex.I)) MeasureTheory.volume) :
Filter.Tendsto (fun (U : ) => RectangleIntegral f (σ + Complex.I * T) (σ' + Complex.I * U)) Filter.atTop (nhds (UpperUIntegral f σ σ' T))
theorem RectangleIntegral_tendsTo_LowerU {σ σ' T : } {f : } (hbot : Filter.Tendsto (fun (y : ) => (x : ) in σ..σ', f (x + y * Complex.I)) Filter.atBot (nhds 0)) (hleft : MeasureTheory.Integrable (fun (y : ) => f (σ + y * Complex.I)) MeasureTheory.volume) (hright : MeasureTheory.Integrable (fun (y : ) => f (σ' + y * Complex.I)) MeasureTheory.volume) :
Filter.Tendsto (fun (U : ) => RectangleIntegral f (σ - Complex.I * U) (σ' - Complex.I * T)) Filter.atTop (nhds (-LowerUIntegral f σ σ' T))
theorem limitOfConstant {a : } {σ : } (σpos : 0 < σ) (ha : ∀ (σ' σ'' : ), 0 < σ'0 < σ''a σ' = a σ'') (ha' : Filter.Tendsto a Filter.atTop (nhds 0)) :
a σ = 0
theorem limitOfConstantLeft {a : } {σ : } (σlt : σ -3 / 2) (ha : ∀ (σ' σ'' : ), σ' -3 / 2σ'' -3 / 2a σ' = a σ'') (ha' : Filter.Tendsto a Filter.atBot (nhds 0)) :
a σ = 0
theorem tendsto_rpow_atTop_nhds_zero_of_norm_lt_one {x : } (xpos : 0 < x) (x_lt_one : x < 1) (C : ) :
Filter.Tendsto (fun (σ : ) => x ^ σ * C) Filter.atTop (nhds 0)
theorem tendsto_rpow_atTop_nhds_zero_of_norm_gt_one {x : } (x_gt_one : 1 < x) (C : ) :
Filter.Tendsto (fun (σ : ) => x ^ σ * C) Filter.atBot (nhds 0)
theorem Complex.cpow_eq_exp_log_ofReal (x : ) (hx : 0 < x) (y : ) :
x ^ y = exp ((Real.log x) * y)
theorem Complex.cpow_neg_eq_inv_pow_ofReal_pos {a : } (ha : 0 < a) (r : ) :
a ^ (-r) = (↑a)⁻¹ ^ r
@[reducible, inline]
noncomputable abbrev Perron.f (x : ) (s : ) :
Equations
Instances For
    theorem Perron.f_mul_eq_f {x t : } (tpos : 0 < t) (xpos : 0 < x) (s : ) :
    f t s * x ^ (-s) = f (t / x) s
    theorem Perron.isHolomorphicOn {x : } (xpos : 0 < x) :
    theorem Perron.integral_one_div_const_add_sq_pos (c : ) (hc : 0 < c) :
    0 < (t : ), 1 / (c + t ^ 2)
    theorem Perron.integralPosAux'_of_le (c₁ c₂ : ) (c₁_pos : 0 < c₁) (hle : c₁ c₂) :
    0 < (t : ), 1 / ((c₁ + t ^ 2) * (c₂ + t ^ 2))
    theorem Perron.integralPosAux' (c₁ c₂ : ) (c₁_pos : 0 < c₁) (c₂_pos : 0 < c₂) :
    0 < (t : ), 1 / ((c₁ + t ^ 2) * (c₂ + t ^ 2))
    theorem Perron.integralPosAux :
    0 < (t : ), 1 / ((1 + t ^ 2) * (2 + t ^ 2))
    theorem Perron.vertIntBound {x σ : } (xpos : 0 < x) (σ_gt_one : 1 < σ) :
    VerticalIntegral (f x) σ x ^ σ * (t : ), 1 / ((1 + t ^ 2) * (2 + t ^ 2))
    theorem Perron.vertIntBoundLeft {x : } (xpos : 0 < x) :
    ∃ (C : ), σ < -3 / 2, VerticalIntegral' (f x) σ C * x ^ σ
    theorem Perron.map_conj {x : } (hx : 0 x) (s : ) :
    f x ((starRingEnd ) s) = (starRingEnd ) (f x s)
    theorem Perron.isTheta_uniformlyOn_uIcc {x : } (xpos : 0 < x) (σ' σ'' : ) :
    (fun (x_1 : × ) => match x_1 with | (σ, y) => f x (σ + y * Complex.I)) =Θ[Filter.principal (Set.uIcc σ' σ'') ×ˢ (Filter.atBotFilter.atTop)] ((fun (y : ) => 1 / y ^ 2) Prod.snd)
    theorem Perron.isTheta_uniformlyOn_uIoc {x : } (xpos : 0 < x) (σ' σ'' : ) :
    (fun (x_1 : × ) => match x_1 with | (σ, y) => f x (σ + y * Complex.I)) =Θ[Filter.principal (Set.uIoc σ' σ'') ×ˢ (Filter.atBotFilter.atTop)] fun (x : × ) => match x with | (fst, y) => 1 / y ^ 2
    theorem Perron.isTheta {x σ : } (xpos : 0 < x) :
    ((fun (y : ) => f x (σ + y * Complex.I)) =Θ[Filter.atBot] fun (y : ) => 1 / y ^ 2) (fun (y : ) => f x (σ + y * Complex.I)) =Θ[Filter.atTop] fun (y : ) => 1 / y ^ 2
    theorem Perron.isIntegrable {x σ : } (xpos : 0 < x) (σ_ne_zero : σ 0) (σ_ne_neg_one : σ -1) :
    theorem Perron.horizontal_integral_isBigO {x : } (xpos : 0 < x) (σ' σ'' : ) (μ : MeasureTheory.Measure ) [MeasureTheory.IsLocallyFiniteMeasure μ] :
    (fun (y : ) => (σ : ) in σ'..σ'', f x (σ + y * Complex.I) μ) =O[Filter.atBotFilter.atTop] fun (y : ) => 1 / y ^ 2
    theorem Perron.tendsto_zero_Lower {x : } (xpos : 0 < x) (σ' σ'' : ) :
    Filter.Tendsto (fun (t : ) => (σ : ) in σ'..σ'', f x (σ + t * Complex.I)) Filter.atBot (nhds 0)
    theorem Perron.tendsto_zero_Upper {x : } (xpos : 0 < x) (σ' σ'' : ) :
    Filter.Tendsto (fun (t : ) => (σ : ) in σ'..σ'', f x (σ + t * Complex.I)) Filter.atTop (nhds 0)
    theorem Perron.contourPull {x σ' σ'' : } (xpos : 0 < x) (hσ0 : 0Set.uIcc σ' σ'') (hσ1 : -1Set.uIcc σ' σ'') :
    theorem Perron.formulaLtOne {x σ : } (xpos : 0 < x) (x_lt_one : x < 1) (σ_pos : 0 < σ) :
    theorem Perron.HolomorphicOn.upperUIntegral_eq_zero {f : } {σ σ' T : } ( : σ σ') (hf : HolomorphicOn f {z : | σ z.re z.re σ' T z.im}) (htop : Filter.Tendsto (fun (y : ) => (x : ) in σ..σ', f (x + y * Complex.I)) Filter.atTop (nhds 0)) (hleft : MeasureTheory.Integrable (fun (y : ) => f (σ + y * Complex.I)) MeasureTheory.volume) (hright : MeasureTheory.Integrable (fun (y : ) => f (σ' + y * Complex.I)) MeasureTheory.volume) :
    UpperUIntegral f σ σ' T = 0
    theorem Perron.HolomorphicOn.lowerUIntegral_eq_zero {f : } {σ σ' T : } ( : σ σ') (hf : HolomorphicOn f {z : | σ z.re z.re σ' z.im -T}) (hbot : Filter.Tendsto (fun (y : ) => (x : ) in σ..σ', f (x + y * Complex.I)) Filter.atBot (nhds 0)) (hleft : MeasureTheory.Integrable (fun (y : ) => f (σ + y * Complex.I)) MeasureTheory.volume) (hright : MeasureTheory.Integrable (fun (y : ) => f (σ' + y * Complex.I)) MeasureTheory.volume) :
    LowerUIntegral f σ σ' T = 0
    theorem Perron.sPlusOneNeZero {s : } (s_ne_neg_one : s -1) :
    s + 1 0
    theorem Perron.keyIdentity (x : ) {s : } (s_ne_zero : s 0) (s_ne_neg_one : s -1) :
    x ^ s / (s * (s + 1)) = x ^ s / s - x ^ s / (s + 1)
    theorem Filter.Tendsto.eventually_bddAbove {α : Type u_1} {β : Type u_2} [LinearOrder β] [NoMaxOrder β] [TopologicalSpace β] [ClosedIciTopology β] {y : β} {l : Filter α} {f : αβ} (hf : Tendsto f l (nhds y)) :
    ∀ᶠ (s : Set α) in l.smallSets, BddAbove (f '' s)
    theorem Perron.bddAbove_square_of_tendsto {β : Type u_2} [LinearOrder β] [NoMaxOrder β] [TopologicalSpace β] [ClosedIciTopology β] {y : β} {f : β} {x : } (hf : Filter.Tendsto f (nhdsWithin x {x}) (nhds y)) :
    ∀ᶠ (c : ) in nhdsWithin 0 (Set.Ioi 0), BddAbove (f '' (Square x c \ {x}))
    theorem Perron.diffBddAtZero {x : } (xpos : 0 < x) :
    ∀ᶠ (c : ) in nhdsWithin 0 (Set.Ioi 0), BddAbove ((norm fun (s : ) => x ^ s / (s * (s + 1)) - 1 / s) '' (Square 0 c \ {0}))
    theorem Perron.diffBddAtNegOne {x : } (xpos : 0 < x) :
    ∀ᶠ (c : ) in nhdsWithin 0 (Set.Ioi 0), BddAbove ((norm fun (s : ) => x ^ s / (s * (s + 1)) - -x⁻¹ / (s + 1)) '' (Square (-1) c \ {-1}))
    theorem Perron.residueAtZero {x : } (xpos : 0 < x) :
    ∀ᶠ (c : ) in nhdsWithin 0 (Set.Ioi 0), RectangleIntegral' (f x) (-c - c * Complex.I) (c + c * Complex.I) = 1
    theorem Perron.residueAtNegOne {x : } (xpos : 0 < x) :
    ∀ᶠ (c : ) in nhdsWithin 0 (Set.Ioi 0), RectangleIntegral' (f x) (-c - c * Complex.I - 1) (c + c * Complex.I - 1) = -x⁻¹
    theorem Perron.residuePull1 {x σ : } (x_gt_one : 1 < x) (σ_pos : 0 < σ) :
    VerticalIntegral' (f x) σ = 1 + VerticalIntegral' (f x) (-1 / 2)
    theorem Perron.residuePull2 {x : } (x_gt_one : 1 < x) :
    VerticalIntegral' (fun (s : ) => x ^ s / (s * (s + 1))) (-1 / 2) = -1 / x + VerticalIntegral' (fun (s : ) => x ^ s / (s * (s + 1))) (-3 / 2)
    theorem Perron.contourPull3 {x σ' σ'' : } (x_gt_one : 1 < x) (σ'le : σ' -3 / 2) (σ''le : σ'' -3 / 2) :
    VerticalIntegral' (fun (s : ) => x ^ s / (s * (s + 1))) σ' = VerticalIntegral' (fun (s : ) => x ^ s / (s * (s + 1))) σ''
    theorem Perron.formulaGtOne {x σ : } (x_gt_one : 1 < x) (σ_pos : 0 < σ) :
    VerticalIntegral' (fun (s : ) => x ^ s / (s * (s + 1))) σ = 1 - 1 / x