ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- padicValNat_le_nat_log
lemma padicValNat_le_nat_log (n : ℕ) : padicValNat p n ≤ Nat.log p n 
Arguments: {p : ℕ} (n : ℕ)
Goal: padicValNat p n ≤ Nat.log p n
-- nat_log_eq_padicValNat_iff
lemma nat_log_eq_padicValNat_iff {n : ℕ} [hp : Fact (Nat.Prime p)] (hn : 0 < n) :
    Nat.log p n = padicValNat p n ↔ n < p ^ (padicValNat p n + 1) 
Arguments: {p n : ℕ} [hp : Fact (Nat.Prime p)] (hn : 0 < n)
Goal: Nat.log p n = padicValNat p n ↔ n < p ^ (padicValNat p n + 1)
-- Nat.log_ne_padicValNat_succ
lemma Nat.log_ne_padicValNat_succ {n : ℕ} (hn : n ≠ 0) : log 2 n ≠ padicValNat 2 (n + 1) 
Arguments: {n : ℕ} (hn : n ≠ 0)
Goal: Nat.log 2 n ≠ padicValNat 2 (n + 1)
-- Nat.max_log_padicValNat_succ_eq_log_succ
lemma Nat.max_log_padicValNat_succ_eq_log_succ (n : ℕ) :
    max (log 2 n) (padicValNat 2 (n + 1)) = log 2 (n + 1) 
Arguments: (n : ℕ)
Goal: max (Nat.log 2 n) (padicValNat 2 (n + 1)) = Nat.log 2 (n + 1)
-- range_pow_padicValNat_subset_divisors
theorem range_pow_padicValNat_subset_divisors {n : ℕ} (hn : n ≠ 0) :
    (Finset.range (padicValNat p n + 1)).image (p ^ ·) ⊆ n.divisors 
Arguments: {p n : ℕ} (hn : n ≠ 0)
Goal: Finset.image (fun x => p ^ x) (Finset.range (padicValNat p n + 1)) ⊆ n.divisors
-- range_pow_padicValNat_subset_divisors'
theorem range_pow_padicValNat_subset_divisors' {n : ℕ} [hp : Fact p.Prime] :
    ((Finset.range (padicValNat p n)).image fun t => p ^ (t + 1)) ⊆ n.divisors.erase 1 
Arguments: {p n : ℕ} [hp : Fact (Nat.Prime p)]
Goal: Finset.image (fun t => p ^ (t + 1)) (Finset.range (padicValNat p n)) ⊆ n.divisors.erase 1
-- padicValNat_factorial_mul
theorem padicValNat_factorial_mul (n : ℕ) [hp : Fact p.Prime] :
    padicValNat p (p * n) ! = padicValNat p n ! + n 
Arguments: {p : ℕ} (n : ℕ) [hp : Fact (Nat.Prime p)]
Goal: padicValNat p (p * n)! = padicValNat p n ! + n
-- padicValNat_eq_zero_of_mem_Ioo
theorem padicValNat_eq_zero_of_mem_Ioo {m k : ℕ}
    (hm : m ∈ Set.Ioo (p * k) (p * (k + 1))) : padicValNat p m = 0 
Arguments: {p m k : ℕ} (hm : m ∈ Set.Ioo (p * k) (p * (k + 1)))
Goal: padicValNat p m = 0
-- padicValNat_factorial_mul_add
theorem padicValNat_factorial_mul_add {n : ℕ} (m : ℕ) [hp : Fact p.Prime] (h : n < p) :
    padicValNat p (p * m + n) ! = padicValNat p (p * m) ! 
Arguments: {p n : ℕ} (m : ℕ) [hp : Fact (Nat.Prime p)] (h : n < p)
Goal: padicValNat p (p * m + n)! = padicValNat p (p * m)!
-- padicValNat_mul_div_factorial
@[simp] theorem padicValNat_mul_div_factorial (n : ℕ) [hp : Fact p.Prime] :
    padicValNat p (p * (n / p))! = padicValNat p n ! 
Arguments: {p : ℕ} (n : ℕ) [hp : Fact (Nat.Prime p)]
Goal: padicValNat p (p * (n / p))! = padicValNat p n !
-- padicValNat_factorial
theorem padicValNat_factorial {n b : ℕ} [hp : Fact p.Prime] (hnb : log p n < b) :
    padicValNat p (n !) = ∑ i ∈ Finset.Ico 1 b, n / p ^ i 
Arguments: {p n b : ℕ} [hp : Fact (Nat.Prime p)] (hnb : Nat.log p n < b)
Goal: padicValNat p n ! = ∑ i ∈ Finset.Ico 1 b, n / p ^ i
-- sub_one_mul_padicValNat_factorial
theorem sub_one_mul_padicValNat_factorial [hp : Fact p.Prime] (n : ℕ) :
    (p - 1) * padicValNat p (n !) = n - (p.digits n).sum 
