topology.algebra.group_completion
⟷
Mathlib.Topology.Algebra.GroupCompletion
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.
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(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)
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -135,7 +135,7 @@ instance : AddMonoid (Completion α) :=
nsmul_succ := fun n a =>
Completion.induction_on a
(isClosed_eq continuous_map <| continuous_map₂ continuous_id continuous_map) fun a => by
- rw_mod_cast [succ_nsmul] }
+ rw_mod_cast [succ_nsmul'] }
instance : SubNegMonoid (Completion α) :=
{ Completion.addMonoid, Completion.hasNeg,
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -242,7 +242,7 @@ open UniformSpace UniformSpace.Completion
#print AddMonoidHom.extension /-
/-- Extension to the completion of a continuous group hom. -/
-def AddMonoidHom.extension [CompleteSpace β] [SeparatedSpace β] (f : α →+ β) (hf : Continuous f) :
+def AddMonoidHom.extension [CompleteSpace β] [T0Space β] (f : α →+ β) (hf : Continuous f) :
Completion α →+ β :=
have hf : UniformContinuous f := uniformContinuous_addMonoidHom_of_continuous hf
{ toFun := Completion.extension f
@@ -258,15 +258,15 @@ def AddMonoidHom.extension [CompleteSpace β] [SeparatedSpace β] (f : α →+
-/
#print AddMonoidHom.extension_coe /-
-theorem AddMonoidHom.extension_coe [CompleteSpace β] [SeparatedSpace β] (f : α →+ β)
- (hf : Continuous f) (a : α) : f.extension hf a = f a :=
+theorem AddMonoidHom.extension_coe [CompleteSpace β] [T0Space β] (f : α →+ β) (hf : Continuous f)
+ (a : α) : f.extension hf a = f a :=
extension_coe (uniformContinuous_addMonoidHom_of_continuous hf) a
#align add_monoid_hom.extension_coe AddMonoidHom.extension_coe
-/
#print AddMonoidHom.continuous_extension /-
@[continuity]
-theorem AddMonoidHom.continuous_extension [CompleteSpace β] [SeparatedSpace β] (f : α →+ β)
+theorem AddMonoidHom.continuous_extension [CompleteSpace β] [T0Space β] (f : α →+ β)
(hf : Continuous f) : Continuous (f.extension hf) :=
continuous_extension
#align add_monoid_hom.continuous_extension AddMonoidHom.continuous_extension
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -3,9 +3,9 @@ Copyright (c) 2018 Patrick Massot. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Patrick Massot, Johannes Hölzl
-/
-import Mathbin.Topology.Algebra.UniformGroup
-import Mathbin.Topology.Algebra.UniformMulAction
-import Mathbin.Topology.UniformSpace.Completion
+import Topology.Algebra.UniformGroup
+import Topology.Algebra.UniformMulAction
+import Topology.UniformSpace.Completion
#align_import topology.algebra.group_completion from "leanprover-community/mathlib"@"f47581155c818e6361af4e4fda60d27d020c226b"
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -2,16 +2,13 @@
Copyright (c) 2018 Patrick Massot. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Patrick Massot, Johannes Hölzl
-
-! This file was ported from Lean 3 source module topology.algebra.group_completion
-! 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.Topology.Algebra.UniformGroup
import Mathbin.Topology.Algebra.UniformMulAction
import Mathbin.Topology.UniformSpace.Completion
+#align_import topology.algebra.group_completion from "leanprover-community/mathlib"@"f47581155c818e6361af4e4fda60d27d020c226b"
+
/-!
# Completion of topological groups:
mathlib commit https://github.com/leanprover-community/mathlib/commit/9fb8964792b4237dac6200193a0d533f1b3f7423
@@ -59,10 +59,12 @@ instance [Add α] : Add (Completion α) :=
instance [Sub α] : Sub (Completion α) :=
⟨Completion.map₂ Sub.sub⟩
+#print UniformSpace.Completion.coe_zero /-
@[norm_cast]
theorem UniformSpace.Completion.coe_zero [Zero α] : ((0 : α) : Completion α) = 0 :=
rfl
#align uniform_space.completion.coe_zero UniformSpace.Completion.coe_zero
+-/
end Group
@@ -87,20 +89,26 @@ section UniformAddGroup
variable [UniformSpace α] [AddGroup α] [UniformAddGroup α]
+#print UniformSpace.Completion.coe_neg /-
@[norm_cast]
theorem coe_neg (a : α) : ((-a : α) : Completion α) = -a :=
(map_coe uniformContinuous_neg a).symm
#align uniform_space.completion.coe_neg UniformSpace.Completion.coe_neg
+-/
+#print UniformSpace.Completion.coe_sub /-
@[norm_cast]
theorem coe_sub (a b : α) : ((a - b : α) : Completion α) = a - b :=
(map₂_coe_coe a b Sub.sub uniformContinuous_sub).symm
#align uniform_space.completion.coe_sub UniformSpace.Completion.coe_sub
+-/
+#print UniformSpace.Completion.coe_add /-
@[norm_cast]
theorem coe_add (a b : α) : ((a + b : α) : Completion α) = a + b :=
(map₂_coe_coe a b (· + ·) uniformContinuous_add).symm
#align uniform_space.completion.coe_add UniformSpace.Completion.coe_add
+-/
instance : AddMonoid (Completion α) :=
{ Completion.hasZero,
@@ -176,6 +184,7 @@ instance {M} [Monoid M] [DistribMulAction M α] [UniformContinuousConstSMul M α
fun a b => by simp only [← coe_add, ← coe_smul, smul_add]
smul_zero := fun r => by rw [← coe_zero, ← coe_smul, smul_zero r] }
+#print UniformSpace.Completion.toCompl /-
/-- The map from a group to its completion as a group hom. -/
@[simps]
def toCompl : α →+ Completion α where
@@ -183,16 +192,21 @@ def toCompl : α →+ Completion α where
map_add' := coe_add
map_zero' := coe_zero
#align uniform_space.completion.to_compl UniformSpace.Completion.toCompl
+-/
+#print UniformSpace.Completion.continuous_toCompl /-
theorem continuous_toCompl : Continuous (toCompl : α → Completion α) :=
continuous_coe α
#align uniform_space.completion.continuous_to_compl UniformSpace.Completion.continuous_toCompl
+-/
variable (α)
+#print UniformSpace.Completion.denseInducing_toCompl /-
theorem denseInducing_toCompl : DenseInducing (toCompl : α → Completion α) :=
denseInducing_coe
#align uniform_space.completion.dense_inducing_to_compl UniformSpace.Completion.denseInducing_toCompl
+-/
variable {α}
@@ -229,6 +243,7 @@ variable [UniformSpace α] [AddGroup α] [UniformAddGroup α] [UniformSpace β]
open UniformSpace UniformSpace.Completion
+#print AddMonoidHom.extension /-
/-- Extension to the completion of a continuous group hom. -/
def AddMonoidHom.extension [CompleteSpace β] [SeparatedSpace β] (f : α →+ β) (hf : Continuous f) :
Completion α →+ β :=
@@ -243,34 +258,46 @@ def AddMonoidHom.extension [CompleteSpace β] [SeparatedSpace β] (f : α →+
fun a b => by
rw_mod_cast [extension_coe hf, extension_coe hf, extension_coe hf, f.map_add] }
#align add_monoid_hom.extension AddMonoidHom.extension
+-/
+#print AddMonoidHom.extension_coe /-
theorem AddMonoidHom.extension_coe [CompleteSpace β] [SeparatedSpace β] (f : α →+ β)
(hf : Continuous f) (a : α) : f.extension hf a = f a :=
extension_coe (uniformContinuous_addMonoidHom_of_continuous hf) a
#align add_monoid_hom.extension_coe AddMonoidHom.extension_coe
+-/
+#print AddMonoidHom.continuous_extension /-
@[continuity]
theorem AddMonoidHom.continuous_extension [CompleteSpace β] [SeparatedSpace β] (f : α →+ β)
(hf : Continuous f) : Continuous (f.extension hf) :=
continuous_extension
#align add_monoid_hom.continuous_extension AddMonoidHom.continuous_extension
+-/
+#print AddMonoidHom.completion /-
/-- Completion of a continuous group hom, as a group hom. -/
def AddMonoidHom.completion (f : α →+ β) (hf : Continuous f) : Completion α →+ Completion β :=
(toCompl.comp f).extension (continuous_toCompl.comp hf)
#align add_monoid_hom.completion AddMonoidHom.completion
+-/
+#print AddMonoidHom.continuous_completion /-
@[continuity]
theorem AddMonoidHom.continuous_completion (f : α →+ β) (hf : Continuous f) :
Continuous (f.Completion hf : Completion α → Completion β) :=
ContinuousMap
#align add_monoid_hom.continuous_completion AddMonoidHom.continuous_completion
+-/
+#print AddMonoidHom.completion_coe /-
theorem AddMonoidHom.completion_coe (f : α →+ β) (hf : Continuous f) (a : α) :
f.Completion hf a = f a :=
map_coe (uniformContinuous_addMonoidHom_of_continuous hf) a
#align add_monoid_hom.completion_coe AddMonoidHom.completion_coe
+-/
+#print AddMonoidHom.completion_zero /-
theorem AddMonoidHom.completion_zero : (0 : α →+ β).Completion continuous_const = 0 :=
by
ext x
@@ -280,7 +307,9 @@ theorem AddMonoidHom.completion_zero : (0 : α →+ β).Completion continuous_co
· intro a
simp [(0 : α →+ β).completion_coe continuous_const, coe_zero]
#align add_monoid_hom.completion_zero AddMonoidHom.completion_zero
+-/
+#print AddMonoidHom.completion_add /-
theorem AddMonoidHom.completion_add {γ : Type _} [AddCommGroup γ] [UniformSpace γ]
[UniformAddGroup γ] (f g : α →+ γ) (hf : Continuous f) (hg : Continuous g) :
(f + g).Completion (hf.add hg) = f.Completion hf + g.Completion hg :=
@@ -295,6 +324,7 @@ theorem AddMonoidHom.completion_add {γ : Type _} [AddCommGroup γ] [UniformSpac
· intro a
simp [(f + g).completion_coe hfg, coe_add, f.completion_coe hf, g.completion_coe hg]
#align add_monoid_hom.completion_add AddMonoidHom.completion_add
+-/
end AddMonoidHom
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -59,12 +59,6 @@ instance [Add α] : Add (Completion α) :=
instance [Sub α] : Sub (Completion α) :=
⟨Completion.map₂ Sub.sub⟩
-/- warning: uniform_space.completion.coe_zero -> UniformSpace.Completion.coe_zero is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : Zero.{u1} α], Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_1) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) (OfNat.ofNat.{u1} α 0 (OfNat.mk.{u1} α 0 (Zero.zero.{u1} α _inst_2)))) (OfNat.ofNat.{u1} (UniformSpace.Completion.{u1} α _inst_1) 0 (OfNat.mk.{u1} (UniformSpace.Completion.{u1} α _inst_1) 0 (Zero.zero.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasZero.{u1} α _inst_1 _inst_2))))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : Zero.{u1} α], Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.coe'.{u1} α _inst_1 (OfNat.ofNat.{u1} α 0 (Zero.toOfNat0.{u1} α _inst_2))) (OfNat.ofNat.{u1} (UniformSpace.Completion.{u1} α _inst_1) 0 (Zero.toOfNat0.{u1} (UniformSpace.Completion.{u1} α _inst_1) (instZeroCompletion.{u1} α _inst_1 _inst_2)))
-Case conversion may be inaccurate. Consider using '#align uniform_space.completion.coe_zero UniformSpace.Completion.coe_zeroₓ'. -/
@[norm_cast]
theorem UniformSpace.Completion.coe_zero [Zero α] : ((0 : α) : Completion α) = 0 :=
rfl
@@ -93,34 +87,16 @@ section UniformAddGroup
variable [UniformSpace α] [AddGroup α] [UniformAddGroup α]
-/- warning: uniform_space.completion.coe_neg -> UniformSpace.Completion.coe_neg is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] (a : α), Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_1) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) (Neg.neg.{u1} α (SubNegMonoid.toHasNeg.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)) a)) (Neg.neg.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasNeg.{u1} α _inst_1 (SubNegMonoid.toHasNeg.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) a))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] (a : α), Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.coe'.{u1} α _inst_1 (Neg.neg.{u1} α (NegZeroClass.toNeg.{u1} α (SubNegZeroMonoid.toNegZeroClass.{u1} α (SubtractionMonoid.toSubNegZeroMonoid.{u1} α (AddGroup.toSubtractionMonoid.{u1} α _inst_2)))) a)) (Neg.neg.{u1} (UniformSpace.Completion.{u1} α _inst_1) (instNegCompletion.{u1} α _inst_1 (NegZeroClass.toNeg.{u1} α (SubNegZeroMonoid.toNegZeroClass.{u1} α (SubtractionMonoid.toSubNegZeroMonoid.{u1} α (AddGroup.toSubtractionMonoid.{u1} α _inst_2))))) (UniformSpace.Completion.coe'.{u1} α _inst_1 a))
-Case conversion may be inaccurate. Consider using '#align uniform_space.completion.coe_neg UniformSpace.Completion.coe_negₓ'. -/
@[norm_cast]
theorem coe_neg (a : α) : ((-a : α) : Completion α) = -a :=
(map_coe uniformContinuous_neg a).symm
#align uniform_space.completion.coe_neg UniformSpace.Completion.coe_neg
-/- warning: uniform_space.completion.coe_sub -> UniformSpace.Completion.coe_sub is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] (a : α) (b : α), Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_1) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) (HSub.hSub.{u1, u1, u1} α α α (instHSub.{u1} α (SubNegMonoid.toHasSub.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) a b)) (HSub.hSub.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u1} α _inst_1) (instHSub.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasSub.{u1} α _inst_1 (SubNegMonoid.toHasSub.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) a) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) b))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] (a : α) (b : α), Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.coe'.{u1} α _inst_1 (HSub.hSub.{u1, u1, u1} α α α (instHSub.{u1} α (SubNegMonoid.toSub.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) a b)) (HSub.hSub.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u1} α _inst_1) (instHSub.{u1} (UniformSpace.Completion.{u1} α _inst_1) (instSubCompletion.{u1} α _inst_1 (SubNegMonoid.toSub.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (UniformSpace.Completion.coe'.{u1} α _inst_1 a) (UniformSpace.Completion.coe'.{u1} α _inst_1 b))
-Case conversion may be inaccurate. Consider using '#align uniform_space.completion.coe_sub UniformSpace.Completion.coe_subₓ'. -/
@[norm_cast]
theorem coe_sub (a b : α) : ((a - b : α) : Completion α) = a - b :=
(map₂_coe_coe a b Sub.sub uniformContinuous_sub).symm
#align uniform_space.completion.coe_sub UniformSpace.Completion.coe_sub
-/- warning: uniform_space.completion.coe_add -> UniformSpace.Completion.coe_add is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] (a : α) (b : α), Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_1) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) (HAdd.hAdd.{u1, u1, u1} α α α (instHAdd.{u1} α (AddZeroClass.toHasAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))))) a b)) (HAdd.hAdd.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u1} α _inst_1) (instHAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasAdd.{u1} α _inst_1 (AddZeroClass.toHasAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) a) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) b))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] (a : α) (b : α), Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.coe'.{u1} α _inst_1 (HAdd.hAdd.{u1, u1, u1} α α α (instHAdd.{u1} α (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))))) a b)) (HAdd.hAdd.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u1} α _inst_1) (instHAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (instAddCompletion.{u1} α _inst_1 (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))))) (UniformSpace.Completion.coe'.{u1} α _inst_1 a) (UniformSpace.Completion.coe'.{u1} α _inst_1 b))
-Case conversion may be inaccurate. Consider using '#align uniform_space.completion.coe_add UniformSpace.Completion.coe_addₓ'. -/
@[norm_cast]
theorem coe_add (a b : α) : ((a + b : α) : Completion α) = a + b :=
(map₂_coe_coe a b (· + ·) uniformContinuous_add).symm
@@ -200,12 +176,6 @@ instance {M} [Monoid M] [DistribMulAction M α] [UniformContinuousConstSMul M α
fun a b => by simp only [← coe_add, ← coe_smul, smul_add]
smul_zero := fun r => by rw [← coe_zero, ← coe_smul, smul_zero r] }
-/- warning: uniform_space.completion.to_compl -> UniformSpace.Completion.toCompl is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))
-Case conversion may be inaccurate. Consider using '#align uniform_space.completion.to_compl UniformSpace.Completion.toComplₓ'. -/
/-- The map from a group to its completion as a group hom. -/
@[simps]
def toCompl : α →+ Completion α where
@@ -214,24 +184,12 @@ def toCompl : α →+ Completion α where
map_zero' := coe_zero
#align uniform_space.completion.to_compl UniformSpace.Completion.toCompl
-/- warning: uniform_space.completion.continuous_to_compl -> UniformSpace.Completion.continuous_toCompl is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (coeFn.{succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) (fun (_x : AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) => α -> (UniformSpace.Completion.{u1} α _inst_1)) (AddMonoidHom.hasCoeToFun.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (FunLike.coe.{succ u1, succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => UniformSpace.Completion.{u1} α _inst_1) _x) (AddHomClass.toFunLike.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddMonoidHomClass.toAddHomClass.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoidHom.addMonoidHomClass.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
-Case conversion may be inaccurate. Consider using '#align uniform_space.completion.continuous_to_compl UniformSpace.Completion.continuous_toComplₓ'. -/
theorem continuous_toCompl : Continuous (toCompl : α → Completion α) :=
continuous_coe α
#align uniform_space.completion.continuous_to_compl UniformSpace.Completion.continuous_toCompl
variable (α)
-/- warning: uniform_space.completion.dense_inducing_to_compl -> UniformSpace.Completion.denseInducing_toCompl is a dubious translation:
-lean 3 declaration is
- forall (α : Type.{u1}) [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], DenseInducing.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (coeFn.{succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) (fun (_x : AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) => α -> (UniformSpace.Completion.{u1} α _inst_1)) (AddMonoidHom.hasCoeToFun.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
-but is expected to have type
- forall (α : Type.{u1}) [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], DenseInducing.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (FunLike.coe.{succ u1, succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => UniformSpace.Completion.{u1} α _inst_1) _x) (AddHomClass.toFunLike.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddMonoidHomClass.toAddHomClass.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoidHom.addMonoidHomClass.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
-Case conversion may be inaccurate. Consider using '#align uniform_space.completion.dense_inducing_to_compl UniformSpace.Completion.denseInducing_toComplₓ'. -/
theorem denseInducing_toCompl : DenseInducing (toCompl : α → Completion α) :=
denseInducing_coe
#align uniform_space.completion.dense_inducing_to_compl UniformSpace.Completion.denseInducing_toCompl
@@ -271,12 +229,6 @@ variable [UniformSpace α] [AddGroup α] [UniformAddGroup α] [UniformSpace β]
open UniformSpace UniformSpace.Completion
-/- warning: add_monoid_hom.extension -> AddMonoidHom.extension is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))), (Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)) -> (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))), (Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f)) -> (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))))
-Case conversion may be inaccurate. Consider using '#align add_monoid_hom.extension AddMonoidHom.extensionₓ'. -/
/-- Extension to the completion of a continuous group hom. -/
def AddMonoidHom.extension [CompleteSpace β] [SeparatedSpace β] (f : α →+ β) (hf : Continuous f) :
Completion α →+ β :=
@@ -292,63 +244,33 @@ def AddMonoidHom.extension [CompleteSpace β] [SeparatedSpace β] (f : α →+
rw_mod_cast [extension_coe hf, extension_coe hf, extension_coe hf, f.map_add] }
#align add_monoid_hom.extension AddMonoidHom.extension
-/- warning: add_monoid_hom.extension_coe -> AddMonoidHom.extension_coe is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align add_monoid_hom.extension_coe AddMonoidHom.extension_coeₓ'. -/
theorem AddMonoidHom.extension_coe [CompleteSpace β] [SeparatedSpace β] (f : α →+ β)
(hf : Continuous f) (a : α) : f.extension hf a = f a :=
extension_coe (uniformContinuous_addMonoidHom_of_continuous hf) a
#align add_monoid_hom.extension_coe AddMonoidHom.extension_coe
-/- warning: add_monoid_hom.continuous_extension -> AddMonoidHom.continuous_extension is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)), Continuous.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => (UniformSpace.Completion.{u1} α _inst_1) -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHom.extension.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f hf))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f)), Continuous.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) (fun (_x : UniformSpace.Completion.{u1} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : UniformSpace.Completion.{u1} α _inst_1) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) (AddMonoidHom.extension.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f hf))
-Case conversion may be inaccurate. Consider using '#align add_monoid_hom.continuous_extension AddMonoidHom.continuous_extensionₓ'. -/
@[continuity]
theorem AddMonoidHom.continuous_extension [CompleteSpace β] [SeparatedSpace β] (f : α →+ β)
(hf : Continuous f) : Continuous (f.extension hf) :=
continuous_extension
#align add_monoid_hom.continuous_extension AddMonoidHom.continuous_extension
-/- warning: add_monoid_hom.completion -> AddMonoidHom.completion is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))), (Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)) -> (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6)))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))), (Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f)) -> (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u2} β _inst_4 _inst_5 _inst_6)))
-Case conversion may be inaccurate. Consider using '#align add_monoid_hom.completion AddMonoidHom.completionₓ'. -/
/-- Completion of a continuous group hom, as a group hom. -/
def AddMonoidHom.completion (f : α →+ β) (hf : Continuous f) : Completion α →+ Completion β :=
(toCompl.comp f).extension (continuous_toCompl.comp hf)
#align add_monoid_hom.completion AddMonoidHom.completion
-/- warning: add_monoid_hom.continuous_completion -> AddMonoidHom.continuous_completion is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)), Continuous.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (UniformSpace.toTopologicalSpace.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.uniformSpace.{u2} β _inst_4)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) (fun (_x : AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) => (UniformSpace.Completion.{u1} α _inst_1) -> (UniformSpace.Completion.{u2} β _inst_4)) (AddMonoidHom.hasCoeToFun.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) (AddMonoidHom.completion.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f hf))
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : UniformSpace.{u2} α] [_inst_2 : AddGroup.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u1} β] [_inst_5 : AddGroup.{u1} β] [_inst_6 : UniformAddGroup.{u1} β _inst_4 _inst_5] (f : AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (hf : Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} β _inst_4) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddZeroClass.toAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2)))) (AddZeroClass.toAdd.{u1} β (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))))) f)), Continuous.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.toTopologicalSpace.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.uniformSpace.{u2} α _inst_1)) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.uniformSpace.{u1} β _inst_4)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (fun (_x : UniformSpace.Completion.{u2} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : UniformSpace.Completion.{u2} α _inst_1) => UniformSpace.Completion.{u1} β _inst_4) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddZeroClass.toAdd.{u2} (UniformSpace.Completion.{u2} α _inst_1) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6)) (AddMonoidHom.addMonoidHomClass.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))))) (AddMonoidHom.completion.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f hf))
-Case conversion may be inaccurate. Consider using '#align add_monoid_hom.continuous_completion AddMonoidHom.continuous_completionₓ'. -/
@[continuity]
theorem AddMonoidHom.continuous_completion (f : α →+ β) (hf : Continuous f) :
Continuous (f.Completion hf : Completion α → Completion β) :=
ContinuousMap
#align add_monoid_hom.continuous_completion AddMonoidHom.continuous_completion
-/- warning: add_monoid_hom.completion_coe -> AddMonoidHom.completion_coe is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align add_monoid_hom.completion_coe AddMonoidHom.completion_coeₓ'. -/
theorem AddMonoidHom.completion_coe (f : α →+ β) (hf : Continuous f) (a : α) :
f.Completion hf a = f a :=
map_coe (uniformContinuous_addMonoidHom_of_continuous hf) a
#align add_monoid_hom.completion_coe AddMonoidHom.completion_coe
-/- warning: add_monoid_hom.completion_zero -> AddMonoidHom.completion_zero is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5], Eq.{max (succ u2) (succ u1)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) (AddMonoidHom.completion.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OfNat.ofNat.{max u2 u1} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) 0 (OfNat.mk.{max u2 u1} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) 0 (Zero.zero.{max u2 u1} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHom.hasZero.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))))))) (continuous_const.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (OfNat.ofNat.{u2} β 0 (OfNat.mk.{u2} β 0 (Zero.zero.{u2} β (AddZeroClass.toHasZero.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))))))))) (OfNat.ofNat.{max u2 u1} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) 0 (OfNat.mk.{max u2 u1} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) 0 (Zero.zero.{max u2 u1} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) (AddMonoidHom.hasZero.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))))))
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : UniformSpace.{u2} α] [_inst_2 : AddGroup.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u1} β] [_inst_5 : AddGroup.{u1} β] [_inst_6 : UniformAddGroup.{u1} β _inst_4 _inst_5], Eq.{max (succ u2) (succ u1)} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (AddMonoidHom.completion.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OfNat.ofNat.{max u2 u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) 0 (Zero.toOfNat0.{max u2 u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (instZeroAddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))))) (continuous_const.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} β _inst_4) ((AddZeroClass.toZero.{u1} β (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))).0))) (OfNat.ofNat.{max u2 u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) 0 (Zero.toOfNat0.{max u2 u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (instZeroAddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6)))))
-Case conversion may be inaccurate. Consider using '#align add_monoid_hom.completion_zero AddMonoidHom.completion_zeroₓ'. -/
theorem AddMonoidHom.completion_zero : (0 : α →+ β).Completion continuous_const = 0 :=
by
ext x
@@ -359,9 +281,6 @@ theorem AddMonoidHom.completion_zero : (0 : α →+ β).Completion continuous_co
simp [(0 : α →+ β).completion_coe continuous_const, coe_zero]
#align add_monoid_hom.completion_zero AddMonoidHom.completion_zero
-/- warning: add_monoid_hom.completion_add -> AddMonoidHom.completion_add is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align add_monoid_hom.completion_add AddMonoidHom.completion_addₓ'. -/
theorem AddMonoidHom.completion_add {γ : Type _} [AddCommGroup γ] [UniformSpace γ]
[UniformAddGroup γ] (f g : α →+ γ) (hf : Continuous f) (hg : Continuous g) :
(f + g).Completion (hf.add hg) = f.Completion hf + g.Completion hg :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -166,10 +166,8 @@ instance : SubNegMonoid (Completion α) :=
fun a b => by exact_mod_cast congr_arg coe (sub_eq_add_neg a b)
zsmul := (· • ·)
zsmul_zero' := fun a =>
- Completion.induction_on a (isClosed_eq continuous_map continuous_const) fun a =>
- by
- rw_mod_cast [zero_smul]
- rfl
+ Completion.induction_on a (isClosed_eq continuous_map continuous_const) fun a => by
+ rw_mod_cast [zero_smul]; rfl
zsmul_succ' := fun n a =>
Completion.induction_on a
(isClosed_eq continuous_map <| continuous_map₂ continuous_id continuous_map) fun a => by
@@ -186,11 +184,7 @@ instance : AddGroup (Completion α) :=
add_left_neg := fun a =>
Completion.induction_on a
(isClosed_eq (continuous_map₂ Completion.continuous_map continuous_id) continuous_const)
- fun a =>
- show -(a : Completion α) + a = 0
- by
- rw_mod_cast [add_left_neg]
- rfl }
+ fun a => show -(a : Completion α) + a = 0 by rw_mod_cast [add_left_neg]; rfl }
instance : UniformAddGroup (Completion α) :=
⟨uniformContinuous_map₂ Sub.sub⟩
@@ -256,9 +250,7 @@ instance : AddCommGroup (Completion α) :=
Completion.induction_on₂ a b
(isClosed_eq (continuous_map₂ continuous_fst continuous_snd)
(continuous_map₂ continuous_snd continuous_fst))
- fun x y => by
- change ↑x + ↑y = ↑y + ↑x
- rw [← coe_add, ← coe_add, add_comm] }
+ fun x y => by change ↑x + ↑y = ↑y + ↑x; rw [← coe_add, ← coe_add, add_comm] }
instance [Semiring R] [Module R α] [UniformContinuousConstSMul R α] : Module R (Completion α) :=
{ Completion.distribMulAction,
@@ -266,9 +258,7 @@ instance [Semiring R] [Module R α] [UniformContinuousConstSMul R α] : Module R
smul := (· • ·)
add_smul := fun a b =>
ext' (continuous_const_smul _) ((continuous_const_smul _).add (continuous_const_smul _))
- fun x => by
- norm_cast
- rw [add_smul] }
+ fun x => by norm_cast; rw [add_smul] }
end UniformAddCommGroup
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -303,10 +303,7 @@ def AddMonoidHom.extension [CompleteSpace β] [SeparatedSpace β] (f : α →+
#align add_monoid_hom.extension AddMonoidHom.extension
/- warning: add_monoid_hom.extension_coe -> AddMonoidHom.extension_coe is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)) (a : α), Eq.{succ u2} β (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => (UniformSpace.Completion.{u1} α _inst_1) -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHom.extension.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f hf) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) a)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f a)
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f)) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : UniformSpace.Completion.{u1} α _inst_1) => β) (UniformSpace.Completion.coe'.{u1} α _inst_1 a)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) (fun (_x : UniformSpace.Completion.{u1} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : UniformSpace.Completion.{u1} α _inst_1) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) (AddMonoidHom.extension.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f hf) (UniformSpace.Completion.coe'.{u1} α _inst_1 a)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f a)
+<too large>
Case conversion may be inaccurate. Consider using '#align add_monoid_hom.extension_coe AddMonoidHom.extension_coeₓ'. -/
theorem AddMonoidHom.extension_coe [CompleteSpace β] [SeparatedSpace β] (f : α →+ β)
(hf : Continuous f) (a : α) : f.extension hf a = f a :=
@@ -349,10 +346,7 @@ theorem AddMonoidHom.continuous_completion (f : α →+ β) (hf : Continuous f)
#align add_monoid_hom.continuous_completion AddMonoidHom.continuous_completion
/- warning: add_monoid_hom.completion_coe -> AddMonoidHom.completion_coe is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)) (a : α), Eq.{succ u2} (UniformSpace.Completion.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) (fun (_x : AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) => (UniformSpace.Completion.{u1} α _inst_1) -> (UniformSpace.Completion.{u2} β _inst_4)) (AddMonoidHom.hasCoeToFun.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) (AddMonoidHom.completion.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f hf) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) a)) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) β (UniformSpace.Completion.{u2} β _inst_4) (HasLiftT.mk.{succ u2, succ u2} β (UniformSpace.Completion.{u2} β _inst_4) (CoeTCₓ.coe.{succ u2, succ u2} β (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.hasCoeT.{u2} β _inst_4))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f a))
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : UniformSpace.{u2} α] [_inst_2 : AddGroup.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u1} β] [_inst_5 : AddGroup.{u1} β] [_inst_6 : UniformAddGroup.{u1} β _inst_4 _inst_5] (f : AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (hf : Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} β _inst_4) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddZeroClass.toAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2)))) (AddZeroClass.toAdd.{u1} β (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))))) f)) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : UniformSpace.Completion.{u2} α _inst_1) => UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.coe'.{u2} α _inst_1 a)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (fun (_x : UniformSpace.Completion.{u2} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : UniformSpace.Completion.{u2} α _inst_1) => UniformSpace.Completion.{u1} β _inst_4) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddZeroClass.toAdd.{u2} (UniformSpace.Completion.{u2} α _inst_1) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6)) (AddMonoidHom.addMonoidHomClass.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))))) (AddMonoidHom.completion.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f hf) (UniformSpace.Completion.coe'.{u2} α _inst_1 a)) (UniformSpace.Completion.coe'.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_4 (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddZeroClass.toAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2)))) (AddZeroClass.toAdd.{u1} β (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))))) f a))
+<too large>
Case conversion may be inaccurate. Consider using '#align add_monoid_hom.completion_coe AddMonoidHom.completion_coeₓ'. -/
theorem AddMonoidHom.completion_coe (f : α →+ β) (hf : Continuous f) (a : α) :
f.Completion hf a = f a :=
@@ -376,10 +370,7 @@ theorem AddMonoidHom.completion_zero : (0 : α →+ β).Completion continuous_co
#align add_monoid_hom.completion_zero AddMonoidHom.completion_zero
/- warning: add_monoid_hom.completion_add -> AddMonoidHom.completion_add is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] {γ : Type.{u2}} [_inst_7 : AddCommGroup.{u2} γ] [_inst_8 : UniformSpace.{u2} γ] [_inst_9 : UniformAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7)] (f : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (g : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (hf : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) f)) (hg : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) g)), Eq.{max (succ u2) (succ u1)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (instHAdd.{max u2 u1} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.hasAdd.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) f g) (Continuous.add.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddZeroClass.toHasAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (TopologicalAddGroup.to_continuousAdd.{u2} γ (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddCommGroup.toAddGroup.{u2} γ _inst_7) (UniformAddGroup.to_topologicalAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) f) (fun (x : α) => coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) g x) hf hg)) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (instHAdd.{max u2 u1} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.hasAdd.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addCommGroup.{u2} γ _inst_8 _inst_7 _inst_9)))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 f hf) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 g hg))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] {γ : Type.{u2}} [_inst_7 : AddCommGroup.{u2} γ] [_inst_8 : UniformSpace.{u2} γ] [_inst_9 : UniformAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7)] (f : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (g : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (hf : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) f)) (hg : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) g)), Eq.{max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (instHAdd.{max u1 u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.add.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) f g) (Continuous.add.{u2, u1} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (TopologicalAddGroup.toContinuousAdd.{u2} γ (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddCommGroup.toAddGroup.{u2} γ _inst_7) (UniformAddGroup.to_topologicalAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) f) (fun (x : α) => FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))))) g x) hf hg)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (instHAdd.{max u1 u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.add.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddCommGroupCompletion.{u2} γ _inst_8 _inst_7 _inst_9)))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 f hf) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 g hg))
+<too large>
Case conversion may be inaccurate. Consider using '#align add_monoid_hom.completion_add AddMonoidHom.completion_addₓ'. -/
theorem AddMonoidHom.completion_add {γ : Type _} [AddCommGroup γ] [UniformSpace γ]
[UniformAddGroup γ] (f g : α →+ γ) (hf : Continuous f) (hg : Continuous g) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/95a87616d63b3cb49d3fe678d416fbe9c4217bf4
@@ -379,7 +379,7 @@ theorem AddMonoidHom.completion_zero : (0 : α →+ β).Completion continuous_co
lean 3 declaration is
forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] {γ : Type.{u2}} [_inst_7 : AddCommGroup.{u2} γ] [_inst_8 : UniformSpace.{u2} γ] [_inst_9 : UniformAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7)] (f : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (g : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (hf : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) f)) (hg : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) g)), Eq.{max (succ u2) (succ u1)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (instHAdd.{max u2 u1} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.hasAdd.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) f g) (Continuous.add.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddZeroClass.toHasAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (TopologicalAddGroup.to_continuousAdd.{u2} γ (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddCommGroup.toAddGroup.{u2} γ _inst_7) (UniformAddGroup.to_topologicalAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) f) (fun (x : α) => coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) g x) hf hg)) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (instHAdd.{max u2 u1} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.hasAdd.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addCommGroup.{u2} γ _inst_8 _inst_7 _inst_9)))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 f hf) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 g hg))
but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] {γ : Type.{u2}} [_inst_7 : AddCommGroup.{u2} γ] [_inst_8 : UniformSpace.{u2} γ] [_inst_9 : UniformAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7)] (f : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (g : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (hf : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) f)) (hg : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) g)), Eq.{max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (instHAdd.{max u1 u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.add.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) f g) (Continuous.add.{u2, u1} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (TopologicalAddGroup.toContinuousAdd.{u2} γ (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddCommGroup.toAddGroup.{u2} γ _inst_7) (UniformAddGroup.to_topologicalAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) f) (fun (x : α) => FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))))) g x) hf hg)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (instHAdd.{max u1 u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.add.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddCommGroupCompletion.{u2} γ _inst_8 _inst_7 _inst_9)))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 f hf) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 g hg))
+ forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] {γ : Type.{u2}} [_inst_7 : AddCommGroup.{u2} γ] [_inst_8 : UniformSpace.{u2} γ] [_inst_9 : UniformAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7)] (f : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (g : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (hf : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) f)) (hg : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) g)), Eq.{max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (instHAdd.{max u1 u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.add.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) f g) (Continuous.add.{u2, u1} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (TopologicalAddGroup.toContinuousAdd.{u2} γ (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddCommGroup.toAddGroup.{u2} γ _inst_7) (UniformAddGroup.to_topologicalAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) f) (fun (x : α) => FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))))) g x) hf hg)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (instHAdd.{max u1 u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.add.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddCommGroupCompletion.{u2} γ _inst_8 _inst_7 _inst_9)))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 f hf) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 g hg))
Case conversion may be inaccurate. Consider using '#align add_monoid_hom.completion_add AddMonoidHom.completion_addₓ'. -/
theorem AddMonoidHom.completion_add {γ : Type _} [AddCommGroup γ] [UniformSpace γ]
[UniformAddGroup γ] (f g : α →+ γ) (hf : Continuous f) (hg : Continuous g) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/3180fab693e2cee3bff62675571264cb8778b212
@@ -224,7 +224,7 @@ def toCompl : α →+ Completion α where
lean 3 declaration is
forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (coeFn.{succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) (fun (_x : AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) => α -> (UniformSpace.Completion.{u1} α _inst_1)) (AddMonoidHom.hasCoeToFun.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (FunLike.coe.{succ u1, succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => UniformSpace.Completion.{u1} α _inst_1) _x) (AddHomClass.toFunLike.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddMonoidHomClass.toAddHomClass.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoidHom.addMonoidHomClass.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
+ forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (FunLike.coe.{succ u1, succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => UniformSpace.Completion.{u1} α _inst_1) _x) (AddHomClass.toFunLike.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddMonoidHomClass.toAddHomClass.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoidHom.addMonoidHomClass.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
Case conversion may be inaccurate. Consider using '#align uniform_space.completion.continuous_to_compl UniformSpace.Completion.continuous_toComplₓ'. -/
theorem continuous_toCompl : Continuous (toCompl : α → Completion α) :=
continuous_coe α
@@ -236,7 +236,7 @@ variable (α)
lean 3 declaration is
forall (α : Type.{u1}) [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], DenseInducing.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (coeFn.{succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) (fun (_x : AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) => α -> (UniformSpace.Completion.{u1} α _inst_1)) (AddMonoidHom.hasCoeToFun.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
but is expected to have type
- forall (α : Type.{u1}) [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], DenseInducing.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (FunLike.coe.{succ u1, succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => UniformSpace.Completion.{u1} α _inst_1) _x) (AddHomClass.toFunLike.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddMonoidHomClass.toAddHomClass.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoidHom.addMonoidHomClass.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
+ forall (α : Type.{u1}) [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], DenseInducing.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (FunLike.coe.{succ u1, succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => UniformSpace.Completion.{u1} α _inst_1) _x) (AddHomClass.toFunLike.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddMonoidHomClass.toAddHomClass.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoidHom.addMonoidHomClass.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
Case conversion may be inaccurate. Consider using '#align uniform_space.completion.dense_inducing_to_compl UniformSpace.Completion.denseInducing_toComplₓ'. -/
theorem denseInducing_toCompl : DenseInducing (toCompl : α → Completion α) :=
denseInducing_coe
@@ -285,7 +285,7 @@ open UniformSpace UniformSpace.Completion
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))), (Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)) -> (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))))
but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))), (Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f)) -> (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))))
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))), (Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f)) -> (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))))
Case conversion may be inaccurate. Consider using '#align add_monoid_hom.extension AddMonoidHom.extensionₓ'. -/
/-- Extension to the completion of a continuous group hom. -/
def AddMonoidHom.extension [CompleteSpace β] [SeparatedSpace β] (f : α →+ β) (hf : Continuous f) :
@@ -306,7 +306,7 @@ def AddMonoidHom.extension [CompleteSpace β] [SeparatedSpace β] (f : α →+
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)) (a : α), Eq.{succ u2} β (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => (UniformSpace.Completion.{u1} α _inst_1) -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHom.extension.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f hf) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) a)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f a)
but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f)) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : UniformSpace.Completion.{u1} α _inst_1) => β) (UniformSpace.Completion.coe'.{u1} α _inst_1 a)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) (fun (_x : UniformSpace.Completion.{u1} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : UniformSpace.Completion.{u1} α _inst_1) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) (AddMonoidHom.extension.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f hf) (UniformSpace.Completion.coe'.{u1} α _inst_1 a)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f a)
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f)) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : UniformSpace.Completion.{u1} α _inst_1) => β) (UniformSpace.Completion.coe'.{u1} α _inst_1 a)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) (fun (_x : UniformSpace.Completion.{u1} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : UniformSpace.Completion.{u1} α _inst_1) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) (AddMonoidHom.extension.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f hf) (UniformSpace.Completion.coe'.{u1} α _inst_1 a)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f a)
Case conversion may be inaccurate. Consider using '#align add_monoid_hom.extension_coe AddMonoidHom.extension_coeₓ'. -/
theorem AddMonoidHom.extension_coe [CompleteSpace β] [SeparatedSpace β] (f : α →+ β)
(hf : Continuous f) (a : α) : f.extension hf a = f a :=
@@ -317,7 +317,7 @@ theorem AddMonoidHom.extension_coe [CompleteSpace β] [SeparatedSpace β] (f :
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)), Continuous.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => (UniformSpace.Completion.{u1} α _inst_1) -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHom.extension.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f hf))
but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f)), Continuous.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) (fun (_x : UniformSpace.Completion.{u1} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : UniformSpace.Completion.{u1} α _inst_1) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) (AddMonoidHom.extension.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f hf))
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f)), Continuous.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) (fun (_x : UniformSpace.Completion.{u1} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : UniformSpace.Completion.{u1} α _inst_1) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) (AddMonoidHom.extension.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f hf))
Case conversion may be inaccurate. Consider using '#align add_monoid_hom.continuous_extension AddMonoidHom.continuous_extensionₓ'. -/
@[continuity]
theorem AddMonoidHom.continuous_extension [CompleteSpace β] [SeparatedSpace β] (f : α →+ β)
@@ -329,7 +329,7 @@ theorem AddMonoidHom.continuous_extension [CompleteSpace β] [SeparatedSpace β]
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))), (Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)) -> (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6)))
but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))), (Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f)) -> (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u2} β _inst_4 _inst_5 _inst_6)))
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))), (Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f)) -> (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u2} β _inst_4 _inst_5 _inst_6)))
Case conversion may be inaccurate. Consider using '#align add_monoid_hom.completion AddMonoidHom.completionₓ'. -/
/-- Completion of a continuous group hom, as a group hom. -/
def AddMonoidHom.completion (f : α →+ β) (hf : Continuous f) : Completion α →+ Completion β :=
@@ -340,7 +340,7 @@ def AddMonoidHom.completion (f : α →+ β) (hf : Continuous f) : Completion α
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)), Continuous.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (UniformSpace.toTopologicalSpace.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.uniformSpace.{u2} β _inst_4)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) (fun (_x : AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) => (UniformSpace.Completion.{u1} α _inst_1) -> (UniformSpace.Completion.{u2} β _inst_4)) (AddMonoidHom.hasCoeToFun.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) (AddMonoidHom.completion.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f hf))
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : UniformSpace.{u2} α] [_inst_2 : AddGroup.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u1} β] [_inst_5 : AddGroup.{u1} β] [_inst_6 : UniformAddGroup.{u1} β _inst_4 _inst_5] (f : AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (hf : Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} β _inst_4) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddZeroClass.toAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2)))) (AddZeroClass.toAdd.{u1} β (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))))) f)), Continuous.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.toTopologicalSpace.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.uniformSpace.{u2} α _inst_1)) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.uniformSpace.{u1} β _inst_4)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (fun (_x : UniformSpace.Completion.{u2} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : UniformSpace.Completion.{u2} α _inst_1) => UniformSpace.Completion.{u1} β _inst_4) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddZeroClass.toAdd.{u2} (UniformSpace.Completion.{u2} α _inst_1) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6)) (AddMonoidHom.addMonoidHomClass.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))))) (AddMonoidHom.completion.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f hf))
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : UniformSpace.{u2} α] [_inst_2 : AddGroup.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u1} β] [_inst_5 : AddGroup.{u1} β] [_inst_6 : UniformAddGroup.{u1} β _inst_4 _inst_5] (f : AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (hf : Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} β _inst_4) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddZeroClass.toAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2)))) (AddZeroClass.toAdd.{u1} β (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))))) f)), Continuous.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.toTopologicalSpace.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.uniformSpace.{u2} α _inst_1)) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.uniformSpace.{u1} β _inst_4)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (fun (_x : UniformSpace.Completion.{u2} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : UniformSpace.Completion.{u2} α _inst_1) => UniformSpace.Completion.{u1} β _inst_4) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddZeroClass.toAdd.{u2} (UniformSpace.Completion.{u2} α _inst_1) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6)) (AddMonoidHom.addMonoidHomClass.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))))) (AddMonoidHom.completion.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f hf))
Case conversion may be inaccurate. Consider using '#align add_monoid_hom.continuous_completion AddMonoidHom.continuous_completionₓ'. -/
@[continuity]
theorem AddMonoidHom.continuous_completion (f : α →+ β) (hf : Continuous f) :
@@ -352,7 +352,7 @@ theorem AddMonoidHom.continuous_completion (f : α →+ β) (hf : Continuous f)
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)) (a : α), Eq.{succ u2} (UniformSpace.Completion.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) (fun (_x : AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) => (UniformSpace.Completion.{u1} α _inst_1) -> (UniformSpace.Completion.{u2} β _inst_4)) (AddMonoidHom.hasCoeToFun.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) (AddMonoidHom.completion.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f hf) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) a)) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) β (UniformSpace.Completion.{u2} β _inst_4) (HasLiftT.mk.{succ u2, succ u2} β (UniformSpace.Completion.{u2} β _inst_4) (CoeTCₓ.coe.{succ u2, succ u2} β (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.hasCoeT.{u2} β _inst_4))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f a))
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : UniformSpace.{u2} α] [_inst_2 : AddGroup.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u1} β] [_inst_5 : AddGroup.{u1} β] [_inst_6 : UniformAddGroup.{u1} β _inst_4 _inst_5] (f : AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (hf : Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} β _inst_4) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddZeroClass.toAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2)))) (AddZeroClass.toAdd.{u1} β (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))))) f)) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : UniformSpace.Completion.{u2} α _inst_1) => UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.coe'.{u2} α _inst_1 a)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (fun (_x : UniformSpace.Completion.{u2} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : UniformSpace.Completion.{u2} α _inst_1) => UniformSpace.Completion.{u1} β _inst_4) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddZeroClass.toAdd.{u2} (UniformSpace.Completion.{u2} α _inst_1) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6)) (AddMonoidHom.addMonoidHomClass.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))))) (AddMonoidHom.completion.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f hf) (UniformSpace.Completion.coe'.{u2} α _inst_1 a)) (UniformSpace.Completion.coe'.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) _inst_4 (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddZeroClass.toAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2)))) (AddZeroClass.toAdd.{u1} β (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))))) f a))
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : UniformSpace.{u2} α] [_inst_2 : AddGroup.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u1} β] [_inst_5 : AddGroup.{u1} β] [_inst_6 : UniformAddGroup.{u1} β _inst_4 _inst_5] (f : AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (hf : Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} β _inst_4) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddZeroClass.toAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2)))) (AddZeroClass.toAdd.{u1} β (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))))) f)) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : UniformSpace.Completion.{u2} α _inst_1) => UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.coe'.{u2} α _inst_1 a)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (fun (_x : UniformSpace.Completion.{u2} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : UniformSpace.Completion.{u2} α _inst_1) => UniformSpace.Completion.{u1} β _inst_4) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddZeroClass.toAdd.{u2} (UniformSpace.Completion.{u2} α _inst_1) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6)) (AddMonoidHom.addMonoidHomClass.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))))) (AddMonoidHom.completion.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f hf) (UniformSpace.Completion.coe'.{u2} α _inst_1 a)) (UniformSpace.Completion.coe'.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_4 (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddZeroClass.toAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2)))) (AddZeroClass.toAdd.{u1} β (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))))) f a))
Case conversion may be inaccurate. Consider using '#align add_monoid_hom.completion_coe AddMonoidHom.completion_coeₓ'. -/
theorem AddMonoidHom.completion_coe (f : α →+ β) (hf : Continuous f) (a : α) :
f.Completion hf a = f a :=
@@ -379,7 +379,7 @@ theorem AddMonoidHom.completion_zero : (0 : α →+ β).Completion continuous_co
lean 3 declaration is
forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] {γ : Type.{u2}} [_inst_7 : AddCommGroup.{u2} γ] [_inst_8 : UniformSpace.{u2} γ] [_inst_9 : UniformAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7)] (f : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (g : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (hf : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) f)) (hg : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) g)), Eq.{max (succ u2) (succ u1)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (instHAdd.{max u2 u1} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.hasAdd.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) f g) (Continuous.add.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddZeroClass.toHasAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (TopologicalAddGroup.to_continuousAdd.{u2} γ (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddCommGroup.toAddGroup.{u2} γ _inst_7) (UniformAddGroup.to_topologicalAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) f) (fun (x : α) => coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) g x) hf hg)) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (instHAdd.{max u2 u1} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.hasAdd.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addCommGroup.{u2} γ _inst_8 _inst_7 _inst_9)))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 f hf) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 g hg))
but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] {γ : Type.{u2}} [_inst_7 : AddCommGroup.{u2} γ] [_inst_8 : UniformSpace.{u2} γ] [_inst_9 : UniformAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7)] (f : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (g : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (hf : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) f)) (hg : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) g)), Eq.{max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (instHAdd.{max u1 u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.add.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) f g) (Continuous.add.{u2, u1} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (TopologicalAddGroup.toContinuousAdd.{u2} γ (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddCommGroup.toAddGroup.{u2} γ _inst_7) (UniformAddGroup.to_topologicalAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) f) (fun (x : α) => FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))))) g x) hf hg)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (instHAdd.{max u1 u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.add.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddCommGroupCompletion.{u2} γ _inst_8 _inst_7 _inst_9)))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 f hf) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 g hg))
+ forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] {γ : Type.{u2}} [_inst_7 : AddCommGroup.{u2} γ] [_inst_8 : UniformSpace.{u2} γ] [_inst_9 : UniformAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7)] (f : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (g : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (hf : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) f)) (hg : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) g)), Eq.{max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (instHAdd.{max u1 u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.add.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) f g) (Continuous.add.{u2, u1} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (TopologicalAddGroup.toContinuousAdd.{u2} γ (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddCommGroup.toAddGroup.{u2} γ _inst_7) (UniformAddGroup.to_topologicalAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) f) (fun (x : α) => FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))))) g x) hf hg)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (instHAdd.{max u1 u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.add.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddCommGroupCompletion.{u2} γ _inst_8 _inst_7 _inst_9)))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 f hf) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 g hg))
Case conversion may be inaccurate. Consider using '#align add_monoid_hom.completion_add AddMonoidHom.completion_addₓ'. -/
theorem AddMonoidHom.completion_add {γ : Type _} [AddCommGroup γ] [UniformSpace γ]
[UniformAddGroup γ] (f g : α →+ γ) (hf : Continuous f) (hg : Continuous g) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/21e3562c5e12d846c7def5eff8cdbc520d7d4936
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Patrick Massot, Johannes Hölzl
! This file was ported from Lean 3 source module topology.algebra.group_completion
-! leanprover-community/mathlib commit a148d797a1094ab554ad4183a4ad6f130358ef64
+! leanprover-community/mathlib commit f47581155c818e6361af4e4fda60d27d020c226b
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -15,6 +15,9 @@ import Mathbin.Topology.UniformSpace.Completion
/-!
# Completion of topological groups:
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
This files endows the completion of a topological abelian group with a group structure.
More precisely the instance `uniform_space.completion.add_group` builds an abelian group structure
on the completion of an abelian group endowed with a compatible uniform structure.
mathlib commit https://github.com/leanprover-community/mathlib/commit/38f16f960f5006c6c0c2bac7b0aba5273188f4e5
@@ -221,7 +221,7 @@ def toCompl : α →+ Completion α where
lean 3 declaration is
forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (coeFn.{succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) (fun (_x : AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) => α -> (UniformSpace.Completion.{u1} α _inst_1)) (AddMonoidHom.hasCoeToFun.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instUniformSpaceCompletion.{u1} α _inst_1)) (FunLike.coe.{succ u1, succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => UniformSpace.Completion.{u1} α _inst_1) _x) (AddHomClass.toFunLike.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddMonoidHomClass.toAddHomClass.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoidHom.addMonoidHomClass.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
+ forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (FunLike.coe.{succ u1, succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => UniformSpace.Completion.{u1} α _inst_1) _x) (AddHomClass.toFunLike.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddMonoidHomClass.toAddHomClass.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoidHom.addMonoidHomClass.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
Case conversion may be inaccurate. Consider using '#align uniform_space.completion.continuous_to_compl UniformSpace.Completion.continuous_toComplₓ'. -/
theorem continuous_toCompl : Continuous (toCompl : α → Completion α) :=
continuous_coe α
@@ -233,7 +233,7 @@ variable (α)
lean 3 declaration is
forall (α : Type.{u1}) [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], DenseInducing.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (coeFn.{succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) (fun (_x : AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) => α -> (UniformSpace.Completion.{u1} α _inst_1)) (AddMonoidHom.hasCoeToFun.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
but is expected to have type
- forall (α : Type.{u1}) [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], DenseInducing.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instUniformSpaceCompletion.{u1} α _inst_1)) (FunLike.coe.{succ u1, succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => UniformSpace.Completion.{u1} α _inst_1) _x) (AddHomClass.toFunLike.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddMonoidHomClass.toAddHomClass.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoidHom.addMonoidHomClass.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
+ forall (α : Type.{u1}) [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], DenseInducing.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (FunLike.coe.{succ u1, succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => UniformSpace.Completion.{u1} α _inst_1) _x) (AddHomClass.toFunLike.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddMonoidHomClass.toAddHomClass.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoidHom.addMonoidHomClass.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
Case conversion may be inaccurate. Consider using '#align uniform_space.completion.dense_inducing_to_compl UniformSpace.Completion.denseInducing_toComplₓ'. -/
theorem denseInducing_toCompl : DenseInducing (toCompl : α → Completion α) :=
denseInducing_coe
@@ -314,7 +314,7 @@ theorem AddMonoidHom.extension_coe [CompleteSpace β] [SeparatedSpace β] (f :
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)), Continuous.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => (UniformSpace.Completion.{u1} α _inst_1) -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHom.extension.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f hf))
but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f)), Continuous.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instUniformSpaceCompletion.{u1} α _inst_1)) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) (fun (_x : UniformSpace.Completion.{u1} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : UniformSpace.Completion.{u1} α _inst_1) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) (AddMonoidHom.extension.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f hf))
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f)), Continuous.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) (fun (_x : UniformSpace.Completion.{u1} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : UniformSpace.Completion.{u1} α _inst_1) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) (AddMonoidHom.extension.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f hf))
Case conversion may be inaccurate. Consider using '#align add_monoid_hom.continuous_extension AddMonoidHom.continuous_extensionₓ'. -/
@[continuity]
theorem AddMonoidHom.continuous_extension [CompleteSpace β] [SeparatedSpace β] (f : α →+ β)
@@ -337,7 +337,7 @@ def AddMonoidHom.completion (f : α →+ β) (hf : Continuous f) : Completion α
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)), Continuous.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (UniformSpace.toTopologicalSpace.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.uniformSpace.{u2} β _inst_4)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) (fun (_x : AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) => (UniformSpace.Completion.{u1} α _inst_1) -> (UniformSpace.Completion.{u2} β _inst_4)) (AddMonoidHom.hasCoeToFun.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) (AddMonoidHom.completion.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f hf))
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : UniformSpace.{u2} α] [_inst_2 : AddGroup.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u1} β] [_inst_5 : AddGroup.{u1} β] [_inst_6 : UniformAddGroup.{u1} β _inst_4 _inst_5] (f : AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (hf : Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} β _inst_4) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddZeroClass.toAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2)))) (AddZeroClass.toAdd.{u1} β (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))))) f)), Continuous.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.toTopologicalSpace.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instUniformSpaceCompletion.{u2} α _inst_1)) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instUniformSpaceCompletion.{u1} β _inst_4)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (fun (_x : UniformSpace.Completion.{u2} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : UniformSpace.Completion.{u2} α _inst_1) => UniformSpace.Completion.{u1} β _inst_4) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddZeroClass.toAdd.{u2} (UniformSpace.Completion.{u2} α _inst_1) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6)) (AddMonoidHom.addMonoidHomClass.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))))) (AddMonoidHom.completion.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f hf))
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : UniformSpace.{u2} α] [_inst_2 : AddGroup.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u1} β] [_inst_5 : AddGroup.{u1} β] [_inst_6 : UniformAddGroup.{u1} β _inst_4 _inst_5] (f : AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (hf : Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} β _inst_4) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddZeroClass.toAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2)))) (AddZeroClass.toAdd.{u1} β (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))))) f)), Continuous.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.toTopologicalSpace.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.uniformSpace.{u2} α _inst_1)) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.uniformSpace.{u1} β _inst_4)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (fun (_x : UniformSpace.Completion.{u2} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : UniformSpace.Completion.{u2} α _inst_1) => UniformSpace.Completion.{u1} β _inst_4) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddZeroClass.toAdd.{u2} (UniformSpace.Completion.{u2} α _inst_1) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6)) (AddMonoidHom.addMonoidHomClass.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))))) (AddMonoidHom.completion.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f hf))
Case conversion may be inaccurate. Consider using '#align add_monoid_hom.continuous_completion AddMonoidHom.continuous_completionₓ'. -/
@[continuity]
theorem AddMonoidHom.continuous_completion (f : α →+ β) (hf : Continuous f) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/38f16f960f5006c6c0c2bac7b0aba5273188f4e5
@@ -376,7 +376,7 @@ theorem AddMonoidHom.completion_zero : (0 : α →+ β).Completion continuous_co
lean 3 declaration is
forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] {γ : Type.{u2}} [_inst_7 : AddCommGroup.{u2} γ] [_inst_8 : UniformSpace.{u2} γ] [_inst_9 : UniformAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7)] (f : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (g : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (hf : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) f)) (hg : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) g)), Eq.{max (succ u2) (succ u1)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (instHAdd.{max u2 u1} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.hasAdd.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) f g) (Continuous.add.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddZeroClass.toHasAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (TopologicalAddGroup.to_continuousAdd.{u2} γ (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddCommGroup.toAddGroup.{u2} γ _inst_7) (UniformAddGroup.to_topologicalAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) f) (fun (x : α) => coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) g x) hf hg)) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (instHAdd.{max u2 u1} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.hasAdd.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addCommGroup.{u2} γ _inst_8 _inst_7 _inst_9)))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 f hf) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 g hg))
but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] {γ : Type.{u2}} [_inst_7 : AddCommGroup.{u2} γ] [_inst_8 : UniformSpace.{u2} γ] [_inst_9 : UniformAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7)] (f : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (g : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (hf : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) f)) (hg : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) g)), Eq.{max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (instHAdd.{max u1 u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.add.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) f g) (Continuous.add.{u2, u1} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (TopologicalAddGroup.toContinuousAdd.{u2} γ (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddCommGroup.toAddGroup.{u2} γ _inst_7) (UniformAddGroup.to_topologicalAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) f) (fun (x : α) => FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))))) g x) hf hg)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (instHAdd.{max u1 u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.add.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddCommGroupCompletion.{u2} γ _inst_8 _inst_7 _inst_9)))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 f hf) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 g hg))
+ forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] {γ : Type.{u2}} [_inst_7 : AddCommGroup.{u2} γ] [_inst_8 : UniformSpace.{u2} γ] [_inst_9 : UniformAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7)] (f : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (g : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (hf : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) f)) (hg : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) g)), Eq.{max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (instHAdd.{max u1 u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.add.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) f g) (Continuous.add.{u2, u1} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (TopologicalAddGroup.toContinuousAdd.{u2} γ (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddCommGroup.toAddGroup.{u2} γ _inst_7) (UniformAddGroup.to_topologicalAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) f) (fun (x : α) => FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))))) g x) hf hg)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (instHAdd.{max u1 u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.add.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddCommGroupCompletion.{u2} γ _inst_8 _inst_7 _inst_9)))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 f hf) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 g hg))
Case conversion may be inaccurate. Consider using '#align add_monoid_hom.completion_add AddMonoidHom.completion_addₓ'. -/
theorem AddMonoidHom.completion_add {γ : Type _} [AddCommGroup γ] [UniformSpace γ]
[UniformAddGroup γ] (f g : α →+ γ) (hf : Continuous f) (hg : Continuous g) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/3b267e70a936eebb21ab546f49a8df34dd300b25
@@ -56,6 +56,12 @@ instance [Add α] : Add (Completion α) :=
instance [Sub α] : Sub (Completion α) :=
⟨Completion.map₂ Sub.sub⟩
+/- warning: uniform_space.completion.coe_zero -> UniformSpace.Completion.coe_zero is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : Zero.{u1} α], Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_1) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) (OfNat.ofNat.{u1} α 0 (OfNat.mk.{u1} α 0 (Zero.zero.{u1} α _inst_2)))) (OfNat.ofNat.{u1} (UniformSpace.Completion.{u1} α _inst_1) 0 (OfNat.mk.{u1} (UniformSpace.Completion.{u1} α _inst_1) 0 (Zero.zero.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasZero.{u1} α _inst_1 _inst_2))))
+but is expected to have type
+ forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : Zero.{u1} α], Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.coe'.{u1} α _inst_1 (OfNat.ofNat.{u1} α 0 (Zero.toOfNat0.{u1} α _inst_2))) (OfNat.ofNat.{u1} (UniformSpace.Completion.{u1} α _inst_1) 0 (Zero.toOfNat0.{u1} (UniformSpace.Completion.{u1} α _inst_1) (instZeroCompletion.{u1} α _inst_1 _inst_2)))
+Case conversion may be inaccurate. Consider using '#align uniform_space.completion.coe_zero UniformSpace.Completion.coe_zeroₓ'. -/
@[norm_cast]
theorem UniformSpace.Completion.coe_zero [Zero α] : ((0 : α) : Completion α) = 0 :=
rfl
@@ -84,16 +90,34 @@ section UniformAddGroup
variable [UniformSpace α] [AddGroup α] [UniformAddGroup α]
+/- warning: uniform_space.completion.coe_neg -> UniformSpace.Completion.coe_neg is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] (a : α), Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_1) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) (Neg.neg.{u1} α (SubNegMonoid.toHasNeg.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)) a)) (Neg.neg.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasNeg.{u1} α _inst_1 (SubNegMonoid.toHasNeg.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) a))
+but is expected to have type
+ forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] (a : α), Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.coe'.{u1} α _inst_1 (Neg.neg.{u1} α (NegZeroClass.toNeg.{u1} α (SubNegZeroMonoid.toNegZeroClass.{u1} α (SubtractionMonoid.toSubNegZeroMonoid.{u1} α (AddGroup.toSubtractionMonoid.{u1} α _inst_2)))) a)) (Neg.neg.{u1} (UniformSpace.Completion.{u1} α _inst_1) (instNegCompletion.{u1} α _inst_1 (NegZeroClass.toNeg.{u1} α (SubNegZeroMonoid.toNegZeroClass.{u1} α (SubtractionMonoid.toSubNegZeroMonoid.{u1} α (AddGroup.toSubtractionMonoid.{u1} α _inst_2))))) (UniformSpace.Completion.coe'.{u1} α _inst_1 a))
+Case conversion may be inaccurate. Consider using '#align uniform_space.completion.coe_neg UniformSpace.Completion.coe_negₓ'. -/
@[norm_cast]
theorem coe_neg (a : α) : ((-a : α) : Completion α) = -a :=
(map_coe uniformContinuous_neg a).symm
#align uniform_space.completion.coe_neg UniformSpace.Completion.coe_neg
+/- warning: uniform_space.completion.coe_sub -> UniformSpace.Completion.coe_sub is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] (a : α) (b : α), Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_1) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) (HSub.hSub.{u1, u1, u1} α α α (instHSub.{u1} α (SubNegMonoid.toHasSub.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) a b)) (HSub.hSub.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u1} α _inst_1) (instHSub.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasSub.{u1} α _inst_1 (SubNegMonoid.toHasSub.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) a) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) b))
+but is expected to have type
+ forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] (a : α) (b : α), Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.coe'.{u1} α _inst_1 (HSub.hSub.{u1, u1, u1} α α α (instHSub.{u1} α (SubNegMonoid.toSub.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) a b)) (HSub.hSub.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u1} α _inst_1) (instHSub.{u1} (UniformSpace.Completion.{u1} α _inst_1) (instSubCompletion.{u1} α _inst_1 (SubNegMonoid.toSub.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (UniformSpace.Completion.coe'.{u1} α _inst_1 a) (UniformSpace.Completion.coe'.{u1} α _inst_1 b))
+Case conversion may be inaccurate. Consider using '#align uniform_space.completion.coe_sub UniformSpace.Completion.coe_subₓ'. -/
@[norm_cast]
theorem coe_sub (a b : α) : ((a - b : α) : Completion α) = a - b :=
(map₂_coe_coe a b Sub.sub uniformContinuous_sub).symm
#align uniform_space.completion.coe_sub UniformSpace.Completion.coe_sub
+/- warning: uniform_space.completion.coe_add -> UniformSpace.Completion.coe_add is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] (a : α) (b : α), Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_1) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) (HAdd.hAdd.{u1, u1, u1} α α α (instHAdd.{u1} α (AddZeroClass.toHasAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))))) a b)) (HAdd.hAdd.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u1} α _inst_1) (instHAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasAdd.{u1} α _inst_1 (AddZeroClass.toHasAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) a) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) b))
+but is expected to have type
+ forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] (a : α) (b : α), Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.coe'.{u1} α _inst_1 (HAdd.hAdd.{u1, u1, u1} α α α (instHAdd.{u1} α (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))))) a b)) (HAdd.hAdd.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u1} α _inst_1) (instHAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (instAddCompletion.{u1} α _inst_1 (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))))) (UniformSpace.Completion.coe'.{u1} α _inst_1 a) (UniformSpace.Completion.coe'.{u1} α _inst_1 b))
+Case conversion may be inaccurate. Consider using '#align uniform_space.completion.coe_add UniformSpace.Completion.coe_addₓ'. -/
@[norm_cast]
theorem coe_add (a b : α) : ((a + b : α) : Completion α) = a + b :=
(map₂_coe_coe a b (· + ·) uniformContinuous_add).symm
@@ -179,6 +203,12 @@ instance {M} [Monoid M] [DistribMulAction M α] [UniformContinuousConstSMul M α
fun a b => by simp only [← coe_add, ← coe_smul, smul_add]
smul_zero := fun r => by rw [← coe_zero, ← coe_smul, smul_zero r] }
+/- warning: uniform_space.completion.to_compl -> UniformSpace.Completion.toCompl is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))
+but is expected to have type
+ forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))
+Case conversion may be inaccurate. Consider using '#align uniform_space.completion.to_compl UniformSpace.Completion.toComplₓ'. -/
/-- The map from a group to its completion as a group hom. -/
@[simps]
def toCompl : α →+ Completion α where
@@ -187,12 +217,24 @@ def toCompl : α →+ Completion α where
map_zero' := coe_zero
#align uniform_space.completion.to_compl UniformSpace.Completion.toCompl
+/- warning: uniform_space.completion.continuous_to_compl -> UniformSpace.Completion.continuous_toCompl is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (coeFn.{succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) (fun (_x : AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) => α -> (UniformSpace.Completion.{u1} α _inst_1)) (AddMonoidHom.hasCoeToFun.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
+but is expected to have type
+ forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instUniformSpaceCompletion.{u1} α _inst_1)) (FunLike.coe.{succ u1, succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => UniformSpace.Completion.{u1} α _inst_1) _x) (AddHomClass.toFunLike.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddMonoidHomClass.toAddHomClass.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoidHom.addMonoidHomClass.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
+Case conversion may be inaccurate. Consider using '#align uniform_space.completion.continuous_to_compl UniformSpace.Completion.continuous_toComplₓ'. -/
theorem continuous_toCompl : Continuous (toCompl : α → Completion α) :=
continuous_coe α
#align uniform_space.completion.continuous_to_compl UniformSpace.Completion.continuous_toCompl
variable (α)
+/- warning: uniform_space.completion.dense_inducing_to_compl -> UniformSpace.Completion.denseInducing_toCompl is a dubious translation:
+lean 3 declaration is
+ forall (α : Type.{u1}) [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], DenseInducing.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (coeFn.{succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) (fun (_x : AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) => α -> (UniformSpace.Completion.{u1} α _inst_1)) (AddMonoidHom.hasCoeToFun.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
+but is expected to have type
+ forall (α : Type.{u1}) [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2], DenseInducing.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instUniformSpaceCompletion.{u1} α _inst_1)) (FunLike.coe.{succ u1, succ u1, succ u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => UniformSpace.Completion.{u1} α _inst_1) _x) (AddHomClass.toFunLike.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddMonoidHomClass.toAddHomClass.{u1, u1, u1} (AddMonoidHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoidHom.addMonoidHomClass.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))))) (UniformSpace.Completion.toCompl.{u1} α _inst_1 _inst_2 _inst_3))
+Case conversion may be inaccurate. Consider using '#align uniform_space.completion.dense_inducing_to_compl UniformSpace.Completion.denseInducing_toComplₓ'. -/
theorem denseInducing_toCompl : DenseInducing (toCompl : α → Completion α) :=
denseInducing_coe
#align uniform_space.completion.dense_inducing_to_compl UniformSpace.Completion.denseInducing_toCompl
@@ -236,6 +278,12 @@ variable [UniformSpace α] [AddGroup α] [UniformAddGroup α] [UniformSpace β]
open UniformSpace UniformSpace.Completion
+/- warning: add_monoid_hom.extension -> AddMonoidHom.extension is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))), (Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)) -> (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))))
+but is expected to have type
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))), (Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f)) -> (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))))
+Case conversion may be inaccurate. Consider using '#align add_monoid_hom.extension AddMonoidHom.extensionₓ'. -/
/-- Extension to the completion of a continuous group hom. -/
def AddMonoidHom.extension [CompleteSpace β] [SeparatedSpace β] (f : α →+ β) (hf : Continuous f) :
Completion α →+ β :=
@@ -251,33 +299,69 @@ def AddMonoidHom.extension [CompleteSpace β] [SeparatedSpace β] (f : α →+
rw_mod_cast [extension_coe hf, extension_coe hf, extension_coe hf, f.map_add] }
#align add_monoid_hom.extension AddMonoidHom.extension
+/- warning: add_monoid_hom.extension_coe -> AddMonoidHom.extension_coe is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)) (a : α), Eq.{succ u2} β (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => (UniformSpace.Completion.{u1} α _inst_1) -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHom.extension.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f hf) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) a)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f a)
+but is expected to have type
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f)) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : UniformSpace.Completion.{u1} α _inst_1) => β) (UniformSpace.Completion.coe'.{u1} α _inst_1 a)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) (fun (_x : UniformSpace.Completion.{u1} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : UniformSpace.Completion.{u1} α _inst_1) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) (AddMonoidHom.extension.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f hf) (UniformSpace.Completion.coe'.{u1} α _inst_1 a)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f a)
+Case conversion may be inaccurate. Consider using '#align add_monoid_hom.extension_coe AddMonoidHom.extension_coeₓ'. -/
theorem AddMonoidHom.extension_coe [CompleteSpace β] [SeparatedSpace β] (f : α →+ β)
(hf : Continuous f) (a : α) : f.extension hf a = f a :=
extension_coe (uniformContinuous_addMonoidHom_of_continuous hf) a
#align add_monoid_hom.extension_coe AddMonoidHom.extension_coe
+/- warning: add_monoid_hom.continuous_extension -> AddMonoidHom.continuous_extension is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)), Continuous.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => (UniformSpace.Completion.{u1} α _inst_1) -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHom.extension.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f hf))
+but is expected to have type
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] [_inst_7 : CompleteSpace.{u2} β _inst_4] [_inst_8 : SeparatedSpace.{u2} β _inst_4] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f)), Continuous.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instUniformSpaceCompletion.{u1} α _inst_1)) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) (fun (_x : UniformSpace.Completion.{u1} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : UniformSpace.Completion.{u1} α _inst_1) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} α _inst_1) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) β (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) (AddMonoidHom.extension.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f hf))
+Case conversion may be inaccurate. Consider using '#align add_monoid_hom.continuous_extension AddMonoidHom.continuous_extensionₓ'. -/
@[continuity]
theorem AddMonoidHom.continuous_extension [CompleteSpace β] [SeparatedSpace β] (f : α →+ β)
(hf : Continuous f) : Continuous (f.extension hf) :=
continuous_extension
#align add_monoid_hom.continuous_extension AddMonoidHom.continuous_extension
+/- warning: add_monoid_hom.completion -> AddMonoidHom.completion is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))), (Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)) -> (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6)))
+but is expected to have type
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))), (Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))))) f)) -> (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u2} β _inst_4 _inst_5 _inst_6)))
+Case conversion may be inaccurate. Consider using '#align add_monoid_hom.completion AddMonoidHom.completionₓ'. -/
/-- Completion of a continuous group hom, as a group hom. -/
def AddMonoidHom.completion (f : α →+ β) (hf : Continuous f) : Completion α →+ Completion β :=
(toCompl.comp f).extension (continuous_toCompl.comp hf)
#align add_monoid_hom.completion AddMonoidHom.completion
+/- warning: add_monoid_hom.continuous_completion -> AddMonoidHom.continuous_completion is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)), Continuous.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.uniformSpace.{u1} α _inst_1)) (UniformSpace.toTopologicalSpace.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.uniformSpace.{u2} β _inst_4)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) (fun (_x : AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) => (UniformSpace.Completion.{u1} α _inst_1) -> (UniformSpace.Completion.{u2} β _inst_4)) (AddMonoidHom.hasCoeToFun.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) (AddMonoidHom.completion.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f hf))
+but is expected to have type
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : UniformSpace.{u2} α] [_inst_2 : AddGroup.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u1} β] [_inst_5 : AddGroup.{u1} β] [_inst_6 : UniformAddGroup.{u1} β _inst_4 _inst_5] (f : AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (hf : Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} β _inst_4) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddZeroClass.toAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2)))) (AddZeroClass.toAdd.{u1} β (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))))) f)), Continuous.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.toTopologicalSpace.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instUniformSpaceCompletion.{u2} α _inst_1)) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instUniformSpaceCompletion.{u1} β _inst_4)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (fun (_x : UniformSpace.Completion.{u2} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : UniformSpace.Completion.{u2} α _inst_1) => UniformSpace.Completion.{u1} β _inst_4) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddZeroClass.toAdd.{u2} (UniformSpace.Completion.{u2} α _inst_1) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6)) (AddMonoidHom.addMonoidHomClass.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))))) (AddMonoidHom.completion.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f hf))
+Case conversion may be inaccurate. Consider using '#align add_monoid_hom.continuous_completion AddMonoidHom.continuous_completionₓ'. -/
@[continuity]
theorem AddMonoidHom.continuous_completion (f : α →+ β) (hf : Continuous f) :
Continuous (f.Completion hf : Completion α → Completion β) :=
ContinuousMap
#align add_monoid_hom.continuous_completion AddMonoidHom.continuous_completion
+/- warning: add_monoid_hom.completion_coe -> AddMonoidHom.completion_coe is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5] (f : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (hf : Continuous.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f)) (a : α), Eq.{succ u2} (UniformSpace.Completion.{u2} β _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) (fun (_x : AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) => (UniformSpace.Completion.{u1} α _inst_1) -> (UniformSpace.Completion.{u2} β _inst_4)) (AddMonoidHom.hasCoeToFun.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) (AddMonoidHom.completion.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f hf) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_1) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.hasCoeT.{u1} α _inst_1))) a)) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) β (UniformSpace.Completion.{u2} β _inst_4) (HasLiftT.mk.{succ u2, succ u2} β (UniformSpace.Completion.{u2} β _inst_4) (CoeTCₓ.coe.{succ u2, succ u2} β (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.hasCoeT.{u2} β _inst_4))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (fun (_x : AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) => α -> β) (AddMonoidHom.hasCoeToFun.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) f a))
+but is expected to have type
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : UniformSpace.{u2} α] [_inst_2 : AddGroup.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u1} β] [_inst_5 : AddGroup.{u1} β] [_inst_6 : UniformAddGroup.{u1} β _inst_4 _inst_5] (f : AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (hf : Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} β _inst_4) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddZeroClass.toAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2)))) (AddZeroClass.toAdd.{u1} β (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))))) f)) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : UniformSpace.Completion.{u2} α _inst_1) => UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.coe'.{u2} α _inst_1 a)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (fun (_x : UniformSpace.Completion.{u2} α _inst_1) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : UniformSpace.Completion.{u2} α _inst_1) => UniformSpace.Completion.{u1} β _inst_4) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddZeroClass.toAdd.{u2} (UniformSpace.Completion.{u2} α _inst_1) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3))) (AddZeroClass.toAdd.{u1} (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6)) (AddMonoidHom.addMonoidHomClass.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))))) (AddMonoidHom.completion.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f hf) (UniformSpace.Completion.coe'.{u2} α _inst_1 a)) (UniformSpace.Completion.coe'.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) _inst_4 (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddZeroClass.toAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2)))) (AddZeroClass.toAdd.{u1} β (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (AddMonoidHomClass.toAddHomClass.{max u2 u1, u2, u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5))) (AddMonoidHom.addMonoidHomClass.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))))) f a))
+Case conversion may be inaccurate. Consider using '#align add_monoid_hom.completion_coe AddMonoidHom.completion_coeₓ'. -/
theorem AddMonoidHom.completion_coe (f : α →+ β) (hf : Continuous f) (a : α) :
f.Completion hf a = f a :=
map_coe (uniformContinuous_addMonoidHom_of_continuous hf) a
#align add_monoid_hom.completion_coe AddMonoidHom.completion_coe
+/- warning: add_monoid_hom.completion_zero -> AddMonoidHom.completion_zero is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u2} β] [_inst_5 : AddGroup.{u2} β] [_inst_6 : UniformAddGroup.{u2} β _inst_4 _inst_5], Eq.{max (succ u2) (succ u1)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) (AddMonoidHom.completion.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OfNat.ofNat.{max u2 u1} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) 0 (OfNat.mk.{max u2 u1} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) 0 (Zero.zero.{max u2 u1} (AddMonoidHom.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5)))) (AddMonoidHom.hasZero.{u1, u2} α β (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))))))) (continuous_const.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} β _inst_4) (OfNat.ofNat.{u2} β 0 (OfNat.mk.{u2} β 0 (Zero.zero.{u2} β (AddZeroClass.toHasZero.{u2} β (AddMonoid.toAddZeroClass.{u2} β (SubNegMonoid.toAddMonoid.{u2} β (AddGroup.toSubNegMonoid.{u2} β _inst_5))))))))) (OfNat.ofNat.{max u2 u1} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) 0 (OfNat.mk.{max u2 u1} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) 0 (Zero.zero.{max u2 u1} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))) (AddMonoidHom.hasZero.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} β _inst_4) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} β _inst_4) (UniformSpace.Completion.addMonoid.{u2} β _inst_4 _inst_5 _inst_6))))))
+but is expected to have type
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : UniformSpace.{u2} α] [_inst_2 : AddGroup.{u2} α] [_inst_3 : UniformAddGroup.{u2} α _inst_1 _inst_2] [_inst_4 : UniformSpace.{u1} β] [_inst_5 : AddGroup.{u1} β] [_inst_6 : UniformAddGroup.{u1} β _inst_4 _inst_5], Eq.{max (succ u2) (succ u1)} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (AddMonoidHom.completion.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OfNat.ofNat.{max u2 u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) 0 (Zero.toOfNat0.{max u2 u1} (AddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))) (instZeroAddMonoidHom.{u2, u1} α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α _inst_2))) (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))))) (continuous_const.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_1) (UniformSpace.toTopologicalSpace.{u1} β _inst_4) ((AddZeroClass.toZero.{u1} β (AddMonoid.toAddZeroClass.{u1} β (SubNegMonoid.toAddMonoid.{u1} β (AddGroup.toSubNegMonoid.{u1} β _inst_5)))).0))) (OfNat.ofNat.{max u2 u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) 0 (Zero.toOfNat0.{max u2 u1} (AddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6))) (instZeroAddMonoidHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.{u1} β _inst_4) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u2} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} β _inst_4) (UniformSpace.Completion.instAddMonoidCompletion.{u1} β _inst_4 _inst_5 _inst_6)))))
+Case conversion may be inaccurate. Consider using '#align add_monoid_hom.completion_zero AddMonoidHom.completion_zeroₓ'. -/
theorem AddMonoidHom.completion_zero : (0 : α →+ β).Completion continuous_const = 0 :=
by
ext x
@@ -288,6 +372,12 @@ theorem AddMonoidHom.completion_zero : (0 : α →+ β).Completion continuous_co
simp [(0 : α →+ β).completion_coe continuous_const, coe_zero]
#align add_monoid_hom.completion_zero AddMonoidHom.completion_zero
+/- warning: add_monoid_hom.completion_add -> AddMonoidHom.completion_add is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] {γ : Type.{u2}} [_inst_7 : AddCommGroup.{u2} γ] [_inst_8 : UniformSpace.{u2} γ] [_inst_9 : UniformAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7)] (f : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (g : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (hf : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) f)) (hg : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) g)), Eq.{max (succ u2) (succ u1)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (instHAdd.{max u2 u1} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.hasAdd.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) f g) (Continuous.add.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddZeroClass.toHasAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (TopologicalAddGroup.to_continuousAdd.{u2} γ (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddCommGroup.toAddGroup.{u2} γ _inst_7) (UniformAddGroup.to_topologicalAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) f) (fun (x : α) => coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) (fun (_x : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) => α -> γ) (AddMonoidHom.hasCoeToFun.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) g x) hf hg)) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (instHAdd.{max u2 u1} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addMonoid.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.hasAdd.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.addMonoid.{u1} α _inst_1 _inst_2 _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.addCommGroup.{u2} γ _inst_8 _inst_7 _inst_9)))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 f hf) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 g hg))
+but is expected to have type
+ forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : AddGroup.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_1 _inst_2] {γ : Type.{u2}} [_inst_7 : AddCommGroup.{u2} γ] [_inst_8 : UniformSpace.{u2} γ] [_inst_9 : UniformAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7)] (f : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (g : AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (hf : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) f)) (hg : Continuous.{u1, u2} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) g)), Eq.{max (succ u1) (succ u2)} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (instHAdd.{max u1 u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHom.add.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) f g) (Continuous.add.{u2, u1} α γ (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (TopologicalAddGroup.toContinuousAdd.{u2} γ (UniformSpace.toTopologicalSpace.{u2} γ _inst_8) (AddCommGroup.toAddGroup.{u2} γ _inst_7) (UniformAddGroup.to_topologicalAddGroup.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7)))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (SubNegMonoid.toAddMonoid.{u2} γ (AddGroup.toSubNegMonoid.{u2} γ (AddCommGroup.toAddGroup.{u2} γ _inst_7))))))) f) (fun (x : α) => FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : α) => γ) _x) (AddHomClass.toFunLike.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α γ (AddZeroClass.toAdd.{u1} α (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2)))) (AddZeroClass.toAdd.{u2} γ (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) (AddMonoidHomClass.toAddHomClass.{max u1 u2, u1, u2} (AddMonoidHom.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))) α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7))) (AddMonoidHom.addMonoidHomClass.{u1, u2} α γ (AddMonoid.toAddZeroClass.{u1} α (SubNegMonoid.toAddMonoid.{u1} α (AddGroup.toSubNegMonoid.{u1} α _inst_2))) (AddMonoid.toAddZeroClass.{u2} γ (AddCommMonoid.toAddMonoid.{u2} γ (AddCommGroup.toAddCommMonoid.{u2} γ _inst_7)))))) g x) hf hg)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (instHAdd.{max u1 u2} (AddMonoidHom.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddMonoid.toAddZeroClass.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddMonoidCompletion.{u2} γ _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9))) (AddMonoidHom.add.{u1, u2} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.{u2} γ _inst_8) (AddMonoid.toAddZeroClass.{u1} (UniformSpace.Completion.{u1} α _inst_1) (UniformSpace.Completion.instAddMonoidCompletion.{u1} α _inst_1 _inst_2 _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} (UniformSpace.Completion.{u2} γ _inst_8) (UniformSpace.Completion.instAddCommGroupCompletion.{u2} γ _inst_8 _inst_7 _inst_9)))) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 f hf) (AddMonoidHom.completion.{u1, u2} α γ _inst_1 _inst_2 _inst_3 _inst_8 (AddCommGroup.toAddGroup.{u2} γ _inst_7) _inst_9 g hg))
+Case conversion may be inaccurate. Consider using '#align add_monoid_hom.completion_add AddMonoidHom.completion_addₓ'. -/
theorem AddMonoidHom.completion_add {γ : Type _} [AddCommGroup γ] [UniformSpace γ]
[UniformAddGroup γ] (f g : α →+ γ) (hf : Continuous f) (hg : Continuous g) :
(f + g).Completion (hf.add hg) = f.Completion hf + g.Completion hg :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/195fcd60ff2bfe392543bceb0ec2adcdb472db4c
@@ -70,7 +70,7 @@ open UniformSpace
section Zero
instance [UniformSpace α] [MonoidWithZero M] [Zero α] [MulActionWithZero M α]
- [HasUniformContinuousConstSmul M α] : MulActionWithZero M (Completion α) :=
+ [UniformContinuousConstSMul M α] : MulActionWithZero M (Completion α) :=
{ Completion.mulAction M α with
smul := (· • ·)
smul_zero := fun r => by rw [← coe_zero, ← coe_smul, MulActionWithZero.smul_zero r]
@@ -168,7 +168,7 @@ instance : AddGroup (Completion α) :=
instance : UniformAddGroup (Completion α) :=
⟨uniformContinuous_map₂ Sub.sub⟩
-instance {M} [Monoid M] [DistribMulAction M α] [HasUniformContinuousConstSmul M α] :
+instance {M} [Monoid M] [DistribMulAction M α] [UniformContinuousConstSMul M α] :
DistribMulAction M (Completion α) :=
{ Completion.mulAction M α with
smul := (· • ·)
@@ -215,7 +215,7 @@ instance : AddCommGroup (Completion α) :=
change ↑x + ↑y = ↑y + ↑x
rw [← coe_add, ← coe_add, add_comm] }
-instance [Semiring R] [Module R α] [HasUniformContinuousConstSmul R α] : Module R (Completion α) :=
+instance [Semiring R] [Module R α] [UniformContinuousConstSMul R α] : Module R (Completion α) :=
{ Completion.distribMulAction,
Completion.mulActionWithZero with
smul := (· • ·)
mathlib commit https://github.com/leanprover-community/mathlib/commit/eb0cb4511aaef0da2462207b67358a0e1fe1e2ee
@@ -239,7 +239,7 @@ open UniformSpace UniformSpace.Completion
/-- Extension to the completion of a continuous group hom. -/
def AddMonoidHom.extension [CompleteSpace β] [SeparatedSpace β] (f : α →+ β) (hf : Continuous f) :
Completion α →+ β :=
- have hf : UniformContinuous f := uniform_continuous_add_monoid_hom_of_continuous hf
+ have hf : UniformContinuous f := uniformContinuous_addMonoidHom_of_continuous hf
{ toFun := Completion.extension f
map_zero' := by rw [← coe_zero, extension_coe hf, f.map_zero]
map_add' := fun a b =>
@@ -253,7 +253,7 @@ def AddMonoidHom.extension [CompleteSpace β] [SeparatedSpace β] (f : α →+
theorem AddMonoidHom.extension_coe [CompleteSpace β] [SeparatedSpace β] (f : α →+ β)
(hf : Continuous f) (a : α) : f.extension hf a = f a :=
- extension_coe (uniform_continuous_add_monoid_hom_of_continuous hf) a
+ extension_coe (uniformContinuous_addMonoidHom_of_continuous hf) a
#align add_monoid_hom.extension_coe AddMonoidHom.extension_coe
@[continuity]
@@ -275,7 +275,7 @@ theorem AddMonoidHom.continuous_completion (f : α →+ β) (hf : Continuous f)
theorem AddMonoidHom.completion_coe (f : α →+ β) (hf : Continuous f) (a : α) :
f.Completion hf a = f a :=
- map_coe (uniform_continuous_add_monoid_hom_of_continuous hf) a
+ map_coe (uniformContinuous_addMonoidHom_of_continuous hf) a
#align add_monoid_hom.completion_coe AddMonoidHom.completion_coe
theorem AddMonoidHom.completion_zero : (0 : α →+ β).Completion continuous_const = 0 :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/22131150f88a2d125713ffa0f4693e3355b1eb49
@@ -270,7 +270,7 @@ def AddMonoidHom.completion (f : α →+ β) (hf : Continuous f) : Completion α
@[continuity]
theorem AddMonoidHom.continuous_completion (f : α →+ β) (hf : Continuous f) :
Continuous (f.Completion hf : Completion α → Completion β) :=
- continuous_map
+ ContinuousMap
#align add_monoid_hom.continuous_completion AddMonoidHom.continuous_completion
theorem AddMonoidHom.completion_coe (f : α →+ β) (hf : Continuous f) (a : α) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/bd9851ca476957ea4549eb19b40e7b5ade9428cc
We change the following field in the definition of an additive commutative monoid:
nsmul_succ : ∀ (n : ℕ) (x : G),
- AddMonoid.nsmul (n + 1) x = x + AddMonoid.nsmul n x
+ AddMonoid.nsmul (n + 1) x = AddMonoid.nsmul n x + x
where the latter is more natural
We adjust the definitions of ^
in monoids, groups, etc.
Originally there was a warning comment about why this natural order was preferred
use
x * npowRec n x
and notnpowRec n x * x
in the definition to make sure that definitional unfolding ofnpowRec
is blocked, to avoid deep recursion issues.
but it seems to no longer apply.
Remarks on the PR :
pow_succ
and pow_succ'
have switched their meanings.Ideal.IsPrime.mul_mem_pow
which is defined in [Mathlib/RingTheory/DedekindDomain/Ideal.lean]. Changing the order of operation forced me to add the symmetric lemma Ideal.IsPrime.mem_pow_mul
.@@ -122,8 +122,8 @@ instance : AddMonoid (Completion α) :=
show 0 • (a : Completion α) = 0 by rw [← coe_smul, ← coe_zero, zero_smul]
nsmul_succ := fun n a ↦
Completion.induction_on a
- (isClosed_eq continuous_map <| continuous_map₂ continuous_id continuous_map) fun a ↦
- show (n + 1) • (a : Completion α) = (a : Completion α) + n • (a : Completion α) by
+ (isClosed_eq continuous_map <| continuous_map₂ continuous_map continuous_id) fun a ↦
+ show (n + 1) • (a : Completion α) = n • (a : Completion α) + (a : Completion α) by
rw [← coe_smul, succ_nsmul, coe_add, coe_smul] }
instance : SubNegMonoid (Completion α) :=
@@ -141,9 +141,9 @@ instance : SubNegMonoid (Completion α) :=
show (0 : ℤ) • (a : Completion α) = 0 by rw [← coe_smul, ← coe_zero, zero_smul]
zsmul_succ' := fun n a ↦
Completion.induction_on a
- (isClosed_eq continuous_map <| continuous_map₂ continuous_id continuous_map) fun a ↦
+ (isClosed_eq continuous_map <| continuous_map₂ continuous_map continuous_id) fun a ↦
show Int.ofNat n.succ • (a : Completion α) = _ by
- rw [← coe_smul, show Int.ofNat n.succ • a = a + Int.ofNat n • a from
+ rw [← coe_smul, show Int.ofNat n.succ • a = Int.ofNat n • a + a from
SubNegMonoid.zsmul_succ' n a, coe_add, coe_smul]
zsmul_neg' := fun n a ↦
Completion.induction_on a
separationRel
(#10644)
We had duplicated API between topological spaces and uniform spaces. In this PR I mostly deduplicate it with some exceptions:
SeparationQuotient.lift'
and SeparationQuotient.map
are leftovers from the old version
that are designed to work with uniform spaces;UniformSpace
when TopologicalSpace
would work.Outside of UniformSpace/Separation
, I mostly changed SeparatedSpace
to T0Space
and separationRel
to Inseparable
. I also rewrote a few proofs that were broken by the API change.
Fixes #2031
@@ -233,7 +233,7 @@ variable [UniformSpace α] [AddGroup α] [UniformAddGroup α] [UniformSpace β]
open UniformSpace UniformSpace.Completion
/-- Extension to the completion of a continuous group hom. -/
-def AddMonoidHom.extension [CompleteSpace β] [SeparatedSpace β] (f : α →+ β) (hf : Continuous f) :
+def AddMonoidHom.extension [CompleteSpace β] [T0Space β] (f : α →+ β) (hf : Continuous f) :
Completion α →+ β :=
have hf : UniformContinuous f := uniformContinuous_addMonoidHom_of_continuous hf
{ toFun := Completion.extension f
@@ -248,13 +248,13 @@ def AddMonoidHom.extension [CompleteSpace β] [SeparatedSpace β] (f : α →+
rw_mod_cast [extension_coe hf, extension_coe hf, extension_coe hf, f.map_add] }
#align add_monoid_hom.extension AddMonoidHom.extension
-theorem AddMonoidHom.extension_coe [CompleteSpace β] [SeparatedSpace β] (f : α →+ β)
+theorem AddMonoidHom.extension_coe [CompleteSpace β] [T0Space β] (f : α →+ β)
(hf : Continuous f) (a : α) : f.extension hf a = f a :=
UniformSpace.Completion.extension_coe (uniformContinuous_addMonoidHom_of_continuous hf) a
#align add_monoid_hom.extension_coe AddMonoidHom.extension_coe
@[continuity]
-theorem AddMonoidHom.continuous_extension [CompleteSpace β] [SeparatedSpace β] (f : α →+ β)
+theorem AddMonoidHom.continuous_extension [CompleteSpace β] [T0Space β] (f : α →+ β)
(hf : Continuous f) : Continuous (f.extension hf) :=
UniformSpace.Completion.continuous_extension
#align add_monoid_hom.continuous_extension AddMonoidHom.continuous_extension
$
with <|
(#9319)
See Zulip thread for the discussion.
@@ -68,7 +68,7 @@ section Zero
instance [UniformSpace α] [MonoidWithZero M] [Zero α] [MulActionWithZero M α]
[UniformContinuousConstSMul M α] : MulActionWithZero M (Completion α) :=
- { (inferInstance : MulAction M $ Completion α) with
+ { (inferInstance : MulAction M <| Completion α) with
smul_zero := fun r ↦ by rw [← coe_zero, ← coe_smul, MulActionWithZero.smul_zero r]
zero_smul :=
ext' (continuous_const_smul _) continuous_const fun a ↦ by
@@ -96,8 +96,8 @@ theorem coe_add (a b : α) : ((a + b : α) : Completion α) = a + b :=
#align uniform_space.completion.coe_add UniformSpace.Completion.coe_add
instance : AddMonoid (Completion α) :=
- { (inferInstance : Zero $ Completion α),
- (inferInstance : Add $ Completion α) with
+ { (inferInstance : Zero <| Completion α),
+ (inferInstance : Add <| Completion α) with
zero_add := fun a ↦
Completion.induction_on a
(isClosed_eq (continuous_map₂ continuous_const continuous_id) continuous_id) fun a ↦
@@ -127,9 +127,9 @@ instance : AddMonoid (Completion α) :=
rw [← coe_smul, succ_nsmul, coe_add, coe_smul] }
instance : SubNegMonoid (Completion α) :=
- { (inferInstance : AddMonoid $ Completion α),
- (inferInstance : Neg $ Completion α),
- (inferInstance : Sub $ Completion α) with
+ { (inferInstance : AddMonoid <| Completion α),
+ (inferInstance : Neg <| Completion α),
+ (inferInstance : Sub <| Completion α) with
sub_eq_add_neg := fun a b ↦
Completion.induction_on₂ a b
(isClosed_eq (continuous_map₂ continuous_fst continuous_snd)
@@ -153,7 +153,7 @@ instance : SubNegMonoid (Completion α) :=
SubNegMonoid.zsmul_neg' n a, coe_neg, coe_smul] }
instance addGroup : AddGroup (Completion α) :=
- { (inferInstance : SubNegMonoid $ Completion α) with
+ { (inferInstance : SubNegMonoid <| Completion α) with
add_left_neg := fun a ↦
Completion.induction_on a
(isClosed_eq (continuous_map₂ Completion.continuous_map continuous_id) continuous_const)
@@ -167,7 +167,7 @@ instance uniformAddGroup : UniformAddGroup (Completion α) :=
instance {M} [Monoid M] [DistribMulAction M α] [UniformContinuousConstSMul M α] :
DistribMulAction M (Completion α) :=
- { (inferInstance : MulAction M $ Completion α) with
+ { (inferInstance : MulAction M <| Completion α) with
smul_add := fun r x y ↦
induction_on₂ x y
(isClosed_eq ((continuous_fst.add continuous_snd).const_smul _)
@@ -202,7 +202,7 @@ section UniformAddCommGroup
variable [UniformSpace α] [AddCommGroup α] [UniformAddGroup α]
instance : AddCommGroup (Completion α) :=
- { (inferInstance : AddGroup $ Completion α) with
+ { (inferInstance : AddGroup <| Completion α) with
add_comm := fun a b ↦
Completion.induction_on₂ a b
(isClosed_eq (continuous_map₂ continuous_fst continuous_snd)
@@ -213,8 +213,8 @@ instance : AddCommGroup (Completion α) :=
instance instModule [Semiring R] [Module R α] [UniformContinuousConstSMul R α] :
Module R (Completion α) :=
- { (inferInstance : DistribMulAction R $ Completion α),
- (inferInstance : MulActionWithZero R $ Completion α) with
+ { (inferInstance : DistribMulAction R <| Completion α),
+ (inferInstance : MulActionWithZero R <| Completion α) with
add_smul := fun a b ↦
ext' (continuous_const_smul _) ((continuous_const_smul _).add (continuous_const_smul _))
fun x ↦ by
exact_mod_cast
tactic with mod_cast
elaborator where possible (#8404)
We still have the exact_mod_cast
tactic, used in a few places, which somehow (?) works a little bit harder to prevent the expected type influencing the elaboration of the term. I would like to get to the bottom of this, and it will be easier once the only usages of exact_mod_cast
are the ones that don't work using the term elaborator by itself.
Co-authored-by: Scott Morrison <scott.morrison@gmail.com>
@@ -134,7 +134,7 @@ instance : SubNegMonoid (Completion α) :=
Completion.induction_on₂ a b
(isClosed_eq (continuous_map₂ continuous_fst continuous_snd)
(continuous_map₂ continuous_fst (Completion.continuous_map.comp continuous_snd)))
- fun a b ↦ by exact_mod_cast congr_arg ((↑) : α → Completion α) (sub_eq_add_neg a b)
+ fun a b ↦ mod_cast congr_arg ((↑) : α → Completion α) (sub_eq_add_neg a b)
zsmul := (· • ·)
zsmul_zero' := fun a ↦
Completion.induction_on a (isClosed_eq continuous_map continuous_const) fun a ↦
This removes redundant field values of the form add := add
for smaller terms and less unfolding during unification.
A list of all files containing a structure instance of the form { a1, ... with x1 := val, ... }
where some xi
is a field of some aj
was generated by modifying the structure instance elaboration algorithm to print such overlaps to stdout in a custom toolchain.
Using that toolchain, I went through each file on the list and attempted to remove algebraic fields that overlapped and were redundant, eg add := add
and not toFun
(though some other ones did creep in). If things broke (which was the case in a couple of cases), I did not push further and reverted.
It is possible that pushing harder and trying to remove all redundant overlaps will yield further improvements.
@@ -69,7 +69,6 @@ section Zero
instance [UniformSpace α] [MonoidWithZero M] [Zero α] [MulActionWithZero M α]
[UniformContinuousConstSMul M α] : MulActionWithZero M (Completion α) :=
{ (inferInstance : MulAction M $ Completion α) with
- smul := (· • ·)
smul_zero := fun r ↦ by rw [← coe_zero, ← coe_smul, MulActionWithZero.smul_zero r]
zero_smul :=
ext' (continuous_const_smul _) continuous_const fun a ↦ by
@@ -169,7 +168,6 @@ instance uniformAddGroup : UniformAddGroup (Completion α) :=
instance {M} [Monoid M] [DistribMulAction M α] [UniformContinuousConstSMul M α] :
DistribMulAction M (Completion α) :=
{ (inferInstance : MulAction M $ Completion α) with
- smul := (· • ·)
smul_add := fun r x y ↦
induction_on₂ x y
(isClosed_eq ((continuous_fst.add continuous_snd).const_smul _)
@@ -217,7 +215,6 @@ instance instModule [Semiring R] [Module R α] [UniformContinuousConstSMul R α]
Module R (Completion α) :=
{ (inferInstance : DistribMulAction R $ Completion α),
(inferInstance : MulActionWithZero R $ Completion α) with
- smul := (· • ·)
add_smul := fun a b ↦
ext' (continuous_const_smul _) ((continuous_const_smul _).add (continuous_const_smul _))
fun x ↦ by
Type _
and Sort _
(#6499)
We remove all possible occurences of Type _
and Sort _
in favor of Type*
and Sort*
.
This has nice performance benefits.
@@ -33,7 +33,7 @@ the main constructions deal with continuous group morphisms.
noncomputable section
-variable {M R α β : Type _}
+variable {M R α β : Type*}
section Group
@@ -288,7 +288,7 @@ theorem AddMonoidHom.completion_zero :
simp [(0 : α →+ β).completion_coe continuous_const, coe_zero]
#align add_monoid_hom.completion_zero AddMonoidHom.completion_zero
-theorem AddMonoidHom.completion_add {γ : Type _} [AddCommGroup γ] [UniformSpace γ]
+theorem AddMonoidHom.completion_add {γ : Type*} [AddCommGroup γ] [UniformSpace γ]
[UniformAddGroup γ] (f g : α →+ γ) (hf : Continuous f) (hg : Continuous g) :
AddMonoidHom.completion (f + g) (hf.add hg) =
AddMonoidHom.completion f hf + AddMonoidHom.completion g hg := by
@@ -2,16 +2,13 @@
Copyright (c) 2018 Patrick Massot. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Patrick Massot, Johannes Hölzl
-
-! This file was ported from Lean 3 source module topology.algebra.group_completion
-! leanprover-community/mathlib commit a148d797a1094ab554ad4183a4ad6f130358ef64
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathlib.Topology.Algebra.UniformGroup
import Mathlib.Topology.Algebra.UniformMulAction
import Mathlib.Topology.UniformSpace.Completion
+#align_import topology.algebra.group_completion from "leanprover-community/mathlib"@"a148d797a1094ab554ad4183a4ad6f130358ef64"
+
/-!
# Completion of topological groups:
@@ -216,7 +216,8 @@ instance : AddCommGroup (Completion α) :=
change (x : Completion α) + ↑y = ↑y + ↑x
rw [← coe_add, ← coe_add, add_comm] }
-instance [Semiring R] [Module R α] [UniformContinuousConstSMul R α] : Module R (Completion α) :=
+instance instModule [Semiring R] [Module R α] [UniformContinuousConstSMul R α] :
+ Module R (Completion α) :=
{ (inferInstance : DistribMulAction R $ Completion α),
(inferInstance : MulActionWithZero R $ Completion α) with
smul := (· • ·)
@@ -224,6 +225,7 @@ instance [Semiring R] [Module R α] [UniformContinuousConstSMul R α] : Module R
ext' (continuous_const_smul _) ((continuous_const_smul _).add (continuous_const_smul _))
fun x ↦ by
rw [← coe_smul, add_smul, coe_add, coe_smul, coe_smul] }
+#align uniform_space.completion.module UniformSpace.Completion.instModule
end UniformAddCommGroup
by
s! (#3825)
This PR puts, with one exception, every single remaining by
that lies all by itself on its own line to the previous line, thus matching the current behaviour of start-port.sh
. The exception is when the by
begins the second or later argument to a tuple or anonymous constructor; see https://github.com/leanprover-community/mathlib4/pull/3825#discussion_r1186702599.
Essentially this is s/\n *by$/ by/g
, but with manual editing to satisfy the linter's max-100-char-line requirement. The Python style linter is also modified to catch these "isolated by
s".
@@ -162,8 +162,7 @@ instance addGroup : AddGroup (Completion α) :=
Completion.induction_on a
(isClosed_eq (continuous_map₂ Completion.continuous_map continuous_id) continuous_const)
fun a ↦
- show -(a : Completion α) + a = 0
- by
+ show -(a : Completion α) + a = 0 by
rw_mod_cast [add_left_neg]
rfl }
@@ -16,9 +16,9 @@ import Mathlib.Topology.UniformSpace.Completion
# Completion of topological groups:
This files endows the completion of a topological abelian group with a group structure.
-More precisely the instance `UniformSpace.Completion.instAddGroup` builds an abelian group structure
+More precisely the instance `UniformSpace.Completion.addGroup` builds an abelian group structure
on the completion of an abelian group endowed with a compatible uniform structure.
-Then the instance `UniformSpace.Completion.instUniformAddGroup` proves this group structure is
+Then the instance `UniformSpace.Completion.uniformAddGroup` proves this group structure is
compatible with the completed uniform structure. The compatibility condition is `UniformAddGroup`.
## Main declarations:
@@ -156,7 +156,7 @@ instance : SubNegMonoid (Completion α) :=
rw [← coe_smul, show (Int.negSucc n) • a = -((n.succ : ℤ) • a) from
SubNegMonoid.zsmul_neg' n a, coe_neg, coe_smul] }
-instance instAddGroup : AddGroup (Completion α) :=
+instance addGroup : AddGroup (Completion α) :=
{ (inferInstance : SubNegMonoid $ Completion α) with
add_left_neg := fun a ↦
Completion.induction_on a
@@ -167,7 +167,7 @@ instance instAddGroup : AddGroup (Completion α) :=
rw_mod_cast [add_left_neg]
rfl }
-instance instUniformAddGroup : UniformAddGroup (Completion α) :=
+instance uniformAddGroup : UniformAddGroup (Completion α) :=
⟨uniformContinuous_map₂ Sub.sub⟩
instance {M} [Monoid M] [DistribMulAction M α] [UniformContinuousConstSMul M α] :
The unported dependencies are