topology.algebra.infinite_sum.orderMathlib.Topology.Algebra.InfiniteSum.Order

This file has been ported!

Changes since the initial port

The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.

Changes in mathlib3

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(last sync)

Changes in mathlib3port

mathlib3
mathlib3port
Diff
@@ -4,9 +4,9 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Johannes Hölzl
 -/
 import Algebra.Order.Archimedean
-import Topology.Algebra.InfiniteSum.Basic
+import Topology.Algebra.InfiniteSum.Defs
 import Topology.Algebra.Order.Field
-import Topology.Algebra.Order.MonotoneConvergence
+import Topology.Order.MonotoneConvergence
 
 #align_import topology.algebra.infinite_sum.order from "leanprover-community/mathlib"@"f47581155c818e6361af4e4fda60d27d020c226b"
 
@@ -71,7 +71,7 @@ theorem le_hasSum_of_le_sum (hf : HasSum f a) (h : ∀ s, a₂ ≤ ∑ i in s, f
 #align le_has_sum_of_le_sum le_hasSum_of_le_sum
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:642:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
 #print hasSum_le_inj /-
 theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     (hs : ∀ (c) (_ : c ∉ Set.range e), 0 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : HasSum f a₁)
@@ -98,7 +98,7 @@ theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
 #align has_sum_le_inj hasSum_le_inj
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:642:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
 #print tsum_le_tsum_of_inj /-
 theorem tsum_le_tsum_of_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     (hs : ∀ (c) (_ : c ∉ Set.range e), 0 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : Summable f)
@@ -107,7 +107,7 @@ theorem tsum_le_tsum_of_inj {g : κ → α} (e : ι → κ) (he : Injective e)
 #align tsum_le_tsum_of_inj tsum_le_tsum_of_inj
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (i «expr ∉ » s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:642:2: warning: expanding binder collection (i «expr ∉ » s) -/
 #print sum_le_hasSum /-
 theorem sum_le_hasSum (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (hf : HasSum f a) :
     ∑ i in s, f i ≤ a :=
@@ -124,7 +124,7 @@ theorem isLUB_hasSum (h : ∀ i, 0 ≤ f i) (hf : HasSum f a) :
 #align is_lub_has_sum isLUB_hasSum
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (b' «expr ≠ » i) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:642:2: warning: expanding binder collection (b' «expr ≠ » i) -/
 #print le_hasSum /-
 theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤ f b') : f i ≤ a :=
   calc
@@ -133,7 +133,7 @@ theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 
 #align le_has_sum le_hasSum
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (i «expr ∉ » s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:642:2: warning: expanding binder collection (i «expr ∉ » s) -/
 #print sum_le_tsum /-
 theorem sum_le_tsum {f : ι → α} (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (hf : Summable f) :
     ∑ i in s, f i ≤ ∑' i, f i :=
@@ -141,7 +141,7 @@ theorem sum_le_tsum {f : ι → α} (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s),
 #align sum_le_tsum sum_le_tsum
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (b' «expr ≠ » i) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:642:2: warning: expanding binder collection (b' «expr ≠ » i) -/
 #print le_tsum /-
 theorem le_tsum (hf : Summable f) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤ f b') : f i ≤ ∑' i, f i :=
   le_hasSum (Summable.hasSum hf) i hb
Diff
@@ -81,10 +81,10 @@ theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     by
     refine'
       (hasSum_iff_hasSum_of_ne_zero_bij (e ∘ coe) (fun c₁ c₂ hc => he hc) (fun c hc => _) _).2 hf
-    · rw [mem_support] at hc 
-      cases' eq : partial_inv e c with i <;> rw [Eq] at hc 
+    · rw [mem_support] at hc
+      cases' eq : partial_inv e c with i <;> rw [Eq] at hc
       · contradiction
-      · rw [partial_inv_of_injective he] at eq 
+      · rw [partial_inv_of_injective he] at eq
         exact ⟨⟨i, hc⟩, Eq⟩
     · rintro c
       simp [partial_inv_left he, Option.casesOn']
Diff
@@ -375,7 +375,7 @@ theorem Set.Finite.of_summable_const [LinearOrderedAddCommGroup α] [Topological
   obtain ⟨n, hn⟩ := Archimedean.arch (∑' i : ι, b) hb
   have : ∀ s : Finset ι, s.card ≤ n := by
     intro s
-    simpa [nsmul_le_nsmul_iff hb] using (H s).trans hn
+    simpa [nsmul_le_nsmul_iff_left hb] using (H s).trans hn
   haveI : Fintype ι := fintypeOfFinsetCardLe n this
   exact Set.finite_univ
 #align finite_of_summable_const Set.Finite.of_summable_const
Diff
@@ -303,7 +303,7 @@ theorem tsum_eq_zero_iff (hf : Summable f) : ∑' i, f i = 0 ↔ ∀ x, f x = 0
 
 #print tsum_ne_zero_iff /-
 theorem tsum_ne_zero_iff (hf : Summable f) : ∑' i, f i ≠ 0 ↔ ∃ x, f x ≠ 0 := by
-  rw [Ne.def, tsum_eq_zero_iff hf, not_forall]
+  rw [Ne.def, tsum_eq_zero_iff hf, Classical.not_forall]
 #align tsum_ne_zero_iff tsum_ne_zero_iff
 -/
 
Diff
@@ -267,10 +267,10 @@ theorem hasSum_zero_iff_of_nonneg (hf : ∀ i, 0 ≤ f i) : HasSum f 0 ↔ f = 0
 
 end OrderedAddCommGroup
 
-section CanonicallyOrderedAddMonoid
+section CanonicallyOrderedAddCommMonoid
 
-variable [CanonicallyOrderedAddMonoid α] [TopologicalSpace α] [OrderClosedTopology α] {f : ι → α}
-  {a : α}
+variable [CanonicallyOrderedAddCommMonoid α] [TopologicalSpace α] [OrderClosedTopology α]
+  {f : ι → α} {a : α}
 
 #print le_hasSum' /-
 theorem le_hasSum' (hf : HasSum f a) (i : ι) : f i ≤ a :=
@@ -313,7 +313,7 @@ theorem isLUB_hasSum' (hf : HasSum f a) : IsLUB (Set.range fun s => ∑ i in s,
 #align is_lub_has_sum' isLUB_hasSum'
 -/
 
-end CanonicallyOrderedAddMonoid
+end CanonicallyOrderedAddCommMonoid
 
 section LinearOrder
 
@@ -336,8 +336,9 @@ theorem hasSum_of_isLUB_of_nonneg [LinearOrderedAddCommMonoid α] [TopologicalSp
 -/
 
 #print hasSum_of_isLUB /-
-theorem hasSum_of_isLUB [CanonicallyLinearOrderedAddMonoid α] [TopologicalSpace α] [OrderTopology α]
-    {f : ι → α} (b : α) (hf : IsLUB (Set.range fun s => ∑ i in s, f i) b) : HasSum f b :=
+theorem hasSum_of_isLUB [CanonicallyLinearOrderedAddCommMonoid α] [TopologicalSpace α]
+    [OrderTopology α] {f : ι → α} (b : α) (hf : IsLUB (Set.range fun s => ∑ i in s, f i) b) :
+    HasSum f b :=
   tendsto_atTop_isLUB (Finset.sum_mono_set f) hf
 #align has_sum_of_is_lub hasSum_of_isLUB
 -/
Diff
@@ -3,10 +3,10 @@ Copyright (c) 2017 Johannes Hölzl. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Johannes Hölzl
 -/
-import Mathbin.Algebra.Order.Archimedean
-import Mathbin.Topology.Algebra.InfiniteSum.Basic
-import Mathbin.Topology.Algebra.Order.Field
-import Mathbin.Topology.Algebra.Order.MonotoneConvergence
+import Algebra.Order.Archimedean
+import Topology.Algebra.InfiniteSum.Basic
+import Topology.Algebra.Order.Field
+import Topology.Algebra.Order.MonotoneConvergence
 
 #align_import topology.algebra.infinite_sum.order from "leanprover-community/mathlib"@"f47581155c818e6361af4e4fda60d27d020c226b"
 
@@ -71,7 +71,7 @@ theorem le_hasSum_of_le_sum (hf : HasSum f a) (h : ∀ s, a₂ ≤ ∑ i in s, f
 #align le_has_sum_of_le_sum le_hasSum_of_le_sum
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
 #print hasSum_le_inj /-
 theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     (hs : ∀ (c) (_ : c ∉ Set.range e), 0 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : HasSum f a₁)
@@ -98,7 +98,7 @@ theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
 #align has_sum_le_inj hasSum_le_inj
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
 #print tsum_le_tsum_of_inj /-
 theorem tsum_le_tsum_of_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     (hs : ∀ (c) (_ : c ∉ Set.range e), 0 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : Summable f)
@@ -107,7 +107,7 @@ theorem tsum_le_tsum_of_inj {g : κ → α} (e : ι → κ) (he : Injective e)
 #align tsum_le_tsum_of_inj tsum_le_tsum_of_inj
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (i «expr ∉ » s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (i «expr ∉ » s) -/
 #print sum_le_hasSum /-
 theorem sum_le_hasSum (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (hf : HasSum f a) :
     ∑ i in s, f i ≤ a :=
@@ -124,7 +124,7 @@ theorem isLUB_hasSum (h : ∀ i, 0 ≤ f i) (hf : HasSum f a) :
 #align is_lub_has_sum isLUB_hasSum
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (b' «expr ≠ » i) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (b' «expr ≠ » i) -/
 #print le_hasSum /-
 theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤ f b') : f i ≤ a :=
   calc
@@ -133,7 +133,7 @@ theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 
 #align le_has_sum le_hasSum
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (i «expr ∉ » s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (i «expr ∉ » s) -/
 #print sum_le_tsum /-
 theorem sum_le_tsum {f : ι → α} (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (hf : Summable f) :
     ∑ i in s, f i ≤ ∑' i, f i :=
@@ -141,7 +141,7 @@ theorem sum_le_tsum {f : ι → α} (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s),
 #align sum_le_tsum sum_le_tsum
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (b' «expr ≠ » i) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (b' «expr ≠ » i) -/
 #print le_tsum /-
 theorem le_tsum (hf : Summable f) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤ f b') : f i ≤ ∑' i, f i :=
   le_hasSum (Summable.hasSum hf) i hb
Diff
@@ -357,7 +357,7 @@ theorem summable_abs_iff [LinearOrderedAddCommGroup α] [UniformSpace α] [Unifo
 #align summable_abs_iff summable_abs_iff
 -/
 
-alias summable_abs_iff ↔ Summable.of_abs Summable.abs
+alias ⟨Summable.of_abs, Summable.abs⟩ := summable_abs_iff
 #align summable.of_abs Summable.of_abs
 #align summable.abs Summable.abs
 
Diff
@@ -2,17 +2,14 @@
 Copyright (c) 2017 Johannes Hölzl. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Johannes Hölzl
-
-! This file was ported from Lean 3 source module topology.algebra.infinite_sum.order
-! leanprover-community/mathlib commit f47581155c818e6361af4e4fda60d27d020c226b
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathbin.Algebra.Order.Archimedean
 import Mathbin.Topology.Algebra.InfiniteSum.Basic
 import Mathbin.Topology.Algebra.Order.Field
 import Mathbin.Topology.Algebra.Order.MonotoneConvergence
 
+#align_import topology.algebra.infinite_sum.order from "leanprover-community/mathlib"@"f47581155c818e6361af4e4fda60d27d020c226b"
+
 /-!
 # Infinite sum in an order
 
@@ -74,7 +71,7 @@ theorem le_hasSum_of_le_sum (hf : HasSum f a) (h : ∀ s, a₂ ≤ ∑ i in s, f
 #align le_has_sum_of_le_sum le_hasSum_of_le_sum
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
 #print hasSum_le_inj /-
 theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     (hs : ∀ (c) (_ : c ∉ Set.range e), 0 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : HasSum f a₁)
@@ -101,7 +98,7 @@ theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
 #align has_sum_le_inj hasSum_le_inj
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
 #print tsum_le_tsum_of_inj /-
 theorem tsum_le_tsum_of_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     (hs : ∀ (c) (_ : c ∉ Set.range e), 0 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : Summable f)
@@ -110,7 +107,7 @@ theorem tsum_le_tsum_of_inj {g : κ → α} (e : ι → κ) (he : Injective e)
 #align tsum_le_tsum_of_inj tsum_le_tsum_of_inj
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (i «expr ∉ » s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (i «expr ∉ » s) -/
 #print sum_le_hasSum /-
 theorem sum_le_hasSum (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (hf : HasSum f a) :
     ∑ i in s, f i ≤ a :=
@@ -127,7 +124,7 @@ theorem isLUB_hasSum (h : ∀ i, 0 ≤ f i) (hf : HasSum f a) :
 #align is_lub_has_sum isLUB_hasSum
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (b' «expr ≠ » i) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (b' «expr ≠ » i) -/
 #print le_hasSum /-
 theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤ f b') : f i ≤ a :=
   calc
@@ -136,7 +133,7 @@ theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 
 #align le_has_sum le_hasSum
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (i «expr ∉ » s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (i «expr ∉ » s) -/
 #print sum_le_tsum /-
 theorem sum_le_tsum {f : ι → α} (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (hf : Summable f) :
     ∑ i in s, f i ≤ ∑' i, f i :=
@@ -144,7 +141,7 @@ theorem sum_le_tsum {f : ι → α} (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s),
 #align sum_le_tsum sum_le_tsum
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (b' «expr ≠ » i) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (b' «expr ≠ » i) -/
 #print le_tsum /-
 theorem le_tsum (hf : Summable f) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤ f b') : f i ≤ ∑' i, f i :=
   le_hasSum (Summable.hasSum hf) i hb
Diff
@@ -75,6 +75,7 @@ theorem le_hasSum_of_le_sum (hf : HasSum f a) (h : ∀ s, a₂ ≤ ∑ i in s, f
 -/
 
 /- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
+#print hasSum_le_inj /-
 theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     (hs : ∀ (c) (_ : c ∉ Set.range e), 0 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : HasSum f a₁)
     (hg : HasSum g a₂) : a₁ ≤ a₂ :=
@@ -98,44 +99,57 @@ theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     rw [this, Option.casesOn']
     exact hs _ h
 #align has_sum_le_inj hasSum_le_inj
+-/
 
 /- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
+#print tsum_le_tsum_of_inj /-
 theorem tsum_le_tsum_of_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     (hs : ∀ (c) (_ : c ∉ Set.range e), 0 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : Summable f)
     (hg : Summable g) : tsum f ≤ tsum g :=
   hasSum_le_inj _ he hs h hf.HasSum hg.HasSum
 #align tsum_le_tsum_of_inj tsum_le_tsum_of_inj
+-/
 
 /- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (i «expr ∉ » s) -/
+#print sum_le_hasSum /-
 theorem sum_le_hasSum (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (hf : HasSum f a) :
     ∑ i in s, f i ≤ a :=
   ge_of_tendsto hf
     (eventually_atTop.2
       ⟨s, fun t hst => sum_le_sum_of_subset_of_nonneg hst fun i hbt hbs => hs i hbs⟩)
 #align sum_le_has_sum sum_le_hasSum
+-/
 
+#print isLUB_hasSum /-
 theorem isLUB_hasSum (h : ∀ i, 0 ≤ f i) (hf : HasSum f a) :
     IsLUB (Set.range fun s => ∑ i in s, f i) a :=
   isLUB_of_tendsto_atTop (Finset.sum_mono_set_of_nonneg h) hf
 #align is_lub_has_sum isLUB_hasSum
+-/
 
 /- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (b' «expr ≠ » i) -/
+#print le_hasSum /-
 theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤ f b') : f i ≤ a :=
   calc
     f i = ∑ i in {i}, f i := Finset.sum_singleton.symm
     _ ≤ a := sum_le_hasSum _ (by convert hb; simp) hf
 #align le_has_sum le_hasSum
+-/
 
 /- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (i «expr ∉ » s) -/
+#print sum_le_tsum /-
 theorem sum_le_tsum {f : ι → α} (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (hf : Summable f) :
     ∑ i in s, f i ≤ ∑' i, f i :=
   sum_le_hasSum s hs hf.HasSum
 #align sum_le_tsum sum_le_tsum
+-/
 
 /- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (b' «expr ≠ » i) -/
+#print le_tsum /-
 theorem le_tsum (hf : Summable f) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤ f b') : f i ≤ ∑' i, f i :=
   le_hasSum (Summable.hasSum hf) i hb
 #align le_tsum le_tsum
+-/
 
 #print tsum_le_tsum /-
 theorem tsum_le_tsum (h : ∀ i, f i ≤ g i) (hf : Summable f) (hg : Summable g) :
@@ -157,6 +171,7 @@ theorem tsum_le_of_sum_le (hf : Summable f) (h : ∀ s, ∑ i in s, f i ≤ a₂
 #align tsum_le_of_sum_le tsum_le_of_sum_le
 -/
 
+#print tsum_le_of_sum_le' /-
 theorem tsum_le_of_sum_le' (ha₂ : 0 ≤ a₂) (h : ∀ s, ∑ i in s, f i ≤ a₂) : ∑' i, f i ≤ a₂ :=
   by
   by_cases hf : Summable f
@@ -164,28 +179,37 @@ theorem tsum_le_of_sum_le' (ha₂ : 0 ≤ a₂) (h : ∀ s, ∑ i in s, f i ≤
   · rw [tsum_eq_zero_of_not_summable hf]
     exact ha₂
 #align tsum_le_of_sum_le' tsum_le_of_sum_le'
+-/
 
+#print HasSum.nonneg /-
 theorem HasSum.nonneg (h : ∀ i, 0 ≤ g i) (ha : HasSum g a) : 0 ≤ a :=
   hasSum_le h hasSum_zero ha
 #align has_sum.nonneg HasSum.nonneg
+-/
 
+#print HasSum.nonpos /-
 theorem HasSum.nonpos (h : ∀ i, g i ≤ 0) (ha : HasSum g a) : a ≤ 0 :=
   hasSum_le h ha hasSum_zero
 #align has_sum.nonpos HasSum.nonpos
+-/
 
+#print tsum_nonneg /-
 theorem tsum_nonneg (h : ∀ i, 0 ≤ g i) : 0 ≤ ∑' i, g i :=
   by
   by_cases hg : Summable g
   · exact hg.has_sum.nonneg h
   · simp [tsum_eq_zero_of_not_summable hg]
 #align tsum_nonneg tsum_nonneg
+-/
 
+#print tsum_nonpos /-
 theorem tsum_nonpos (h : ∀ i, f i ≤ 0) : ∑' i, f i ≤ 0 :=
   by
   by_cases hf : Summable f
   · exact hf.has_sum.nonpos h
   · simp [tsum_eq_zero_of_not_summable hf]
 #align tsum_nonpos tsum_nonpos
+-/
 
 end OrderedAddCommMonoid
 
@@ -194,12 +218,14 @@ section OrderedAddCommGroup
 variable [OrderedAddCommGroup α] [TopologicalSpace α] [TopologicalAddGroup α]
   [OrderClosedTopology α] {f g : ι → α} {a₁ a₂ : α} {i : ι}
 
+#print hasSum_lt /-
 theorem hasSum_lt (h : f ≤ g) (hi : f i < g i) (hf : HasSum f a₁) (hg : HasSum g a₂) : a₁ < a₂ :=
   by
   have : update f i 0 ≤ update g i 0 := update_le_update_iff.mpr ⟨rfl.le, fun i _ => h i⟩
   have : 0 - f i + a₁ ≤ 0 - g i + a₂ := hasSum_le this (hf.update i 0) (hg.update i 0)
   simpa only [zero_sub, add_neg_cancel_left] using add_lt_add_of_lt_of_le hi this
 #align has_sum_lt hasSum_lt
+-/
 
 #print hasSum_strict_mono /-
 @[mono]
@@ -209,10 +235,12 @@ theorem hasSum_strict_mono (hf : HasSum f a₁) (hg : HasSum g a₂) (h : f < g)
 #align has_sum_strict_mono hasSum_strict_mono
 -/
 
+#print tsum_lt_tsum /-
 theorem tsum_lt_tsum (h : f ≤ g) (hi : f i < g i) (hf : Summable f) (hg : Summable g) :
     ∑' n, f n < ∑' n, g n :=
   hasSum_lt h hi hf.HasSum hg.HasSum
 #align tsum_lt_tsum tsum_lt_tsum
+-/
 
 #print tsum_strict_mono /-
 @[mono]
@@ -222,10 +250,13 @@ theorem tsum_strict_mono (hf : Summable f) (hg : Summable g) (h : f < g) : ∑'
 #align tsum_strict_mono tsum_strict_mono
 -/
 
+#print tsum_pos /-
 theorem tsum_pos (hsum : Summable g) (hg : ∀ i, 0 ≤ g i) (i : ι) (hi : 0 < g i) : 0 < ∑' i, g i :=
   by rw [← tsum_zero]; exact tsum_lt_tsum hg hi summable_zero hsum
 #align tsum_pos tsum_pos
+-/
 
+#print hasSum_zero_iff_of_nonneg /-
 theorem hasSum_zero_iff_of_nonneg (hf : ∀ i, 0 ≤ f i) : HasSum f 0 ↔ f = 0 :=
   by
   refine' ⟨fun hf' => _, _⟩
@@ -235,6 +266,7 @@ theorem hasSum_zero_iff_of_nonneg (hf : ∀ i, 0 ≤ f i) : HasSum f 0 ↔ f = 0
   · rintro rfl
     exact hasSum_zero
 #align has_sum_zero_iff_of_nonneg hasSum_zero_iff_of_nonneg
+-/
 
 end OrderedAddCommGroup
 
@@ -255,6 +287,7 @@ theorem le_tsum' (hf : Summable f) (i : ι) : f i ≤ ∑' i, f i :=
 #align le_tsum' le_tsum'
 -/
 
+#print hasSum_zero_iff /-
 theorem hasSum_zero_iff : HasSum f 0 ↔ ∀ x, f x = 0 :=
   by
   refine' ⟨_, fun h => _⟩
@@ -263,14 +296,19 @@ theorem hasSum_zero_iff : HasSum f 0 ↔ ∀ x, f x = 0 :=
   · convert hasSum_zero
     exact funext h
 #align has_sum_zero_iff hasSum_zero_iff
+-/
 
+#print tsum_eq_zero_iff /-
 theorem tsum_eq_zero_iff (hf : Summable f) : ∑' i, f i = 0 ↔ ∀ x, f x = 0 := by
   rw [← hasSum_zero_iff, hf.has_sum_iff]
 #align tsum_eq_zero_iff tsum_eq_zero_iff
+-/
 
+#print tsum_ne_zero_iff /-
 theorem tsum_ne_zero_iff (hf : Summable f) : ∑' i, f i ≠ 0 ↔ ∃ x, f x ≠ 0 := by
   rw [Ne.def, tsum_eq_zero_iff hf, not_forall]
 #align tsum_ne_zero_iff tsum_ne_zero_iff
+-/
 
 #print isLUB_hasSum' /-
 theorem isLUB_hasSum' (hf : HasSum f a) : IsLUB (Set.range fun s => ∑ i in s, f i) a :=
@@ -292,11 +330,13 @@ the existence of a least upper bound.
 -/
 
 
+#print hasSum_of_isLUB_of_nonneg /-
 theorem hasSum_of_isLUB_of_nonneg [LinearOrderedAddCommMonoid α] [TopologicalSpace α]
     [OrderTopology α] {f : ι → α} (i : α) (h : ∀ i, 0 ≤ f i)
     (hf : IsLUB (Set.range fun s => ∑ i in s, f i) i) : HasSum f i :=
   tendsto_atTop_isLUB (Finset.sum_mono_set_of_nonneg h) hf
 #align has_sum_of_is_lub_of_nonneg hasSum_of_isLUB_of_nonneg
+-/
 
 #print hasSum_of_isLUB /-
 theorem hasSum_of_isLUB [CanonicallyLinearOrderedAddMonoid α] [TopologicalSpace α] [OrderTopology α]
@@ -305,6 +345,7 @@ theorem hasSum_of_isLUB [CanonicallyLinearOrderedAddMonoid α] [TopologicalSpace
 #align has_sum_of_is_lub hasSum_of_isLUB
 -/
 
+#print summable_abs_iff /-
 theorem summable_abs_iff [LinearOrderedAddCommGroup α] [UniformSpace α] [UniformAddGroup α]
     [CompleteSpace α] {f : ι → α} : (Summable fun x => |f x|) ↔ Summable f :=
   have h1 : ∀ x : {x | 0 ≤ f x}, |f x| = f x := fun x => abs_of_nonneg x.2
@@ -317,11 +358,13 @@ theorem summable_abs_iff [LinearOrderedAddCommGroup α] [UniformSpace α] [Unifo
       simp only [h1, h2]
     _ ↔ _ := by simp only [summable_neg_iff, summable_subtype_and_compl]
 #align summable_abs_iff summable_abs_iff
+-/
 
 alias summable_abs_iff ↔ Summable.of_abs Summable.abs
 #align summable.of_abs Summable.of_abs
 #align summable.abs Summable.abs
 
+#print Set.Finite.of_summable_const /-
 --TODO: Change the conclusion to `finite ι`
 theorem Set.Finite.of_summable_const [LinearOrderedAddCommGroup α] [TopologicalSpace α]
     [Archimedean α] [OrderClosedTopology α] {b : α} (hb : 0 < b) (hf : Summable fun i : ι => b) :
@@ -338,9 +381,11 @@ theorem Set.Finite.of_summable_const [LinearOrderedAddCommGroup α] [Topological
   haveI : Fintype ι := fintypeOfFinsetCardLe n this
   exact Set.finite_univ
 #align finite_of_summable_const Set.Finite.of_summable_const
+-/
 
 end LinearOrder
 
+#print Summable.tendsto_atTop_of_pos /-
 theorem Summable.tendsto_atTop_of_pos [LinearOrderedField α] [TopologicalSpace α] [OrderTopology α]
     {f : ℕ → α} (hf : Summable f⁻¹) (hf' : ∀ n, 0 < f n) : Tendsto f atTop atTop :=
   by
@@ -352,4 +397,5 @@ theorem Summable.tendsto_atTop_of_pos [LinearOrderedField α] [TopologicalSpace
   rw [Set.mem_Ioi, inv_eq_one_div, one_div, Pi.inv_apply, _root_.inv_pos]
   exact hf' _
 #align summable.tendsto_top_of_pos Summable.tendsto_atTop_of_pos
+-/
 
Diff
@@ -35,8 +35,8 @@ variable [Preorder α] [AddCommMonoid α] [TopologicalSpace α] [OrderClosedTopo
   {f : ℕ → α} {c : α}
 
 #print tsum_le_of_sum_range_le /-
-theorem tsum_le_of_sum_range_le (hf : Summable f) (h : ∀ n, (∑ i in range n, f i) ≤ c) :
-    (∑' n, f n) ≤ c :=
+theorem tsum_le_of_sum_range_le (hf : Summable f) (h : ∀ n, ∑ i in range n, f i ≤ c) :
+    ∑' n, f n ≤ c :=
   let ⟨l, hl⟩ := hf
   hl.tsum_eq.symm ▸ le_of_tendsto' hl.tendsto_sum_nat h
 #align tsum_le_of_sum_range_le tsum_le_of_sum_range_le
@@ -63,7 +63,7 @@ theorem hasSum_mono (hf : HasSum f a₁) (hg : HasSum g a₂) (h : f ≤ g) : a
 -/
 
 #print hasSum_le_of_sum_le /-
-theorem hasSum_le_of_sum_le (hf : HasSum f a) (h : ∀ s, (∑ i in s, f i) ≤ a₂) : a ≤ a₂ :=
+theorem hasSum_le_of_sum_le (hf : HasSum f a) (h : ∀ s, ∑ i in s, f i ≤ a₂) : a ≤ a₂ :=
   le_of_tendsto' hf h
 #align has_sum_le_of_sum_le hasSum_le_of_sum_le
 -/
@@ -108,7 +108,7 @@ theorem tsum_le_tsum_of_inj {g : κ → α} (e : ι → κ) (he : Injective e)
 
 /- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (i «expr ∉ » s) -/
 theorem sum_le_hasSum (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (hf : HasSum f a) :
-    (∑ i in s, f i) ≤ a :=
+    ∑ i in s, f i ≤ a :=
   ge_of_tendsto hf
     (eventually_atTop.2
       ⟨s, fun t hst => sum_le_sum_of_subset_of_nonneg hst fun i hbt hbs => hs i hbs⟩)
@@ -128,7 +128,7 @@ theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 
 
 /- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (i «expr ∉ » s) -/
 theorem sum_le_tsum {f : ι → α} (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (hf : Summable f) :
-    (∑ i in s, f i) ≤ ∑' i, f i :=
+    ∑ i in s, f i ≤ ∑' i, f i :=
   sum_le_hasSum s hs hf.HasSum
 #align sum_le_tsum sum_le_tsum
 
@@ -139,25 +139,25 @@ theorem le_tsum (hf : Summable f) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤
 
 #print tsum_le_tsum /-
 theorem tsum_le_tsum (h : ∀ i, f i ≤ g i) (hf : Summable f) (hg : Summable g) :
-    (∑' i, f i) ≤ ∑' i, g i :=
+    ∑' i, f i ≤ ∑' i, g i :=
   hasSum_le h hf.HasSum hg.HasSum
 #align tsum_le_tsum tsum_le_tsum
 -/
 
 #print tsum_mono /-
 @[mono]
-theorem tsum_mono (hf : Summable f) (hg : Summable g) (h : f ≤ g) : (∑' n, f n) ≤ ∑' n, g n :=
+theorem tsum_mono (hf : Summable f) (hg : Summable g) (h : f ≤ g) : ∑' n, f n ≤ ∑' n, g n :=
   tsum_le_tsum h hf hg
 #align tsum_mono tsum_mono
 -/
 
 #print tsum_le_of_sum_le /-
-theorem tsum_le_of_sum_le (hf : Summable f) (h : ∀ s, (∑ i in s, f i) ≤ a₂) : (∑' i, f i) ≤ a₂ :=
+theorem tsum_le_of_sum_le (hf : Summable f) (h : ∀ s, ∑ i in s, f i ≤ a₂) : ∑' i, f i ≤ a₂ :=
   hasSum_le_of_sum_le hf.HasSum h
 #align tsum_le_of_sum_le tsum_le_of_sum_le
 -/
 
-theorem tsum_le_of_sum_le' (ha₂ : 0 ≤ a₂) (h : ∀ s, (∑ i in s, f i) ≤ a₂) : (∑' i, f i) ≤ a₂ :=
+theorem tsum_le_of_sum_le' (ha₂ : 0 ≤ a₂) (h : ∀ s, ∑ i in s, f i ≤ a₂) : ∑' i, f i ≤ a₂ :=
   by
   by_cases hf : Summable f
   · exact tsum_le_of_sum_le hf h
@@ -180,7 +180,7 @@ theorem tsum_nonneg (h : ∀ i, 0 ≤ g i) : 0 ≤ ∑' i, g i :=
   · simp [tsum_eq_zero_of_not_summable hg]
 #align tsum_nonneg tsum_nonneg
 
-theorem tsum_nonpos (h : ∀ i, f i ≤ 0) : (∑' i, f i) ≤ 0 :=
+theorem tsum_nonpos (h : ∀ i, f i ≤ 0) : ∑' i, f i ≤ 0 :=
   by
   by_cases hf : Summable f
   · exact hf.has_sum.nonpos h
@@ -210,14 +210,13 @@ theorem hasSum_strict_mono (hf : HasSum f a₁) (hg : HasSum g a₂) (h : f < g)
 -/
 
 theorem tsum_lt_tsum (h : f ≤ g) (hi : f i < g i) (hf : Summable f) (hg : Summable g) :
-    (∑' n, f n) < ∑' n, g n :=
+    ∑' n, f n < ∑' n, g n :=
   hasSum_lt h hi hf.HasSum hg.HasSum
 #align tsum_lt_tsum tsum_lt_tsum
 
 #print tsum_strict_mono /-
 @[mono]
-theorem tsum_strict_mono (hf : Summable f) (hg : Summable g) (h : f < g) :
-    (∑' n, f n) < ∑' n, g n :=
+theorem tsum_strict_mono (hf : Summable f) (hg : Summable g) (h : f < g) : ∑' n, f n < ∑' n, g n :=
   let ⟨hle, i, hi⟩ := Pi.lt_def.mp h
   tsum_lt_tsum hle hi hf hg
 #align tsum_strict_mono tsum_strict_mono
@@ -265,11 +264,11 @@ theorem hasSum_zero_iff : HasSum f 0 ↔ ∀ x, f x = 0 :=
     exact funext h
 #align has_sum_zero_iff hasSum_zero_iff
 
-theorem tsum_eq_zero_iff (hf : Summable f) : (∑' i, f i) = 0 ↔ ∀ x, f x = 0 := by
+theorem tsum_eq_zero_iff (hf : Summable f) : ∑' i, f i = 0 ↔ ∀ x, f x = 0 := by
   rw [← hasSum_zero_iff, hf.has_sum_iff]
 #align tsum_eq_zero_iff tsum_eq_zero_iff
 
-theorem tsum_ne_zero_iff (hf : Summable f) : (∑' i, f i) ≠ 0 ↔ ∃ x, f x ≠ 0 := by
+theorem tsum_ne_zero_iff (hf : Summable f) : ∑' i, f i ≠ 0 ↔ ∃ x, f x ≠ 0 := by
   rw [Ne.def, tsum_eq_zero_iff hf, not_forall]
 #align tsum_ne_zero_iff tsum_ne_zero_iff
 
Diff
@@ -124,7 +124,6 @@ theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 
   calc
     f i = ∑ i in {i}, f i := Finset.sum_singleton.symm
     _ ≤ a := sum_le_hasSum _ (by convert hb; simp) hf
-    
 #align le_has_sum le_hasSum
 
 /- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (i «expr ∉ » s) -/
@@ -318,7 +317,6 @@ theorem summable_abs_iff [LinearOrderedAddCommGroup α] [UniformSpace α] [Unifo
     _ ↔ (Summable fun x : {x | 0 ≤ f x} => f x) ∧ Summable fun x : {x | 0 ≤ f x}ᶜ => -f x := by
       simp only [h1, h2]
     _ ↔ _ := by simp only [summable_neg_iff, summable_subtype_and_compl]
-    
 #align summable_abs_iff summable_abs_iff
 
 alias summable_abs_iff ↔ Summable.of_abs Summable.abs
Diff
@@ -74,7 +74,7 @@ theorem le_hasSum_of_le_sum (hf : HasSum f a) (h : ∀ s, a₂ ≤ ∑ i in s, f
 #align le_has_sum_of_le_sum le_hasSum_of_le_sum
 -/
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
 theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     (hs : ∀ (c) (_ : c ∉ Set.range e), 0 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : HasSum f a₁)
     (hg : HasSum g a₂) : a₁ ≤ a₂ :=
@@ -99,14 +99,14 @@ theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     exact hs _ h
 #align has_sum_le_inj hasSum_le_inj
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
 theorem tsum_le_tsum_of_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     (hs : ∀ (c) (_ : c ∉ Set.range e), 0 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : Summable f)
     (hg : Summable g) : tsum f ≤ tsum g :=
   hasSum_le_inj _ he hs h hf.HasSum hg.HasSum
 #align tsum_le_tsum_of_inj tsum_le_tsum_of_inj
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (i «expr ∉ » s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (i «expr ∉ » s) -/
 theorem sum_le_hasSum (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (hf : HasSum f a) :
     (∑ i in s, f i) ≤ a :=
   ge_of_tendsto hf
@@ -119,7 +119,7 @@ theorem isLUB_hasSum (h : ∀ i, 0 ≤ f i) (hf : HasSum f a) :
   isLUB_of_tendsto_atTop (Finset.sum_mono_set_of_nonneg h) hf
 #align is_lub_has_sum isLUB_hasSum
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (b' «expr ≠ » i) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (b' «expr ≠ » i) -/
 theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤ f b') : f i ≤ a :=
   calc
     f i = ∑ i in {i}, f i := Finset.sum_singleton.symm
@@ -127,13 +127,13 @@ theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 
     
 #align le_has_sum le_hasSum
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (i «expr ∉ » s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (i «expr ∉ » s) -/
 theorem sum_le_tsum {f : ι → α} (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (hf : Summable f) :
     (∑ i in s, f i) ≤ ∑' i, f i :=
   sum_le_hasSum s hs hf.HasSum
 #align sum_le_tsum sum_le_tsum
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (b' «expr ≠ » i) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (b' «expr ≠ » i) -/
 theorem le_tsum (hf : Summable f) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤ f b') : f i ≤ ∑' i, f i :=
   le_hasSum (Summable.hasSum hf) i hb
 #align le_tsum le_tsum
Diff
@@ -309,13 +309,13 @@ theorem hasSum_of_isLUB [CanonicallyLinearOrderedAddMonoid α] [TopologicalSpace
 
 theorem summable_abs_iff [LinearOrderedAddCommGroup α] [UniformSpace α] [UniformAddGroup α]
     [CompleteSpace α] {f : ι → α} : (Summable fun x => |f x|) ↔ Summable f :=
-  have h1 : ∀ x : { x | 0 ≤ f x }, |f x| = f x := fun x => abs_of_nonneg x.2
-  have h2 : ∀ x : { x | 0 ≤ f x }ᶜ, |f x| = -f x := fun x => abs_of_neg (not_le.1 x.2)
+  have h1 : ∀ x : {x | 0 ≤ f x}, |f x| = f x := fun x => abs_of_nonneg x.2
+  have h2 : ∀ x : {x | 0 ≤ f x}ᶜ, |f x| = -f x := fun x => abs_of_neg (not_le.1 x.2)
   calc
     (Summable fun x => |f x|) ↔
-        (Summable fun x : { x | 0 ≤ f x } => |f x|) ∧ Summable fun x : { x | 0 ≤ f x }ᶜ => |f x| :=
+        (Summable fun x : {x | 0 ≤ f x} => |f x|) ∧ Summable fun x : {x | 0 ≤ f x}ᶜ => |f x| :=
       summable_subtype_and_compl.symm
-    _ ↔ (Summable fun x : { x | 0 ≤ f x } => f x) ∧ Summable fun x : { x | 0 ≤ f x }ᶜ => -f x := by
+    _ ↔ (Summable fun x : {x | 0 ≤ f x} => f x) ∧ Summable fun x : {x | 0 ≤ f x}ᶜ => -f x := by
       simp only [h1, h2]
     _ ↔ _ := by simp only [summable_neg_iff, summable_subtype_and_compl]
     
Diff
@@ -83,10 +83,10 @@ theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     by
     refine'
       (hasSum_iff_hasSum_of_ne_zero_bij (e ∘ coe) (fun c₁ c₂ hc => he hc) (fun c hc => _) _).2 hf
-    · rw [mem_support] at hc
-      cases' eq : partial_inv e c with i <;> rw [Eq] at hc
+    · rw [mem_support] at hc 
+      cases' eq : partial_inv e c with i <;> rw [Eq] at hc 
       · contradiction
-      · rw [partial_inv_of_injective he] at eq
+      · rw [partial_inv_of_injective he] at eq 
         exact ⟨⟨i, hc⟩, Eq⟩
     · rintro c
       simp [partial_inv_left he, Option.casesOn']
Diff
@@ -25,7 +25,7 @@ This file provides lemmas about the interaction of infinite sums and order opera
 
 open Finset Filter Function
 
-open BigOperators Classical
+open scoped BigOperators Classical
 
 variable {ι κ α : Type _}
 
@@ -34,11 +34,13 @@ section Preorder
 variable [Preorder α] [AddCommMonoid α] [TopologicalSpace α] [OrderClosedTopology α] [T2Space α]
   {f : ℕ → α} {c : α}
 
+#print tsum_le_of_sum_range_le /-
 theorem tsum_le_of_sum_range_le (hf : Summable f) (h : ∀ n, (∑ i in range n, f i) ≤ c) :
     (∑' n, f n) ≤ c :=
   let ⟨l, hl⟩ := hf
   hl.tsum_eq.symm ▸ le_of_tendsto' hl.tendsto_sum_nat h
 #align tsum_le_of_sum_range_le tsum_le_of_sum_range_le
+-/
 
 end Preorder
 
@@ -47,22 +49,30 @@ section OrderedAddCommMonoid
 variable [OrderedAddCommMonoid α] [TopologicalSpace α] [OrderClosedTopology α] {f g : ι → α}
   {a a₁ a₂ : α}
 
+#print hasSum_le /-
 theorem hasSum_le (h : ∀ i, f i ≤ g i) (hf : HasSum f a₁) (hg : HasSum g a₂) : a₁ ≤ a₂ :=
   le_of_tendsto_of_tendsto' hf hg fun s => sum_le_sum fun i _ => h i
 #align has_sum_le hasSum_le
+-/
 
+#print hasSum_mono /-
 @[mono]
 theorem hasSum_mono (hf : HasSum f a₁) (hg : HasSum g a₂) (h : f ≤ g) : a₁ ≤ a₂ :=
   hasSum_le h hf hg
 #align has_sum_mono hasSum_mono
+-/
 
+#print hasSum_le_of_sum_le /-
 theorem hasSum_le_of_sum_le (hf : HasSum f a) (h : ∀ s, (∑ i in s, f i) ≤ a₂) : a ≤ a₂ :=
   le_of_tendsto' hf h
 #align has_sum_le_of_sum_le hasSum_le_of_sum_le
+-/
 
+#print le_hasSum_of_le_sum /-
 theorem le_hasSum_of_le_sum (hf : HasSum f a) (h : ∀ s, a₂ ≤ ∑ i in s, f i) : a₂ ≤ a :=
   ge_of_tendsto' hf h
 #align le_has_sum_of_le_sum le_hasSum_of_le_sum
+-/
 
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
 theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
@@ -128,19 +138,25 @@ theorem le_tsum (hf : Summable f) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤
   le_hasSum (Summable.hasSum hf) i hb
 #align le_tsum le_tsum
 
+#print tsum_le_tsum /-
 theorem tsum_le_tsum (h : ∀ i, f i ≤ g i) (hf : Summable f) (hg : Summable g) :
     (∑' i, f i) ≤ ∑' i, g i :=
   hasSum_le h hf.HasSum hg.HasSum
 #align tsum_le_tsum tsum_le_tsum
+-/
 
+#print tsum_mono /-
 @[mono]
 theorem tsum_mono (hf : Summable f) (hg : Summable g) (h : f ≤ g) : (∑' n, f n) ≤ ∑' n, g n :=
   tsum_le_tsum h hf hg
 #align tsum_mono tsum_mono
+-/
 
+#print tsum_le_of_sum_le /-
 theorem tsum_le_of_sum_le (hf : Summable f) (h : ∀ s, (∑ i in s, f i) ≤ a₂) : (∑' i, f i) ≤ a₂ :=
   hasSum_le_of_sum_le hf.HasSum h
 #align tsum_le_of_sum_le tsum_le_of_sum_le
+-/
 
 theorem tsum_le_of_sum_le' (ha₂ : 0 ≤ a₂) (h : ∀ s, (∑ i in s, f i) ≤ a₂) : (∑' i, f i) ≤ a₂ :=
   by
@@ -186,23 +202,27 @@ theorem hasSum_lt (h : f ≤ g) (hi : f i < g i) (hf : HasSum f a₁) (hg : HasS
   simpa only [zero_sub, add_neg_cancel_left] using add_lt_add_of_lt_of_le hi this
 #align has_sum_lt hasSum_lt
 
+#print hasSum_strict_mono /-
 @[mono]
 theorem hasSum_strict_mono (hf : HasSum f a₁) (hg : HasSum g a₂) (h : f < g) : a₁ < a₂ :=
   let ⟨hle, i, hi⟩ := Pi.lt_def.mp h
   hasSum_lt hle hi hf hg
 #align has_sum_strict_mono hasSum_strict_mono
+-/
 
 theorem tsum_lt_tsum (h : f ≤ g) (hi : f i < g i) (hf : Summable f) (hg : Summable g) :
     (∑' n, f n) < ∑' n, g n :=
   hasSum_lt h hi hf.HasSum hg.HasSum
 #align tsum_lt_tsum tsum_lt_tsum
 
+#print tsum_strict_mono /-
 @[mono]
 theorem tsum_strict_mono (hf : Summable f) (hg : Summable g) (h : f < g) :
     (∑' n, f n) < ∑' n, g n :=
   let ⟨hle, i, hi⟩ := Pi.lt_def.mp h
   tsum_lt_tsum hle hi hf hg
 #align tsum_strict_mono tsum_strict_mono
+-/
 
 theorem tsum_pos (hsum : Summable g) (hg : ∀ i, 0 ≤ g i) (i : ι) (hi : 0 < g i) : 0 < ∑' i, g i :=
   by rw [← tsum_zero]; exact tsum_lt_tsum hg hi summable_zero hsum
@@ -225,13 +245,17 @@ section CanonicallyOrderedAddMonoid
 variable [CanonicallyOrderedAddMonoid α] [TopologicalSpace α] [OrderClosedTopology α] {f : ι → α}
   {a : α}
 
+#print le_hasSum' /-
 theorem le_hasSum' (hf : HasSum f a) (i : ι) : f i ≤ a :=
   le_hasSum hf i fun _ _ => zero_le _
 #align le_has_sum' le_hasSum'
+-/
 
+#print le_tsum' /-
 theorem le_tsum' (hf : Summable f) (i : ι) : f i ≤ ∑' i, f i :=
   le_tsum hf i fun _ _ => zero_le _
 #align le_tsum' le_tsum'
+-/
 
 theorem hasSum_zero_iff : HasSum f 0 ↔ ∀ x, f x = 0 :=
   by
Diff
@@ -34,12 +34,6 @@ section Preorder
 variable [Preorder α] [AddCommMonoid α] [TopologicalSpace α] [OrderClosedTopology α] [T2Space α]
   {f : ℕ → α} {c : α}
 
-/- warning: tsum_le_of_sum_range_le -> tsum_le_of_sum_range_le is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : AddCommMonoid.{u1} α] [_inst_3 : TopologicalSpace.{u1} α] [_inst_4 : OrderClosedTopology.{u1} α _inst_3 _inst_1] [_inst_5 : T2Space.{u1} α _inst_3] {f : Nat -> α} {c : α}, (Summable.{u1, 0} α Nat _inst_2 _inst_3 f) -> (forall (n : Nat), LE.le.{u1} α (Preorder.toHasLe.{u1} α _inst_1) (Finset.sum.{u1, 0} α Nat _inst_2 (Finset.range n) (fun (i : Nat) => f i)) c) -> (LE.le.{u1} α (Preorder.toHasLe.{u1} α _inst_1) (tsum.{u1, 0} α _inst_2 _inst_3 Nat (fun (n : Nat) => f n)) c)
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : AddCommMonoid.{u1} α] [_inst_3 : TopologicalSpace.{u1} α] [_inst_4 : OrderClosedTopology.{u1} α _inst_3 _inst_1] [_inst_5 : T2Space.{u1} α _inst_3] {f : Nat -> α} {c : α}, (Summable.{u1, 0} α Nat _inst_2 _inst_3 f) -> (forall (n : Nat), LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) (Finset.sum.{u1, 0} α Nat _inst_2 (Finset.range n) (fun (i : Nat) => f i)) c) -> (LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) (tsum.{u1, 0} α _inst_2 _inst_3 Nat (fun (n : Nat) => f n)) c)
-Case conversion may be inaccurate. Consider using '#align tsum_le_of_sum_range_le tsum_le_of_sum_range_leₓ'. -/
 theorem tsum_le_of_sum_range_le (hf : Summable f) (h : ∀ n, (∑ i in range n, f i) ≤ c) :
     (∑' n, f n) ≤ c :=
   let ⟨l, hl⟩ := hf
@@ -53,53 +47,23 @@ section OrderedAddCommMonoid
 variable [OrderedAddCommMonoid α] [TopologicalSpace α] [OrderClosedTopology α] {f g : ι → α}
   {a a₁ a₂ : α}
 
-/- warning: has_sum_le -> hasSum_le is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {a₁ : α} {a₂ : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (g i)) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a₁) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a₂) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a₁ a₂)
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {a₁ : α} {a₂ : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (g i)) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a₁) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a₂) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a₁ a₂)
-Case conversion may be inaccurate. Consider using '#align has_sum_le hasSum_leₓ'. -/
 theorem hasSum_le (h : ∀ i, f i ≤ g i) (hf : HasSum f a₁) (hg : HasSum g a₂) : a₁ ≤ a₂ :=
   le_of_tendsto_of_tendsto' hf hg fun s => sum_le_sum fun i _ => h i
 #align has_sum_le hasSum_le
 
-/- warning: has_sum_mono -> hasSum_mono is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {a₁ : α} {a₂ : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a₁) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a₂) -> (LE.le.{max u1 u2} (ι -> α) (Pi.hasLe.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)))) f g) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a₁ a₂)
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {a₁ : α} {a₂ : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a₁) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a₂) -> (LE.le.{max u1 u2} (ι -> α) (Pi.hasLe.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)))) f g) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a₁ a₂)
-Case conversion may be inaccurate. Consider using '#align has_sum_mono hasSum_monoₓ'. -/
 @[mono]
 theorem hasSum_mono (hf : HasSum f a₁) (hg : HasSum g a₂) (h : f ≤ g) : a₁ ≤ a₂ :=
   hasSum_le h hf hg
 #align has_sum_mono hasSum_mono
 
-/- warning: has_sum_le_of_sum_le -> hasSum_le_of_sum_le is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α} {a₂ : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (forall (s : Finset.{u1} ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) a₂) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a a₂)
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α} {a₂ : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (forall (s : Finset.{u1} ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) a₂) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a a₂)
-Case conversion may be inaccurate. Consider using '#align has_sum_le_of_sum_le hasSum_le_of_sum_leₓ'. -/
 theorem hasSum_le_of_sum_le (hf : HasSum f a) (h : ∀ s, (∑ i in s, f i) ≤ a₂) : a ≤ a₂ :=
   le_of_tendsto' hf h
 #align has_sum_le_of_sum_le hasSum_le_of_sum_le
 
-/- warning: le_has_sum_of_le_sum -> le_hasSum_of_le_sum is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α} {a₂ : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (forall (s : Finset.{u1} ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a₂ (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i))) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a₂ a)
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α} {a₂ : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (forall (s : Finset.{u1} ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a₂ (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i))) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a₂ a)
-Case conversion may be inaccurate. Consider using '#align le_has_sum_of_le_sum le_hasSum_of_le_sumₓ'. -/
 theorem le_hasSum_of_le_sum (hf : HasSum f a) (h : ∀ s, a₂ ≤ ∑ i in s, f i) : a₂ ≤ a :=
   ge_of_tendsto' hf h
 #align le_has_sum_of_le_sum le_hasSum_of_le_sum
 
-/- warning: has_sum_le_inj -> hasSum_le_inj is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {κ : Type.{u2}} {α : Type.{u3}} [_inst_1 : OrderedAddCommMonoid.{u3} α] [_inst_2 : TopologicalSpace.{u3} α] [_inst_3 : OrderClosedTopology.{u3} α _inst_2 (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))] {f : ι -> α} {a₁ : α} {a₂ : α} {g : κ -> α} (e : ι -> κ), (Function.Injective.{succ u1, succ u2} ι κ e) -> (forall (c : κ), (Not (Membership.Mem.{u2, u2} κ (Set.{u2} κ) (Set.hasMem.{u2} κ) c (Set.range.{u2, succ u1} κ ι e))) -> (LE.le.{u3} α (Preorder.toHasLe.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (OfNat.mk.{u3} α 0 (Zero.zero.{u3} α (AddZeroClass.toHasZero.{u3} α (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))))))) (g c))) -> (forall (i : ι), LE.le.{u3} α (Preorder.toHasLe.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (f i) (g (e i))) -> (HasSum.{u3, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 f a₁) -> (HasSum.{u3, u2} α κ (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 g a₂) -> (LE.le.{u3} α (Preorder.toHasLe.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) a₁ a₂)
-but is expected to have type
-  forall {ι : Type.{u3}} {κ : Type.{u2}} {α : Type.{u1}} [_inst_1 : OrderedAddCommMonoid.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : OrderClosedTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))] {f : ι -> α} {a₁ : α} {a₂ : α} {g : κ -> α} (e : ι -> κ), (Function.Injective.{succ u3, succ u2} ι κ e) -> (forall (c : κ), (Not (Membership.mem.{u2, u2} κ (Set.{u2} κ) (Set.instMembershipSet.{u2} κ) c (Set.range.{u2, succ u3} κ ι e))) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (OfNat.ofNat.{u1} α 0 (Zero.toOfNat0.{u1} α (AddMonoid.toZero.{u1} α (AddCommMonoid.toAddMonoid.{u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1))))) (g c))) -> (forall (i : ι), LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (f i) (g (e i))) -> (HasSum.{u1, u3} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 f a₁) -> (HasSum.{u1, u2} α κ (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 g a₂) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) a₁ a₂)
-Case conversion may be inaccurate. Consider using '#align has_sum_le_inj hasSum_le_injₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
 theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     (hs : ∀ (c) (_ : c ∉ Set.range e), 0 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : HasSum f a₁)
@@ -125,12 +89,6 @@ theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     exact hs _ h
 #align has_sum_le_inj hasSum_le_inj
 
-/- warning: tsum_le_tsum_of_inj -> tsum_le_tsum_of_inj is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {κ : Type.{u2}} {α : Type.{u3}} [_inst_1 : OrderedAddCommMonoid.{u3} α] [_inst_2 : TopologicalSpace.{u3} α] [_inst_3 : OrderClosedTopology.{u3} α _inst_2 (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))] {f : ι -> α} {g : κ -> α} (e : ι -> κ), (Function.Injective.{succ u1, succ u2} ι κ e) -> (forall (c : κ), (Not (Membership.Mem.{u2, u2} κ (Set.{u2} κ) (Set.hasMem.{u2} κ) c (Set.range.{u2, succ u1} κ ι e))) -> (LE.le.{u3} α (Preorder.toHasLe.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (OfNat.mk.{u3} α 0 (Zero.zero.{u3} α (AddZeroClass.toHasZero.{u3} α (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))))))) (g c))) -> (forall (i : ι), LE.le.{u3} α (Preorder.toHasLe.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (f i) (g (e i))) -> (Summable.{u3, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 f) -> (Summable.{u3, u2} α κ (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 g) -> (LE.le.{u3} α (Preorder.toHasLe.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (tsum.{u3, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 ι f) (tsum.{u3, u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 κ g))
-but is expected to have type
-  forall {ι : Type.{u3}} {κ : Type.{u2}} {α : Type.{u1}} [_inst_1 : OrderedAddCommMonoid.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : OrderClosedTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))] {f : ι -> α} {g : κ -> α} (e : ι -> κ), (Function.Injective.{succ u3, succ u2} ι κ e) -> (forall (c : κ), (Not (Membership.mem.{u2, u2} κ (Set.{u2} κ) (Set.instMembershipSet.{u2} κ) c (Set.range.{u2, succ u3} κ ι e))) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (OfNat.ofNat.{u1} α 0 (Zero.toOfNat0.{u1} α (AddMonoid.toZero.{u1} α (AddCommMonoid.toAddMonoid.{u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1))))) (g c))) -> (forall (i : ι), LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (f i) (g (e i))) -> (Summable.{u1, u3} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 f) -> (Summable.{u1, u2} α κ (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 g) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (tsum.{u1, u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 ι f) (tsum.{u1, u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 κ g))
-Case conversion may be inaccurate. Consider using '#align tsum_le_tsum_of_inj tsum_le_tsum_of_injₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
 theorem tsum_le_tsum_of_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     (hs : ∀ (c) (_ : c ∉ Set.range e), 0 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : Summable f)
@@ -138,12 +96,6 @@ theorem tsum_le_tsum_of_inj {g : κ → α} (e : ι → κ) (he : Injective e)
   hasSum_le_inj _ he hs h hf.HasSum hg.HasSum
 #align tsum_le_tsum_of_inj tsum_le_tsum_of_inj
 
-/- warning: sum_le_has_sum -> sum_le_hasSum is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α} (s : Finset.{u1} ι), (forall (i : ι), (Not (Membership.Mem.{u1, u1} ι (Finset.{u1} ι) (Finset.hasMem.{u1} ι) i s)) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f i))) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) a)
-but is expected to have type
-  forall {ι : Type.{u2}} {α : Type.{u1}} [_inst_1 : OrderedAddCommMonoid.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : OrderClosedTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))] {f : ι -> α} {a : α} (s : Finset.{u2} ι), (forall (i : ι), (Not (Membership.mem.{u2, u2} ι (Finset.{u2} ι) (Finset.instMembershipFinset.{u2} ι) i s)) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (OfNat.ofNat.{u1} α 0 (Zero.toOfNat0.{u1} α (AddMonoid.toZero.{u1} α (AddCommMonoid.toAddMonoid.{u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1))))) (f i))) -> (HasSum.{u1, u2} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 f a) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (Finset.sum.{u1, u2} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) s (fun (i : ι) => f i)) a)
-Case conversion may be inaccurate. Consider using '#align sum_le_has_sum sum_le_hasSumₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (i «expr ∉ » s) -/
 theorem sum_le_hasSum (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (hf : HasSum f a) :
     (∑ i in s, f i) ≤ a :=
@@ -152,23 +104,11 @@ theorem sum_le_hasSum (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (h
       ⟨s, fun t hst => sum_le_sum_of_subset_of_nonneg hst fun i hbt hbs => hs i hbs⟩)
 #align sum_le_has_sum sum_le_hasSum
 
-/- warning: is_lub_has_sum -> isLUB_hasSum is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f i)) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (IsLUB.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (Set.range.{u2, succ u1} α (Finset.{u1} ι) (fun (s : Finset.{u1} ι) => Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i))) a)
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (f i)) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (IsLUB.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (Set.range.{u2, succ u1} α (Finset.{u1} ι) (fun (s : Finset.{u1} ι) => Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i))) a)
-Case conversion may be inaccurate. Consider using '#align is_lub_has_sum isLUB_hasSumₓ'. -/
 theorem isLUB_hasSum (h : ∀ i, 0 ≤ f i) (hf : HasSum f a) :
     IsLUB (Set.range fun s => ∑ i in s, f i) a :=
   isLUB_of_tendsto_atTop (Finset.sum_mono_set_of_nonneg h) hf
 #align is_lub_has_sum isLUB_hasSum
 
-/- warning: le_has_sum -> le_hasSum is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (forall (i : ι), (forall (b' : ι), (Ne.{succ u1} ι b' i) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f b'))) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) a))
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (forall (i : ι), (forall (b' : ι), (Ne.{succ u1} ι b' i) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (f b'))) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) a))
-Case conversion may be inaccurate. Consider using '#align le_has_sum le_hasSumₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (b' «expr ≠ » i) -/
 theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤ f b') : f i ≤ a :=
   calc
@@ -177,67 +117,31 @@ theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 
     
 #align le_has_sum le_hasSum
 
-/- warning: sum_le_tsum -> sum_le_tsum is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} (s : Finset.{u1} ι), (forall (i : ι), (Not (Membership.Mem.{u1, u1} ι (Finset.{u1} ι) (Finset.hasMem.{u1} ι) i s)) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f i))) -> (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)))
-but is expected to have type
-  forall {ι : Type.{u2}} {α : Type.{u1}} [_inst_1 : OrderedAddCommMonoid.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : OrderClosedTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))] {f : ι -> α} (s : Finset.{u2} ι), (forall (i : ι), (Not (Membership.mem.{u2, u2} ι (Finset.{u2} ι) (Finset.instMembershipFinset.{u2} ι) i s)) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (OfNat.ofNat.{u1} α 0 (Zero.toOfNat0.{u1} α (AddMonoid.toZero.{u1} α (AddCommMonoid.toAddMonoid.{u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1))))) (f i))) -> (Summable.{u1, u2} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 f) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (Finset.sum.{u1, u2} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) s (fun (i : ι) => f i)) (tsum.{u1, u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 ι (fun (i : ι) => f i)))
-Case conversion may be inaccurate. Consider using '#align sum_le_tsum sum_le_tsumₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (i «expr ∉ » s) -/
 theorem sum_le_tsum {f : ι → α} (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (hf : Summable f) :
     (∑ i in s, f i) ≤ ∑' i, f i :=
   sum_le_hasSum s hs hf.HasSum
 #align sum_le_tsum sum_le_tsum
 
-/- warning: le_tsum -> le_tsum is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (forall (i : ι), (forall (b' : ι), (Ne.{succ u1} ι b' i) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f b'))) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i))))
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (forall (i : ι), (forall (b' : ι), (Ne.{succ u1} ι b' i) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (f b'))) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i))))
-Case conversion may be inaccurate. Consider using '#align le_tsum le_tsumₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (b' «expr ≠ » i) -/
 theorem le_tsum (hf : Summable f) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤ f b') : f i ≤ ∑' i, f i :=
   le_hasSum (Summable.hasSum hf) i hb
 #align le_tsum le_tsum
 
-/- warning: tsum_le_tsum -> tsum_le_tsum is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (g i)) -> (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => g i)))
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (g i)) -> (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => g i)))
-Case conversion may be inaccurate. Consider using '#align tsum_le_tsum tsum_le_tsumₓ'. -/
 theorem tsum_le_tsum (h : ∀ i, f i ≤ g i) (hf : Summable f) (hg : Summable g) :
     (∑' i, f i) ≤ ∑' i, g i :=
   hasSum_le h hf.HasSum hg.HasSum
 #align tsum_le_tsum tsum_le_tsum
 
-/- warning: tsum_mono -> tsum_mono is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g) -> (LE.le.{max u1 u2} (ι -> α) (Pi.hasLe.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)))) f g) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (n : ι) => f n)) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (n : ι) => g n)))
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g) -> (LE.le.{max u1 u2} (ι -> α) (Pi.hasLe.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)))) f g) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (n : ι) => f n)) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (n : ι) => g n)))
-Case conversion may be inaccurate. Consider using '#align tsum_mono tsum_monoₓ'. -/
 @[mono]
 theorem tsum_mono (hf : Summable f) (hg : Summable g) (h : f ≤ g) : (∑' n, f n) ≤ ∑' n, g n :=
   tsum_le_tsum h hf hg
 #align tsum_mono tsum_mono
 
-/- warning: tsum_le_of_sum_le -> tsum_le_of_sum_le is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a₂ : α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (forall (s : Finset.{u1} ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) a₂) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) a₂)
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a₂ : α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (forall (s : Finset.{u1} ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) a₂) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) a₂)
-Case conversion may be inaccurate. Consider using '#align tsum_le_of_sum_le tsum_le_of_sum_leₓ'. -/
 theorem tsum_le_of_sum_le (hf : Summable f) (h : ∀ s, (∑ i in s, f i) ≤ a₂) : (∑' i, f i) ≤ a₂ :=
   hasSum_le_of_sum_le hf.HasSum h
 #align tsum_le_of_sum_le tsum_le_of_sum_le
 
-/- warning: tsum_le_of_sum_le' -> tsum_le_of_sum_le' is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a₂ : α}, (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) a₂) -> (forall (s : Finset.{u1} ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) a₂) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) a₂)
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a₂ : α}, (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) a₂) -> (forall (s : Finset.{u1} ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) a₂) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) a₂)
-Case conversion may be inaccurate. Consider using '#align tsum_le_of_sum_le' tsum_le_of_sum_le'ₓ'. -/
 theorem tsum_le_of_sum_le' (ha₂ : 0 ≤ a₂) (h : ∀ s, (∑ i in s, f i) ≤ a₂) : (∑' i, f i) ≤ a₂ :=
   by
   by_cases hf : Summable f