Arguments: {p : ℕ} [hp : Fact (Nat.Prime p)] (n : ℕ)
Goal: (p - 1) * padicValNat p n ! = n - (p.digits n).sum
-- padicValNat_choose
theorem padicValNat_choose {n k b : ℕ} [hp : Fact p.Prime] (hkn : k ≤ n) (hnb : log p n < b) :
    padicValNat p (choose n k) =
    ((Finset.Ico 1 b).filter fun i => p ^ i ≤ k % p ^ i + (n - k) % p ^ i).card 
Arguments: {p n k b : ℕ} [hp : Fact (Nat.Prime p)] (hkn : k ≤ n) (hnb : Nat.log p n < b)
Goal: padicValNat p (n.choose k) = (Finset.filter (fun i => p ^ i ≤ k % p ^ i + (n - k) % p ^ i) (Finset.Ico 1 b)).card
-- padicValNat_choose'
theorem padicValNat_choose' {n k b : ℕ} [hp : Fact p.Prime] (hnb : log p (n + k) < b) :
    padicValNat p (choose (n + k) k) =
    ((Finset.Ico 1 b).filter fun i => p ^ i ≤ k % p ^ i + n % p ^ i).card 
Arguments: {p n k b : ℕ} [hp : Fact (Nat.Prime p)] (hnb : Nat.log p (n + k) < b)
Goal: padicValNat p ((n + k).choose k) = (Finset.filter (fun i => p ^ i ≤ k % p ^ i + n % p ^ i) (Finset.Ico 1 b)).card
-- sub_one_mul_padicValNat_choose_eq_sub_sum_digits'
theorem sub_one_mul_padicValNat_choose_eq_sub_sum_digits' {k n : ℕ} [hp : Fact p.Prime] :
    (p - 1) * padicValNat p (choose (n + k) k) =
    (p.digits k).sum + (p.digits n).sum - (p.digits (n + k)).sum 
Arguments: {p k n : ℕ} [hp : Fact (Nat.Prime p)]
Goal: (p - 1) * padicValNat p ((n + k).choose k) = (p.digits k).sum + (p.digits n).sum - (p.digits (n + k)).sum
-- sub_one_mul_padicValNat_choose_eq_sub_sum_digits
theorem sub_one_mul_padicValNat_choose_eq_sub_sum_digits {k n : ℕ} [hp : Fact p.Prime]
    (h : k ≤ n) : (p - 1) * padicValNat p (choose n k) =
    (p.digits k).sum + (p.digits (n - k)).sum - (p.digits n).sum 
Arguments: {p k n : ℕ} [hp : Fact (Nat.Prime p)] (h : k ≤ n)
Goal: (p - 1) * padicValNat p (n.choose k) = (p.digits k).sum + (p.digits (n - k)).sum - (p.digits n).sum
-- padicValInt_dvd_iff
theorem padicValInt_dvd_iff (n : ℕ) (a : ℤ) : (p : ℤ) ^ n ∣ a ↔ a = 0 ∨ n ≤ padicValInt p a 
Arguments: {p : ℕ} [hp : Fact (Nat.Prime p)] (n : ℕ) (a : ℤ)
Goal: ↑p ^ n ∣ a ↔ a = 0 ∨ n ≤ padicValInt p a
-- padicValInt_dvd
theorem padicValInt_dvd (a : ℤ) : (p : ℤ) ^ padicValInt p a ∣ a 
Arguments: {p : ℕ} [hp : Fact (Nat.Prime p)] (a : ℤ)
Goal: ↑p ^ padicValInt p a ∣ a
-- padicValInt_self
theorem padicValInt_self : padicValInt p p = 1 
Arguments: {p : ℕ} [hp : Fact (Nat.Prime p)]
Goal: padicValInt p ↑p = 1
-- padicValInt.mul
theorem padicValInt.mul {a b : ℤ} (ha : a ≠ 0) (hb : b ≠ 0) :
    padicValInt p (a * b) = padicValInt p a + padicValInt p b 
Arguments: {p : ℕ} [hp : Fact (Nat.Prime p)] {a b : ℤ} (ha : a ≠ 0) (hb : b ≠ 0)
Goal: padicValInt p (a * b) = padicValInt p a + padicValInt p b
-- padicValInt_mul_eq_succ
theorem padicValInt_mul_eq_succ (a : ℤ) (ha : a ≠ 0) :
    padicValInt p (a * p) = padicValInt p a + 1 
Arguments: {p : ℕ} [hp : Fact (Nat.Prime p)] (a : ℤ) (ha : a ≠ 0)
Goal: padicValInt p (a * ↑p) = padicValInt p a + 1
-- Zsqrtd.toReal_apply
@[simps!]
noncomputable def toReal {d : ℤ} (h : 0 ≤ d) : ℤ√d →+* ℝ 
Arguments: {d : ℤ} (h : 0 ≤ d) (a : ℤ√d)
Goal: (Zsqrtd.toReal h) a = ↑a.re + ↑a.im * √↑d
-- Zsqrtd.toReal_injective
theorem toReal_injective {d : ℤ} (h0d : 0 ≤ d) (hd : ∀ n : ℤ, d ≠ n * n) :
    Function.Injective (toReal h0d) 
