ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- HasSum.nat_add_neg_add_one
@[to_additive HasSum.nat_add_neg_add_one]
lemma HasProd.nat_mul_neg_add_one {f : ℤ → M} (hf : HasProd f m) :
    HasProd (fun n : ℕ ↦ f n * f (-(n + 1))) m 
Arguments: {M : Type u_1} [AddCommMonoid M] [TopologicalSpace M] {m : M} {f : ℤ → M} (hf : HasSum f m)
Goal: HasSum (fun n => f ↑n + f (-(↑n + 1))) m
-- HasProd.nat_mul_neg_add_one
@[to_additive HasSum.nat_add_neg_add_one]
lemma HasProd.nat_mul_neg_add_one {f : ℤ → M} (hf : HasProd f m) :
    HasProd (fun n : ℕ ↦ f n * f (-(n + 1))) m 
Arguments: {M : Type u_1} [CommMonoid M] [TopologicalSpace M] {m : M} {f : ℤ → M} (hf : HasProd f m)
Goal: HasProd (fun n => f ↑n * f (-(↑n + 1))) m
-- Summable.nat_add_neg_add_one
@[to_additive Summable.nat_add_neg_add_one]
lemma Multipliable.nat_mul_neg_add_one {f : ℤ → M} (hf : Multipliable f) :
    Multipliable (fun n : ℕ ↦ f n * f (-(n + 1))) 
Arguments: {M : Type u_1} [AddCommMonoid M] [TopologicalSpace M] {f : ℤ → M} (hf : Summable f)
Goal: Summable fun n => f ↑n + f (-(↑n + 1))
-- Multipliable.nat_mul_neg_add_one
@[to_additive Summable.nat_add_neg_add_one]
lemma Multipliable.nat_mul_neg_add_one {f : ℤ → M} (hf : Multipliable f) :
    Multipliable (fun n : ℕ ↦ f n * f (-(n + 1))) 
Arguments: {M : Type u_1} [CommMonoid M] [TopologicalSpace M] {f : ℤ → M} (hf : Multipliable f)
Goal: Multipliable fun n => f ↑n * f (-(↑n + 1))
-- tprod_nat_mul_neg_add_one
@[to_additive tsum_nat_add_neg_add_one]
lemma tprod_nat_mul_neg_add_one [T2Space M] {f : ℤ → M} (hf : Multipliable f) :
    ∏' (n : ℕ), (f n * f (-(n + 1))) = ∏' (n : ℤ), f n 
Arguments: {M : Type u_1} [CommMonoid M] [TopologicalSpace M] [T2Space M] {f : ℤ → M} (hf : Multipliable f)
Goal: ∏' (n : ℕ), f ↑n * f (-(↑n + 1)) = ∏' (n : ℤ), f n
-- tsum_nat_add_neg_add_one
@[to_additive tsum_nat_add_neg_add_one]
lemma tprod_nat_mul_neg_add_one [T2Space M] {f : ℤ → M} (hf : Multipliable f) :
    ∏' (n : ℕ), (f n * f (-(n + 1))) = ∏' (n : ℤ), f n 