@@ -246,32 +150,14 @@ theorem tsum_le_of_sum_le' (ha₂ : 0 ≤ a₂) (h : ∀ s, (∑ i in s, f i) 
     exact ha₂
 #align tsum_le_of_sum_le' tsum_le_of_sum_le'
 
-/- warning: has_sum.nonneg -> HasSum.nonneg is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (g i)) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) a)
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (g i)) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) a)
-Case conversion may be inaccurate. Consider using '#align has_sum.nonneg HasSum.nonnegₓ'. -/
 theorem HasSum.nonneg (h : ∀ i, 0 ≤ g i) (ha : HasSum g a) : 0 ≤ a :=
   hasSum_le h hasSum_zero ha
 #align has_sum.nonneg HasSum.nonneg
 
-/- warning: has_sum.nonpos -> HasSum.nonpos is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (g i) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))))) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))))
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (g i) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))
-Case conversion may be inaccurate. Consider using '#align has_sum.nonpos HasSum.nonposₓ'. -/
 theorem HasSum.nonpos (h : ∀ i, g i ≤ 0) (ha : HasSum g a) : a ≤ 0 :=
   hasSum_le h ha hasSum_zero
 #align has_sum.nonpos HasSum.nonpos
 
-/- warning: tsum_nonneg -> tsum_nonneg is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (g i)) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => g i)))
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (g i)) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => g i)))
-Case conversion may be inaccurate. Consider using '#align tsum_nonneg tsum_nonnegₓ'. -/
 theorem tsum_nonneg (h : ∀ i, 0 ≤ g i) : 0 ≤ ∑' i, g i :=
   by
   by_cases hg : Summable g