Arguments: {d : ℤ} (h0d : 0 ≤ d) (hd : ∀ (n : ℤ), d ≠ n * n)
Goal: Function.Injective ⇑(Zsqrtd.toReal h0d)
-- NumberField.Units.dirichletUnitTheorem.logEmbedding_component
@[simp]
theorem logEmbedding_component (x : (𝓞 K)ˣ) (w : {w : InfinitePlace K // w ≠ w₀}) :
    (logEmbedding K x) w = mult w.val * Real.log (w.val x) 
Arguments: {K : Type u_1} [Field K] [NumberField K] (x : (𝓞 K)ˣ) (w : { w // w ≠ NumberField.Units.dirichletUnitTheorem.w₀ })
Goal: (NumberField.Units.logEmbedding K) x w = ↑(↑w).mult * Real.log (↑w ((algebraMap (𝓞 K) K) ↑x))
-- NumberField.Units.dirichletUnitTheorem.sum_logEmbedding_component
theorem sum_logEmbedding_component (x : (𝓞 K)ˣ) :
    ∑ w, logEmbedding K x w = - mult (w₀ : InfinitePlace K) * Real.log (w₀ (x : K)) 
Arguments: {K : Type u_1} [Field K] [NumberField K] (x : (𝓞 K)ˣ)
Goal: ∑ w : { w // w ≠ NumberField.Units.dirichletUnitTheorem.w₀ }, (NumberField.Units.logEmbedding K) x w =
  -↑NumberField.Units.dirichletUnitTheorem.w₀.mult *
    Real.log (NumberField.Units.dirichletUnitTheorem.w₀ ((algebraMap (𝓞 K) K) ↑x))
-- NumberField.Units.dirichletUnitTheorem.mult_log_place_eq_zero
theorem mult_log_place_eq_zero {x : (𝓞 K)ˣ} {w : InfinitePlace K} :
    mult w * Real.log (w x) = 0 ↔ w x = 1 
Arguments: {K : Type u_1} [Field K] {x : (𝓞 K)ˣ} {w : NumberField.InfinitePlace K}
Goal: ↑w.mult * Real.log (w ((algebraMap (𝓞 K) K) ↑x)) = 0 ↔ w ((algebraMap (𝓞 K) K) ↑x) = 1
-- NumberField.Units.dirichletUnitTheorem.logEmbedding_eq_zero_iff
theorem logEmbedding_eq_zero_iff {x : (𝓞 K)ˣ} :
    logEmbedding K x = 0 ↔ x ∈ torsion K 
Arguments: {K : Type u_1} [Field K] [NumberField K] {x : (𝓞 K)ˣ}
Goal: (NumberField.Units.logEmbedding K) x = 0 ↔ x ∈ NumberField.Units.torsion K
-- NumberField.Units.dirichletUnitTheorem.logEmbedding_component_le
theorem logEmbedding_component_le {r : ℝ} {x : (𝓞 K)ˣ} (hr : 0 ≤ r) (h : ‖logEmbedding K x‖ ≤ r)
    (w : {w : InfinitePlace K // w ≠ w₀}) : |logEmbedding K x w| ≤ r 
Arguments: {K : Type u_1} [Field K] [NumberField K] {r : ℝ} {x : (𝓞 K)ˣ} (hr : 0 ≤ r) (h : ‖(NumberField.Units.logEmbedding K) x‖ ≤ r) (w : { w // w ≠ NumberField.Units.dirichletUnitTheorem.w₀ })
Goal: |(NumberField.Units.logEmbedding K) x w| ≤ r
-- NumberField.Units.dirichletUnitTheorem.log_le_of_logEmbedding_le
theorem log_le_of_logEmbedding_le {r : ℝ} {x : (𝓞 K)ˣ} (hr : 0 ≤ r) (h : ‖logEmbedding K x‖ ≤ r)
    (w : InfinitePlace K) : |Real.log (w x)| ≤ (Fintype.card (InfinitePlace K)) * r 
Arguments: {K : Type u_1} [Field K] [NumberField K] {r : ℝ} {x : (𝓞 K)ˣ} (hr : 0 ≤ r) (h : ‖(NumberField.Units.logEmbedding K) x‖ ≤ r) (w : NumberField.InfinitePlace K)
Goal: |Real.log (w ((algebraMap (𝓞 K) K) ↑x))| ≤ ↑(Fintype.card (NumberField.InfinitePlace K)) * r
-- NumberField.Units.dirichletUnitTheorem.unitLattice_inter_ball_finite
theorem unitLattice_inter_ball_finite (r : ℝ) :
    ((unitLattice K : Set ({ w : InfinitePlace K // w ≠ w₀} → ℝ)) ∩
      Metric.closedBall 0 r).Finite 
Arguments: (K : Type u_1) [Field K] [NumberField K] (r : ℝ)
Goal: (↑(NumberField.Units.unitLattice K) ∩ Metric.closedBall 0 r).Finite
-- NumberField.Units.dirichletUnitTheorem.seq_next
theorem seq_next {x : 𝓞 K} (hx : x ≠ 0) :
    ∃ y : 𝓞 K, y ≠ 0 ∧
      (∀ w, w ≠ w₁ → w y < w x) ∧
      |Algebra.norm ℚ (y : K)| ≤ B 
Arguments: (K : Type u_1) [Field K] [NumberField K] (w₁ : NumberField.InfinitePlace K) {B : ℕ} (hB : NumberField.mixedEmbedding.minkowskiBound K 1 < ↑(NumberField.mixedEmbedding.convexBodyLTFactor K) * ↑B) {x : 𝓞 K} (hx : x ≠ 0)
Goal: ∃ y, y ≠ 0 ∧ (∀ (w : NumberField.InfinitePlace K), w ≠ w₁ → w ↑y < w ↑x) ∧ |(Algebra.norm ℚ) ↑y| ≤ ↑B
-- NumberField.Units.dirichletUnitTheorem.seq_ne_zero
theorem seq_ne_zero (n : ℕ) : algebraMap (𝓞 K) K (seq K w₁ hB n) ≠ 0 
Arguments: (K : Type u_1) [Field K] [NumberField K] (w₁ : NumberField.InfinitePlace K) {B : ℕ} (hB : NumberField.mixedEmbedding.minkowskiBound K 1 < ↑(NumberField.mixedEmbedding.convexBodyLTFactor K) * ↑B) (n : ℕ)
Goal: (algebraMap (𝓞 K) K) ↑(NumberField.Units.dirichletUnitTheorem.seq K w₁ hB n) ≠ 0
-- NumberField.Units.dirichletUnitTheorem.seq_norm_ne_zero
theorem seq_norm_ne_zero (n : ℕ) : Algebra.norm ℤ (seq K w₁ hB n : 𝓞 K) ≠ 0 
Arguments: (K : Type u_1) [Field K] [NumberField K] (w₁ : NumberField.InfinitePlace K) {B : ℕ} (hB : NumberField.mixedEmbedding.minkowskiBound K 1 < ↑(NumberField.mixedEmbedding.convexBodyLTFactor K) * ↑B) (n : ℕ)
Goal: (Algebra.norm ℤ) ↑(NumberField.Units.dirichletUnitTheorem.seq K w₁ hB n) ≠ 0
-- NumberField.Units.dirichletUnitTheorem.seq_decreasing
theorem seq_decreasing {n m : ℕ} (h : n < m) (w : InfinitePlace K) (hw : w ≠ w₁) :
    w (algebraMap (𝓞 K) K (seq K w₁ hB m)) < w (algebraMap (𝓞 K) K (seq K w₁ hB n)) 
Arguments: (K : Type u_1) [Field K] [NumberField K] (w₁ : NumberField.InfinitePlace K) {B : ℕ} (hB : NumberField.mixedEmbedding.minkowskiBound K 1 < ↑(NumberField.mixedEmbedding.convexBodyLTFactor K) * ↑B) {n m : ℕ} (h : n < m) (w : NumberField.InfinitePlace K) (hw : w ≠ w₁)
Goal: w ((algebraMap (𝓞 K) K) ↑(NumberField.Units.dirichletUnitTheorem.seq K w₁ hB m)) <
  w ((algebraMap (𝓞 K) K) ↑(NumberField.Units.dirichletUnitTheorem.seq K w₁ hB n))
-- NumberField.Units.dirichletUnitTheorem.seq_norm_le
theorem seq_norm_le (n : ℕ) :
    Int.natAbs (Algebra.norm ℤ (seq K w₁ hB n : 𝓞 K)) ≤ B 
Arguments: (K : Type u_1) [Field K] [NumberField K] (w₁ : NumberField.InfinitePlace K) {B : ℕ} (hB : NumberField.mixedEmbedding.minkowskiBound K 1 < ↑(NumberField.mixedEmbedding.convexBodyLTFactor K) * ↑B) (n : ℕ)
Goal: ((Algebra.norm ℤ) ↑(NumberField.Units.dirichletUnitTheorem.seq K w₁ hB n)).natAbs ≤ B
-- NumberField.Units.dirichletUnitTheorem.exists_unit
theorem exists_unit (w₁ : InfinitePlace K) :
    ∃ u : (𝓞 K)ˣ, ∀ w : InfinitePlace K, w ≠ w₁ → Real.log (w u) < 0 
Arguments: (K : Type u_1) [Field K] [NumberField K] (w₁ : NumberField.InfinitePlace K)
Goal: ∃ u, ∀ (w : NumberField.InfinitePlace K), w ≠ w₁ → Real.log (w ((algebraMap (𝓞 K) K) ↑u)) < 0
-- NumberField.Units.dirichletUnitTheorem.unitLattice_span_eq_top
theorem unitLattice_span_eq_top :
    Submodule.span ℝ (unitLattice K : Set ({w : InfinitePlace K // w ≠ w₀} → ℝ)) = ⊤ 
Arguments: (K : Type u_1) [Field K] [NumberField K]
Goal: Submodule.span ℝ ↑(NumberField.Units.unitLattice K) = ⊤
-- NumberField.Units.finrank_eq_rank
protected theorem finrank_eq_rank :
    finrank ℝ ({w : InfinitePlace K // w ≠ w₀} → ℝ) = Units.rank K 
Arguments: (K : Type u_1) [Field K] [NumberField K]
Goal: FiniteDimensional.finrank ℝ ({ w // w ≠ NumberField.Units.dirichletUnitTheorem.w₀ } → ℝ) = NumberField.Units.rank K
-- NumberField.Units.unitLattice_rank
@[simp]
theorem unitLattice_rank :
    finrank ℤ (unitLattice K) = Units.rank K 
Arguments: (K : Type u_1) [Field K] [NumberField K]
Goal: FiniteDimensional.finrank ℤ ↥(NumberField.Units.unitLattice K) = NumberField.Units.rank K
-- NumberField.Units.logEmbeddingQuot_apply
@[simp]
theorem logEmbeddingQuot_apply (x : (𝓞 K)ˣ) :
    logEmbeddingQuot K ⟦x⟧ = logEmbedding K x 
Arguments: (K : Type u_1) [Field K] [NumberField K] (x : (𝓞 K)ˣ)
Goal: (NumberField.Units.logEmbeddingQuot K) ⟦x⟧ = (NumberField.Units.logEmbedding K) x
-- NumberField.Units.logEmbeddingQuot_injective
theorem logEmbeddingQuot_injective :
    Function.Injective (logEmbeddingQuot K) 
Arguments: (K : Type u_1) [Field K] [NumberField K]
Goal: Function.Injective ⇑(NumberField.Units.logEmbeddingQuot K)
-- NumberField.Units.logEmbeddingEquiv_apply
@[simp]
theorem logEmbeddingEquiv_apply (x : (𝓞 K)ˣ) :
    logEmbeddingEquiv K ⟦x⟧ = logEmbedding K x 
Arguments: (K : Type u_1) [Field K] [NumberField K] (x : (𝓞 K)ˣ)
Goal: ↑((NumberField.Units.logEmbeddingEquiv K) ⟦x⟧) = (NumberField.Units.logEmbedding K) x
-- NumberField.Units.rank_modTorsion
theorem rank_modTorsion :
    FiniteDimensional.finrank ℤ (Additive ((𝓞 K)ˣ ⧸ (torsion K))) = rank K 
Arguments: (K : Type u_1) [Field K] [NumberField K]
Goal: FiniteDimensional.finrank ℤ (Additive ((𝓞 K)ˣ ⧸ NumberField.Units.torsion K)) = NumberField.Units.rank K
-- NumberField.Units.fundSystem_mk
theorem fundSystem_mk (i : Fin (rank K)) :
    Additive.ofMul ⟦fundSystem K i⟧ = (basisModTorsion K i) 
Arguments: (K : Type u_1) [Field K] [NumberField K] (i : Fin (NumberField.Units.rank K))
Goal: Additive.ofMul ⟦NumberField.Units.fundSystem K i⟧ = (NumberField.Units.basisModTorsion K) i
-- NumberField.Units.fun_eq_repr
theorem fun_eq_repr {x ζ : (𝓞 K)ˣ} {f : Fin (rank K) → ℤ} (hζ : ζ ∈ torsion K)
    (h : x = ζ * ∏ i, (fundSystem K i) ^ (f i)) :
    f = (basisModTorsion K).repr (Additive.ofMul ↑x) 
Arguments: (K : Type u_1) [Field K] [NumberField K] {x ζ : (𝓞 K)ˣ} {f : Fin (NumberField.Units.rank K) → ℤ} (hζ : ζ ∈ NumberField.Units.torsion K) (h : x = ζ * ∏ i : Fin (NumberField.Units.rank K), NumberField.Units.fundSystem K i ^ f i)
Goal: f = ⇑((NumberField.Units.basisModTorsion K).repr (Additive.ofMul ↑x))
-- NumberField.Units.exist_unique_eq_mul_prod
theorem exist_unique_eq_mul_prod (x : (𝓞 K)ˣ) : ∃! ζe : torsion K × (Fin (rank K) → ℤ),
    x = ζe.1 * ∏ i, (fundSystem K i) ^ (ζe.2 i) 
Arguments: (K : Type u_1) [Field K] [NumberField K] (x : (𝓞 K)ˣ)
Goal: ∃! ζe, x = ↑ζe.1 * ∏ i : Fin (NumberField.Units.rank K), NumberField.Units.fundSystem K i ^ ζe.2 i
-- HurwitzZeta.jacobiTheta₂''_conj
lemma jacobiTheta₂''_conj (z τ : ℂ) :
    conj (jacobiTheta₂'' z τ) = jacobiTheta₂'' (conj z) (-conj τ) 
Arguments: (z τ : ℂ)
Goal: (starRingEnd ℂ) (HurwitzZeta.jacobiTheta₂'' z τ) = HurwitzZeta.jacobiTheta₂'' ((starRingEnd ℂ) z) (-(starRingEnd ℂ) τ)
-- HurwitzZeta.jacobiTheta₂''_add_left
lemma jacobiTheta₂''_add_left (z τ : ℂ) : jacobiTheta₂'' (z + 1) τ = jacobiTheta₂'' z τ 
Arguments: (z τ : ℂ)
Goal: HurwitzZeta.jacobiTheta₂'' (z + 1) τ = HurwitzZeta.jacobiTheta₂'' z τ
-- HurwitzZeta.jacobiTheta₂''_neg_left
lemma jacobiTheta₂''_neg_left (z τ : ℂ) : jacobiTheta₂'' (-z) τ = -jacobiTheta₂'' z τ 
Arguments: (z τ : ℂ)
Goal: HurwitzZeta.jacobiTheta₂'' (-z) τ = -HurwitzZeta.jacobiTheta₂'' z τ
-- HurwitzZeta.jacobiTheta₂'_functional_equation'
lemma jacobiTheta₂'_functional_equation' (z τ : ℂ) :
    jacobiTheta₂' z τ = (-2 * π) / (-I * τ) ^ (3 / 2 : ℂ) * jacobiTheta₂'' z (-1 / τ) 
Arguments: (z τ : ℂ)
Goal: jacobiTheta₂' z τ = -2 * ↑π / (-Complex.I * τ) ^ (3 / 2) * HurwitzZeta.jacobiTheta₂'' z (-1 / τ)
-- HurwitzZeta.oddKernel_def
lemma oddKernel_def (a x : ℝ) : ↑(oddKernel a x) = jacobiTheta₂'' a (I * x) 
Arguments: (a x : ℝ)
Goal: ↑(HurwitzZeta.oddKernel (↑a) x) = HurwitzZeta.jacobiTheta₂'' (↑a) (Complex.I * ↑x)
-- HurwitzZeta.oddKernel_def'
lemma oddKernel_def' (a x : ℝ) : ↑(oddKernel ↑a x) = cexp (-π * a ^ 2 * x) *
    (jacobiTheta₂' (a * I * x) (I * x) / (2 * π * I) + a * jacobiTheta₂ (a * I * x) (I * x)) 
Arguments: (a x : ℝ)
Goal: ↑(HurwitzZeta.oddKernel (↑a) x) =
  cexp (-↑π * ↑a ^ 2 * ↑x) *
    (jacobiTheta₂' (↑a * Complex.I * ↑x) (Complex.I * ↑x) / (2 * ↑π * Complex.I) +
      ↑a * jacobiTheta₂ (↑a * Complex.I * ↑x) (Complex.I * ↑x))
-- HurwitzZeta.oddKernel_undef
lemma oddKernel_undef (a : UnitAddCircle) {x : ℝ} (hx : x ≤ 0) : oddKernel a x = 0 
Arguments: (a : UnitAddCircle) {x : ℝ} (hx : x ≤ 0)
Goal: HurwitzZeta.oddKernel a x = 0
-- HurwitzZeta.sinKernel_def
lemma sinKernel_def (a x : ℝ) : ↑(sinKernel ↑a x) = jacobiTheta₂' a (I * x) / (-2 * π) 
Arguments: (a x : ℝ)
Goal: ↑(HurwitzZeta.sinKernel (↑a) x) = jacobiTheta₂' (↑a) (Complex.I * ↑x) / (-2 * ↑π)
-- HurwitzZeta.sinKernel_undef
lemma sinKernel_undef (a : UnitAddCircle) {x : ℝ} (hx : x ≤ 0) : sinKernel a x = 0 
Arguments: (a : UnitAddCircle) {x : ℝ} (hx : x ≤ 0)
Goal: HurwitzZeta.sinKernel a x = 0
-- HurwitzZeta.oddKernel_neg
lemma oddKernel_neg (a : UnitAddCircle) (x : ℝ) : oddKernel (-a) x = -oddKernel a x 
Arguments: (a : UnitAddCircle) (x : ℝ)
Goal: HurwitzZeta.oddKernel (-a) x = -HurwitzZeta.oddKernel a x
-- HurwitzZeta.oddKernel_zero
lemma oddKernel_zero (x : ℝ) : oddKernel 0 x = 0 
Arguments: (x : ℝ)
Goal: HurwitzZeta.oddKernel 0 x = 0
-- HurwitzZeta.sinKernel_neg
lemma sinKernel_neg (a : UnitAddCircle) (x : ℝ) :
    sinKernel (-a) x = -sinKernel a x 
Arguments: (a : UnitAddCircle) (x : ℝ)
Goal: HurwitzZeta.sinKernel (-a) x = -HurwitzZeta.sinKernel a x
-- HurwitzZeta.sinKernel_zero
lemma sinKernel_zero (x : ℝ) : sinKernel 0 x = 0 
Arguments: (x : ℝ)
Goal: HurwitzZeta.sinKernel 0 x = 0
-- HurwitzZeta.continuousOn_oddKernel
lemma continuousOn_oddKernel (a : UnitAddCircle) : ContinuousOn (oddKernel a) (Ioi 0) 
Arguments: (a : UnitAddCircle)
Goal: ContinuousOn (HurwitzZeta.oddKernel a) (Set.Ioi 0)
-- HurwitzZeta.continuousOn_sinKernel
lemma continuousOn_sinKernel (a : UnitAddCircle) : ContinuousOn (sinKernel a) (Ioi 0) 
Arguments: (a : UnitAddCircle)
Goal: ContinuousOn (HurwitzZeta.sinKernel a) (Set.Ioi 0)
-- HurwitzZeta.oddKernel_functional_equation
lemma oddKernel_functional_equation (a : UnitAddCircle) (x : ℝ) :
    oddKernel a x = 1 / x ^ (3 / 2 : ℝ) * sinKernel a (1 / x) 
Arguments: (a : UnitAddCircle) (x : ℝ)
Goal: HurwitzZeta.oddKernel a x = 1 / x ^ (3 / 2) * HurwitzZeta.sinKernel a (1 / x)
-- HurwitzZeta.hasSum_int_oddKernel
lemma hasSum_int_oddKernel (a : ℝ) {x : ℝ} (hx : 0 < x) :
    HasSum (fun n : ℤ ↦ (n + a) * rexp (-π * (n + a) ^ 2 * x)) (oddKernel ↑a x) 
Arguments: (a : ℝ) {x : ℝ} (hx : 0 < x)
Goal: HasSum (fun n => (↑n + a) * rexp (-π * (↑n + a) ^ 2 * x)) (HurwitzZeta.oddKernel (↑a) x)
-- HurwitzZeta.hasSum_int_sinKernel
lemma hasSum_int_sinKernel (a : ℝ) {t : ℝ} (ht : 0 < t) : HasSum
    (fun n : ℤ ↦ -I * n * cexp (2 * π * I * a * n) * rexp (-π * n ^ 2 * t)) ↑(sinKernel a t) 
Arguments: (a : ℝ) {t : ℝ} (ht : 0 < t)
Goal: HasSum (fun n => -Complex.I * ↑n * cexp (2 * ↑π * Complex.I * ↑a * ↑n) * ↑(rexp (-π * ↑n ^ 2 * t)))
  ↑(HurwitzZeta.sinKernel (↑a) t)
-- HurwitzZeta.hasSum_nat_sinKernel
lemma hasSum_nat_sinKernel (a : ℝ) {t : ℝ} (ht : 0 < t) :
    HasSum (fun n : ℕ ↦ 2 * n * Real.sin (2 * π * a * n) * rexp (-π * n ^ 2 * t))
    (sinKernel ↑a t) 
Arguments: (a : ℝ) {t : ℝ} (ht : 0 < t)
Goal: HasSum (fun n => 2 * ↑n * Real.sin (2 * π * a * ↑n) * rexp (-π * ↑n ^ 2 * t)) (HurwitzZeta.sinKernel (↑a) t)
-- HurwitzZeta.isBigO_atTop_oddKernel
lemma isBigO_atTop_oddKernel (a : UnitAddCircle) :
    ∃ p, 0 < p ∧ IsBigO atTop (oddKernel a) (fun x ↦ Real.exp (-p * x)) 
Arguments: (a : UnitAddCircle)
Goal: ∃ p, 0 < p ∧ HurwitzZeta.oddKernel a =O[Filter.atTop] fun x => rexp (-p * x)
-- HurwitzZeta.isBigO_atTop_sinKernel
lemma isBigO_atTop_sinKernel (a : UnitAddCircle) :
    ∃ p, 0 < p ∧ IsBigO atTop (sinKernel a) (fun x ↦ Real.exp (-p * x)) 
Arguments: (a : UnitAddCircle)
Goal: ∃ p, 0 < p ∧ HurwitzZeta.sinKernel a =O[Filter.atTop] fun x => rexp (-p * x)
-- HurwitzZeta.hurwitzOddFEPair_k
@[simps]
def hurwitzOddFEPair (a : UnitAddCircle) : StrongFEPair ℂ 
Arguments: (a : UnitAddCircle)
Goal: (HurwitzZeta.hurwitzOddFEPair a).k = 3 / 2
-- HurwitzZeta.hurwitzOddFEPair_f
@[simps]
def hurwitzOddFEPair (a : UnitAddCircle) : StrongFEPair ℂ 
Arguments: (a : UnitAddCircle)
Goal: ∀ (a_1 : ℝ), (HurwitzZeta.hurwitzOddFEPair a).f a_1 = (Complex.ofReal' ∘ HurwitzZeta.oddKernel a) a_1
-- HurwitzZeta.hurwitzOddFEPair_ε
@[simps]
def hurwitzOddFEPair (a : UnitAddCircle) : StrongFEPair ℂ 
Arguments: (a : UnitAddCircle)
Goal: (HurwitzZeta.hurwitzOddFEPair a).ε = 1
-- HurwitzZeta.hurwitzOddFEPair_g₀
@[simps]
def hurwitzOddFEPair (a : UnitAddCircle) : StrongFEPair ℂ 
Arguments: (a : UnitAddCircle)
Goal: (HurwitzZeta.hurwitzOddFEPair a).g₀ = 0
-- HurwitzZeta.hurwitzOddFEPair_f₀
@[simps]
def hurwitzOddFEPair (a : UnitAddCircle) : StrongFEPair ℂ 
Arguments: (a : UnitAddCircle)
Goal: (HurwitzZeta.hurwitzOddFEPair a).f₀ = 0
-- HurwitzZeta.hurwitzOddFEPair_g
@[simps]
def hurwitzOddFEPair (a : UnitAddCircle) : StrongFEPair ℂ 
Arguments: (a : UnitAddCircle)
Goal: ∀ (a_1 : ℝ), (HurwitzZeta.hurwitzOddFEPair a).g a_1 = (Complex.ofReal' ∘ HurwitzZeta.sinKernel a) a_1
-- HurwitzZeta.differentiable_completedHurwitzZetaOdd
lemma differentiable_completedHurwitzZetaOdd (a : UnitAddCircle) :
    Differentiable ℂ (completedHurwitzZetaOdd a) 
Arguments: (a : UnitAddCircle)
Goal: Differentiable ℂ (HurwitzZeta.completedHurwitzZetaOdd a)
-- HurwitzZeta.differentiable_completedSinZeta
lemma differentiable_completedSinZeta (a : UnitAddCircle) :
    Differentiable ℂ (completedSinZeta a) 
Arguments: (a : UnitAddCircle)
Goal: Differentiable ℂ (HurwitzZeta.completedSinZeta a)
-- HurwitzZeta.completedHurwitzZetaOdd_neg
lemma completedHurwitzZetaOdd_neg (a : UnitAddCircle) (s : ℂ) :
    completedHurwitzZetaOdd (-a) s = -completedHurwitzZetaOdd a s 
Arguments: (a : UnitAddCircle) (s : ℂ)
Goal: HurwitzZeta.completedHurwitzZetaOdd (-a) s = -HurwitzZeta.completedHurwitzZetaOdd a s
-- HurwitzZeta.completedSinZeta_neg
lemma completedSinZeta_neg (a : UnitAddCircle) (s : ℂ) :
    completedSinZeta (-a) s = -completedSinZeta a s 
Arguments: (a : UnitAddCircle) (s : ℂ)
Goal: HurwitzZeta.completedSinZeta (-a) s = -HurwitzZeta.completedSinZeta a s
-- HurwitzZeta.completedHurwitzZetaOdd_one_sub
theorem completedHurwitzZetaOdd_one_sub (a : UnitAddCircle) (s : ℂ) :
    completedHurwitzZetaOdd a (1 - s) = completedSinZeta a s 
Arguments: (a : UnitAddCircle) (s : ℂ)
Goal: HurwitzZeta.completedHurwitzZetaOdd a (1 - s) = HurwitzZeta.completedSinZeta a s
-- HurwitzZeta.completedSinZeta_one_sub
lemma completedSinZeta_one_sub (a : UnitAddCircle) (s : ℂ) :
    completedSinZeta a (1 - s) = completedHurwitzZetaOdd a s 
Arguments: (a : UnitAddCircle) (s : ℂ)
Goal: HurwitzZeta.completedSinZeta a (1 - s) = HurwitzZeta.completedHurwitzZetaOdd a s
-- HurwitzZeta.hasSum_int_completedSinZeta
lemma hasSum_int_completedSinZeta (a : ℝ) {s : ℂ} (hs : 1 < re s) :
    HasSum (fun n : ℤ ↦ Gammaℝ (s + 1) * (-I) * Int.sign n *
    cexp (2 * π * I * a * n) / (↑|n| : ℂ) ^ s / 2) (completedSinZeta a s) 
Arguments: (a : ℝ) {s : ℂ} (hs : 1 < s.re)
Goal: HasSum (fun n => (s + 1).Gammaℝ * -Complex.I * ↑n.sign * cexp (2 * ↑π * Complex.I * ↑a * ↑n) / ↑|n| ^ s / 2)
  (HurwitzZeta.completedSinZeta (↑a) s)