Arguments: {M : Type u_1} [AddCommMonoid M] [TopologicalSpace M] [T2Space M] {f : ℤ → M} (hf : Summable f)
Goal: ∑' (n : ℕ), (f ↑n + f (-(↑n + 1))) = ∑' (n : ℤ), f n
-- HasSum.of_nat_of_neg_add_one
@[to_additive HasSum.of_nat_of_neg_add_one]
lemma HasProd.of_nat_of_neg_add_one {f : ℤ → M}
    (hf₁ : HasProd (fun n : ℕ ↦ f n) m) (hf₂ : HasProd (fun n : ℕ ↦ f (-(n + 1))) m') :
    HasProd f (m * m') 
Arguments: {M : Type u_1} [AddCommMonoid M] [TopologicalSpace M] {m m' : M} [ContinuousAdd M] {f : ℤ → M} (hf₁ : HasSum (fun n => f ↑n) m) (hf₂ : HasSum (fun n => f (-(↑n + 1))) m')
Goal: HasSum f (m + m')
-- HasProd.of_nat_of_neg_add_one
@[to_additive HasSum.of_nat_of_neg_add_one]
lemma HasProd.of_nat_of_neg_add_one {f : ℤ → M}
    (hf₁ : HasProd (fun n : ℕ ↦ f n) m) (hf₂ : HasProd (fun n : ℕ ↦ f (-(n + 1))) m') :
    HasProd f (m * m') 
Arguments: {M : Type u_1} [CommMonoid M] [TopologicalSpace M] {m m' : M} [ContinuousMul M] {f : ℤ → M} (hf₁ : HasProd (fun n => f ↑n) m) (hf₂ : HasProd (fun n => f (-(↑n + 1))) m')
Goal: HasProd f (m * m')
-- Multipliable.of_nat_of_neg_add_one
@[to_additive Summable.of_nat_of_neg_add_one]
lemma Multipliable.of_nat_of_neg_add_one {f : ℤ → M}
    (hf₁ : Multipliable fun n : ℕ ↦ f n)  (hf₂ : Multipliable fun n : ℕ ↦ f (-(n + 1))) :
    Multipliable f 
Arguments: {M : Type u_1} [CommMonoid M] [TopologicalSpace M] [ContinuousMul M] {f : ℤ → M} (hf₁ : Multipliable fun n => f ↑n) (hf₂ : Multipliable fun n => f (-(↑n + 1)))
Goal: Multipliable f
-- Summable.of_nat_of_neg_add_one
@[to_additive Summable.of_nat_of_neg_add_one]
lemma Multipliable.of_nat_of_neg_add_one {f : ℤ → M}
    (hf₁ : Multipliable fun n : ℕ ↦ f n)  (hf₂ : Multipliable fun n : ℕ ↦ f (-(n + 1))) :
    Multipliable f 
Arguments: {M : Type u_1} [AddCommMonoid M] [TopologicalSpace M] [ContinuousAdd M] {f : ℤ → M} (hf₁ : Summable fun n => f ↑n) (hf₂ : Summable fun n => f (-(↑n + 1)))
Goal: Summable f
-- tprod_of_nat_of_neg_add_one
@[to_additive tsum_of_nat_of_neg_add_one]
lemma tprod_of_nat_of_neg_add_one [T2Space M] {f : ℤ → M}
    (hf₁ : Multipliable fun n : ℕ ↦ f n) (hf₂ : Multipliable fun n : ℕ ↦ f (-(n + 1))) :
    ∏' n : ℤ, f n = (∏' n : ℕ, f n) * ∏' n : ℕ, f (-(n + 1)) 
Arguments: {M : Type u_1} [CommMonoid M] [TopologicalSpace M] [ContinuousMul M] [T2Space M] {f : ℤ → M} (hf₁ : Multipliable fun n => f ↑n) (hf₂ : Multipliable fun n => f (-(↑n + 1)))
Goal: ∏' (n : ℤ), f n = (∏' (n : ℕ), f ↑n) * ∏' (n : ℕ), f (-(↑n + 1))
-- tsum_of_nat_of_neg_add_one
@[to_additive tsum_of_nat_of_neg_add_one]
lemma tprod_of_nat_of_neg_add_one [T2Space M] {f : ℤ → M}
    (hf₁ : Multipliable fun n : ℕ ↦ f n) (hf₂ : Multipliable fun n : ℕ ↦ f (-(n + 1))) :
    ∏' n : ℤ, f n = (∏' n : ℕ, f n) * ∏' n : ℕ, f (-(n + 1)) 
Arguments: {M : Type u_1} [AddCommMonoid M] [TopologicalSpace M] [ContinuousAdd M] [T2Space M] {f : ℤ → M} (hf₁ : Summable fun n => f ↑n) (hf₂ : Summable fun n => f (-(↑n + 1)))
Goal: ∑' (n : ℤ), f n = ∑' (n : ℕ), f ↑n + ∑' (n : ℕ), f (-(↑n + 1))
-- HasProd.int_rec
@[to_additive "If `f₀, f₁, f₂, ...` and `g₀, g₁, g₂, ...` have sums `a`, `b` respectively, then
the `ℤ`-indexed sequence: `..., g₂, g₁, g₀, f₀, f₁, f₂, ...` (with `f₀` at the `0`-th position) has
sum `a + b`."]
lemma HasProd.int_rec {f g : ℕ → M} (hf : HasProd f m) (hg : HasProd g m') :
    HasProd (Int.rec f g) (m * m') 
Arguments: {M : Type u_1} [CommMonoid M] [TopologicalSpace M] {m m' : M} [ContinuousMul M] {f g : ℕ → M} (hf : HasProd f m) (hg : HasProd g m')
Goal: HasProd (fun t => Int.rec f g t) (m * m')
-- HasSum.int_rec
@[to_additive "If `f₀, f₁, f₂, ...` and `g₀, g₁, g₂, ...` have sums `a`, `b` respectively, then
the `ℤ`-indexed sequence: `..., g₂, g₁, g₀, f₀, f₁, f₂, ...` (with `f₀` at the `0`-th position) has
sum `a + b`."]
lemma HasProd.int_rec {f g : ℕ → M} (hf : HasProd f m) (hg : HasProd g m') :
    HasProd (Int.rec f g) (m * m') 
Arguments: {M : Type u_1} [AddCommMonoid M] [TopologicalSpace M] {m m' : M} [ContinuousAdd M] {f g : ℕ → M} (hf : HasSum f m) (hg : HasSum g m')
Goal: HasSum (fun t => Int.rec f g t) (m + m')
-- Summable.int_rec
@[to_additive "If `f₀, f₁, f₂, ...` and `g₀, g₁, g₂, ...` are both summable then so is the
`ℤ`-indexed sequence: `..., g₂, g₁, g₀, f₀, f₁, f₂, ...` (with `f₀` at the `0`-th position)."]
lemma Multipliable.int_rec {f g : ℕ → M} (hf : Multipliable f) (hg : Multipliable g) :
    Multipliable (Int.rec f g) 
Arguments: {M : Type u_1} [AddCommMonoid M] [TopologicalSpace M] [ContinuousAdd M] {f g : ℕ → M} (hf : Summable f) (hg : Summable g)
Goal: Summable fun t => Int.rec f g t
-- Multipliable.int_rec
@[to_additive "If `f₀, f₁, f₂, ...` and `g₀, g₁, g₂, ...` are both summable then so is the
`ℤ`-indexed sequence: `..., g₂, g₁, g₀, f₀, f₁, f₂, ...` (with `f₀` at the `0`-th position)."]
lemma Multipliable.int_rec {f g : ℕ → M} (hf : Multipliable f) (hg : Multipliable g) :
    Multipliable (Int.rec f g) 
Arguments: {M : Type u_1} [CommMonoid M] [TopologicalSpace M] [ContinuousMul M] {f g : ℕ → M} (hf : Multipliable f) (hg : Multipliable g)
Goal: Multipliable fun t => Int.rec f g t
-- tsum_int_rec
@[to_additive "If `f₀, f₁, f₂, ...` and `g₀, g₁, g₂, ...` are both summable, then the sum of the
`ℤ`-indexed sequence: `..., g₂, g₁, g₀, f₀, f₁, f₂, ...` (with `f₀` at the `0`-th position) is
`∑' n, f n + ∑' n, g n`."]
lemma tprod_int_rec [T2Space M] {f g : ℕ → M} (hf : Multipliable f) (hg : Multipliable g) :
    ∏' n : ℤ, Int.rec f g n = (∏' n : ℕ, f n) * ∏' n : ℕ, g n 
Arguments: {M : Type u_1} [AddCommMonoid M] [TopologicalSpace M] [ContinuousAdd M] [T2Space M] {f g : ℕ → M} (hf : Summable f) (hg : Summable g)
Goal: ∑' (n : ℤ), Int.rec f g n = ∑' (n : ℕ), f n + ∑' (n : ℕ), g n
-- tprod_int_rec
@[to_additive "If `f₀, f₁, f₂, ...` and `g₀, g₁, g₂, ...` are both summable, then the sum of the
`ℤ`-indexed sequence: `..., g₂, g₁, g₀, f₀, f₁, f₂, ...` (with `f₀` at the `0`-th position) is
`∑' n, f n + ∑' n, g n`."]
lemma tprod_int_rec [T2Space M] {f g : ℕ → M} (hf : Multipliable f) (hg : Multipliable g) :
    ∏' n : ℤ, Int.rec f g n = (∏' n : ℕ, f n) * ∏' n : ℕ, g n 
Arguments: {M : Type u_1} [CommMonoid M] [TopologicalSpace M] [ContinuousMul M] [T2Space M] {f g : ℕ → M} (hf : Multipliable f) (hg : Multipliable g)
Goal: ∏' (n : ℤ), Int.rec f g n = (∏' (n : ℕ), f n) * ∏' (n : ℕ), g n
-- HasSum.nat_add_neg
@[to_additive]
theorem HasProd.nat_mul_neg {f : ℤ → M} (hf : HasProd f m) :
    HasProd (fun n : ℕ ↦ f n * f (-n)) (m * f 0) 
Arguments: {M : Type u_1} [AddCommMonoid M] [TopologicalSpace M] {m : M} [ContinuousAdd M] {f : ℤ → M} (hf : HasSum f m)
Goal: HasSum (fun n => f ↑n + f (-↑n)) (m + f 0)
-- HasProd.nat_mul_neg
@[to_additive]
theorem HasProd.nat_mul_neg {f : ℤ → M} (hf : HasProd f m) :
    HasProd (fun n : ℕ ↦ f n * f (-n)) (m * f 0) 
Arguments: {M : Type u_1} [CommMonoid M] [TopologicalSpace M] {m : M} [ContinuousMul M] {f : ℤ → M} (hf : HasProd f m)
Goal: HasProd (fun n => f ↑n * f (-↑n)) (m * f 0)
-- Summable.nat_add_neg
@[to_additive]
theorem Multipliable.nat_mul_neg {f : ℤ → M} (hf : Multipliable f) :
    Multipliable fun n : ℕ ↦ f n * f (-n) 
Arguments: {M : Type u_1} [AddCommMonoid M] [TopologicalSpace M] [ContinuousAdd M] {f : ℤ → M} (hf : Summable f)
Goal: Summable fun n => f ↑n + f (-↑n)
-- Multipliable.nat_mul_neg
@[to_additive]
theorem Multipliable.nat_mul_neg {f : ℤ → M} (hf : Multipliable f) :
    Multipliable fun n : ℕ ↦ f n * f (-n) 
Arguments: {M : Type u_1} [CommMonoid M] [TopologicalSpace M] [ContinuousMul M] {f : ℤ → M} (hf : Multipliable f)
Goal: Multipliable fun n => f ↑n * f (-↑n)
-- tsum_nat_add_neg
@[to_additive]
lemma tprod_nat_mul_neg [T2Space M] {f : ℤ → M} (hf : Multipliable f) :
    ∏' n : ℕ, (f n * f (-n)) = (∏' n : ℤ, f n) * f 0 
Arguments: {M : Type u_1} [AddCommMonoid M] [TopologicalSpace M] [ContinuousAdd M] [T2Space M] {f : ℤ → M} (hf : Summable f)
Goal: ∑' (n : ℕ), (f ↑n + f (-↑n)) = ∑' (n : ℤ), f n + f 0
-- tprod_nat_mul_neg
@[to_additive]
lemma tprod_nat_mul_neg [T2Space M] {f : ℤ → M} (hf : Multipliable f) :
    ∏' n : ℕ, (f n * f (-n)) = (∏' n : ℤ, f n) * f 0 
Arguments: {M : Type u_1} [CommMonoid M] [TopologicalSpace M] [ContinuousMul M] [T2Space M] {f : ℤ → M} (hf : Multipliable f)
Goal: ∏' (n : ℕ), f ↑n * f (-↑n) = (∏' (n : ℤ), f n) * f 0
-- HasProd.of_add_one_of_neg_add_one
@[to_additive HasSum.of_add_one_of_neg_add_one]
theorem HasProd.of_add_one_of_neg_add_one {f : ℤ → M}
    (hf₁ : HasProd (fun n : ℕ ↦ f (n + 1)) m) (hf₂ : HasProd (fun n : ℕ ↦ f (-(n + 1))) m') :
    HasProd f (m * f 0 * m') 
Arguments: {M : Type u_1} [CommMonoid M] [TopologicalSpace M] {m m' : M} [ContinuousMul M] {f : ℤ → M} (hf₁ : HasProd (fun n => f (↑n + 1)) m) (hf₂ : HasProd (fun n => f (-(↑n + 1))) m')
Goal: HasProd f (m * f 0 * m')
-- HasSum.of_add_one_of_neg_add_one
@[to_additive HasSum.of_add_one_of_neg_add_one]
theorem HasProd.of_add_one_of_neg_add_one {f : ℤ → M}
    (hf₁ : HasProd (fun n : ℕ ↦ f (n + 1)) m) (hf₂ : HasProd (fun n : ℕ ↦ f (-(n + 1))) m') :
    HasProd f (m * f 0 * m') 
Arguments: {M : Type u_1} [AddCommMonoid M] [TopologicalSpace M] {m m' : M} [ContinuousAdd M] {f : ℤ → M} (hf₁ : HasSum (fun n => f (↑n + 1)) m) (hf₂ : HasSum (fun n => f (-(↑n + 1))) m')
Goal: HasSum f (m + f 0 + m')
-- Multipliable.of_add_one_of_neg_add_one
@[to_additive Summable.of_add_one_of_neg_add_one]
lemma Multipliable.of_add_one_of_neg_add_one {f : ℤ → M}
    (hf₁ : Multipliable fun n : ℕ ↦ f (n + 1)) (hf₂ : Multipliable fun n : ℕ ↦ f (-(n + 1))) :
    Multipliable f 
Arguments: {M : Type u_1} [CommMonoid M] [TopologicalSpace M] [ContinuousMul M] {f : ℤ → M} (hf₁ : Multipliable fun n => f (↑n + 1)) (hf₂ : Multipliable fun n => f (-(↑n + 1)))
Goal: Multipliable f
-- Summable.of_add_one_of_neg_add_one
@[to_additive Summable.of_add_one_of_neg_add_one]
lemma Multipliable.of_add_one_of_neg_add_one {f : ℤ → M}
    (hf₁ : Multipliable fun n : ℕ ↦ f (n + 1)) (hf₂ : Multipliable fun n : ℕ ↦ f (-(n + 1))) :
    Multipliable f 
Arguments: {M : Type u_1} [AddCommMonoid M] [TopologicalSpace M] [ContinuousAdd M] {f : ℤ → M} (hf₁ : Summable fun n => f (↑n + 1)) (hf₂ : Summable fun n => f (-(↑n + 1)))
Goal: Summable f
-- tsum_of_add_one_of_neg_add_one
@[to_additive tsum_of_add_one_of_neg_add_one]
lemma tprod_of_add_one_of_neg_add_one [T2Space M] {f : ℤ → M}
    (hf₁ : Multipliable fun n : ℕ ↦ f (n + 1)) (hf₂ : Multipliable fun n : ℕ ↦ f (-(n + 1))) :
    ∏' n : ℤ, f n = (∏' n : ℕ, f (n + 1)) * f 0 * ∏' n : ℕ, f (-(n + 1)) 
Arguments: {M : Type u_1} [AddCommMonoid M] [TopologicalSpace M] [ContinuousAdd M] [T2Space M] {f : ℤ → M} (hf₁ : Summable fun n => f (↑n + 1)) (hf₂ : Summable fun n => f (-(↑n + 1)))
Goal: ∑' (n : ℤ), f n = ∑' (n : ℕ), f (↑n + 1) + f 0 + ∑' (n : ℕ), f (-(↑n + 1))
-- tprod_of_add_one_of_neg_add_one
@[to_additive tsum_of_add_one_of_neg_add_one]
lemma tprod_of_add_one_of_neg_add_one [T2Space M] {f : ℤ → M}
    (hf₁ : Multipliable fun n : ℕ ↦ f (n + 1)) (hf₂ : Multipliable fun n : ℕ ↦ f (-(n + 1))) :
    ∏' n : ℤ, f n = (∏' n : ℕ, f (n + 1)) * f 0 * ∏' n : ℕ, f (-(n + 1)) 
Arguments: {M : Type u_1} [CommMonoid M] [TopologicalSpace M] [ContinuousMul M] [T2Space M] {f : ℤ → M} (hf₁ : Multipliable fun n => f (↑n + 1)) (hf₂ : Multipliable fun n => f (-(↑n + 1)))
Goal: ∏' (n : ℤ), f n = (∏' (n : ℕ), f (↑n + 1)) * f 0 * ∏' (n : ℕ), f (-(↑n + 1))
-- HasProd.of_nat_of_neg
@[to_additive]
lemma HasProd.of_nat_of_neg {f : ℤ → G} (hf₁ : HasProd (fun n : ℕ ↦ f n) g)
    (hf₂ : HasProd (fun n : ℕ ↦ f (-n)) g') : HasProd f (g * g' / f 0) 
Arguments: {G : Type u_2} [CommGroup G] {g g' : G} [TopologicalSpace G] [TopologicalGroup G] {f : ℤ → G} (hf₁ : HasProd (fun n => f ↑n) g) (hf₂ : HasProd (fun n => f (-↑n)) g')
Goal: HasProd f (g * g' / f 0)
-- HasSum.of_nat_of_neg
@[to_additive]
lemma HasProd.of_nat_of_neg {f : ℤ → G} (hf₁ : HasProd (fun n : ℕ ↦ f n) g)
    (hf₂ : HasProd (fun n : ℕ ↦ f (-n)) g') : HasProd f (g * g' / f 0) 
Arguments: {G : Type u_2} [AddCommGroup G] {g g' : G} [TopologicalSpace G] [TopologicalAddGroup G] {f : ℤ → G} (hf₁ : HasSum (fun n => f ↑n) g) (hf₂ : HasSum (fun n => f (-↑n)) g')
Goal: HasSum f (g + g' - f 0)
-- Multipliable.of_nat_of_neg
@[to_additive]
lemma Multipliable.of_nat_of_neg {f : ℤ → G} (hf₁ : Multipliable fun n : ℕ ↦ f n)
    (hf₂ : Multipliable fun n : ℕ ↦ f (-n)) : Multipliable f 
Arguments: {G : Type u_2} [CommGroup G] [TopologicalSpace G] [TopologicalGroup G] {f : ℤ → G} (hf₁ : Multipliable fun n => f ↑n) (hf₂ : Multipliable fun n => f (-↑n))
Goal: Multipliable f
-- Summable.of_nat_of_neg
@[to_additive]
lemma Multipliable.of_nat_of_neg {f : ℤ → G} (hf₁ : Multipliable fun n : ℕ ↦ f n)
    (hf₂ : Multipliable fun n : ℕ ↦ f (-n)) : Multipliable f 
Arguments: {G : Type u_2} [AddCommGroup G] [TopologicalSpace G] [TopologicalAddGroup G] {f : ℤ → G} (hf₁ : Summable fun n => f ↑n) (hf₂ : Summable fun n => f (-↑n))
Goal: Summable f
-- tprod_of_nat_of_neg
@[to_additive]
lemma tprod_of_nat_of_neg [T2Space G] {f : ℤ → G}
    (hf₁ : Multipliable fun n : ℕ ↦ f n) (hf₂ : Multipliable fun n : ℕ ↦ f (-n)) :
    ∏' n : ℤ, f n = (∏' n : ℕ, f n) * (∏' n : ℕ, f (-n)) / f 0 
Arguments: {G : Type u_2} [CommGroup G] [TopologicalSpace G] [TopologicalGroup G] [T2Space G] {f : ℤ → G} (hf₁ : Multipliable fun n => f ↑n) (hf₂ : Multipliable fun n => f (-↑n))
Goal: ∏' (n : ℤ), f n = ((∏' (n : ℕ), f ↑n) * ∏' (n : ℕ), f (-↑n)) / f 0
-- tsum_of_nat_of_neg
@[to_additive]
lemma tprod_of_nat_of_neg [T2Space G] {f : ℤ → G}
    (hf₁ : Multipliable fun n : ℕ ↦ f n) (hf₂ : Multipliable fun n : ℕ ↦ f (-n)) :
    ∏' n : ℤ, f n = (∏' n : ℕ, f n) * (∏' n : ℕ, f (-n)) / f 0 
Arguments: {G : Type u_2} [AddCommGroup G] [TopologicalSpace G] [TopologicalAddGroup G] [T2Space G] {f : ℤ → G} (hf₁ : Summable fun n => f ↑n) (hf₂ : Summable fun n => f (-↑n))
Goal: ∑' (n : ℤ), f n = ∑' (n : ℕ), f ↑n + ∑' (n : ℕ), f (-↑n) - f 0
-- multipliable_int_iff_multipliable_nat_and_neg_add_one
@[to_additive "\"iff\" version of `Summable.of_nat_of_neg_add_one`."]
lemma multipliable_int_iff_multipliable_nat_and_neg_add_one {f : ℤ → G} : Multipliable f ↔
    (Multipliable fun n : ℕ ↦ f n) ∧ (Multipliable fun n : ℕ ↦ f (-(n + 1))) 
Arguments: {G : Type u_2} [CommGroup G] [UniformSpace G] [UniformGroup G] [CompleteSpace G] {f : ℤ → G}
Goal: Multipliable f ↔ (Multipliable fun n => f ↑n) ∧ Multipliable fun n => f (-(↑n + 1))
-- summable_int_iff_summable_nat_and_neg_add_zero
@[to_additive "\"iff\" version of `Summable.of_nat_of_neg_add_one`."]
lemma multipliable_int_iff_multipliable_nat_and_neg_add_one {f : ℤ → G} : Multipliable f ↔
    (Multipliable fun n : ℕ ↦ f n) ∧ (Multipliable fun n : ℕ ↦ f (-(n + 1))) 
Arguments: {G : Type u_2} [AddCommGroup G] [UniformSpace G] [UniformAddGroup G] [CompleteSpace G] {f : ℤ → G}
Goal: Summable f ↔ (Summable fun n => f ↑n) ∧ Summable fun n => f (-(↑n + 1))
-- multipliable_int_iff_multipliable_nat_and_neg
@[to_additive "\"iff\" version of `Summable.of_nat_of_neg`."]
lemma multipliable_int_iff_multipliable_nat_and_neg {f : ℤ → G} :
    Multipliable f ↔ (Multipliable fun n : ℕ ↦ f n) ∧ (Multipliable fun n : ℕ ↦ f (-n)) 
Arguments: {G : Type u_2} [CommGroup G] [UniformSpace G] [UniformGroup G] [CompleteSpace G] {f : ℤ → G}
Goal: Multipliable f ↔ (Multipliable fun n => f ↑n) ∧ Multipliable fun n => f (-↑n)
-- summable_int_iff_summable_nat_and_neg
@[to_additive "\"iff\" version of `Summable.of_nat_of_neg`."]
lemma multipliable_int_iff_multipliable_nat_and_neg {f : ℤ → G} :
    Multipliable f ↔ (Multipliable fun n : ℕ ↦ f n) ∧ (Multipliable fun n : ℕ ↦ f (-n)) 
Arguments: {G : Type u_2} [AddCommGroup G] [UniformSpace G] [UniformAddGroup G] [CompleteSpace G] {f : ℤ → G}
Goal: Summable f ↔ (Summable fun n => f ↑n) ∧ Summable fun n => f (-↑n)
-- HasProd.inv
@[to_additive]
theorem HasProd.inv (h : HasProd f a) : HasProd (fun b ↦ (f b)⁻¹) a⁻¹ 
Arguments: {α : Type u_1} {β : Type u_2} [CommGroup α] [TopologicalSpace α] [TopologicalGroup α] {f : β → α} {a : α} (h : HasProd f a)
Goal: HasProd (fun b => (f b)⁻¹) a⁻¹
-- HasSum.neg
@[to_additive]
theorem HasProd.inv (h : HasProd f a) : HasProd (fun b ↦ (f b)⁻¹) a⁻¹ 
Arguments: {α : Type u_1} {β : Type u_2} [AddCommGroup α] [TopologicalSpace α] [TopologicalAddGroup α] {f : β → α} {a : α} (h : HasSum f a)
Goal: HasSum (fun b => -f b) (-a)
-- Summable.neg
@[to_additive]
theorem Multipliable.inv (hf : Multipliable f) : Multipliable fun b ↦ (f b)⁻¹ 
Arguments: {α : Type u_1} {β : Type u_2} [AddCommGroup α] [TopologicalSpace α] [TopologicalAddGroup α] {f : β → α} (hf : Summable f)
Goal: Summable fun b => -f b
-- Multipliable.inv
@[to_additive]
theorem Multipliable.inv (hf : Multipliable f) : Multipliable fun b ↦ (f b)⁻¹ 
Arguments: {α : Type u_1} {β : Type u_2} [CommGroup α] [TopologicalSpace α] [TopologicalGroup α] {f : β → α} (hf : Multipliable f)
Goal: Multipliable fun b => (f b)⁻¹
-- Summable.of_neg
@[to_additive]
theorem Multipliable.of_inv (hf : Multipliable fun b ↦ (f b)⁻¹) : Multipliable f 
Arguments: {α : Type u_1} {β : Type u_2} [AddCommGroup α] [TopologicalSpace α] [TopologicalAddGroup α] {f : β → α} (hf : Summable fun b => -f b)
Goal: Summable f
-- Multipliable.of_inv
@[to_additive]
theorem Multipliable.of_inv (hf : Multipliable fun b ↦ (f b)⁻¹) : Multipliable f 
Arguments: {α : Type u_1} {β : Type u_2} [CommGroup α] [TopologicalSpace α] [TopologicalGroup α] {f : β → α} (hf : Multipliable fun b => (f b)⁻¹)
Goal: Multipliable f
-- summable_neg_iff
@[to_additive]
theorem multipliable_inv_iff : (Multipliable fun b ↦ (f b)⁻¹) ↔ Multipliable f 
Arguments: {α : Type u_1} {β : Type u_2} [AddCommGroup α] [TopologicalSpace α] [TopologicalAddGroup α] {f : β → α}
Goal: (Summable fun b => -f b) ↔ Summable f
-- multipliable_inv_iff
@[to_additive]
theorem multipliable_inv_iff : (Multipliable fun b ↦ (f b)⁻¹) ↔ Multipliable f 
Arguments: {α : Type u_1} {β : Type u_2} [CommGroup α] [TopologicalSpace α] [TopologicalGroup α] {f : β → α}
Goal: (Multipliable fun b => (f b)⁻¹) ↔ Multipliable f
-- HasProd.div
@[to_additive]
theorem HasProd.div (hf : HasProd f a₁) (hg : HasProd g a₂) :
    HasProd (fun b ↦ f b / g b) (a₁ / a₂) 
Arguments: {α : Type u_1} {β : Type u_2} [CommGroup α] [TopologicalSpace α] [TopologicalGroup α] {f g : β → α} {a₁ a₂ : α} (hf : HasProd f a₁) (hg : HasProd g a₂)
Goal: HasProd (fun b => f b / g b) (a₁ / a₂)
-- HasSum.sub
@[to_additive]
theorem HasProd.div (hf : HasProd f a₁) (hg : HasProd g a₂) :
    HasProd (fun b ↦ f b / g b) (a₁ / a₂) 
Arguments: {α : Type u_1} {β : Type u_2} [AddCommGroup α] [TopologicalSpace α] [TopologicalAddGroup α] {f g : β → α} {a₁ a₂ : α} (hf : HasSum f a₁) (hg : HasSum g a₂)
Goal: HasSum (fun b => f b - g b) (a₁ - a₂)
-- Multipliable.div
@[to_additive]
theorem Multipliable.div (hf : Multipliable f) (hg : Multipliable g) :
    Multipliable fun b ↦ f b / g b 
Arguments: {α : Type u_1} {β : Type u_2} [CommGroup α] [TopologicalSpace α] [TopologicalGroup α] {f g : β → α} (hf : Multipliable f) (hg : Multipliable g)
Goal: Multipliable fun b => f b / g b
-- Summable.sub
@[to_additive]
theorem Multipliable.div (hf : Multipliable f) (hg : Multipliable g) :
    Multipliable fun b ↦ f b / g b 
Arguments: {α : Type u_1} {β : Type u_2} [AddCommGroup α] [TopologicalSpace α] [TopologicalAddGroup α] {f g : β → α} (hf : Summable f) (hg : Summable g)
Goal: Summable fun b => f b - g b
-- Summable.trans_sub
@[to_additive]
theorem Multipliable.trans_div (hg : Multipliable g) (hfg : Multipliable fun b ↦ f b / g b) :
    Multipliable f 
Arguments: {α : Type u_1} {β : Type u_2} [AddCommGroup α] [TopologicalSpace α] [TopologicalAddGroup α] {f g : β → α} (hg : Summable g) (hfg : Summable fun b => f b - g b)
Goal: Summable f
-- Multipliable.trans_div
@[to_additive]
theorem Multipliable.trans_div (hg : Multipliable g) (hfg : Multipliable fun b ↦ f b / g b) :
    Multipliable f 
Arguments: {α : Type u_1} {β : Type u_2} [CommGroup α] [TopologicalSpace α] [TopologicalGroup α] {f g : β → α} (hg : Multipliable g) (hfg : Multipliable fun b => f b / g b)
Goal: Multipliable f
-- multipliable_iff_of_multipliable_div
@[to_additive]
theorem multipliable_iff_of_multipliable_div (hfg : Multipliable fun b ↦ f b / g b) :
    Multipliable f ↔ Multipliable g 
Arguments: {α : Type u_1} {β : Type u_2} [CommGroup α] [TopologicalSpace α] [TopologicalGroup α] {f g : β → α} (hfg : Multipliable fun b => f b / g b)
Goal: Multipliable f ↔ Multipliable g
-- summable_iff_of_summable_sub
@[to_additive]
theorem multipliable_iff_of_multipliable_div (hfg : Multipliable fun b ↦ f b / g b) :
    Multipliable f ↔ Multipliable g 
Arguments: {α : Type u_1} {β : Type u_2} [AddCommGroup α] [TopologicalSpace α] [TopologicalAddGroup α] {f g : β → α} (hfg : Summable fun b => f b - g b)
Goal: Summable f ↔ Summable g
-- HasSum.update
@[to_additive]
theorem HasProd.update (hf : HasProd f a₁) (b : β) [DecidableEq β] (a : α) :
    HasProd (update f b a) (a / f b * a₁) 
Arguments: {α : Type u_1} {β : Type u_2} [AddCommGroup α] [TopologicalSpace α] [TopologicalAddGroup α] {f : β → α} {a₁ : α} (hf : HasSum f a₁) (b : β) [DecidableEq β] (a : α)
Goal: HasSum (Function.update f b a) (a - f b + a₁)
-- HasProd.update
@[to_additive]
theorem HasProd.update (hf : HasProd f a₁) (b : β) [DecidableEq β] (a : α) :
    HasProd (update f b a) (a / f b * a₁) 
Arguments: {α : Type u_1} {β : Type u_2} [CommGroup α] [TopologicalSpace α] [TopologicalGroup α] {f : β → α} {a₁ : α} (hf : HasProd f a₁) (b : β) [DecidableEq β] (a : α)
Goal: HasProd (Function.update f b a) (a / f b * a₁)
-- Multipliable.update
@[to_additive]
theorem Multipliable.update (hf : Multipliable f) (b : β) [DecidableEq β] (a : α) :
    Multipliable (update f b a) 
Arguments: {α : Type u_1} {β : Type u_2} [CommGroup α] [TopologicalSpace α] [TopologicalGroup α] {f : β → α} (hf : Multipliable f) (b : β) [DecidableEq β] (a : α)
Goal: Multipliable (Function.update f b a)
-- Summable.update
@[to_additive]
theorem Multipliable.update (hf : Multipliable f) (b : β) [DecidableEq β] (a : α) :
    Multipliable (update f b a) 
Arguments: {α : Type u_1} {β : Type u_2} [AddCommGroup α] [TopologicalSpace α] [TopologicalAddGroup α] {f : β → α} (hf : Summable f) (b : β) [DecidableEq β] (a : α)
Goal: Summable (Function.update f b a)
-- HasSum.hasSum_compl_iff
@[to_additive]
theorem HasProd.hasProd_compl_iff {s : Set β} (hf : HasProd (f ∘ (↑) : s → α) a₁) :
    HasProd (f ∘ (↑) : ↑sᶜ → α) a₂ ↔ HasProd f (a₁ * a₂) 
Arguments: {α : Type u_1} {β : Type u_2} [AddCommGroup α] [TopologicalSpace α] [TopologicalAddGroup α] {f : β → α} {a₁ a₂ : α} {s : Set β} (hf : HasSum (f ∘ Subtype.val) a₁)
Goal: HasSum (f ∘ Subtype.val) a₂ ↔ HasSum f (a₁ + a₂)