@@ -279,12 +165,6 @@ theorem tsum_nonneg (h : ∀ i, 0 ≤ g i) : 0 ≤ ∑' i, g i :=
   · simp [tsum_eq_zero_of_not_summable hg]
 #align tsum_nonneg tsum_nonneg
 
-/- warning: tsum_nonpos -> tsum_nonpos is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))))) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))))
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))
-Case conversion may be inaccurate. Consider using '#align tsum_nonpos tsum_nonposₓ'. -/
 theorem tsum_nonpos (h : ∀ i, f i ≤ 0) : (∑' i, f i) ≤ 0 :=
   by
   by_cases hf : Summable f
@@ -299,12 +179,6 @@ section OrderedAddCommGroup
 variable [OrderedAddCommGroup α] [TopologicalSpace α] [TopologicalAddGroup α]
   [OrderClosedTopology α] {f g : ι → α} {a₁ a₂ : α} {i : ι}
 
-/- warning: has_sum_lt -> hasSum_lt is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {a₁ : α} {a₂ : α} {i : ι}, (LE.le.{max u1 u2} (ι -> α) (Pi.hasLe.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)))) f g) -> (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (f i) (g i)) -> (HasSum.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 f a₁) -> (HasSum.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 g a₂) -> (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a₁ a₂)
-but is expected to have type
-  forall {ι : Type.{u2}} {α : Type.{u1}} [_inst_1 : OrderedAddCommGroup.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : TopologicalAddGroup.{u1} α _inst_2 (AddCommGroup.toAddGroup.{u1} α (OrderedAddCommGroup.toAddCommGroup.{u1} α _inst_1))] [_inst_4 : OrderClosedTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1))] {f : ι -> α} {g : ι -> α} {a₁ : α} {a₂ : α} {i : ι}, (LE.le.{max u2 u1} (ι -> α) (Pi.hasLe.{u2, u1} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1)))) f g) -> (LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1))) (f i) (g i)) -> (HasSum.{u1, u2} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} α _inst_1)) _inst_2 f a₁) -> (HasSum.{u1, u2} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} α _inst_1)) _inst_2 g a₂) -> (LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1))) a₁ a₂)
-Case conversion may be inaccurate. Consider using '#align has_sum_lt hasSum_ltₓ'. -/
 theorem hasSum_lt (h : f ≤ g) (hi : f i < g i) (hf : HasSum f a₁) (hg : HasSum g a₂) : a₁ < a₂ :=
   by
   have : update f i 0 ≤ update g i 0 := update_le_update_iff.mpr ⟨rfl.le, fun i _ => h i⟩
@@ -312,35 +186,17 @@ theorem hasSum_lt (h : f ≤ g) (hi : f i < g i) (hf : HasSum f a₁) (hg : HasS
   simpa only [zero_sub, add_neg_cancel_left] using add_lt_add_of_lt_of_le hi this
 #align has_sum_lt hasSum_lt
 
-/- warning: has_sum_strict_mono -> hasSum_strict_mono is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {a₁ : α} {a₂ : α}, (HasSum.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 f a₁) -> (HasSum.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 g a₂) -> (LT.lt.{max u1 u2} (ι -> α) (Preorder.toHasLt.{max u1 u2} (ι -> α) (Pi.preorder.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)))) f g) -> (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a₁ a₂)
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {a₁ : α} {a₂ : α}, (HasSum.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 f a₁) -> (HasSum.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 g a₂) -> (LT.lt.{max u1 u2} (ι -> α) (Preorder.toLT.{max u1 u2} (ι -> α) (Pi.preorder.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)))) f g) -> (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a₁ a₂)
-Case conversion may be inaccurate. Consider using '#align has_sum_strict_mono hasSum_strict_monoₓ'. -/
 @[mono]
 theorem hasSum_strict_mono (hf : HasSum f a₁) (hg : HasSum g a₂) (h : f < g) : a₁ < a₂ :=
   let ⟨hle, i, hi⟩ := Pi.lt_def.mp h
   hasSum_lt hle hi hf hg
 #align has_sum_strict_mono hasSum_strict_mono
 
-/- warning: tsum_lt_tsum -> tsum_lt_tsum is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {i : ι}, (LE.le.{max u1 u2} (ι -> α) (Pi.hasLe.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)))) f g) -> (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (f i) (g i)) -> (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 f) -> (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 g) -> (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 ι (fun (n : ι) => f n)) (tsum.{u2, u1} α (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 ι (fun (n : ι) => g n)))
-but is expected to have type
-  forall {ι : Type.{u2}} {α : Type.{u1}} [_inst_1 : OrderedAddCommGroup.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : TopologicalAddGroup.{u1} α _inst_2 (AddCommGroup.toAddGroup.{u1} α (OrderedAddCommGroup.toAddCommGroup.{u1} α _inst_1))] [_inst_4 : OrderClosedTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1))] {f : ι -> α} {g : ι -> α} {i : ι}, (LE.le.{max u2 u1} (ι -> α) (Pi.hasLe.{u2, u1} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1)))) f g) -> (LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1))) (f i) (g i)) -> (Summable.{u1, u2} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} α _inst_1)) _inst_2 f) -> (Summable.{u1, u2} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} α _inst_1)) _inst_2 g) -> (LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1))) (tsum.{u1, u2} α (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} α _inst_1)) _inst_2 ι (fun (n : ι) => f n)) (tsum.{u1, u2} α (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} α _inst_1)) _inst_2 ι (fun (n : ι) => g n)))
-Case conversion may be inaccurate. Consider using '#align tsum_lt_tsum tsum_lt_tsumₓ'. -/
 theorem tsum_lt_tsum (h : f ≤ g) (hi : f i < g i) (hf : Summable f) (hg : Summable g) :
     (∑' n, f n) < ∑' n, g n :=
   hasSum_lt h hi hf.HasSum hg.HasSum
 #align tsum_lt_tsum tsum_lt_tsum
 
-/- warning: tsum_strict_mono -> tsum_strict_mono is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α}, (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 f) -> (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 g) -> (LT.lt.{max u1 u2} (ι -> α) (Preorder.toHasLt.{max u1 u2} (ι -> α) (Pi.preorder.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)))) f g) -> (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 ι (fun (n : ι) => f n)) (tsum.{u2, u1} α (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 ι (fun (n : ι) => g n)))
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α}, (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 f) -> (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 g) -> (LT.lt.{max u1 u2} (ι -> α) (Preorder.toLT.{max u1 u2} (ι -> α) (Pi.preorder.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)))) f g) -> (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (n : ι) => f n)) (tsum.{u2, u1} α (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (n : ι) => g n)))
-Case conversion may be inaccurate. Consider using '#align tsum_strict_mono tsum_strict_monoₓ'. -/
 @[mono]
 theorem tsum_strict_mono (hf : Summable f) (hg : Summable g) (h : f < g) :
     (∑' n, f n) < ∑' n, g n :=
@@ -348,22 +204,10 @@ theorem tsum_strict_mono (hf : Summable f) (hg : Summable g) (h : f < g) :
   tsum_lt_tsum hle hi hf hg
 #align tsum_strict_mono tsum_strict_mono
 
-/- warning: tsum_pos -> tsum_pos is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {g : ι -> α}, (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 g) -> (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) (g i)) -> (forall (i : ι), (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) (g i)) -> (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) (tsum.{u2, u1} α (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => g i))))
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {g : ι -> α}, (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 g) -> (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (NegZeroClass.toZero.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))) (g i)) -> (forall (i : ι), (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (NegZeroClass.toZero.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))) (g i)) -> (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (NegZeroClass.toZero.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))) (tsum.{u2, u1} α (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => g i))))
-Case conversion may be inaccurate. Consider using '#align tsum_pos tsum_posₓ'. -/
 theorem tsum_pos (hsum : Summable g) (hg : ∀ i, 0 ≤ g i) (i : ι) (hi : 0 < g i) : 0 < ∑' i, g i :=
   by rw [← tsum_zero]; exact tsum_lt_tsum hg hi summable_zero hsum
 #align tsum_pos tsum_pos
 
-/- warning: has_sum_zero_iff_of_nonneg -> hasSum_zero_iff_of_nonneg is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) (f i)) -> (Iff (HasSum.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 f (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) (Eq.{max (succ u1) (succ u2)} (ι -> α) f (OfNat.ofNat.{max u1 u2} (ι -> α) 0 (OfNat.mk.{max u1 u2} (ι -> α) 0 (Zero.zero.{max u1 u2} (ι -> α) (Pi.instZero.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))))))
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {_inst_4 : ι -> α}, (forall (ᾰ : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (_inst_4 ᾰ)) -> (Iff (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 _inst_4 (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))) (Eq.{max (succ u1) (succ u2)} (ι -> α) _inst_4 (OfNat.ofNat.{max u1 u2} (ι -> α) 0 (Zero.toOfNat0.{max u1 u2} (ι -> α) (Pi.instZero.{u1, u2} ι (fun (a._@.Mathlib.Topology.Algebra.InfiniteSum.Order._hyg.1730 : ι) => α) (fun (i : ι) => AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))))
-Case conversion may be inaccurate. Consider using '#align has_sum_zero_iff_of_nonneg hasSum_zero_iff_of_nonnegₓ'. -/
 theorem hasSum_zero_iff_of_nonneg (hf : ∀ i, 0 ≤ f i) : HasSum f 0 ↔ f = 0 :=
   by
   refine' ⟨fun hf' => _, _⟩
@@ -381,32 +225,14 @@ section CanonicallyOrderedAddMonoid
 variable [CanonicallyOrderedAddMonoid α] [TopologicalSpace α] [OrderClosedTopology α] {f : ι → α}
   {a : α}
 
-/- warning: le_has_sum' -> le_hasSum' is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α} {a : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f a) -> (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))) (f i) a)
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α} {a : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f a) -> (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))) (f i) a)
-Case conversion may be inaccurate. Consider using '#align le_has_sum' le_hasSum'ₓ'. -/
 theorem le_hasSum' (hf : HasSum f a) (i : ι) : f i ≤ a :=
   le_hasSum hf i fun _ _ => zero_le _
 #align le_has_sum' le_hasSum'
 
-/- warning: le_tsum' -> le_tsum' is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f) -> (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))) (f i) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => f i)))
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f) -> (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))) (f i) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => f i)))
-Case conversion may be inaccurate. Consider using '#align le_tsum' le_tsum'ₓ'. -/
 theorem le_tsum' (hf : Summable f) (i : ι) : f i ≤ ∑' i, f i :=
   le_tsum hf i fun _ _ => zero_le _
 #align le_tsum' le_tsum'
 
-/- warning: has_sum_zero_iff -> hasSum_zero_iff is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α}, Iff (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))))))))) (forall (x : ι), Eq.{succ u2} α (f x) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))))))))
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α}, Iff (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))))))) (forall (x : ι), Eq.{succ u2} α (f x) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))))))
-Case conversion may be inaccurate. Consider using '#align has_sum_zero_iff hasSum_zero_iffₓ'. -/
 theorem hasSum_zero_iff : HasSum f 0 ↔ ∀ x, f x = 0 :=
   by
   refine' ⟨_, fun h => _⟩
@@ -416,22 +242,10 @@ theorem hasSum_zero_iff : HasSum f 0 ↔ ∀ x, f x = 0 :=
     exact funext h
 #align has_sum_zero_iff hasSum_zero_iff
 
-/- warning: tsum_eq_zero_iff -> tsum_eq_zero_iff is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f) -> (Iff (Eq.{succ u2} α (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => f i)) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))))))))) (forall (x : ι), Eq.{succ u2} α (f x) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))))))))))
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f) -> (Iff (Eq.{succ u2} α (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => f i)) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))))))) (forall (x : ι), Eq.{succ u2} α (f x) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))))))))
-Case conversion may be inaccurate. Consider using '#align tsum_eq_zero_iff tsum_eq_zero_iffₓ'. -/
 theorem tsum_eq_zero_iff (hf : Summable f) : (∑' i, f i) = 0 ↔ ∀ x, f x = 0 := by
   rw [← hasSum_zero_iff, hf.has_sum_iff]
 #align tsum_eq_zero_iff tsum_eq_zero_iff
 
-/- warning: tsum_ne_zero_iff -> tsum_ne_zero_iff is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f) -> (Iff (Ne.{succ u2} α (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => f i)) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))))))))) (Exists.{succ u1} ι (fun (x : ι) => Ne.{succ u2} α (f x) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))))))))))
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f) -> (Iff (Ne.{succ u2} α (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => f i)) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))))))) (Exists.{succ u1} ι (fun (x : ι) => Ne.{succ u2} α (f x) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))))))))
-Case conversion may be inaccurate. Consider using '#align tsum_ne_zero_iff tsum_ne_zero_iffₓ'. -/
 theorem tsum_ne_zero_iff (hf : Summable f) : (∑' i, f i) ≠ 0 ↔ ∃ x, f x ≠ 0 := by
   rw [Ne.def, tsum_eq_zero_iff hf, not_forall]
 #align tsum_ne_zero_iff tsum_ne_zero_iff
@@ -456,12 +270,6 @@ the existence of a least upper bound.
 -/
 
 
-/- warning: has_sum_of_is_lub_of_nonneg -> hasSum_of_isLUB_of_nonneg is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α} (i : α), (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))))))) (f i)) -> (IsLUB.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))) (Set.range.{u2, succ u1} α (Finset.{u1} ι) (fun (s : Finset.{u1} ι) => Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) s (fun (i : ι) => f i))) i) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f i)
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α} (i : α), (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (LinearOrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (f i)) -> (IsLUB.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))) (Set.range.{u2, succ u1} α (Finset.{u1} ι) (fun (s : Finset.{u1} ι) => Finset.sum.{u2, u1} α ι (LinearOrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i))) i) -> (HasSum.{u2, u1} α ι (LinearOrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f i)
-Case conversion may be inaccurate. Consider using '#align has_sum_of_is_lub_of_nonneg hasSum_of_isLUB_of_nonnegₓ'. -/
 theorem hasSum_of_isLUB_of_nonneg [LinearOrderedAddCommMonoid α] [TopologicalSpace α]
     [OrderTopology α] {f : ι → α} (i : α) (h : ∀ i, 0 ≤ f i)
     (hf : IsLUB (Set.range fun s => ∑ i in s, f i) i) : HasSum f i :=
@@ -475,12 +283,6 @@ theorem hasSum_of_isLUB [CanonicallyLinearOrderedAddMonoid α] [TopologicalSpace
 #align has_sum_of_is_lub hasSum_of_isLUB
 -/
 
-/- warning: summable_abs_iff -> summable_abs_iff is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] [_inst_4 : CompleteSpace.{u2} α _inst_2] {f : ι -> α}, Iff (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (fun (x : ι) => Abs.abs.{u2} α (Neg.toHasAbs.{u2} α (SubNegMonoid.toHasNeg.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))))) (SemilatticeSup.toHasSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (LinearOrder.toLattice.{u2} α (LinearOrderedAddCommGroup.toLinearOrder.{u2} α _inst_1))))) (f x))) (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) f)
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] [_inst_4 : CompleteSpace.{u2} α _inst_2] {f : ι -> α}, Iff (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (fun (x : ι) => Abs.abs.{u2} α (Neg.toHasAbs.{u2} α (NegZeroClass.toNeg.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))))))) (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (DistribLattice.toLattice.{u2} α (instDistribLattice.{u2} α (LinearOrderedAddCommGroup.toLinearOrder.{u2} α _inst_1)))))) (f x))) (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) f)
-Case conversion may be inaccurate. Consider using '#align summable_abs_iff summable_abs_iffₓ'. -/
 theorem summable_abs_iff [LinearOrderedAddCommGroup α] [UniformSpace α] [UniformAddGroup α]
     [CompleteSpace α] {f : ι → α} : (Summable fun x => |f x|) ↔ Summable f :=
   have h1 : ∀ x : { x | 0 ≤ f x }, |f x| = f x := fun x => abs_of_nonneg x.2
@@ -495,28 +297,10 @@ theorem summable_abs_iff [LinearOrderedAddCommGroup α] [UniformSpace α] [Unifo
     
 #align summable_abs_iff summable_abs_iff
 
-/- warning: summable.of_abs -> Summable.of_abs is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] [_inst_4 : CompleteSpace.{u2} α _inst_2] {f : ι -> α}, (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (fun (x : ι) => Abs.abs.{u2} α (Neg.toHasAbs.{u2} α (SubNegMonoid.toHasNeg.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))))) (SemilatticeSup.toHasSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (LinearOrder.toLattice.{u2} α (LinearOrderedAddCommGroup.toLinearOrder.{u2} α _inst_1))))) (f x))) -> (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) f)
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] [_inst_4 : CompleteSpace.{u2} α _inst_2] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (fun (x : ι) => Abs.abs.{u2} α (Neg.toHasAbs.{u2} α (NegZeroClass.toNeg.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))))))) (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (DistribLattice.toLattice.{u2} α (instDistribLattice.{u2} α (LinearOrderedAddCommGroup.toLinearOrder.{u2} α _inst_1)))))) (f x))) -> (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) f)
-Case conversion may be inaccurate. Consider using '#align summable.of_abs Summable.of_absₓ'. -/
-/- warning: summable.abs -> Summable.abs is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] [_inst_4 : CompleteSpace.{u2} α _inst_2] {f : ι -> α}, (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) f) -> (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (fun (x : ι) => Abs.abs.{u2} α (Neg.toHasAbs.{u2} α (SubNegMonoid.toHasNeg.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))))) (SemilatticeSup.toHasSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (LinearOrder.toLattice.{u2} α (LinearOrderedAddCommGroup.toLinearOrder.{u2} α _inst_1))))) (f x)))
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] [_inst_4 : CompleteSpace.{u2} α _inst_2] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) f) -> (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (fun (x : ι) => Abs.abs.{u2} α (Neg.toHasAbs.{u2} α (NegZeroClass.toNeg.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))))))) (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (DistribLattice.toLattice.{u2} α (instDistribLattice.{u2} α (LinearOrderedAddCommGroup.toLinearOrder.{u2} α _inst_1)))))) (f x)))
-Case conversion may be inaccurate. Consider using '#align summable.abs Summable.absₓ'. -/
 alias summable_abs_iff ↔ Summable.of_abs Summable.abs
 #align summable.of_abs Summable.of_abs
 #align summable.abs Summable.abs
 
-/- warning: finite_of_summable_const -> Set.Finite.of_summable_const is a dubious translation:
-lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : Archimedean.{u2} α (OrderedCancelAddCommMonoid.toOrderedAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] {b : α}, (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))))))))) b) -> (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))) _inst_2 (fun (i : ι) => b)) -> (Set.Finite.{u1} ι (Set.univ.{u1} ι))
-but is expected to have type
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : Archimedean.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} α _inst_1)))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] {b : α}, (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (NegZeroClass.toZero.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))))))))) b) -> (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} α _inst_1))) _inst_2 (fun (i : ι) => b)) -> (Set.Finite.{u1} ι (Set.univ.{u1} ι))
-Case conversion may be inaccurate. Consider using '#align finite_of_summable_const Set.Finite.of_summable_constₓ'. -/
 --TODO: Change the conclusion to `finite ι`
 theorem Set.Finite.of_summable_const [LinearOrderedAddCommGroup α] [TopologicalSpace α]
     [Archimedean α] [OrderClosedTopology α] {b : α} (hb : 0 < b) (hf : Summable fun i : ι => b) :
@@ -536,12 +320,6 @@ theorem Set.Finite.of_summable_const [LinearOrderedAddCommGroup α] [Topological
 
 end LinearOrder
 
-/- warning: summable.tendsto_top_of_pos -> Summable.tendsto_atTop_of_pos is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : OrderTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))] {f : Nat -> α}, (Summable.{u1, 0} α Nat (AddCommGroup.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toAddCommGroup.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1)))))) _inst_2 (Inv.inv.{u1} (Nat -> α) (Pi.instInv.{0, u1} Nat (fun (ᾰ : Nat) => α) (fun (i : Nat) => DivInvMonoid.toHasInv.{u1} α (DivisionRing.toDivInvMonoid.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) f)) -> (forall (n : Nat), LT.lt.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))) (OfNat.ofNat.{u1} α 0 (OfNat.mk.{u1} α 0 (Zero.zero.{u1} α (MulZeroClass.toHasZero.{u1} α (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} α (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))))))))) (f n)) -> (Filter.Tendsto.{0, u1} Nat α f (Filter.atTop.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)))) (Filter.atTop.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : OrderTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (StrictOrderedRing.toPartialOrder.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1)))))] {f : Nat -> α}, (Summable.{u1, 0} α Nat (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} α (LinearOrderedSemiring.toStrictOrderedSemiring.{u1} α (LinearOrderedCommSemiring.toLinearOrderedSemiring.{u1} α (LinearOrderedSemifield.toLinearOrderedCommSemiring.{u1} α (LinearOrderedField.toLinearOrderedSemifield.{u1} α _inst_1)))))) _inst_2 (Inv.inv.{u1} (Nat -> α) (Pi.instInv.{0, u1} Nat (fun (ᾰ : Nat) => α) (fun (i : Nat) => LinearOrderedField.toInv.{u1} α _inst_1)) f)) -> (forall (n : Nat), LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (StrictOrderedRing.toPartialOrder.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1)))))) (OfNat.ofNat.{u1} α 0 (Zero.toOfNat0.{u1} α (CommMonoidWithZero.toZero.{u1} α (CommGroupWithZero.toCommMonoidWithZero.{u1} α (Semifield.toCommGroupWithZero.{u1} α (LinearOrderedSemifield.toSemifield.{u1} α (LinearOrderedField.toLinearOrderedSemifield.{u1} α _inst_1))))))) (f n)) -> (Filter.Tendsto.{0, u1} Nat α f (Filter.atTop.{0} Nat (PartialOrder.toPreorder.{0} Nat (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring))) (Filter.atTop.{u1} α (PartialOrder.toPreorder.{u1} α (StrictOrderedRing.toPartialOrder.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1)))))))
-Case conversion may be inaccurate. Consider using '#align summable.tendsto_top_of_pos Summable.tendsto_atTop_of_posₓ'. -/
 theorem Summable.tendsto_atTop_of_pos [LinearOrderedField α] [TopologicalSpace α] [OrderTopology α]
     {f : ℕ → α} (hf : Summable f⁻¹) (hf' : ∀ n, 0 < f n) : Tendsto f atTop atTop :=
   by
Diff
@@ -173,12 +173,7 @@ Case conversion may be inaccurate. Consider using '#align le_has_sum le_hasSum
 theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤ f b') : f i ≤ a :=
   calc
     f i = ∑ i in {i}, f i := Finset.sum_singleton.symm
-    _ ≤ a :=
-      sum_le_hasSum _
-        (by
-          convert hb
-          simp)
-        hf
+    _ ≤ a := sum_le_hasSum _ (by convert hb; simp) hf
     
 #align le_has_sum le_hasSum
 
@@ -360,9 +355,7 @@ but is expected to have type
   forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {g : ι -> α}, (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 g) -> (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (NegZeroClass.toZero.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))) (g i)) -> (forall (i : ι), (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (NegZeroClass.toZero.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))) (g i)) -> (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (NegZeroClass.toZero.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))) (tsum.{u2, u1} α (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => g i))))
 Case conversion may be inaccurate. Consider using '#align tsum_pos tsum_posₓ'. -/
 theorem tsum_pos (hsum : Summable g) (hg : ∀ i, 0 ≤ g i) (i : ι) (hi : 0 < g i) : 0 < ∑' i, g i :=
-  by
-  rw [← tsum_zero]
-  exact tsum_lt_tsum hg hi summable_zero hsum
+  by rw [← tsum_zero]; exact tsum_lt_tsum hg hi summable_zero hsum
 #align tsum_pos tsum_pos
 
 /- warning: has_sum_zero_iff_of_nonneg -> hasSum_zero_iff_of_nonneg is a dubious translation:
Diff
@@ -34,13 +34,17 @@ section Preorder
 variable [Preorder α] [AddCommMonoid α] [TopologicalSpace α] [OrderClosedTopology α] [T2Space α]
   {f : ℕ → α} {c : α}
 
