Documentation

PrimeNumberTheoremAnd.ZetaBounds

theorem div_cpow_eq_cpow_neg (a x s : ) :
a / x ^ s = a * x ^ (-s)
theorem one_div_cpow_eq_cpow_neg (x s : ) :
1 / x ^ s = x ^ (-s)
theorem div_rpow_eq_rpow_neg (a x s : ) (hx : 0 x) :
a / x ^ s = a * x ^ (-s)
theorem div_rpow_neg_eq_rpow_div {x y s : } (hx : 0 x) (hy : 0 y) :
x ^ (-s) / y ^ (-s) = (y / x) ^ s
theorem div_rpow_eq_rpow_div_neg {x y s : } (hx : 0 x) (hy : 0 y) :
x ^ s / y ^ s = (y / x) ^ (-s)
theorem ResidueOfTendsTo {f : } {p : } {U : Set } (hU : U nhds p) (hf : HolomorphicOn f (U \ {p})) {A : } (h_limit : Filter.Tendsto (fun (s : ) => (s - p) * f s) (nhdsWithin p {p}) (nhds A)) :
Vnhds p, BddAbove (norm (f - fun (s : ) => A * (s - p)⁻¹) '' (V \ {p}))
theorem analyticAt_riemannZeta {s : } (s_ne_one : s 1) :
theorem riemannZetaResidue :
Unhds 1, BddAbove (norm (riemannZeta - fun (s : ) => (s - 1)⁻¹) '' (U \ {1}))
theorem deriv_eqOn_of_eqOn_punctured (f g : ) (U : Set ) (p : ) (hU_open : IsOpen U) (h_eq : Set.EqOn f g (U \ {p})) :
Set.EqOn (deriv f) (deriv g) (U \ {p})
theorem analytic_deriv_bounded_near_point (f : ) {U : Set } {p : } (hU : IsOpen U) (hp : p U) (hf : HolomorphicOn f U) :
theorem map_inv_nhdsWithin_direct (h : ) (U : Set ) (p A : ) (A_ne_zero : A 0) :
Filter.map h (nhdsWithin p U) nhds AFilter.map (fun (x : ) => (h x)⁻¹) (nhdsWithin p U) nhds A⁻¹
theorem map_inv_nhdsWithin_direct_alt (h : ) (p A : ) (A_ne_zero : A 0) :
theorem expression_eq_zero (A x p : ) (h : x p) :
A - A * x * (x - p)⁻¹ + A * p * (x - p)⁻¹ = 0
theorem field_identity (f f' x p : ) (hf : f 0) (hp : x p) :
f' * f⁻¹ + (x - p)⁻¹ = (f + f' * (x - p)) * ((x - p)⁻¹ * f⁻¹)
theorem derivative_const_plus_product {g : } (A p x : ) (hg : DifferentiableAt g x) :
deriv ((fun (x : ) => A) + g * fun (s : ) => s - p) x = deriv g x * (x - p) + g x
theorem deriv_eq_of_eq (f g : ) (h : f = g) :
theorem deriv_inv_complex :
(deriv fun (z : ) => z⁻¹) = fun (x : ) => -(x ^ 2)⁻¹
theorem diff_translation (p : ) :
(deriv fun (x : ) => x - p) = fun (x : ) => 1
theorem deriv_inv_sub {x p : } (hp : x p) :
deriv (fun (z : ) => (z - p)⁻¹) x = -((x - p) ^ 2)⁻¹
theorem deriv_f_minus_A_inv_sub_clean (f : ) (A x p : ) (hf : DifferentiableAt f x) (hp : x p) :
deriv (f - fun (z : ) => A * (z - p)⁻¹) x = deriv f x + A * ((x - p) ^ 2)⁻¹
theorem laurent_expansion_identity_alt (f f' A x p : ) (h : x p) :
(f' + A * ((x - p) ^ 2)⁻¹) * (x - p) + (f - A * (x - p)⁻¹) = f + f' * (x - p)
theorem nonZeroOfBddAbove {f : } {p : } {U : Set } (U_in_nhds : U nhds p) {A : } (A_ne_zero : A 0) (f_near_p : BddAbove (norm (f - fun (s : ) => A * (s - p)⁻¹) '' (U \ {p}))) :
Vnhds p, IsOpen V sV \ {p}, f s 0
theorem logDerivResidue' {f : } {p : } {U : Set } (U_is_open : IsOpen U) (non_zero : xU \ {p}, f x 0) (holc : HolomorphicOn f (U \ {p})) (U_in_nhds : U nhds p) {A : } (A_ne_zero : A 0) (f_near_p : BddAbove (norm (f - fun (s : ) => A * (s - p)⁻¹) '' (U \ {p}))) :
(deriv f * f⁻¹ + fun (s : ) => (s - p)⁻¹) =O[nhdsWithin p {p}] 1
theorem logDerivResidue {f : } {p : } {U : Set } (non_zero : xU \ {p}, f x 0) (holc : HolomorphicOn f (U \ {p})) (U_in_nhds : U nhds p) {A : } (A_ne_zero : A 0) (f_near_p : BddAbove (norm (f - fun (s : ) => A * (s - p)⁻¹) '' (U \ {p}))) :
(deriv f * f⁻¹ + fun (s : ) => (s - p)⁻¹) =O[nhdsWithin p {p}] 1
theorem IsBigO_to_BddAbove {f : } {p : } (f_near_p : f =O[nhdsWithin p {p}] 1) :
Unhds p, BddAbove (norm f '' (U \ {p}))
theorem BddAbove_to_IsBigO {f : } {p : } {U : Set } (hU : U nhds p) (bdd : BddAbove (norm f '' (U \ {p}))) :
theorem logDerivResidue'' {f : } {p : } {U : Set } (non_zero : xU \ {p}, f x 0) (holc : HolomorphicOn f (U \ {p})) (U_in_nhds : U nhds p) {A : } (A_ne_zero : A 0) (f_near_p : BddAbove (norm (f - fun (s : ) => A * (s - p)⁻¹) '' (U \ {p}))) :
Vnhds p, BddAbove (norm (deriv f * f⁻¹ + fun (s : ) => (s - p)⁻¹) '' (V \ {p}))
theorem ResidueMult {f g : } {p : } {U : Set } (g_holc : HolomorphicOn g U) (U_in_nhds : U nhds p) {A : } (f_near_p : (f - fun (s : ) => A * (s - p)⁻¹) =O[nhdsWithin p {p}] 1) :
(f * g - fun (s : ) => A * g p * (s - p)⁻¹) =O[nhdsWithin p {p}] 1
theorem riemannZetaLogDerivResidue :
Unhds 1, BddAbove (norm (-(deriv riemannZeta / riemannZeta) - fun (s : ) => (s - 1)⁻¹) '' (U \ {1}))
noncomputable def riemannZeta0 (N : ) (s : ) :
Equations
Instances For

    We use ζ to denote the Rieman zeta function and ζ₀ to denote the alternative Rieman zeta function..

    Equations
    Instances For
      theorem riemannZeta0_apply (N : ) (s : ) :
      riemannZeta0 N s = nFinset.range (N + 1), 1 / n ^ s + (-N ^ (1 - s) / (1 - s) + -N ^ (-s) / 2 + s * (x : ) in Set.Ioi N, (x + 1 / 2 - x) * x ^ (-(s + 1)))
      theorem Real.differentiableAt_cpow_const_of_ne (s : ) {x : } (xpos : 0 < x) :
      DifferentiableAt (fun (x : ) => x ^ s) x
      theorem Complex.one_div_cpow_eq {s : } {x : } (x_ne : x 0) :
      1 / x ^ s = x ^ (-s)
      theorem ContDiffOn.hasDeriv_deriv {φ : } {s : Set } (φDiff : ContDiffOn 1 φ s) {x : } (x_in_s : s nhds x) :
      HasDerivAt φ (deriv φ x) x
      theorem ContDiffOn.continuousOn_deriv {φ : } {a b : } (φDiff : ContDiffOn 1 φ (Set.uIoo a b)) :
      theorem LinearDerivative_ofReal (x : ) (a b : ) :
      HasDerivAt (fun (t : ) => a * t + b) a x
      theorem integral_deriv_mul_eq_sub' {A : Type u_1} [NormedRing A] [NormedAlgebra A] [CompleteSpace A] {a b : } {u v u' v' : A} (hu : xSet.uIcc a b, HasDerivWithinAt u (u' x) (Set.uIcc a b) x) (hv : xSet.uIcc a b, HasDerivWithinAt v (v' x) (Set.uIcc a b) x) (hu' : IntervalIntegrable u' MeasureTheory.volume a b) (hv' : IntervalIntegrable v' MeasureTheory.volume a b) :
      (x : ) in a..b, u' x * v x + u x * v' x = u b * v b - u a * v a
      theorem sum_eq_int_deriv_aux2 {φ : } {a b : } (c : ) (φDiff : xSet.uIcc a b, HasDerivAt φ (deriv φ x) x) (derivφCont : ContinuousOn (deriv φ) (Set.uIcc a b)) :
      (x : ) in a..b, (c - x) * deriv φ x = (c - b) * φ b - (c - a) * φ a + (x : ) in a..b, φ x
      theorem sum_eq_int_deriv_aux_eq {φ : } {a b : } {k : } (b_eq_kpOne : b = k + 1) (φDiff : xSet.uIcc a b, HasDerivAt φ (deriv φ x) x) (derivφCont : ContinuousOn (deriv φ) (Set.uIcc a b)) :
      nFinset.Ioc k b, φ n = ( (x : ) in a..b, φ x) + (b + 1 / 2 - b) * φ b - (k + 1 / 2 - a) * φ a - (x : ) in a..b, (k + 1 / 2 - x) * deriv φ x
      theorem sum_eq_int_deriv_aux_lt {φ : } {a b : } {k : } (ha : a Set.Ico (↑k) b) (b_lt_kpOne : b < k + 1) (φDiff : xSet.uIcc a b, HasDerivAt φ (deriv φ x) x) (derivφCont : ContinuousOn (deriv φ) (Set.uIcc a b)) :
      nFinset.Ioc k b, φ n = ( (x : ) in a..b, φ x) + (b + 1 / 2 - b) * φ b - (k + 1 / 2 - a) * φ a - (x : ) in a..b, (k + 1 / 2 - x) * deriv φ x
      theorem sum_eq_int_deriv_aux1 {φ : } {a b : } {k : } (ha : a Set.Ico (↑k) b) (b_le_kpOne : b k + 1) (φDiff : xSet.uIcc a b, HasDerivAt φ (deriv φ x) x) (derivφCont : ContinuousOn (deriv φ) (Set.uIcc a b)) :
      nFinset.Ioc k b, φ n = ( (x : ) in a..b, φ x) + (b + 1 / 2 - b) * φ b - (k + 1 / 2 - a) * φ a - (x : ) in a..b, (k + 1 / 2 - x) * deriv φ x
      theorem sum_eq_int_deriv_aux {φ : } {a b : } {k : } (ha : a Set.Ico (↑k) b) (b_le_kpOne : b k + 1) (φDiff : xSet.uIcc a b, HasDerivAt φ (deriv φ x) x) (derivφCont : ContinuousOn (deriv φ) (Set.uIcc a b)) :
      nFinset.Ioc a b, φ n = ( (x : ) in a..b, φ x) + (b + 1 / 2 - b) * φ b - (a + 1 / 2 - a) * φ a - (x : ) in a..b, (x + 1 / 2 - x) * deriv φ x
      theorem interval_induction_aux_int (n : ) (P : Prop) :
      (∀ (a b : ) (k : ), k aa < bb k + 1P a b)(∀ (a : ) (k : ) (c : ), a < kk < cP a kP (↑k) cP a c)∀ (a b : ), a < bn = b - aP a b
      theorem interval_induction (P : Prop) (base : ∀ (a b : ) (k : ), k aa < bb k + 1P a b) (step : ∀ (a : ) (k : ) (b : ), a < kk < bP a kP (↑k) bP a b) (a b : ) (hab : a < b) :
      P a b
      theorem Finset.Ioc_diff_Ioc {α : Type u_1} [LinearOrder α] [LocallyFiniteOrder α] {a b c : α} [DecidableEq α] (hb : b Icc a c) :
      Ioc a b = Ioc a c \ Ioc b c

      ** Partial summation ** (TODO : Add to Mathlib).

      theorem Finset.sum_Ioc_add_sum_Ioc {a b c : } (f : ) (hb : b Icc a c) :
      nIoc a b, f n + nIoc b c, f n = nIoc a c, f n
      theorem integrability_aux₂ {a b : } :
      IntervalIntegrable (fun (x : ) => 1 / 2 - x) MeasureTheory.volume a b
      theorem integrability_aux {a b : } :
      IntervalIntegrable (fun (x : ) => x + 1 / 2 - x) MeasureTheory.volume a b
      theorem uIcc_subsets {a b c : } (hc : c Set.Icc a b) :
      theorem sum_eq_int_deriv {φ : } {a b : } (a_lt_b : a < b) (φDiff : xSet.uIcc a b, HasDerivAt φ (deriv φ x) x) (derivφCont : ContinuousOn (deriv φ) (Set.uIcc a b)) :
      nFinset.Ioc a b, φ n = ( (x : ) in a..b, φ x) + (b + 1 / 2 - b) * φ b - (a + 1 / 2 - a) * φ a - (x : ) in a..b, (x + 1 / 2 - x) * deriv φ x
      theorem xpos_of_uIcc {a b : } (ha : a Set.Ioo 0 b) {x : } (x_in : x Set.uIcc a b) :
      0 < x
      theorem neg_s_ne_neg_one {s : } (s_ne_one : s 1) :
      -s -1
      theorem ZetaSum_aux1₁ {a b : } {s : } (s_ne_one : s 1) (ha : a Set.Ioo 0 b) :
      (x : ) in a..b, 1 / x ^ s = (b ^ (1 - s) - a ^ (1 - s)) / (1 - s)
      theorem ZetaSum_aux1φDiff {s : } {x : } (xpos : 0 < x) :
      HasDerivAt (fun (t : ) => 1 / t ^ s) (deriv (fun (t : ) => 1 / t ^ s) x) x
      theorem ZetaSum_aux1φderiv {s : } (s_ne_zero : s 0) {x : } (xpos : 0 < x) :
      deriv (fun (t : ) => 1 / t ^ s) x = (fun (x : ) => -s * x ^ (-(s + 1))) x
      theorem ZetaSum_aux1derivφCont {s : } (s_ne_zero : s 0) {a b : } (ha : a Set.Ioo 0 b) :
      ContinuousOn (deriv fun (t : ) => 1 / t ^ s) (Set.uIcc a b)
      theorem ZetaSum_aux1 {a b : } {s : } (s_ne_one : s 1) (s_ne_zero : s 0) (ha : a Set.Ioo 0 b) :
      nFinset.Ioc a b, 1 / n ^ s = (b ^ (1 - s) - a ^ (1 - s)) / (1 - s) + 1 / 2 * (1 / b ^ s) - 1 / 2 * (1 / a ^ s) + s * (x : ) in a..b, (x + 1 / 2 - x) * x ^ (-(s + 1))
      theorem ZetaSum_aux1_1' {a b x : } (apos : 0 < a) (hx : x Set.Icc a b) :
      0 < x
      theorem ZetaSum_aux1_1 {a b x : } (apos : 0 < a) (a_lt_b : a < b) (hx : x Set.uIcc a b) :
      0 < x
      theorem ZetaSum_aux1_2 {a b c : } (apos : 0 < a) (a_lt_b : a < b) (h : c 0 0Set.uIcc a b) :
      (x : ) in a..b, 1 / x ^ (c + 1) = (a ^ (-c) - b ^ (-c)) / c
      theorem ZetaSum_aux1_3a (x : ) :
      -(1 / 2) < x + 1 / 2 - x
      theorem ZetaSum_aux1_3b (x : ) :
      x + 1 / 2 - x 1 / 2
      theorem ZetaSum_aux1_3 (x : ) :
      x + 1 / 2 - x 1 / 2
      theorem ZetaSum_aux1_4' (x : ) (hx : 0 < x) (s : ) :
      (x + 1 / 2 - x) / x ^ (s + 1) = x + 1 / 2 - x / x ^ (s + 1).re
      theorem ZetaSum_aux1_4 {a b : } (apos : 0 < a) (a_lt_b : a < b) {s : } :
      (x : ) in a..b, (x + 1 / 2 - x) / x ^ (s + 1) = (x : ) in a..b, |x + 1 / 2 - x| / x ^ (s + 1).re
      theorem ZetaSum_aux1_5a {a b : } (apos : 0 < a) {s : } (x : ) (h : x Set.Icc a b) :
      |x + 1 / 2 - x| / x ^ (s.re + 1) 1 / x ^ (s.re + 1)
      theorem ZetaSum_aux1_5b {a b : } (apos : 0 < a) (a_lt_b : a < b) {s : } (σpos : 0 < s.re) :
      IntervalIntegrable (fun (u : ) => 1 / u ^ (s.re + 1)) MeasureTheory.volume a b
      theorem measurable_floor_add_half_sub :
      Measurable fun (u : ) => u + 1 / 2 - u
      theorem ZetaSum_aux1_5c {a b : } {s : } :
      let g := fun (u : ) => |u + 1 / 2 - u| / u ^ (s.re + 1); MeasureTheory.AEStronglyMeasurable g (MeasureTheory.volume.restrict (Set.uIoc a b))
      theorem ZetaSum_aux1_5d {a b : } (apos : 0 < a) (a_lt_b : a < b) {s : } (σpos : 0 < s.re) :
      IntervalIntegrable (fun (u : ) => |u + 1 / 2 - u| / u ^ (s.re + 1)) MeasureTheory.volume a b
      theorem ZetaSum_aux1_5 {a b : } (apos : 0 < a) (a_lt_b : a < b) {s : } (σpos : 0 < s.re) :
      (x : ) in a..b, |x + 1 / 2 - x| / x ^ (s.re + 1) (x : ) in a..b, 1 / x ^ (s.re + 1)
      theorem ZetaBnd_aux1a {a b : } (apos : 0 < a) (a_lt_b : a < b) {s : } (σpos : 0 < s.re) :
      (x : ) in a..b, (x + 1 / 2 - x) / x ^ (s + 1) (a ^ (-s.re) - b ^ (-s.re)) / s.re
      theorem tsum_eq_partial_add_tail {N : } (f : ) (hf : Summable f) :
      ∑' (n : ), f n = nFinset.range N, f n + ∑' (n : ), f (n + N)
      theorem Finset.Ioc_eq_Ico (M N : ) :
      Ioc N M = Ico (N + 1) (M + 1)
      theorem Finset.Ioc_eq_Icc (M N : ) :
      Ioc N M = Icc (N + 1) M
      theorem Finset.Icc_eq_Ico (M N : ) :
      Icc N M = Ico N (M + 1)
      theorem finsetSum_tendsto_tsum {N : } {f : } (hf : Summable f) :
      Filter.Tendsto (fun (k : ) => nFinset.Ico N k, f n) Filter.atTop (nhds (∑' (n : ), f (n + N)))
      theorem Summable_rpow {s : } (s_re_gt : 1 < s.re) :
      Summable fun (n : ) => 1 / n ^ s
      theorem Finset_coe_Nat_Int (f : ) (m n : ) :
      xFinset.Ioc m n, f x = xFinset.Ioc m n, f x
      theorem Complex.cpow_tendsto {s : } (s_re_gt : 1 < s.re) :
      Filter.Tendsto (fun (x : ) => x ^ (1 - s)) Filter.atTop (nhds 0)
      theorem Complex.cpow_inv_tendsto {s : } (hs : 0 < s.re) :
      Filter.Tendsto (fun (x : ) => (x ^ s)⁻¹) Filter.atTop (nhds 0)
      theorem ZetaSum_aux2a :
      ∃ (C : ), ∀ (x : ), x + 1 / 2 - x C
      theorem ZetaSum_aux3 {N : } {s : } (s_re_gt : 1 < s.re) :
      Filter.Tendsto (fun (k : ) => nFinset.Ioc N k, 1 / n ^ s) Filter.atTop (nhds (∑' (n : ), 1 / (n + N + 1) ^ s))
      theorem integrableOn_of_Zeta0_fun {N : } (N_pos : 0 < N) {s : } (s_re_gt : 0 < s.re) :
      MeasureTheory.IntegrableOn (fun (x : ) => (x + 1 / 2 - x) * x ^ (-(s + 1))) (Set.Ioi N) MeasureTheory.volume
      theorem ZetaSum_aux2 {N : } (N_pos : 0 < N) {s : } (s_re_gt : 1 < s.re) :
      ∑' (n : ), 1 / (n + N + 1) ^ s = -N ^ (1 - s) / (1 - s) - N ^ (-s) / 2 + s * (x : ) in Set.Ioi N, (x + 1 / 2 - x) * x ^ (-(s + 1))
      theorem ZetaBnd_aux1b (N : ) (Npos : 1 N) {σ t : } (σpos : 0 < σ) :
      (x : ) in Set.Ioi N, (x + 1 / 2 - x) / x ^ (σ + t * Complex.I + 1) N ^ (-σ) / σ
      theorem ZetaBnd_aux1 (N : ) (Npos : 1 N) {σ t : } ( : σ Set.Ioc 0 2) (ht : 2 |t|) :
      (σ + t * Complex.I) * (x : ) in Set.Ioi N, (x + 1 / 2 - x) / x ^ (σ + t * Complex.I + 1) 2 * |t| * N ^ (-σ) / σ
      theorem ZetaBnd_aux1p (N : ) (Npos : 1 N) {σ : } ( : σ Set.Ioc 0 2) :
      (fun (t : ) => (σ + t * Complex.I) * (x : ) in Set.Ioi N, (x + 1 / 2 - x) / x ^ (σ + t * Complex.I + 1)) =O[Filter.principal {t : | 2 |t|}] fun (t : ) => |t| * N ^ (-σ) / σ
      theorem isOpen_aux :
      IsOpen {z : | z 1 0 < z.re}
      theorem integrable_log_over_pow {r : } (rneg : r < 0) {N : } (Npos : 0 < N) :
      theorem integrableOn_of_Zeta0_fun_log {N : } (Npos : 0 < N) {s : } (s_re_gt : 0 < s.re) :
      MeasureTheory.IntegrableOn (fun (x : ) => (x + 1 / 2 - x) * x ^ (-(s + 1)) * -(Real.log x)) (Set.Ioi N) MeasureTheory.volume
      theorem hasDerivAt_Zeta0Integral {N : } (Npos : 0 < N) {s : } (hs : s {s : | 0 < s.re}) :
      HasDerivAt (fun (z : ) => (x : ) in Set.Ioi N, (x + 1 / 2 - x) * x ^ (-z - 1)) ( (x : ) in Set.Ioi N, (x + 1 / 2 - x) * x ^ (-s - 1) * -(Real.log x)) s
      noncomputable def ζ₀' (N : ) (s : ) :
      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        theorem HasDerivAt_neg_cpow_over2 {N : } (Npos : 0 < N) (s : ) :
        HasDerivAt (fun (x : ) => -N ^ (-x) / 2) (-(-(Real.log N) * N ^ (-s)) / 2) s
        theorem HasDerivAt_cpow_over_var (N : ) {z : } (z_ne_zero : z 0) :
        HasDerivAt (fun (z : ) => -N ^ z / z) (N ^ z / z ^ 2 - (Real.log N) * N ^ z / z) z
        theorem HasDerivAtZeta0 {N : } (Npos : 0 < N) {s : } (reS_pos : 0 < s.re) (s_ne_one : s 1) :
        theorem HolomorphicOn_riemannZeta0 {N : } (N_pos : 0 < N) :
        theorem Zeta0EqZeta {N : } (N_pos : 0 < N) {s : } (reS_pos : 0 < s.re) (s_ne_one : s 1) :
        theorem DerivZeta0EqDerivZeta {N : } (N_pos : 0 < N) {s : } (reS_pos : 0 < s.re) (s_ne_one : s 1) :
        theorem le_trans₄ {α : Type u_1} [Preorder α] {a b c d : α} :
        a bb cc da d
        theorem lt_trans₄ {α : Type u_1} [Preorder α] {a b c d : α} :
        a < bb < cc < da < d
        theorem norm_add₄_le {E : Type u_1} [SeminormedAddGroup E] (a b c d : E) :
        theorem norm_add₅_le {E : Type u_1} [SeminormedAddGroup E] (a b c d e : E) :
        theorem norm_add₆_le {E : Type u_1} [SeminormedAddGroup E] (a b c d e f : E) :
        theorem add_le_add_le_add {α : Type u_1} [Add α] [Preorder α] [CovariantClass α α (fun (x x_1 : α) => x + x_1) fun (x x_1 : α) => x x_1] [CovariantClass α α (Function.swap fun (x x_1 : α) => x + x_1) fun (x x_1 : α) => x x_1] {a b c d e f : α} (h₁ : a b) (h₂ : c d) (h₃ : e f) :
        a + c + e b + d + f
        theorem add_le_add_le_add_le_add {α : Type u_1} [Add α] [Preorder α] [CovariantClass α α (fun (x x_1 : α) => x + x_1) fun (x x_1 : α) => x x_1] [CovariantClass α α (Function.swap fun (x x_1 : α) => x + x_1) fun (x x_1 : α) => x x_1] {a b c d e f g h : α} (h₁ : a b) (h₂ : c d) (h₃ : e f) (h₄ : g h) :
        a + c + e + g b + d + f + h
        theorem mul_le_mul₃ {α : Type u_1} {a b c d e f : α} [MulZeroClass α] [Preorder α] [PosMulMono α] [MulPosMono α] (h₁ : a b) (h₂ : c d) (h₃ : e f) (c0 : 0 c) (b0 : 0 b) (e0 : 0 e) :
        a * c * e b * d * f
        theorem ZetaBnd_aux2 {n : } {t A σ : } (Apos : 0 < A) (σpos : 0 < σ) (n_le_t : n |t|) (σ_ge : 1 - A / Real.log |t| σ) :
        n ^ (-(σ + t * Complex.I)) (↑n)⁻¹ * Real.exp A
        theorem logt_gt_one {t : } (t_ge : 3 < |t|) :
        theorem UpperBnd_aux {A σ t : } (hA : A Set.Ioc 0 (1 / 2)) (t_gt : 3 < |t|) (σ_ge : 1 - A / Real.log |t| σ) :
        let N := |t|⌋₊; 0 < N N |t| 1 < Real.log |t| 1 - A < σ 0 < σ σ + t * Complex.I 1
        theorem UpperBnd_aux2 {A σ t : } (t_ge : 3 < |t|) (σ_ge : 1 - A / Real.log |t| σ) :
        |t| ^ (1 - σ) Real.exp A
        theorem riemannZeta0_zero_aux (N : ) (Npos : 0 < N) :
        xFinset.Ico 0 N, (↑x)⁻¹ = xFinset.Ico 1 N, (↑x)⁻¹
        theorem UpperBnd_aux3 {A C σ t : } (hA : A Set.Ioc 0 (1 / 2)) (σ_ge : 1 - A / Real.log |t| σ) (t_gt : 3 < |t|) (hC : 2 C) :
        let N := |t|⌋₊; nFinset.range (N + 1), n ^ (-(σ + t * Complex.I)) Real.exp A * C * Real.log |t|
        theorem Nat.self_div_floor_bound {t : } (t_ge : 1 |t|) :
        let N := |t|⌋₊; |t| / N Set.Icc 1 2
        theorem UpperBnd_aux5 {σ t : } (t_ge : 3 < |t|) (σ_le : σ 2) :
        (|t| / |t|⌋₊) ^ σ 4
        theorem UpperBnd_aux6 {σ t : } (t_ge : 3 < |t|) ( : σ Set.Ioc (1 / 2) 2) (neOne : σ + t * Complex.I 1) (Npos : 0 < |t|⌋₊) (N_le_t : |t|⌋₊ |t|) :
        |t|⌋₊ ^ (1 - σ) / 1 - (σ + t * Complex.I) |t| ^ (1 - σ) * 2 |t|⌋₊ ^ (-σ) / 2 |t| ^ (1 - σ) |t|⌋₊ ^ (-σ) / σ 8 * |t| ^ (-σ)
        theorem ZetaUpperBnd' {A σ t : } (hA : A Set.Ioc 0 (1 / 2)) (t_gt : 3 < |t|) ( : σ Set.Icc (1 - A / Real.log |t|) 2) :
        let C := Real.exp A * (5 + 8 * 2); let N := |t|⌋₊; let s := σ + t * Complex.I; nFinset.range (N + 1), 1 / n ^ s + N ^ (1 - s) / (1 - s) + N ^ (-s) / 2 + s * (x : ) in Set.Ioi N, (x + 1 / 2 - x) / x ^ (s + 1) C * Real.log |t|
        theorem ZetaUpperBnd :
        ∃ (A : ) (_ : A Set.Ioc 0 (1 / 2)) (C : ) (_ : 0 < C), ∀ (σ t : ), 3 < |t|σ Set.Icc (1 - A / Real.log |t|) 2riemannZeta (σ + t * Complex.I) C * Real.log |t|
        theorem Real.log_natCast_monotone :
        Monotone fun (n : ) => log n
        theorem Finset.Icc0_eq (N : ) :
        Icc 0 N = {0} Icc 1 N
        theorem harmonic_eq_sum_Icc0_aux (N : ) :
        iFinset.Icc 0 N, (↑i)⁻¹ = iFinset.Icc 1 N, (↑i)⁻¹
        theorem harmonic_eq_sum_Icc0 (N : ) :
        iFinset.Icc 0 N, (↑i)⁻¹ = (harmonic N)
        theorem DerivUpperBnd_aux1 {A C σ t : } (hA : A Set.Ioc 0 (1 / 2)) (σ_ge : 1 - A / Real.log |t| σ) (t_gt : 3 < |t|) (hC : 2 C) :
        let N := |t|⌋₊; nFinset.range (N + 1), -1 / n ^ (σ + t * Complex.I) * (Real.log n) Real.exp A * C * Real.log |t| ^ 2
        theorem DerivUpperBnd_aux2 {A σ t : } (t_gt : 3 < |t|) ( : σ Set.Icc (1 - A / Real.log |t|) 2) :
        let N := |t|⌋₊; let s := σ + t * Complex.I; 0 < NN |t|s 11 / 2 < σ-N ^ (1 - s) / (1 - s) ^ 2 Real.exp A * 2 * (1 / 3)
        theorem DerivUpperBnd_aux3 {A σ t : } (t_gt : 3 < |t|) ( : σ Set.Icc (1 - A / Real.log |t|) 2) :
        let N := |t|⌋₊; let s := σ + t * Complex.I; 0 < NN |t|s 11 / 2 < σ(Real.log N) * N ^ (1 - s) / (1 - s) Real.exp A * 2 * Real.log |t|
        theorem DerivUpperBnd_aux4 {A σ t : } (t_gt : 3 < |t|) ( : σ Set.Icc (1 - A / Real.log |t|) 2) :
        let N := |t|⌋₊; let s := σ + t * Complex.I; 0 < NN |t|s 11 / 2 < σ(Real.log N) * N ^ (-s) / 2 Real.exp A * Real.log |t|
        theorem DerivUpperBnd_aux5 {A σ t : } (t_gt : 3 < |t|) ( : σ Set.Icc (1 - A / Real.log |t|) 2) :
        let N := |t|⌋₊; let s := σ + t * Complex.I; 0 < N1 / 2 < σ1 * (x : ) in Set.Ioi N, (x + 1 / 2 - x) * x ^ (-s - 1) 1 / 3 * (2 * |t| * N ^ (-σ) / σ)
        theorem DerivUpperBnd_aux6 {A σ t : } (t_gt : 3 < |t|) ( : σ Set.Icc (1 - A / Real.log |t|) 2) :
        let N := |t|⌋₊; 0 < NN |t|σ + t * Complex.I 11 / 2 < σ2 * |t| * N ^ (-σ) / σ 2 * (8 * Real.exp A)
        theorem DerivUpperBnd_aux7_1 {x σ t : } (hx : 1 x) :
        let s := σ + t * Complex.I; (x + 1 / 2 - x) * x ^ (-s - 1) * -(Real.log x) = |x + 1 / 2 - x| * x ^ (-σ - 1) * Real.log x
        theorem DerivUpperBnd_aux7_2 {x σ : } (hx : 1 x) :
        |x + 1 / 2 - x| * x ^ (-σ - 1) * Real.log x x ^ (-σ - 1) * Real.log x
        theorem DerivUpperBnd_aux7_3 {x σ : } (xpos : 0 < x) (σnz : σ 0) :
        HasDerivAt (fun (t : ) => -(1 / σ ^ 2 * t ^ (-σ) + 1 / σ * t ^ (-σ) * Real.log t)) (x ^ (-σ - 1) * Real.log x) x
        theorem DerivUpperBnd_aux7_3' {a σ : } (apos : 0 < a) (σnz : σ 0) (x : ) :
        x Set.Ici aHasDerivAt (fun (t : ) => -(1 / σ ^ 2 * t ^ (-σ) + 1 / σ * t ^ (-σ) * Real.log t)) (x ^ (-σ - 1) * Real.log x) x
        theorem DerivUpperBnd_aux7_nonneg {a σ : } (ha : 1 a) (x : ) :
        x Set.Ioi a0 x ^ (-σ - 1) * Real.log x
        theorem DerivUpperBnd_aux7_tendsto {σ : } (σpos : 0 < σ) :
        Filter.Tendsto (fun (t : ) => -(1 / σ ^ 2 * t ^ (-σ) + 1 / σ * t ^ (-σ) * Real.log t)) Filter.atTop (nhds 0)
        theorem DerivUpperBnd_aux7_4 {a σ : } (σpos : 0 < σ) (ha : 1 a) :
        theorem DerivUpperBnd_aux7_5 {a σ : } (σpos : 0 < σ) (ha : 1 a) :
        MeasureTheory.IntegrableOn (fun (x : ) => |x + 1 / 2 - x| * x ^ (-σ - 1) * Real.log x) (Set.Ioi a) MeasureTheory.volume
        theorem DerivUpperBnd_aux7_integral_eq {a σ : } (ha : 1 a) (σpos : 0 < σ) :
        (x : ) in Set.Ioi a, x ^ (-σ - 1) * Real.log x = 1 / σ ^ 2 * a ^ (-σ) + 1 / σ * a ^ (-σ) * Real.log a
        theorem DerivUpperBnd_aux7 {A σ t : } (t_gt : 3 < |t|) ( : σ Set.Icc (1 - A / Real.log |t|) 2) :
        let N := |t|⌋₊; let s := σ + t * Complex.I; 0 < NN |t|s 11 / 2 < σs * (x : ) in Set.Ioi N, (x + 1 / 2 - x) * x ^ (-s - 1) * -(Real.log x) 6 * |t| * N ^ (-σ) / σ * Real.log |t|
        theorem ZetaDerivUpperBnd' {A σ t : } (hA : A Set.Ioc 0 (1 / 2)) (t_gt : 3 < |t|) ( : σ Set.Icc (1 - A / Real.log |t|) 2) :
        let C := Real.exp A * 59; let N := |t|⌋₊; let s := σ + t * Complex.I; nFinset.range (N + 1), -1 / n ^ s * (Real.log n) + -N ^ (1 - s) / (1 - s) ^ 2 + (Real.log N) * N ^ (1 - s) / (1 - s) + (Real.log N) * N ^ (-s) / 2 + 1 * (x : ) in Set.Ioi N, (x + 1 / 2 - x) * x ^ (-s - 1) + s * (x : ) in Set.Ioi N, (x + 1 / 2 - x) * x ^ (-s - 1) * -(Real.log x) C * Real.log |t| ^ 2
        theorem ZetaDerivUpperBnd :
        ∃ (A : ) (_ : A Set.Ioc 0 (1 / 2)) (C : ) (_ : 0 < C), ∀ (σ t : ), 3 < |t|σ Set.Icc (1 - A / Real.log |t|) 2deriv riemannZeta (σ + t * Complex.I) C * Real.log |t| ^ 2
        theorem Tendsto_nhdsWithin_punctured_map_add {f : } (a x : ) (f_mono : StrictMono f) (f_iso : Isometry f) :
        Filter.Tendsto (fun (y : ) => f y + a) (nhdsWithin x (Set.Ioi x)) (nhdsWithin (f x + a) (Set.Ioi (f x + a)))
        theorem Tendsto_nhdsWithin_punctured_add (a x : ) :
        Filter.Tendsto (fun (y : ) => y + a) (nhdsWithin x (Set.Ioi x)) (nhdsWithin (x + a) (Set.Ioi (x + a)))
        theorem riemannZeta_isBigO_near_one_horizontal :
        (fun (x : ) => riemannZeta (1 + x)) =O[nhdsWithin 0 (Set.Ioi 0)] fun (x : ) => 1 / x
        theorem ZetaNear1BndFilter :
        (fun (σ : ) => riemannZeta σ) =O[nhdsWithin 1 (Set.Ioi 1)] fun (σ : ) => 1 / (σ - 1)
        theorem ZetaNear1BndExact :
        ∃ (c : ) (_ : 0 < c), σSet.Ioc 1 2, riemannZeta σ c / (σ - 1)
        theorem norm_zeta_product_ge_one {x : } (hx : 0 < x) (y : ) :
        riemannZeta (1 + x) ^ 3 * riemannZeta (1 + x + Complex.I * y) ^ 4 * riemannZeta (1 + x + 2 * Complex.I * y) 1

        For positive x and nonzero y we have that $|\zeta(x)^3 \cdot \zeta(x+iy)^4 \cdot \zeta(x+2iy)| \ge 1$.

        theorem ZetaLowerBound1_aux1 {σ t : } (this : 1 riemannZeta σ ^ 3 * riemannZeta (σ + Complex.I * t) ^ 4 * riemannZeta (σ + 2 * Complex.I * t)) :
        riemannZeta σ ^ (3 / 4) * riemannZeta (σ + 2 * t * Complex.I) ^ (1 / 4) * riemannZeta (σ + t * Complex.I) 1
        theorem ZetaLowerBound1 {σ t : } (σ_gt : 1 < σ) :
        riemannZeta σ ^ (3 / 4) * riemannZeta (σ + 2 * t * Complex.I) ^ (1 / 4) * riemannZeta (σ + t * Complex.I) 1
        theorem ZetaLowerBound2 {σ t : } (σ_gt : 1 < σ) :
        1 / (riemannZeta σ ^ (3 / 4) * riemannZeta (σ + 2 * t * Complex.I) ^ (1 / 4)) riemannZeta (σ + t * Complex.I)
        theorem ZetaLowerBound3_aux1 (A : ) (ha : A Set.Ioc 0 (1 / 2)) (t : ) (ht_2 : 3 < |2 * t|) :
        0 < A / Real.log |2 * t|
        theorem ZetaLowerBound3_aux2 {C σ t : } (ζ_2t_bound : riemannZeta (σ + 2 * t * Complex.I) C * Real.log |2 * t|) :
        riemannZeta (σ + 2 * t * Complex.I) ^ (1 / 4) (C * Real.log |2 * t|) ^ (1 / 4)
        theorem ZetaLowerBound3_aux3 {A : } :
        0 < A∀ {C : }, 0 < C∀ {c_near : }, 0 < c_near∀ (σ t : ), 3 < |t|∀ (σ_gt : 1 < σ), c_near ^ (3 / 4) * ((-1 + σ) ^ (3 / 4))⁻¹ * C ^ (1 / 4) * Real.log |t * 2| ^ (1 / 4) = c_near ^ (3 / 4) * C ^ (1 / 4) * Real.log |t * 2| ^ (1 / 4) * (-1 + σ) ^ (-3 / 4)
        theorem ZetaLowerBound3_aux4 (A : ) :
        A Set.Ioc 0 (1 / 2)∀ (C : ) (hC : 0 < C) (c_near : ) (hc_near : 0 < c_near) {σ : } (t : ) (ht : 3 < |t|) (σ_gt : 1 < σ), 0 < c_near ^ (3 / 4) * (σ - 1) ^ (-3 / 4) * C ^ (1 / 4) * Real.log |2 * t| ^ (1 / 4)
        theorem ZetaLowerBound3_aux5 {σ : } (t : ) (this : riemannZeta σ ^ (3 / 4) * riemannZeta (σ + 2 * t * Complex.I) ^ (1 / 4) * riemannZeta (σ + t * Complex.I) 1) :
        0 < riemannZeta σ ^ (3 / 4) * riemannZeta (σ + 2 * t * Complex.I) ^ (1 / 4)
        theorem ZetaLowerBound3 :
        c > 0, ∀ {σ : }, σ Set.Ioc 1 2∀ (t : ), 3 < |t|c * (σ - 1) ^ (3 / 4) / Real.log |t| ^ (1 / 4) riemannZeta (σ + t * Complex.I)
        theorem ZetaInvBound1 {σ t : } (σ_gt : 1 < σ) :
        1 / riemannZeta (σ + t * Complex.I) riemannZeta σ ^ (3 / 4) * riemannZeta (σ + 2 * t * Complex.I) ^ (1 / 4)
        theorem ZetaInvBound2 :
        C > 0, ∀ {σ : }, σ Set.Ioc 1 2∀ (t : ), 3 < |t|1 / riemannZeta (σ + t * Complex.I) C * (σ - 1) ^ (-3 / 4) * Real.log |t| ^ (1 / 4)
        theorem deriv_fun_re {t : } {f : } (diff : ∀ (σ : ), DifferentiableAt f (σ + t * Complex.I)) :
        (deriv fun {σ₂ : } => f (σ₂ + t * Complex.I)) = fun (σ : ) => deriv f (σ + t * Complex.I)
        theorem Zeta_eq_int_derivZeta {σ₁ σ₂ t : } (t_ne_zero : t 0) :
        (σ : ) in σ₁..σ₂, deriv riemannZeta (σ + t * Complex.I) = riemannZeta (σ₂ + t * Complex.I) - riemannZeta (σ₁ + t * Complex.I)
        theorem Zeta_diff_Bnd :
        ∃ (A : ) (_ : A Set.Ioc 0 (1 / 2)) (C : ) (_ : 0 < C), ∀ (σ₁ σ₂ t : ), 3 < |t|1 - A / Real.log |t| σ₁σ₂ 2σ₁ < σ₂riemannZeta (σ₂ + t * Complex.I) - riemannZeta (σ₁ + t * Complex.I) C * Real.log |t| ^ 2 * (σ₂ - σ₁)
        theorem ZetaInvBnd_aux' {t : } (logt_gt_one : 1 < Real.log |t|) :
        theorem ZetaInvBnd_aux {t : } (logt_gt_one : 1 < Real.log |t|) :
        theorem ZetaInvBnd_aux2 {A C₁ C₂ : } (Apos : 0 < A) (C₁pos : 0 < C₁) (C₂pos : 0 < C₂) (hA : A 1 / 2 * (C₁ / (C₂ * 2)) ^ 4) :
        0 < (C₁ * A ^ (3 / 4) - C₂ * 2 * A)⁻¹
        theorem ZetaInvBnd :
        ∃ (A : ) (_ : A Set.Ioc 0 (1 / 2)) (C : ) (_ : 0 < C), ∀ (σ t : ), 3 < |t|σ Set.Ico (1 - A / Real.log |t| ^ 9) 11 / riemannZeta (σ + t * Complex.I) C * Real.log |t| ^ 7
        theorem ZetaInvBnd' :
        ∃ (A : ) (_ : A Set.Ioc 0 (1 / 2)) (C : ) (_ : 0 < C), ∀ (σ t : ), 3 < |t|σ Set.Ico (1 - A / Real.log |t| ^ 9) (1 + A / Real.log |t| ^ 9)1 / riemannZeta (σ + t * Complex.I) C * Real.log |t| ^ 7
        theorem ZetaLowerBnd :
        ∃ (A : ) (_ : A Set.Ioc 0 (1 / 2)) (c : ) (_ : 0 < c), ∀ (σ t : ), 3 < |t|σ Set.Ico (1 - A / Real.log |t| ^ 9) 1c / Real.log |t| ^ 7 riemannZeta (σ + t * Complex.I)
        theorem ZetaZeroFree :
        ∃ (A : ) (_ : A Set.Ioc 0 (1 / 2)), ∀ (σ t : ), 3 < |t|σ Set.Ico (1 - A / Real.log |t| ^ 9) 1riemannZeta (σ + t * Complex.I) 0
        theorem LogDerivZetaBnd :
        ∃ (A : ) (_ : A Set.Ioc 0 (1 / 2)) (C : ) (_ : 0 < C), ∀ (σ t : ), 3 < |t|σ Set.Ico (1 - A / Real.log |t| ^ 9) 1deriv riemannZeta (σ + t * Complex.I) / riemannZeta (σ + t * Complex.I) C * Real.log |t| ^ 9
        theorem LogDerivZetaBnd' :
        ∃ (A : ) (_ : A Set.Ioc 0 (1 / 2)) (C : ) (_ : 0 < C), ∀ (σ t : ), 3 < |t|σ Set.Ico (1 - A / Real.log |t| ^ 9) (1 + A / Real.log |t| ^ 9)deriv riemannZeta (σ + t * Complex.I) / riemannZeta (σ + t * Complex.I) C * Real.log |t| ^ 9
        theorem LogDerivZetaBndUniform :
        ∃ (A : ) (_ : A Set.Ioc 0 (1 / 2)) (C : ) (_ : 0 < C), ∀ (σ T t : ), 3 < |t||t| Tσ Set.Ico (1 - A / Real.log T ^ 9) 1deriv riemannZeta (σ + t * Complex.I) / riemannZeta (σ + t * Complex.I) C * Real.log T ^ 9
        theorem LogDerivZetaBndUniform' :
        ∃ (A : ) (_ : A Set.Ioc 0 (1 / 2)) (C : ) (_ : 0 < C), ∀ (σ T t : ), 3 < |t||t| Tσ Set.Ico (1 - A / Real.log T ^ 9) (1 + A / Real.log T ^ 9)deriv riemannZeta (σ + t * Complex.I) / riemannZeta (σ + t * Complex.I) C * Real.log T ^ 9
        theorem ZetaNoZerosInBox (T : ) :
        ∃ (σ : ) (_ : σ < 1), ∀ (t : ), |t| Tσ'σ, riemannZeta (σ' + t * Complex.I) 0
        theorem LogDerivZetaHoloOn {S : Set } (s_ne_one : 1S) (nonzero : sS, riemannZeta s 0) :
        theorem LogDerivZetaHolcSmallT :
        ∃ (σ₂ : ) (_ : σ₂ < 1), HolomorphicOn (fun (s : ) => deriv riemannZeta s / riemannZeta s) (Set.uIcc σ₂ 2 ×ℂ Set.uIcc (-3) 3 \ {1})
        theorem LogDerivZetaHolcLargeT :
        ∃ (A : ) (_ : A Set.Ioc 0 (1 / 2)), ∀ (T : ), 3 THolomorphicOn (fun (s : ) => deriv riemannZeta s / riemannZeta s) (Set.Icc (1 - A / Real.log T ^ 9) 2 ×ℂ Set.Icc (-T) T \ {1})
        theorem LogDerivZetaBndAlt :
        A > 0, σSet.Ico (1 / 2) 1, (fun (t : ) => deriv riemannZeta (σ + t * Complex.I) / riemannZeta (σ + t * Complex.I)) =O[Filter.cocompact Filter.principal {t : | 1 - A / Real.log |t| ^ 9 < σ}] fun (t : ) => Real.log |t| ^ 9