analysis.locally_convex.strong_topology ⟷ Mathlib.Analysis.LocallyConvex.StrongTopology

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)

(last sync)

Changes in mathlib3port

mathlib3
mathlib3port
Diff
@@ -50,10 +50,10 @@ variable [NormedField π•œβ‚] [NormedField π•œβ‚‚] [Module π•œβ‚ E] [Module
 
 variable [Module R F] [ContinuousConstSMul R F] [LocallyConvexSpace R F] [SMulCommClass π•œβ‚‚ R F]
 
-#print ContinuousLinearMap.strongTopology.locallyConvexSpace /-
-theorem strongTopology.locallyConvexSpace (𝔖 : Set (Set E)) (h𝔖₁ : 𝔖.Nonempty)
+#print UniformConvergenceCLM.locallyConvexSpace /-
+theorem UniformConvergenceCLM.locallyConvexSpace (𝔖 : Set (Set E)) (h𝔖₁ : 𝔖.Nonempty)
     (h𝔖₂ : DirectedOn (Β· βŠ† Β·) 𝔖) :
-    @LocallyConvexSpace R (E β†’SL[Οƒ] F) _ _ _ (strongTopology Οƒ F 𝔖) :=
+    @LocallyConvexSpace R (E β†’SL[Οƒ] F) _ _ _ (instTopologicalSpace Οƒ F 𝔖) :=
   by
   letI : TopologicalSpace (E β†’SL[Οƒ] F) := strong_topology Οƒ F 𝔖
   haveI : TopologicalAddGroup (E β†’SL[Οƒ] F) := strong_topology.topological_add_group _ _ _
@@ -64,7 +64,7 @@ theorem strongTopology.locallyConvexSpace (𝔖 : Set (Set E)) (h𝔖₁ : 𝔖.
       _
   rintro ⟨S, V⟩ ⟨hS, hVmem, hVconvex⟩ f hf g hg a b ha hb hab x hx
   exact hVconvex (hf x hx) (hg x hx) ha hb hab
-#align continuous_linear_map.strong_topology.locally_convex_space ContinuousLinearMap.strongTopology.locallyConvexSpace
+#align continuous_linear_map.strong_topology.locally_convex_space UniformConvergenceCLM.locallyConvexSpace
 -/
 
 end General
@@ -78,7 +78,7 @@ variable [NormedField π•œβ‚] [NormedField π•œβ‚‚] [Module π•œβ‚ E] [Module
 variable [Module R F] [ContinuousConstSMul R F] [LocallyConvexSpace R F] [SMulCommClass π•œβ‚‚ R F]
 
 instance : LocallyConvexSpace R (E β†’SL[Οƒ] F) :=
-  strongTopology.locallyConvexSpace R _ βŸ¨βˆ…, Bornology.isVonNBounded_empty π•œβ‚ E⟩
+  UniformConvergenceCLM.locallyConvexSpace R _ βŸ¨βˆ…, Bornology.isVonNBounded_empty π•œβ‚ E⟩
     (directedOn_of_sup_mem fun _ _ => Bornology.IsVonNBounded.union)
 
 end BoundedSets
Diff
@@ -3,8 +3,8 @@ Copyright (c) 2022 Anatole Dedecker. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Anatole Dedecker
 -/
-import Mathbin.Topology.Algebra.Module.StrongTopology
-import Mathbin.Topology.Algebra.Module.LocallyConvex
+import Topology.Algebra.Module.StrongTopology
+import Topology.Algebra.Module.LocallyConvex
 
 #align_import analysis.locally_convex.strong_topology from "leanprover-community/mathlib"@"38df578a6450a8c5142b3727e3ae894c2300cae0"
 
Diff
@@ -2,15 +2,12 @@
 Copyright (c) 2022 Anatole Dedecker. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Anatole Dedecker
-
-! This file was ported from Lean 3 source module analysis.locally_convex.strong_topology
-! leanprover-community/mathlib commit 38df578a6450a8c5142b3727e3ae894c2300cae0
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathbin.Topology.Algebra.Module.StrongTopology
 import Mathbin.Topology.Algebra.Module.LocallyConvex
 
+#align_import analysis.locally_convex.strong_topology from "leanprover-community/mathlib"@"38df578a6450a8c5142b3727e3ae894c2300cae0"
+
 /-!
 # Local convexity of the strong topology
 
Diff
@@ -53,6 +53,7 @@ variable [NormedField π•œβ‚] [NormedField π•œβ‚‚] [Module π•œβ‚ E] [Module
 
 variable [Module R F] [ContinuousConstSMul R F] [LocallyConvexSpace R F] [SMulCommClass π•œβ‚‚ R F]
 
+#print ContinuousLinearMap.strongTopology.locallyConvexSpace /-
 theorem strongTopology.locallyConvexSpace (𝔖 : Set (Set E)) (h𝔖₁ : 𝔖.Nonempty)
     (h𝔖₂ : DirectedOn (Β· βŠ† Β·) 𝔖) :
     @LocallyConvexSpace R (E β†’SL[Οƒ] F) _ _ _ (strongTopology Οƒ F 𝔖) :=
@@ -67,6 +68,7 @@ theorem strongTopology.locallyConvexSpace (𝔖 : Set (Set E)) (h𝔖₁ : 𝔖.
   rintro ⟨S, V⟩ ⟨hS, hVmem, hVconvex⟩ f hf g hg a b ha hb hab x hx
   exact hVconvex (hf x hx) (hg x hx) ha hb hab
 #align continuous_linear_map.strong_topology.locally_convex_space ContinuousLinearMap.strongTopology.locallyConvexSpace
+-/
 
 end General
 
Diff
@@ -34,7 +34,7 @@ locally convex, bounded convergence
 -/
 
 
-open Topology UniformConvergence
+open scoped Topology UniformConvergence
 
 variable {R π•œβ‚ π•œβ‚‚ E F : Type _}
 
Diff
@@ -53,9 +53,6 @@ variable [NormedField π•œβ‚] [NormedField π•œβ‚‚] [Module π•œβ‚ E] [Module
 
 variable [Module R F] [ContinuousConstSMul R F] [LocallyConvexSpace R F] [SMulCommClass π•œβ‚‚ R F]
 
-/- warning: continuous_linear_map.strong_topology.locally_convex_space -> ContinuousLinearMap.strongTopology.locallyConvexSpace is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align continuous_linear_map.strong_topology.locally_convex_space ContinuousLinearMap.strongTopology.locallyConvexSpaceβ‚“'. -/
 theorem strongTopology.locallyConvexSpace (𝔖 : Set (Set E)) (h𝔖₁ : 𝔖.Nonempty)
     (h𝔖₂ : DirectedOn (Β· βŠ† Β·) 𝔖) :
     @LocallyConvexSpace R (E β†’SL[Οƒ] F) _ _ _ (strongTopology Οƒ F 𝔖) :=
Diff
@@ -54,10 +54,7 @@ variable [NormedField π•œβ‚] [NormedField π•œβ‚‚] [Module π•œβ‚ E] [Module
 variable [Module R F] [ContinuousConstSMul R F] [LocallyConvexSpace R F] [SMulCommClass π•œβ‚‚ R F]
 
 /- warning: continuous_linear_map.strong_topology.locally_convex_space -> ContinuousLinearMap.strongTopology.locallyConvexSpace is a dubious translation:
-lean 3 declaration is
-  forall (R : Type.{u1}) {π•œβ‚ : Type.{u2}} {π•œβ‚‚ : Type.{u3}} {E : Type.{u4}} {F : Type.{u5}} [_inst_1 : AddCommGroup.{u4} E] [_inst_2 : TopologicalSpace.{u4} E] [_inst_3 : AddCommGroup.{u5} F] [_inst_4 : TopologicalSpace.{u5} F] [_inst_5 : TopologicalAddGroup.{u5} F _inst_4 (AddCommGroup.toAddGroup.{u5} F _inst_3)] [_inst_6 : OrderedSemiring.{u1} R] [_inst_7 : NormedField.{u2} π•œβ‚] [_inst_8 : NormedField.{u3} π•œβ‚‚] [_inst_9 : Module.{u2, u4} π•œβ‚ E (Ring.toSemiring.{u2} π•œβ‚ (NormedRing.toRing.{u2} π•œβ‚ (NormedCommRing.toNormedRing.{u2} π•œβ‚ (NormedField.toNormedCommRing.{u2} π•œβ‚ _inst_7)))) (AddCommGroup.toAddCommMonoid.{u4} E _inst_1)] [_inst_10 : Module.{u3, u5} π•œβ‚‚ F (Ring.toSemiring.{u3} π•œβ‚‚ (NormedRing.toRing.{u3} π•œβ‚‚ (NormedCommRing.toNormedRing.{u3} π•œβ‚‚ (NormedField.toNormedCommRing.{u3} π•œβ‚‚ _inst_8)))) (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)] {Οƒ : RingHom.{u2, u3} π•œβ‚ π•œβ‚‚ (NonAssocRing.toNonAssocSemiring.{u2} π•œβ‚ (Ring.toNonAssocRing.{u2} π•œβ‚ (NormedRing.toRing.{u2} π•œβ‚ (NormedCommRing.toNormedRing.{u2} π•œβ‚ (NormedField.toNormedCommRing.{u2} π•œβ‚ _inst_7))))) (NonAssocRing.toNonAssocSemiring.{u3} π•œβ‚‚ (Ring.toNonAssocRing.{u3} π•œβ‚‚ (NormedRing.toRing.{u3} π•œβ‚‚ (NormedCommRing.toNormedRing.{u3} π•œβ‚‚ (NormedField.toNormedCommRing.{u3} π•œβ‚‚ _inst_8)))))} [_inst_11 : Module.{u1, u5} R F (OrderedSemiring.toSemiring.{u1} R _inst_6) (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)] [_inst_12 : ContinuousConstSMul.{u1, u5} R F _inst_4 (SMulZeroClass.toHasSmul.{u1, u5} R F (AddZeroClass.toHasZero.{u5} F (AddMonoid.toAddZeroClass.{u5} F (AddCommMonoid.toAddMonoid.{u5} F (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u5} R F (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (OrderedSemiring.toSemiring.{u1} R _inst_6))))) (AddZeroClass.toHasZero.{u5} F (AddMonoid.toAddZeroClass.{u5} F (AddCommMonoid.toAddMonoid.{u5} F (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u5} R F (Semiring.toMonoidWithZero.{u1} R (OrderedSemiring.toSemiring.{u1} R _inst_6)) (AddZeroClass.toHasZero.{u5} F (AddMonoid.toAddZeroClass.{u5} F (AddCommMonoid.toAddMonoid.{u5} F (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)))) (Module.toMulActionWithZero.{u1, u5} R F (OrderedSemiring.toSemiring.{u1} R _inst_6) (AddCommGroup.toAddCommMonoid.{u5} F _inst_3) _inst_11))))] [_inst_13 : LocallyConvexSpace.{u1, u5} R F _inst_6 (AddCommGroup.toAddCommMonoid.{u5} F _inst_3) _inst_11 _inst_4] [_inst_14 : SMulCommClass.{u3, u1, u5} π•œβ‚‚ R F (SMulZeroClass.toHasSmul.{u3, u5} π•œβ‚‚ F (AddZeroClass.toHasZero.{u5} F (AddMonoid.toAddZeroClass.{u5} F (AddCommMonoid.toAddMonoid.{u5} F (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)))) (SMulWithZero.toSmulZeroClass.{u3, u5} π•œβ‚‚ F (MulZeroClass.toHasZero.{u3} π•œβ‚‚ (MulZeroOneClass.toMulZeroClass.{u3} π•œβ‚‚ (MonoidWithZero.toMulZeroOneClass.{u3} π•œβ‚‚ (Semiring.toMonoidWithZero.{u3} π•œβ‚‚ (Ring.toSemiring.{u3} π•œβ‚‚ (NormedRing.toRing.{u3} π•œβ‚‚ (NormedCommRing.toNormedRing.{u3} π•œβ‚‚ (NormedField.toNormedCommRing.{u3} π•œβ‚‚ _inst_8)))))))) (AddZeroClass.toHasZero.{u5} F (AddMonoid.toAddZeroClass.{u5} F (AddCommMonoid.toAddMonoid.{u5} F (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)))) (MulActionWithZero.toSMulWithZero.{u3, u5} π•œβ‚‚ F (Semiring.toMonoidWithZero.{u3} π•œβ‚‚ (Ring.toSemiring.{u3} π•œβ‚‚ (NormedRing.toRing.{u3} π•œβ‚‚ (NormedCommRing.toNormedRing.{u3} π•œβ‚‚ (NormedField.toNormedCommRing.{u3} π•œβ‚‚ _inst_8))))) (AddZeroClass.toHasZero.{u5} F (AddMonoid.toAddZeroClass.{u5} F (AddCommMonoid.toAddMonoid.{u5} F (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)))) (Module.toMulActionWithZero.{u3, u5} π•œβ‚‚ F (Ring.toSemiring.{u3} π•œβ‚‚ (NormedRing.toRing.{u3} π•œβ‚‚ (NormedCommRing.toNormedRing.{u3} π•œβ‚‚ (NormedField.toNormedCommRing.{u3} π•œβ‚‚ _inst_8)))) (AddCommGroup.toAddCommMonoid.{u5} F _inst_3) _inst_10)))) (SMulZeroClass.toHasSmul.{u1, u5} R F (AddZeroClass.toHasZero.{u5} F (AddMonoid.toAddZeroClass.{u5} F (AddCommMonoid.toAddMonoid.{u5} F (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u5} R F (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (OrderedSemiring.toSemiring.{u1} R _inst_6))))) (AddZeroClass.toHasZero.{u5} F (AddMonoid.toAddZeroClass.{u5} F (AddCommMonoid.toAddMonoid.{u5} F (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u5} R F (Semiring.toMonoidWithZero.{u1} R (OrderedSemiring.toSemiring.{u1} R _inst_6)) (AddZeroClass.toHasZero.{u5} F (AddMonoid.toAddZeroClass.{u5} F (AddCommMonoid.toAddMonoid.{u5} F (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)))) (Module.toMulActionWithZero.{u1, u5} R F (OrderedSemiring.toSemiring.{u1} R _inst_6) (AddCommGroup.toAddCommMonoid.{u5} F _inst_3) _inst_11))))] (𝔖 : Set.{u4} (Set.{u4} E)), (Set.Nonempty.{u4} (Set.{u4} E) 𝔖) -> (DirectedOn.{u4} (Set.{u4} E) (HasSubset.Subset.{u4} (Set.{u4} E) (Set.hasSubset.{u4} E)) 𝔖) -> (LocallyConvexSpace.{u1, max u4 u5} R (ContinuousLinearMap.{u2, u3, u4, u5} π•œβ‚ π•œβ‚‚ (Ring.toSemiring.{u2} π•œβ‚ (NormedRing.toRing.{u2} π•œβ‚ (NormedCommRing.toNormedRing.{u2} π•œβ‚ (NormedField.toNormedCommRing.{u2} π•œβ‚ _inst_7)))) (Ring.toSemiring.{u3} π•œβ‚‚ (NormedRing.toRing.{u3} π•œβ‚‚ (NormedCommRing.toNormedRing.{u3} π•œβ‚‚ (NormedField.toNormedCommRing.{u3} π•œβ‚‚ _inst_8)))) Οƒ E _inst_2 (AddCommGroup.toAddCommMonoid.{u4} E _inst_1) F _inst_4 (AddCommGroup.toAddCommMonoid.{u5} F _inst_3) _inst_9 _inst_10) _inst_6 (ContinuousLinearMap.addCommMonoid.{u2, u3, u4, u5} π•œβ‚ π•œβ‚‚ (Ring.toSemiring.{u2} π•œβ‚ (NormedRing.toRing.{u2} π•œβ‚ (NormedCommRing.toNormedRing.{u2} π•œβ‚ (NormedField.toNormedCommRing.{u2} π•œβ‚ _inst_7)))) (Ring.toSemiring.{u3} π•œβ‚‚ (NormedRing.toRing.{u3} π•œβ‚‚ (NormedCommRing.toNormedRing.{u3} π•œβ‚‚ (NormedField.toNormedCommRing.{u3} π•œβ‚‚ _inst_8)))) Οƒ E _inst_2 (AddCommGroup.toAddCommMonoid.{u4} E _inst_1) F _inst_4 (AddCommGroup.toAddCommMonoid.{u5} F _inst_3) _inst_9 _inst_10 (TopologicalAddGroup.to_continuousAdd.{u5} F _inst_4 (AddCommGroup.toAddGroup.{u5} F _inst_3) _inst_5)) (ContinuousLinearMap.module.{u2, u3, u1, u4, u5} π•œβ‚ π•œβ‚‚ R (Ring.toSemiring.{u2} π•œβ‚ (NormedRing.toRing.{u2} π•œβ‚ (NormedCommRing.toNormedRing.{u2} π•œβ‚ (NormedField.toNormedCommRing.{u2} π•œβ‚ _inst_7)))) (Ring.toSemiring.{u3} π•œβ‚‚ (NormedRing.toRing.{u3} π•œβ‚‚ (NormedCommRing.toNormedRing.{u3} π•œβ‚‚ (NormedField.toNormedCommRing.{u3} π•œβ‚‚ _inst_8)))) (OrderedSemiring.toSemiring.{u1} R _inst_6) E _inst_2 (AddCommGroup.toAddCommMonoid.{u4} E _inst_1) _inst_9 F _inst_4 (AddCommGroup.toAddCommMonoid.{u5} F _inst_3) _inst_10 _inst_11 _inst_14 _inst_12 Οƒ (TopologicalAddGroup.to_continuousAdd.{u5} F _inst_4 (AddCommGroup.toAddGroup.{u5} F _inst_3) _inst_5)) (ContinuousLinearMap.strongTopology.{u2, u3, u4, u5} π•œβ‚ π•œβ‚‚ _inst_7 _inst_8 Οƒ E F _inst_1 _inst_9 _inst_3 _inst_10 _inst_2 _inst_4 _inst_5 𝔖))
-but is expected to have type
-  forall (R : Type.{u4}) {π•œβ‚ : Type.{u2}} {π•œβ‚‚ : Type.{u1}} {E : Type.{u5}} {F : Type.{u3}} [_inst_1 : AddCommGroup.{u5} E] [_inst_2 : TopologicalSpace.{u5} E] [_inst_3 : AddCommGroup.{u3} F] [_inst_4 : TopologicalSpace.{u3} F] [_inst_5 : TopologicalAddGroup.{u3} F _inst_4 (AddCommGroup.toAddGroup.{u3} F _inst_3)] [_inst_6 : OrderedSemiring.{u4} R] [_inst_7 : NormedField.{u2} π•œβ‚] [_inst_8 : NormedField.{u1} π•œβ‚‚] [_inst_9 : Module.{u2, u5} π•œβ‚ E (DivisionSemiring.toSemiring.{u2} π•œβ‚ (Semifield.toDivisionSemiring.{u2} π•œβ‚ (Field.toSemifield.{u2} π•œβ‚ (NormedField.toField.{u2} π•œβ‚ _inst_7)))) (AddCommGroup.toAddCommMonoid.{u5} E _inst_1)] [_inst_10 : Module.{u1, u3} π•œβ‚‚ F (DivisionSemiring.toSemiring.{u1} π•œβ‚‚ (Semifield.toDivisionSemiring.{u1} π•œβ‚‚ (Field.toSemifield.{u1} π•œβ‚‚ (NormedField.toField.{u1} π•œβ‚‚ _inst_8)))) (AddCommGroup.toAddCommMonoid.{u3} F _inst_3)] {Οƒ : RingHom.{u2, u1} π•œβ‚ π•œβ‚‚ (Semiring.toNonAssocSemiring.{u2} π•œβ‚ (DivisionSemiring.toSemiring.{u2} π•œβ‚ (Semifield.toDivisionSemiring.{u2} π•œβ‚ (Field.toSemifield.{u2} π•œβ‚ (NormedField.toField.{u2} π•œβ‚ _inst_7))))) (Semiring.toNonAssocSemiring.{u1} π•œβ‚‚ (DivisionSemiring.toSemiring.{u1} π•œβ‚‚ (Semifield.toDivisionSemiring.{u1} π•œβ‚‚ (Field.toSemifield.{u1} π•œβ‚‚ (NormedField.toField.{u1} π•œβ‚‚ _inst_8)))))} [_inst_11 : Module.{u4, u3} R F (OrderedSemiring.toSemiring.{u4} R _inst_6) (AddCommGroup.toAddCommMonoid.{u3} F _inst_3)] [_inst_12 : ContinuousConstSMul.{u4, u3} R F _inst_4 (SMulZeroClass.toSMul.{u4, u3} R F (NegZeroClass.toZero.{u3} F (SubNegZeroMonoid.toNegZeroClass.{u3} F (SubtractionMonoid.toSubNegZeroMonoid.{u3} F (SubtractionCommMonoid.toSubtractionMonoid.{u3} F (AddCommGroup.toDivisionAddCommMonoid.{u3} F _inst_3))))) (SMulWithZero.toSMulZeroClass.{u4, u3} R F (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R (OrderedSemiring.toSemiring.{u4} R _inst_6))) (NegZeroClass.toZero.{u3} F (SubNegZeroMonoid.toNegZeroClass.{u3} F (SubtractionMonoid.toSubNegZeroMonoid.{u3} F (SubtractionCommMonoid.toSubtractionMonoid.{u3} F (AddCommGroup.toDivisionAddCommMonoid.{u3} F _inst_3))))) (MulActionWithZero.toSMulWithZero.{u4, u3} R F (Semiring.toMonoidWithZero.{u4} R (OrderedSemiring.toSemiring.{u4} R _inst_6)) (NegZeroClass.toZero.{u3} F (SubNegZeroMonoid.toNegZeroClass.{u3} F (SubtractionMonoid.toSubNegZeroMonoid.{u3} F (SubtractionCommMonoid.toSubtractionMonoid.{u3} F (AddCommGroup.toDivisionAddCommMonoid.{u3} F _inst_3))))) (Module.toMulActionWithZero.{u4, u3} R F (OrderedSemiring.toSemiring.{u4} R _inst_6) (AddCommGroup.toAddCommMonoid.{u3} F _inst_3) _inst_11))))] [_inst_13 : LocallyConvexSpace.{u4, u3} R F _inst_6 (AddCommGroup.toAddCommMonoid.{u3} F _inst_3) _inst_11 _inst_4] [_inst_14 : SMulCommClass.{u1, u4, u3} π•œβ‚‚ R F (SMulZeroClass.toSMul.{u1, u3} π•œβ‚‚ F (NegZeroClass.toZero.{u3} F (SubNegZeroMonoid.toNegZeroClass.{u3} F (SubtractionMonoid.toSubNegZeroMonoid.{u3} F (SubtractionCommMonoid.toSubtractionMonoid.{u3} F (AddCommGroup.toDivisionAddCommMonoid.{u3} F _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u3} π•œβ‚‚ F (CommMonoidWithZero.toZero.{u1} π•œβ‚‚ (CommGroupWithZero.toCommMonoidWithZero.{u1} π•œβ‚‚ (Semifield.toCommGroupWithZero.{u1} π•œβ‚‚ (Field.toSemifield.{u1} π•œβ‚‚ (NormedField.toField.{u1} π•œβ‚‚ _inst_8))))) (NegZeroClass.toZero.{u3} F (SubNegZeroMonoid.toNegZeroClass.{u3} F (SubtractionMonoid.toSubNegZeroMonoid.{u3} F (SubtractionCommMonoid.toSubtractionMonoid.{u3} F (AddCommGroup.toDivisionAddCommMonoid.{u3} F _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u3} π•œβ‚‚ F (Semiring.toMonoidWithZero.{u1} π•œβ‚‚ (DivisionSemiring.toSemiring.{u1} π•œβ‚‚ (Semifield.toDivisionSemiring.{u1} π•œβ‚‚ (Field.toSemifield.{u1} π•œβ‚‚ (NormedField.toField.{u1} π•œβ‚‚ _inst_8))))) (NegZeroClass.toZero.{u3} F (SubNegZeroMonoid.toNegZeroClass.{u3} F (SubtractionMonoid.toSubNegZeroMonoid.{u3} F (SubtractionCommMonoid.toSubtractionMonoid.{u3} F (AddCommGroup.toDivisionAddCommMonoid.{u3} F _inst_3))))) (Module.toMulActionWithZero.{u1, u3} π•œβ‚‚ F (DivisionSemiring.toSemiring.{u1} π•œβ‚‚ (Semifield.toDivisionSemiring.{u1} π•œβ‚‚ (Field.toSemifield.{u1} π•œβ‚‚ (NormedField.toField.{u1} π•œβ‚‚ _inst_8)))) (AddCommGroup.toAddCommMonoid.{u3} F _inst_3) _inst_10)))) (SMulZeroClass.toSMul.{u4, u3} R F (NegZeroClass.toZero.{u3} F (SubNegZeroMonoid.toNegZeroClass.{u3} F (SubtractionMonoid.toSubNegZeroMonoid.{u3} F (SubtractionCommMonoid.toSubtractionMonoid.{u3} F (AddCommGroup.toDivisionAddCommMonoid.{u3} F _inst_3))))) (SMulWithZero.toSMulZeroClass.{u4, u3} R F (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R (OrderedSemiring.toSemiring.{u4} R _inst_6))) (NegZeroClass.toZero.{u3} F (SubNegZeroMonoid.toNegZeroClass.{u3} F (SubtractionMonoid.toSubNegZeroMonoid.{u3} F (SubtractionCommMonoid.toSubtractionMonoid.{u3} F (AddCommGroup.toDivisionAddCommMonoid.{u3} F _inst_3))))) (MulActionWithZero.toSMulWithZero.{u4, u3} R F (Semiring.toMonoidWithZero.{u4} R (OrderedSemiring.toSemiring.{u4} R _inst_6)) (NegZeroClass.toZero.{u3} F (SubNegZeroMonoid.toNegZeroClass.{u3} F (SubtractionMonoid.toSubNegZeroMonoid.{u3} F (SubtractionCommMonoid.toSubtractionMonoid.{u3} F (AddCommGroup.toDivisionAddCommMonoid.{u3} F _inst_3))))) (Module.toMulActionWithZero.{u4, u3} R F (OrderedSemiring.toSemiring.{u4} R _inst_6) (AddCommGroup.toAddCommMonoid.{u3} F _inst_3) _inst_11))))] (𝔖 : Set.{u5} (Set.{u5} E)), (Set.Nonempty.{u5} (Set.{u5} E) 𝔖) -> (DirectedOn.{u5} (Set.{u5} E) (fun (x._@.Mathlib.Analysis.LocallyConvex.StrongTopology._hyg.275 : Set.{u5} E) (x._@.Mathlib.Analysis.LocallyConvex.StrongTopology._hyg.277 : Set.{u5} E) => HasSubset.Subset.{u5} (Set.{u5} E) (Set.instHasSubsetSet.{u5} E) x._@.Mathlib.Analysis.LocallyConvex.StrongTopology._hyg.275 x._@.Mathlib.Analysis.LocallyConvex.StrongTopology._hyg.277) 𝔖) -> (LocallyConvexSpace.{u4, max u3 u5} R (ContinuousLinearMap.{u2, u1, u5, u3} π•œβ‚ π•œβ‚‚ (DivisionSemiring.toSemiring.{u2} π•œβ‚ (Semifield.toDivisionSemiring.{u2} π•œβ‚ (Field.toSemifield.{u2} π•œβ‚ (NormedField.toField.{u2} π•œβ‚ _inst_7)))) (DivisionSemiring.toSemiring.{u1} π•œβ‚‚ (Semifield.toDivisionSemiring.{u1} π•œβ‚‚ (Field.toSemifield.{u1} π•œβ‚‚ (NormedField.toField.{u1} π•œβ‚‚ _inst_8)))) Οƒ E _inst_2 (AddCommGroup.toAddCommMonoid.{u5} E _inst_1) F _inst_4 (AddCommGroup.toAddCommMonoid.{u3} F _inst_3) _inst_9 _inst_10) _inst_6 (ContinuousLinearMap.addCommMonoid.{u2, u1, u5, u3} π•œβ‚ π•œβ‚‚ (DivisionSemiring.toSemiring.{u2} π•œβ‚ (Semifield.toDivisionSemiring.{u2} π•œβ‚ (Field.toSemifield.{u2} π•œβ‚ (NormedField.toField.{u2} π•œβ‚ _inst_7)))) (DivisionSemiring.toSemiring.{u1} π•œβ‚‚ (Semifield.toDivisionSemiring.{u1} π•œβ‚‚ (Field.toSemifield.{u1} π•œβ‚‚ (NormedField.toField.{u1} π•œβ‚‚ _inst_8)))) Οƒ E _inst_2 (AddCommGroup.toAddCommMonoid.{u5} E _inst_1) F _inst_4 (AddCommGroup.toAddCommMonoid.{u3} F _inst_3) _inst_9 _inst_10 (TopologicalAddGroup.toContinuousAdd.{u3} F _inst_4 (AddCommGroup.toAddGroup.{u3} F _inst_3) _inst_5)) (ContinuousLinearMap.module.{u2, u1, u4, u5, u3} π•œβ‚ π•œβ‚‚ R (DivisionSemiring.toSemiring.{u2} π•œβ‚ (Semifield.toDivisionSemiring.{u2} π•œβ‚ (Field.toSemifield.{u2} π•œβ‚ (NormedField.toField.{u2} π•œβ‚ _inst_7)))) (DivisionSemiring.toSemiring.{u1} π•œβ‚‚ (Semifield.toDivisionSemiring.{u1} π•œβ‚‚ (Field.toSemifield.{u1} π•œβ‚‚ (NormedField.toField.{u1} π•œβ‚‚ _inst_8)))) (OrderedSemiring.toSemiring.{u4} R _inst_6) E _inst_2 (AddCommGroup.toAddCommMonoid.{u5} E _inst_1) _inst_9 F _inst_4 (AddCommGroup.toAddCommMonoid.{u3} F _inst_3) _inst_10 _inst_11 _inst_14 _inst_12 Οƒ (TopologicalAddGroup.toContinuousAdd.{u3} F _inst_4 (AddCommGroup.toAddGroup.{u3} F _inst_3) _inst_5)) (ContinuousLinearMap.strongTopology.{u2, u1, u5, u3} π•œβ‚ π•œβ‚‚ _inst_7 _inst_8 Οƒ E F _inst_1 _inst_9 _inst_3 _inst_10 _inst_2 _inst_4 _inst_5 𝔖))
+<too large>
 Case conversion may be inaccurate. Consider using '#align continuous_linear_map.strong_topology.locally_convex_space ContinuousLinearMap.strongTopology.locallyConvexSpaceβ‚“'. -/
 theorem strongTopology.locallyConvexSpace (𝔖 : Set (Set E)) (h𝔖₁ : 𝔖.Nonempty)
     (h𝔖₂ : DirectedOn (Β· βŠ† Β·) 𝔖) :
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Anatole Dedecker
 
 ! This file was ported from Lean 3 source module analysis.locally_convex.strong_topology
-! leanprover-community/mathlib commit 47b12e7f2502f14001f891ca87fbae2b4acaed3f
+! leanprover-community/mathlib commit 38df578a6450a8c5142b3727e3ae894c2300cae0
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -14,6 +14,9 @@ import Mathbin.Topology.Algebra.Module.LocallyConvex
 /-!
 # Local convexity of the strong topology
 
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
 In this file we prove that the strong topology on `E β†’L[ℝ] F` is locally convex provided that `F` is
 locally convex.
 
Diff
@@ -50,6 +50,12 @@ variable [NormedField π•œβ‚] [NormedField π•œβ‚‚] [Module π•œβ‚ E] [Module
 
 variable [Module R F] [ContinuousConstSMul R F] [LocallyConvexSpace R F] [SMulCommClass π•œβ‚‚ R F]
 
+/- warning: continuous_linear_map.strong_topology.locally_convex_space -> ContinuousLinearMap.strongTopology.locallyConvexSpace is a dubious translation:
+lean 3 declaration is
+  forall (R : Type.{u1}) {π•œβ‚ : Type.{u2}} {π•œβ‚‚ : Type.{u3}} {E : Type.{u4}} {F : Type.{u5}} [_inst_1 : AddCommGroup.{u4} E] [_inst_2 : TopologicalSpace.{u4} E] [_inst_3 : AddCommGroup.{u5} F] [_inst_4 : TopologicalSpace.{u5} F] [_inst_5 : TopologicalAddGroup.{u5} F _inst_4 (AddCommGroup.toAddGroup.{u5} F _inst_3)] [_inst_6 : OrderedSemiring.{u1} R] [_inst_7 : NormedField.{u2} π•œβ‚] [_inst_8 : NormedField.{u3} π•œβ‚‚] [_inst_9 : Module.{u2, u4} π•œβ‚ E (Ring.toSemiring.{u2} π•œβ‚ (NormedRing.toRing.{u2} π•œβ‚ (NormedCommRing.toNormedRing.{u2} π•œβ‚ (NormedField.toNormedCommRing.{u2} π•œβ‚ _inst_7)))) (AddCommGroup.toAddCommMonoid.{u4} E _inst_1)] [_inst_10 : Module.{u3, u5} π•œβ‚‚ F (Ring.toSemiring.{u3} π•œβ‚‚ (NormedRing.toRing.{u3} π•œβ‚‚ (NormedCommRing.toNormedRing.{u3} π•œβ‚‚ (NormedField.toNormedCommRing.{u3} π•œβ‚‚ _inst_8)))) (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)] {Οƒ : RingHom.{u2, u3} π•œβ‚ π•œβ‚‚ (NonAssocRing.toNonAssocSemiring.{u2} π•œβ‚ (Ring.toNonAssocRing.{u2} π•œβ‚ (NormedRing.toRing.{u2} π•œβ‚ (NormedCommRing.toNormedRing.{u2} π•œβ‚ (NormedField.toNormedCommRing.{u2} π•œβ‚ _inst_7))))) (NonAssocRing.toNonAssocSemiring.{u3} π•œβ‚‚ (Ring.toNonAssocRing.{u3} π•œβ‚‚ (NormedRing.toRing.{u3} π•œβ‚‚ (NormedCommRing.toNormedRing.{u3} π•œβ‚‚ (NormedField.toNormedCommRing.{u3} π•œβ‚‚ _inst_8)))))} [_inst_11 : Module.{u1, u5} R F (OrderedSemiring.toSemiring.{u1} R _inst_6) (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)] [_inst_12 : ContinuousConstSMul.{u1, u5} R F _inst_4 (SMulZeroClass.toHasSmul.{u1, u5} R F (AddZeroClass.toHasZero.{u5} F (AddMonoid.toAddZeroClass.{u5} F (AddCommMonoid.toAddMonoid.{u5} F (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u5} R F (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (OrderedSemiring.toSemiring.{u1} R _inst_6))))) (AddZeroClass.toHasZero.{u5} F (AddMonoid.toAddZeroClass.{u5} F (AddCommMonoid.toAddMonoid.{u5} F (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u5} R F (Semiring.toMonoidWithZero.{u1} R (OrderedSemiring.toSemiring.{u1} R _inst_6)) (AddZeroClass.toHasZero.{u5} F (AddMonoid.toAddZeroClass.{u5} F (AddCommMonoid.toAddMonoid.{u5} F (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)))) (Module.toMulActionWithZero.{u1, u5} R F (OrderedSemiring.toSemiring.{u1} R _inst_6) (AddCommGroup.toAddCommMonoid.{u5} F _inst_3) _inst_11))))] [_inst_13 : LocallyConvexSpace.{u1, u5} R F _inst_6 (AddCommGroup.toAddCommMonoid.{u5} F _inst_3) _inst_11 _inst_4] [_inst_14 : SMulCommClass.{u3, u1, u5} π•œβ‚‚ R F (SMulZeroClass.toHasSmul.{u3, u5} π•œβ‚‚ F (AddZeroClass.toHasZero.{u5} F (AddMonoid.toAddZeroClass.{u5} F (AddCommMonoid.toAddMonoid.{u5} F (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)))) (SMulWithZero.toSmulZeroClass.{u3, u5} π•œβ‚‚ F (MulZeroClass.toHasZero.{u3} π•œβ‚‚ (MulZeroOneClass.toMulZeroClass.{u3} π•œβ‚‚ (MonoidWithZero.toMulZeroOneClass.{u3} π•œβ‚‚ (Semiring.toMonoidWithZero.{u3} π•œβ‚‚ (Ring.toSemiring.{u3} π•œβ‚‚ (NormedRing.toRing.{u3} π•œβ‚‚ (NormedCommRing.toNormedRing.{u3} π•œβ‚‚ (NormedField.toNormedCommRing.{u3} π•œβ‚‚ _inst_8)))))))) (AddZeroClass.toHasZero.{u5} F (AddMonoid.toAddZeroClass.{u5} F (AddCommMonoid.toAddMonoid.{u5} F (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)))) (MulActionWithZero.toSMulWithZero.{u3, u5} π•œβ‚‚ F (Semiring.toMonoidWithZero.{u3} π•œβ‚‚ (Ring.toSemiring.{u3} π•œβ‚‚ (NormedRing.toRing.{u3} π•œβ‚‚ (NormedCommRing.toNormedRing.{u3} π•œβ‚‚ (NormedField.toNormedCommRing.{u3} π•œβ‚‚ _inst_8))))) (AddZeroClass.toHasZero.{u5} F (AddMonoid.toAddZeroClass.{u5} F (AddCommMonoid.toAddMonoid.{u5} F (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)))) (Module.toMulActionWithZero.{u3, u5} π•œβ‚‚ F (Ring.toSemiring.{u3} π•œβ‚‚ (NormedRing.toRing.{u3} π•œβ‚‚ (NormedCommRing.toNormedRing.{u3} π•œβ‚‚ (NormedField.toNormedCommRing.{u3} π•œβ‚‚ _inst_8)))) (AddCommGroup.toAddCommMonoid.{u5} F _inst_3) _inst_10)))) (SMulZeroClass.toHasSmul.{u1, u5} R F (AddZeroClass.toHasZero.{u5} F (AddMonoid.toAddZeroClass.{u5} F (AddCommMonoid.toAddMonoid.{u5} F (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)))) (SMulWithZero.toSmulZeroClass.{u1, u5} R F (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (OrderedSemiring.toSemiring.{u1} R _inst_6))))) (AddZeroClass.toHasZero.{u5} F (AddMonoid.toAddZeroClass.{u5} F (AddCommMonoid.toAddMonoid.{u5} F (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)))) (MulActionWithZero.toSMulWithZero.{u1, u5} R F (Semiring.toMonoidWithZero.{u1} R (OrderedSemiring.toSemiring.{u1} R _inst_6)) (AddZeroClass.toHasZero.{u5} F (AddMonoid.toAddZeroClass.{u5} F (AddCommMonoid.toAddMonoid.{u5} F (AddCommGroup.toAddCommMonoid.{u5} F _inst_3)))) (Module.toMulActionWithZero.{u1, u5} R F (OrderedSemiring.toSemiring.{u1} R _inst_6) (AddCommGroup.toAddCommMonoid.{u5} F _inst_3) _inst_11))))] (𝔖 : Set.{u4} (Set.{u4} E)), (Set.Nonempty.{u4} (Set.{u4} E) 𝔖) -> (DirectedOn.{u4} (Set.{u4} E) (HasSubset.Subset.{u4} (Set.{u4} E) (Set.hasSubset.{u4} E)) 𝔖) -> (LocallyConvexSpace.{u1, max u4 u5} R (ContinuousLinearMap.{u2, u3, u4, u5} π•œβ‚ π•œβ‚‚ (Ring.toSemiring.{u2} π•œβ‚ (NormedRing.toRing.{u2} π•œβ‚ (NormedCommRing.toNormedRing.{u2} π•œβ‚ (NormedField.toNormedCommRing.{u2} π•œβ‚ _inst_7)))) (Ring.toSemiring.{u3} π•œβ‚‚ (NormedRing.toRing.{u3} π•œβ‚‚ (NormedCommRing.toNormedRing.{u3} π•œβ‚‚ (NormedField.toNormedCommRing.{u3} π•œβ‚‚ _inst_8)))) Οƒ E _inst_2 (AddCommGroup.toAddCommMonoid.{u4} E _inst_1) F _inst_4 (AddCommGroup.toAddCommMonoid.{u5} F _inst_3) _inst_9 _inst_10) _inst_6 (ContinuousLinearMap.addCommMonoid.{u2, u3, u4, u5} π•œβ‚ π•œβ‚‚ (Ring.toSemiring.{u2} π•œβ‚ (NormedRing.toRing.{u2} π•œβ‚ (NormedCommRing.toNormedRing.{u2} π•œβ‚ (NormedField.toNormedCommRing.{u2} π•œβ‚ _inst_7)))) (Ring.toSemiring.{u3} π•œβ‚‚ (NormedRing.toRing.{u3} π•œβ‚‚ (NormedCommRing.toNormedRing.{u3} π•œβ‚‚ (NormedField.toNormedCommRing.{u3} π•œβ‚‚ _inst_8)))) Οƒ E _inst_2 (AddCommGroup.toAddCommMonoid.{u4} E _inst_1) F _inst_4 (AddCommGroup.toAddCommMonoid.{u5} F _inst_3) _inst_9 _inst_10 (TopologicalAddGroup.to_continuousAdd.{u5} F _inst_4 (AddCommGroup.toAddGroup.{u5} F _inst_3) _inst_5)) (ContinuousLinearMap.module.{u2, u3, u1, u4, u5} π•œβ‚ π•œβ‚‚ R (Ring.toSemiring.{u2} π•œβ‚ (NormedRing.toRing.{u2} π•œβ‚ (NormedCommRing.toNormedRing.{u2} π•œβ‚ (NormedField.toNormedCommRing.{u2} π•œβ‚ _inst_7)))) (Ring.toSemiring.{u3} π•œβ‚‚ (NormedRing.toRing.{u3} π•œβ‚‚ (NormedCommRing.toNormedRing.{u3} π•œβ‚‚ (NormedField.toNormedCommRing.{u3} π•œβ‚‚ _inst_8)))) (OrderedSemiring.toSemiring.{u1} R _inst_6) E _inst_2 (AddCommGroup.toAddCommMonoid.{u4} E _inst_1) _inst_9 F _inst_4 (AddCommGroup.toAddCommMonoid.{u5} F _inst_3) _inst_10 _inst_11 _inst_14 _inst_12 Οƒ (TopologicalAddGroup.to_continuousAdd.{u5} F _inst_4 (AddCommGroup.toAddGroup.{u5} F _inst_3) _inst_5)) (ContinuousLinearMap.strongTopology.{u2, u3, u4, u5} π•œβ‚ π•œβ‚‚ _inst_7 _inst_8 Οƒ E F _inst_1 _inst_9 _inst_3 _inst_10 _inst_2 _inst_4 _inst_5 𝔖))
+but is expected to have type
+  forall (R : Type.{u4}) {π•œβ‚ : Type.{u2}} {π•œβ‚‚ : Type.{u1}} {E : Type.{u5}} {F : Type.{u3}} [_inst_1 : AddCommGroup.{u5} E] [_inst_2 : TopologicalSpace.{u5} E] [_inst_3 : AddCommGroup.{u3} F] [_inst_4 : TopologicalSpace.{u3} F] [_inst_5 : TopologicalAddGroup.{u3} F _inst_4 (AddCommGroup.toAddGroup.{u3} F _inst_3)] [_inst_6 : OrderedSemiring.{u4} R] [_inst_7 : NormedField.{u2} π•œβ‚] [_inst_8 : NormedField.{u1} π•œβ‚‚] [_inst_9 : Module.{u2, u5} π•œβ‚ E (DivisionSemiring.toSemiring.{u2} π•œβ‚ (Semifield.toDivisionSemiring.{u2} π•œβ‚ (Field.toSemifield.{u2} π•œβ‚ (NormedField.toField.{u2} π•œβ‚ _inst_7)))) (AddCommGroup.toAddCommMonoid.{u5} E _inst_1)] [_inst_10 : Module.{u1, u3} π•œβ‚‚ F (DivisionSemiring.toSemiring.{u1} π•œβ‚‚ (Semifield.toDivisionSemiring.{u1} π•œβ‚‚ (Field.toSemifield.{u1} π•œβ‚‚ (NormedField.toField.{u1} π•œβ‚‚ _inst_8)))) (AddCommGroup.toAddCommMonoid.{u3} F _inst_3)] {Οƒ : RingHom.{u2, u1} π•œβ‚ π•œβ‚‚ (Semiring.toNonAssocSemiring.{u2} π•œβ‚ (DivisionSemiring.toSemiring.{u2} π•œβ‚ (Semifield.toDivisionSemiring.{u2} π•œβ‚ (Field.toSemifield.{u2} π•œβ‚ (NormedField.toField.{u2} π•œβ‚ _inst_7))))) (Semiring.toNonAssocSemiring.{u1} π•œβ‚‚ (DivisionSemiring.toSemiring.{u1} π•œβ‚‚ (Semifield.toDivisionSemiring.{u1} π•œβ‚‚ (Field.toSemifield.{u1} π•œβ‚‚ (NormedField.toField.{u1} π•œβ‚‚ _inst_8)))))} [_inst_11 : Module.{u4, u3} R F (OrderedSemiring.toSemiring.{u4} R _inst_6) (AddCommGroup.toAddCommMonoid.{u3} F _inst_3)] [_inst_12 : ContinuousConstSMul.{u4, u3} R F _inst_4 (SMulZeroClass.toSMul.{u4, u3} R F (NegZeroClass.toZero.{u3} F (SubNegZeroMonoid.toNegZeroClass.{u3} F (SubtractionMonoid.toSubNegZeroMonoid.{u3} F (SubtractionCommMonoid.toSubtractionMonoid.{u3} F (AddCommGroup.toDivisionAddCommMonoid.{u3} F _inst_3))))) (SMulWithZero.toSMulZeroClass.{u4, u3} R F (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R (OrderedSemiring.toSemiring.{u4} R _inst_6))) (NegZeroClass.toZero.{u3} F (SubNegZeroMonoid.toNegZeroClass.{u3} F (SubtractionMonoid.toSubNegZeroMonoid.{u3} F (SubtractionCommMonoid.toSubtractionMonoid.{u3} F (AddCommGroup.toDivisionAddCommMonoid.{u3} F _inst_3))))) (MulActionWithZero.toSMulWithZero.{u4, u3} R F (Semiring.toMonoidWithZero.{u4} R (OrderedSemiring.toSemiring.{u4} R _inst_6)) (NegZeroClass.toZero.{u3} F (SubNegZeroMonoid.toNegZeroClass.{u3} F (SubtractionMonoid.toSubNegZeroMonoid.{u3} F (SubtractionCommMonoid.toSubtractionMonoid.{u3} F (AddCommGroup.toDivisionAddCommMonoid.{u3} F _inst_3))))) (Module.toMulActionWithZero.{u4, u3} R F (OrderedSemiring.toSemiring.{u4} R _inst_6) (AddCommGroup.toAddCommMonoid.{u3} F _inst_3) _inst_11))))] [_inst_13 : LocallyConvexSpace.{u4, u3} R F _inst_6 (AddCommGroup.toAddCommMonoid.{u3} F _inst_3) _inst_11 _inst_4] [_inst_14 : SMulCommClass.{u1, u4, u3} π•œβ‚‚ R F (SMulZeroClass.toSMul.{u1, u3} π•œβ‚‚ F (NegZeroClass.toZero.{u3} F (SubNegZeroMonoid.toNegZeroClass.{u3} F (SubtractionMonoid.toSubNegZeroMonoid.{u3} F (SubtractionCommMonoid.toSubtractionMonoid.{u3} F (AddCommGroup.toDivisionAddCommMonoid.{u3} F _inst_3))))) (SMulWithZero.toSMulZeroClass.{u1, u3} π•œβ‚‚ F (CommMonoidWithZero.toZero.{u1} π•œβ‚‚ (CommGroupWithZero.toCommMonoidWithZero.{u1} π•œβ‚‚ (Semifield.toCommGroupWithZero.{u1} π•œβ‚‚ (Field.toSemifield.{u1} π•œβ‚‚ (NormedField.toField.{u1} π•œβ‚‚ _inst_8))))) (NegZeroClass.toZero.{u3} F (SubNegZeroMonoid.toNegZeroClass.{u3} F (SubtractionMonoid.toSubNegZeroMonoid.{u3} F (SubtractionCommMonoid.toSubtractionMonoid.{u3} F (AddCommGroup.toDivisionAddCommMonoid.{u3} F _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u3} π•œβ‚‚ F (Semiring.toMonoidWithZero.{u1} π•œβ‚‚ (DivisionSemiring.toSemiring.{u1} π•œβ‚‚ (Semifield.toDivisionSemiring.{u1} π•œβ‚‚ (Field.toSemifield.{u1} π•œβ‚‚ (NormedField.toField.{u1} π•œβ‚‚ _inst_8))))) (NegZeroClass.toZero.{u3} F (SubNegZeroMonoid.toNegZeroClass.{u3} F (SubtractionMonoid.toSubNegZeroMonoid.{u3} F (SubtractionCommMonoid.toSubtractionMonoid.{u3} F (AddCommGroup.toDivisionAddCommMonoid.{u3} F _inst_3))))) (Module.toMulActionWithZero.{u1, u3} π•œβ‚‚ F (DivisionSemiring.toSemiring.{u1} π•œβ‚‚ (Semifield.toDivisionSemiring.{u1} π•œβ‚‚ (Field.toSemifield.{u1} π•œβ‚‚ (NormedField.toField.{u1} π•œβ‚‚ _inst_8)))) (AddCommGroup.toAddCommMonoid.{u3} F _inst_3) _inst_10)))) (SMulZeroClass.toSMul.{u4, u3} R F (NegZeroClass.toZero.{u3} F (SubNegZeroMonoid.toNegZeroClass.{u3} F (SubtractionMonoid.toSubNegZeroMonoid.{u3} F (SubtractionCommMonoid.toSubtractionMonoid.{u3} F (AddCommGroup.toDivisionAddCommMonoid.{u3} F _inst_3))))) (SMulWithZero.toSMulZeroClass.{u4, u3} R F (MonoidWithZero.toZero.{u4} R (Semiring.toMonoidWithZero.{u4} R (OrderedSemiring.toSemiring.{u4} R _inst_6))) (NegZeroClass.toZero.{u3} F (SubNegZeroMonoid.toNegZeroClass.{u3} F (SubtractionMonoid.toSubNegZeroMonoid.{u3} F (SubtractionCommMonoid.toSubtractionMonoid.{u3} F (AddCommGroup.toDivisionAddCommMonoid.{u3} F _inst_3))))) (MulActionWithZero.toSMulWithZero.{u4, u3} R F (Semiring.toMonoidWithZero.{u4} R (OrderedSemiring.toSemiring.{u4} R _inst_6)) (NegZeroClass.toZero.{u3} F (SubNegZeroMonoid.toNegZeroClass.{u3} F (SubtractionMonoid.toSubNegZeroMonoid.{u3} F (SubtractionCommMonoid.toSubtractionMonoid.{u3} F (AddCommGroup.toDivisionAddCommMonoid.{u3} F _inst_3))))) (Module.toMulActionWithZero.{u4, u3} R F (OrderedSemiring.toSemiring.{u4} R _inst_6) (AddCommGroup.toAddCommMonoid.{u3} F _inst_3) _inst_11))))] (𝔖 : Set.{u5} (Set.{u5} E)), (Set.Nonempty.{u5} (Set.{u5} E) 𝔖) -> (DirectedOn.{u5} (Set.{u5} E) (fun (x._@.Mathlib.Analysis.LocallyConvex.StrongTopology._hyg.275 : Set.{u5} E) (x._@.Mathlib.Analysis.LocallyConvex.StrongTopology._hyg.277 : Set.{u5} E) => HasSubset.Subset.{u5} (Set.{u5} E) (Set.instHasSubsetSet.{u5} E) x._@.Mathlib.Analysis.LocallyConvex.StrongTopology._hyg.275 x._@.Mathlib.Analysis.LocallyConvex.StrongTopology._hyg.277) 𝔖) -> (LocallyConvexSpace.{u4, max u3 u5} R (ContinuousLinearMap.{u2, u1, u5, u3} π•œβ‚ π•œβ‚‚ (DivisionSemiring.toSemiring.{u2} π•œβ‚ (Semifield.toDivisionSemiring.{u2} π•œβ‚ (Field.toSemifield.{u2} π•œβ‚ (NormedField.toField.{u2} π•œβ‚ _inst_7)))) (DivisionSemiring.toSemiring.{u1} π•œβ‚‚ (Semifield.toDivisionSemiring.{u1} π•œβ‚‚ (Field.toSemifield.{u1} π•œβ‚‚ (NormedField.toField.{u1} π•œβ‚‚ _inst_8)))) Οƒ E _inst_2 (AddCommGroup.toAddCommMonoid.{u5} E _inst_1) F _inst_4 (AddCommGroup.toAddCommMonoid.{u3} F _inst_3) _inst_9 _inst_10) _inst_6 (ContinuousLinearMap.addCommMonoid.{u2, u1, u5, u3} π•œβ‚ π•œβ‚‚ (DivisionSemiring.toSemiring.{u2} π•œβ‚ (Semifield.toDivisionSemiring.{u2} π•œβ‚ (Field.toSemifield.{u2} π•œβ‚ (NormedField.toField.{u2} π•œβ‚ _inst_7)))) (DivisionSemiring.toSemiring.{u1} π•œβ‚‚ (Semifield.toDivisionSemiring.{u1} π•œβ‚‚ (Field.toSemifield.{u1} π•œβ‚‚ (NormedField.toField.{u1} π•œβ‚‚ _inst_8)))) Οƒ E _inst_2 (AddCommGroup.toAddCommMonoid.{u5} E _inst_1) F _inst_4 (AddCommGroup.toAddCommMonoid.{u3} F _inst_3) _inst_9 _inst_10 (TopologicalAddGroup.toContinuousAdd.{u3} F _inst_4 (AddCommGroup.toAddGroup.{u3} F _inst_3) _inst_5)) (ContinuousLinearMap.module.{u2, u1, u4, u5, u3} π•œβ‚ π•œβ‚‚ R (DivisionSemiring.toSemiring.{u2} π•œβ‚ (Semifield.toDivisionSemiring.{u2} π•œβ‚ (Field.toSemifield.{u2} π•œβ‚ (NormedField.toField.{u2} π•œβ‚ _inst_7)))) (DivisionSemiring.toSemiring.{u1} π•œβ‚‚ (Semifield.toDivisionSemiring.{u1} π•œβ‚‚ (Field.toSemifield.{u1} π•œβ‚‚ (NormedField.toField.{u1} π•œβ‚‚ _inst_8)))) (OrderedSemiring.toSemiring.{u4} R _inst_6) E _inst_2 (AddCommGroup.toAddCommMonoid.{u5} E _inst_1) _inst_9 F _inst_4 (AddCommGroup.toAddCommMonoid.{u3} F _inst_3) _inst_10 _inst_11 _inst_14 _inst_12 Οƒ (TopologicalAddGroup.toContinuousAdd.{u3} F _inst_4 (AddCommGroup.toAddGroup.{u3} F _inst_3) _inst_5)) (ContinuousLinearMap.strongTopology.{u2, u1, u5, u3} π•œβ‚ π•œβ‚‚ _inst_7 _inst_8 Οƒ E F _inst_1 _inst_9 _inst_3 _inst_10 _inst_2 _inst_4 _inst_5 𝔖))
+Case conversion may be inaccurate. Consider using '#align continuous_linear_map.strong_topology.locally_convex_space ContinuousLinearMap.strongTopology.locallyConvexSpaceβ‚“'. -/
 theorem strongTopology.locallyConvexSpace (𝔖 : Set (Set E)) (h𝔖₁ : 𝔖.Nonempty)
     (h𝔖₂ : DirectedOn (Β· βŠ† Β·) 𝔖) :
     @LocallyConvexSpace R (E β†’SL[Οƒ] F) _ _ _ (strongTopology Οƒ F 𝔖) :=
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Anatole Dedecker
 
 ! This file was ported from Lean 3 source module analysis.locally_convex.strong_topology
-! leanprover-community/mathlib commit b8627dbac120a9ad6267a75575ae1e070d5bff5b
+! leanprover-community/mathlib commit 47b12e7f2502f14001f891ca87fbae2b4acaed3f
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -33,25 +33,33 @@ locally convex, bounded convergence
 
 open Topology UniformConvergence
 
-variable {E F : Type _}
+variable {R π•œβ‚ π•œβ‚‚ E F : Type _}
 
 namespace ContinuousLinearMap
 
+variable [AddCommGroup E] [TopologicalSpace E] [AddCommGroup F] [TopologicalSpace F]
+  [TopologicalAddGroup F]
+
 section General
 
-variable [AddCommGroup E] [Module ℝ E] [TopologicalSpace E] [AddCommGroup F] [Module ℝ F]
-  [TopologicalSpace F] [TopologicalAddGroup F] [ContinuousConstSMul ℝ F] [LocallyConvexSpace ℝ F]
+variable (R)
+
+variable [OrderedSemiring R]
+
+variable [NormedField π•œβ‚] [NormedField π•œβ‚‚] [Module π•œβ‚ E] [Module π•œβ‚‚ F] {Οƒ : π•œβ‚ β†’+* π•œβ‚‚}
+
+variable [Module R F] [ContinuousConstSMul R F] [LocallyConvexSpace R F] [SMulCommClass π•œβ‚‚ R F]
 
 theorem strongTopology.locallyConvexSpace (𝔖 : Set (Set E)) (h𝔖₁ : 𝔖.Nonempty)
     (h𝔖₂ : DirectedOn (Β· βŠ† Β·) 𝔖) :
-    @LocallyConvexSpace ℝ (E β†’L[ℝ] F) _ _ _ (strongTopology (RingHom.id ℝ) F 𝔖) :=
+    @LocallyConvexSpace R (E β†’SL[Οƒ] F) _ _ _ (strongTopology Οƒ F 𝔖) :=
   by
-  letI : TopologicalSpace (E β†’L[ℝ] F) := strong_topology (RingHom.id ℝ) F 𝔖
-  haveI : TopologicalAddGroup (E β†’L[ℝ] F) := strong_topology.topological_add_group _ _ _
+  letI : TopologicalSpace (E β†’SL[Οƒ] F) := strong_topology Οƒ F 𝔖
+  haveI : TopologicalAddGroup (E β†’SL[Οƒ] F) := strong_topology.topological_add_group _ _ _
   refine'
     LocallyConvexSpace.ofBasisZero _ _ _ _
       (strong_topology.has_basis_nhds_zero_of_basis _ _ _ h𝔖₁ h𝔖₂
-        (LocallyConvexSpace.convex_basis_zero ℝ F))
+        (LocallyConvexSpace.convex_basis_zero R F))
       _
   rintro ⟨S, V⟩ ⟨hS, hVmem, hVconvex⟩ f hf g hg a b ha hb hab x hx
   exact hVconvex (hf x hx) (hg x hx) ha hb hab
@@ -61,11 +69,14 @@ end General
 
 section BoundedSets
 
-variable [AddCommGroup E] [Module ℝ E] [TopologicalSpace E] [AddCommGroup F] [Module ℝ F]
-  [TopologicalSpace F] [TopologicalAddGroup F] [ContinuousConstSMul ℝ F] [LocallyConvexSpace ℝ F]
+variable [OrderedSemiring R]
+
+variable [NormedField π•œβ‚] [NormedField π•œβ‚‚] [Module π•œβ‚ E] [Module π•œβ‚‚ F] {Οƒ : π•œβ‚ β†’+* π•œβ‚‚}
+
+variable [Module R F] [ContinuousConstSMul R F] [LocallyConvexSpace R F] [SMulCommClass π•œβ‚‚ R F]
 
-instance : LocallyConvexSpace ℝ (E β†’L[ℝ] F) :=
-  strongTopology.locallyConvexSpace _ βŸ¨βˆ…, Bornology.isVonNBounded_empty ℝ E⟩
+instance : LocallyConvexSpace R (E β†’SL[Οƒ] F) :=
+  strongTopology.locallyConvexSpace R _ βŸ¨βˆ…, Bornology.isVonNBounded_empty π•œβ‚ E⟩
     (directedOn_of_sup_mem fun _ _ => Bornology.IsVonNBounded.union)
 
 end BoundedSets

Changes in mathlib4

mathlib3
mathlib4
feat(Topology/Algebra/StrongTopology): introduce type synonym for abstract topologies on CLM (#11470)
Diff
@@ -32,42 +32,44 @@ open Topology UniformConvergence
 
 variable {R π•œβ‚ π•œβ‚‚ E F : Type*}
 
-namespace ContinuousLinearMap
-
 variable [AddCommGroup E] [TopologicalSpace E] [AddCommGroup F] [TopologicalSpace F]
   [TopologicalAddGroup F]
 
 section General
 
+namespace UniformConvergenceCLM
+
 variable (R)
 variable [OrderedSemiring R]
 variable [NormedField π•œβ‚] [NormedField π•œβ‚‚] [Module π•œβ‚ E] [Module π•œβ‚‚ F] {Οƒ : π•œβ‚ β†’+* π•œβ‚‚}
 variable [Module R F] [ContinuousConstSMul R F] [LocallyConvexSpace R F] [SMulCommClass π•œβ‚‚ R F]
 
-theorem strongTopology.locallyConvexSpace (𝔖 : Set (Set E)) (h𝔖₁ : 𝔖.Nonempty)
+theorem locallyConvexSpace (𝔖 : Set (Set E)) (h𝔖₁ : 𝔖.Nonempty)
     (h𝔖₂ : DirectedOn (Β· βŠ† Β·) 𝔖) :
-    @LocallyConvexSpace R (E β†’SL[Οƒ] F) _ _ _ (strongTopology Οƒ F 𝔖) := by
-  letI : TopologicalSpace (E β†’SL[Οƒ] F) := strongTopology Οƒ F 𝔖
-  haveI : TopologicalAddGroup (E β†’SL[Οƒ] F) := strongTopology.topologicalAddGroup _ _ _
+    LocallyConvexSpace R (UniformConvergenceCLM Οƒ F 𝔖) := by
   apply LocallyConvexSpace.ofBasisZero _ _ _ _
-    (strongTopology.hasBasis_nhds_zero_of_basis _ _ _ h𝔖₁ h𝔖₂
+    (UniformConvergenceCLM.hasBasis_nhds_zero_of_basis _ _ _ h𝔖₁ h𝔖₂
       (LocallyConvexSpace.convex_basis_zero R F)) _
   rintro ⟨S, V⟩ ⟨_, _, hVconvex⟩ f hf g hg a b ha hb hab x hx
   exact hVconvex (hf x hx) (hg x hx) ha hb hab
-#align continuous_linear_map.strong_topology.locally_convex_space ContinuousLinearMap.strongTopology.locallyConvexSpace
+#align continuous_linear_map.strong_topology.locally_convex_space UniformConvergenceCLM.locallyConvexSpace
+
+end UniformConvergenceCLM
 
 end General
 
 section BoundedSets
 
+namespace ContinuousLinearMap
+
 variable [OrderedSemiring R]
 variable [NormedField π•œβ‚] [NormedField π•œβ‚‚] [Module π•œβ‚ E] [Module π•œβ‚‚ F] {Οƒ : π•œβ‚ β†’+* π•œβ‚‚}
 variable [Module R F] [ContinuousConstSMul R F] [LocallyConvexSpace R F] [SMulCommClass π•œβ‚‚ R F]
 
-instance : LocallyConvexSpace R (E β†’SL[Οƒ] F) :=
-  strongTopology.locallyConvexSpace R _ βŸ¨βˆ…, Bornology.isVonNBounded_empty π•œβ‚ E⟩
+instance instLocallyConvexSpace : LocallyConvexSpace R (E β†’SL[Οƒ] F) :=
+  UniformConvergenceCLM.locallyConvexSpace R _ βŸ¨βˆ…, Bornology.isVonNBounded_empty π•œβ‚ E⟩
     (directedOn_of_sup_mem fun _ _ => Bornology.IsVonNBounded.union)
 
-end BoundedSets
-
 end ContinuousLinearMap
+
+end BoundedSets
chore(*): remove empty lines between variable statements (#11418)

Empty lines were removed by executing the following Python script twice

import os
import re


# Loop through each file in the repository
for dir_path, dirs, files in os.walk('.'):
  for filename in files:
    if filename.endswith('.lean'):
      file_path = os.path.join(dir_path, filename)

      # Open the file and read its contents
      with open(file_path, 'r') as file:
        content = file.read()

      # Use a regular expression to replace sequences of "variable" lines separated by empty lines
      # with sequences without empty lines
      modified_content = re.sub(r'(variable.*\n)\n(variable(?! .* in))', r'\1\2', content)

      # Write the modified content back to the file
      with open(file_path, 'w') as file:
        file.write(modified_content)
Diff
@@ -40,11 +40,8 @@ variable [AddCommGroup E] [TopologicalSpace E] [AddCommGroup F] [TopologicalSpac
 section General
 
 variable (R)
-
 variable [OrderedSemiring R]
-
 variable [NormedField π•œβ‚] [NormedField π•œβ‚‚] [Module π•œβ‚ E] [Module π•œβ‚‚ F] {Οƒ : π•œβ‚ β†’+* π•œβ‚‚}
-
 variable [Module R F] [ContinuousConstSMul R F] [LocallyConvexSpace R F] [SMulCommClass π•œβ‚‚ R F]
 
 theorem strongTopology.locallyConvexSpace (𝔖 : Set (Set E)) (h𝔖₁ : 𝔖.Nonempty)
@@ -64,9 +61,7 @@ end General
 section BoundedSets
 
 variable [OrderedSemiring R]
-
 variable [NormedField π•œβ‚] [NormedField π•œβ‚‚] [Module π•œβ‚ E] [Module π•œβ‚‚ F] {Οƒ : π•œβ‚ β†’+* π•œβ‚‚}
-
 variable [Module R F] [ContinuousConstSMul R F] [LocallyConvexSpace R F] [SMulCommClass π•œβ‚‚ R F]
 
 instance : LocallyConvexSpace R (E β†’SL[Οƒ] F) :=
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
@@ -30,7 +30,7 @@ locally convex, bounded convergence
 
 open Topology UniformConvergence
 
-variable {R π•œβ‚ π•œβ‚‚ E F : Type _}
+variable {R π•œβ‚ π•œβ‚‚ E F : Type*}
 
 namespace ContinuousLinearMap
 
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,15 +2,12 @@
 Copyright (c) 2022 Anatole Dedecker. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Anatole Dedecker
-
-! This file was ported from Lean 3 source module analysis.locally_convex.strong_topology
-! leanprover-community/mathlib commit 47b12e7f2502f14001f891ca87fbae2b4acaed3f
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathlib.Topology.Algebra.Module.StrongTopology
 import Mathlib.Topology.Algebra.Module.LocallyConvex
 
+#align_import analysis.locally_convex.strong_topology from "leanprover-community/mathlib"@"47b12e7f2502f14001f891ca87fbae2b4acaed3f"
+
 /-!
 # Local convexity of the strong topology
 
feat: port Analysis.LocallyConvex.StrongTopology (#4193)

Dependencies 10 + 646

647 files ported (98.5%)
283369 lines ported (98.2%)
Show graph

The unported dependencies are

The following 1 dependencies have changed in mathlib3 since they were ported, which may complicate porting this file