-#print tsum_le_of_sum_range_le /-
+/- warning: tsum_le_of_sum_range_le -> tsum_le_of_sum_range_le is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : AddCommMonoid.{u1} α] [_inst_3 : TopologicalSpace.{u1} α] [_inst_4 : OrderClosedTopology.{u1} α _inst_3 _inst_1] [_inst_5 : T2Space.{u1} α _inst_3] {f : Nat -> α} {c : α}, (Summable.{u1, 0} α Nat _inst_2 _inst_3 f) -> (forall (n : Nat), LE.le.{u1} α (Preorder.toHasLe.{u1} α _inst_1) (Finset.sum.{u1, 0} α Nat _inst_2 (Finset.range n) (fun (i : Nat) => f i)) c) -> (LE.le.{u1} α (Preorder.toHasLe.{u1} α _inst_1) (tsum.{u1, 0} α _inst_2 _inst_3 Nat (fun (n : Nat) => f n)) c)
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : AddCommMonoid.{u1} α] [_inst_3 : TopologicalSpace.{u1} α] [_inst_4 : OrderClosedTopology.{u1} α _inst_3 _inst_1] [_inst_5 : T2Space.{u1} α _inst_3] {f : Nat -> α} {c : α}, (Summable.{u1, 0} α Nat _inst_2 _inst_3 f) -> (forall (n : Nat), LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) (Finset.sum.{u1, 0} α Nat _inst_2 (Finset.range n) (fun (i : Nat) => f i)) c) -> (LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) (tsum.{u1, 0} α _inst_2 _inst_3 Nat (fun (n : Nat) => f n)) c)
+Case conversion may be inaccurate. Consider using '#align tsum_le_of_sum_range_le tsum_le_of_sum_range_leₓ'. -/
 theorem tsum_le_of_sum_range_le (hf : Summable f) (h : ∀ n, (∑ i in range n, f i) ≤ c) :
     (∑' n, f n) ≤ c :=
   let ⟨l, hl⟩ := hf
   hl.tsum_eq.symm ▸ le_of_tendsto' hl.tendsto_sum_nat h
 #align tsum_le_of_sum_range_le tsum_le_of_sum_range_le
--/
 
 end Preorder
 
@@ -49,34 +53,50 @@ section OrderedAddCommMonoid
 variable [OrderedAddCommMonoid α] [TopologicalSpace α] [OrderClosedTopology α] {f g : ι → α}
   {a a₁ a₂ : α}
 
-#print hasSum_le /-
+/- warning: has_sum_le -> hasSum_le is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {a₁ : α} {a₂ : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (g i)) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a₁) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a₂) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a₁ a₂)
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {a₁ : α} {a₂ : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (g i)) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a₁) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a₂) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a₁ a₂)
+Case conversion may be inaccurate. Consider using '#align has_sum_le hasSum_leₓ'. -/
 theorem hasSum_le (h : ∀ i, f i ≤ g i) (hf : HasSum f a₁) (hg : HasSum g a₂) : a₁ ≤ a₂ :=
   le_of_tendsto_of_tendsto' hf hg fun s => sum_le_sum fun i _ => h i
 #align has_sum_le hasSum_le
--/
 
-#print hasSum_mono /-
+/- warning: has_sum_mono -> hasSum_mono is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {a₁ : α} {a₂ : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a₁) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a₂) -> (LE.le.{max u1 u2} (ι -> α) (Pi.hasLe.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)))) f g) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a₁ a₂)
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {a₁ : α} {a₂ : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a₁) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a₂) -> (LE.le.{max u1 u2} (ι -> α) (Pi.hasLe.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)))) f g) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a₁ a₂)
+Case conversion may be inaccurate. Consider using '#align has_sum_mono hasSum_monoₓ'. -/
 @[mono]
 theorem hasSum_mono (hf : HasSum f a₁) (hg : HasSum g a₂) (h : f ≤ g) : a₁ ≤ a₂ :=
   hasSum_le h hf hg
 #align has_sum_mono hasSum_mono
--/
 
-#print hasSum_le_of_sum_le /-
+/- warning: has_sum_le_of_sum_le -> hasSum_le_of_sum_le is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α} {a₂ : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (forall (s : Finset.{u1} ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) a₂) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a a₂)
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α} {a₂ : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (forall (s : Finset.{u1} ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) a₂) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a a₂)
+Case conversion may be inaccurate. Consider using '#align has_sum_le_of_sum_le hasSum_le_of_sum_leₓ'. -/
 theorem hasSum_le_of_sum_le (hf : HasSum f a) (h : ∀ s, (∑ i in s, f i) ≤ a₂) : a ≤ a₂ :=
   le_of_tendsto' hf h
 #align has_sum_le_of_sum_le hasSum_le_of_sum_le
--/
 
-#print le_hasSum_of_le_sum /-
+/- warning: le_has_sum_of_le_sum -> le_hasSum_of_le_sum is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α} {a₂ : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (forall (s : Finset.{u1} ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a₂ (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i))) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a₂ a)
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α} {a₂ : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (forall (s : Finset.{u1} ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a₂ (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i))) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a₂ a)
+Case conversion may be inaccurate. Consider using '#align le_has_sum_of_le_sum le_hasSum_of_le_sumₓ'. -/
 theorem le_hasSum_of_le_sum (hf : HasSum f a) (h : ∀ s, a₂ ≤ ∑ i in s, f i) : a₂ ≤ a :=
   ge_of_tendsto' hf h
 #align le_has_sum_of_le_sum le_hasSum_of_le_sum
--/
 
 /- warning: has_sum_le_inj -> hasSum_le_inj is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {κ : Type.{u2}} {α : Type.{u3}} [_inst_1 : OrderedAddCommMonoid.{u3} α] [_inst_2 : TopologicalSpace.{u3} α] [_inst_3 : OrderClosedTopology.{u3} α _inst_2 (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))] {f : ι -> α} {a₁ : α} {a₂ : α} {g : κ -> α} (e : ι -> κ), (Function.Injective.{succ u1, succ u2} ι κ e) -> (forall (c : κ), (Not (Membership.Mem.{u2, u2} κ (Set.{u2} κ) (Set.hasMem.{u2} κ) c (Set.range.{u2, succ u1} κ ι e))) -> (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (OfNat.mk.{u3} α 0 (Zero.zero.{u3} α (AddZeroClass.toHasZero.{u3} α (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))))))) (g c))) -> (forall (i : ι), LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (f i) (g (e i))) -> (HasSum.{u3, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 f a₁) -> (HasSum.{u3, u2} α κ (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 g a₂) -> (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) a₁ a₂)
+  forall {ι : Type.{u1}} {κ : Type.{u2}} {α : Type.{u3}} [_inst_1 : OrderedAddCommMonoid.{u3} α] [_inst_2 : TopologicalSpace.{u3} α] [_inst_3 : OrderClosedTopology.{u3} α _inst_2 (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))] {f : ι -> α} {a₁ : α} {a₂ : α} {g : κ -> α} (e : ι -> κ), (Function.Injective.{succ u1, succ u2} ι κ e) -> (forall (c : κ), (Not (Membership.Mem.{u2, u2} κ (Set.{u2} κ) (Set.hasMem.{u2} κ) c (Set.range.{u2, succ u1} κ ι e))) -> (LE.le.{u3} α (Preorder.toHasLe.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (OfNat.mk.{u3} α 0 (Zero.zero.{u3} α (AddZeroClass.toHasZero.{u3} α (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))))))) (g c))) -> (forall (i : ι), LE.le.{u3} α (Preorder.toHasLe.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (f i) (g (e i))) -> (HasSum.{u3, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 f a₁) -> (HasSum.{u3, u2} α κ (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 g a₂) -> (LE.le.{u3} α (Preorder.toHasLe.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) a₁ a₂)
 but is expected to have type
   forall {ι : Type.{u3}} {κ : Type.{u2}} {α : Type.{u1}} [_inst_1 : OrderedAddCommMonoid.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : OrderClosedTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))] {f : ι -> α} {a₁ : α} {a₂ : α} {g : κ -> α} (e : ι -> κ), (Function.Injective.{succ u3, succ u2} ι κ e) -> (forall (c : κ), (Not (Membership.mem.{u2, u2} κ (Set.{u2} κ) (Set.instMembershipSet.{u2} κ) c (Set.range.{u2, succ u3} κ ι e))) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (OfNat.ofNat.{u1} α 0 (Zero.toOfNat0.{u1} α (AddMonoid.toZero.{u1} α (AddCommMonoid.toAddMonoid.{u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1))))) (g c))) -> (forall (i : ι), LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (f i) (g (e i))) -> (HasSum.{u1, u3} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 f a₁) -> (HasSum.{u1, u2} α κ (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 g a₂) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) a₁ a₂)
 Case conversion may be inaccurate. Consider using '#align has_sum_le_inj hasSum_le_injₓ'. -/
@@ -107,7 +127,7 @@ theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
 
 /- warning: tsum_le_tsum_of_inj -> tsum_le_tsum_of_inj is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {κ : Type.{u2}} {α : Type.{u3}} [_inst_1 : OrderedAddCommMonoid.{u3} α] [_inst_2 : TopologicalSpace.{u3} α] [_inst_3 : OrderClosedTopology.{u3} α _inst_2 (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))] {f : ι -> α} {g : κ -> α} (e : ι -> κ), (Function.Injective.{succ u1, succ u2} ι κ e) -> (forall (c : κ), (Not (Membership.Mem.{u2, u2} κ (Set.{u2} κ) (Set.hasMem.{u2} κ) c (Set.range.{u2, succ u1} κ ι e))) -> (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (OfNat.mk.{u3} α 0 (Zero.zero.{u3} α (AddZeroClass.toHasZero.{u3} α (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))))))) (g c))) -> (forall (i : ι), LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (f i) (g (e i))) -> (Summable.{u3, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 f) -> (Summable.{u3, u2} α κ (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 g) -> (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (tsum.{u3, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 ι f) (tsum.{u3, u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 κ g))
+  forall {ι : Type.{u1}} {κ : Type.{u2}} {α : Type.{u3}} [_inst_1 : OrderedAddCommMonoid.{u3} α] [_inst_2 : TopologicalSpace.{u3} α] [_inst_3 : OrderClosedTopology.{u3} α _inst_2 (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))] {f : ι -> α} {g : κ -> α} (e : ι -> κ), (Function.Injective.{succ u1, succ u2} ι κ e) -> (forall (c : κ), (Not (Membership.Mem.{u2, u2} κ (Set.{u2} κ) (Set.hasMem.{u2} κ) c (Set.range.{u2, succ u1} κ ι e))) -> (LE.le.{u3} α (Preorder.toHasLe.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (OfNat.mk.{u3} α 0 (Zero.zero.{u3} α (AddZeroClass.toHasZero.{u3} α (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))))))) (g c))) -> (forall (i : ι), LE.le.{u3} α (Preorder.toHasLe.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (f i) (g (e i))) -> (Summable.{u3, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 f) -> (Summable.{u3, u2} α κ (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 g) -> (LE.le.{u3} α (Preorder.toHasLe.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (tsum.{u3, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 ι f) (tsum.{u3, u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 κ g))
 but is expected to have type
   forall {ι : Type.{u3}} {κ : Type.{u2}} {α : Type.{u1}} [_inst_1 : OrderedAddCommMonoid.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : OrderClosedTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))] {f : ι -> α} {g : κ -> α} (e : ι -> κ), (Function.Injective.{succ u3, succ u2} ι κ e) -> (forall (c : κ), (Not (Membership.mem.{u2, u2} κ (Set.{u2} κ) (Set.instMembershipSet.{u2} κ) c (Set.range.{u2, succ u3} κ ι e))) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (OfNat.ofNat.{u1} α 0 (Zero.toOfNat0.{u1} α (AddMonoid.toZero.{u1} α (AddCommMonoid.toAddMonoid.{u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1))))) (g c))) -> (forall (i : ι), LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (f i) (g (e i))) -> (Summable.{u1, u3} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 f) -> (Summable.{u1, u2} α κ (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 g) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (tsum.{u1, u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 ι f) (tsum.{u1, u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 κ g))
 Case conversion may be inaccurate. Consider using '#align tsum_le_tsum_of_inj tsum_le_tsum_of_injₓ'. -/
@@ -120,7 +140,7 @@ theorem tsum_le_tsum_of_inj {g : κ → α} (e : ι → κ) (he : Injective e)
 
 /- warning: sum_le_has_sum -> sum_le_hasSum is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α} (s : Finset.{u1} ι), (forall (i : ι), (Not (Membership.Mem.{u1, u1} ι (Finset.{u1} ι) (Finset.hasMem.{u1} ι) i s)) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f i))) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) a)
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α} (s : Finset.{u1} ι), (forall (i : ι), (Not (Membership.Mem.{u1, u1} ι (Finset.{u1} ι) (Finset.hasMem.{u1} ι) i s)) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f i))) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) a)
 but is expected to have type
   forall {ι : Type.{u2}} {α : Type.{u1}} [_inst_1 : OrderedAddCommMonoid.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : OrderClosedTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))] {f : ι -> α} {a : α} (s : Finset.{u2} ι), (forall (i : ι), (Not (Membership.mem.{u2, u2} ι (Finset.{u2} ι) (Finset.instMembershipFinset.{u2} ι) i s)) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (OfNat.ofNat.{u1} α 0 (Zero.toOfNat0.{u1} α (AddMonoid.toZero.{u1} α (AddCommMonoid.toAddMonoid.{u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1))))) (f i))) -> (HasSum.{u1, u2} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 f a) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (Finset.sum.{u1, u2} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) s (fun (i : ι) => f i)) a)
 Case conversion may be inaccurate. Consider using '#align sum_le_has_sum sum_le_hasSumₓ'. -/
@@ -134,7 +154,7 @@ theorem sum_le_hasSum (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (h
 
 /- warning: is_lub_has_sum -> isLUB_hasSum is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f i)) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (IsLUB.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (Set.range.{u2, succ u1} α (Finset.{u1} ι) (fun (s : Finset.{u1} ι) => Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i))) a)
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f i)) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (IsLUB.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (Set.range.{u2, succ u1} α (Finset.{u1} ι) (fun (s : Finset.{u1} ι) => Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i))) a)
 but is expected to have type
   forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (f i)) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (IsLUB.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (Set.range.{u2, succ u1} α (Finset.{u1} ι) (fun (s : Finset.{u1} ι) => Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i))) a)
 Case conversion may be inaccurate. Consider using '#align is_lub_has_sum isLUB_hasSumₓ'. -/
@@ -145,7 +165,7 @@ theorem isLUB_hasSum (h : ∀ i, 0 ≤ f i) (hf : HasSum f a) :
 
 /- warning: le_has_sum -> le_hasSum is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (forall (i : ι), (forall (b' : ι), (Ne.{succ u1} ι b' i) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f b'))) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) a))
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (forall (i : ι), (forall (b' : ι), (Ne.{succ u1} ι b' i) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f b'))) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) a))
 but is expected to have type
   forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (forall (i : ι), (forall (b' : ι), (Ne.{succ u1} ι b' i) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (f b'))) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) a))
 Case conversion may be inaccurate. Consider using '#align le_has_sum le_hasSumₓ'. -/
@@ -164,7 +184,7 @@ theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 
 
 /- warning: sum_le_tsum -> sum_le_tsum is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} (s : Finset.{u1} ι), (forall (i : ι), (Not (Membership.Mem.{u1, u1} ι (Finset.{u1} ι) (Finset.hasMem.{u1} ι) i s)) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f i))) -> (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)))
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} (s : Finset.{u1} ι), (forall (i : ι), (Not (Membership.Mem.{u1, u1} ι (Finset.{u1} ι) (Finset.hasMem.{u1} ι) i s)) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f i))) -> (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)))
 but is expected to have type
   forall {ι : Type.{u2}} {α : Type.{u1}} [_inst_1 : OrderedAddCommMonoid.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : OrderClosedTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))] {f : ι -> α} (s : Finset.{u2} ι), (forall (i : ι), (Not (Membership.mem.{u2, u2} ι (Finset.{u2} ι) (Finset.instMembershipFinset.{u2} ι) i s)) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (OfNat.ofNat.{u1} α 0 (Zero.toOfNat0.{u1} α (AddMonoid.toZero.{u1} α (AddCommMonoid.toAddMonoid.{u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1))))) (f i))) -> (Summable.{u1, u2} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 f) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (Finset.sum.{u1, u2} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) s (fun (i : ι) => f i)) (tsum.{u1, u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 ι (fun (i : ι) => f i)))
 Case conversion may be inaccurate. Consider using '#align sum_le_tsum sum_le_tsumₓ'. -/
@@ -176,7 +196,7 @@ theorem sum_le_tsum {f : ι → α} (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s),
 
 /- warning: le_tsum -> le_tsum is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (forall (i : ι), (forall (b' : ι), (Ne.{succ u1} ι b' i) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f b'))) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i))))
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (forall (i : ι), (forall (b' : ι), (Ne.{succ u1} ι b' i) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f b'))) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i))))
 but is expected to have type
   forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (forall (i : ι), (forall (b' : ι), (Ne.{succ u1} ι b' i) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (f b'))) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i))))
 Case conversion may be inaccurate. Consider using '#align le_tsum le_tsumₓ'. -/
@@ -185,29 +205,41 @@ theorem le_tsum (hf : Summable f) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤
   le_hasSum (Summable.hasSum hf) i hb
 #align le_tsum le_tsum
 
-#print tsum_le_tsum /-
+/- warning: tsum_le_tsum -> tsum_le_tsum is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (g i)) -> (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => g i)))
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (g i)) -> (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => g i)))
+Case conversion may be inaccurate. Consider using '#align tsum_le_tsum tsum_le_tsumₓ'. -/
 theorem tsum_le_tsum (h : ∀ i, f i ≤ g i) (hf : Summable f) (hg : Summable g) :
     (∑' i, f i) ≤ ∑' i, g i :=
   hasSum_le h hf.HasSum hg.HasSum
 #align tsum_le_tsum tsum_le_tsum
--/
 
-#print tsum_mono /-
+/- warning: tsum_mono -> tsum_mono is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g) -> (LE.le.{max u1 u2} (ι -> α) (Pi.hasLe.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)))) f g) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (n : ι) => f n)) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (n : ι) => g n)))
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g) -> (LE.le.{max u1 u2} (ι -> α) (Pi.hasLe.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)))) f g) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (n : ι) => f n)) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (n : ι) => g n)))
+Case conversion may be inaccurate. Consider using '#align tsum_mono tsum_monoₓ'. -/
 @[mono]
 theorem tsum_mono (hf : Summable f) (hg : Summable g) (h : f ≤ g) : (∑' n, f n) ≤ ∑' n, g n :=
   tsum_le_tsum h hf hg
 #align tsum_mono tsum_mono
--/
 
-#print tsum_le_of_sum_le /-
+/- warning: tsum_le_of_sum_le -> tsum_le_of_sum_le is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a₂ : α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (forall (s : Finset.{u1} ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) a₂) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) a₂)
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a₂ : α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (forall (s : Finset.{u1} ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) a₂) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) a₂)
+Case conversion may be inaccurate. Consider using '#align tsum_le_of_sum_le tsum_le_of_sum_leₓ'. -/
 theorem tsum_le_of_sum_le (hf : Summable f) (h : ∀ s, (∑ i in s, f i) ≤ a₂) : (∑' i, f i) ≤ a₂ :=
   hasSum_le_of_sum_le hf.HasSum h
 #align tsum_le_of_sum_le tsum_le_of_sum_le
--/
 
 /- warning: tsum_le_of_sum_le' -> tsum_le_of_sum_le' is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a₂ : α}, (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) a₂) -> (forall (s : Finset.{u1} ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) a₂) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) a₂)
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a₂ : α}, (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) a₂) -> (forall (s : Finset.{u1} ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) a₂) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) a₂)
 but is expected to have type
   forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a₂ : α}, (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) a₂) -> (forall (s : Finset.{u1} ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) a₂) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) a₂)
 Case conversion may be inaccurate. Consider using '#align tsum_le_of_sum_le' tsum_le_of_sum_le'ₓ'. -/
@@ -221,7 +253,7 @@ theorem tsum_le_of_sum_le' (ha₂ : 0 ≤ a₂) (h : ∀ s, (∑ i in s, f i) 
 
 /- warning: has_sum.nonneg -> HasSum.nonneg is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (g i)) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) a)
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (g i)) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) a)
 but is expected to have type
   forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (g i)) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) a)
 Case conversion may be inaccurate. Consider using '#align has_sum.nonneg HasSum.nonnegₓ'. -/
@@ -231,7 +263,7 @@ theorem HasSum.nonneg (h : ∀ i, 0 ≤ g i) (ha : HasSum g a) : 0 ≤ a :=
 
 /- warning: has_sum.nonpos -> HasSum.nonpos is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (g i) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))))) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))))
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (g i) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))))) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))))
 but is expected to have type
   forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (g i) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))
 Case conversion may be inaccurate. Consider using '#align has_sum.nonpos HasSum.nonposₓ'. -/
@@ -241,7 +273,7 @@ theorem HasSum.nonpos (h : ∀ i, g i ≤ 0) (ha : HasSum g a) : a ≤ 0 :=
 
 /- warning: tsum_nonneg -> tsum_nonneg is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (g i)) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => g i)))
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (g i)) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => g i)))
 but is expected to have type
   forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (g i)) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => g i)))
 Case conversion may be inaccurate. Consider using '#align tsum_nonneg tsum_nonnegₓ'. -/
@@ -254,7 +286,7 @@ theorem tsum_nonneg (h : ∀ i, 0 ≤ g i) : 0 ≤ ∑' i, g i :=
 
 /- warning: tsum_nonpos -> tsum_nonpos is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))))) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))))
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))))) -> (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))))
 but is expected to have type
   forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))
 Case conversion may be inaccurate. Consider using '#align tsum_nonpos tsum_nonposₓ'. -/
@@ -274,7 +306,7 @@ variable [OrderedAddCommGroup α] [TopologicalSpace α] [TopologicalAddGroup α]
 
 /- warning: has_sum_lt -> hasSum_lt is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {a₁ : α} {a₂ : α} {i : ι}, (LE.le.{max u1 u2} (ι -> α) (Pi.hasLe.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)))) f g) -> (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (f i) (g i)) -> (HasSum.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 f a₁) -> (HasSum.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 g a₂) -> (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a₁ a₂)
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {a₁ : α} {a₂ : α} {i : ι}, (LE.le.{max u1 u2} (ι -> α) (Pi.hasLe.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)))) f g) -> (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (f i) (g i)) -> (HasSum.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 f a₁) -> (HasSum.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 g a₂) -> (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a₁ a₂)
 but is expected to have type
   forall {ι : Type.{u2}} {α : Type.{u1}} [_inst_1 : OrderedAddCommGroup.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : TopologicalAddGroup.{u1} α _inst_2 (AddCommGroup.toAddGroup.{u1} α (OrderedAddCommGroup.toAddCommGroup.{u1} α _inst_1))] [_inst_4 : OrderClosedTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1))] {f : ι -> α} {g : ι -> α} {a₁ : α} {a₂ : α} {i : ι}, (LE.le.{max u2 u1} (ι -> α) (Pi.hasLe.{u2, u1} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1)))) f g) -> (LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1))) (f i) (g i)) -> (HasSum.{u1, u2} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} α _inst_1)) _inst_2 f a₁) -> (HasSum.{u1, u2} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} α _inst_1)) _inst_2 g a₂) -> (LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1))) a₁ a₂)
 Case conversion may be inaccurate. Consider using '#align has_sum_lt hasSum_ltₓ'. -/
@@ -285,17 +317,21 @@ theorem hasSum_lt (h : f ≤ g) (hi : f i < g i) (hf : HasSum f a₁) (hg : HasS
   simpa only [zero_sub, add_neg_cancel_left] using add_lt_add_of_lt_of_le hi this
 #align has_sum_lt hasSum_lt
 
-#print hasSum_strict_mono /-
+/- warning: has_sum_strict_mono -> hasSum_strict_mono is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {a₁ : α} {a₂ : α}, (HasSum.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 f a₁) -> (HasSum.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 g a₂) -> (LT.lt.{max u1 u2} (ι -> α) (Preorder.toHasLt.{max u1 u2} (ι -> α) (Pi.preorder.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)))) f g) -> (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a₁ a₂)
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {a₁ : α} {a₂ : α}, (HasSum.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 f a₁) -> (HasSum.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 g a₂) -> (LT.lt.{max u1 u2} (ι -> α) (Preorder.toLT.{max u1 u2} (ι -> α) (Pi.preorder.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)))) f g) -> (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a₁ a₂)
+Case conversion may be inaccurate. Consider using '#align has_sum_strict_mono hasSum_strict_monoₓ'. -/
 @[mono]
 theorem hasSum_strict_mono (hf : HasSum f a₁) (hg : HasSum g a₂) (h : f < g) : a₁ < a₂ :=
   let ⟨hle, i, hi⟩ := Pi.lt_def.mp h
   hasSum_lt hle hi hf hg
 #align has_sum_strict_mono hasSum_strict_mono
--/
 
 /- warning: tsum_lt_tsum -> tsum_lt_tsum is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {i : ι}, (LE.le.{max u1 u2} (ι -> α) (Pi.hasLe.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)))) f g) -> (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (f i) (g i)) -> (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 f) -> (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 g) -> (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 ι (fun (n : ι) => f n)) (tsum.{u2, u1} α (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 ι (fun (n : ι) => g n)))
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {i : ι}, (LE.le.{max u1 u2} (ι -> α) (Pi.hasLe.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)))) f g) -> (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (f i) (g i)) -> (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 f) -> (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 g) -> (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 ι (fun (n : ι) => f n)) (tsum.{u2, u1} α (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 ι (fun (n : ι) => g n)))
 but is expected to have type
   forall {ι : Type.{u2}} {α : Type.{u1}} [_inst_1 : OrderedAddCommGroup.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : TopologicalAddGroup.{u1} α _inst_2 (AddCommGroup.toAddGroup.{u1} α (OrderedAddCommGroup.toAddCommGroup.{u1} α _inst_1))] [_inst_4 : OrderClosedTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1))] {f : ι -> α} {g : ι -> α} {i : ι}, (LE.le.{max u2 u1} (ι -> α) (Pi.hasLe.{u2, u1} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1)))) f g) -> (LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1))) (f i) (g i)) -> (Summable.{u1, u2} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} α _inst_1)) _inst_2 f) -> (Summable.{u1, u2} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} α _inst_1)) _inst_2 g) -> (LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1))) (tsum.{u1, u2} α (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} α _inst_1)) _inst_2 ι (fun (n : ι) => f n)) (tsum.{u1, u2} α (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} α _inst_1)) _inst_2 ι (fun (n : ι) => g n)))
 Case conversion may be inaccurate. Consider using '#align tsum_lt_tsum tsum_lt_tsumₓ'. -/
@@ -304,18 +340,22 @@ theorem tsum_lt_tsum (h : f ≤ g) (hi : f i < g i) (hf : Summable f) (hg : Summ
   hasSum_lt h hi hf.HasSum hg.HasSum
 #align tsum_lt_tsum tsum_lt_tsum
 
-#print tsum_strict_mono /-
+/- warning: tsum_strict_mono -> tsum_strict_mono is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α}, (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 f) -> (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 g) -> (LT.lt.{max u1 u2} (ι -> α) (Preorder.toHasLt.{max u1 u2} (ι -> α) (Pi.preorder.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)))) f g) -> (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 ι (fun (n : ι) => f n)) (tsum.{u2, u1} α (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 ι (fun (n : ι) => g n)))
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α}, (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 f) -> (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 g) -> (LT.lt.{max u1 u2} (ι -> α) (Preorder.toLT.{max u1 u2} (ι -> α) (Pi.preorder.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)))) f g) -> (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (n : ι) => f n)) (tsum.{u2, u1} α (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (n : ι) => g n)))
+Case conversion may be inaccurate. Consider using '#align tsum_strict_mono tsum_strict_monoₓ'. -/
 @[mono]
 theorem tsum_strict_mono (hf : Summable f) (hg : Summable g) (h : f < g) :
     (∑' n, f n) < ∑' n, g n :=
   let ⟨hle, i, hi⟩ := Pi.lt_def.mp h
   tsum_lt_tsum hle hi hf hg
 #align tsum_strict_mono tsum_strict_mono
--/
 
 /- warning: tsum_pos -> tsum_pos is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {g : ι -> α}, (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 g) -> (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) (g i)) -> (forall (i : ι), (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) (g i)) -> (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) (tsum.{u2, u1} α (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => g i))))
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {g : ι -> α}, (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 g) -> (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) (g i)) -> (forall (i : ι), (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) (g i)) -> (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) (tsum.{u2, u1} α (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => g i))))
 but is expected to have type
   forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {g : ι -> α}, (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 g) -> (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (NegZeroClass.toZero.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))) (g i)) -> (forall (i : ι), (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (NegZeroClass.toZero.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))) (g i)) -> (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (NegZeroClass.toZero.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))) (tsum.{u2, u1} α (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => g i))))
 Case conversion may be inaccurate. Consider using '#align tsum_pos tsum_posₓ'. -/
@@ -327,7 +367,7 @@ theorem tsum_pos (hsum : Summable g) (hg : ∀ i, 0 ≤ g i) (i : ι) (hi : 0 <
 
 /- warning: has_sum_zero_iff_of_nonneg -> hasSum_zero_iff_of_nonneg is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) (f i)) -> (Iff (HasSum.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 f (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) (Eq.{max (succ u1) (succ u2)} (ι -> α) f (OfNat.ofNat.{max u1 u2} (ι -> α) 0 (OfNat.mk.{max u1 u2} (ι -> α) 0 (Zero.zero.{max u1 u2} (ι -> α) (Pi.instZero.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))))))
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) (f i)) -> (Iff (HasSum.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 f (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) (Eq.{max (succ u1) (succ u2)} (ι -> α) f (OfNat.ofNat.{max u1 u2} (ι -> α) 0 (OfNat.mk.{max u1 u2} (ι -> α) 0 (Zero.zero.{max u1 u2} (ι -> α) (Pi.instZero.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))))))
 but is expected to have type
   forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {_inst_4 : ι -> α}, (forall (ᾰ : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (_inst_4 ᾰ)) -> (Iff (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 _inst_4 (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))) (Eq.{max (succ u1) (succ u2)} (ι -> α) _inst_4 (OfNat.ofNat.{max u1 u2} (ι -> α) 0 (Zero.toOfNat0.{max u1 u2} (ι -> α) (Pi.instZero.{u1, u2} ι (fun (a._@.Mathlib.Topology.Algebra.InfiniteSum.Order._hyg.1730 : ι) => α) (fun (i : ι) => AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))))
 Case conversion may be inaccurate. Consider using '#align has_sum_zero_iff_of_nonneg hasSum_zero_iff_of_nonnegₓ'. -/
@@ -348,17 +388,25 @@ section CanonicallyOrderedAddMonoid
 variable [CanonicallyOrderedAddMonoid α] [TopologicalSpace α] [OrderClosedTopology α] {f : ι → α}
   {a : α}
 
-#print le_hasSum' /-
+/- warning: le_has_sum' -> le_hasSum' is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α} {a : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f a) -> (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))) (f i) a)
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α} {a : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f a) -> (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))) (f i) a)
+Case conversion may be inaccurate. Consider using '#align le_has_sum' le_hasSum'ₓ'. -/
 theorem le_hasSum' (hf : HasSum f a) (i : ι) : f i ≤ a :=
   le_hasSum hf i fun _ _ => zero_le _
 #align le_has_sum' le_hasSum'
--/
 
-#print le_tsum' /-
+/- warning: le_tsum' -> le_tsum' is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f) -> (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))) (f i) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => f i)))
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f) -> (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))) (f i) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => f i)))
+Case conversion may be inaccurate. Consider using '#align le_tsum' le_tsum'ₓ'. -/
 theorem le_tsum' (hf : Summable f) (i : ι) : f i ≤ ∑' i, f i :=
   le_tsum hf i fun _ _ => zero_le _
 #align le_tsum' le_tsum'
--/
 
 /- warning: has_sum_zero_iff -> hasSum_zero_iff is a dubious translation:
 lean 3 declaration is
@@ -417,7 +465,7 @@ the existence of a least upper bound.
 
 /- warning: has_sum_of_is_lub_of_nonneg -> hasSum_of_isLUB_of_nonneg is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α} (i : α), (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))))))) (f i)) -> (IsLUB.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))) (Set.range.{u2, succ u1} α (Finset.{u1} ι) (fun (s : Finset.{u1} ι) => Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) s (fun (i : ι) => f i))) i) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f i)
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α} (i : α), (forall (i : ι), LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))))))) (f i)) -> (IsLUB.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))) (Set.range.{u2, succ u1} α (Finset.{u1} ι) (fun (s : Finset.{u1} ι) => Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) s (fun (i : ι) => f i))) i) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f i)
 but is expected to have type
   forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α} (i : α), (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (LinearOrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (f i)) -> (IsLUB.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))) (Set.range.{u2, succ u1} α (Finset.{u1} ι) (fun (s : Finset.{u1} ι) => Finset.sum.{u2, u1} α ι (LinearOrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i))) i) -> (HasSum.{u2, u1} α ι (LinearOrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f i)
 Case conversion may be inaccurate. Consider using '#align has_sum_of_is_lub_of_nonneg hasSum_of_isLUB_of_nonnegₓ'. -/
@@ -472,7 +520,7 @@ alias summable_abs_iff ↔ Summable.of_abs Summable.abs
 
 /- warning: finite_of_summable_const -> Set.Finite.of_summable_const is a dubious translation:
 lean 3 declaration is
-  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : Archimedean.{u2} α (OrderedCancelAddCommMonoid.toOrderedAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] {b : α}, (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))))))))) b) -> (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))) _inst_2 (fun (i : ι) => b)) -> (Set.Finite.{u1} ι (Set.univ.{u1} ι))
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : Archimedean.{u2} α (OrderedCancelAddCommMonoid.toOrderedAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] {b : α}, (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))))))))) b) -> (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))) _inst_2 (fun (i : ι) => b)) -> (Set.Finite.{u1} ι (Set.univ.{u1} ι))
 but is expected to have type
   forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : Archimedean.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} α _inst_1)))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] {b : α}, (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (NegZeroClass.toZero.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))))))))) b) -> (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} α _inst_1))) _inst_2 (fun (i : ι) => b)) -> (Set.Finite.{u1} ι (Set.univ.{u1} ι))
 Case conversion may be inaccurate. Consider using '#align finite_of_summable_const Set.Finite.of_summable_constₓ'. -/
@@ -497,7 +545,7 @@ end LinearOrder
 
 /- warning: summable.tendsto_top_of_pos -> Summable.tendsto_atTop_of_pos is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : OrderTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))] {f : Nat -> α}, (Summable.{u1, 0} α Nat (AddCommGroup.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toAddCommGroup.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1)))))) _inst_2 (Inv.inv.{u1} (Nat -> α) (Pi.instInv.{0, u1} Nat (fun (ᾰ : Nat) => α) (fun (i : Nat) => DivInvMonoid.toHasInv.{u1} α (DivisionRing.toDivInvMonoid.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) f)) -> (forall (n : Nat), LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))) (OfNat.ofNat.{u1} α 0 (OfNat.mk.{u1} α 0 (Zero.zero.{u1} α (MulZeroClass.toHasZero.{u1} α (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} α (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))))))))) (f n)) -> (Filter.Tendsto.{0, u1} Nat α f (Filter.atTop.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)))) (Filter.atTop.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))))
+  forall {α : Type.{u1}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : OrderTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))] {f : Nat -> α}, (Summable.{u1, 0} α Nat (AddCommGroup.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toAddCommGroup.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1)))))) _inst_2 (Inv.inv.{u1} (Nat -> α) (Pi.instInv.{0, u1} Nat (fun (ᾰ : Nat) => α) (fun (i : Nat) => DivInvMonoid.toHasInv.{u1} α (DivisionRing.toDivInvMonoid.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) f)) -> (forall (n : Nat), LT.lt.{u1} α (Preorder.toHasLt.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))) (OfNat.ofNat.{u1} α 0 (OfNat.mk.{u1} α 0 (Zero.zero.{u1} α (MulZeroClass.toHasZero.{u1} α (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} α (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))))))))) (f n)) -> (Filter.Tendsto.{0, u1} Nat α f (Filter.atTop.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)))) (Filter.atTop.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))))
 but is expected to have type
   forall {α : Type.{u1}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : OrderTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (StrictOrderedRing.toPartialOrder.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1)))))] {f : Nat -> α}, (Summable.{u1, 0} α Nat (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} α (LinearOrderedSemiring.toStrictOrderedSemiring.{u1} α (LinearOrderedCommSemiring.toLinearOrderedSemiring.{u1} α (LinearOrderedSemifield.toLinearOrderedCommSemiring.{u1} α (LinearOrderedField.toLinearOrderedSemifield.{u1} α _inst_1)))))) _inst_2 (Inv.inv.{u1} (Nat -> α) (Pi.instInv.{0, u1} Nat (fun (ᾰ : Nat) => α) (fun (i : Nat) => LinearOrderedField.toInv.{u1} α _inst_1)) f)) -> (forall (n : Nat), LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (StrictOrderedRing.toPartialOrder.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1)))))) (OfNat.ofNat.{u1} α 0 (Zero.toOfNat0.{u1} α (CommMonoidWithZero.toZero.{u1} α (CommGroupWithZero.toCommMonoidWithZero.{u1} α (Semifield.toCommGroupWithZero.{u1} α (LinearOrderedSemifield.toSemifield.{u1} α (LinearOrderedField.toLinearOrderedSemifield.{u1} α _inst_1))))))) (f n)) -> (Filter.Tendsto.{0, u1} Nat α f (Filter.atTop.{0} Nat (PartialOrder.toPreorder.{0} Nat (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring))) (Filter.atTop.{u1} α (PartialOrder.toPreorder.{u1} α (StrictOrderedRing.toPartialOrder.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1)))))))
 Case conversion may be inaccurate. Consider using '#align summable.tendsto_top_of_pos Summable.tendsto_atTop_of_posₓ'. -/
Diff
@@ -348,10 +348,10 @@ section CanonicallyOrderedAddMonoid
 variable [CanonicallyOrderedAddMonoid α] [TopologicalSpace α] [OrderClosedTopology α] {f : ι → α}
   {a : α}
 
-#print le_has_sum' /-
-theorem le_has_sum' (hf : HasSum f a) (i : ι) : f i ≤ a :=
+#print le_hasSum' /-
+theorem le_hasSum' (hf : HasSum f a) (i : ι) : f i ≤ a :=
   le_hasSum hf i fun _ _ => zero_le _
-#align le_has_sum' le_has_sum'
+#align le_has_sum' le_hasSum'
 -/
 
 #print le_tsum' /-
@@ -370,7 +370,7 @@ theorem hasSum_zero_iff : HasSum f 0 ↔ ∀ x, f x = 0 :=
   by
   refine' ⟨_, fun h => _⟩
   · contrapose!
-    exact fun ⟨x, hx⟩ h => hx (nonpos_iff_eq_zero.1 <| le_has_sum' h x)
+    exact fun ⟨x, hx⟩ h => hx (nonpos_iff_eq_zero.1 <| le_hasSum' h x)
   · convert hasSum_zero
     exact funext h
 #align has_sum_zero_iff hasSum_zero_iff
@@ -395,10 +395,10 @@ theorem tsum_ne_zero_iff (hf : Summable f) : (∑' i, f i) ≠ 0 ↔ ∃ x, f x
   rw [Ne.def, tsum_eq_zero_iff hf, not_forall]
 #align tsum_ne_zero_iff tsum_ne_zero_iff
 
-#print isLUB_has_sum' /-
-theorem isLUB_has_sum' (hf : HasSum f a) : IsLUB (Set.range fun s => ∑ i in s, f i) a :=
+#print isLUB_hasSum' /-
+theorem isLUB_hasSum' (hf : HasSum f a) : IsLUB (Set.range fun s => ∑ i in s, f i) a :=
   isLUB_of_tendsto_atTop (Finset.sum_mono_set f) hf
-#align is_lub_has_sum' isLUB_has_sum'
+#align is_lub_has_sum' isLUB_hasSum'
 -/
 
 end CanonicallyOrderedAddMonoid
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Johannes Hölzl
 
 ! This file was ported from Lean 3 source module topology.algebra.infinite_sum.order
-! leanprover-community/mathlib commit 32253a1a1071173b33dc7d6a218cf722c6feb514
+! leanprover-community/mathlib commit f47581155c818e6361af4e4fda60d27d020c226b
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -16,6 +16,9 @@ import Mathbin.Topology.Algebra.Order.MonotoneConvergence
 /-!
 # Infinite sum in an order
 
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
 This file provides lemmas about the interaction of infinite sums and order operations.
 -/
 
Diff
@@ -31,11 +31,13 @@ section Preorder
 variable [Preorder α] [AddCommMonoid α] [TopologicalSpace α] [OrderClosedTopology α] [T2Space α]
   {f : ℕ → α} {c : α}
 
+#print tsum_le_of_sum_range_le /-
 theorem tsum_le_of_sum_range_le (hf : Summable f) (h : ∀ n, (∑ i in range n, f i) ≤ c) :
     (∑' n, f n) ≤ c :=
   let ⟨l, hl⟩ := hf
   hl.tsum_eq.symm ▸ le_of_tendsto' hl.tendsto_sum_nat h
 #align tsum_le_of_sum_range_le tsum_le_of_sum_range_le
+-/
 
 end Preorder
 
@@ -44,23 +46,37 @@ section OrderedAddCommMonoid
 variable [OrderedAddCommMonoid α] [TopologicalSpace α] [OrderClosedTopology α] {f g : ι → α}
   {a a₁ a₂ : α}
 
+#print hasSum_le /-
 theorem hasSum_le (h : ∀ i, f i ≤ g i) (hf : HasSum f a₁) (hg : HasSum g a₂) : a₁ ≤ a₂ :=
   le_of_tendsto_of_tendsto' hf hg fun s => sum_le_sum fun i _ => h i
 #align has_sum_le hasSum_le
+-/
 
+#print hasSum_mono /-
 @[mono]
 theorem hasSum_mono (hf : HasSum f a₁) (hg : HasSum g a₂) (h : f ≤ g) : a₁ ≤ a₂ :=
   hasSum_le h hf hg
 #align has_sum_mono hasSum_mono
+-/
 
+#print hasSum_le_of_sum_le /-
 theorem hasSum_le_of_sum_le (hf : HasSum f a) (h : ∀ s, (∑ i in s, f i) ≤ a₂) : a ≤ a₂ :=
   le_of_tendsto' hf h
 #align has_sum_le_of_sum_le hasSum_le_of_sum_le
+-/
 
+#print le_hasSum_of_le_sum /-
 theorem le_hasSum_of_le_sum (hf : HasSum f a) (h : ∀ s, a₂ ≤ ∑ i in s, f i) : a₂ ≤ a :=
   ge_of_tendsto' hf h
 #align le_has_sum_of_le_sum le_hasSum_of_le_sum
+-/
 
+/- warning: has_sum_le_inj -> hasSum_le_inj is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {κ : Type.{u2}} {α : Type.{u3}} [_inst_1 : OrderedAddCommMonoid.{u3} α] [_inst_2 : TopologicalSpace.{u3} α] [_inst_3 : OrderClosedTopology.{u3} α _inst_2 (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))] {f : ι -> α} {a₁ : α} {a₂ : α} {g : κ -> α} (e : ι -> κ), (Function.Injective.{succ u1, succ u2} ι κ e) -> (forall (c : κ), (Not (Membership.Mem.{u2, u2} κ (Set.{u2} κ) (Set.hasMem.{u2} κ) c (Set.range.{u2, succ u1} κ ι e))) -> (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (OfNat.mk.{u3} α 0 (Zero.zero.{u3} α (AddZeroClass.toHasZero.{u3} α (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))))))) (g c))) -> (forall (i : ι), LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (f i) (g (e i))) -> (HasSum.{u3, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 f a₁) -> (HasSum.{u3, u2} α κ (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 g a₂) -> (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) a₁ a₂)
+but is expected to have type
+  forall {ι : Type.{u3}} {κ : Type.{u2}} {α : Type.{u1}} [_inst_1 : OrderedAddCommMonoid.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : OrderClosedTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))] {f : ι -> α} {a₁ : α} {a₂ : α} {g : κ -> α} (e : ι -> κ), (Function.Injective.{succ u3, succ u2} ι κ e) -> (forall (c : κ), (Not (Membership.mem.{u2, u2} κ (Set.{u2} κ) (Set.instMembershipSet.{u2} κ) c (Set.range.{u2, succ u3} κ ι e))) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (OfNat.ofNat.{u1} α 0 (Zero.toOfNat0.{u1} α (AddMonoid.toZero.{u1} α (AddCommMonoid.toAddMonoid.{u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1))))) (g c))) -> (forall (i : ι), LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (f i) (g (e i))) -> (HasSum.{u1, u3} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 f a₁) -> (HasSum.{u1, u2} α κ (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 g a₂) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) a₁ a₂)
+Case conversion may be inaccurate. Consider using '#align has_sum_le_inj hasSum_le_injₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
 theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     (hs : ∀ (c) (_ : c ∉ Set.range e), 0 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : HasSum f a₁)
@@ -86,6 +102,12 @@ theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     exact hs _ h
 #align has_sum_le_inj hasSum_le_inj
 
+/- warning: tsum_le_tsum_of_inj -> tsum_le_tsum_of_inj is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {κ : Type.{u2}} {α : Type.{u3}} [_inst_1 : OrderedAddCommMonoid.{u3} α] [_inst_2 : TopologicalSpace.{u3} α] [_inst_3 : OrderClosedTopology.{u3} α _inst_2 (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))] {f : ι -> α} {g : κ -> α} (e : ι -> κ), (Function.Injective.{succ u1, succ u2} ι κ e) -> (forall (c : κ), (Not (Membership.Mem.{u2, u2} κ (Set.{u2} κ) (Set.hasMem.{u2} κ) c (Set.range.{u2, succ u1} κ ι e))) -> (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (OfNat.mk.{u3} α 0 (Zero.zero.{u3} α (AddZeroClass.toHasZero.{u3} α (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))))))) (g c))) -> (forall (i : ι), LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (f i) (g (e i))) -> (Summable.{u3, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 f) -> (Summable.{u3, u2} α κ (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 g) -> (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (tsum.{u3, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 ι f) (tsum.{u3, u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1) _inst_2 κ g))
+but is expected to have type
+  forall {ι : Type.{u3}} {κ : Type.{u2}} {α : Type.{u1}} [_inst_1 : OrderedAddCommMonoid.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : OrderClosedTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))] {f : ι -> α} {g : κ -> α} (e : ι -> κ), (Function.Injective.{succ u3, succ u2} ι κ e) -> (forall (c : κ), (Not (Membership.mem.{u2, u2} κ (Set.{u2} κ) (Set.instMembershipSet.{u2} κ) c (Set.range.{u2, succ u3} κ ι e))) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (OfNat.ofNat.{u1} α 0 (Zero.toOfNat0.{u1} α (AddMonoid.toZero.{u1} α (AddCommMonoid.toAddMonoid.{u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1))))) (g c))) -> (forall (i : ι), LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (f i) (g (e i))) -> (Summable.{u1, u3} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 f) -> (Summable.{u1, u2} α κ (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 g) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (tsum.{u1, u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 ι f) (tsum.{u1, u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 κ g))
+Case conversion may be inaccurate. Consider using '#align tsum_le_tsum_of_inj tsum_le_tsum_of_injₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
 theorem tsum_le_tsum_of_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     (hs : ∀ (c) (_ : c ∉ Set.range e), 0 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : Summable f)
@@ -93,6 +115,12 @@ theorem tsum_le_tsum_of_inj {g : κ → α} (e : ι → κ) (he : Injective e)
   hasSum_le_inj _ he hs h hf.HasSum hg.HasSum
 #align tsum_le_tsum_of_inj tsum_le_tsum_of_inj
 
+/- warning: sum_le_has_sum -> sum_le_hasSum is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α} (s : Finset.{u1} ι), (forall (i : ι), (Not (Membership.Mem.{u1, u1} ι (Finset.{u1} ι) (Finset.hasMem.{u1} ι) i s)) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f i))) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) a)
+but is expected to have type
+  forall {ι : Type.{u2}} {α : Type.{u1}} [_inst_1 : OrderedAddCommMonoid.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : OrderClosedTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))] {f : ι -> α} {a : α} (s : Finset.{u2} ι), (forall (i : ι), (Not (Membership.mem.{u2, u2} ι (Finset.{u2} ι) (Finset.instMembershipFinset.{u2} ι) i s)) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (OfNat.ofNat.{u1} α 0 (Zero.toOfNat0.{u1} α (AddMonoid.toZero.{u1} α (AddCommMonoid.toAddMonoid.{u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1))))) (f i))) -> (HasSum.{u1, u2} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 f a) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (Finset.sum.{u1, u2} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) s (fun (i : ι) => f i)) a)
+Case conversion may be inaccurate. Consider using '#align sum_le_has_sum sum_le_hasSumₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (i «expr ∉ » s) -/
 theorem sum_le_hasSum (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (hf : HasSum f a) :
     (∑ i in s, f i) ≤ a :=
@@ -101,11 +129,23 @@ theorem sum_le_hasSum (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (h
       ⟨s, fun t hst => sum_le_sum_of_subset_of_nonneg hst fun i hbt hbs => hs i hbs⟩)
 #align sum_le_has_sum sum_le_hasSum
 
+/- warning: is_lub_has_sum -> isLUB_hasSum is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f i)) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (IsLUB.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (Set.range.{u2, succ u1} α (Finset.{u1} ι) (fun (s : Finset.{u1} ι) => Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i))) a)
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (f i)) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (IsLUB.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (Set.range.{u2, succ u1} α (Finset.{u1} ι) (fun (s : Finset.{u1} ι) => Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i))) a)
+Case conversion may be inaccurate. Consider using '#align is_lub_has_sum isLUB_hasSumₓ'. -/
 theorem isLUB_hasSum (h : ∀ i, 0 ≤ f i) (hf : HasSum f a) :
     IsLUB (Set.range fun s => ∑ i in s, f i) a :=
   isLUB_of_tendsto_atTop (Finset.sum_mono_set_of_nonneg h) hf
 #align is_lub_has_sum isLUB_hasSum
 
+/- warning: le_has_sum -> le_hasSum is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (forall (i : ι), (forall (b' : ι), (Ne.{succ u1} ι b' i) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f b'))) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) a))
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a : α}, (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f a) -> (forall (i : ι), (forall (b' : ι), (Ne.{succ u1} ι b' i) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (f b'))) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) a))
+Case conversion may be inaccurate. Consider using '#align le_has_sum le_hasSumₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (b' «expr ≠ » i) -/
 theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤ f b') : f i ≤ a :=
   calc
@@ -119,31 +159,55 @@ theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 
     
 #align le_has_sum le_hasSum
 
+/- warning: sum_le_tsum -> sum_le_tsum is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} (s : Finset.{u1} ι), (forall (i : ι), (Not (Membership.Mem.{u1, u1} ι (Finset.{u1} ι) (Finset.hasMem.{u1} ι) i s)) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f i))) -> (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)))
+but is expected to have type
+  forall {ι : Type.{u2}} {α : Type.{u1}} [_inst_1 : OrderedAddCommMonoid.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : OrderClosedTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))] {f : ι -> α} (s : Finset.{u2} ι), (forall (i : ι), (Not (Membership.mem.{u2, u2} ι (Finset.{u2} ι) (Finset.instMembershipFinset.{u2} ι) i s)) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (OfNat.ofNat.{u1} α 0 (Zero.toOfNat0.{u1} α (AddMonoid.toZero.{u1} α (AddCommMonoid.toAddMonoid.{u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1))))) (f i))) -> (Summable.{u1, u2} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 f) -> (LE.le.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommMonoid.toPartialOrder.{u1} α _inst_1))) (Finset.sum.{u1, u2} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) s (fun (i : ι) => f i)) (tsum.{u1, u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u1} α _inst_1) _inst_2 ι (fun (i : ι) => f i)))
+Case conversion may be inaccurate. Consider using '#align sum_le_tsum sum_le_tsumₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (i «expr ∉ » s) -/
 theorem sum_le_tsum {f : ι → α} (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (hf : Summable f) :
     (∑ i in s, f i) ≤ ∑' i, f i :=
   sum_le_hasSum s hs hf.HasSum
 #align sum_le_tsum sum_le_tsum
 
+/- warning: le_tsum -> le_tsum is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (forall (i : ι), (forall (b' : ι), (Ne.{succ u1} ι b' i) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (f b'))) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i))))
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f) -> (forall (i : ι), (forall (b' : ι), (Ne.{succ u1} ι b' i) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (f b'))) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i))))
+Case conversion may be inaccurate. Consider using '#align le_tsum le_tsumₓ'. -/
 /- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (b' «expr ≠ » i) -/
 theorem le_tsum (hf : Summable f) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤ f b') : f i ≤ ∑' i, f i :=
   le_hasSum (Summable.hasSum hf) i hb
 #align le_tsum le_tsum
 
+#print tsum_le_tsum /-
 theorem tsum_le_tsum (h : ∀ i, f i ≤ g i) (hf : Summable f) (hg : Summable g) :
     (∑' i, f i) ≤ ∑' i, g i :=
   hasSum_le h hf.HasSum hg.HasSum
 #align tsum_le_tsum tsum_le_tsum
+-/
 
+#print tsum_mono /-
 @[mono]
 theorem tsum_mono (hf : Summable f) (hg : Summable g) (h : f ≤ g) : (∑' n, f n) ≤ ∑' n, g n :=
   tsum_le_tsum h hf hg
 #align tsum_mono tsum_mono
+-/
 
+#print tsum_le_of_sum_le /-
 theorem tsum_le_of_sum_le (hf : Summable f) (h : ∀ s, (∑ i in s, f i) ≤ a₂) : (∑' i, f i) ≤ a₂ :=
   hasSum_le_of_sum_le hf.HasSum h
 #align tsum_le_of_sum_le tsum_le_of_sum_le
+-/
 
+/- warning: tsum_le_of_sum_le' -> tsum_le_of_sum_le' is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a₂ : α}, (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) a₂) -> (forall (s : Finset.{u1} ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) a₂) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) a₂)
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {a₂ : α}, (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) a₂) -> (forall (s : Finset.{u1} ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i)) a₂) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) a₂)
+Case conversion may be inaccurate. Consider using '#align tsum_le_of_sum_le' tsum_le_of_sum_le'ₓ'. -/
 theorem tsum_le_of_sum_le' (ha₂ : 0 ≤ a₂) (h : ∀ s, (∑ i in s, f i) ≤ a₂) : (∑' i, f i) ≤ a₂ :=
   by
   by_cases hf : Summable f
@@ -152,14 +216,32 @@ theorem tsum_le_of_sum_le' (ha₂ : 0 ≤ a₂) (h : ∀ s, (∑ i in s, f i) 
     exact ha₂
 #align tsum_le_of_sum_le' tsum_le_of_sum_le'
 
+/- warning: has_sum.nonneg -> HasSum.nonneg is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (g i)) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) a)
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (g i)) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) a)
+Case conversion may be inaccurate. Consider using '#align has_sum.nonneg HasSum.nonnegₓ'. -/
 theorem HasSum.nonneg (h : ∀ i, 0 ≤ g i) (ha : HasSum g a) : 0 ≤ a :=
   hasSum_le h hasSum_zero ha
 #align has_sum.nonneg HasSum.nonneg
 
+/- warning: has_sum.nonpos -> HasSum.nonpos is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (g i) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))))) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))))
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α} {a : α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (g i) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 g a) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))
+Case conversion may be inaccurate. Consider using '#align has_sum.nonpos HasSum.nonposₓ'. -/
 theorem HasSum.nonpos (h : ∀ i, g i ≤ 0) (ha : HasSum g a) : a ≤ 0 :=
   hasSum_le h ha hasSum_zero
 #align has_sum.nonpos HasSum.nonpos
 
+/- warning: tsum_nonneg -> tsum_nonneg is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (g i)) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => g i)))
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {g : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (g i)) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => g i)))
+Case conversion may be inaccurate. Consider using '#align tsum_nonneg tsum_nonnegₓ'. -/
 theorem tsum_nonneg (h : ∀ i, 0 ≤ g i) : 0 ≤ ∑' i, g i :=
   by
   by_cases hg : Summable g
@@ -167,6 +249,12 @@ theorem tsum_nonneg (h : ∀ i, 0 ≤ g i) : 0 ≤ ∑' i, g i :=
   · simp [tsum_eq_zero_of_not_summable hg]
 #align tsum_nonneg tsum_nonneg
 
+/- warning: tsum_nonpos -> tsum_nonpos is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))))) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))))
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {f : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (f i) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))) -> (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 ι (fun (i : ι) => f i)) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))
+Case conversion may be inaccurate. Consider using '#align tsum_nonpos tsum_nonposₓ'. -/
 theorem tsum_nonpos (h : ∀ i, f i ≤ 0) : (∑' i, f i) ≤ 0 :=
   by
   by_cases hf : Summable f
@@ -181,6 +269,12 @@ section OrderedAddCommGroup
 variable [OrderedAddCommGroup α] [TopologicalSpace α] [TopologicalAddGroup α]
   [OrderClosedTopology α] {f g : ι → α} {a₁ a₂ : α} {i : ι}
 
+/- warning: has_sum_lt -> hasSum_lt is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {a₁ : α} {a₂ : α} {i : ι}, (LE.le.{max u1 u2} (ι -> α) (Pi.hasLe.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)))) f g) -> (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (f i) (g i)) -> (HasSum.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 f a₁) -> (HasSum.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 g a₂) -> (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a₁ a₂)
+but is expected to have type
+  forall {ι : Type.{u2}} {α : Type.{u1}} [_inst_1 : OrderedAddCommGroup.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : TopologicalAddGroup.{u1} α _inst_2 (AddCommGroup.toAddGroup.{u1} α (OrderedAddCommGroup.toAddCommGroup.{u1} α _inst_1))] [_inst_4 : OrderClosedTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1))] {f : ι -> α} {g : ι -> α} {a₁ : α} {a₂ : α} {i : ι}, (LE.le.{max u2 u1} (ι -> α) (Pi.hasLe.{u2, u1} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1)))) f g) -> (LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1))) (f i) (g i)) -> (HasSum.{u1, u2} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} α _inst_1)) _inst_2 f a₁) -> (HasSum.{u1, u2} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} α _inst_1)) _inst_2 g a₂) -> (LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1))) a₁ a₂)
+Case conversion may be inaccurate. Consider using '#align has_sum_lt hasSum_ltₓ'. -/
 theorem hasSum_lt (h : f ≤ g) (hi : f i < g i) (hf : HasSum f a₁) (hg : HasSum g a₂) : a₁ < a₂ :=
   by
   have : update f i 0 ≤ update g i 0 := update_le_update_iff.mpr ⟨rfl.le, fun i _ => h i⟩
@@ -188,30 +282,52 @@ theorem hasSum_lt (h : f ≤ g) (hi : f i < g i) (hf : HasSum f a₁) (hg : HasS
   simpa only [zero_sub, add_neg_cancel_left] using add_lt_add_of_lt_of_le hi this
 #align has_sum_lt hasSum_lt
 
+#print hasSum_strict_mono /-
 @[mono]
 theorem hasSum_strict_mono (hf : HasSum f a₁) (hg : HasSum g a₂) (h : f < g) : a₁ < a₂ :=
   let ⟨hle, i, hi⟩ := Pi.lt_def.mp h
   hasSum_lt hle hi hf hg
 #align has_sum_strict_mono hasSum_strict_mono
+-/
 
+/- warning: tsum_lt_tsum -> tsum_lt_tsum is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α} {g : ι -> α} {i : ι}, (LE.le.{max u1 u2} (ι -> α) (Pi.hasLe.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)))) f g) -> (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (f i) (g i)) -> (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 f) -> (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 g) -> (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (tsum.{u2, u1} α (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 ι (fun (n : ι) => f n)) (tsum.{u2, u1} α (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 ι (fun (n : ι) => g n)))
+but is expected to have type
+  forall {ι : Type.{u2}} {α : Type.{u1}} [_inst_1 : OrderedAddCommGroup.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : TopologicalAddGroup.{u1} α _inst_2 (AddCommGroup.toAddGroup.{u1} α (OrderedAddCommGroup.toAddCommGroup.{u1} α _inst_1))] [_inst_4 : OrderClosedTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1))] {f : ι -> α} {g : ι -> α} {i : ι}, (LE.le.{max u2 u1} (ι -> α) (Pi.hasLe.{u2, u1} ι (fun (ᾰ : ι) => α) (fun (i : ι) => Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1)))) f g) -> (LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1))) (f i) (g i)) -> (Summable.{u1, u2} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} α _inst_1)) _inst_2 f) -> (Summable.{u1, u2} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} α _inst_1)) _inst_2 g) -> (LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α _inst_1))) (tsum.{u1, u2} α (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} α _inst_1)) _inst_2 ι (fun (n : ι) => f n)) (tsum.{u1, u2} α (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u1} α _inst_1)) _inst_2 ι (fun (n : ι) => g n)))
+Case conversion may be inaccurate. Consider using '#align tsum_lt_tsum tsum_lt_tsumₓ'. -/
 theorem tsum_lt_tsum (h : f ≤ g) (hi : f i < g i) (hf : Summable f) (hg : Summable g) :
     (∑' n, f n) < ∑' n, g n :=
   hasSum_lt h hi hf.HasSum hg.HasSum
 #align tsum_lt_tsum tsum_lt_tsum
 
+#print tsum_strict_mono /-
 @[mono]
 theorem tsum_strict_mono (hf : Summable f) (hg : Summable g) (h : f < g) :
     (∑' n, f n) < ∑' n, g n :=
   let ⟨hle, i, hi⟩ := Pi.lt_def.mp h
   tsum_lt_tsum hle hi hf hg
 #align tsum_strict_mono tsum_strict_mono
+-/
 
+/- warning: tsum_pos -> tsum_pos is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {g : ι -> α}, (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 g) -> (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) (g i)) -> (forall (i : ι), (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) (g i)) -> (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) (tsum.{u2, u1} α (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => g i))))
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {g : ι -> α}, (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 g) -> (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (NegZeroClass.toZero.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))) (g i)) -> (forall (i : ι), (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (NegZeroClass.toZero.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))) (g i)) -> (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (NegZeroClass.toZero.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))) (tsum.{u2, u1} α (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => g i))))
+Case conversion may be inaccurate. Consider using '#align tsum_pos tsum_posₓ'. -/
 theorem tsum_pos (hsum : Summable g) (hg : ∀ i, 0 ≤ g i) (i : ι) (hi : 0 < g i) : 0 < ∑' i, g i :=
   by
   rw [← tsum_zero]
   exact tsum_lt_tsum hg hi summable_zero hsum
 #align tsum_pos tsum_pos
 
+/- warning: has_sum_zero_iff_of_nonneg -> hasSum_zero_iff_of_nonneg is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : TopologicalAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))] {f : ι -> α}, (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) (f i)) -> (Iff (HasSum.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)) _inst_2 f (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) (Eq.{max (succ u1) (succ u2)} (ι -> α) f (OfNat.ofNat.{max u1 u2} (ι -> α) 0 (OfNat.mk.{max u1 u2} (ι -> α) 0 (Zero.zero.{max u1 u2} (ι -> α) (Pi.instZero.{u1, u2} ι (fun (ᾰ : ι) => α) (fun (i : ι) => AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))))))
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))] {_inst_4 : ι -> α}, (forall (ᾰ : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (_inst_4 ᾰ)) -> (Iff (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 _inst_4 (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))) (Eq.{max (succ u1) (succ u2)} (ι -> α) _inst_4 (OfNat.ofNat.{max u1 u2} (ι -> α) 0 (Zero.toOfNat0.{max u1 u2} (ι -> α) (Pi.instZero.{u1, u2} ι (fun (a._@.Mathlib.Topology.Algebra.InfiniteSum.Order._hyg.1730 : ι) => α) (fun (i : ι) => AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))))
+Case conversion may be inaccurate. Consider using '#align has_sum_zero_iff_of_nonneg hasSum_zero_iff_of_nonnegₓ'. -/
 theorem hasSum_zero_iff_of_nonneg (hf : ∀ i, 0 ≤ f i) : HasSum f 0 ↔ f = 0 :=
   by
   refine' ⟨fun hf' => _, _⟩
@@ -229,14 +345,24 @@ section CanonicallyOrderedAddMonoid
 variable [CanonicallyOrderedAddMonoid α] [TopologicalSpace α] [OrderClosedTopology α] {f : ι → α}
   {a : α}
 
+#print le_has_sum' /-
 theorem le_has_sum' (hf : HasSum f a) (i : ι) : f i ≤ a :=
   le_hasSum hf i fun _ _ => zero_le _
 #align le_has_sum' le_has_sum'
+-/
 
+#print le_tsum' /-
 theorem le_tsum' (hf : Summable f) (i : ι) : f i ≤ ∑' i, f i :=
   le_tsum hf i fun _ _ => zero_le _
 #align le_tsum' le_tsum'
+-/
 
+/- warning: has_sum_zero_iff -> hasSum_zero_iff is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α}, Iff (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))))))))) (forall (x : ι), Eq.{succ u2} α (f x) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))))))))
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α}, Iff (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))))))) (forall (x : ι), Eq.{succ u2} α (f x) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))))))
+Case conversion may be inaccurate. Consider using '#align has_sum_zero_iff hasSum_zero_iffₓ'. -/
 theorem hasSum_zero_iff : HasSum f 0 ↔ ∀ x, f x = 0 :=
   by
   refine' ⟨_, fun h => _⟩
@@ -246,17 +372,31 @@ theorem hasSum_zero_iff : HasSum f 0 ↔ ∀ x, f x = 0 :=
     exact funext h
 #align has_sum_zero_iff hasSum_zero_iff
 
+/- warning: tsum_eq_zero_iff -> tsum_eq_zero_iff is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f) -> (Iff (Eq.{succ u2} α (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => f i)) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))))))))) (forall (x : ι), Eq.{succ u2} α (f x) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))))))))))
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f) -> (Iff (Eq.{succ u2} α (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => f i)) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))))))) (forall (x : ι), Eq.{succ u2} α (f x) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))))))))
+Case conversion may be inaccurate. Consider using '#align tsum_eq_zero_iff tsum_eq_zero_iffₓ'. -/
 theorem tsum_eq_zero_iff (hf : Summable f) : (∑' i, f i) = 0 ↔ ∀ x, f x = 0 := by
   rw [← hasSum_zero_iff, hf.has_sum_iff]
 #align tsum_eq_zero_iff tsum_eq_zero_iff
 
+/- warning: tsum_ne_zero_iff -> tsum_ne_zero_iff is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f) -> (Iff (Ne.{succ u2} α (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => f i)) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))))))))) (Exists.{succ u1} ι (fun (x : ι) => Ne.{succ u2} α (f x) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))))))))))
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : CanonicallyOrderedAddMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f) -> (Iff (Ne.{succ u2} α (tsum.{u2, u1} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 ι (fun (i : ι) => f i)) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))))))) (Exists.{succ u1} ι (fun (x : ι) => Ne.{succ u2} α (f x) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (CanonicallyOrderedAddMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))))))))
+Case conversion may be inaccurate. Consider using '#align tsum_ne_zero_iff tsum_ne_zero_iffₓ'. -/
 theorem tsum_ne_zero_iff (hf : Summable f) : (∑' i, f i) ≠ 0 ↔ ∃ x, f x ≠ 0 := by
   rw [Ne.def, tsum_eq_zero_iff hf, not_forall]
 #align tsum_ne_zero_iff tsum_ne_zero_iff
 
+#print isLUB_has_sum' /-
 theorem isLUB_has_sum' (hf : HasSum f a) : IsLUB (Set.range fun s => ∑ i in s, f i) a :=
   isLUB_of_tendsto_atTop (Finset.sum_mono_set f) hf
 #align is_lub_has_sum' isLUB_has_sum'
+-/
 
 end CanonicallyOrderedAddMonoid
 
@@ -272,17 +412,31 @@ the existence of a least upper bound.
 -/
 
 
+/- warning: has_sum_of_is_lub_of_nonneg -> hasSum_of_isLUB_of_nonneg is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α} (i : α), (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))))))) (f i)) -> (IsLUB.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))) (Set.range.{u2, succ u1} α (Finset.{u1} ι) (fun (s : Finset.{u1} ι) => Finset.sum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) s (fun (i : ι) => f i))) i) -> (HasSum.{u2, u1} α ι (OrderedAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)) _inst_2 f i)
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommMonoid.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : OrderTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))] {f : ι -> α} (i : α), (forall (i : ι), LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1)))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (AddMonoid.toZero.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (LinearOrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))) (f i)) -> (IsLUB.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α _inst_1))) (Set.range.{u2, succ u1} α (Finset.{u1} ι) (fun (s : Finset.{u1} ι) => Finset.sum.{u2, u1} α ι (LinearOrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) s (fun (i : ι) => f i))) i) -> (HasSum.{u2, u1} α ι (LinearOrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1) _inst_2 f i)
+Case conversion may be inaccurate. Consider using '#align has_sum_of_is_lub_of_nonneg hasSum_of_isLUB_of_nonnegₓ'. -/
 theorem hasSum_of_isLUB_of_nonneg [LinearOrderedAddCommMonoid α] [TopologicalSpace α]
     [OrderTopology α] {f : ι → α} (i : α) (h : ∀ i, 0 ≤ f i)
     (hf : IsLUB (Set.range fun s => ∑ i in s, f i) i) : HasSum f i :=
   tendsto_atTop_isLUB (Finset.sum_mono_set_of_nonneg h) hf
 #align has_sum_of_is_lub_of_nonneg hasSum_of_isLUB_of_nonneg
 
+#print hasSum_of_isLUB /-
 theorem hasSum_of_isLUB [CanonicallyLinearOrderedAddMonoid α] [TopologicalSpace α] [OrderTopology α]
     {f : ι → α} (b : α) (hf : IsLUB (Set.range fun s => ∑ i in s, f i) b) : HasSum f b :=
   tendsto_atTop_isLUB (Finset.sum_mono_set f) hf
 #align has_sum_of_is_lub hasSum_of_isLUB
+-/
 
+/- warning: summable_abs_iff -> summable_abs_iff is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] [_inst_4 : CompleteSpace.{u2} α _inst_2] {f : ι -> α}, Iff (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (fun (x : ι) => Abs.abs.{u2} α (Neg.toHasAbs.{u2} α (SubNegMonoid.toHasNeg.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))))) (SemilatticeSup.toHasSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (LinearOrder.toLattice.{u2} α (LinearOrderedAddCommGroup.toLinearOrder.{u2} α _inst_1))))) (f x))) (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) f)
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] [_inst_4 : CompleteSpace.{u2} α _inst_2] {f : ι -> α}, Iff (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (fun (x : ι) => Abs.abs.{u2} α (Neg.toHasAbs.{u2} α (NegZeroClass.toNeg.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))))))) (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (DistribLattice.toLattice.{u2} α (instDistribLattice.{u2} α (LinearOrderedAddCommGroup.toLinearOrder.{u2} α _inst_1)))))) (f x))) (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) f)
+Case conversion may be inaccurate. Consider using '#align summable_abs_iff summable_abs_iffₓ'. -/
 theorem summable_abs_iff [LinearOrderedAddCommGroup α] [UniformSpace α] [UniformAddGroup α]
     [CompleteSpace α] {f : ι → α} : (Summable fun x => |f x|) ↔ Summable f :=
   have h1 : ∀ x : { x | 0 ≤ f x }, |f x| = f x := fun x => abs_of_nonneg x.2
@@ -297,13 +451,31 @@ theorem summable_abs_iff [LinearOrderedAddCommGroup α] [UniformSpace α] [Unifo
     
 #align summable_abs_iff summable_abs_iff
 
+/- warning: summable.of_abs -> Summable.of_abs is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] [_inst_4 : CompleteSpace.{u2} α _inst_2] {f : ι -> α}, (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (fun (x : ι) => Abs.abs.{u2} α (Neg.toHasAbs.{u2} α (SubNegMonoid.toHasNeg.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))))) (SemilatticeSup.toHasSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (LinearOrder.toLattice.{u2} α (LinearOrderedAddCommGroup.toLinearOrder.{u2} α _inst_1))))) (f x))) -> (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) f)
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] [_inst_4 : CompleteSpace.{u2} α _inst_2] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (fun (x : ι) => Abs.abs.{u2} α (Neg.toHasAbs.{u2} α (NegZeroClass.toNeg.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))))))) (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (DistribLattice.toLattice.{u2} α (instDistribLattice.{u2} α (LinearOrderedAddCommGroup.toLinearOrder.{u2} α _inst_1)))))) (f x))) -> (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) f)
+Case conversion may be inaccurate. Consider using '#align summable.of_abs Summable.of_absₓ'. -/
+/- warning: summable.abs -> Summable.abs is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] [_inst_4 : CompleteSpace.{u2} α _inst_2] {f : ι -> α}, (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) f) -> (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (fun (x : ι) => Abs.abs.{u2} α (Neg.toHasAbs.{u2} α (SubNegMonoid.toHasNeg.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))))) (SemilatticeSup.toHasSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (LinearOrder.toLattice.{u2} α (LinearOrderedAddCommGroup.toLinearOrder.{u2} α _inst_1))))) (f x)))
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_2 (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] [_inst_4 : CompleteSpace.{u2} α _inst_2] {f : ι -> α}, (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) f) -> (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} α _inst_1))) (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (fun (x : ι) => Abs.abs.{u2} α (Neg.toHasAbs.{u2} α (NegZeroClass.toNeg.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))))))) (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (DistribLattice.toLattice.{u2} α (instDistribLattice.{u2} α (LinearOrderedAddCommGroup.toLinearOrder.{u2} α _inst_1)))))) (f x)))
+Case conversion may be inaccurate. Consider using '#align summable.abs Summable.absₓ'. -/
 alias summable_abs_iff ↔ Summable.of_abs Summable.abs
 #align summable.of_abs Summable.of_abs
 #align summable.abs Summable.abs
 
+/- warning: finite_of_summable_const -> Set.Finite.of_summable_const is a dubious translation:
+lean 3 declaration is
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : Archimedean.{u2} α (OrderedCancelAddCommMonoid.toOrderedAddCommMonoid.{u2} α (OrderedAddCommGroup.toOrderedCancelAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] {b : α}, (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))))))))) b) -> (Summable.{u2, u1} α ι (AddCommGroup.toAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))) _inst_2 (fun (i : ι) => b)) -> (Set.Finite.{u1} ι (Set.univ.{u1} ι))
+but is expected to have type
+  forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : LinearOrderedAddCommGroup.{u2} α] [_inst_2 : TopologicalSpace.{u2} α] [_inst_3 : Archimedean.{u2} α (LinearOrderedAddCommMonoid.toOrderedAddCommMonoid.{u2} α (LinearOrderedCancelAddCommMonoid.toLinearOrderedAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} α _inst_1)))] [_inst_4 : OrderClosedTopology.{u2} α _inst_2 (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))] {b : α}, (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1)))) (OfNat.ofNat.{u2} α 0 (Zero.toOfNat0.{u2} α (NegZeroClass.toZero.{u2} α (SubNegZeroMonoid.toNegZeroClass.{u2} α (SubtractionMonoid.toSubNegZeroMonoid.{u2} α (SubtractionCommMonoid.toSubtractionMonoid.{u2} α (AddCommGroup.toDivisionAddCommMonoid.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α (LinearOrderedAddCommGroup.toOrderedAddCommGroup.{u2} α _inst_1))))))))) b) -> (Summable.{u2, u1} α ι (OrderedCancelAddCommMonoid.toAddCommMonoid.{u2} α (LinearOrderedCancelAddCommMonoid.toOrderedCancelAddCommMonoid.{u2} α (LinearOrderedAddCommGroup.toLinearOrderedAddCancelCommMonoid.{u2} α _inst_1))) _inst_2 (fun (i : ι) => b)) -> (Set.Finite.{u1} ι (Set.univ.{u1} ι))
+Case conversion may be inaccurate. Consider using '#align finite_of_summable_const Set.Finite.of_summable_constₓ'. -/
 --TODO: Change the conclusion to `finite ι`
-theorem finite_of_summable_const [LinearOrderedAddCommGroup α] [TopologicalSpace α] [Archimedean α]
-    [OrderClosedTopology α] {b : α} (hb : 0 < b) (hf : Summable fun i : ι => b) :
+theorem Set.Finite.of_summable_const [LinearOrderedAddCommGroup α] [TopologicalSpace α]
+    [Archimedean α] [OrderClosedTopology α] {b : α} (hb : 0 < b) (hf : Summable fun i : ι => b) :
     (Set.univ : Set ι).Finite :=
   by
   have H : ∀ s : Finset ι, s.card • b ≤ ∑' i : ι, b :=
@@ -316,11 +488,17 @@ theorem finite_of_summable_const [LinearOrderedAddCommGroup α] [TopologicalSpac
     simpa [nsmul_le_nsmul_iff hb] using (H s).trans hn
   haveI : Fintype ι := fintypeOfFinsetCardLe n this
   exact Set.finite_univ
-#align finite_of_summable_const finite_of_summable_const
+#align finite_of_summable_const Set.Finite.of_summable_const
 
 end LinearOrder
 
-theorem Summable.tendsto_top_of_pos [LinearOrderedField α] [TopologicalSpace α] [OrderTopology α]
+/- warning: summable.tendsto_top_of_pos -> Summable.tendsto_atTop_of_pos is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : OrderTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))] {f : Nat -> α}, (Summable.{u1, 0} α Nat (AddCommGroup.toAddCommMonoid.{u1} α (OrderedAddCommGroup.toAddCommGroup.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1)))))) _inst_2 (Inv.inv.{u1} (Nat -> α) (Pi.instInv.{0, u1} Nat (fun (ᾰ : Nat) => α) (fun (i : Nat) => DivInvMonoid.toHasInv.{u1} α (DivisionRing.toDivInvMonoid.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) f)) -> (forall (n : Nat), LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))) (OfNat.ofNat.{u1} α 0 (OfNat.mk.{u1} α 0 (Zero.zero.{u1} α (MulZeroClass.toHasZero.{u1} α (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} α (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))))))))) (f n)) -> (Filter.Tendsto.{0, u1} Nat α f (Filter.atTop.{0} Nat (PartialOrder.toPreorder.{0} Nat (OrderedCancelAddCommMonoid.toPartialOrder.{0} Nat (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{0} Nat Nat.strictOrderedSemiring)))) (Filter.atTop.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : TopologicalSpace.{u1} α] [_inst_3 : OrderTopology.{u1} α _inst_2 (PartialOrder.toPreorder.{u1} α (StrictOrderedRing.toPartialOrder.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1)))))] {f : Nat -> α}, (Summable.{u1, 0} α Nat (OrderedCancelAddCommMonoid.toAddCommMonoid.{u1} α (StrictOrderedSemiring.toOrderedCancelAddCommMonoid.{u1} α (LinearOrderedSemiring.toStrictOrderedSemiring.{u1} α (LinearOrderedCommSemiring.toLinearOrderedSemiring.{u1} α (LinearOrderedSemifield.toLinearOrderedCommSemiring.{u1} α (LinearOrderedField.toLinearOrderedSemifield.{u1} α _inst_1)))))) _inst_2 (Inv.inv.{u1} (Nat -> α) (Pi.instInv.{0, u1} Nat (fun (ᾰ : Nat) => α) (fun (i : Nat) => LinearOrderedField.toInv.{u1} α _inst_1)) f)) -> (forall (n : Nat), LT.lt.{u1} α (Preorder.toLT.{u1} α (PartialOrder.toPreorder.{u1} α (StrictOrderedRing.toPartialOrder.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1)))))) (OfNat.ofNat.{u1} α 0 (Zero.toOfNat0.{u1} α (CommMonoidWithZero.toZero.{u1} α (CommGroupWithZero.toCommMonoidWithZero.{u1} α (Semifield.toCommGroupWithZero.{u1} α (LinearOrderedSemifield.toSemifield.{u1} α (LinearOrderedField.toLinearOrderedSemifield.{u1} α _inst_1))))))) (f n)) -> (Filter.Tendsto.{0, u1} Nat α f (Filter.atTop.{0} Nat (PartialOrder.toPreorder.{0} Nat (StrictOrderedSemiring.toPartialOrder.{0} Nat Nat.strictOrderedSemiring))) (Filter.atTop.{u1} α (PartialOrder.toPreorder.{u1} α (StrictOrderedRing.toPartialOrder.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1)))))))
+Case conversion may be inaccurate. Consider using '#align summable.tendsto_top_of_pos Summable.tendsto_atTop_of_posₓ'. -/
+theorem Summable.tendsto_atTop_of_pos [LinearOrderedField α] [TopologicalSpace α] [OrderTopology α]
     {f : ℕ → α} (hf : Summable f⁻¹) (hf' : ∀ n, 0 < f n) : Tendsto f atTop atTop :=
   by
   rw [← inv_inv f]
@@ -330,5 +508,5 @@ theorem Summable.tendsto_top_of_pos [LinearOrderedField α] [TopologicalSpace α
   refine' ⟨Set.Ioi 0, Ioi_mem_at_top _, fun _ _ => _⟩
   rw [Set.mem_Ioi, inv_eq_one_div, one_div, Pi.inv_apply, _root_.inv_pos]
   exact hf' _
-#align summable.tendsto_top_of_pos Summable.tendsto_top_of_pos
+#align summable.tendsto_top_of_pos Summable.tendsto_atTop_of_pos
 
Diff
@@ -61,7 +61,7 @@ theorem le_hasSum_of_le_sum (hf : HasSum f a) (h : ∀ s, a₂ ≤ ∑ i in s, f
   ge_of_tendsto' hf h
 #align le_has_sum_of_le_sum le_hasSum_of_le_sum
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:628:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
 theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     (hs : ∀ (c) (_ : c ∉ Set.range e), 0 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : HasSum f a₁)
     (hg : HasSum g a₂) : a₁ ≤ a₂ :=
@@ -86,14 +86,14 @@ theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     exact hs _ h
 #align has_sum_le_inj hasSum_le_inj
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:628:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (c «expr ∉ » set.range[set.range] e) -/
 theorem tsum_le_tsum_of_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     (hs : ∀ (c) (_ : c ∉ Set.range e), 0 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : Summable f)
     (hg : Summable g) : tsum f ≤ tsum g :=
   hasSum_le_inj _ he hs h hf.HasSum hg.HasSum
 #align tsum_le_tsum_of_inj tsum_le_tsum_of_inj
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:628:2: warning: expanding binder collection (i «expr ∉ » s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (i «expr ∉ » s) -/
 theorem sum_le_hasSum (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (hf : HasSum f a) :
     (∑ i in s, f i) ≤ a :=
   ge_of_tendsto hf
@@ -106,7 +106,7 @@ theorem isLUB_hasSum (h : ∀ i, 0 ≤ f i) (hf : HasSum f a) :
   isLUB_of_tendsto_atTop (Finset.sum_mono_set_of_nonneg h) hf
 #align is_lub_has_sum isLUB_hasSum
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:628:2: warning: expanding binder collection (b' «expr ≠ » i) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (b' «expr ≠ » i) -/
 theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤ f b') : f i ≤ a :=
   calc
     f i = ∑ i in {i}, f i := Finset.sum_singleton.symm
@@ -119,13 +119,13 @@ theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 
     
 #align le_has_sum le_hasSum
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:628:2: warning: expanding binder collection (i «expr ∉ » s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (i «expr ∉ » s) -/
 theorem sum_le_tsum {f : ι → α} (s : Finset ι) (hs : ∀ (i) (_ : i ∉ s), 0 ≤ f i) (hf : Summable f) :
     (∑ i in s, f i) ≤ ∑' i, f i :=
   sum_le_hasSum s hs hf.HasSum
 #align sum_le_tsum sum_le_tsum
 
-/- ./././Mathport/Syntax/Translate/Basic.lean:628:2: warning: expanding binder collection (b' «expr ≠ » i) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (b' «expr ≠ » i) -/
 theorem le_tsum (hf : Summable f) (i : ι) (hb : ∀ (b') (_ : b' ≠ i), 0 ≤ f b') : f i ≤ ∑' i, f i :=
   le_hasSum (Summable.hasSum hf) i hb
 #align le_tsum le_tsum

Changes in mathlib4

mathlib3
mathlib4
chore: avoid Ne.def (adaptation for nightly-2024-03-27) (#11813)
Diff
@@ -241,7 +241,7 @@ theorem tprod_eq_one_iff (hf : Multipliable f) : ∏' i, f i = 1 ↔ ∀ x, f x
 
 @[to_additive]
 theorem tprod_ne_one_iff (hf : Multipliable f) : ∏' i, f i ≠ 1 ↔ ∃ x, f x ≠ 1 := by
-  rw [Ne.def, tprod_eq_one_iff hf, not_forall]
+  rw [Ne, tprod_eq_one_iff hf, not_forall]
 #align tsum_ne_zero_iff tsum_ne_zero_iff
 
 @[to_additive]
feat: Infinite products (#11733)

Last year, YaelDillies made a pull request to mathlib3 that unfortunately never got merged in: https://github.com/leanprover-community/mathlib/pull/18405. This is the mathlib4 version of that pull request.

We define arbitrarily indexed products in a commutative monoid with a topology. This is done by "multiplicativizing" the currently existing definitions and theorems about arbitrarily indexed sums. That is, the existing code is rewritten in the multiplicative setting, and the original definitions and theorems are recovered using @[to_additive]. Please see this thread on Zulip for information on why this approach was chosen: https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Infinite.20products

As YaelDillies wrote in the description of https://github.com/leanprover-community/mathlib/pull/18405, there are a few small technical issues that arise when directly "multiplicativizing" theorems in this way:

  • I have renamed cauchySeq_finset_iff_vanishing to cauchySeq_finset_iff_sum_vanishing to make the name multiplicativizable. This is slightly different from the name cauchy_seq_finset_sum_iff_vanishing that YaelDillies used, and it is meant to parallel the existing name cauchySeq_finset_iff_tsum_vanishing.
  • Currently, on master, there is a theorem called tsum_sum about taking the tsum of a sum, and a theorem called tsum_prod about taking a tsum on a product of two index sets. I have called the multiplicative versions tprod_of_prod and tprod_prod. This is slightly different from the names tprod_prod'' and tprod_prod that YaelDillies used. eric-wieser suggested renaming tsum_prod to tsum_prod_index to get around this issue, which I can do in a separate pull request.
Diff
@@ -11,9 +11,9 @@ import Mathlib.Topology.Order.MonotoneConvergence
 #align_import topology.algebra.infinite_sum.order from "leanprover-community/mathlib"@"32253a1a1071173b33dc7d6a218cf722c6feb514"
 
 /-!
-# Infinite sum in an order
+# Infinite sum or product in an order
 
-This file provides lemmas about the interaction of infinite sums and order operations.
+This file provides lemmas about the interaction of infinite sums and products and order operations.
 -/
 
 
@@ -24,44 +24,49 @@ variable {ι κ α : Type*}
 
 section Preorder
 
-variable [Preorder α] [AddCommMonoid α] [TopologicalSpace α] [OrderClosedTopology α] [T2Space α]
+variable [Preorder α] [CommMonoid α] [TopologicalSpace α] [OrderClosedTopology α] [T2Space α]
   {f : ℕ → α} {c : α}
 
-theorem tsum_le_of_sum_range_le (hf : Summable f) (h : ∀ n, ∑ i in range n, f i ≤ c) :
-    ∑' n, f n ≤ c :=
+@[to_additive]
+theorem tprod_le_of_prod_range_le (hf : Multipliable f) (h : ∀ n, ∏ i in range n, f i ≤ c) :
+    ∏' n, f n ≤ c :=
   let ⟨_l, hl⟩ := hf
-  hl.tsum_eq.symm ▸ le_of_tendsto' hl.tendsto_sum_nat h
+  hl.tprod_eq.symm ▸ le_of_tendsto' hl.tendsto_prod_nat h
 #align tsum_le_of_sum_range_le tsum_le_of_sum_range_le
 
 end Preorder
 
-section OrderedAddCommMonoid
+section OrderedCommMonoid
 
-variable [OrderedAddCommMonoid α] [TopologicalSpace α] [OrderClosedTopology α] {f g : ι → α}
+variable [OrderedCommMonoid α] [TopologicalSpace α] [OrderClosedTopology α] {f g : ι → α}
   {a a₁ a₂ : α}
 
-theorem hasSum_le (h : ∀ i, f i ≤ g i) (hf : HasSum f a₁) (hg : HasSum g a₂) : a₁ ≤ a₂ :=
-  le_of_tendsto_of_tendsto' hf hg fun _ ↦ sum_le_sum fun i _ ↦ h i
+@[to_additive]
+theorem hasProd_le (h : ∀ i, f i ≤ g i) (hf : HasProd f a₁) (hg : HasProd g a₂) : a₁ ≤ a₂ :=
+  le_of_tendsto_of_tendsto' hf hg fun _ ↦ prod_le_prod' fun i _ ↦ h i
 #align has_sum_le hasSum_le
 
-@[mono]
-theorem hasSum_mono (hf : HasSum f a₁) (hg : HasSum g a₂) (h : f ≤ g) : a₁ ≤ a₂ :=
-  hasSum_le h hf hg
+@[to_additive (attr := mono)]
+theorem hasProd_mono (hf : HasProd f a₁) (hg : HasProd g a₂) (h : f ≤ g) : a₁ ≤ a₂ :=
+  hasProd_le h hf hg
 #align has_sum_mono hasSum_mono
 
-theorem hasSum_le_of_sum_le (hf : HasSum f a) (h : ∀ s, ∑ i in s, f i ≤ a₂) : a ≤ a₂ :=
+@[to_additive]
+theorem hasProd_le_of_prod_le (hf : HasProd f a) (h : ∀ s, ∏ i in s, f i ≤ a₂) : a ≤ a₂ :=
   le_of_tendsto' hf h
 #align has_sum_le_of_sum_le hasSum_le_of_sum_le
 
-theorem le_hasSum_of_le_sum (hf : HasSum f a) (h : ∀ s, a₂ ≤ ∑ i in s, f i) : a₂ ≤ a :=
+@[to_additive]
+theorem le_hasProd_of_le_prod (hf : HasProd f a) (h : ∀ s, a₂ ≤ ∏ i in s, f i) : a₂ ≤ a :=
   ge_of_tendsto' hf h
 #align le_has_sum_of_le_sum le_hasSum_of_le_sum
 
-theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
-    (hs : ∀ c, c ∉ Set.range e → 0 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : HasSum f a₁)
-    (hg : HasSum g a₂) : a₁ ≤ a₂ := by
-  rw [← hasSum_extend_zero he] at hf
-  refine hasSum_le (fun c ↦ ?_) hf hg
+@[to_additive]
+theorem hasProd_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
+    (hs : ∀ c, c ∉ Set.range e → 1 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : HasProd f a₁)
+    (hg : HasProd g a₂) : a₁ ≤ a₂ := by
+  rw [← hasProd_extend_one he] at hf
+  refine hasProd_le (fun c ↦ ?_) hf hg
   obtain ⟨i, rfl⟩ | h := em (c ∈ Set.range e)
   · rw [he.extend_apply]
     exact h _
@@ -69,157 +74,182 @@ theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     exact hs _ h
 #align has_sum_le_inj hasSum_le_inj
 
-theorem tsum_le_tsum_of_inj {g : κ → α} (e : ι → κ) (he : Injective e)
-    (hs : ∀ c, c ∉ Set.range e → 0 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : Summable f)
-    (hg : Summable g) : tsum f ≤ tsum g :=
-  hasSum_le_inj _ he hs h hf.hasSum hg.hasSum
+@[to_additive]
+theorem tprod_le_tprod_of_inj {g : κ → α} (e : ι → κ) (he : Injective e)
+    (hs : ∀ c, c ∉ Set.range e → 1 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : Multipliable f)
+    (hg : Multipliable g) : tprod f ≤ tprod g :=
+  hasProd_le_inj _ he hs h hf.hasProd hg.hasProd
 #align tsum_le_tsum_of_inj tsum_le_tsum_of_inj
 
-theorem sum_le_hasSum (s : Finset ι) (hs : ∀ i, i ∉ s → 0 ≤ f i) (hf : HasSum f a) :
-    ∑ i in s, f i ≤ a :=
+@[to_additive]
+theorem prod_le_hasProd (s : Finset ι) (hs : ∀ i, i ∉ s → 1 ≤ f i) (hf : HasProd f a) :
+    ∏ i in s, f i ≤ a :=
   ge_of_tendsto hf (eventually_atTop.2
-    ⟨s, fun _t hst ↦ sum_le_sum_of_subset_of_nonneg hst fun i _ hbs ↦ hs i hbs⟩)
+    ⟨s, fun _t hst ↦ prod_le_prod_of_subset_of_one_le' hst fun i _ hbs ↦ hs i hbs⟩)
 #align sum_le_has_sum sum_le_hasSum
 
-theorem isLUB_hasSum (h : ∀ i, 0 ≤ f i) (hf : HasSum f a) :
-    IsLUB (Set.range fun s ↦ ∑ i in s, f i) a :=
-  isLUB_of_tendsto_atTop (Finset.sum_mono_set_of_nonneg h) hf
+@[to_additive]
+theorem isLUB_hasProd (h : ∀ i, 1 ≤ f i) (hf : HasProd f a) :
+    IsLUB (Set.range fun s ↦ ∏ i in s, f i) a :=
+  isLUB_of_tendsto_atTop (Finset.prod_mono_set_of_one_le' h) hf
 #align is_lub_has_sum isLUB_hasSum
 
-theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ j, j ≠ i → 0 ≤ f j) : f i ≤ a :=
+@[to_additive]
+theorem le_hasProd (hf : HasProd f a) (i : ι) (hb : ∀ j, j ≠ i → 1 ≤ f j) : f i ≤ a :=
   calc
-    f i = ∑ i in {i}, f i := by rw [sum_singleton]
-    _ ≤ a := sum_le_hasSum _ (by simpa) hf
+    f i = ∏ i in {i}, f i := by rw [prod_singleton]
+    _ ≤ a := prod_le_hasProd _ (by simpa) hf
 #align le_has_sum le_hasSum
 
-theorem sum_le_tsum {f : ι → α} (s : Finset ι) (hs : ∀ i, i ∉ s → 0 ≤ f i) (hf : Summable f) :
-    ∑ i in s, f i ≤ ∑' i, f i :=
-  sum_le_hasSum s hs hf.hasSum
+@[to_additive]
+theorem prod_le_tprod {f : ι → α} (s : Finset ι) (hs : ∀ i, i ∉ s → 1 ≤ f i) (hf : Multipliable f) :
+    ∏ i in s, f i ≤ ∏' i, f i :=
+  prod_le_hasProd s hs hf.hasProd
 #align sum_le_tsum sum_le_tsum
 
-theorem le_tsum (hf : Summable f) (i : ι) (hb : ∀ j, j ≠ i → 0 ≤ f j) : f i ≤ ∑' i, f i :=
-  le_hasSum hf.hasSum i hb
+@[to_additive]
+theorem le_tprod (hf : Multipliable f) (i : ι) (hb : ∀ j, j ≠ i → 1 ≤ f j) : f i ≤ ∏' i, f i :=
+  le_hasProd hf.hasProd i hb
 #align le_tsum le_tsum
 
-theorem tsum_le_tsum (h : ∀ i, f i ≤ g i) (hf : Summable f) (hg : Summable g) :
-    ∑' i, f i ≤ ∑' i, g i :=
-  hasSum_le h hf.hasSum hg.hasSum
+@[to_additive]
+theorem tprod_le_tprod (h : ∀ i, f i ≤ g i) (hf : Multipliable f) (hg : Multipliable g) :
+    ∏' i, f i ≤ ∏' i, g i :=
+  hasProd_le h hf.hasProd hg.hasProd
 #align tsum_le_tsum tsum_le_tsum
 
-@[mono]
-theorem tsum_mono (hf : Summable f) (hg : Summable g) (h : f ≤ g) : ∑' n, f n ≤ ∑' n, g n :=
-  tsum_le_tsum h hf hg
+@[to_additive (attr := mono)]
+theorem tprod_mono (hf : Multipliable f) (hg : Multipliable g) (h : f ≤ g) :
+    ∏' n, f n ≤ ∏' n, g n :=
+  tprod_le_tprod h hf hg
 #align tsum_mono tsum_mono
 
-theorem tsum_le_of_sum_le (hf : Summable f) (h : ∀ s, ∑ i in s, f i ≤ a₂) : ∑' i, f i ≤ a₂ :=
-  hasSum_le_of_sum_le hf.hasSum h
+@[to_additive]
+theorem tprod_le_of_prod_le (hf : Multipliable f) (h : ∀ s, ∏ i in s, f i ≤ a₂) : ∏' i, f i ≤ a₂ :=
+  hasProd_le_of_prod_le hf.hasProd h
 #align tsum_le_of_sum_le tsum_le_of_sum_le
 
-theorem tsum_le_of_sum_le' (ha₂ : 0 ≤ a₂) (h : ∀ s, ∑ i in s, f i ≤ a₂) : ∑' i, f i ≤ a₂ := by
-  by_cases hf : Summable f
-  · exact tsum_le_of_sum_le hf h
-  · rw [tsum_eq_zero_of_not_summable hf]
+@[to_additive]
+theorem tprod_le_of_prod_le' (ha₂ : 1 ≤ a₂) (h : ∀ s, ∏ i in s, f i ≤ a₂) : ∏' i, f i ≤ a₂ := by
+  by_cases hf : Multipliable f
+  · exact tprod_le_of_prod_le hf h
+  · rw [tprod_eq_one_of_not_multipliable hf]
     exact ha₂
 #align tsum_le_of_sum_le' tsum_le_of_sum_le'
 
-theorem HasSum.nonneg (h : ∀ i, 0 ≤ g i) (ha : HasSum g a) : 0 ≤ a :=
-  hasSum_le h hasSum_zero ha
+@[to_additive]
+theorem HasProd.one_le (h : ∀ i, 1 ≤ g i) (ha : HasProd g a) : 1 ≤ a :=
+  hasProd_le h hasProd_one ha
 #align has_sum.nonneg HasSum.nonneg
 
-theorem HasSum.nonpos (h : ∀ i, g i ≤ 0) (ha : HasSum g a) : a ≤ 0 :=
-  hasSum_le h ha hasSum_zero
+@[to_additive]
+theorem HasProd.le_one (h : ∀ i, g i ≤ 1) (ha : HasProd g a) : a ≤ 1 :=
+  hasProd_le h ha hasProd_one
 #align has_sum.nonpos HasSum.nonpos
 
-theorem tsum_nonneg (h : ∀ i, 0 ≤ g i) : 0 ≤ ∑' i, g i := by
-  by_cases hg : Summable g
-  · exact hg.hasSum.nonneg h
-  · rw [tsum_eq_zero_of_not_summable hg]
+@[to_additive tsum_nonneg]
+theorem one_le_tprod (h : ∀ i, 1 ≤ g i) : 1 ≤ ∏' i, g i := by
+  by_cases hg : Multipliable g
+  · exact hg.hasProd.one_le h
+  · rw [tprod_eq_one_of_not_multipliable hg]
 #align tsum_nonneg tsum_nonneg
 
-theorem tsum_nonpos (h : ∀ i, f i ≤ 0) : ∑' i, f i ≤ 0 := by
-  by_cases hf : Summable f
-  · exact hf.hasSum.nonpos h
-  · rw [tsum_eq_zero_of_not_summable hf]
+@[to_additive]
+theorem tprod_le_one (h : ∀ i, f i ≤ 1) : ∏' i, f i ≤ 1 := by
+  by_cases hf : Multipliable f
+  · exact hf.hasProd.le_one h
+  · rw [tprod_eq_one_of_not_multipliable hf]
 #align tsum_nonpos tsum_nonpos
 
 -- Porting note: generalized from `OrderedAddCommGroup` to `OrderedAddCommMonoid`
-theorem hasSum_zero_iff_of_nonneg (hf : ∀ i, 0 ≤ f i) : HasSum f 0 ↔ f = 0 := by
+@[to_additive]
+theorem hasProd_one_iff_of_one_le (hf : ∀ i, 1 ≤ f i) : HasProd f 1 ↔ f = 1 := by
   refine' ⟨fun hf' ↦ _, _⟩
   · ext i
-    exact (hf i).antisymm' (le_hasSum hf' _ fun j _ ↦ hf j)
+    exact (hf i).antisymm' (le_hasProd hf' _ fun j _ ↦ hf j)
   · rintro rfl
-    exact hasSum_zero
+    exact hasProd_one
 #align has_sum_zero_iff_of_nonneg hasSum_zero_iff_of_nonneg
 
-end OrderedAddCommMonoid
+end OrderedCommMonoid
 
-section OrderedAddCommGroup
+section OrderedCommGroup
 
-variable [OrderedAddCommGroup α] [TopologicalSpace α] [TopologicalAddGroup α]
+variable [OrderedCommGroup α] [TopologicalSpace α] [TopologicalGroup α]
   [OrderClosedTopology α] {f g : ι → α} {a₁ a₂ : α} {i : ι}
 
-theorem hasSum_lt (h : f ≤ g) (hi : f i < g i) (hf : HasSum f a₁) (hg : HasSum g a₂) : a₁ < a₂ := by
-  have : update f i 0 ≤ update g i 0 := update_le_update_iff.mpr ⟨rfl.le, fun i _ ↦ h i⟩
-  have : 0 - f i + a₁ ≤ 0 - g i + a₂ := hasSum_le this (hf.update i 0) (hg.update i 0)
-  simpa only [zero_sub, add_neg_cancel_left] using add_lt_add_of_lt_of_le hi this
+@[to_additive]
+theorem hasProd_lt (h : f ≤ g) (hi : f i < g i) (hf : HasProd f a₁) (hg : HasProd g a₂) :
+    a₁ < a₂ := by
+  have : update f i 1 ≤ update g i 1 := update_le_update_iff.mpr ⟨rfl.le, fun i _ ↦ h i⟩
+  have : 1 / f i * a₁ ≤ 1 / g i * a₂ := hasProd_le this (hf.update i 1) (hg.update i 1)
+  simpa only [one_div, mul_inv_cancel_left] using mul_lt_mul_of_lt_of_le hi this
 #align has_sum_lt hasSum_lt
 
-@[mono]
-theorem hasSum_strict_mono (hf : HasSum f a₁) (hg : HasSum g a₂) (h : f < g) : a₁ < a₂ :=
+@[to_additive (attr := mono)]
+theorem hasProd_strict_mono (hf : HasProd f a₁) (hg : HasProd g a₂) (h : f < g) : a₁ < a₂ :=
   let ⟨hle, _i, hi⟩ := Pi.lt_def.mp h
-  hasSum_lt hle hi hf hg
+  hasProd_lt hle hi hf hg
 #align has_sum_strict_mono hasSum_strict_mono
 
-theorem tsum_lt_tsum (h : f ≤ g) (hi : f i < g i) (hf : Summable f) (hg : Summable g) :
-    ∑' n, f n < ∑' n, g n :=
-  hasSum_lt h hi hf.hasSum hg.hasSum
+@[to_additive]
+theorem tprod_lt_tprod (h : f ≤ g) (hi : f i < g i) (hf : Multipliable f) (hg : Multipliable g) :
+    ∏' n, f n < ∏' n, g n :=
+  hasProd_lt h hi hf.hasProd hg.hasProd
 #align tsum_lt_tsum tsum_lt_tsum
 
-@[mono]
-theorem tsum_strict_mono (hf : Summable f) (hg : Summable g) (h : f < g) :
-    ∑' n, f n < ∑' n, g n :=
+@[to_additive (attr := mono)]
+theorem tprod_strict_mono (hf : Multipliable f) (hg : Multipliable g) (h : f < g) :
+    ∏' n, f n < ∏' n, g n :=
   let ⟨hle, _i, hi⟩ := Pi.lt_def.mp h
-  tsum_lt_tsum hle hi hf hg
+  tprod_lt_tprod hle hi hf hg
 #align tsum_strict_mono tsum_strict_mono
 
-theorem tsum_pos (hsum : Summable g) (hg : ∀ i, 0 ≤ g i) (i : ι) (hi : 0 < g i) :
-    0 < ∑' i, g i := by
-  rw [← tsum_zero]
-  exact tsum_lt_tsum hg hi summable_zero hsum
+@[to_additive tsum_pos]
+theorem one_lt_tprod (hsum : Multipliable g) (hg : ∀ i, 1 ≤ g i) (i : ι) (hi : 1 < g i) :
+    1 < ∏' i, g i := by
+  rw [← tprod_one]
+  exact tprod_lt_tprod hg hi multipliable_one hsum
 #align tsum_pos tsum_pos
 
-end OrderedAddCommGroup
+end OrderedCommGroup
 
-section CanonicallyOrderedAddCommMonoid
+section CanonicallyOrderedCommMonoid
 
-variable [CanonicallyOrderedAddCommMonoid α] [TopologicalSpace α] [OrderClosedTopology α]
+variable [CanonicallyOrderedCommMonoid α] [TopologicalSpace α] [OrderClosedTopology α]
   {f : ι → α} {a : α}
 
-theorem le_hasSum' (hf : HasSum f a) (i : ι) : f i ≤ a :=
-  le_hasSum hf i fun _ _ ↦ zero_le _
+@[to_additive]
+theorem le_hasProd' (hf : HasProd f a) (i : ι) : f i ≤ a :=
+  le_hasProd hf i fun _ _ ↦ one_le _
 #align le_has_sum' le_hasSum'
 
-theorem le_tsum' (hf : Summable f) (i : ι) : f i ≤ ∑' i, f i :=
-  le_tsum hf i fun _ _ ↦ zero_le _
+@[to_additive]
+theorem le_tprod' (hf : Multipliable f) (i : ι) : f i ≤ ∏' i, f i :=
+  le_tprod hf i fun _ _ ↦ one_le _
 #align le_tsum' le_tsum'
 
-theorem hasSum_zero_iff : HasSum f 0 ↔ ∀ x, f x = 0 :=
-  (hasSum_zero_iff_of_nonneg fun _ ↦ zero_le _).trans funext_iff
+@[to_additive]
+theorem hasProd_one_iff : HasProd f 1 ↔ ∀ x, f x = 1 :=
+  (hasProd_one_iff_of_one_le fun _ ↦ one_le _).trans funext_iff
 #align has_sum_zero_iff hasSum_zero_iff
 
-theorem tsum_eq_zero_iff (hf : Summable f) : ∑' i, f i = 0 ↔ ∀ x, f x = 0 := by
-  rw [← hasSum_zero_iff, hf.hasSum_iff]
+@[to_additive]
+theorem tprod_eq_one_iff (hf : Multipliable f) : ∏' i, f i = 1 ↔ ∀ x, f x = 1 := by
+  rw [← hasProd_one_iff, hf.hasProd_iff]
 #align tsum_eq_zero_iff tsum_eq_zero_iff
 
-theorem tsum_ne_zero_iff (hf : Summable f) : ∑' i, f i ≠ 0 ↔ ∃ x, f x ≠ 0 := by
-  rw [Ne.def, tsum_eq_zero_iff hf, not_forall]
+@[to_additive]
+theorem tprod_ne_one_iff (hf : Multipliable f) : ∏' i, f i ≠ 1 ↔ ∃ x, f x ≠ 1 := by
+  rw [Ne.def, tprod_eq_one_iff hf, not_forall]
 #align tsum_ne_zero_iff tsum_ne_zero_iff
 
-theorem isLUB_hasSum' (hf : HasSum f a) : IsLUB (Set.range fun s ↦ ∑ i in s, f i) a :=
-  isLUB_of_tendsto_atTop (Finset.sum_mono_set f) hf
+@[to_additive]
+theorem isLUB_hasProd' (hf : HasProd f a) : IsLUB (Set.range fun s ↦ ∏ i in s, f i) a :=
+  isLUB_of_tendsto_atTop (Finset.prod_mono_set' f) hf
 #align is_lub_has_sum' isLUB_hasSum'
 
-end CanonicallyOrderedAddCommMonoid
+end CanonicallyOrderedCommMonoid
 
 section LinearOrder
 
@@ -232,28 +262,31 @@ conditionally complete linear order, such as `ℝ`, `ℝ≥0`, `ℝ≥0∞`, bec
 the existence of a least upper bound.
 -/
 
-theorem hasSum_of_isLUB_of_nonneg [LinearOrderedAddCommMonoid α] [TopologicalSpace α]
-    [OrderTopology α] {f : ι → α} (i : α) (h : ∀ i, 0 ≤ f i)
-    (hf : IsLUB (Set.range fun s ↦ ∑ i in s, f i) i) : HasSum f i :=
-  tendsto_atTop_isLUB (Finset.sum_mono_set_of_nonneg h) hf
+@[to_additive]
+theorem hasProd_of_isLUB_of_one_le [LinearOrderedCommMonoid α] [TopologicalSpace α]
+    [OrderTopology α] {f : ι → α} (i : α) (h : ∀ i, 1 ≤ f i)
+    (hf : IsLUB (Set.range fun s ↦ ∏ i in s, f i) i) : HasProd f i :=
+  tendsto_atTop_isLUB (Finset.prod_mono_set_of_one_le' h) hf
 #align has_sum_of_is_lub_of_nonneg hasSum_of_isLUB_of_nonneg
 
-theorem hasSum_of_isLUB [CanonicallyLinearOrderedAddCommMonoid α] [TopologicalSpace α]
-    [OrderTopology α] {f : ι → α} (b : α) (hf : IsLUB (Set.range fun s ↦ ∑ i in s, f i) b) :
-    HasSum f b :=
-  tendsto_atTop_isLUB (Finset.sum_mono_set f) hf
+@[to_additive]
+theorem hasProd_of_isLUB [CanonicallyLinearOrderedCommMonoid α] [TopologicalSpace α]
+    [OrderTopology α] {f : ι → α} (b : α) (hf : IsLUB (Set.range fun s ↦ ∏ i in s, f i) b) :
+    HasProd f b :=
+  tendsto_atTop_isLUB (Finset.prod_mono_set' f) hf
 #align has_sum_of_is_lub hasSum_of_isLUB
 
-theorem summable_abs_iff [LinearOrderedAddCommGroup α] [UniformSpace α] [UniformAddGroup α]
-    [CompleteSpace α] {f : ι → α} : (Summable fun x ↦ |f x|) ↔ Summable f :=
-  let s := { x | 0 ≤ f x }
-  have h1 : ∀ x : s, |f x| = f x := fun x ↦ abs_of_nonneg x.2
-  have h2 : ∀ x : ↑sᶜ, |f x| = -f x := fun x ↦ abs_of_neg (not_le.1 x.2)
-  calc (Summable fun x ↦ |f x|) ↔
-      (Summable fun x : s ↦ |f x|) ∧ Summable fun x : ↑sᶜ ↦ |f x| :=
-        summable_subtype_and_compl.symm
-  _ ↔ (Summable fun x : s ↦ f x) ∧ Summable fun x : ↑sᶜ ↦ -f x := by simp only [h1, h2]
-  _ ↔ Summable f := by simp only [summable_neg_iff, summable_subtype_and_compl]
+@[to_additive]
+theorem multipliable_mabs_iff [LinearOrderedCommGroup α] [UniformSpace α] [UniformGroup α]
+    [CompleteSpace α] {f : ι → α} : (Multipliable fun x ↦ mabs (f x)) ↔ Multipliable f :=
+  let s := { x | 1 ≤ f x }
+  have h1 : ∀ x : s, mabs (f x) = f x := fun x ↦ mabs_of_one_le x.2
+  have h2 : ∀ x : ↑sᶜ, mabs (f x) = (f x)⁻¹ := fun x ↦ mabs_of_lt_one (not_le.1 x.2)
+  calc (Multipliable fun x ↦ mabs (f x)) ↔
+      (Multipliable fun x : s ↦ mabs (f x)) ∧ Multipliable fun x : ↑sᶜ ↦ mabs (f x) :=
+        multipliable_subtype_and_compl.symm
+  _ ↔ (Multipliable fun x : s ↦ f x) ∧ Multipliable fun x : ↑sᶜ ↦ (f x)⁻¹ := by simp only [h1, h2]
+  _ ↔ Multipliable f := by simp only [multipliable_inv_iff, multipliable_subtype_and_compl]
 #align summable_abs_iff summable_abs_iff
 
 alias ⟨Summable.of_abs, Summable.abs⟩ := summable_abs_iff
move(Topology/Order): Move anything that doesn't concern algebra (#11610)

Move files from Topology.Algebra.Order to Topology.Order when they do not contain any algebra. Also move Topology.LocalExtr to Topology.Order.LocalExtr.

According to git, the moves are:

  • Mathlib/Topology/{Algebra => }/Order/ExtendFrom.lean
  • Mathlib/Topology/{Algebra => }/Order/ExtrClosure.lean
  • Mathlib/Topology/{Algebra => }/Order/Filter.lean
  • Mathlib/Topology/{Algebra => }/Order/IntermediateValue.lean
  • Mathlib/Topology/{Algebra => }/Order/LeftRight.lean
  • Mathlib/Topology/{Algebra => }/Order/LeftRightLim.lean
  • Mathlib/Topology/{Algebra => }/Order/MonotoneContinuity.lean
  • Mathlib/Topology/{Algebra => }/Order/MonotoneConvergence.lean
  • Mathlib/Topology/{Algebra => }/Order/ProjIcc.lean
  • Mathlib/Topology/{Algebra => }/Order/T5.lean
  • Mathlib/Topology/{ => Order}/LocalExtr.lean
Diff
@@ -6,7 +6,7 @@ Authors: Johannes Hölzl
 import Mathlib.Algebra.Order.Archimedean
 import Mathlib.Topology.Algebra.InfiniteSum.NatInt
 import Mathlib.Topology.Algebra.Order.Field
-import Mathlib.Topology.Algebra.Order.MonotoneConvergence
+import Mathlib.Topology.Order.MonotoneConvergence
 
 #align_import topology.algebra.infinite_sum.order from "leanprover-community/mathlib"@"32253a1a1071173b33dc7d6a218cf722c6feb514"
 
style: homogenise porting notes (#11145)

Homogenises porting notes via capitalisation and addition of whitespace.

It makes the following changes:

  • converts "--porting note" into "-- Porting note";
  • converts "porting note" into "Porting note".
Diff
@@ -142,7 +142,7 @@ theorem tsum_nonpos (h : ∀ i, f i ≤ 0) : ∑' i, f i ≤ 0 := by
   · rw [tsum_eq_zero_of_not_summable hf]
 #align tsum_nonpos tsum_nonpos
 
--- porting note: generalized from `OrderedAddCommGroup` to `OrderedAddCommMonoid`
+-- Porting note: generalized from `OrderedAddCommGroup` to `OrderedAddCommMonoid`
 theorem hasSum_zero_iff_of_nonneg (hf : ∀ i, 0 ≤ f i) : HasSum f 0 ↔ f = 0 := by
   refine' ⟨fun hf' ↦ _, _⟩
   · ext i
chore(Topology/Algebra/InfiniteSum): split up large file (#11050)

Split up Mathlib.Topology.Algebra.InfiniteSum.Basic (1600 lines) into smaller files.

Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Johannes Hölzl
 -/
 import Mathlib.Algebra.Order.Archimedean
-import Mathlib.Topology.Algebra.InfiniteSum.Basic
+import Mathlib.Topology.Algebra.InfiniteSum.NatInt
 import Mathlib.Topology.Algebra.Order.Field
 import Mathlib.Topology.Algebra.Order.MonotoneConvergence
 
@@ -41,7 +41,7 @@ variable [OrderedAddCommMonoid α] [TopologicalSpace α] [OrderClosedTopology α
   {a a₁ a₂ : α}
 
 theorem hasSum_le (h : ∀ i, f i ≤ g i) (hf : HasSum f a₁) (hg : HasSum g a₂) : a₁ ≤ a₂ :=
-  le_of_tendsto_of_tendsto' hf hg fun _ => sum_le_sum fun i _ => h i
+  le_of_tendsto_of_tendsto' hf hg fun _ ↦ sum_le_sum fun i _ ↦ h i
 #align has_sum_le hasSum_le
 
 @[mono]
@@ -61,7 +61,7 @@ theorem hasSum_le_inj {g : κ → α} (e : ι → κ) (he : Injective e)
     (hs : ∀ c, c ∉ Set.range e → 0 ≤ g c) (h : ∀ i, f i ≤ g (e i)) (hf : HasSum f a₁)
     (hg : HasSum g a₂) : a₁ ≤ a₂ := by
   rw [← hasSum_extend_zero he] at hf
-  refine hasSum_le (fun c => ?_) hf hg
+  refine hasSum_le (fun c ↦ ?_) hf hg
   obtain ⟨i, rfl⟩ | h := em (c ∈ Set.range e)
   · rw [he.extend_apply]
     exact h _
@@ -78,11 +78,11 @@ theorem tsum_le_tsum_of_inj {g : κ → α} (e : ι → κ) (he : Injective e)
 theorem sum_le_hasSum (s : Finset ι) (hs : ∀ i, i ∉ s → 0 ≤ f i) (hf : HasSum f a) :
     ∑ i in s, f i ≤ a :=
   ge_of_tendsto hf (eventually_atTop.2
-    ⟨s, fun _t hst => sum_le_sum_of_subset_of_nonneg hst fun i _ hbs => hs i hbs⟩)
+    ⟨s, fun _t hst ↦ sum_le_sum_of_subset_of_nonneg hst fun i _ hbs ↦ hs i hbs⟩)
 #align sum_le_has_sum sum_le_hasSum
 
 theorem isLUB_hasSum (h : ∀ i, 0 ≤ f i) (hf : HasSum f a) :
-    IsLUB (Set.range fun s => ∑ i in s, f i) a :=
+    IsLUB (Set.range fun s ↦ ∑ i in s, f i) a :=
   isLUB_of_tendsto_atTop (Finset.sum_mono_set_of_nonneg h) hf
 #align is_lub_has_sum isLUB_hasSum
 
@@ -144,9 +144,9 @@ theorem tsum_nonpos (h : ∀ i, f i ≤ 0) : ∑' i, f i ≤ 0 := by
 
 -- porting note: generalized from `OrderedAddCommGroup` to `OrderedAddCommMonoid`
 theorem hasSum_zero_iff_of_nonneg (hf : ∀ i, 0 ≤ f i) : HasSum f 0 ↔ f = 0 := by
-  refine' ⟨fun hf' => _, _⟩
+  refine' ⟨fun hf' ↦ _, _⟩
   · ext i
-    exact (hf i).antisymm' (le_hasSum hf' _ fun j _ => hf j)
+    exact (hf i).antisymm' (le_hasSum hf' _ fun j _ ↦ hf j)
   · rintro rfl
     exact hasSum_zero
 #align has_sum_zero_iff_of_nonneg hasSum_zero_iff_of_nonneg
@@ -159,7 +159,7 @@ variable [OrderedAddCommGroup α] [TopologicalSpace α] [TopologicalAddGroup α]
   [OrderClosedTopology α] {f g : ι → α} {a₁ a₂ : α} {i : ι}
 
 theorem hasSum_lt (h : f ≤ g) (hi : f i < g i) (hf : HasSum f a₁) (hg : HasSum g a₂) : a₁ < a₂ := by
-  have : update f i 0 ≤ update g i 0 := update_le_update_iff.mpr ⟨rfl.le, fun i _ => h i⟩
+  have : update f i 0 ≤ update g i 0 := update_le_update_iff.mpr ⟨rfl.le, fun i _ ↦ h i⟩
   have : 0 - f i + a₁ ≤ 0 - g i + a₂ := hasSum_le this (hf.update i 0) (hg.update i 0)
   simpa only [zero_sub, add_neg_cancel_left] using add_lt_add_of_lt_of_le hi this
 #align has_sum_lt hasSum_lt
@@ -196,15 +196,15 @@ variable [CanonicallyOrderedAddCommMonoid α] [TopologicalSpace α] [OrderClosed
   {f : ι → α} {a : α}
 
 theorem le_hasSum' (hf : HasSum f a) (i : ι) : f i ≤ a :=
-  le_hasSum hf i fun _ _ => zero_le _
+  le_hasSum hf i fun _ _ ↦ zero_le _
 #align le_has_sum' le_hasSum'
 
 theorem le_tsum' (hf : Summable f) (i : ι) : f i ≤ ∑' i, f i :=
-  le_tsum hf i fun _ _ => zero_le _
+  le_tsum hf i fun _ _ ↦ zero_le _
 #align le_tsum' le_tsum'
 
 theorem hasSum_zero_iff : HasSum f 0 ↔ ∀ x, f x = 0 :=
-  (hasSum_zero_iff_of_nonneg fun _ => zero_le _).trans funext_iff
+  (hasSum_zero_iff_of_nonneg fun _ ↦ zero_le _).trans funext_iff
 #align has_sum_zero_iff hasSum_zero_iff
 
 theorem tsum_eq_zero_iff (hf : Summable f) : ∑' i, f i = 0 ↔ ∀ x, f x = 0 := by
@@ -215,7 +215,7 @@ theorem tsum_ne_zero_iff (hf : Summable f) : ∑' i, f i ≠ 0 ↔ ∃ x, f x 
   rw [Ne.def, tsum_eq_zero_iff hf, not_forall]
 #align tsum_ne_zero_iff tsum_ne_zero_iff
 
-theorem isLUB_hasSum' (hf : HasSum f a) : IsLUB (Set.range fun s => ∑ i in s, f i) a :=
+theorem isLUB_hasSum' (hf : HasSum f a) : IsLUB (Set.range fun s ↦ ∑ i in s, f i) a :=
   isLUB_of_tendsto_atTop (Finset.sum_mono_set f) hf
 #align is_lub_has_sum' isLUB_hasSum'
 
@@ -234,25 +234,25 @@ the existence of a least upper bound.
 
 theorem hasSum_of_isLUB_of_nonneg [LinearOrderedAddCommMonoid α] [TopologicalSpace α]
     [OrderTopology α] {f : ι → α} (i : α) (h : ∀ i, 0 ≤ f i)
-    (hf : IsLUB (Set.range fun s => ∑ i in s, f i) i) : HasSum f i :=
+    (hf : IsLUB (Set.range fun s ↦ ∑ i in s, f i) i) : HasSum f i :=
   tendsto_atTop_isLUB (Finset.sum_mono_set_of_nonneg h) hf
 #align has_sum_of_is_lub_of_nonneg hasSum_of_isLUB_of_nonneg
 
 theorem hasSum_of_isLUB [CanonicallyLinearOrderedAddCommMonoid α] [TopologicalSpace α]
-    [OrderTopology α] {f : ι → α} (b : α) (hf : IsLUB (Set.range fun s => ∑ i in s, f i) b) :
+    [OrderTopology α] {f : ι → α} (b : α) (hf : IsLUB (Set.range fun s ↦ ∑ i in s, f i) b) :
     HasSum f b :=
   tendsto_atTop_isLUB (Finset.sum_mono_set f) hf
 #align has_sum_of_is_lub hasSum_of_isLUB
 
 theorem summable_abs_iff [LinearOrderedAddCommGroup α] [UniformSpace α] [UniformAddGroup α]
-    [CompleteSpace α] {f : ι → α} : (Summable fun x => |f x|) ↔ Summable f :=
+    [CompleteSpace α] {f : ι → α} : (Summable fun x ↦ |f x|) ↔ Summable f :=
   let s := { x | 0 ≤ f x }
-  have h1 : ∀ x : s, |f x| = f x := fun x => abs_of_nonneg x.2
-  have h2 : ∀ x : ↑sᶜ, |f x| = -f x := fun x => abs_of_neg (not_le.1 x.2)
-  calc (Summable fun x => |f x|) ↔
-      (Summable fun x : s => |f x|) ∧ Summable fun x : ↑sᶜ => |f x| :=
+  have h1 : ∀ x : s, |f x| = f x := fun x ↦ abs_of_nonneg x.2
+  have h2 : ∀ x : ↑sᶜ, |f x| = -f x := fun x ↦ abs_of_neg (not_le.1 x.2)
+  calc (Summable fun x ↦ |f x|) ↔
+      (Summable fun x : s ↦ |f x|) ∧ Summable fun x : ↑sᶜ ↦ |f x| :=
         summable_subtype_and_compl.symm
-  _ ↔ (Summable fun x : s => f x) ∧ Summable fun x : ↑sᶜ => -f x := by simp only [h1, h2]
+  _ ↔ (Summable fun x : s ↦ f x) ∧ Summable fun x : ↑sᶜ ↦ -f x := by simp only [h1, h2]
   _ ↔ Summable f := by simp only [summable_neg_iff, summable_subtype_and_compl]
 #align summable_abs_iff summable_abs_iff
 
@@ -261,18 +261,18 @@ alias ⟨Summable.of_abs, Summable.abs⟩ := summable_abs_iff
 #align summable.abs Summable.abs
 
 theorem Finite.of_summable_const [LinearOrderedAddCommGroup α] [TopologicalSpace α] [Archimedean α]
-    [OrderClosedTopology α] {b : α} (hb : 0 < b) (hf : Summable fun _ : ι => b) :
+    [OrderClosedTopology α] {b : α} (hb : 0 < b) (hf : Summable fun _ : ι ↦ b) :
     Finite ι := by
-  have H : ∀ s : Finset ι, s.card • b ≤ ∑' _ : ι, b := fun s => by
-    simpa using sum_le_hasSum s (fun a _ => hb.le) hf.hasSum
+  have H : ∀ s : Finset ι, s.card • b ≤ ∑' _ : ι, b := fun s ↦ by
+    simpa using sum_le_hasSum s (fun a _ ↦ hb.le) hf.hasSum
   obtain ⟨n, hn⟩ := Archimedean.arch (∑' _ : ι, b) hb
-  have : ∀ s : Finset ι, s.card ≤ n := fun s => by
+  have : ∀ s : Finset ι, s.card ≤ n := fun s ↦ by
     simpa [nsmul_le_nsmul_iff_left hb] using (H s).trans hn
   have : Fintype ι := fintypeOfFinsetCardLe n this
   infer_instance
 
 theorem Set.Finite.of_summable_const [LinearOrderedAddCommGroup α] [TopologicalSpace α]
-    [Archimedean α] [OrderClosedTopology α] {b : α} (hb : 0 < b) (hf : Summable fun _ : ι => b) :
+    [Archimedean α] [OrderClosedTopology α] {b : α} (hb : 0 < b) (hf : Summable fun _ : ι ↦ b) :
     (Set.univ : Set ι).Finite :=
   finite_univ_iff.2 <| .of_summable_const hb hf
 #align finite_of_summable_const Set.Finite.of_summable_const
@@ -283,5 +283,5 @@ theorem Summable.tendsto_atTop_of_pos [LinearOrderedField α] [TopologicalSpace
     {f : ℕ → α} (hf : Summable f⁻¹) (hf' : ∀ n, 0 < f n) : Tendsto f atTop atTop :=
   inv_inv f ▸ Filter.Tendsto.inv_tendsto_zero <|
     tendsto_nhdsWithin_of_tendsto_nhds_of_eventually_within _ hf.tendsto_atTop_zero <|
-      eventually_of_forall fun _ => inv_pos.2 (hf' _)
+      eventually_of_forall fun _ ↦ inv_pos.2 (hf' _)
 #align summable.tendsto_top_of_pos Summable.tendsto_atTop_of_pos
chore: Rename pow monotonicity lemmas (#9095)

The names for lemmas about monotonicity of (a ^ ·) and (· ^ n) were a mess. This PR tidies up everything related by following the naming convention for (a * ·) and (· * b). Namely, (a ^ ·) is pow_right and (· ^ n) is pow_left in lemma names. All lemma renames follow the corresponding multiplication lemma names closely.

Renames

Algebra.GroupPower.Order

  • pow_monopow_right_mono
  • pow_le_powpow_le_pow_right
  • pow_le_pow_of_le_leftpow_le_pow_left
  • pow_lt_pow_of_lt_leftpow_lt_pow_left
  • strictMonoOn_powpow_left_strictMonoOn
  • pow_strictMono_rightpow_right_strictMono
  • pow_lt_powpow_lt_pow_right
  • pow_lt_pow_iffpow_lt_pow_iff_right
  • pow_le_pow_iffpow_le_pow_iff_right
  • self_lt_powlt_self_pow
  • strictAnti_powpow_right_strictAnti
  • pow_lt_pow_iff_of_lt_onepow_lt_pow_iff_right_of_lt_one
  • pow_lt_pow_of_lt_onepow_lt_pow_right_of_lt_one
  • lt_of_pow_lt_powlt_of_pow_lt_pow_left
  • le_of_pow_le_powle_of_pow_le_pow_left
  • pow_lt_pow₀pow_lt_pow_right₀

Algebra.GroupPower.CovariantClass

  • pow_le_pow_of_le_left'pow_le_pow_left'
  • nsmul_le_nsmul_of_le_rightnsmul_le_nsmul_right
  • pow_lt_pow'pow_lt_pow_right'
  • nsmul_lt_nsmulnsmul_lt_nsmul_left
  • pow_strictMono_leftpow_right_strictMono'
  • nsmul_strictMono_rightnsmul_left_strictMono
  • StrictMono.pow_right'StrictMono.pow_const
  • StrictMono.nsmul_leftStrictMono.const_nsmul
  • pow_strictMono_right'pow_left_strictMono
  • nsmul_strictMono_leftnsmul_right_strictMono
  • Monotone.pow_rightMonotone.pow_const
  • Monotone.nsmul_leftMonotone.const_nsmul
  • lt_of_pow_lt_pow'lt_of_pow_lt_pow_left'
  • lt_of_nsmul_lt_nsmullt_of_nsmul_lt_nsmul_right
  • pow_le_pow'pow_le_pow_right'
  • nsmul_le_nsmulnsmul_le_nsmul_left
  • pow_le_pow_of_le_one'pow_le_pow_right_of_le_one'
  • nsmul_le_nsmul_of_nonposnsmul_le_nsmul_left_of_nonpos
  • le_of_pow_le_pow'le_of_pow_le_pow_left'
  • le_of_nsmul_le_nsmul'le_of_nsmul_le_nsmul_right'
  • pow_le_pow_iff'pow_le_pow_iff_right'
  • nsmul_le_nsmul_iffnsmul_le_nsmul_iff_left
  • pow_lt_pow_iff'pow_lt_pow_iff_right'
  • nsmul_lt_nsmul_iffnsmul_lt_nsmul_iff_left

Data.Nat.Pow

  • Nat.pow_lt_pow_of_lt_leftNat.pow_lt_pow_left
  • Nat.pow_le_iff_le_leftNat.pow_le_pow_iff_left
  • Nat.pow_lt_iff_lt_leftNat.pow_lt_pow_iff_left

Lemmas added

  • pow_le_pow_iff_left
  • pow_lt_pow_iff_left
  • pow_right_injective
  • pow_right_inj
  • Nat.pow_le_pow_left to have the correct name since Nat.pow_le_pow_of_le_left is in Std.
  • Nat.pow_le_pow_right to have the correct name since Nat.pow_le_pow_of_le_right is in Std.

Lemmas removed

  • self_le_pow was a duplicate of le_self_pow.
  • Nat.pow_lt_pow_of_lt_right is defeq to pow_lt_pow_right.
  • Nat.pow_right_strictMono is defeq to pow_right_strictMono.
  • Nat.pow_le_iff_le_right is defeq to pow_le_pow_iff_right.
  • Nat.pow_lt_iff_lt_right is defeq to pow_lt_pow_iff_right.

Other changes

  • A bunch of proofs have been golfed.
  • Some lemma assumptions have been turned from 0 < n or 1 ≤ n to n ≠ 0.
  • A few Nat lemmas have been protected.
  • One docstring has been fixed.
Diff
@@ -267,7 +267,7 @@ theorem Finite.of_summable_const [LinearOrderedAddCommGroup α] [TopologicalSpac
     simpa using sum_le_hasSum s (fun a _ => hb.le) hf.hasSum
   obtain ⟨n, hn⟩ := Archimedean.arch (∑' _ : ι, b) hb
   have : ∀ s : Finset ι, s.card ≤ n := fun s => by
-    simpa [nsmul_le_nsmul_iff hb] using (H s).trans hn
+    simpa [nsmul_le_nsmul_iff_left hb] using (H s).trans hn
   have : Fintype ι := fintypeOfFinsetCardLe n this
   infer_instance
 
chore: rename CanonicallyOrderedAddMonoid to ..AddCommMonoid (#7503)

Renames:

CanonicallyOrderedMonoid -> CanonicallyOrderedCommMonoid

CanonicallyOrderedAddMonoid -> CanonicallyOrderedAddCommMonoid

CanonicallyLinearOrderedMonoid -> CanonicallyLinearOrderedCommMonoid

CanonicallyLinearOrderedAddMonoid -> CanonicallyLinearOrderedAddCommMonoid

Diff
@@ -190,10 +190,10 @@ theorem tsum_pos (hsum : Summable g) (hg : ∀ i, 0 ≤ g i) (i : ι) (hi : 0 <
 
 end OrderedAddCommGroup
 
-section CanonicallyOrderedAddMonoid
+section CanonicallyOrderedAddCommMonoid
 
-variable [CanonicallyOrderedAddMonoid α] [TopologicalSpace α] [OrderClosedTopology α] {f : ι → α}
-  {a : α}
+variable [CanonicallyOrderedAddCommMonoid α] [TopologicalSpace α] [OrderClosedTopology α]
+  {f : ι → α} {a : α}
 
 theorem le_hasSum' (hf : HasSum f a) (i : ι) : f i ≤ a :=
   le_hasSum hf i fun _ _ => zero_le _
@@ -219,7 +219,7 @@ theorem isLUB_hasSum' (hf : HasSum f a) : IsLUB (Set.range fun s => ∑ i in s,
   isLUB_of_tendsto_atTop (Finset.sum_mono_set f) hf
 #align is_lub_has_sum' isLUB_hasSum'
 
-end CanonicallyOrderedAddMonoid
+end CanonicallyOrderedAddCommMonoid
 
 section LinearOrder
 
@@ -238,8 +238,9 @@ theorem hasSum_of_isLUB_of_nonneg [LinearOrderedAddCommMonoid α] [TopologicalSp
   tendsto_atTop_isLUB (Finset.sum_mono_set_of_nonneg h) hf
 #align has_sum_of_is_lub_of_nonneg hasSum_of_isLUB_of_nonneg
 
-theorem hasSum_of_isLUB [CanonicallyLinearOrderedAddMonoid α] [TopologicalSpace α] [OrderTopology α]
-    {f : ι → α} (b : α) (hf : IsLUB (Set.range fun s => ∑ i in s, f i) b) : HasSum f b :=
+theorem hasSum_of_isLUB [CanonicallyLinearOrderedAddCommMonoid α] [TopologicalSpace α]
+    [OrderTopology α] {f : ι → α} (b : α) (hf : IsLUB (Set.range fun s => ∑ i in s, f i) b) :
+    HasSum f b :=
   tendsto_atTop_isLUB (Finset.sum_mono_set f) hf
 #align has_sum_of_is_lub hasSum_of_isLUB
 
feat: When the sum of a nonneg function is zero (#7372)

Also fix implicitness of arguments to Finset.sum_singleton.

Diff
@@ -88,7 +88,7 @@ theorem isLUB_hasSum (h : ∀ i, 0 ≤ f i) (hf : HasSum f a) :
 
 theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ j, j ≠ i → 0 ≤ f j) : f i ≤ a :=
   calc
-    f i = ∑ i in {i}, f i := Finset.sum_singleton.symm
+    f i = ∑ i in {i}, f i := by rw [sum_singleton]
     _ ≤ a := sum_le_hasSum _ (by simpa) hf
 #align le_has_sum le_hasSum
 
feat: patch for new alias command (#6172)
Diff
@@ -255,7 +255,7 @@ theorem summable_abs_iff [LinearOrderedAddCommGroup α] [UniformSpace α] [Unifo
   _ ↔ Summable f := by simp only [summable_neg_iff, summable_subtype_and_compl]
 #align summable_abs_iff summable_abs_iff
 
-alias summable_abs_iff ↔ Summable.of_abs Summable.abs
+alias ⟨Summable.of_abs, Summable.abs⟩ := summable_abs_iff
 #align summable.of_abs Summable.of_abs
 #align summable.abs Summable.abs
 
chore: banish Type _ and Sort _ (#6499)

We remove all possible occurences of Type _ and Sort _ in favor of Type* and Sort*.

This has nice performance benefits.

Diff
@@ -20,7 +20,7 @@ This file provides lemmas about the interaction of infinite sums and order opera
 open Finset Filter Function BigOperators
 open scoped Classical
 
-variable {ι κ α : Type _}
+variable {ι κ α : Type*}
 
 section Preorder
 
chore: script to replace headers with #align_import statements (#5979)

Open in Gitpod

Co-authored-by: Eric Wieser <wieser.eric@gmail.com> Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -2,17 +2,14 @@
 Copyright (c) 2017 Johannes Hölzl. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Johannes Hölzl
-
-! This file was ported from Lean 3 source module topology.algebra.infinite_sum.order
-! leanprover-community/mathlib commit 32253a1a1071173b33dc7d6a218cf722c6feb514
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathlib.Algebra.Order.Archimedean
 import Mathlib.Topology.Algebra.InfiniteSum.Basic
 import Mathlib.Topology.Algebra.Order.Field
 import Mathlib.Topology.Algebra.Order.MonotoneConvergence
 
+#align_import topology.algebra.infinite_sum.order from "leanprover-community/mathlib"@"32253a1a1071173b33dc7d6a218cf722c6feb514"
+
 /-!
 # Infinite sum in an order
 
fix: ∑' precedence (#5615)
  • Also remove most superfluous parentheses around big operators (, and variants).
  • roughly the used regex: ([^a-zA-Zα-ωΑ-Ω'𝓝ℳ₀𝕂ₛ)]) \(([∑∏][^()∑∏]*,[^()∑∏:]*)\) ([⊂⊆=<≤]) replaced by $1 $2 $3
Diff
@@ -30,8 +30,8 @@ section Preorder
 variable [Preorder α] [AddCommMonoid α] [TopologicalSpace α] [OrderClosedTopology α] [T2Space α]
   {f : ℕ → α} {c : α}
 
-theorem tsum_le_of_sum_range_le (hf : Summable f) (h : ∀ n, (∑ i in range n, f i) ≤ c) :
-    (∑' n, f n) ≤ c :=
+theorem tsum_le_of_sum_range_le (hf : Summable f) (h : ∀ n, ∑ i in range n, f i ≤ c) :
+    ∑' n, f n ≤ c :=
   let ⟨_l, hl⟩ := hf
   hl.tsum_eq.symm ▸ le_of_tendsto' hl.tendsto_sum_nat h
 #align tsum_le_of_sum_range_le tsum_le_of_sum_range_le
@@ -52,7 +52,7 @@ theorem hasSum_mono (hf : HasSum f a₁) (hg : HasSum g a₂) (h : f ≤ g) : a
   hasSum_le h hf hg
 #align has_sum_mono hasSum_mono
 
-theorem hasSum_le_of_sum_le (hf : HasSum f a) (h : ∀ s, (∑ i in s, f i) ≤ a₂) : a ≤ a₂ :=
+theorem hasSum_le_of_sum_le (hf : HasSum f a) (h : ∀ s, ∑ i in s, f i ≤ a₂) : a ≤ a₂ :=
   le_of_tendsto' hf h
 #align has_sum_le_of_sum_le hasSum_le_of_sum_le
 
@@ -79,7 +79,7 @@ theorem tsum_le_tsum_of_inj {g : κ → α} (e : ι → κ) (he : Injective e)
 #align tsum_le_tsum_of_inj tsum_le_tsum_of_inj
 
 theorem sum_le_hasSum (s : Finset ι) (hs : ∀ i, i ∉ s → 0 ≤ f i) (hf : HasSum f a) :
-    (∑ i in s, f i) ≤ a :=
+    ∑ i in s, f i ≤ a :=
   ge_of_tendsto hf (eventually_atTop.2
     ⟨s, fun _t hst => sum_le_sum_of_subset_of_nonneg hst fun i _ hbs => hs i hbs⟩)
 #align sum_le_has_sum sum_le_hasSum
@@ -96,7 +96,7 @@ theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ j, j ≠ i → 0 ≤ f j)
 #align le_has_sum le_hasSum
 
 theorem sum_le_tsum {f : ι → α} (s : Finset ι) (hs : ∀ i, i ∉ s → 0 ≤ f i) (hf : Summable f) :
-    (∑ i in s, f i) ≤ ∑' i, f i :=
+    ∑ i in s, f i ≤ ∑' i, f i :=
   sum_le_hasSum s hs hf.hasSum
 #align sum_le_tsum sum_le_tsum
 
@@ -105,20 +105,20 @@ theorem le_tsum (hf : Summable f) (i : ι) (hb : ∀ j, j ≠ i → 0 ≤ f j) :
 #align le_tsum le_tsum
 
 theorem tsum_le_tsum (h : ∀ i, f i ≤ g i) (hf : Summable f) (hg : Summable g) :
-    (∑' i, f i) ≤ ∑' i, g i :=
+    ∑' i, f i ≤ ∑' i, g i :=
   hasSum_le h hf.hasSum hg.hasSum
 #align tsum_le_tsum tsum_le_tsum
 
 @[mono]
-theorem tsum_mono (hf : Summable f) (hg : Summable g) (h : f ≤ g) : (∑' n, f n) ≤ ∑' n, g n :=
+theorem tsum_mono (hf : Summable f) (hg : Summable g) (h : f ≤ g) : ∑' n, f n ≤ ∑' n, g n :=
   tsum_le_tsum h hf hg
 #align tsum_mono tsum_mono
 
-theorem tsum_le_of_sum_le (hf : Summable f) (h : ∀ s, (∑ i in s, f i) ≤ a₂) : (∑' i, f i) ≤ a₂ :=
+theorem tsum_le_of_sum_le (hf : Summable f) (h : ∀ s, ∑ i in s, f i ≤ a₂) : ∑' i, f i ≤ a₂ :=
   hasSum_le_of_sum_le hf.hasSum h
 #align tsum_le_of_sum_le tsum_le_of_sum_le
 
-theorem tsum_le_of_sum_le' (ha₂ : 0 ≤ a₂) (h : ∀ s, (∑ i in s, f i) ≤ a₂) : (∑' i, f i) ≤ a₂ := by
+theorem tsum_le_of_sum_le' (ha₂ : 0 ≤ a₂) (h : ∀ s, ∑ i in s, f i ≤ a₂) : ∑' i, f i ≤ a₂ := by
   by_cases hf : Summable f
   · exact tsum_le_of_sum_le hf h
   · rw [tsum_eq_zero_of_not_summable hf]
@@ -139,7 +139,7 @@ theorem tsum_nonneg (h : ∀ i, 0 ≤ g i) : 0 ≤ ∑' i, g i := by
   · rw [tsum_eq_zero_of_not_summable hg]
 #align tsum_nonneg tsum_nonneg
 
-theorem tsum_nonpos (h : ∀ i, f i ≤ 0) : (∑' i, f i) ≤ 0 := by
+theorem tsum_nonpos (h : ∀ i, f i ≤ 0) : ∑' i, f i ≤ 0 := by
   by_cases hf : Summable f
   · exact hf.hasSum.nonpos h
   · rw [tsum_eq_zero_of_not_summable hf]
@@ -174,13 +174,13 @@ theorem hasSum_strict_mono (hf : HasSum f a₁) (hg : HasSum g a₂) (h : f < g)
 #align has_sum_strict_mono hasSum_strict_mono
 
 theorem tsum_lt_tsum (h : f ≤ g) (hi : f i < g i) (hf : Summable f) (hg : Summable g) :
-    (∑' n, f n) < ∑' n, g n :=
+    ∑' n, f n < ∑' n, g n :=
   hasSum_lt h hi hf.hasSum hg.hasSum
 #align tsum_lt_tsum tsum_lt_tsum
 
 @[mono]
 theorem tsum_strict_mono (hf : Summable f) (hg : Summable g) (h : f < g) :
-    (∑' n, f n) < ∑' n, g n :=
+    ∑' n, f n < ∑' n, g n :=
   let ⟨hle, _i, hi⟩ := Pi.lt_def.mp h
   tsum_lt_tsum hle hi hf hg
 #align tsum_strict_mono tsum_strict_mono
@@ -210,11 +210,11 @@ theorem hasSum_zero_iff : HasSum f 0 ↔ ∀ x, f x = 0 :=
   (hasSum_zero_iff_of_nonneg fun _ => zero_le _).trans funext_iff
 #align has_sum_zero_iff hasSum_zero_iff
 
-theorem tsum_eq_zero_iff (hf : Summable f) : (∑' i, f i) = 0 ↔ ∀ x, f x = 0 := by
+theorem tsum_eq_zero_iff (hf : Summable f) : ∑' i, f i = 0 ↔ ∀ x, f x = 0 := by
   rw [← hasSum_zero_iff, hf.hasSum_iff]
 #align tsum_eq_zero_iff tsum_eq_zero_iff
 
-theorem tsum_ne_zero_iff (hf : Summable f) : (∑' i, f i) ≠ 0 ↔ ∃ x, f x ≠ 0 := by
+theorem tsum_ne_zero_iff (hf : Summable f) : ∑' i, f i ≠ 0 ↔ ∃ x, f x ≠ 0 := by
   rw [Ne.def, tsum_eq_zero_iff hf, not_forall]
 #align tsum_ne_zero_iff tsum_ne_zero_iff
 
fix: change compl precedence (#5586)

Co-authored-by: Yury G. Kudryashov <urkud@urkud.name>

Diff
@@ -250,11 +250,11 @@ theorem summable_abs_iff [LinearOrderedAddCommGroup α] [UniformSpace α] [Unifo
     [CompleteSpace α] {f : ι → α} : (Summable fun x => |f x|) ↔ Summable f :=
   let s := { x | 0 ≤ f x }
   have h1 : ∀ x : s, |f x| = f x := fun x => abs_of_nonneg x.2
-  have h2 : ∀ x : ↑(sᶜ), |f x| = -f x := fun x => abs_of_neg (not_le.1 x.2)
+  have h2 : ∀ x : ↑sᶜ, |f x| = -f x := fun x => abs_of_neg (not_le.1 x.2)
   calc (Summable fun x => |f x|) ↔
-      (Summable fun x : s => |f x|) ∧ Summable fun x : ↑(sᶜ) => |f x| :=
+      (Summable fun x : s => |f x|) ∧ Summable fun x : ↑sᶜ => |f x| :=
         summable_subtype_and_compl.symm
-  _ ↔ (Summable fun x : s => f x) ∧ Summable fun x : ↑(sᶜ) => -f x := by simp only [h1, h2]
+  _ ↔ (Summable fun x : s => f x) ∧ Summable fun x : ↑sᶜ => -f x := by simp only [h1, h2]
   _ ↔ Summable f := by simp only [summable_neg_iff, summable_subtype_and_compl]
 #align summable_abs_iff summable_abs_iff
 
style: allow _ for an argument in notation3 & replace _foo with _ in notation3 (#4652)
Diff
@@ -265,9 +265,9 @@ alias summable_abs_iff ↔ Summable.of_abs Summable.abs
 theorem Finite.of_summable_const [LinearOrderedAddCommGroup α] [TopologicalSpace α] [Archimedean α]
     [OrderClosedTopology α] {b : α} (hb : 0 < b) (hf : Summable fun _ : ι => b) :
     Finite ι := by
-  have H : ∀ s : Finset ι, s.card • b ≤ ∑' _i : ι, b := fun s => by
+  have H : ∀ s : Finset ι, s.card • b ≤ ∑' _ : ι, b := fun s => by
     simpa using sum_le_hasSum s (fun a _ => hb.le) hf.hasSum
-  obtain ⟨n, hn⟩ := Archimedean.arch (∑' _i : ι, b) hb
+  obtain ⟨n, hn⟩ := Archimedean.arch (∑' _ : ι, b) hb
   have : ∀ s : Finset ι, s.card ≤ n := fun s => by
     simpa [nsmul_le_nsmul_iff hb] using (H s).trans hn
   have : Fintype ι := fintypeOfFinsetCardLe n this
chore: tidy various files (#2742)
Diff
@@ -93,7 +93,6 @@ theorem le_hasSum (hf : HasSum f a) (i : ι) (hb : ∀ j, j ≠ i → 0 ≤ f j)
   calc
     f i = ∑ i in {i}, f i := Finset.sum_singleton.symm
     _ ≤ a := sum_le_hasSum _ (by simpa) hf
-    
 #align le_has_sum le_hasSum
 
 theorem sum_le_tsum {f : ι → α} (s : Finset ι) (hs : ∀ i, i ∉ s → 0 ≤ f i) (hf : Summable f) :
@@ -199,9 +198,9 @@ section CanonicallyOrderedAddMonoid
 variable [CanonicallyOrderedAddMonoid α] [TopologicalSpace α] [OrderClosedTopology α] {f : ι → α}
   {a : α}
 
-theorem le_has_sum' (hf : HasSum f a) (i : ι) : f i ≤ a :=
+theorem le_hasSum' (hf : HasSum f a) (i : ι) : f i ≤ a :=
   le_hasSum hf i fun _ _ => zero_le _
-#align le_has_sum' le_has_sum'
+#align le_has_sum' le_hasSum'
 
 theorem le_tsum' (hf : Summable f) (i : ι) : f i ≤ ∑' i, f i :=
   le_tsum hf i fun _ _ => zero_le _
@@ -219,9 +218,9 @@ theorem tsum_ne_zero_iff (hf : Summable f) : (∑' i, f i) ≠ 0 ↔ ∃ x, f x
   rw [Ne.def, tsum_eq_zero_iff hf, not_forall]
 #align tsum_ne_zero_iff tsum_ne_zero_iff
 
-theorem isLUB_has_sum' (hf : HasSum f a) : IsLUB (Set.range fun s => ∑ i in s, f i) a :=
+theorem isLUB_hasSum' (hf : HasSum f a) : IsLUB (Set.range fun s => ∑ i in s, f i) a :=
   isLUB_of_tendsto_atTop (Finset.sum_mono_set f) hf
-#align is_lub_has_sum' isLUB_has_sum'
+#align is_lub_has_sum' isLUB_hasSum'
 
 end CanonicallyOrderedAddMonoid
 
feat: port Topology.Algebra.InfiniteSum.Order (#2644)

Dependencies 9 + 478

479 files ported (98.2%)
209327 lines ported (97.6%)
Show graph

The unported dependencies are