topology.algebra.uniform_ringMathlib.Topology.Algebra.UniformRing

This file has been ported!

Changes since the initial port

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

Changes in mathlib3

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(last sync)

Changes in mathlib3port

mathlib3
mathlib3port
Diff
@@ -154,7 +154,7 @@ variable {β : Type u} [UniformSpace β] [Ring β] [UniformAddGroup β] [Topolog
 
 #print UniformSpace.Completion.extensionHom /-
 /-- The completion extension as a ring morphism. -/
-def extensionHom [CompleteSpace β] [SeparatedSpace β] : Completion α →+* β :=
+def extensionHom [CompleteSpace β] [T0Space β] : Completion α →+* β :=
   have hf' : Continuous (f : α →+ β) := hf
   -- helping the elaborator
   have hf : UniformContinuous f := uniformContinuous_addMonoidHom_of_continuous hf'
@@ -255,42 +255,42 @@ namespace UniformSpace
 
 variable {α : Type _}
 
-#print UniformSpace.ring_sep_rel /-
-theorem ring_sep_rel (α) [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
-    separationSetoid α = Submodule.quotientRel (Ideal.closure ⊥) :=
+#print UniformSpace.inseparableSetoid_ring /-
+theorem inseparableSetoid_ring (α) [CommRing α] [UniformSpace α] [UniformAddGroup α]
+    [TopologicalRing α] : inseparableSetoid α = Submodule.quotientRel (Ideal.closure ⊥) :=
   Setoid.ext fun x y =>
-    (addGroup_separationRel x y).trans <| Iff.trans (by rfl) (Submodule.quotientRel_r_def _).symm
-#align uniform_space.ring_sep_rel UniformSpace.ring_sep_rel
+    (addGroup_inseparable_iff x y).trans <| Iff.trans (by rfl) (Submodule.quotientRel_r_def _).symm
+#align uniform_space.ring_sep_rel UniformSpace.inseparableSetoid_ring
 -/
 
 #print UniformSpace.ring_sep_quot /-
 theorem ring_sep_quot (α : Type u) [r : CommRing α] [UniformSpace α] [UniformAddGroup α]
-    [TopologicalRing α] : Quotient (separationSetoid α) = (α ⧸ (⊥ : Ideal α).closure) := by
+    [TopologicalRing α] : Quotient (inseparableSetoid α) = (α ⧸ (⊥ : Ideal α).closure) := by
   rw [@ring_sep_rel α r] <;> rfl
 #align uniform_space.ring_sep_quot UniformSpace.ring_sep_quot
 -/
 
-#print UniformSpace.sepQuotEquivRingQuot /-
+#print UniformSpace.sepQuotHomeomorphRingQuot /-
 /-- Given a topological ring `α` equipped with a uniform structure that makes subtraction uniformly
 continuous, get an equivalence between the separated quotient of `α` and the quotient ring
 corresponding to the closure of zero. -/
-def sepQuotEquivRingQuot (α) [r : CommRing α] [UniformSpace α] [UniformAddGroup α]
-    [TopologicalRing α] : Quotient (separationSetoid α) ≃ α ⧸ (⊥ : Ideal α).closure :=
+def sepQuotHomeomorphRingQuot (α) [r : CommRing α] [UniformSpace α] [UniformAddGroup α]
+    [TopologicalRing α] : Quotient (inseparableSetoid α) ≃ α ⧸ (⊥ : Ideal α).closure :=
   Quotient.congrRight fun x y =>
-    (addGroup_separationRel x y).trans <| Iff.trans (by rfl) (Submodule.quotientRel_r_def _).symm
-#align uniform_space.sep_quot_equiv_ring_quot UniformSpace.sepQuotEquivRingQuot
+    (addGroup_inseparable_iff x y).trans <| Iff.trans (by rfl) (Submodule.quotientRel_r_def _).symm
+#align uniform_space.sep_quot_equiv_ring_quot UniformSpace.sepQuotHomeomorphRingQuot
 -/
 
 #print UniformSpace.commRing /-
 -- TODO: use a form of transport a.k.a. lift definition a.k.a. transfer
 instance commRing [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
-    CommRing (Quotient (separationSetoid α)) := by rw [ring_sep_quot α] <;> infer_instance
+    CommRing (Quotient (inseparableSetoid α)) := by rw [ring_sep_quot α] <;> infer_instance
 #align uniform_space.comm_ring UniformSpace.commRing
 -/
 
 #print UniformSpace.topologicalRing /-
 instance topologicalRing [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
-    TopologicalRing (Quotient (separationSetoid α)) :=
+    TopologicalRing (Quotient (inseparableSetoid α)) :=
   by
   convert topologicalRing_quotient (⊥ : Ideal α).closure <;> try apply ring_sep_rel
   simp [UniformSpace.commRing]
Diff
@@ -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.Algebra.Algebra.Basic
-import Mathbin.Topology.Algebra.GroupCompletion
-import Mathbin.Topology.Algebra.Ring.Ideal
+import Algebra.Algebra.Basic
+import Topology.Algebra.GroupCompletion
+import Topology.Algebra.Ring.Ideal
 
 #align_import topology.algebra.uniform_ring from "leanprover-community/mathlib"@"8ef6f08ff8c781c5c07a8b12843710e1a0d8a688"
 
Diff
@@ -182,7 +182,7 @@ def extensionHom [CompleteSpace β] [SeparatedSpace β] : Completion α →+* β
 instance topologicalRing : TopologicalRing (Completion α)
     where
   continuous_add := continuous_add
-  continuous_mul := continuous_mul
+  continuous_hMul := continuous_mul
 #align uniform_space.completion.top_ring_compl UniformSpace.Completion.topologicalRing
 -/
 
Diff
@@ -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.uniform_ring
-! leanprover-community/mathlib commit 8ef6f08ff8c781c5c07a8b12843710e1a0d8a688
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathbin.Algebra.Algebra.Basic
 import Mathbin.Topology.Algebra.GroupCompletion
 import Mathbin.Topology.Algebra.Ring.Ideal
 
+#align_import topology.algebra.uniform_ring from "leanprover-community/mathlib"@"8ef6f08ff8c781c5c07a8b12843710e1a0d8a688"
+
 /-!
 # Completion of topological rings:
 
Diff
@@ -61,21 +61,26 @@ instance : One (Completion α) :=
 instance : Mul (Completion α) :=
   ⟨curry <| (denseInducing_coe.Prod denseInducing_coe).extend (coe ∘ uncurry (· * ·))⟩
 
+#print UniformSpace.Completion.coe_one /-
 @[norm_cast]
 theorem coe_one : ((1 : α) : Completion α) = 1 :=
   rfl
 #align uniform_space.completion.coe_one UniformSpace.Completion.coe_one
+-/
 
 variable {α} [TopologicalRing α]
 
+#print UniformSpace.Completion.coe_mul /-
 @[norm_cast]
 theorem coe_mul (a b : α) : ((a * b : α) : Completion α) = a * b :=
   ((denseInducing_coe.Prod denseInducing_coe).extend_eq
       ((continuous_coe α).comp (@continuous_mul α _ _ _)) (a, b)).symm
 #align uniform_space.completion.coe_mul UniformSpace.Completion.coe_mul
+-/
 
 variable [UniformAddGroup α]
 
+#print UniformSpace.Completion.continuous_mul /-
 theorem continuous_mul : Continuous fun p : Completion α × Completion α => p.1 * p.2 :=
   by
   let m := (AddMonoidHom.mul : α →+ α →+ α).compr₂ to_compl
@@ -85,11 +90,14 @@ theorem continuous_mul : Continuous fun p : Completion α × Completion α => p.
   ext ⟨x, y⟩
   rfl
 #align uniform_space.completion.continuous_mul UniformSpace.Completion.continuous_mul
+-/
 
+#print UniformSpace.Completion.Continuous.mul /-
 theorem Continuous.mul {β : Type _} [TopologicalSpace β] {f g : β → Completion α}
     (hf : Continuous f) (hg : Continuous g) : Continuous fun b => f b * g b :=
   continuous_mul.comp (hf.prod_mk hg : _)
 #align uniform_space.completion.continuous.mul UniformSpace.Completion.Continuous.mul
+-/
 
 instance : Ring (Completion α) :=
   { AddMonoidWithOne.unary, Completion.addCommGroup, Completion.hasMul α,
@@ -131,18 +139,23 @@ instance : Ring (Completion α) :=
               (continuous_snd.comp continuous_snd))))
         fun a b c => by rw [← coe_add, ← coe_mul, ← coe_mul, ← coe_mul, ← coe_add, add_mul] }
 
+#print UniformSpace.Completion.coeRingHom /-
 /-- The map from a uniform ring to its completion, as a ring homomorphism. -/
 def coeRingHom : α →+* Completion α :=
   ⟨coe, coe_one α, fun a b => coe_mul a b, coe_zero, fun a b => coe_add a b⟩
 #align uniform_space.completion.coe_ring_hom UniformSpace.Completion.coeRingHom
+-/
 
+#print UniformSpace.Completion.continuous_coeRingHom /-
 theorem continuous_coeRingHom : Continuous (coeRingHom : α → Completion α) :=
   continuous_coe α
 #align uniform_space.completion.continuous_coe_ring_hom UniformSpace.Completion.continuous_coeRingHom
+-/
 
 variable {β : Type u} [UniformSpace β] [Ring β] [UniformAddGroup β] [TopologicalRing β]
   (f : α →+* β) (hf : Continuous f)
 
+#print UniformSpace.Completion.extensionHom /-
 /-- The completion extension as a ring morphism. -/
 def extensionHom [CompleteSpace β] [SeparatedSpace β] : Completion α →+* β :=
   have hf' : Continuous (f : α →+ β) := hf
@@ -166,23 +179,29 @@ def extensionHom [CompleteSpace β] [SeparatedSpace β] : Completion α →+* β
         fun a b => by
         rw [← coe_mul, extension_coe hf, extension_coe hf, extension_coe hf, f.map_mul] }
 #align uniform_space.completion.extension_hom UniformSpace.Completion.extensionHom
+-/
 
+#print UniformSpace.Completion.topologicalRing /-
 instance topologicalRing : TopologicalRing (Completion α)
     where
   continuous_add := continuous_add
   continuous_mul := continuous_mul
 #align uniform_space.completion.top_ring_compl UniformSpace.Completion.topologicalRing
+-/
 
+#print UniformSpace.Completion.mapRingHom /-
 /-- The completion map as a ring morphism. -/
 def mapRingHom (hf : Continuous f) : Completion α →+* Completion β :=
   extensionHom (coeRingHom.comp f) (continuous_coeRingHom.comp hf)
 #align uniform_space.completion.map_ring_hom UniformSpace.Completion.mapRingHom
+-/
 
 section Algebra
 
 variable (A : Type _) [Ring A] [UniformSpace A] [UniformAddGroup A] [TopologicalRing A] (R : Type _)
   [CommSemiring R] [Algebra R A] [UniformContinuousConstSMul R A]
 
+#print UniformSpace.Completion.map_smul_eq_mul_coe /-
 @[simp]
 theorem map_smul_eq_mul_coe (r : R) :
     Completion.map ((· • ·) r) = (· * ·) (algebraMap R A r : Completion A) :=
@@ -192,6 +211,7 @@ theorem map_smul_eq_mul_coe (r : R) :
   · exact isClosed_eq completion.continuous_map (continuous_mul_left _)
   · rw [map_coe (uniform_continuous_const_smul r) a, Algebra.smul_def, coe_mul]
 #align uniform_space.completion.map_smul_eq_mul_coe UniformSpace.Completion.map_smul_eq_mul_coe
+-/
 
 instance : Algebra R (Completion A) :=
   {
@@ -204,10 +224,12 @@ instance : Algebra R (Completion A) :=
         simpa only [coe_mul] using congr_arg (coe : A → completion A) (Algebra.commutes r a)
     smul_def' := fun r x => congr_fun (map_smul_eq_mul_coe A R r) x }
 
+#print UniformSpace.Completion.algebraMap_def /-
 theorem algebraMap_def (r : R) :
     algebraMap R (Completion A) r = (algebraMap R A r : Completion A) :=
   rfl
 #align uniform_space.completion.algebra_map_def UniformSpace.Completion.algebraMap_def
+-/
 
 end Algebra
 
@@ -222,9 +244,11 @@ instance : CommRing (Completion R) :=
         (isClosed_eq (continuous_fst.mul continuous_snd) (continuous_snd.mul continuous_fst))
         fun a b => by rw [← coe_mul, ← coe_mul, mul_comm] }
 
+#print UniformSpace.Completion.algebra' /-
 /-- A shortcut instance for the common case -/
 instance algebra' : Algebra R (Completion R) := by infer_instance
 #align uniform_space.completion.algebra' UniformSpace.Completion.algebra'
+-/
 
 end CommRing
 
@@ -234,17 +258,22 @@ namespace UniformSpace
 
 variable {α : Type _}
 
+#print UniformSpace.ring_sep_rel /-
 theorem ring_sep_rel (α) [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
     separationSetoid α = Submodule.quotientRel (Ideal.closure ⊥) :=
   Setoid.ext fun x y =>
     (addGroup_separationRel x y).trans <| Iff.trans (by rfl) (Submodule.quotientRel_r_def _).symm
 #align uniform_space.ring_sep_rel UniformSpace.ring_sep_rel
+-/
 
+#print UniformSpace.ring_sep_quot /-
 theorem ring_sep_quot (α : Type u) [r : CommRing α] [UniformSpace α] [UniformAddGroup α]
     [TopologicalRing α] : Quotient (separationSetoid α) = (α ⧸ (⊥ : Ideal α).closure) := by
   rw [@ring_sep_rel α r] <;> rfl
 #align uniform_space.ring_sep_quot UniformSpace.ring_sep_quot
+-/
 
+#print UniformSpace.sepQuotEquivRingQuot /-
 /-- Given a topological ring `α` equipped with a uniform structure that makes subtraction uniformly
 continuous, get an equivalence between the separated quotient of `α` and the quotient ring
 corresponding to the closure of zero. -/
@@ -253,18 +282,23 @@ def sepQuotEquivRingQuot (α) [r : CommRing α] [UniformSpace α] [UniformAddGro
   Quotient.congrRight fun x y =>
     (addGroup_separationRel x y).trans <| Iff.trans (by rfl) (Submodule.quotientRel_r_def _).symm
 #align uniform_space.sep_quot_equiv_ring_quot UniformSpace.sepQuotEquivRingQuot
+-/
 
+#print UniformSpace.commRing /-
 -- TODO: use a form of transport a.k.a. lift definition a.k.a. transfer
 instance commRing [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
     CommRing (Quotient (separationSetoid α)) := by rw [ring_sep_quot α] <;> infer_instance
 #align uniform_space.comm_ring UniformSpace.commRing
+-/
 
+#print UniformSpace.topologicalRing /-
 instance topologicalRing [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
     TopologicalRing (Quotient (separationSetoid α)) :=
   by
   convert topologicalRing_quotient (⊥ : Ideal α).closure <;> try apply ring_sep_rel
   simp [UniformSpace.commRing]
 #align uniform_space.topological_ring UniformSpace.topologicalRing
+-/
 
 end UniformSpace
 
@@ -278,6 +312,7 @@ variable {γ : Type _} [UniformSpace γ] [Semiring γ] [TopologicalSemiring γ]
 
 variable [T2Space γ] [CompleteSpace γ]
 
+#print DenseInducing.extendRingHom /-
 /-- The dense inducing extension as a ring homomorphism. -/
 noncomputable def DenseInducing.extendRingHom {i : α →+* β} {f : α →+* γ} (ue : UniformInducing i)
     (dr : DenseRange i) (hf : UniformContinuous f) : β →+* γ
@@ -310,6 +345,7 @@ noncomputable def DenseInducing.extendRingHom {i : α →+* β} {f : α →+* γ
       simp_rw [← i.map_mul, DenseInducing.extend_eq (ue.dense_inducing dr) hf.continuous _, ←
         f.map_mul]
 #align dense_inducing.extend_ring_hom DenseInducing.extendRingHom
+-/
 
 end UniformExtension
 
Diff
@@ -285,10 +285,10 @@ noncomputable def DenseInducing.extendRingHom {i : α →+* β} {f : α →+* γ
   toFun := (ue.DenseInducing dr).extend f
   map_one' := by
     convert DenseInducing.extend_eq (ue.dense_inducing dr) hf.continuous 1
-    exacts[i.map_one.symm, f.map_one.symm]
+    exacts [i.map_one.symm, f.map_one.symm]
   map_zero' := by
     convert DenseInducing.extend_eq (ue.dense_inducing dr) hf.continuous 0
-    exacts[i.map_zero.symm, f.map_zero.symm]
+    exacts [i.map_zero.symm, f.map_zero.symm]
   map_add' := by
     have h := (uniformContinuous_uniformly_extend ue dr hf).Continuous
     refine' fun x y => DenseRange.induction_on₂ dr _ (fun a b => _) x y
Diff
@@ -43,7 +43,7 @@ TODO: Generalise the results here from the concrete `completion` to any `abstrac
 
 open Classical Set Filter TopologicalSpace AddCommGroup
 
-open Classical
+open scoped Classical
 
 noncomputable section
 
Diff
@@ -61,12 +61,6 @@ instance : One (Completion α) :=
 instance : Mul (Completion α) :=
   ⟨curry <| (denseInducing_coe.Prod denseInducing_coe).extend (coe ∘ uncurry (· * ·))⟩
 
-/- warning: uniform_space.completion.coe_one -> UniformSpace.Completion.coe_one is a dubious translation:
-lean 3 declaration is
-  forall (α : Type.{u1}) [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α], Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_2) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_2) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasCoeT.{u1} α _inst_2))) (OfNat.ofNat.{u1} α 1 (OfNat.mk.{u1} α 1 (One.one.{u1} α (AddMonoidWithOne.toOne.{u1} α (AddGroupWithOne.toAddMonoidWithOne.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α _inst_1)))))))) (OfNat.ofNat.{u1} (UniformSpace.Completion.{u1} α _inst_2) 1 (OfNat.mk.{u1} (UniformSpace.Completion.{u1} α _inst_2) 1 (One.one.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasOne.{u1} α _inst_1 _inst_2))))
-but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α], Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.coe'.{u1} α _inst_2 (OfNat.ofNat.{u1} α 1 (One.toOfNat1.{u1} α (Semiring.toOne.{u1} α (Ring.toSemiring.{u1} α _inst_1))))) (OfNat.ofNat.{u1} (UniformSpace.Completion.{u1} α _inst_2) 1 (One.toOfNat1.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.one.{u1} α _inst_1 _inst_2)))
-Case conversion may be inaccurate. Consider using '#align uniform_space.completion.coe_one UniformSpace.Completion.coe_oneₓ'. -/
 @[norm_cast]
 theorem coe_one : ((1 : α) : Completion α) = 1 :=
   rfl
@@ -74,12 +68,6 @@ theorem coe_one : ((1 : α) : Completion α) = 1 :=
 
 variable {α} [TopologicalRing α]
 
-/- warning: uniform_space.completion.coe_mul -> UniformSpace.Completion.coe_mul is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] (a : α) (b : α), Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_2) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_2) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasCoeT.{u1} α _inst_2))) (HMul.hMul.{u1, u1, u1} α α α (instHMul.{u1} α (Distrib.toHasMul.{u1} α (Ring.toDistrib.{u1} α _inst_1))) a b)) (HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (instHMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasMul.{u1} α _inst_1 _inst_2)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_2) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasCoeT.{u1} α _inst_2))) a) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_2) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasCoeT.{u1} α _inst_2))) b))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] (a : α) (b : α), Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.coe'.{u1} α _inst_2 (HMul.hMul.{u1, u1, u1} α α α (instHMul.{u1} α (NonUnitalNonAssocRing.toMul.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)))) a b)) (HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (instHMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.mul.{u1} α _inst_1 _inst_2)) (UniformSpace.Completion.coe'.{u1} α _inst_2 a) (UniformSpace.Completion.coe'.{u1} α _inst_2 b))
-Case conversion may be inaccurate. Consider using '#align uniform_space.completion.coe_mul UniformSpace.Completion.coe_mulₓ'. -/
 @[norm_cast]
 theorem coe_mul (a b : α) : ((a * b : α) : Completion α) = a * b :=
   ((denseInducing_coe.Prod denseInducing_coe).extend_eq
@@ -88,12 +76,6 @@ theorem coe_mul (a b : α) : ((a * b : α) : Completion α) = a * b :=
 
 variable [UniformAddGroup α]
 
-/- warning: uniform_space.completion.continuous_mul -> UniformSpace.Completion.continuous_mul is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α _inst_1)))], Continuous.{u1, u1} (Prod.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2)) (UniformSpace.Completion.{u1} α _inst_2) (Prod.topologicalSpace.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2))) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (fun (p : Prod.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2)) => HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (instHMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasMul.{u1} α _inst_1 _inst_2)) (Prod.fst.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) p) (Prod.snd.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) p))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))], Continuous.{u1, u1} (Prod.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2)) (UniformSpace.Completion.{u1} α _inst_2) (instTopologicalSpaceProd.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2))) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (fun (p : Prod.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2)) => HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (instHMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.mul.{u1} α _inst_1 _inst_2)) (Prod.fst.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) p) (Prod.snd.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) p))
-Case conversion may be inaccurate. Consider using '#align uniform_space.completion.continuous_mul UniformSpace.Completion.continuous_mulₓ'. -/
 theorem continuous_mul : Continuous fun p : Completion α × Completion α => p.1 * p.2 :=
   by
   let m := (AddMonoidHom.mul : α →+ α →+ α).compr₂ to_compl
@@ -104,12 +86,6 @@ theorem continuous_mul : Continuous fun p : Completion α × Completion α => p.
   rfl
 #align uniform_space.completion.continuous_mul UniformSpace.Completion.continuous_mul
 
-/- warning: uniform_space.completion.continuous.mul -> UniformSpace.Completion.Continuous.mul is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α _inst_1)))] {β : Type.{u2}} [_inst_5 : TopologicalSpace.{u2} β] {f : β -> (UniformSpace.Completion.{u1} α _inst_2)} {g : β -> (UniformSpace.Completion.{u1} α _inst_2)}, (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) f) -> (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) g) -> (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (fun (b : β) => HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (instHMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasMul.{u1} α _inst_1 _inst_2)) (f b) (g b)))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))] {β : Type.{u2}} [_inst_5 : TopologicalSpace.{u2} β] {f : β -> (UniformSpace.Completion.{u1} α _inst_2)} {g : β -> (UniformSpace.Completion.{u1} α _inst_2)}, (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) f) -> (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) g) -> (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (fun (b : β) => HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (instHMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.mul.{u1} α _inst_1 _inst_2)) (f b) (g b)))
-Case conversion may be inaccurate. Consider using '#align uniform_space.completion.continuous.mul UniformSpace.Completion.Continuous.mulₓ'. -/
 theorem Continuous.mul {β : Type _} [TopologicalSpace β] {f g : β → Completion α}
     (hf : Continuous f) (hg : Continuous g) : Continuous fun b => f b * g b :=
   continuous_mul.comp (hf.prod_mk hg : _)
@@ -155,23 +131,11 @@ instance : Ring (Completion α) :=
               (continuous_snd.comp continuous_snd))))
         fun a b c => by rw [← coe_add, ← coe_mul, ← coe_mul, ← coe_mul, ← coe_add, add_mul] }
 
-/- warning: uniform_space.completion.coe_ring_hom -> UniformSpace.Completion.coeRingHom is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α _inst_1)))], RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))], RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))
-Case conversion may be inaccurate. Consider using '#align uniform_space.completion.coe_ring_hom UniformSpace.Completion.coeRingHomₓ'. -/
 /-- The map from a uniform ring to its completion, as a ring homomorphism. -/
 def coeRingHom : α →+* Completion α :=
   ⟨coe, coe_one α, fun a b => coe_mul a b, coe_zero, fun a b => coe_add a b⟩
 #align uniform_space.completion.coe_ring_hom UniformSpace.Completion.coeRingHom
 
-/- warning: uniform_space.completion.continuous_coe_ring_hom -> UniformSpace.Completion.continuous_coeRingHom is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α _inst_1)))], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (coeFn.{succ u1, succ u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) (fun (_x : RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) => α -> (UniformSpace.Completion.{u1} α _inst_2)) (RingHom.hasCoeToFun.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) (UniformSpace.Completion.coeRingHom.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (FunLike.coe.{succ u1, succ u1, succ u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => UniformSpace.Completion.{u1} α _inst_2) _x) (MulHomClass.toFunLike.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) (RingHomClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))) (RingHom.instRingHomClassRingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))))) (UniformSpace.Completion.coeRingHom.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))
-Case conversion may be inaccurate. Consider using '#align uniform_space.completion.continuous_coe_ring_hom UniformSpace.Completion.continuous_coeRingHomₓ'. -/
 theorem continuous_coeRingHom : Continuous (coeRingHom : α → Completion α) :=
   continuous_coe α
 #align uniform_space.completion.continuous_coe_ring_hom UniformSpace.Completion.continuous_coeRingHom
@@ -179,12 +143,6 @@ theorem continuous_coeRingHom : Continuous (coeRingHom : α → Completion α) :
 variable {β : Type u} [UniformSpace β] [Ring β] [UniformAddGroup β] [TopologicalRing β]
   (f : α →+* β) (hf : Continuous f)
 
-/- warning: uniform_space.completion.extension_hom -> UniformSpace.Completion.extensionHom is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (AddCommGroupWithOne.toAddGroupWithOne.{u2} α (Ring.toAddCommGroupWithOne.{u2} α _inst_1)))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (AddCommGroupWithOne.toAddGroupWithOne.{u1} β (Ring.toAddCommGroupWithOne.{u1} β _inst_6)))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) (fun (_x : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) => α -> β) (RingHom.hasCoeToFun.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) f)) -> (forall [_inst_9 : CompleteSpace.{u1} β _inst_5] [_inst_10 : SeparatedSpace.{u1} β _inst_5], RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) β (NonAssocRing.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toNonAssocRing.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))
-but is expected to have type
-  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (Ring.toAddGroupWithOne.{u2} α _inst_1))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (Ring.toAddGroupWithOne.{u1} β _inst_6))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)) (RingHom.instRingHomClassRingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))))) f)) -> (forall [_inst_9 : CompleteSpace.{u1} β _inst_5] [_inst_10 : SeparatedSpace.{u1} β _inst_5], RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) β (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))
-Case conversion may be inaccurate. Consider using '#align uniform_space.completion.extension_hom UniformSpace.Completion.extensionHomₓ'. -/
 /-- The completion extension as a ring morphism. -/
 def extensionHom [CompleteSpace β] [SeparatedSpace β] : Completion α →+* β :=
   have hf' : Continuous (f : α →+ β) := hf
@@ -209,24 +167,12 @@ def extensionHom [CompleteSpace β] [SeparatedSpace β] : Completion α →+* β
         rw [← coe_mul, extension_coe hf, extension_coe hf, extension_coe hf, f.map_mul] }
 #align uniform_space.completion.extension_hom UniformSpace.Completion.extensionHom
 
-/- warning: uniform_space.completion.top_ring_compl -> UniformSpace.Completion.topologicalRing is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α _inst_1)))], TopologicalRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (NonAssocRing.toNonUnitalNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))], TopologicalRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (NonAssocRing.toNonUnitalNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))
-Case conversion may be inaccurate. Consider using '#align uniform_space.completion.top_ring_compl UniformSpace.Completion.topologicalRingₓ'. -/
 instance topologicalRing : TopologicalRing (Completion α)
     where
   continuous_add := continuous_add
   continuous_mul := continuous_mul
 #align uniform_space.completion.top_ring_compl UniformSpace.Completion.topologicalRing
 
-/- warning: uniform_space.completion.map_ring_hom -> UniformSpace.Completion.mapRingHom is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (AddCommGroupWithOne.toAddGroupWithOne.{u2} α (Ring.toAddCommGroupWithOne.{u2} α _inst_1)))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (AddCommGroupWithOne.toAddGroupWithOne.{u1} β (Ring.toAddCommGroupWithOne.{u1} β _inst_6)))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) (fun (_x : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) => α -> β) (RingHom.hasCoeToFun.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) f)) -> (RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.{u1} β _inst_5) (NonAssocRing.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toNonAssocRing.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} β _inst_5) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} β _inst_5) (UniformSpace.Completion.ring.{u1} β _inst_6 _inst_5 _inst_8 _inst_7))))
-but is expected to have type
-  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (Ring.toAddGroupWithOne.{u2} α _inst_1))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (Ring.toAddGroupWithOne.{u1} β _inst_6))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)) (RingHom.instRingHomClassRingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))))) f)) -> (RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.{u1} β _inst_5) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} β _inst_5) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} β _inst_5) (UniformSpace.Completion.ring.{u1} β _inst_6 _inst_5 _inst_8 _inst_7))))
-Case conversion may be inaccurate. Consider using '#align uniform_space.completion.map_ring_hom UniformSpace.Completion.mapRingHomₓ'. -/
 /-- The completion map as a ring morphism. -/
 def mapRingHom (hf : Continuous f) : Completion α →+* Completion β :=
   extensionHom (coeRingHom.comp f) (continuous_coeRingHom.comp hf)
@@ -237,9 +183,6 @@ section Algebra
 variable (A : Type _) [Ring A] [UniformSpace A] [UniformAddGroup A] [TopologicalRing A] (R : Type _)
   [CommSemiring R] [Algebra R A] [UniformContinuousConstSMul R A]
 
-/- warning: uniform_space.completion.map_smul_eq_mul_coe -> UniformSpace.Completion.map_smul_eq_mul_coe is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align uniform_space.completion.map_smul_eq_mul_coe UniformSpace.Completion.map_smul_eq_mul_coeₓ'. -/
 @[simp]
 theorem map_smul_eq_mul_coe (r : R) :
     Completion.map ((· • ·) r) = (· * ·) (algebraMap R A r : Completion A) :=
@@ -261,9 +204,6 @@ instance : Algebra R (Completion A) :=
         simpa only [coe_mul] using congr_arg (coe : A → completion A) (Algebra.commutes r a)
     smul_def' := fun r x => congr_fun (map_smul_eq_mul_coe A R r) x }
 
-/- warning: uniform_space.completion.algebra_map_def -> UniformSpace.Completion.algebraMap_def is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align uniform_space.completion.algebra_map_def UniformSpace.Completion.algebraMap_defₓ'. -/
 theorem algebraMap_def (r : R) :
     algebraMap R (Completion A) r = (algebraMap R A r : Completion A) :=
   rfl
@@ -282,12 +222,6 @@ instance : CommRing (Completion R) :=
         (isClosed_eq (continuous_fst.mul continuous_snd) (continuous_snd.mul continuous_fst))
         fun a b => by rw [← coe_mul, ← coe_mul, mul_comm] }
 
-/- warning: uniform_space.completion.algebra' -> UniformSpace.Completion.algebra' is a dubious translation:
-lean 3 declaration is
-  forall (R : Type.{u1}) [_inst_9 : CommRing.{u1} R] [_inst_10 : UniformSpace.{u1} R] [_inst_11 : UniformAddGroup.{u1} R _inst_10 (AddGroupWithOne.toAddGroup.{u1} R (AddCommGroupWithOne.toAddGroupWithOne.{u1} R (Ring.toAddCommGroupWithOne.{u1} R (CommRing.toRing.{u1} R _inst_9))))] [_inst_12 : TopologicalRing.{u1} R (UniformSpace.toTopologicalSpace.{u1} R _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_9)))], Algebra.{u1, u1} R (UniformSpace.Completion.{u1} R _inst_10) (CommRing.toCommSemiring.{u1} R _inst_9) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} R _inst_10) (UniformSpace.Completion.ring.{u1} R (CommRing.toRing.{u1} R _inst_9) _inst_10 _inst_12 _inst_11))
-but is expected to have type
-  forall (R : Type.{u1}) [_inst_9 : CommRing.{u1} R] [_inst_10 : UniformSpace.{u1} R] [_inst_11 : UniformAddGroup.{u1} R _inst_10 (AddGroupWithOne.toAddGroup.{u1} R (Ring.toAddGroupWithOne.{u1} R (CommRing.toRing.{u1} R _inst_9)))] [_inst_12 : TopologicalRing.{u1} R (UniformSpace.toTopologicalSpace.{u1} R _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_9)))], Algebra.{u1, u1} R (UniformSpace.Completion.{u1} R _inst_10) (CommRing.toCommSemiring.{u1} R _inst_9) (CommSemiring.toSemiring.{u1} (UniformSpace.Completion.{u1} R _inst_10) (CommRing.toCommSemiring.{u1} (UniformSpace.Completion.{u1} R _inst_10) (UniformSpace.Completion.commRing.{u1} R _inst_9 _inst_10 _inst_11 _inst_12)))
-Case conversion may be inaccurate. Consider using '#align uniform_space.completion.algebra' UniformSpace.Completion.algebra'ₓ'. -/
 /-- A shortcut instance for the common case -/
 instance algebra' : Algebra R (Completion R) := by infer_instance
 #align uniform_space.completion.algebra' UniformSpace.Completion.algebra'
@@ -300,35 +234,17 @@ namespace UniformSpace
 
 variable {α : Type _}
 
-/- warning: uniform_space.ring_sep_rel -> UniformSpace.ring_sep_rel is a dubious translation:
-lean 3 declaration is
-  forall (α : Type.{u1}) [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α (CommRing.toRing.{u1} α _inst_1))))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], Eq.{succ u1} (Setoid.{succ u1} α) (UniformSpace.separationSetoid.{u1} α _inst_2) (Submodule.quotientRel.{u1, u1} α α (CommRing.toRing.{u1} α _inst_1) (NonUnitalNonAssocRing.toAddCommGroup.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (CommRing.toRing.{u1} α _inst_1) _inst_4 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))) (Submodule.hasBot.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1)))))))
-but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α (CommRing.toRing.{u1} α _inst_1)))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], Eq.{succ u1} (Setoid.{succ u1} α) (UniformSpace.separationSetoid.{u1} α _inst_2) (Submodule.quotientRel.{u1, u1} α α (CommRing.toRing.{u1} α _inst_1) (Ring.toAddCommGroup.{u1} α (CommRing.toRing.{u1} α _inst_1)) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (CommRing.toRing.{u1} α _inst_1) _inst_4 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))) (Submodule.instBotSubmodule.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1)))))))
-Case conversion may be inaccurate. Consider using '#align uniform_space.ring_sep_rel UniformSpace.ring_sep_relₓ'. -/
 theorem ring_sep_rel (α) [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
     separationSetoid α = Submodule.quotientRel (Ideal.closure ⊥) :=
   Setoid.ext fun x y =>
     (addGroup_separationRel x y).trans <| Iff.trans (by rfl) (Submodule.quotientRel_r_def _).symm
 #align uniform_space.ring_sep_rel UniformSpace.ring_sep_rel
 
-/- warning: uniform_space.ring_sep_quot -> UniformSpace.ring_sep_quot is a dubious translation:
-lean 3 declaration is
-  forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α (CommRing.toRing.{u1} α r))))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Eq.{succ (succ u1)} Type.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.hasQuotient.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Submodule.hasBot.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)))))))
-but is expected to have type
-  forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α (CommRing.toRing.{u1} α r)))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Eq.{succ (succ u1)} Type.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.instHasQuotientIdealToSemiringToCommSemiring.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (CommSemiring.toSemiring.{u1} α (CommRing.toCommSemiring.{u1} α r))) (Submodule.instBotSubmodule.{u1, u1} α α (CommSemiring.toSemiring.{u1} α (CommRing.toCommSemiring.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (CommSemiring.toSemiring.{u1} α (CommRing.toCommSemiring.{u1} α r))))) (Semiring.toModule.{u1} α (CommSemiring.toSemiring.{u1} α (CommRing.toCommSemiring.{u1} α r)))))))
-Case conversion may be inaccurate. Consider using '#align uniform_space.ring_sep_quot UniformSpace.ring_sep_quotₓ'. -/
 theorem ring_sep_quot (α : Type u) [r : CommRing α] [UniformSpace α] [UniformAddGroup α]
     [TopologicalRing α] : Quotient (separationSetoid α) = (α ⧸ (⊥ : Ideal α).closure) := by
   rw [@ring_sep_rel α r] <;> rfl
 #align uniform_space.ring_sep_quot UniformSpace.ring_sep_quot
 
-/- warning: uniform_space.sep_quot_equiv_ring_quot -> UniformSpace.sepQuotEquivRingQuot is a dubious translation:
-lean 3 declaration is
-  forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α (CommRing.toRing.{u1} α r))))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Equiv.{succ u1, succ u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.hasQuotient.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Submodule.hasBot.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)))))))
-but is expected to have type
-  forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α (CommRing.toRing.{u1} α r)))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Equiv.{succ u1, succ u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.instHasQuotientIdealToSemiringToCommSemiring.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (CommSemiring.toSemiring.{u1} α (CommRing.toCommSemiring.{u1} α r))) (Submodule.instBotSubmodule.{u1, u1} α α (CommSemiring.toSemiring.{u1} α (CommRing.toCommSemiring.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (CommSemiring.toSemiring.{u1} α (CommRing.toCommSemiring.{u1} α r))))) (Semiring.toModule.{u1} α (CommSemiring.toSemiring.{u1} α (CommRing.toCommSemiring.{u1} α r)))))))
-Case conversion may be inaccurate. Consider using '#align uniform_space.sep_quot_equiv_ring_quot UniformSpace.sepQuotEquivRingQuotₓ'. -/
 /-- Given a topological ring `α` equipped with a uniform structure that makes subtraction uniformly
 continuous, get an equivalence between the separated quotient of `α` and the quotient ring
 corresponding to the closure of zero. -/
@@ -338,23 +254,11 @@ def sepQuotEquivRingQuot (α) [r : CommRing α] [UniformSpace α] [UniformAddGro
     (addGroup_separationRel x y).trans <| Iff.trans (by rfl) (Submodule.quotientRel_r_def _).symm
 #align uniform_space.sep_quot_equiv_ring_quot UniformSpace.sepQuotEquivRingQuot
 
-/- warning: uniform_space.comm_ring -> UniformSpace.commRing is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α (CommRing.toRing.{u1} α _inst_1))))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], CommRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α (CommRing.toRing.{u1} α _inst_1)))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], CommRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2))
-Case conversion may be inaccurate. Consider using '#align uniform_space.comm_ring UniformSpace.commRingₓ'. -/
 -- TODO: use a form of transport a.k.a. lift definition a.k.a. transfer
 instance commRing [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
     CommRing (Quotient (separationSetoid α)) := by rw [ring_sep_quot α] <;> infer_instance
 #align uniform_space.comm_ring UniformSpace.commRing
 
-/- warning: uniform_space.topological_ring -> UniformSpace.topologicalRing is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α (CommRing.toRing.{u1} α _inst_1))))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], TopologicalRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (Quotient.topologicalSpace.{u1} α (UniformSpace.separationSetoid.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2)) (NonAssocRing.toNonUnitalNonAssocRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (Ring.toNonAssocRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (CommRing.toRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (UniformSpace.commRing.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α (CommRing.toRing.{u1} α _inst_1)))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], TopologicalRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (instTopologicalSpaceQuotient.{u1} α (UniformSpace.separationSetoid.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2)) (NonAssocRing.toNonUnitalNonAssocRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (Ring.toNonAssocRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (CommRing.toRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (UniformSpace.commRing.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))
-Case conversion may be inaccurate. Consider using '#align uniform_space.topological_ring UniformSpace.topologicalRingₓ'. -/
 instance topologicalRing [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
     TopologicalRing (Quotient (separationSetoid α)) :=
   by
@@ -374,9 +278,6 @@ variable {γ : Type _} [UniformSpace γ] [Semiring γ] [TopologicalSemiring γ]
 
 variable [T2Space γ] [CompleteSpace γ]
 
-/- warning: dense_inducing.extend_ring_hom -> DenseInducing.extendRingHom is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align dense_inducing.extend_ring_hom DenseInducing.extendRingHomₓ'. -/
 /-- The dense inducing extension as a ring homomorphism. -/
 noncomputable def DenseInducing.extendRingHom {i : α →+* β} {f : α →+* γ} (ue : UniformInducing i)
     (dr : DenseRange i) (hf : UniformContinuous f) : β →+* γ
Diff
@@ -238,10 +238,7 @@ variable (A : Type _) [Ring A] [UniformSpace A] [UniformAddGroup A] [Topological
   [CommSemiring R] [Algebra R A] [UniformContinuousConstSMul R A]
 
 /- warning: uniform_space.completion.map_smul_eq_mul_coe -> UniformSpace.Completion.map_smul_eq_mul_coe is a dubious translation:
-lean 3 declaration is
-  forall (A : Type.{u1}) [_inst_9 : Ring.{u1} A] [_inst_10 : UniformSpace.{u1} A] [_inst_11 : UniformAddGroup.{u1} A _inst_10 (AddGroupWithOne.toAddGroup.{u1} A (AddCommGroupWithOne.toAddGroupWithOne.{u1} A (Ring.toAddCommGroupWithOne.{u1} A _inst_9)))] [_inst_12 : TopologicalRing.{u1} A (UniformSpace.toTopologicalSpace.{u1} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A _inst_9))] (R : Type.{u2}) [_inst_13 : CommSemiring.{u2} R] [_inst_14 : Algebra.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u2, u1} R A _inst_10 (SMulZeroClass.toHasSmul.{u2, u1} R A (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (SMulWithZero.toSmulZeroClass.{u2, u1} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13))))) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_13) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9)))) (Algebra.toModule.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14)))))] (r : R), Eq.{succ u1} ((UniformSpace.Completion.{u1} A _inst_10) -> (UniformSpace.Completion.{u1} A _inst_10)) (UniformSpace.Completion.map.{u1, u1} A _inst_10 A _inst_10 (SMul.smul.{u2, u1} R A (SMulZeroClass.toHasSmul.{u2, u1} R A (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (SMulWithZero.toSmulZeroClass.{u2, u1} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13))))) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_13) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9)))) (Algebra.toModule.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14))))) r)) (HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.{u1} A _inst_10) (instHMul.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.hasMul.{u1} A _inst_9 _inst_10)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) A (UniformSpace.Completion.{u1} A _inst_10) (HasLiftT.mk.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (CoeTCₓ.coe.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.hasCoeT.{u1} A _inst_10))) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (fun (_x : RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) => R -> A) (RingHom.hasCoeToFun.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (algebraMap.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14) r)))
-but is expected to have type
-  forall (A : Type.{u2}) [_inst_9 : Ring.{u2} A] [_inst_10 : UniformSpace.{u2} A] [_inst_11 : UniformAddGroup.{u2} A _inst_10 (AddGroupWithOne.toAddGroup.{u2} A (Ring.toAddGroupWithOne.{u2} A _inst_9))] [_inst_12 : TopologicalRing.{u2} A (UniformSpace.toTopologicalSpace.{u2} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A _inst_9))] (R : Type.{u1}) [_inst_13 : CommSemiring.{u1} R] [_inst_14 : Algebra.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u1, u2} R A _inst_10 (Algebra.toSMul.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14)] (r : R), Eq.{succ u2} ((UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10) -> (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10)) (UniformSpace.Completion.map.{u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10 ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10 ((fun (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1688 : R) (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1690 : (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) => HSMul.hSMul.{u1, u2, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (instHSMul.{u1, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Algebra.toSMul.{u1, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_13 (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_9) _inst_14)) x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1688 x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1690) r)) ((fun (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1705 : UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10) (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1707 : UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10) => HMul.hMul.{u2, u2, u2} (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10) (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10) (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10) (instHMul.{u2} (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10) (UniformSpace.Completion.mul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_9 _inst_10)) x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1705 x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1707) (UniformSpace.Completion.coe'.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10 (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)))) (NonUnitalNonAssocSemiring.toMul.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)) (RingHom.instRingHomClassRingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))))) (algebraMap.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14) r)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.map_smul_eq_mul_coe UniformSpace.Completion.map_smul_eq_mul_coeₓ'. -/
 @[simp]
 theorem map_smul_eq_mul_coe (r : R) :
@@ -265,10 +262,7 @@ instance : Algebra R (Completion A) :=
     smul_def' := fun r x => congr_fun (map_smul_eq_mul_coe A R r) x }
 
 /- warning: uniform_space.completion.algebra_map_def -> UniformSpace.Completion.algebraMap_def is a dubious translation:
-lean 3 declaration is
-  forall (A : Type.{u1}) [_inst_9 : Ring.{u1} A] [_inst_10 : UniformSpace.{u1} A] [_inst_11 : UniformAddGroup.{u1} A _inst_10 (AddGroupWithOne.toAddGroup.{u1} A (AddCommGroupWithOne.toAddGroupWithOne.{u1} A (Ring.toAddCommGroupWithOne.{u1} A _inst_9)))] [_inst_12 : TopologicalRing.{u1} A (UniformSpace.toTopologicalSpace.{u1} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A _inst_9))] (R : Type.{u2}) [_inst_13 : CommSemiring.{u2} R] [_inst_14 : Algebra.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u2, u1} R A _inst_10 (SMulZeroClass.toHasSmul.{u2, u1} R A (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (SMulWithZero.toSmulZeroClass.{u2, u1} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13))))) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_13) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9)))) (Algebra.toModule.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14)))))] (r : R), Eq.{succ u1} (UniformSpace.Completion.{u1} A _inst_10) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)))) (fun (_x : RingHom.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)))) => R -> (UniformSpace.Completion.{u1} A _inst_10)) (RingHom.hasCoeToFun.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)))) (algebraMap.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) _inst_13 (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)) (UniformSpace.Completion.algebra.{u1, u2} A _inst_9 _inst_10 _inst_11 _inst_12 R _inst_13 _inst_14 _inst_15)) r) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) A (UniformSpace.Completion.{u1} A _inst_10) (HasLiftT.mk.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (CoeTCₓ.coe.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.hasCoeT.{u1} A _inst_10))) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (fun (_x : RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) => R -> A) (RingHom.hasCoeToFun.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (algebraMap.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14) r))
-but is expected to have type
-  forall (A : Type.{u2}) [_inst_9 : Ring.{u2} A] [_inst_10 : UniformSpace.{u2} A] [_inst_11 : UniformAddGroup.{u2} A _inst_10 (AddGroupWithOne.toAddGroup.{u2} A (Ring.toAddGroupWithOne.{u2} A _inst_9))] [_inst_12 : TopologicalRing.{u2} A (UniformSpace.toTopologicalSpace.{u2} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A _inst_9))] (R : Type.{u1}) [_inst_13 : CommSemiring.{u1} R] [_inst_14 : Algebra.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u1, u2} R A _inst_10 (Algebra.toSMul.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14)] (r : R), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => UniformSpace.Completion.{u2} A _inst_10) r) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => UniformSpace.Completion.{u2} A _inst_10) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (UniformSpace.Completion.{u2} A _inst_10) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)))) (NonUnitalNonAssocSemiring.toMul.{u2} (UniformSpace.Completion.{u2} A _inst_10) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11))))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (UniformSpace.Completion.{u2} A _inst_10) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11))) (RingHom.instRingHomClassRingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11))))))) (algebraMap.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) _inst_13 (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)) (UniformSpace.Completion.algebra.{u2, u1} A _inst_9 _inst_10 _inst_11 _inst_12 R _inst_13 _inst_14 _inst_15)) r) (UniformSpace.Completion.coe'.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10 (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)))) (NonUnitalNonAssocSemiring.toMul.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)) (RingHom.instRingHomClassRingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))))) (algebraMap.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14) r))
+<too large>
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.algebra_map_def UniformSpace.Completion.algebraMap_defₓ'. -/
 theorem algebraMap_def (r : R) :
     algebraMap R (Completion A) r = (algebraMap R A r : Completion A) :=
@@ -381,10 +375,7 @@ variable {γ : Type _} [UniformSpace γ] [Semiring γ] [TopologicalSemiring γ]
 variable [T2Space γ] [CompleteSpace γ]
 
 /- warning: dense_inducing.extend_ring_hom -> DenseInducing.extendRingHom is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : Semiring.{u1} α] {β : Type.{u2}} [_inst_3 : UniformSpace.{u2} β] [_inst_4 : Semiring.{u2} β] [_inst_5 : TopologicalSemiring.{u2} β (UniformSpace.toTopologicalSpace.{u2} β _inst_3) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4))] {γ : Type.{u3}} [_inst_6 : UniformSpace.{u3} γ] [_inst_7 : Semiring.{u3} γ] [_inst_8 : TopologicalSemiring.{u3} γ (UniformSpace.toTopologicalSpace.{u3} γ _inst_6) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} γ (Semiring.toNonAssocSemiring.{u3} γ _inst_7))] [_inst_9 : T2Space.{u3} γ (UniformSpace.toTopologicalSpace.{u3} γ _inst_6)] [_inst_10 : CompleteSpace.{u3} γ _inst_6] {i : RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)} {f : RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)}, (UniformInducing.{u1, u2} α β _inst_1 _inst_3 (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) (fun (_x : RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) => α -> β) (RingHom.hasCoeToFun.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) i)) -> (DenseRange.{u2, u1} β (UniformSpace.toTopologicalSpace.{u2} β _inst_3) α (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) (fun (_x : RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) => α -> β) (RingHom.hasCoeToFun.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) i)) -> (UniformContinuous.{u1, u3} α γ _inst_1 _inst_6 (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) (fun (_x : RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) => α -> γ) (RingHom.hasCoeToFun.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) f)) -> (RingHom.{u2, u3} β γ (Semiring.toNonAssocSemiring.{u2} β _inst_4) (Semiring.toNonAssocSemiring.{u3} γ _inst_7))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : Semiring.{u1} α] {β : Type.{u2}} [_inst_3 : UniformSpace.{u2} β] [_inst_4 : Semiring.{u2} β] [_inst_5 : TopologicalSemiring.{u2} β (UniformSpace.toTopologicalSpace.{u2} β _inst_3) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4))] {γ : Type.{u3}} [_inst_6 : UniformSpace.{u3} γ] [_inst_7 : Semiring.{u3} γ] [_inst_8 : TopologicalSemiring.{u3} γ (UniformSpace.toTopologicalSpace.{u3} γ _inst_6) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} γ (Semiring.toNonAssocSemiring.{u3} γ _inst_7))] [_inst_9 : T2Space.{u3} γ (UniformSpace.toTopologicalSpace.{u3} γ _inst_6)] [_inst_10 : CompleteSpace.{u3} γ _inst_6] {i : RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)} {f : RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)}, (UniformInducing.{u1, u2} α β _inst_1 _inst_3 (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4) (RingHom.instRingHomClassRingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4))))) i)) -> (DenseRange.{u2, u1} β (UniformSpace.toTopologicalSpace.{u2} β _inst_3) α (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4) (RingHom.instRingHomClassRingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4))))) i)) -> (UniformContinuous.{u1, u3} α γ _inst_1 _inst_6 (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => γ) _x) (MulHomClass.toFunLike.{max u1 u3, u1, u3} (RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) α γ (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u3} γ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} γ (Semiring.toNonAssocSemiring.{u3} γ _inst_7))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u3, u1, u3} (RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) α γ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} γ (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u3, u1, u3} (RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7) (RingHom.instRingHomClassRingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7))))) f)) -> (RingHom.{u2, u3} β γ (Semiring.toNonAssocSemiring.{u2} β _inst_4) (Semiring.toNonAssocSemiring.{u3} γ _inst_7))
+<too large>
 Case conversion may be inaccurate. Consider using '#align dense_inducing.extend_ring_hom DenseInducing.extendRingHomₓ'. -/
 /-- The dense inducing extension as a ring homomorphism. -/
 noncomputable def DenseInducing.extendRingHom {i : α →+* β} {f : α →+* γ} (ue : UniformInducing i)
Diff
@@ -170,7 +170,7 @@ def coeRingHom : α →+* Completion α :=
 lean 3 declaration is
   forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α _inst_1)))], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (coeFn.{succ u1, succ u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) (fun (_x : RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) => α -> (UniformSpace.Completion.{u1} α _inst_2)) (RingHom.hasCoeToFun.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) (UniformSpace.Completion.coeRingHom.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))
 but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (FunLike.coe.{succ u1, succ u1, succ u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => UniformSpace.Completion.{u1} α _inst_2) _x) (MulHomClass.toFunLike.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) (RingHomClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))) (RingHom.instRingHomClassRingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))))) (UniformSpace.Completion.coeRingHom.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (FunLike.coe.{succ u1, succ u1, succ u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => UniformSpace.Completion.{u1} α _inst_2) _x) (MulHomClass.toFunLike.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) (RingHomClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))) (RingHom.instRingHomClassRingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))))) (UniformSpace.Completion.coeRingHom.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.continuous_coe_ring_hom UniformSpace.Completion.continuous_coeRingHomₓ'. -/
 theorem continuous_coeRingHom : Continuous (coeRingHom : α → Completion α) :=
   continuous_coe α
@@ -183,7 +183,7 @@ variable {β : Type u} [UniformSpace β] [Ring β] [UniformAddGroup β] [Topolog
 lean 3 declaration is
   forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (AddCommGroupWithOne.toAddGroupWithOne.{u2} α (Ring.toAddCommGroupWithOne.{u2} α _inst_1)))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (AddCommGroupWithOne.toAddGroupWithOne.{u1} β (Ring.toAddCommGroupWithOne.{u1} β _inst_6)))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) (fun (_x : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) => α -> β) (RingHom.hasCoeToFun.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) f)) -> (forall [_inst_9 : CompleteSpace.{u1} β _inst_5] [_inst_10 : SeparatedSpace.{u1} β _inst_5], RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) β (NonAssocRing.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toNonAssocRing.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))
 but is expected to have type
-  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (Ring.toAddGroupWithOne.{u2} α _inst_1))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (Ring.toAddGroupWithOne.{u1} β _inst_6))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)) (RingHom.instRingHomClassRingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))))) f)) -> (forall [_inst_9 : CompleteSpace.{u1} β _inst_5] [_inst_10 : SeparatedSpace.{u1} β _inst_5], RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) β (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))
+  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (Ring.toAddGroupWithOne.{u2} α _inst_1))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (Ring.toAddGroupWithOne.{u1} β _inst_6))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)) (RingHom.instRingHomClassRingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))))) f)) -> (forall [_inst_9 : CompleteSpace.{u1} β _inst_5] [_inst_10 : SeparatedSpace.{u1} β _inst_5], RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) β (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.extension_hom UniformSpace.Completion.extensionHomₓ'. -/
 /-- The completion extension as a ring morphism. -/
 def extensionHom [CompleteSpace β] [SeparatedSpace β] : Completion α →+* β :=
@@ -225,7 +225,7 @@ instance topologicalRing : TopologicalRing (Completion α)
 lean 3 declaration is
   forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (AddCommGroupWithOne.toAddGroupWithOne.{u2} α (Ring.toAddCommGroupWithOne.{u2} α _inst_1)))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (AddCommGroupWithOne.toAddGroupWithOne.{u1} β (Ring.toAddCommGroupWithOne.{u1} β _inst_6)))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) (fun (_x : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) => α -> β) (RingHom.hasCoeToFun.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) f)) -> (RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.{u1} β _inst_5) (NonAssocRing.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toNonAssocRing.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} β _inst_5) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} β _inst_5) (UniformSpace.Completion.ring.{u1} β _inst_6 _inst_5 _inst_8 _inst_7))))
 but is expected to have type
-  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (Ring.toAddGroupWithOne.{u2} α _inst_1))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (Ring.toAddGroupWithOne.{u1} β _inst_6))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)) (RingHom.instRingHomClassRingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))))) f)) -> (RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.{u1} β _inst_5) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} β _inst_5) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} β _inst_5) (UniformSpace.Completion.ring.{u1} β _inst_6 _inst_5 _inst_8 _inst_7))))
+  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (Ring.toAddGroupWithOne.{u2} α _inst_1))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (Ring.toAddGroupWithOne.{u1} β _inst_6))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)) (RingHom.instRingHomClassRingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))))) f)) -> (RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.{u1} β _inst_5) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} β _inst_5) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} β _inst_5) (UniformSpace.Completion.ring.{u1} β _inst_6 _inst_5 _inst_8 _inst_7))))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.map_ring_hom UniformSpace.Completion.mapRingHomₓ'. -/
 /-- The completion map as a ring morphism. -/
 def mapRingHom (hf : Continuous f) : Completion α →+* Completion β :=
@@ -241,7 +241,7 @@ variable (A : Type _) [Ring A] [UniformSpace A] [UniformAddGroup A] [Topological
 lean 3 declaration is
   forall (A : Type.{u1}) [_inst_9 : Ring.{u1} A] [_inst_10 : UniformSpace.{u1} A] [_inst_11 : UniformAddGroup.{u1} A _inst_10 (AddGroupWithOne.toAddGroup.{u1} A (AddCommGroupWithOne.toAddGroupWithOne.{u1} A (Ring.toAddCommGroupWithOne.{u1} A _inst_9)))] [_inst_12 : TopologicalRing.{u1} A (UniformSpace.toTopologicalSpace.{u1} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A _inst_9))] (R : Type.{u2}) [_inst_13 : CommSemiring.{u2} R] [_inst_14 : Algebra.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u2, u1} R A _inst_10 (SMulZeroClass.toHasSmul.{u2, u1} R A (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (SMulWithZero.toSmulZeroClass.{u2, u1} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13))))) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_13) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9)))) (Algebra.toModule.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14)))))] (r : R), Eq.{succ u1} ((UniformSpace.Completion.{u1} A _inst_10) -> (UniformSpace.Completion.{u1} A _inst_10)) (UniformSpace.Completion.map.{u1, u1} A _inst_10 A _inst_10 (SMul.smul.{u2, u1} R A (SMulZeroClass.toHasSmul.{u2, u1} R A (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (SMulWithZero.toSmulZeroClass.{u2, u1} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13))))) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_13) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9)))) (Algebra.toModule.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14))))) r)) (HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.{u1} A _inst_10) (instHMul.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.hasMul.{u1} A _inst_9 _inst_10)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) A (UniformSpace.Completion.{u1} A _inst_10) (HasLiftT.mk.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (CoeTCₓ.coe.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.hasCoeT.{u1} A _inst_10))) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (fun (_x : RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) => R -> A) (RingHom.hasCoeToFun.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (algebraMap.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14) r)))
 but is expected to have type
-  forall (A : Type.{u2}) [_inst_9 : Ring.{u2} A] [_inst_10 : UniformSpace.{u2} A] [_inst_11 : UniformAddGroup.{u2} A _inst_10 (AddGroupWithOne.toAddGroup.{u2} A (Ring.toAddGroupWithOne.{u2} A _inst_9))] [_inst_12 : TopologicalRing.{u2} A (UniformSpace.toTopologicalSpace.{u2} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A _inst_9))] (R : Type.{u1}) [_inst_13 : CommSemiring.{u1} R] [_inst_14 : Algebra.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u1, u2} R A _inst_10 (Algebra.toSMul.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14)] (r : R), Eq.{succ u2} ((UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) -> (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10)) (UniformSpace.Completion.map.{u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10 ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10 ((fun (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1688 : R) (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1690 : (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) => HSMul.hSMul.{u1, u2, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) (instHSMul.{u1, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) (Algebra.toSMul.{u1, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_13 (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_9) _inst_14)) x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1688 x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1690) r)) ((fun (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1705 : UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1707 : UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) => HMul.hMul.{u2, u2, u2} (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (instHMul.{u2} (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (UniformSpace.Completion.mul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_9 _inst_10)) x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1705 x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1707) (UniformSpace.Completion.coe'.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10 (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)))) (NonUnitalNonAssocSemiring.toMul.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)) (RingHom.instRingHomClassRingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))))) (algebraMap.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14) r)))
+  forall (A : Type.{u2}) [_inst_9 : Ring.{u2} A] [_inst_10 : UniformSpace.{u2} A] [_inst_11 : UniformAddGroup.{u2} A _inst_10 (AddGroupWithOne.toAddGroup.{u2} A (Ring.toAddGroupWithOne.{u2} A _inst_9))] [_inst_12 : TopologicalRing.{u2} A (UniformSpace.toTopologicalSpace.{u2} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A _inst_9))] (R : Type.{u1}) [_inst_13 : CommSemiring.{u1} R] [_inst_14 : Algebra.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u1, u2} R A _inst_10 (Algebra.toSMul.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14)] (r : R), Eq.{succ u2} ((UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10) -> (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10)) (UniformSpace.Completion.map.{u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10 ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10 ((fun (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1688 : R) (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1690 : (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) => HSMul.hSMul.{u1, u2, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (instHSMul.{u1, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) (Algebra.toSMul.{u1, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_13 (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_9) _inst_14)) x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1688 x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1690) r)) ((fun (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1705 : UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10) (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1707 : UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10) => HMul.hMul.{u2, u2, u2} (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10) (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10) (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10) (instHMul.{u2} (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10) (UniformSpace.Completion.mul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_9 _inst_10)) x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1705 x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1707) (UniformSpace.Completion.coe'.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10 (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)))) (NonUnitalNonAssocSemiring.toMul.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)) (RingHom.instRingHomClassRingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))))) (algebraMap.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14) r)))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.map_smul_eq_mul_coe UniformSpace.Completion.map_smul_eq_mul_coeₓ'. -/
 @[simp]
 theorem map_smul_eq_mul_coe (r : R) :
@@ -268,7 +268,7 @@ instance : Algebra R (Completion A) :=
 lean 3 declaration is
   forall (A : Type.{u1}) [_inst_9 : Ring.{u1} A] [_inst_10 : UniformSpace.{u1} A] [_inst_11 : UniformAddGroup.{u1} A _inst_10 (AddGroupWithOne.toAddGroup.{u1} A (AddCommGroupWithOne.toAddGroupWithOne.{u1} A (Ring.toAddCommGroupWithOne.{u1} A _inst_9)))] [_inst_12 : TopologicalRing.{u1} A (UniformSpace.toTopologicalSpace.{u1} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A _inst_9))] (R : Type.{u2}) [_inst_13 : CommSemiring.{u2} R] [_inst_14 : Algebra.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u2, u1} R A _inst_10 (SMulZeroClass.toHasSmul.{u2, u1} R A (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (SMulWithZero.toSmulZeroClass.{u2, u1} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13))))) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_13) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9)))) (Algebra.toModule.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14)))))] (r : R), Eq.{succ u1} (UniformSpace.Completion.{u1} A _inst_10) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)))) (fun (_x : RingHom.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)))) => R -> (UniformSpace.Completion.{u1} A _inst_10)) (RingHom.hasCoeToFun.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)))) (algebraMap.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) _inst_13 (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)) (UniformSpace.Completion.algebra.{u1, u2} A _inst_9 _inst_10 _inst_11 _inst_12 R _inst_13 _inst_14 _inst_15)) r) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) A (UniformSpace.Completion.{u1} A _inst_10) (HasLiftT.mk.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (CoeTCₓ.coe.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.hasCoeT.{u1} A _inst_10))) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (fun (_x : RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) => R -> A) (RingHom.hasCoeToFun.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (algebraMap.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14) r))
 but is expected to have type
-  forall (A : Type.{u2}) [_inst_9 : Ring.{u2} A] [_inst_10 : UniformSpace.{u2} A] [_inst_11 : UniformAddGroup.{u2} A _inst_10 (AddGroupWithOne.toAddGroup.{u2} A (Ring.toAddGroupWithOne.{u2} A _inst_9))] [_inst_12 : TopologicalRing.{u2} A (UniformSpace.toTopologicalSpace.{u2} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A _inst_9))] (R : Type.{u1}) [_inst_13 : CommSemiring.{u1} R] [_inst_14 : Algebra.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u1, u2} R A _inst_10 (Algebra.toSMul.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14)] (r : R), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => UniformSpace.Completion.{u2} A _inst_10) r) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => UniformSpace.Completion.{u2} A _inst_10) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (UniformSpace.Completion.{u2} A _inst_10) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)))) (NonUnitalNonAssocSemiring.toMul.{u2} (UniformSpace.Completion.{u2} A _inst_10) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11))))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (UniformSpace.Completion.{u2} A _inst_10) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11))) (RingHom.instRingHomClassRingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11))))))) (algebraMap.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) _inst_13 (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)) (UniformSpace.Completion.algebra.{u2, u1} A _inst_9 _inst_10 _inst_11 _inst_12 R _inst_13 _inst_14 _inst_15)) r) (UniformSpace.Completion.coe'.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10 (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)))) (NonUnitalNonAssocSemiring.toMul.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)) (RingHom.instRingHomClassRingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))))) (algebraMap.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14) r))
+  forall (A : Type.{u2}) [_inst_9 : Ring.{u2} A] [_inst_10 : UniformSpace.{u2} A] [_inst_11 : UniformAddGroup.{u2} A _inst_10 (AddGroupWithOne.toAddGroup.{u2} A (Ring.toAddGroupWithOne.{u2} A _inst_9))] [_inst_12 : TopologicalRing.{u2} A (UniformSpace.toTopologicalSpace.{u2} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A _inst_9))] (R : Type.{u1}) [_inst_13 : CommSemiring.{u1} R] [_inst_14 : Algebra.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u1, u2} R A _inst_10 (Algebra.toSMul.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14)] (r : R), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => UniformSpace.Completion.{u2} A _inst_10) r) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => UniformSpace.Completion.{u2} A _inst_10) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (UniformSpace.Completion.{u2} A _inst_10) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)))) (NonUnitalNonAssocSemiring.toMul.{u2} (UniformSpace.Completion.{u2} A _inst_10) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11))))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (UniformSpace.Completion.{u2} A _inst_10) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11))) (RingHom.instRingHomClassRingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11))))))) (algebraMap.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) _inst_13 (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)) (UniformSpace.Completion.algebra.{u2, u1} A _inst_9 _inst_10 _inst_11 _inst_12 R _inst_13 _inst_14 _inst_15)) r) (UniformSpace.Completion.coe'.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) r) _inst_10 (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)))) (NonUnitalNonAssocSemiring.toMul.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)) (RingHom.instRingHomClassRingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))))) (algebraMap.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14) r))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.algebra_map_def UniformSpace.Completion.algebraMap_defₓ'. -/
 theorem algebraMap_def (r : R) :
     algebraMap R (Completion A) r = (algebraMap R A r : Completion A) :=
@@ -384,7 +384,7 @@ variable [T2Space γ] [CompleteSpace γ]
 lean 3 declaration is
   forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : Semiring.{u1} α] {β : Type.{u2}} [_inst_3 : UniformSpace.{u2} β] [_inst_4 : Semiring.{u2} β] [_inst_5 : TopologicalSemiring.{u2} β (UniformSpace.toTopologicalSpace.{u2} β _inst_3) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4))] {γ : Type.{u3}} [_inst_6 : UniformSpace.{u3} γ] [_inst_7 : Semiring.{u3} γ] [_inst_8 : TopologicalSemiring.{u3} γ (UniformSpace.toTopologicalSpace.{u3} γ _inst_6) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} γ (Semiring.toNonAssocSemiring.{u3} γ _inst_7))] [_inst_9 : T2Space.{u3} γ (UniformSpace.toTopologicalSpace.{u3} γ _inst_6)] [_inst_10 : CompleteSpace.{u3} γ _inst_6] {i : RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)} {f : RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)}, (UniformInducing.{u1, u2} α β _inst_1 _inst_3 (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) (fun (_x : RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) => α -> β) (RingHom.hasCoeToFun.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) i)) -> (DenseRange.{u2, u1} β (UniformSpace.toTopologicalSpace.{u2} β _inst_3) α (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) (fun (_x : RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) => α -> β) (RingHom.hasCoeToFun.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) i)) -> (UniformContinuous.{u1, u3} α γ _inst_1 _inst_6 (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) (fun (_x : RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) => α -> γ) (RingHom.hasCoeToFun.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) f)) -> (RingHom.{u2, u3} β γ (Semiring.toNonAssocSemiring.{u2} β _inst_4) (Semiring.toNonAssocSemiring.{u3} γ _inst_7))
 but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : Semiring.{u1} α] {β : Type.{u2}} [_inst_3 : UniformSpace.{u2} β] [_inst_4 : Semiring.{u2} β] [_inst_5 : TopologicalSemiring.{u2} β (UniformSpace.toTopologicalSpace.{u2} β _inst_3) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4))] {γ : Type.{u3}} [_inst_6 : UniformSpace.{u3} γ] [_inst_7 : Semiring.{u3} γ] [_inst_8 : TopologicalSemiring.{u3} γ (UniformSpace.toTopologicalSpace.{u3} γ _inst_6) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} γ (Semiring.toNonAssocSemiring.{u3} γ _inst_7))] [_inst_9 : T2Space.{u3} γ (UniformSpace.toTopologicalSpace.{u3} γ _inst_6)] [_inst_10 : CompleteSpace.{u3} γ _inst_6] {i : RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)} {f : RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)}, (UniformInducing.{u1, u2} α β _inst_1 _inst_3 (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4) (RingHom.instRingHomClassRingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4))))) i)) -> (DenseRange.{u2, u1} β (UniformSpace.toTopologicalSpace.{u2} β _inst_3) α (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4) (RingHom.instRingHomClassRingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4))))) i)) -> (UniformContinuous.{u1, u3} α γ _inst_1 _inst_6 (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => γ) _x) (MulHomClass.toFunLike.{max u1 u3, u1, u3} (RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) α γ (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u3} γ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} γ (Semiring.toNonAssocSemiring.{u3} γ _inst_7))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u3, u1, u3} (RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) α γ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} γ (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u3, u1, u3} (RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7) (RingHom.instRingHomClassRingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7))))) f)) -> (RingHom.{u2, u3} β γ (Semiring.toNonAssocSemiring.{u2} β _inst_4) (Semiring.toNonAssocSemiring.{u3} γ _inst_7))
+  forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : Semiring.{u1} α] {β : Type.{u2}} [_inst_3 : UniformSpace.{u2} β] [_inst_4 : Semiring.{u2} β] [_inst_5 : TopologicalSemiring.{u2} β (UniformSpace.toTopologicalSpace.{u2} β _inst_3) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4))] {γ : Type.{u3}} [_inst_6 : UniformSpace.{u3} γ] [_inst_7 : Semiring.{u3} γ] [_inst_8 : TopologicalSemiring.{u3} γ (UniformSpace.toTopologicalSpace.{u3} γ _inst_6) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} γ (Semiring.toNonAssocSemiring.{u3} γ _inst_7))] [_inst_9 : T2Space.{u3} γ (UniformSpace.toTopologicalSpace.{u3} γ _inst_6)] [_inst_10 : CompleteSpace.{u3} γ _inst_6] {i : RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)} {f : RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)}, (UniformInducing.{u1, u2} α β _inst_1 _inst_3 (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4) (RingHom.instRingHomClassRingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4))))) i)) -> (DenseRange.{u2, u1} β (UniformSpace.toTopologicalSpace.{u2} β _inst_3) α (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4) (RingHom.instRingHomClassRingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4))))) i)) -> (UniformContinuous.{u1, u3} α γ _inst_1 _inst_6 (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => γ) _x) (MulHomClass.toFunLike.{max u1 u3, u1, u3} (RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) α γ (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u3} γ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} γ (Semiring.toNonAssocSemiring.{u3} γ _inst_7))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u3, u1, u3} (RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) α γ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} γ (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u3, u1, u3} (RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7) (RingHom.instRingHomClassRingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7))))) f)) -> (RingHom.{u2, u3} β γ (Semiring.toNonAssocSemiring.{u2} β _inst_4) (Semiring.toNonAssocSemiring.{u3} γ _inst_7))
 Case conversion may be inaccurate. Consider using '#align dense_inducing.extend_ring_hom DenseInducing.extendRingHomₓ'. -/
 /-- The dense inducing extension as a ring homomorphism. -/
 noncomputable def DenseInducing.extendRingHom {i : α →+* β} {f : α →+* γ} (ue : UniformInducing i)
Diff
@@ -65,7 +65,7 @@ instance : Mul (Completion α) :=
 lean 3 declaration is
   forall (α : Type.{u1}) [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α], Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_2) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_2) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasCoeT.{u1} α _inst_2))) (OfNat.ofNat.{u1} α 1 (OfNat.mk.{u1} α 1 (One.one.{u1} α (AddMonoidWithOne.toOne.{u1} α (AddGroupWithOne.toAddMonoidWithOne.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α _inst_1)))))))) (OfNat.ofNat.{u1} (UniformSpace.Completion.{u1} α _inst_2) 1 (OfNat.mk.{u1} (UniformSpace.Completion.{u1} α _inst_2) 1 (One.one.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasOne.{u1} α _inst_1 _inst_2))))
 but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α], Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.coe'.{u1} α _inst_2 (OfNat.ofNat.{u1} α 1 (One.toOfNat1.{u1} α (NonAssocRing.toOne.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))))) (OfNat.ofNat.{u1} (UniformSpace.Completion.{u1} α _inst_2) 1 (One.toOfNat1.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.one.{u1} α _inst_1 _inst_2)))
+  forall (α : Type.{u1}) [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α], Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.coe'.{u1} α _inst_2 (OfNat.ofNat.{u1} α 1 (One.toOfNat1.{u1} α (Semiring.toOne.{u1} α (Ring.toSemiring.{u1} α _inst_1))))) (OfNat.ofNat.{u1} (UniformSpace.Completion.{u1} α _inst_2) 1 (One.toOfNat1.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.one.{u1} α _inst_1 _inst_2)))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.coe_one UniformSpace.Completion.coe_oneₓ'. -/
 @[norm_cast]
 theorem coe_one : ((1 : α) : Completion α) = 1 :=
@@ -159,7 +159,7 @@ instance : Ring (Completion α) :=
 lean 3 declaration is
   forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α _inst_1)))], RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))
 but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))], RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))], RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.coe_ring_hom UniformSpace.Completion.coeRingHomₓ'. -/
 /-- The map from a uniform ring to its completion, as a ring homomorphism. -/
 def coeRingHom : α →+* Completion α :=
@@ -170,7 +170,7 @@ def coeRingHom : α →+* Completion α :=
 lean 3 declaration is
   forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α _inst_1)))], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (coeFn.{succ u1, succ u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) (fun (_x : RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) => α -> (UniformSpace.Completion.{u1} α _inst_2)) (RingHom.hasCoeToFun.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) (UniformSpace.Completion.coeRingHom.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))
 but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (FunLike.coe.{succ u1, succ u1, succ u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => UniformSpace.Completion.{u1} α _inst_2) _x) (MulHomClass.toFunLike.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) (RingHomClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))) (RingHom.instRingHomClassRingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))))) (UniformSpace.Completion.coeRingHom.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (FunLike.coe.{succ u1, succ u1, succ u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => UniformSpace.Completion.{u1} α _inst_2) _x) (MulHomClass.toFunLike.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) (RingHomClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))) (RingHom.instRingHomClassRingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))))) (UniformSpace.Completion.coeRingHom.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.continuous_coe_ring_hom UniformSpace.Completion.continuous_coeRingHomₓ'. -/
 theorem continuous_coeRingHom : Continuous (coeRingHom : α → Completion α) :=
   continuous_coe α
@@ -183,7 +183,7 @@ variable {β : Type u} [UniformSpace β] [Ring β] [UniformAddGroup β] [Topolog
 lean 3 declaration is
   forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (AddCommGroupWithOne.toAddGroupWithOne.{u2} α (Ring.toAddCommGroupWithOne.{u2} α _inst_1)))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (AddCommGroupWithOne.toAddGroupWithOne.{u1} β (Ring.toAddCommGroupWithOne.{u1} β _inst_6)))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) (fun (_x : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) => α -> β) (RingHom.hasCoeToFun.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) f)) -> (forall [_inst_9 : CompleteSpace.{u1} β _inst_5] [_inst_10 : SeparatedSpace.{u1} β _inst_5], RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) β (NonAssocRing.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toNonAssocRing.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))
 but is expected to have type
-  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (Ring.toAddGroupWithOne.{u2} α _inst_1))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (Ring.toAddGroupWithOne.{u1} β _inst_6))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)) (RingHom.instRingHomClassRingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))))) f)) -> (forall [_inst_9 : CompleteSpace.{u1} β _inst_5] [_inst_10 : SeparatedSpace.{u1} β _inst_5], RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) β (NonAssocRing.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toNonAssocRing.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))
+  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (Ring.toAddGroupWithOne.{u2} α _inst_1))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (Ring.toAddGroupWithOne.{u1} β _inst_6))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)) (RingHom.instRingHomClassRingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))))) f)) -> (forall [_inst_9 : CompleteSpace.{u1} β _inst_5] [_inst_10 : SeparatedSpace.{u1} β _inst_5], RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) β (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.extension_hom UniformSpace.Completion.extensionHomₓ'. -/
 /-- The completion extension as a ring morphism. -/
 def extensionHom [CompleteSpace β] [SeparatedSpace β] : Completion α →+* β :=
@@ -225,7 +225,7 @@ instance topologicalRing : TopologicalRing (Completion α)
 lean 3 declaration is
   forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (AddCommGroupWithOne.toAddGroupWithOne.{u2} α (Ring.toAddCommGroupWithOne.{u2} α _inst_1)))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (AddCommGroupWithOne.toAddGroupWithOne.{u1} β (Ring.toAddCommGroupWithOne.{u1} β _inst_6)))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) (fun (_x : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) => α -> β) (RingHom.hasCoeToFun.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) f)) -> (RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.{u1} β _inst_5) (NonAssocRing.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toNonAssocRing.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} β _inst_5) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} β _inst_5) (UniformSpace.Completion.ring.{u1} β _inst_6 _inst_5 _inst_8 _inst_7))))
 but is expected to have type
-  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (Ring.toAddGroupWithOne.{u2} α _inst_1))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (Ring.toAddGroupWithOne.{u1} β _inst_6))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)) (RingHom.instRingHomClassRingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))))) f)) -> (RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.{u1} β _inst_5) (NonAssocRing.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toNonAssocRing.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} β _inst_5) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} β _inst_5) (UniformSpace.Completion.ring.{u1} β _inst_6 _inst_5 _inst_8 _inst_7))))
+  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (Ring.toAddGroupWithOne.{u2} α _inst_1))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (Ring.toAddGroupWithOne.{u1} β _inst_6))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6))) α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)) (RingHom.instRingHomClassRingHom.{u2, u1} α β (Semiring.toNonAssocSemiring.{u2} α (Ring.toSemiring.{u2} α _inst_1)) (Semiring.toNonAssocSemiring.{u1} β (Ring.toSemiring.{u1} β _inst_6)))))) f)) -> (RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.{u1} β _inst_5) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} β _inst_5) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} β _inst_5) (UniformSpace.Completion.ring.{u1} β _inst_6 _inst_5 _inst_8 _inst_7))))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.map_ring_hom UniformSpace.Completion.mapRingHomₓ'. -/
 /-- The completion map as a ring morphism. -/
 def mapRingHom (hf : Continuous f) : Completion α →+* Completion β :=
@@ -292,7 +292,7 @@ instance : CommRing (Completion R) :=
 lean 3 declaration is
   forall (R : Type.{u1}) [_inst_9 : CommRing.{u1} R] [_inst_10 : UniformSpace.{u1} R] [_inst_11 : UniformAddGroup.{u1} R _inst_10 (AddGroupWithOne.toAddGroup.{u1} R (AddCommGroupWithOne.toAddGroupWithOne.{u1} R (Ring.toAddCommGroupWithOne.{u1} R (CommRing.toRing.{u1} R _inst_9))))] [_inst_12 : TopologicalRing.{u1} R (UniformSpace.toTopologicalSpace.{u1} R _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_9)))], Algebra.{u1, u1} R (UniformSpace.Completion.{u1} R _inst_10) (CommRing.toCommSemiring.{u1} R _inst_9) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} R _inst_10) (UniformSpace.Completion.ring.{u1} R (CommRing.toRing.{u1} R _inst_9) _inst_10 _inst_12 _inst_11))
 but is expected to have type
-  forall (R : Type.{u1}) [_inst_9 : CommRing.{u1} R] [_inst_10 : UniformSpace.{u1} R] [_inst_11 : UniformAddGroup.{u1} R _inst_10 (AddGroupWithOne.toAddGroup.{u1} R (Ring.toAddGroupWithOne.{u1} R (CommRing.toRing.{u1} R _inst_9)))] [_inst_12 : TopologicalRing.{u1} R (UniformSpace.toTopologicalSpace.{u1} R _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_9)))], Algebra.{u1, u1} R (UniformSpace.Completion.{u1} R _inst_10) (CommRing.toCommSemiring.{u1} R _inst_9) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} R _inst_10) (UniformSpace.Completion.ring.{u1} R (CommRing.toRing.{u1} R _inst_9) _inst_10 _inst_12 _inst_11))
+  forall (R : Type.{u1}) [_inst_9 : CommRing.{u1} R] [_inst_10 : UniformSpace.{u1} R] [_inst_11 : UniformAddGroup.{u1} R _inst_10 (AddGroupWithOne.toAddGroup.{u1} R (Ring.toAddGroupWithOne.{u1} R (CommRing.toRing.{u1} R _inst_9)))] [_inst_12 : TopologicalRing.{u1} R (UniformSpace.toTopologicalSpace.{u1} R _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_9)))], Algebra.{u1, u1} R (UniformSpace.Completion.{u1} R _inst_10) (CommRing.toCommSemiring.{u1} R _inst_9) (CommSemiring.toSemiring.{u1} (UniformSpace.Completion.{u1} R _inst_10) (CommRing.toCommSemiring.{u1} (UniformSpace.Completion.{u1} R _inst_10) (UniformSpace.Completion.commRing.{u1} R _inst_9 _inst_10 _inst_11 _inst_12)))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.algebra' UniformSpace.Completion.algebra'ₓ'. -/
 /-- A shortcut instance for the common case -/
 instance algebra' : Algebra R (Completion R) := by infer_instance
@@ -322,7 +322,7 @@ theorem ring_sep_rel (α) [CommRing α] [UniformSpace α] [UniformAddGroup α] [
 lean 3 declaration is
   forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α (CommRing.toRing.{u1} α r))))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Eq.{succ (succ u1)} Type.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.hasQuotient.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Submodule.hasBot.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)))))))
 but is expected to have type
-  forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α (CommRing.toRing.{u1} α r)))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Eq.{succ (succ u1)} Type.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.instHasQuotientIdealToSemiringToRing.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Submodule.instBotSubmodule.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)))))))
+  forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α (CommRing.toRing.{u1} α r)))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Eq.{succ (succ u1)} Type.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.instHasQuotientIdealToSemiringToCommSemiring.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (CommSemiring.toSemiring.{u1} α (CommRing.toCommSemiring.{u1} α r))) (Submodule.instBotSubmodule.{u1, u1} α α (CommSemiring.toSemiring.{u1} α (CommRing.toCommSemiring.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (CommSemiring.toSemiring.{u1} α (CommRing.toCommSemiring.{u1} α r))))) (Semiring.toModule.{u1} α (CommSemiring.toSemiring.{u1} α (CommRing.toCommSemiring.{u1} α r)))))))
 Case conversion may be inaccurate. Consider using '#align uniform_space.ring_sep_quot UniformSpace.ring_sep_quotₓ'. -/
 theorem ring_sep_quot (α : Type u) [r : CommRing α] [UniformSpace α] [UniformAddGroup α]
     [TopologicalRing α] : Quotient (separationSetoid α) = (α ⧸ (⊥ : Ideal α).closure) := by
@@ -333,7 +333,7 @@ theorem ring_sep_quot (α : Type u) [r : CommRing α] [UniformSpace α] [Uniform
 lean 3 declaration is
   forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α (CommRing.toRing.{u1} α r))))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Equiv.{succ u1, succ u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.hasQuotient.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Submodule.hasBot.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)))))))
 but is expected to have type
-  forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α (CommRing.toRing.{u1} α r)))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Equiv.{succ u1, succ u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.instHasQuotientIdealToSemiringToRing.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Submodule.instBotSubmodule.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)))))))
+  forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α (CommRing.toRing.{u1} α r)))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Equiv.{succ u1, succ u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.instHasQuotientIdealToSemiringToCommSemiring.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (CommSemiring.toSemiring.{u1} α (CommRing.toCommSemiring.{u1} α r))) (Submodule.instBotSubmodule.{u1, u1} α α (CommSemiring.toSemiring.{u1} α (CommRing.toCommSemiring.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (CommSemiring.toSemiring.{u1} α (CommRing.toCommSemiring.{u1} α r))))) (Semiring.toModule.{u1} α (CommSemiring.toSemiring.{u1} α (CommRing.toCommSemiring.{u1} α r)))))))
 Case conversion may be inaccurate. Consider using '#align uniform_space.sep_quot_equiv_ring_quot UniformSpace.sepQuotEquivRingQuotₓ'. -/
 /-- Given a topological ring `α` equipped with a uniform structure that makes subtraction uniformly
 continuous, get an equivalence between the separated quotient of `α` and the quotient ring
Diff
@@ -241,7 +241,7 @@ variable (A : Type _) [Ring A] [UniformSpace A] [UniformAddGroup A] [Topological
 lean 3 declaration is
   forall (A : Type.{u1}) [_inst_9 : Ring.{u1} A] [_inst_10 : UniformSpace.{u1} A] [_inst_11 : UniformAddGroup.{u1} A _inst_10 (AddGroupWithOne.toAddGroup.{u1} A (AddCommGroupWithOne.toAddGroupWithOne.{u1} A (Ring.toAddCommGroupWithOne.{u1} A _inst_9)))] [_inst_12 : TopologicalRing.{u1} A (UniformSpace.toTopologicalSpace.{u1} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A _inst_9))] (R : Type.{u2}) [_inst_13 : CommSemiring.{u2} R] [_inst_14 : Algebra.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u2, u1} R A _inst_10 (SMulZeroClass.toHasSmul.{u2, u1} R A (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (SMulWithZero.toSmulZeroClass.{u2, u1} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13))))) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_13) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9)))) (Algebra.toModule.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14)))))] (r : R), Eq.{succ u1} ((UniformSpace.Completion.{u1} A _inst_10) -> (UniformSpace.Completion.{u1} A _inst_10)) (UniformSpace.Completion.map.{u1, u1} A _inst_10 A _inst_10 (SMul.smul.{u2, u1} R A (SMulZeroClass.toHasSmul.{u2, u1} R A (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (SMulWithZero.toSmulZeroClass.{u2, u1} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13))))) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_13) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9)))) (Algebra.toModule.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14))))) r)) (HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.{u1} A _inst_10) (instHMul.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.hasMul.{u1} A _inst_9 _inst_10)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) A (UniformSpace.Completion.{u1} A _inst_10) (HasLiftT.mk.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (CoeTCₓ.coe.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.hasCoeT.{u1} A _inst_10))) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (fun (_x : RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) => R -> A) (RingHom.hasCoeToFun.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (algebraMap.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14) r)))
 but is expected to have type
-  forall (A : Type.{u2}) [_inst_9 : Ring.{u2} A] [_inst_10 : UniformSpace.{u2} A] [_inst_11 : UniformAddGroup.{u2} A _inst_10 (AddGroupWithOne.toAddGroup.{u2} A (Ring.toAddGroupWithOne.{u2} A _inst_9))] [_inst_12 : TopologicalRing.{u2} A (UniformSpace.toTopologicalSpace.{u2} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A _inst_9))] (R : Type.{u1}) [_inst_13 : CommSemiring.{u1} R] [_inst_14 : Algebra.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u1, u2} R A _inst_10 (Algebra.toSMul.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14)] (r : R), Eq.{succ u2} ((UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) -> (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10)) (UniformSpace.Completion.map.{u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10 ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10 ((fun (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1706 : R) (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1708 : (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) => HSMul.hSMul.{u1, u2, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) (instHSMul.{u1, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) (Algebra.toSMul.{u1, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_13 (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_9) _inst_14)) x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1706 x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1708) r)) ((fun (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1723 : UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1725 : UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) => HMul.hMul.{u2, u2, u2} (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (instHMul.{u2} (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (UniformSpace.Completion.mul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_9 _inst_10)) x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1723 x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1725) (UniformSpace.Completion.coe'.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10 (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)))) (NonUnitalNonAssocSemiring.toMul.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)) (RingHom.instRingHomClassRingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))))) (algebraMap.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14) r)))
+  forall (A : Type.{u2}) [_inst_9 : Ring.{u2} A] [_inst_10 : UniformSpace.{u2} A] [_inst_11 : UniformAddGroup.{u2} A _inst_10 (AddGroupWithOne.toAddGroup.{u2} A (Ring.toAddGroupWithOne.{u2} A _inst_9))] [_inst_12 : TopologicalRing.{u2} A (UniformSpace.toTopologicalSpace.{u2} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A _inst_9))] (R : Type.{u1}) [_inst_13 : CommSemiring.{u1} R] [_inst_14 : Algebra.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u1, u2} R A _inst_10 (Algebra.toSMul.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14)] (r : R), Eq.{succ u2} ((UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) -> (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10)) (UniformSpace.Completion.map.{u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10 ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10 ((fun (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1688 : R) (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1690 : (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) => HSMul.hSMul.{u1, u2, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) (instHSMul.{u1, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) (Algebra.toSMul.{u1, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_13 (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_9) _inst_14)) x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1688 x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1690) r)) ((fun (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1705 : UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1707 : UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) => HMul.hMul.{u2, u2, u2} (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (instHMul.{u2} (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (UniformSpace.Completion.mul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_9 _inst_10)) x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1705 x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1707) (UniformSpace.Completion.coe'.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10 (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)))) (NonUnitalNonAssocSemiring.toMul.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)) (RingHom.instRingHomClassRingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))))) (algebraMap.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14) r)))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.map_smul_eq_mul_coe UniformSpace.Completion.map_smul_eq_mul_coeₓ'. -/
 @[simp]
 theorem map_smul_eq_mul_coe (r : R) :
Diff
@@ -63,7 +63,7 @@ instance : Mul (Completion α) :=
 
 /- warning: uniform_space.completion.coe_one -> UniformSpace.Completion.coe_one is a dubious translation:
 lean 3 declaration is
-  forall (α : Type.{u1}) [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α], Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_2) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_2) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasCoeT.{u1} α _inst_2))) (OfNat.ofNat.{u1} α 1 (OfNat.mk.{u1} α 1 (One.one.{u1} α (AddMonoidWithOne.toOne.{u1} α (AddGroupWithOne.toAddMonoidWithOne.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)))))))) (OfNat.ofNat.{u1} (UniformSpace.Completion.{u1} α _inst_2) 1 (OfNat.mk.{u1} (UniformSpace.Completion.{u1} α _inst_2) 1 (One.one.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasOne.{u1} α _inst_1 _inst_2))))
+  forall (α : Type.{u1}) [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α], Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_2) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_2) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasCoeT.{u1} α _inst_2))) (OfNat.ofNat.{u1} α 1 (OfNat.mk.{u1} α 1 (One.one.{u1} α (AddMonoidWithOne.toOne.{u1} α (AddGroupWithOne.toAddMonoidWithOne.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α _inst_1)))))))) (OfNat.ofNat.{u1} (UniformSpace.Completion.{u1} α _inst_2) 1 (OfNat.mk.{u1} (UniformSpace.Completion.{u1} α _inst_2) 1 (One.one.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasOne.{u1} α _inst_1 _inst_2))))
 but is expected to have type
   forall (α : Type.{u1}) [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α], Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.coe'.{u1} α _inst_2 (OfNat.ofNat.{u1} α 1 (One.toOfNat1.{u1} α (NonAssocRing.toOne.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))))) (OfNat.ofNat.{u1} (UniformSpace.Completion.{u1} α _inst_2) 1 (One.toOfNat1.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.one.{u1} α _inst_1 _inst_2)))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.coe_one UniformSpace.Completion.coe_oneₓ'. -/
@@ -90,7 +90,7 @@ variable [UniformAddGroup α]
 
 /- warning: uniform_space.completion.continuous_mul -> UniformSpace.Completion.continuous_mul is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)))], Continuous.{u1, u1} (Prod.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2)) (UniformSpace.Completion.{u1} α _inst_2) (Prod.topologicalSpace.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2))) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (fun (p : Prod.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2)) => HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (instHMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasMul.{u1} α _inst_1 _inst_2)) (Prod.fst.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) p) (Prod.snd.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) p))
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α _inst_1)))], Continuous.{u1, u1} (Prod.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2)) (UniformSpace.Completion.{u1} α _inst_2) (Prod.topologicalSpace.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2))) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (fun (p : Prod.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2)) => HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (instHMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasMul.{u1} α _inst_1 _inst_2)) (Prod.fst.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) p) (Prod.snd.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) p))
 but is expected to have type
   forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))], Continuous.{u1, u1} (Prod.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2)) (UniformSpace.Completion.{u1} α _inst_2) (instTopologicalSpaceProd.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2))) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (fun (p : Prod.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2)) => HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (instHMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.mul.{u1} α _inst_1 _inst_2)) (Prod.fst.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) p) (Prod.snd.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) p))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.continuous_mul UniformSpace.Completion.continuous_mulₓ'. -/
@@ -106,7 +106,7 @@ theorem continuous_mul : Continuous fun p : Completion α × Completion α => p.
 
 /- warning: uniform_space.completion.continuous.mul -> UniformSpace.Completion.Continuous.mul is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)))] {β : Type.{u2}} [_inst_5 : TopologicalSpace.{u2} β] {f : β -> (UniformSpace.Completion.{u1} α _inst_2)} {g : β -> (UniformSpace.Completion.{u1} α _inst_2)}, (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) f) -> (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) g) -> (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (fun (b : β) => HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (instHMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasMul.{u1} α _inst_1 _inst_2)) (f b) (g b)))
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α _inst_1)))] {β : Type.{u2}} [_inst_5 : TopologicalSpace.{u2} β] {f : β -> (UniformSpace.Completion.{u1} α _inst_2)} {g : β -> (UniformSpace.Completion.{u1} α _inst_2)}, (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) f) -> (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) g) -> (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (fun (b : β) => HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (instHMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasMul.{u1} α _inst_1 _inst_2)) (f b) (g b)))
 but is expected to have type
   forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))] {β : Type.{u2}} [_inst_5 : TopologicalSpace.{u2} β] {f : β -> (UniformSpace.Completion.{u1} α _inst_2)} {g : β -> (UniformSpace.Completion.{u1} α _inst_2)}, (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) f) -> (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) g) -> (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (fun (b : β) => HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (instHMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.mul.{u1} α _inst_1 _inst_2)) (f b) (g b)))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.continuous.mul UniformSpace.Completion.Continuous.mulₓ'. -/
@@ -157,7 +157,7 @@ instance : Ring (Completion α) :=
 
 /- warning: uniform_space.completion.coe_ring_hom -> UniformSpace.Completion.coeRingHom is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)))], RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α _inst_1)))], RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))
 but is expected to have type
   forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))], RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.coe_ring_hom UniformSpace.Completion.coeRingHomₓ'. -/
@@ -168,7 +168,7 @@ def coeRingHom : α →+* Completion α :=
 
 /- warning: uniform_space.completion.continuous_coe_ring_hom -> UniformSpace.Completion.continuous_coeRingHom is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)))], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (coeFn.{succ u1, succ u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) (fun (_x : RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) => α -> (UniformSpace.Completion.{u1} α _inst_2)) (RingHom.hasCoeToFun.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) (UniformSpace.Completion.coeRingHom.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α _inst_1)))], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (coeFn.{succ u1, succ u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) (fun (_x : RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) => α -> (UniformSpace.Completion.{u1} α _inst_2)) (RingHom.hasCoeToFun.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) (UniformSpace.Completion.coeRingHom.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))
 but is expected to have type
   forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (FunLike.coe.{succ u1, succ u1, succ u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => UniformSpace.Completion.{u1} α _inst_2) _x) (MulHomClass.toFunLike.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) (RingHomClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))) (RingHom.instRingHomClassRingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))))) (UniformSpace.Completion.coeRingHom.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.continuous_coe_ring_hom UniformSpace.Completion.continuous_coeRingHomₓ'. -/
@@ -181,7 +181,7 @@ variable {β : Type u} [UniformSpace β] [Ring β] [UniformAddGroup β] [Topolog
 
 /- warning: uniform_space.completion.extension_hom -> UniformSpace.Completion.extensionHom is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (NonAssocRing.toAddGroupWithOne.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (NonAssocRing.toAddGroupWithOne.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) (fun (_x : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) => α -> β) (RingHom.hasCoeToFun.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) f)) -> (forall [_inst_9 : CompleteSpace.{u1} β _inst_5] [_inst_10 : SeparatedSpace.{u1} β _inst_5], RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) β (NonAssocRing.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toNonAssocRing.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))
+  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (AddCommGroupWithOne.toAddGroupWithOne.{u2} α (Ring.toAddCommGroupWithOne.{u2} α _inst_1)))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (AddCommGroupWithOne.toAddGroupWithOne.{u1} β (Ring.toAddCommGroupWithOne.{u1} β _inst_6)))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) (fun (_x : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) => α -> β) (RingHom.hasCoeToFun.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) f)) -> (forall [_inst_9 : CompleteSpace.{u1} β _inst_5] [_inst_10 : SeparatedSpace.{u1} β _inst_5], RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) β (NonAssocRing.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toNonAssocRing.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))
 but is expected to have type
   forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (Ring.toAddGroupWithOne.{u2} α _inst_1))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (Ring.toAddGroupWithOne.{u1} β _inst_6))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)) (RingHom.instRingHomClassRingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))))) f)) -> (forall [_inst_9 : CompleteSpace.{u1} β _inst_5] [_inst_10 : SeparatedSpace.{u1} β _inst_5], RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) β (NonAssocRing.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toNonAssocRing.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.extension_hom UniformSpace.Completion.extensionHomₓ'. -/
@@ -211,7 +211,7 @@ def extensionHom [CompleteSpace β] [SeparatedSpace β] : Completion α →+* β
 
 /- warning: uniform_space.completion.top_ring_compl -> UniformSpace.Completion.topologicalRing is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)))], TopologicalRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (NonAssocRing.toNonUnitalNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α _inst_1)))], TopologicalRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (NonAssocRing.toNonUnitalNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))
 but is expected to have type
   forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))], TopologicalRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (NonAssocRing.toNonUnitalNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.top_ring_compl UniformSpace.Completion.topologicalRingₓ'. -/
@@ -223,7 +223,7 @@ instance topologicalRing : TopologicalRing (Completion α)
 
 /- warning: uniform_space.completion.map_ring_hom -> UniformSpace.Completion.mapRingHom is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (NonAssocRing.toAddGroupWithOne.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (NonAssocRing.toAddGroupWithOne.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) (fun (_x : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) => α -> β) (RingHom.hasCoeToFun.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) f)) -> (RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.{u1} β _inst_5) (NonAssocRing.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toNonAssocRing.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} β _inst_5) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} β _inst_5) (UniformSpace.Completion.ring.{u1} β _inst_6 _inst_5 _inst_8 _inst_7))))
+  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (AddCommGroupWithOne.toAddGroupWithOne.{u2} α (Ring.toAddCommGroupWithOne.{u2} α _inst_1)))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (AddCommGroupWithOne.toAddGroupWithOne.{u1} β (Ring.toAddCommGroupWithOne.{u1} β _inst_6)))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) (fun (_x : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) => α -> β) (RingHom.hasCoeToFun.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) f)) -> (RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.{u1} β _inst_5) (NonAssocRing.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toNonAssocRing.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} β _inst_5) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} β _inst_5) (UniformSpace.Completion.ring.{u1} β _inst_6 _inst_5 _inst_8 _inst_7))))
 but is expected to have type
   forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (Ring.toAddGroupWithOne.{u2} α _inst_1))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (Ring.toAddGroupWithOne.{u1} β _inst_6))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)) (RingHom.instRingHomClassRingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))))) f)) -> (RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.{u1} β _inst_5) (NonAssocRing.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toNonAssocRing.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} β _inst_5) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} β _inst_5) (UniformSpace.Completion.ring.{u1} β _inst_6 _inst_5 _inst_8 _inst_7))))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.map_ring_hom UniformSpace.Completion.mapRingHomₓ'. -/
@@ -239,7 +239,7 @@ variable (A : Type _) [Ring A] [UniformSpace A] [UniformAddGroup A] [Topological
 
 /- warning: uniform_space.completion.map_smul_eq_mul_coe -> UniformSpace.Completion.map_smul_eq_mul_coe is a dubious translation:
 lean 3 declaration is
-  forall (A : Type.{u1}) [_inst_9 : Ring.{u1} A] [_inst_10 : UniformSpace.{u1} A] [_inst_11 : UniformAddGroup.{u1} A _inst_10 (AddGroupWithOne.toAddGroup.{u1} A (NonAssocRing.toAddGroupWithOne.{u1} A (Ring.toNonAssocRing.{u1} A _inst_9)))] [_inst_12 : TopologicalRing.{u1} A (UniformSpace.toTopologicalSpace.{u1} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A _inst_9))] (R : Type.{u2}) [_inst_13 : CommSemiring.{u2} R] [_inst_14 : Algebra.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u2, u1} R A _inst_10 (SMulZeroClass.toHasSmul.{u2, u1} R A (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (SMulWithZero.toSmulZeroClass.{u2, u1} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13))))) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_13) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9)))) (Algebra.toModule.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14)))))] (r : R), Eq.{succ u1} ((UniformSpace.Completion.{u1} A _inst_10) -> (UniformSpace.Completion.{u1} A _inst_10)) (UniformSpace.Completion.map.{u1, u1} A _inst_10 A _inst_10 (SMul.smul.{u2, u1} R A (SMulZeroClass.toHasSmul.{u2, u1} R A (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (SMulWithZero.toSmulZeroClass.{u2, u1} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13))))) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_13) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9)))) (Algebra.toModule.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14))))) r)) (HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.{u1} A _inst_10) (instHMul.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.hasMul.{u1} A _inst_9 _inst_10)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) A (UniformSpace.Completion.{u1} A _inst_10) (HasLiftT.mk.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (CoeTCₓ.coe.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.hasCoeT.{u1} A _inst_10))) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (fun (_x : RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) => R -> A) (RingHom.hasCoeToFun.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (algebraMap.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14) r)))
+  forall (A : Type.{u1}) [_inst_9 : Ring.{u1} A] [_inst_10 : UniformSpace.{u1} A] [_inst_11 : UniformAddGroup.{u1} A _inst_10 (AddGroupWithOne.toAddGroup.{u1} A (AddCommGroupWithOne.toAddGroupWithOne.{u1} A (Ring.toAddCommGroupWithOne.{u1} A _inst_9)))] [_inst_12 : TopologicalRing.{u1} A (UniformSpace.toTopologicalSpace.{u1} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A _inst_9))] (R : Type.{u2}) [_inst_13 : CommSemiring.{u2} R] [_inst_14 : Algebra.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u2, u1} R A _inst_10 (SMulZeroClass.toHasSmul.{u2, u1} R A (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (SMulWithZero.toSmulZeroClass.{u2, u1} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13))))) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_13) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9)))) (Algebra.toModule.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14)))))] (r : R), Eq.{succ u1} ((UniformSpace.Completion.{u1} A _inst_10) -> (UniformSpace.Completion.{u1} A _inst_10)) (UniformSpace.Completion.map.{u1, u1} A _inst_10 A _inst_10 (SMul.smul.{u2, u1} R A (SMulZeroClass.toHasSmul.{u2, u1} R A (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (SMulWithZero.toSmulZeroClass.{u2, u1} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13))))) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_13) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9)))) (Algebra.toModule.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14))))) r)) (HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.{u1} A _inst_10) (instHMul.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.hasMul.{u1} A _inst_9 _inst_10)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) A (UniformSpace.Completion.{u1} A _inst_10) (HasLiftT.mk.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (CoeTCₓ.coe.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.hasCoeT.{u1} A _inst_10))) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (fun (_x : RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) => R -> A) (RingHom.hasCoeToFun.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (algebraMap.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14) r)))
 but is expected to have type
   forall (A : Type.{u2}) [_inst_9 : Ring.{u2} A] [_inst_10 : UniformSpace.{u2} A] [_inst_11 : UniformAddGroup.{u2} A _inst_10 (AddGroupWithOne.toAddGroup.{u2} A (Ring.toAddGroupWithOne.{u2} A _inst_9))] [_inst_12 : TopologicalRing.{u2} A (UniformSpace.toTopologicalSpace.{u2} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A _inst_9))] (R : Type.{u1}) [_inst_13 : CommSemiring.{u1} R] [_inst_14 : Algebra.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u1, u2} R A _inst_10 (Algebra.toSMul.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14)] (r : R), Eq.{succ u2} ((UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) -> (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10)) (UniformSpace.Completion.map.{u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10 ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10 ((fun (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1706 : R) (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1708 : (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) => HSMul.hSMul.{u1, u2, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) (instHSMul.{u1, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) (Algebra.toSMul.{u1, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_13 (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_9) _inst_14)) x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1706 x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1708) r)) ((fun (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1723 : UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1725 : UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) => HMul.hMul.{u2, u2, u2} (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (instHMul.{u2} (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (UniformSpace.Completion.mul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_9 _inst_10)) x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1723 x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1725) (UniformSpace.Completion.coe'.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10 (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)))) (NonUnitalNonAssocSemiring.toMul.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)) (RingHom.instRingHomClassRingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))))) (algebraMap.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14) r)))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.map_smul_eq_mul_coe UniformSpace.Completion.map_smul_eq_mul_coeₓ'. -/
@@ -266,7 +266,7 @@ instance : Algebra R (Completion A) :=
 
 /- warning: uniform_space.completion.algebra_map_def -> UniformSpace.Completion.algebraMap_def is a dubious translation:
 lean 3 declaration is
-  forall (A : Type.{u1}) [_inst_9 : Ring.{u1} A] [_inst_10 : UniformSpace.{u1} A] [_inst_11 : UniformAddGroup.{u1} A _inst_10 (AddGroupWithOne.toAddGroup.{u1} A (NonAssocRing.toAddGroupWithOne.{u1} A (Ring.toNonAssocRing.{u1} A _inst_9)))] [_inst_12 : TopologicalRing.{u1} A (UniformSpace.toTopologicalSpace.{u1} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A _inst_9))] (R : Type.{u2}) [_inst_13 : CommSemiring.{u2} R] [_inst_14 : Algebra.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u2, u1} R A _inst_10 (SMulZeroClass.toHasSmul.{u2, u1} R A (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (SMulWithZero.toSmulZeroClass.{u2, u1} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13))))) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_13) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9)))) (Algebra.toModule.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14)))))] (r : R), Eq.{succ u1} (UniformSpace.Completion.{u1} A _inst_10) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)))) (fun (_x : RingHom.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)))) => R -> (UniformSpace.Completion.{u1} A _inst_10)) (RingHom.hasCoeToFun.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)))) (algebraMap.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) _inst_13 (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)) (UniformSpace.Completion.algebra.{u1, u2} A _inst_9 _inst_10 _inst_11 _inst_12 R _inst_13 _inst_14 _inst_15)) r) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) A (UniformSpace.Completion.{u1} A _inst_10) (HasLiftT.mk.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (CoeTCₓ.coe.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.hasCoeT.{u1} A _inst_10))) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (fun (_x : RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) => R -> A) (RingHom.hasCoeToFun.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (algebraMap.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14) r))
+  forall (A : Type.{u1}) [_inst_9 : Ring.{u1} A] [_inst_10 : UniformSpace.{u1} A] [_inst_11 : UniformAddGroup.{u1} A _inst_10 (AddGroupWithOne.toAddGroup.{u1} A (AddCommGroupWithOne.toAddGroupWithOne.{u1} A (Ring.toAddCommGroupWithOne.{u1} A _inst_9)))] [_inst_12 : TopologicalRing.{u1} A (UniformSpace.toTopologicalSpace.{u1} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A _inst_9))] (R : Type.{u2}) [_inst_13 : CommSemiring.{u2} R] [_inst_14 : Algebra.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u2, u1} R A _inst_10 (SMulZeroClass.toHasSmul.{u2, u1} R A (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (SMulWithZero.toSmulZeroClass.{u2, u1} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13))))) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_13) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9)))) (Algebra.toModule.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14)))))] (r : R), Eq.{succ u1} (UniformSpace.Completion.{u1} A _inst_10) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)))) (fun (_x : RingHom.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)))) => R -> (UniformSpace.Completion.{u1} A _inst_10)) (RingHom.hasCoeToFun.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)))) (algebraMap.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) _inst_13 (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)) (UniformSpace.Completion.algebra.{u1, u2} A _inst_9 _inst_10 _inst_11 _inst_12 R _inst_13 _inst_14 _inst_15)) r) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) A (UniformSpace.Completion.{u1} A _inst_10) (HasLiftT.mk.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (CoeTCₓ.coe.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.hasCoeT.{u1} A _inst_10))) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (fun (_x : RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) => R -> A) (RingHom.hasCoeToFun.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (algebraMap.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14) r))
 but is expected to have type
   forall (A : Type.{u2}) [_inst_9 : Ring.{u2} A] [_inst_10 : UniformSpace.{u2} A] [_inst_11 : UniformAddGroup.{u2} A _inst_10 (AddGroupWithOne.toAddGroup.{u2} A (Ring.toAddGroupWithOne.{u2} A _inst_9))] [_inst_12 : TopologicalRing.{u2} A (UniformSpace.toTopologicalSpace.{u2} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A _inst_9))] (R : Type.{u1}) [_inst_13 : CommSemiring.{u1} R] [_inst_14 : Algebra.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u1, u2} R A _inst_10 (Algebra.toSMul.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14)] (r : R), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => UniformSpace.Completion.{u2} A _inst_10) r) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => UniformSpace.Completion.{u2} A _inst_10) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (UniformSpace.Completion.{u2} A _inst_10) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)))) (NonUnitalNonAssocSemiring.toMul.{u2} (UniformSpace.Completion.{u2} A _inst_10) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11))))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (UniformSpace.Completion.{u2} A _inst_10) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11))) (RingHom.instRingHomClassRingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11))))))) (algebraMap.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) _inst_13 (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)) (UniformSpace.Completion.algebra.{u2, u1} A _inst_9 _inst_10 _inst_11 _inst_12 R _inst_13 _inst_14 _inst_15)) r) (UniformSpace.Completion.coe'.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10 (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)))) (NonUnitalNonAssocSemiring.toMul.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)) (RingHom.instRingHomClassRingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))))) (algebraMap.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14) r))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.algebra_map_def UniformSpace.Completion.algebraMap_defₓ'. -/
@@ -290,7 +290,7 @@ instance : CommRing (Completion R) :=
 
 /- warning: uniform_space.completion.algebra' -> UniformSpace.Completion.algebra' is a dubious translation:
 lean 3 declaration is
-  forall (R : Type.{u1}) [_inst_9 : CommRing.{u1} R] [_inst_10 : UniformSpace.{u1} R] [_inst_11 : UniformAddGroup.{u1} R _inst_10 (AddGroupWithOne.toAddGroup.{u1} R (NonAssocRing.toAddGroupWithOne.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_9))))] [_inst_12 : TopologicalRing.{u1} R (UniformSpace.toTopologicalSpace.{u1} R _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_9)))], Algebra.{u1, u1} R (UniformSpace.Completion.{u1} R _inst_10) (CommRing.toCommSemiring.{u1} R _inst_9) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} R _inst_10) (UniformSpace.Completion.ring.{u1} R (CommRing.toRing.{u1} R _inst_9) _inst_10 _inst_12 _inst_11))
+  forall (R : Type.{u1}) [_inst_9 : CommRing.{u1} R] [_inst_10 : UniformSpace.{u1} R] [_inst_11 : UniformAddGroup.{u1} R _inst_10 (AddGroupWithOne.toAddGroup.{u1} R (AddCommGroupWithOne.toAddGroupWithOne.{u1} R (Ring.toAddCommGroupWithOne.{u1} R (CommRing.toRing.{u1} R _inst_9))))] [_inst_12 : TopologicalRing.{u1} R (UniformSpace.toTopologicalSpace.{u1} R _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_9)))], Algebra.{u1, u1} R (UniformSpace.Completion.{u1} R _inst_10) (CommRing.toCommSemiring.{u1} R _inst_9) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} R _inst_10) (UniformSpace.Completion.ring.{u1} R (CommRing.toRing.{u1} R _inst_9) _inst_10 _inst_12 _inst_11))
 but is expected to have type
   forall (R : Type.{u1}) [_inst_9 : CommRing.{u1} R] [_inst_10 : UniformSpace.{u1} R] [_inst_11 : UniformAddGroup.{u1} R _inst_10 (AddGroupWithOne.toAddGroup.{u1} R (Ring.toAddGroupWithOne.{u1} R (CommRing.toRing.{u1} R _inst_9)))] [_inst_12 : TopologicalRing.{u1} R (UniformSpace.toTopologicalSpace.{u1} R _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_9)))], Algebra.{u1, u1} R (UniformSpace.Completion.{u1} R _inst_10) (CommRing.toCommSemiring.{u1} R _inst_9) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} R _inst_10) (UniformSpace.Completion.ring.{u1} R (CommRing.toRing.{u1} R _inst_9) _inst_10 _inst_12 _inst_11))
 Case conversion may be inaccurate. Consider using '#align uniform_space.completion.algebra' UniformSpace.Completion.algebra'ₓ'. -/
@@ -308,7 +308,7 @@ variable {α : Type _}
 
 /- warning: uniform_space.ring_sep_rel -> UniformSpace.ring_sep_rel is a dubious translation:
 lean 3 declaration is
-  forall (α : Type.{u1}) [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1))))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], Eq.{succ u1} (Setoid.{succ u1} α) (UniformSpace.separationSetoid.{u1} α _inst_2) (Submodule.quotientRel.{u1, u1} α α (CommRing.toRing.{u1} α _inst_1) (NonUnitalNonAssocRing.toAddCommGroup.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (CommRing.toRing.{u1} α _inst_1) _inst_4 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))) (Submodule.hasBot.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1)))))))
+  forall (α : Type.{u1}) [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α (CommRing.toRing.{u1} α _inst_1))))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], Eq.{succ u1} (Setoid.{succ u1} α) (UniformSpace.separationSetoid.{u1} α _inst_2) (Submodule.quotientRel.{u1, u1} α α (CommRing.toRing.{u1} α _inst_1) (NonUnitalNonAssocRing.toAddCommGroup.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (CommRing.toRing.{u1} α _inst_1) _inst_4 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))) (Submodule.hasBot.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1)))))))
 but is expected to have type
   forall (α : Type.{u1}) [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α (CommRing.toRing.{u1} α _inst_1)))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], Eq.{succ u1} (Setoid.{succ u1} α) (UniformSpace.separationSetoid.{u1} α _inst_2) (Submodule.quotientRel.{u1, u1} α α (CommRing.toRing.{u1} α _inst_1) (Ring.toAddCommGroup.{u1} α (CommRing.toRing.{u1} α _inst_1)) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (CommRing.toRing.{u1} α _inst_1) _inst_4 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))) (Submodule.instBotSubmodule.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1)))))))
 Case conversion may be inaccurate. Consider using '#align uniform_space.ring_sep_rel UniformSpace.ring_sep_relₓ'. -/
@@ -320,7 +320,7 @@ theorem ring_sep_rel (α) [CommRing α] [UniformSpace α] [UniformAddGroup α] [
 
 /- warning: uniform_space.ring_sep_quot -> UniformSpace.ring_sep_quot is a dubious translation:
 lean 3 declaration is
-  forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r))))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Eq.{succ (succ u1)} Type.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.hasQuotient.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Submodule.hasBot.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)))))))
+  forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α (CommRing.toRing.{u1} α r))))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Eq.{succ (succ u1)} Type.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.hasQuotient.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Submodule.hasBot.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)))))))
 but is expected to have type
   forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α (CommRing.toRing.{u1} α r)))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Eq.{succ (succ u1)} Type.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.instHasQuotientIdealToSemiringToRing.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Submodule.instBotSubmodule.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)))))))
 Case conversion may be inaccurate. Consider using '#align uniform_space.ring_sep_quot UniformSpace.ring_sep_quotₓ'. -/
@@ -331,7 +331,7 @@ theorem ring_sep_quot (α : Type u) [r : CommRing α] [UniformSpace α] [Uniform
 
 /- warning: uniform_space.sep_quot_equiv_ring_quot -> UniformSpace.sepQuotEquivRingQuot is a dubious translation:
 lean 3 declaration is
-  forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r))))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Equiv.{succ u1, succ u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.hasQuotient.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Submodule.hasBot.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)))))))
+  forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α (CommRing.toRing.{u1} α r))))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Equiv.{succ u1, succ u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.hasQuotient.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Submodule.hasBot.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)))))))
 but is expected to have type
   forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α (CommRing.toRing.{u1} α r)))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Equiv.{succ u1, succ u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.instHasQuotientIdealToSemiringToRing.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Submodule.instBotSubmodule.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)))))))
 Case conversion may be inaccurate. Consider using '#align uniform_space.sep_quot_equiv_ring_quot UniformSpace.sepQuotEquivRingQuotₓ'. -/
@@ -346,7 +346,7 @@ def sepQuotEquivRingQuot (α) [r : CommRing α] [UniformSpace α] [UniformAddGro
 
 /- warning: uniform_space.comm_ring -> UniformSpace.commRing is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1))))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], CommRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2))
+  forall {α : Type.{u1}} [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α (CommRing.toRing.{u1} α _inst_1))))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], CommRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2))
 but is expected to have type
   forall {α : Type.{u1}} [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α (CommRing.toRing.{u1} α _inst_1)))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], CommRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2))
 Case conversion may be inaccurate. Consider using '#align uniform_space.comm_ring UniformSpace.commRingₓ'. -/
@@ -357,7 +357,7 @@ instance commRing [CommRing α] [UniformSpace α] [UniformAddGroup α] [Topologi
 
 /- warning: uniform_space.topological_ring -> UniformSpace.topologicalRing is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1))))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], TopologicalRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (Quotient.topologicalSpace.{u1} α (UniformSpace.separationSetoid.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2)) (NonAssocRing.toNonUnitalNonAssocRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (Ring.toNonAssocRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (CommRing.toRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (UniformSpace.commRing.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))
+  forall {α : Type.{u1}} [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (AddCommGroupWithOne.toAddGroupWithOne.{u1} α (Ring.toAddCommGroupWithOne.{u1} α (CommRing.toRing.{u1} α _inst_1))))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], TopologicalRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (Quotient.topologicalSpace.{u1} α (UniformSpace.separationSetoid.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2)) (NonAssocRing.toNonUnitalNonAssocRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (Ring.toNonAssocRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (CommRing.toRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (UniformSpace.commRing.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))
 but is expected to have type
   forall {α : Type.{u1}} [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α (CommRing.toRing.{u1} α _inst_1)))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], TopologicalRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (instTopologicalSpaceQuotient.{u1} α (UniformSpace.separationSetoid.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2)) (NonAssocRing.toNonUnitalNonAssocRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (Ring.toNonAssocRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (CommRing.toRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (UniformSpace.commRing.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))
 Case conversion may be inaccurate. Consider using '#align uniform_space.topological_ring UniformSpace.topologicalRingₓ'. -/
Diff
@@ -155,12 +155,16 @@ instance : Ring (Completion α) :=
               (continuous_snd.comp continuous_snd))))
         fun a b c => by rw [← coe_add, ← coe_mul, ← coe_mul, ← coe_mul, ← coe_add, add_mul] }
 
-#print UniformSpace.Completion.coeRingHom /-
+/- warning: uniform_space.completion.coe_ring_hom -> UniformSpace.Completion.coeRingHom is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)))], RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))], RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))
+Case conversion may be inaccurate. Consider using '#align uniform_space.completion.coe_ring_hom UniformSpace.Completion.coeRingHomₓ'. -/
 /-- The map from a uniform ring to its completion, as a ring homomorphism. -/
 def coeRingHom : α →+* Completion α :=
   ⟨coe, coe_one α, fun a b => coe_mul a b, coe_zero, fun a b => coe_add a b⟩
 #align uniform_space.completion.coe_ring_hom UniformSpace.Completion.coeRingHom
--/
 
 /- warning: uniform_space.completion.continuous_coe_ring_hom -> UniformSpace.Completion.continuous_coeRingHom is a dubious translation:
 lean 3 declaration is
@@ -205,13 +209,17 @@ def extensionHom [CompleteSpace β] [SeparatedSpace β] : Completion α →+* β
         rw [← coe_mul, extension_coe hf, extension_coe hf, extension_coe hf, f.map_mul] }
 #align uniform_space.completion.extension_hom UniformSpace.Completion.extensionHom
 
-#print UniformSpace.Completion.topologicalRing /-
+/- warning: uniform_space.completion.top_ring_compl -> UniformSpace.Completion.topologicalRing is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)))], TopologicalRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (NonAssocRing.toNonUnitalNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))], TopologicalRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (NonAssocRing.toNonUnitalNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))
+Case conversion may be inaccurate. Consider using '#align uniform_space.completion.top_ring_compl UniformSpace.Completion.topologicalRingₓ'. -/
 instance topologicalRing : TopologicalRing (Completion α)
     where
   continuous_add := continuous_add
   continuous_mul := continuous_mul
 #align uniform_space.completion.top_ring_compl UniformSpace.Completion.topologicalRing
--/
 
 /- warning: uniform_space.completion.map_ring_hom -> UniformSpace.Completion.mapRingHom is a dubious translation:
 lean 3 declaration is
@@ -280,11 +288,15 @@ instance : CommRing (Completion R) :=
         (isClosed_eq (continuous_fst.mul continuous_snd) (continuous_snd.mul continuous_fst))
         fun a b => by rw [← coe_mul, ← coe_mul, mul_comm] }
 
-#print UniformSpace.Completion.algebra' /-
+/- warning: uniform_space.completion.algebra' -> UniformSpace.Completion.algebra' is a dubious translation:
+lean 3 declaration is
+  forall (R : Type.{u1}) [_inst_9 : CommRing.{u1} R] [_inst_10 : UniformSpace.{u1} R] [_inst_11 : UniformAddGroup.{u1} R _inst_10 (AddGroupWithOne.toAddGroup.{u1} R (NonAssocRing.toAddGroupWithOne.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_9))))] [_inst_12 : TopologicalRing.{u1} R (UniformSpace.toTopologicalSpace.{u1} R _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_9)))], Algebra.{u1, u1} R (UniformSpace.Completion.{u1} R _inst_10) (CommRing.toCommSemiring.{u1} R _inst_9) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} R _inst_10) (UniformSpace.Completion.ring.{u1} R (CommRing.toRing.{u1} R _inst_9) _inst_10 _inst_12 _inst_11))
+but is expected to have type
+  forall (R : Type.{u1}) [_inst_9 : CommRing.{u1} R] [_inst_10 : UniformSpace.{u1} R] [_inst_11 : UniformAddGroup.{u1} R _inst_10 (AddGroupWithOne.toAddGroup.{u1} R (Ring.toAddGroupWithOne.{u1} R (CommRing.toRing.{u1} R _inst_9)))] [_inst_12 : TopologicalRing.{u1} R (UniformSpace.toTopologicalSpace.{u1} R _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_9)))], Algebra.{u1, u1} R (UniformSpace.Completion.{u1} R _inst_10) (CommRing.toCommSemiring.{u1} R _inst_9) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} R _inst_10) (UniformSpace.Completion.ring.{u1} R (CommRing.toRing.{u1} R _inst_9) _inst_10 _inst_12 _inst_11))
+Case conversion may be inaccurate. Consider using '#align uniform_space.completion.algebra' UniformSpace.Completion.algebra'ₓ'. -/
 /-- A shortcut instance for the common case -/
 instance algebra' : Algebra R (Completion R) := by infer_instance
 #align uniform_space.completion.algebra' UniformSpace.Completion.algebra'
--/
 
 end CommRing
 
@@ -332,21 +344,29 @@ def sepQuotEquivRingQuot (α) [r : CommRing α] [UniformSpace α] [UniformAddGro
     (addGroup_separationRel x y).trans <| Iff.trans (by rfl) (Submodule.quotientRel_r_def _).symm
 #align uniform_space.sep_quot_equiv_ring_quot UniformSpace.sepQuotEquivRingQuot
 
-#print UniformSpace.commRing /-
+/- warning: uniform_space.comm_ring -> UniformSpace.commRing is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1))))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], CommRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α (CommRing.toRing.{u1} α _inst_1)))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], CommRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2))
+Case conversion may be inaccurate. Consider using '#align uniform_space.comm_ring UniformSpace.commRingₓ'. -/
 -- TODO: use a form of transport a.k.a. lift definition a.k.a. transfer
 instance commRing [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
     CommRing (Quotient (separationSetoid α)) := by rw [ring_sep_quot α] <;> infer_instance
 #align uniform_space.comm_ring UniformSpace.commRing
--/
 
-#print UniformSpace.topologicalRing /-
+/- warning: uniform_space.topological_ring -> UniformSpace.topologicalRing is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1))))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], TopologicalRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (Quotient.topologicalSpace.{u1} α (UniformSpace.separationSetoid.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2)) (NonAssocRing.toNonUnitalNonAssocRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (Ring.toNonAssocRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (CommRing.toRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (UniformSpace.commRing.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α (CommRing.toRing.{u1} α _inst_1)))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], TopologicalRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (instTopologicalSpaceQuotient.{u1} α (UniformSpace.separationSetoid.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2)) (NonAssocRing.toNonUnitalNonAssocRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (Ring.toNonAssocRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (CommRing.toRing.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_2)) (UniformSpace.commRing.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))
+Case conversion may be inaccurate. Consider using '#align uniform_space.topological_ring UniformSpace.topologicalRingₓ'. -/
 instance topologicalRing [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
     TopologicalRing (Quotient (separationSetoid α)) :=
   by
   convert topologicalRing_quotient (⊥ : Ideal α).closure <;> try apply ring_sep_rel
   simp [UniformSpace.commRing]
 #align uniform_space.topological_ring UniformSpace.topologicalRing
--/
 
 end UniformSpace
 
Diff
@@ -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.uniform_ring
-! leanprover-community/mathlib commit 9a59dcb7a2d06bf55da57b9030169219980660cd
+! leanprover-community/mathlib commit 8ef6f08ff8c781c5c07a8b12843710e1a0d8a688
 ! 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.Algebra.Ring.Ideal
 /-!
 # Completion of topological rings:
 
+> 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 ring with a ring structure.
 More precisely the instance `uniform_space.completion.ring` builds a ring structure
 on the completion of a ring endowed with a compatible uniform structure in the sense of
Diff
@@ -58,6 +58,12 @@ instance : One (Completion α) :=
 instance : Mul (Completion α) :=
   ⟨curry <| (denseInducing_coe.Prod denseInducing_coe).extend (coe ∘ uncurry (· * ·))⟩
 
+/- warning: uniform_space.completion.coe_one -> UniformSpace.Completion.coe_one is a dubious translation:
+lean 3 declaration is
+  forall (α : Type.{u1}) [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α], Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_2) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_2) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasCoeT.{u1} α _inst_2))) (OfNat.ofNat.{u1} α 1 (OfNat.mk.{u1} α 1 (One.one.{u1} α (AddMonoidWithOne.toOne.{u1} α (AddGroupWithOne.toAddMonoidWithOne.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)))))))) (OfNat.ofNat.{u1} (UniformSpace.Completion.{u1} α _inst_2) 1 (OfNat.mk.{u1} (UniformSpace.Completion.{u1} α _inst_2) 1 (One.one.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasOne.{u1} α _inst_1 _inst_2))))
+but is expected to have type
+  forall (α : Type.{u1}) [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α], Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.coe'.{u1} α _inst_2 (OfNat.ofNat.{u1} α 1 (One.toOfNat1.{u1} α (NonAssocRing.toOne.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))))) (OfNat.ofNat.{u1} (UniformSpace.Completion.{u1} α _inst_2) 1 (One.toOfNat1.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.one.{u1} α _inst_1 _inst_2)))
+Case conversion may be inaccurate. Consider using '#align uniform_space.completion.coe_one UniformSpace.Completion.coe_oneₓ'. -/
 @[norm_cast]
 theorem coe_one : ((1 : α) : Completion α) = 1 :=
   rfl
@@ -65,6 +71,12 @@ theorem coe_one : ((1 : α) : Completion α) = 1 :=
 
 variable {α} [TopologicalRing α]
 
+/- warning: uniform_space.completion.coe_mul -> UniformSpace.Completion.coe_mul is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] (a : α) (b : α), Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_2) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_2) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasCoeT.{u1} α _inst_2))) (HMul.hMul.{u1, u1, u1} α α α (instHMul.{u1} α (Distrib.toHasMul.{u1} α (Ring.toDistrib.{u1} α _inst_1))) a b)) (HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (instHMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasMul.{u1} α _inst_1 _inst_2)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_2) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasCoeT.{u1} α _inst_2))) a) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) α (UniformSpace.Completion.{u1} α _inst_2) (HasLiftT.mk.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (CoeTCₓ.coe.{succ u1, succ u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasCoeT.{u1} α _inst_2))) b))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] (a : α) (b : α), Eq.{succ u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.coe'.{u1} α _inst_2 (HMul.hMul.{u1, u1, u1} α α α (instHMul.{u1} α (NonUnitalNonAssocRing.toMul.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)))) a b)) (HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (instHMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.mul.{u1} α _inst_1 _inst_2)) (UniformSpace.Completion.coe'.{u1} α _inst_2 a) (UniformSpace.Completion.coe'.{u1} α _inst_2 b))
+Case conversion may be inaccurate. Consider using '#align uniform_space.completion.coe_mul UniformSpace.Completion.coe_mulₓ'. -/
 @[norm_cast]
 theorem coe_mul (a b : α) : ((a * b : α) : Completion α) = a * b :=
   ((denseInducing_coe.Prod denseInducing_coe).extend_eq
@@ -73,6 +85,12 @@ theorem coe_mul (a b : α) : ((a * b : α) : Completion α) = a * b :=
 
 variable [UniformAddGroup α]
 
+/- warning: uniform_space.completion.continuous_mul -> UniformSpace.Completion.continuous_mul is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)))], Continuous.{u1, u1} (Prod.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2)) (UniformSpace.Completion.{u1} α _inst_2) (Prod.topologicalSpace.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2))) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (fun (p : Prod.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2)) => HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (instHMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasMul.{u1} α _inst_1 _inst_2)) (Prod.fst.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) p) (Prod.snd.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) p))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))], Continuous.{u1, u1} (Prod.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2)) (UniformSpace.Completion.{u1} α _inst_2) (instTopologicalSpaceProd.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2))) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (fun (p : Prod.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2)) => HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (instHMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.mul.{u1} α _inst_1 _inst_2)) (Prod.fst.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) p) (Prod.snd.{u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) p))
+Case conversion may be inaccurate. Consider using '#align uniform_space.completion.continuous_mul UniformSpace.Completion.continuous_mulₓ'. -/
 theorem continuous_mul : Continuous fun p : Completion α × Completion α => p.1 * p.2 :=
   by
   let m := (AddMonoidHom.mul : α →+ α →+ α).compr₂ to_compl
@@ -83,6 +101,12 @@ theorem continuous_mul : Continuous fun p : Completion α × Completion α => p.
   rfl
 #align uniform_space.completion.continuous_mul UniformSpace.Completion.continuous_mul
 
+/- warning: uniform_space.completion.continuous.mul -> UniformSpace.Completion.Continuous.mul is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)))] {β : Type.{u2}} [_inst_5 : TopologicalSpace.{u2} β] {f : β -> (UniformSpace.Completion.{u1} α _inst_2)} {g : β -> (UniformSpace.Completion.{u1} α _inst_2)}, (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) f) -> (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) g) -> (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (fun (b : β) => HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (instHMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.hasMul.{u1} α _inst_1 _inst_2)) (f b) (g b)))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))] {β : Type.{u2}} [_inst_5 : TopologicalSpace.{u2} β] {f : β -> (UniformSpace.Completion.{u1} α _inst_2)} {g : β -> (UniformSpace.Completion.{u1} α _inst_2)}, (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) f) -> (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) g) -> (Continuous.{u2, u1} β (UniformSpace.Completion.{u1} α _inst_2) _inst_5 (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (fun (b : β) => HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.{u1} α _inst_2) (instHMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.mul.{u1} α _inst_1 _inst_2)) (f b) (g b)))
+Case conversion may be inaccurate. Consider using '#align uniform_space.completion.continuous.mul UniformSpace.Completion.Continuous.mulₓ'. -/
 theorem Continuous.mul {β : Type _} [TopologicalSpace β] {f g : β → Completion α}
     (hf : Continuous f) (hg : Continuous g) : Continuous fun b => f b * g b :=
   continuous_mul.comp (hf.prod_mk hg : _)
@@ -128,11 +152,19 @@ instance : Ring (Completion α) :=
               (continuous_snd.comp continuous_snd))))
         fun a b c => by rw [← coe_add, ← coe_mul, ← coe_mul, ← coe_mul, ← coe_add, add_mul] }
 
+#print UniformSpace.Completion.coeRingHom /-
 /-- The map from a uniform ring to its completion, as a ring homomorphism. -/
 def coeRingHom : α →+* Completion α :=
   ⟨coe, coe_one α, fun a b => coe_mul a b, coe_zero, fun a b => coe_add a b⟩
 #align uniform_space.completion.coe_ring_hom UniformSpace.Completion.coeRingHom
+-/
 
+/- warning: uniform_space.completion.continuous_coe_ring_hom -> UniformSpace.Completion.continuous_coeRingHom is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)))], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (coeFn.{succ u1, succ u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) (fun (_x : RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) => α -> (UniformSpace.Completion.{u1} α _inst_2)) (RingHom.hasCoeToFun.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) (UniformSpace.Completion.coeRingHom.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Ring.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))] [_inst_4 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α _inst_1))], Continuous.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.uniformSpace.{u1} α _inst_2)) (FunLike.coe.{succ u1, succ u1, succ u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => UniformSpace.Completion.{u1} α _inst_2) _x) (MulHomClass.toFunLike.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} (UniformSpace.Completion.{u1} α _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))) (NonUnitalRingHomClass.toMulHomClass.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) (RingHomClass.toNonUnitalRingHomClass.{u1, u1, u1} (RingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4)))) α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))) (RingHom.instRingHomClassRingHom.{u1, u1} α (UniformSpace.Completion.{u1} α _inst_2) (NonAssocRing.toNonAssocSemiring.{u1} α (Ring.toNonAssocRing.{u1} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} α _inst_2) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} α _inst_2) (UniformSpace.Completion.ring.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))))))) (UniformSpace.Completion.coeRingHom.{u1} α _inst_1 _inst_2 _inst_3 _inst_4))
+Case conversion may be inaccurate. Consider using '#align uniform_space.completion.continuous_coe_ring_hom UniformSpace.Completion.continuous_coeRingHomₓ'. -/
 theorem continuous_coeRingHom : Continuous (coeRingHom : α → Completion α) :=
   continuous_coe α
 #align uniform_space.completion.continuous_coe_ring_hom UniformSpace.Completion.continuous_coeRingHom
@@ -140,6 +172,12 @@ theorem continuous_coeRingHom : Continuous (coeRingHom : α → Completion α) :
 variable {β : Type u} [UniformSpace β] [Ring β] [UniformAddGroup β] [TopologicalRing β]
   (f : α →+* β) (hf : Continuous f)
 
+/- warning: uniform_space.completion.extension_hom -> UniformSpace.Completion.extensionHom is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (NonAssocRing.toAddGroupWithOne.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (NonAssocRing.toAddGroupWithOne.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) (fun (_x : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) => α -> β) (RingHom.hasCoeToFun.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) f)) -> (forall [_inst_9 : CompleteSpace.{u1} β _inst_5] [_inst_10 : SeparatedSpace.{u1} β _inst_5], RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) β (NonAssocRing.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toNonAssocRing.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))
+but is expected to have type
+  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (Ring.toAddGroupWithOne.{u2} α _inst_1))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (Ring.toAddGroupWithOne.{u1} β _inst_6))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)) (RingHom.instRingHomClassRingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))))) f)) -> (forall [_inst_9 : CompleteSpace.{u1} β _inst_5] [_inst_10 : SeparatedSpace.{u1} β _inst_5], RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) β (NonAssocRing.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toNonAssocRing.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))
+Case conversion may be inaccurate. Consider using '#align uniform_space.completion.extension_hom UniformSpace.Completion.extensionHomₓ'. -/
 /-- The completion extension as a ring morphism. -/
 def extensionHom [CompleteSpace β] [SeparatedSpace β] : Completion α →+* β :=
   have hf' : Continuous (f : α →+ β) := hf
@@ -164,12 +202,20 @@ def extensionHom [CompleteSpace β] [SeparatedSpace β] : Completion α →+* β
         rw [← coe_mul, extension_coe hf, extension_coe hf, extension_coe hf, f.map_mul] }
 #align uniform_space.completion.extension_hom UniformSpace.Completion.extensionHom
 
-instance top_ring_compl : TopologicalRing (Completion α)
+#print UniformSpace.Completion.topologicalRing /-
+instance topologicalRing : TopologicalRing (Completion α)
     where
   continuous_add := continuous_add
   continuous_mul := continuous_mul
-#align uniform_space.completion.top_ring_compl UniformSpace.Completion.top_ring_compl
+#align uniform_space.completion.top_ring_compl UniformSpace.Completion.topologicalRing
+-/
 
+/- warning: uniform_space.completion.map_ring_hom -> UniformSpace.Completion.mapRingHom is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (NonAssocRing.toAddGroupWithOne.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (NonAssocRing.toAddGroupWithOne.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) (fun (_x : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) => α -> β) (RingHom.hasCoeToFun.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) f)) -> (RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.{u1} β _inst_5) (NonAssocRing.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toNonAssocRing.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} β _inst_5) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} β _inst_5) (UniformSpace.Completion.ring.{u1} β _inst_6 _inst_5 _inst_8 _inst_7))))
+but is expected to have type
+  forall {α : Type.{u2}} [_inst_1 : Ring.{u2} α] [_inst_2 : UniformSpace.{u2} α] [_inst_3 : TopologicalRing.{u2} α (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))] [_inst_4 : UniformAddGroup.{u2} α _inst_2 (AddGroupWithOne.toAddGroup.{u2} α (Ring.toAddGroupWithOne.{u2} α _inst_1))] {β : Type.{u1}} [_inst_5 : UniformSpace.{u1} β] [_inst_6 : Ring.{u1} β] [_inst_7 : UniformAddGroup.{u1} β _inst_5 (AddGroupWithOne.toAddGroup.{u1} β (Ring.toAddGroupWithOne.{u1} β _inst_6))] [_inst_8 : TopologicalRing.{u1} β (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (NonAssocRing.toNonUnitalNonAssocRing.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))] (f : RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))), (Continuous.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u2} α _inst_2) (UniformSpace.toTopologicalSpace.{u1} β _inst_5) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u2, u1} (RingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6))) α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)) (RingHom.instRingHomClassRingHom.{u2, u1} α β (NonAssocRing.toNonAssocSemiring.{u2} α (Ring.toNonAssocRing.{u2} α _inst_1)) (NonAssocRing.toNonAssocSemiring.{u1} β (Ring.toNonAssocRing.{u1} β _inst_6)))))) f)) -> (RingHom.{u2, u1} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.{u1} β _inst_5) (NonAssocRing.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} α _inst_2) (Ring.toNonAssocRing.{u2} (UniformSpace.Completion.{u2} α _inst_2) (UniformSpace.Completion.ring.{u2} α _inst_1 _inst_2 _inst_3 _inst_4))) (NonAssocRing.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} β _inst_5) (Ring.toNonAssocRing.{u1} (UniformSpace.Completion.{u1} β _inst_5) (UniformSpace.Completion.ring.{u1} β _inst_6 _inst_5 _inst_8 _inst_7))))
+Case conversion may be inaccurate. Consider using '#align uniform_space.completion.map_ring_hom UniformSpace.Completion.mapRingHomₓ'. -/
 /-- The completion map as a ring morphism. -/
 def mapRingHom (hf : Continuous f) : Completion α →+* Completion β :=
   extensionHom (coeRingHom.comp f) (continuous_coeRingHom.comp hf)
@@ -180,6 +226,12 @@ section Algebra
 variable (A : Type _) [Ring A] [UniformSpace A] [UniformAddGroup A] [TopologicalRing A] (R : Type _)
   [CommSemiring R] [Algebra R A] [UniformContinuousConstSMul R A]
 
+/- warning: uniform_space.completion.map_smul_eq_mul_coe -> UniformSpace.Completion.map_smul_eq_mul_coe is a dubious translation:
+lean 3 declaration is
+  forall (A : Type.{u1}) [_inst_9 : Ring.{u1} A] [_inst_10 : UniformSpace.{u1} A] [_inst_11 : UniformAddGroup.{u1} A _inst_10 (AddGroupWithOne.toAddGroup.{u1} A (NonAssocRing.toAddGroupWithOne.{u1} A (Ring.toNonAssocRing.{u1} A _inst_9)))] [_inst_12 : TopologicalRing.{u1} A (UniformSpace.toTopologicalSpace.{u1} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A _inst_9))] (R : Type.{u2}) [_inst_13 : CommSemiring.{u2} R] [_inst_14 : Algebra.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u2, u1} R A _inst_10 (SMulZeroClass.toHasSmul.{u2, u1} R A (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (SMulWithZero.toSmulZeroClass.{u2, u1} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13))))) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_13) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9)))) (Algebra.toModule.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14)))))] (r : R), Eq.{succ u1} ((UniformSpace.Completion.{u1} A _inst_10) -> (UniformSpace.Completion.{u1} A _inst_10)) (UniformSpace.Completion.map.{u1, u1} A _inst_10 A _inst_10 (SMul.smul.{u2, u1} R A (SMulZeroClass.toHasSmul.{u2, u1} R A (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (SMulWithZero.toSmulZeroClass.{u2, u1} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13))))) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_13) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9)))) (Algebra.toModule.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14))))) r)) (HMul.hMul.{u1, u1, u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.{u1} A _inst_10) (instHMul.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.hasMul.{u1} A _inst_9 _inst_10)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) A (UniformSpace.Completion.{u1} A _inst_10) (HasLiftT.mk.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (CoeTCₓ.coe.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.hasCoeT.{u1} A _inst_10))) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (fun (_x : RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) => R -> A) (RingHom.hasCoeToFun.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (algebraMap.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14) r)))
+but is expected to have type
+  forall (A : Type.{u2}) [_inst_9 : Ring.{u2} A] [_inst_10 : UniformSpace.{u2} A] [_inst_11 : UniformAddGroup.{u2} A _inst_10 (AddGroupWithOne.toAddGroup.{u2} A (Ring.toAddGroupWithOne.{u2} A _inst_9))] [_inst_12 : TopologicalRing.{u2} A (UniformSpace.toTopologicalSpace.{u2} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A _inst_9))] (R : Type.{u1}) [_inst_13 : CommSemiring.{u1} R] [_inst_14 : Algebra.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u1, u2} R A _inst_10 (Algebra.toSMul.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14)] (r : R), Eq.{succ u2} ((UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) -> (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10)) (UniformSpace.Completion.map.{u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10 ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10 ((fun (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1706 : R) (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1708 : (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) => HSMul.hSMul.{u1, u2, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) (instHSMul.{u1, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) (Algebra.toSMul.{u1, u2} R ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_13 (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_9) _inst_14)) x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1706 x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1708) r)) ((fun (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1723 : UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1725 : UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) => HMul.hMul.{u2, u2, u2} (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (instHMul.{u2} (UniformSpace.Completion.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10) (UniformSpace.Completion.mul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_9 _inst_10)) x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1723 x._@.Mathlib.Topology.Algebra.UniformRing._hyg.1725) (UniformSpace.Completion.coe'.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10 (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)))) (NonUnitalNonAssocSemiring.toMul.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)) (RingHom.instRingHomClassRingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))))) (algebraMap.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14) r)))
+Case conversion may be inaccurate. Consider using '#align uniform_space.completion.map_smul_eq_mul_coe UniformSpace.Completion.map_smul_eq_mul_coeₓ'. -/
 @[simp]
 theorem map_smul_eq_mul_coe (r : R) :
     Completion.map ((· • ·) r) = (· * ·) (algebraMap R A r : Completion A) :=
@@ -201,6 +253,12 @@ instance : Algebra R (Completion A) :=
         simpa only [coe_mul] using congr_arg (coe : A → completion A) (Algebra.commutes r a)
     smul_def' := fun r x => congr_fun (map_smul_eq_mul_coe A R r) x }
 
+/- warning: uniform_space.completion.algebra_map_def -> UniformSpace.Completion.algebraMap_def is a dubious translation:
+lean 3 declaration is
+  forall (A : Type.{u1}) [_inst_9 : Ring.{u1} A] [_inst_10 : UniformSpace.{u1} A] [_inst_11 : UniformAddGroup.{u1} A _inst_10 (AddGroupWithOne.toAddGroup.{u1} A (NonAssocRing.toAddGroupWithOne.{u1} A (Ring.toNonAssocRing.{u1} A _inst_9)))] [_inst_12 : TopologicalRing.{u1} A (UniformSpace.toTopologicalSpace.{u1} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A _inst_9))] (R : Type.{u2}) [_inst_13 : CommSemiring.{u2} R] [_inst_14 : Algebra.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u2, u1} R A _inst_10 (SMulZeroClass.toHasSmul.{u2, u1} R A (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (SMulWithZero.toSmulZeroClass.{u2, u1} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13))))) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (AddZeroClass.toHasZero.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))))))) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_13) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9)))) (Algebra.toModule.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14)))))] (r : R), Eq.{succ u1} (UniformSpace.Completion.{u1} A _inst_10) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)))) (fun (_x : RingHom.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)))) => R -> (UniformSpace.Completion.{u1} A _inst_10)) (RingHom.hasCoeToFun.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)))) (algebraMap.{u2, u1} R (UniformSpace.Completion.{u1} A _inst_10) _inst_13 (Ring.toSemiring.{u1} (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.ring.{u1} A _inst_9 _inst_10 _inst_12 _inst_11)) (UniformSpace.Completion.algebra.{u1, u2} A _inst_9 _inst_10 _inst_11 _inst_12 R _inst_13 _inst_14 _inst_15)) r) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) A (UniformSpace.Completion.{u1} A _inst_10) (HasLiftT.mk.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (CoeTCₓ.coe.{succ u1, succ u1} A (UniformSpace.Completion.{u1} A _inst_10) (UniformSpace.Completion.hasCoeT.{u1} A _inst_10))) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (fun (_x : RingHom.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) => R -> A) (RingHom.hasCoeToFun.{u2, u1} R A (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_13)) (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A _inst_9))) (algebraMap.{u2, u1} R A _inst_13 (Ring.toSemiring.{u1} A _inst_9) _inst_14) r))
+but is expected to have type
+  forall (A : Type.{u2}) [_inst_9 : Ring.{u2} A] [_inst_10 : UniformSpace.{u2} A] [_inst_11 : UniformAddGroup.{u2} A _inst_10 (AddGroupWithOne.toAddGroup.{u2} A (Ring.toAddGroupWithOne.{u2} A _inst_9))] [_inst_12 : TopologicalRing.{u2} A (UniformSpace.toTopologicalSpace.{u2} A _inst_10) (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A _inst_9))] (R : Type.{u1}) [_inst_13 : CommSemiring.{u1} R] [_inst_14 : Algebra.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9)] [_inst_15 : UniformContinuousConstSMul.{u1, u2} R A _inst_10 (Algebra.toSMul.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14)] (r : R), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => UniformSpace.Completion.{u2} A _inst_10) r) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => UniformSpace.Completion.{u2} A _inst_10) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (UniformSpace.Completion.{u2} A _inst_10) (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)))) (NonUnitalNonAssocSemiring.toMul.{u2} (UniformSpace.Completion.{u2} A _inst_10) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11))))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (UniformSpace.Completion.{u2} A _inst_10) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)))) R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11))) (RingHom.instRingHomClassRingHom.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11))))))) (algebraMap.{u1, u2} R (UniformSpace.Completion.{u2} A _inst_10) _inst_13 (Ring.toSemiring.{u2} (UniformSpace.Completion.{u2} A _inst_10) (UniformSpace.Completion.ring.{u2} A _inst_9 _inst_10 _inst_12 _inst_11)) (UniformSpace.Completion.algebra.{u2, u1} A _inst_9 _inst_10 _inst_11 _inst_12 R _inst_13 _inst_14 _inst_15)) r) (UniformSpace.Completion.coe'.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) r) _inst_10 (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonUnitalNonAssocSemiring.toMul.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)))) (NonUnitalNonAssocSemiring.toMul.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u1, u2} (RingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9))) R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)) (RingHom.instRingHomClassRingHom.{u1, u2} R A (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_13)) (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A _inst_9)))))) (algebraMap.{u1, u2} R A _inst_13 (Ring.toSemiring.{u2} A _inst_9) _inst_14) r))
+Case conversion may be inaccurate. Consider using '#align uniform_space.completion.algebra_map_def UniformSpace.Completion.algebraMap_defₓ'. -/
 theorem algebraMap_def (r : R) :
     algebraMap R (Completion A) r = (algebraMap R A r : Completion A) :=
   rfl
@@ -219,9 +277,11 @@ instance : CommRing (Completion R) :=
         (isClosed_eq (continuous_fst.mul continuous_snd) (continuous_snd.mul continuous_fst))
         fun a b => by rw [← coe_mul, ← coe_mul, mul_comm] }
 
+#print UniformSpace.Completion.algebra' /-
 /-- A shortcut instance for the common case -/
 instance algebra' : Algebra R (Completion R) := by infer_instance
 #align uniform_space.completion.algebra' UniformSpace.Completion.algebra'
+-/
 
 end CommRing
 
@@ -231,17 +291,35 @@ namespace UniformSpace
 
 variable {α : Type _}
 
+/- warning: uniform_space.ring_sep_rel -> UniformSpace.ring_sep_rel is a dubious translation:
+lean 3 declaration is
+  forall (α : Type.{u1}) [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1))))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], Eq.{succ u1} (Setoid.{succ u1} α) (UniformSpace.separationSetoid.{u1} α _inst_2) (Submodule.quotientRel.{u1, u1} α α (CommRing.toRing.{u1} α _inst_1) (NonUnitalNonAssocRing.toAddCommGroup.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (CommRing.toRing.{u1} α _inst_1) _inst_4 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))) (Submodule.hasBot.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1)))))))
+but is expected to have type
+  forall (α : Type.{u1}) [_inst_1 : CommRing.{u1} α] [_inst_2 : UniformSpace.{u1} α] [_inst_3 : UniformAddGroup.{u1} α _inst_2 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α (CommRing.toRing.{u1} α _inst_1)))] [_inst_4 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α _inst_1)))], Eq.{succ u1} (Setoid.{succ u1} α) (UniformSpace.separationSetoid.{u1} α _inst_2) (Submodule.quotientRel.{u1, u1} α α (CommRing.toRing.{u1} α _inst_1) (Ring.toAddCommGroup.{u1} α (CommRing.toRing.{u1} α _inst_1)) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_2) (CommRing.toRing.{u1} α _inst_1) _inst_4 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))) (Submodule.instBotSubmodule.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α _inst_1)))))))
+Case conversion may be inaccurate. Consider using '#align uniform_space.ring_sep_rel UniformSpace.ring_sep_relₓ'. -/
 theorem ring_sep_rel (α) [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
     separationSetoid α = Submodule.quotientRel (Ideal.closure ⊥) :=
   Setoid.ext fun x y =>
     (addGroup_separationRel x y).trans <| Iff.trans (by rfl) (Submodule.quotientRel_r_def _).symm
 #align uniform_space.ring_sep_rel UniformSpace.ring_sep_rel
 
+/- warning: uniform_space.ring_sep_quot -> UniformSpace.ring_sep_quot is a dubious translation:
+lean 3 declaration is
+  forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r))))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Eq.{succ (succ u1)} Type.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.hasQuotient.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Submodule.hasBot.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)))))))
+but is expected to have type
+  forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α (CommRing.toRing.{u1} α r)))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Eq.{succ (succ u1)} Type.{u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.instHasQuotientIdealToSemiringToRing.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Submodule.instBotSubmodule.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)))))))
+Case conversion may be inaccurate. Consider using '#align uniform_space.ring_sep_quot UniformSpace.ring_sep_quotₓ'. -/
 theorem ring_sep_quot (α : Type u) [r : CommRing α] [UniformSpace α] [UniformAddGroup α]
     [TopologicalRing α] : Quotient (separationSetoid α) = (α ⧸ (⊥ : Ideal α).closure) := by
   rw [@ring_sep_rel α r] <;> rfl
 #align uniform_space.ring_sep_quot UniformSpace.ring_sep_quot
 
+/- warning: uniform_space.sep_quot_equiv_ring_quot -> UniformSpace.sepQuotEquivRingQuot is a dubious translation:
+lean 3 declaration is
+  forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (NonAssocRing.toAddGroupWithOne.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r))))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Equiv.{succ u1, succ u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.hasQuotient.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Submodule.hasBot.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)))))))
+but is expected to have type
+  forall (α : Type.{u1}) [r : CommRing.{u1} α] [_inst_1 : UniformSpace.{u1} α] [_inst_2 : UniformAddGroup.{u1} α _inst_1 (AddGroupWithOne.toAddGroup.{u1} α (Ring.toAddGroupWithOne.{u1} α (CommRing.toRing.{u1} α r)))] [_inst_3 : TopologicalRing.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (CommRing.toRing.{u1} α r)))], Equiv.{succ u1, succ u1} (Quotient.{succ u1} α (UniformSpace.separationSetoid.{u1} α _inst_1)) (HasQuotient.Quotient.{u1, u1} α (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Ideal.instHasQuotientIdealToSemiringToRing.{u1} α r) (Ideal.closure.{u1} α (UniformSpace.toTopologicalSpace.{u1} α _inst_1) (CommRing.toRing.{u1} α r) _inst_3 (Bot.bot.{u1} (Ideal.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))) (Submodule.instBotSubmodule.{u1, u1} α α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r))))) (Semiring.toModule.{u1} α (Ring.toSemiring.{u1} α (CommRing.toRing.{u1} α r)))))))
+Case conversion may be inaccurate. Consider using '#align uniform_space.sep_quot_equiv_ring_quot UniformSpace.sepQuotEquivRingQuotₓ'. -/
 /-- Given a topological ring `α` equipped with a uniform structure that makes subtraction uniformly
 continuous, get an equivalence between the separated quotient of `α` and the quotient ring
 corresponding to the closure of zero. -/
@@ -251,17 +329,21 @@ def sepQuotEquivRingQuot (α) [r : CommRing α] [UniformSpace α] [UniformAddGro
     (addGroup_separationRel x y).trans <| Iff.trans (by rfl) (Submodule.quotientRel_r_def _).symm
 #align uniform_space.sep_quot_equiv_ring_quot UniformSpace.sepQuotEquivRingQuot
 
+#print UniformSpace.commRing /-
 -- TODO: use a form of transport a.k.a. lift definition a.k.a. transfer
 instance commRing [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
     CommRing (Quotient (separationSetoid α)) := by rw [ring_sep_quot α] <;> infer_instance
 #align uniform_space.comm_ring UniformSpace.commRing
+-/
 
+#print UniformSpace.topologicalRing /-
 instance topologicalRing [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
     TopologicalRing (Quotient (separationSetoid α)) :=
   by
   convert topologicalRing_quotient (⊥ : Ideal α).closure <;> try apply ring_sep_rel
   simp [UniformSpace.commRing]
 #align uniform_space.topological_ring UniformSpace.topologicalRing
+-/
 
 end UniformSpace
 
@@ -275,6 +357,12 @@ variable {γ : Type _} [UniformSpace γ] [Semiring γ] [TopologicalSemiring γ]
 
 variable [T2Space γ] [CompleteSpace γ]
 
+/- warning: dense_inducing.extend_ring_hom -> DenseInducing.extendRingHom is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : Semiring.{u1} α] {β : Type.{u2}} [_inst_3 : UniformSpace.{u2} β] [_inst_4 : Semiring.{u2} β] [_inst_5 : TopologicalSemiring.{u2} β (UniformSpace.toTopologicalSpace.{u2} β _inst_3) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4))] {γ : Type.{u3}} [_inst_6 : UniformSpace.{u3} γ] [_inst_7 : Semiring.{u3} γ] [_inst_8 : TopologicalSemiring.{u3} γ (UniformSpace.toTopologicalSpace.{u3} γ _inst_6) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} γ (Semiring.toNonAssocSemiring.{u3} γ _inst_7))] [_inst_9 : T2Space.{u3} γ (UniformSpace.toTopologicalSpace.{u3} γ _inst_6)] [_inst_10 : CompleteSpace.{u3} γ _inst_6] {i : RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)} {f : RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)}, (UniformInducing.{u1, u2} α β _inst_1 _inst_3 (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) (fun (_x : RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) => α -> β) (RingHom.hasCoeToFun.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) i)) -> (DenseRange.{u2, u1} β (UniformSpace.toTopologicalSpace.{u2} β _inst_3) α (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) (fun (_x : RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) => α -> β) (RingHom.hasCoeToFun.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) i)) -> (UniformContinuous.{u1, u3} α γ _inst_1 _inst_6 (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) (fun (_x : RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) => α -> γ) (RingHom.hasCoeToFun.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) f)) -> (RingHom.{u2, u3} β γ (Semiring.toNonAssocSemiring.{u2} β _inst_4) (Semiring.toNonAssocSemiring.{u3} γ _inst_7))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : UniformSpace.{u1} α] [_inst_2 : Semiring.{u1} α] {β : Type.{u2}} [_inst_3 : UniformSpace.{u2} β] [_inst_4 : Semiring.{u2} β] [_inst_5 : TopologicalSemiring.{u2} β (UniformSpace.toTopologicalSpace.{u2} β _inst_3) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4))] {γ : Type.{u3}} [_inst_6 : UniformSpace.{u3} γ] [_inst_7 : Semiring.{u3} γ] [_inst_8 : TopologicalSemiring.{u3} γ (UniformSpace.toTopologicalSpace.{u3} γ _inst_6) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} γ (Semiring.toNonAssocSemiring.{u3} γ _inst_7))] [_inst_9 : T2Space.{u3} γ (UniformSpace.toTopologicalSpace.{u3} γ _inst_6)] [_inst_10 : CompleteSpace.{u3} γ _inst_6] {i : RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)} {f : RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)}, (UniformInducing.{u1, u2} α β _inst_1 _inst_3 (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4) (RingHom.instRingHomClassRingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4))))) i)) -> (DenseRange.{u2, u1} β (UniformSpace.toTopologicalSpace.{u2} β _inst_3) α (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β (Semiring.toNonAssocSemiring.{u2} β _inst_4)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u2, u1, u2} (RingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4)) α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4) (RingHom.instRingHomClassRingHom.{u1, u2} α β (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u2} β _inst_4))))) i)) -> (UniformContinuous.{u1, u3} α γ _inst_1 _inst_6 (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => γ) _x) (MulHomClass.toFunLike.{max u1 u3, u1, u3} (RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) α γ (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2))) (NonUnitalNonAssocSemiring.toMul.{u3} γ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} γ (Semiring.toNonAssocSemiring.{u3} γ _inst_7))) (NonUnitalRingHomClass.toMulHomClass.{max u1 u3, u1, u3} (RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) α γ (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α (Semiring.toNonAssocSemiring.{u1} α _inst_2)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} γ (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) (RingHomClass.toNonUnitalRingHomClass.{max u1 u3, u1, u3} (RingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7)) α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7) (RingHom.instRingHomClassRingHom.{u1, u3} α γ (Semiring.toNonAssocSemiring.{u1} α _inst_2) (Semiring.toNonAssocSemiring.{u3} γ _inst_7))))) f)) -> (RingHom.{u2, u3} β γ (Semiring.toNonAssocSemiring.{u2} β _inst_4) (Semiring.toNonAssocSemiring.{u3} γ _inst_7))
+Case conversion may be inaccurate. Consider using '#align dense_inducing.extend_ring_hom DenseInducing.extendRingHomₓ'. -/
 /-- The dense inducing extension as a ring homomorphism. -/
 noncomputable def DenseInducing.extendRingHom {i : α →+* β} {f : α →+* γ} (ue : UniformInducing i)
     (dr : DenseRange i) (hf : UniformContinuous f) : β →+* γ
Diff
@@ -4,13 +4,13 @@ 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.uniform_ring
-! leanprover-community/mathlib commit ed5ef408e2955174e1e7185eb2326d03758c6d22
+! leanprover-community/mathlib commit 9a59dcb7a2d06bf55da57b9030169219980660cd
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
 import Mathbin.Algebra.Algebra.Basic
 import Mathbin.Topology.Algebra.GroupCompletion
-import Mathbin.Topology.Algebra.Ring
+import Mathbin.Topology.Algebra.Ring.Ideal
 
 /-!
 # Completion of topological rings:
Diff
@@ -178,7 +178,7 @@ def mapRingHom (hf : Continuous f) : Completion α →+* Completion β :=
 section Algebra
 
 variable (A : Type _) [Ring A] [UniformSpace A] [UniformAddGroup A] [TopologicalRing A] (R : Type _)
-  [CommSemiring R] [Algebra R A] [HasUniformContinuousConstSmul R A]
+  [CommSemiring R] [Algebra R A] [UniformContinuousConstSMul R A]
 
 @[simp]
 theorem map_smul_eq_mul_coe (r : R) :
Diff
@@ -144,7 +144,7 @@ variable {β : Type u} [UniformSpace β] [Ring β] [UniformAddGroup β] [Topolog
 def extensionHom [CompleteSpace β] [SeparatedSpace β] : Completion α →+* β :=
   have hf' : Continuous (f : α →+ β) := hf
   -- helping the elaborator
-  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 =>
@@ -234,7 +234,7 @@ variable {α : Type _}
 theorem ring_sep_rel (α) [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
     separationSetoid α = Submodule.quotientRel (Ideal.closure ⊥) :=
   Setoid.ext fun x y =>
-    (add_group_separationRel x y).trans <| Iff.trans (by rfl) (Submodule.quotientRel_r_def _).symm
+    (addGroup_separationRel x y).trans <| Iff.trans (by rfl) (Submodule.quotientRel_r_def _).symm
 #align uniform_space.ring_sep_rel UniformSpace.ring_sep_rel
 
 theorem ring_sep_quot (α : Type u) [r : CommRing α] [UniformSpace α] [UniformAddGroup α]
@@ -248,7 +248,7 @@ corresponding to the closure of zero. -/
 def sepQuotEquivRingQuot (α) [r : CommRing α] [UniformSpace α] [UniformAddGroup α]
     [TopologicalRing α] : Quotient (separationSetoid α) ≃ α ⧸ (⊥ : Ideal α).closure :=
   Quotient.congrRight fun x y =>
-    (add_group_separationRel x y).trans <| Iff.trans (by rfl) (Submodule.quotientRel_r_def _).symm
+    (addGroup_separationRel x y).trans <| Iff.trans (by rfl) (Submodule.quotientRel_r_def _).symm
 #align uniform_space.sep_quot_equiv_ring_quot UniformSpace.sepQuotEquivRingQuot
 
 -- TODO: use a form of transport a.k.a. lift definition a.k.a. transfer

Changes in mathlib4

mathlib3
mathlib4
chore: split Algebra.Algebra.Basic (#12486)

Splits Algebra.Algebra.Defs off Algebra.Algebra.Basic. Most imports only need the Defs file, which has significantly smaller imports. The remaining Algebra.Algebra.Basic is now a grab-bag of unrelated results, and should probably be split further or rehomed.

This is mostly motivated by the wasted effort during minimization upon encountering Algebra.Algebra.Basic.

Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Ruben Van de Velde <65514131+Ruben-VandeVelde@users.noreply.github.com>

Diff
@@ -3,7 +3,7 @@ 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 Mathlib.Algebra.Algebra.Basic
+import Mathlib.Algebra.Algebra.Defs
 import Mathlib.Logic.Equiv.TransferInstance
 import Mathlib.Topology.Algebra.GroupCompletion
 import Mathlib.Topology.Algebra.Ring.Ideal
chore(*): remove empty lines between variable statements (#11418)

Empty lines were removed by executing the following Python script twice

import os
import re


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

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

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

      # Write the modified content back to the file
      with open(file_path, 'w') as file:
        file.write(modified_content)
Diff
@@ -295,11 +295,8 @@ end UniformSpace
 section UniformExtension
 
 variable {α : Type*} [UniformSpace α] [Semiring α]
-
 variable {β : Type*} [UniformSpace β] [Semiring β] [TopologicalSemiring β]
-
 variable {γ : Type*} [UniformSpace γ] [Semiring γ] [TopologicalSemiring γ]
-
 variable [T2Space γ] [CompleteSpace γ]
 
 /-- The dense inducing extension as a ring homomorphism. -/
refactor(UniformSpace): drop 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;
  • probably, some theorems/instances still assume 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

Diff
@@ -4,6 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Patrick Massot, Johannes Hölzl
 -/
 import Mathlib.Algebra.Algebra.Basic
+import Mathlib.Logic.Equiv.TransferInstance
 import Mathlib.Topology.Algebra.GroupCompletion
 import Mathlib.Topology.Algebra.Ring.Ideal
 
@@ -152,7 +153,7 @@ variable {β : Type u} [UniformSpace β] [Ring β] [UniformAddGroup β] [Topolog
   (f : α →+* β) (hf : Continuous f)
 
 /-- The completion extension as a ring morphism. -/
-def extensionHom [CompleteSpace β] [SeparatedSpace β] : Completion α →+* β :=
+def extensionHom [CompleteSpace β] [T0Space β] : Completion α →+* β :=
   have hf' : Continuous (f : α →+ β) := hf
   -- helping the elaborator
   have hf : UniformContinuous f := uniformContinuous_addMonoidHom_of_continuous hf'
@@ -237,38 +238,56 @@ namespace UniformSpace
 
 variable {α : Type*}
 
-theorem ring_sep_rel (α) [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
-    separationSetoid α = Submodule.quotientRel (Ideal.closure ⊥) :=
+-- TODO: move (some of) these results to the file about topological rings
+theorem inseparableSetoid_ring (α) [CommRing α] [TopologicalSpace α] [TopologicalRing α] :
+    inseparableSetoid α = Submodule.quotientRel (Ideal.closure ⊥) :=
   Setoid.ext fun x y =>
-    (addGroup_separationRel x y).trans <| Iff.trans (by rfl) (Submodule.quotientRel_r_def _).symm
-#align uniform_space.ring_sep_rel UniformSpace.ring_sep_rel
+    addGroup_inseparable_iff.trans <| .trans (by rfl) (Submodule.quotientRel_r_def _).symm
+#align uniform_space.ring_sep_rel UniformSpace.inseparableSetoid_ring
 
-theorem ring_sep_quot (α : Type u) [r : CommRing α] [UniformSpace α] [UniformAddGroup α]
-    [TopologicalRing α] : Quotient (separationSetoid α) = (α ⧸ (⊥ : Ideal α).closure) := by
-  rw [@ring_sep_rel α r]
+@[deprecated] -- 2024-03-09
+alias ring_sep_rel := inseparableSetoid_ring
+
+@[deprecated UniformSpace.inseparableSetoid_ring] -- 2024-02-16 Equality of types is evil
+theorem ring_sep_quot (α : Type u) [r : CommRing α] [TopologicalSpace α] [TopologicalRing α] :
+    SeparationQuotient α = (α ⧸ (⊥ : Ideal α).closure) := by
+  rw [SeparationQuotient, @inseparableSetoid_ring α r]
   rfl
 #align uniform_space.ring_sep_quot UniformSpace.ring_sep_quot
 
 /-- Given a topological ring `α` equipped with a uniform structure that makes subtraction uniformly
-continuous, get an equivalence between the separated quotient of `α` and the quotient ring
+continuous, get an homeomorphism between the separated quotient of `α` and the quotient ring
 corresponding to the closure of zero. -/
-def sepQuotEquivRingQuot (α) [r : CommRing α] [UniformSpace α] [UniformAddGroup α]
-    [TopologicalRing α] : Quotient (separationSetoid α) ≃ α ⧸ (⊥ : Ideal α).closure :=
-  Quotient.congrRight fun x y =>
-    (addGroup_separationRel x y).trans <| Iff.trans (by rfl) (Submodule.quotientRel_r_def _).symm
-#align uniform_space.sep_quot_equiv_ring_quot UniformSpace.sepQuotEquivRingQuot
-
--- TODO: use a form of transport a.k.a. lift definition a.k.a. transfer
-instance commRing [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
-    CommRing (Quotient (separationSetoid α)) := by
-  rw [ring_sep_quot α]; infer_instance
+def sepQuotHomeomorphRingQuot (α) [CommRing α] [TopologicalSpace α] [TopologicalRing α] :
+    SeparationQuotient α ≃ₜ α ⧸ (⊥ : Ideal α).closure where
+  toEquiv := Quotient.congrRight fun x y => by rw [inseparableSetoid_ring]
+  continuous_toFun := continuous_id.quotient_map' <| by
+    rw [inseparableSetoid_ring]; exact fun _ _ ↦ id
+  continuous_invFun := continuous_id.quotient_map' <| by
+    rw [inseparableSetoid_ring]; exact fun _ _ ↦ id
+#align uniform_space.sep_quot_equiv_ring_quot UniformSpace.sepQuotHomeomorphRingQuot
+
+instance commRing [CommRing α] [TopologicalSpace α] [TopologicalRing α] :
+    CommRing (SeparationQuotient α) :=
+  (sepQuotHomeomorphRingQuot _).commRing
 #align uniform_space.comm_ring UniformSpace.commRing
 
-instance topologicalRing [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
-    TopologicalRing (Quotient (separationSetoid α)) := by
-  convert topologicalRing_quotient (⊥ : Ideal α).closure
-  <;> (try congr; apply ring_sep_rel)
-  simp [commRing]
+/-- Given a topological ring `α` equipped with a uniform structure that makes subtraction uniformly
+continuous, get an equivalence between the separated quotient of `α` and the quotient ring
+corresponding to the closure of zero. -/
+def sepQuotRingEquivRingQuot (α) [CommRing α] [TopologicalSpace α] [TopologicalRing α] :
+    SeparationQuotient α ≃+* α ⧸ (⊥ : Ideal α).closure :=
+  (sepQuotHomeomorphRingQuot _).ringEquiv
+
+instance topologicalRing [CommRing α] [TopologicalSpace α] [TopologicalRing α] :
+    TopologicalRing (SeparationQuotient α) where
+  toContinuousAdd :=
+    Inducing.continuousAdd (sepQuotRingEquivRingQuot α) (sepQuotHomeomorphRingQuot α).inducing
+  toContinuousMul :=
+    Inducing.continuousMul (sepQuotRingEquivRingQuot α) (sepQuotHomeomorphRingQuot α).inducing
+  toContinuousNeg :=
+    Inducing.continuousNeg (sepQuotHomeomorphRingQuot α).inducing <|
+      map_neg (sepQuotRingEquivRingQuot α)
 #align uniform_space.topological_ring UniformSpace.topologicalRing
 
 end UniformSpace
chore: scope open Classical (#11199)

We remove all but one open Classicals, instead preferring to use open scoped Classical. The only real side-effect this led to is moving a couple declarations to use Exists.choose instead of Classical.choose.

The first few commits are explicitly labelled regex replaces for ease of review.

Diff
@@ -35,9 +35,10 @@ TODO: Generalise the results here from the concrete `Completion` to any `Abstrac
 -/
 
 
-open Classical Set Filter TopologicalSpace AddCommGroup
+open scoped Classical
+open Set Filter TopologicalSpace AddCommGroup
 
-open Classical
+open scoped Classical
 
 noncomputable section
 
chore: Replace (· op ·) a by (a op ·) (#8843)

I used the regex \(\(· (.) ·\) (.)\), replacing with ($2 $1 ·).

Diff
@@ -191,7 +191,7 @@ variable (A : Type*) [Ring A] [UniformSpace A] [UniformAddGroup A] [TopologicalR
 
 @[simp]
 theorem map_smul_eq_mul_coe (r : R) :
-    Completion.map ((· • ·) r) = (· * ·) (algebraMap R A r : Completion A) := by
+    Completion.map (r • ·) = ((algebraMap R A r : Completion A) * ·) := by
   ext x
   refine' Completion.induction_on x _ fun a => _
   · exact isClosed_eq Completion.continuous_map (continuous_mul_left _)
chore: banish Type _ and Sort _ (#6499)

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

This has nice performance benefits.

Diff
@@ -47,7 +47,7 @@ namespace UniformSpace.Completion
 open DenseInducing UniformSpace Function
 
 section one_and_mul
-variable (α : Type _) [Ring α] [UniformSpace α]
+variable (α : Type*) [Ring α] [UniformSpace α]
 
 instance one : One (Completion α) :=
   ⟨(1 : α)⟩
@@ -62,7 +62,7 @@ theorem coe_one : ((1 : α) : Completion α) = 1 :=
 
 end one_and_mul
 
-variable {α : Type _} [Ring α] [UniformSpace α] [TopologicalRing α]
+variable {α : Type*} [Ring α] [UniformSpace α] [TopologicalRing α]
 
 @[norm_cast]
 theorem coe_mul (a b : α) : ((a * b : α) : Completion α) = a * b :=
@@ -82,7 +82,7 @@ theorem continuous_mul : Continuous fun p : Completion α × Completion α => p.
   convert di.extend_Z_bilin di this
 #align uniform_space.completion.continuous_mul UniformSpace.Completion.continuous_mul
 
-theorem Continuous.mul {β : Type _} [TopologicalSpace β] {f g : β → Completion α}
+theorem Continuous.mul {β : Type*} [TopologicalSpace β] {f g : β → Completion α}
     (hf : Continuous f) (hg : Continuous g) : Continuous fun b => f b * g b :=
   Continuous.comp continuous_mul (Continuous.prod_mk hf hg : _)
 #align uniform_space.completion.continuous.mul UniformSpace.Completion.Continuous.mul
@@ -186,7 +186,7 @@ def mapRingHom (hf : Continuous f) : Completion α →+* Completion β :=
 
 section Algebra
 
-variable (A : Type _) [Ring A] [UniformSpace A] [UniformAddGroup A] [TopologicalRing A] (R : Type _)
+variable (A : Type*) [Ring A] [UniformSpace A] [UniformAddGroup A] [TopologicalRing A] (R : Type*)
   [CommSemiring R] [Algebra R A] [UniformContinuousConstSMul R A]
 
 @[simp]
@@ -215,7 +215,7 @@ end Algebra
 
 section CommRing
 
-variable (R : Type _) [CommRing R] [UniformSpace R] [UniformAddGroup R] [TopologicalRing R]
+variable (R : Type*) [CommRing R] [UniformSpace R] [UniformAddGroup R] [TopologicalRing R]
 
 instance commRing : CommRing (Completion R) :=
   { Completion.ring with
@@ -234,7 +234,7 @@ end UniformSpace.Completion
 
 namespace UniformSpace
 
-variable {α : Type _}
+variable {α : Type*}
 
 theorem ring_sep_rel (α) [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
     separationSetoid α = Submodule.quotientRel (Ideal.closure ⊥) :=
@@ -274,11 +274,11 @@ end UniformSpace
 
 section UniformExtension
 
-variable {α : Type _} [UniformSpace α] [Semiring α]
+variable {α : Type*} [UniformSpace α] [Semiring α]
 
-variable {β : Type _} [UniformSpace β] [Semiring β] [TopologicalSemiring β]
+variable {β : Type*} [UniformSpace β] [Semiring β] [TopologicalSemiring β]
 
-variable {γ : Type _} [UniformSpace γ] [Semiring γ] [TopologicalSemiring γ]
+variable {γ : Type*} [UniformSpace γ] [Semiring γ] [TopologicalSemiring γ]
 
 variable [T2Space γ] [CompleteSpace γ]
 
chore: script to replace headers with #align_import statements (#5979)

Open in Gitpod

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

Diff
@@ -2,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.uniform_ring
-! leanprover-community/mathlib commit 9a59dcb7a2d06bf55da57b9030169219980660cd
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathlib.Algebra.Algebra.Basic
 import Mathlib.Topology.Algebra.GroupCompletion
 import Mathlib.Topology.Algebra.Ring.Ideal
 
+#align_import topology.algebra.uniform_ring from "leanprover-community/mathlib"@"9a59dcb7a2d06bf55da57b9030169219980660cd"
+
 /-!
 # Completion of topological rings:
 
chore: add space after exacts (#4945)

Too often tempted to change these during other PRs, so doing a mass edit here.

Co-authored-by: Scott Morrison <scott.morrison@anu.edu.au>

Diff
@@ -291,7 +291,7 @@ noncomputable def DenseInducing.extendRingHom {i : α →+* β} {f : α →+* γ
   toFun := (ue.denseInducing dr).extend f
   map_one' := by
     convert DenseInducing.extend_eq (ue.denseInducing dr) hf.continuous 1
-    exacts[i.map_one.symm, f.map_one.symm]
+    exacts [i.map_one.symm, f.map_one.symm]
   map_zero' := by
     convert DenseInducing.extend_eq (ue.denseInducing dr) hf.continuous 0 <;>
     simp only [map_zero]
chore: reenable eta, bump to nightly 2023-05-16 (#3414)

Now that leanprover/lean4#2210 has been merged, this PR:

  • removes all the set_option synthInstance.etaExperiment true commands (and some etaExperiment% term elaborators)
  • removes many but not quite all set_option maxHeartbeats commands
  • makes various other changes required to cope with leanprover/lean4#2210.

Co-authored-by: Scott Morrison <scott.morrison@anu.edu.au> Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Matthew Ballard <matt@mrb.email>

Diff
@@ -239,7 +239,6 @@ namespace UniformSpace
 
 variable {α : Type _}
 
-set_option synthInstance.etaExperiment true in
 theorem ring_sep_rel (α) [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
     separationSetoid α = Submodule.quotientRel (Ideal.closure ⊥) :=
   Setoid.ext fun x y =>
@@ -252,7 +251,6 @@ theorem ring_sep_quot (α : Type u) [r : CommRing α] [UniformSpace α] [Uniform
   rfl
 #align uniform_space.ring_sep_quot UniformSpace.ring_sep_quot
 
-set_option synthInstance.etaExperiment true in
 /-- Given a topological ring `α` equipped with a uniform structure that makes subtraction uniformly
 continuous, get an equivalence between the separated quotient of `α` and the quotient ring
 corresponding to the closure of zero. -/
Diff
@@ -166,7 +166,7 @@ def extensionHom [CompleteSpace β] [SeparatedSpace β] : Completion α →+* β
           ((continuous_extension.comp continuous_fst).add
             (continuous_extension.comp continuous_snd)))
         fun a b => by
-        simp_rw [← coe_add, extension_coe hf, extension_coe hf, extension_coe hf, f.map_add]
+        simp_rw [← coe_add, extension_coe hf, f.map_add]
     map_one' := by rw [← coe_one, extension_coe hf, f.map_one]
     map_mul' := fun a b =>
       Completion.induction_on₂ a b
@@ -174,7 +174,7 @@ def extensionHom [CompleteSpace β] [SeparatedSpace β] : Completion α →+* β
           ((continuous_extension.comp continuous_fst).mul
             (continuous_extension.comp continuous_snd)))
         fun a b => by
-        simp_rw [← coe_mul, extension_coe hf, extension_coe hf, extension_coe hf, f.map_mul] }
+        simp_rw [← coe_mul, extension_coe hf, f.map_mul] }
 #align uniform_space.completion.extension_hom UniformSpace.Completion.extensionHom
 
 instance topologicalRing : TopologicalRing (Completion α) where
chore: use etaExperiment rather than hacking with instances (#3668)

This is to fix timeouts in https://github.com/leanprover-community/mathlib4/pull/3552.

See discussion at https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/!4.233552.20.28LinearAlgebra.2EMatrix.2EToLin.29.

Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -239,6 +239,7 @@ namespace UniformSpace
 
 variable {α : Type _}
 
+set_option synthInstance.etaExperiment true in
 theorem ring_sep_rel (α) [CommRing α] [UniformSpace α] [UniformAddGroup α] [TopologicalRing α] :
     separationSetoid α = Submodule.quotientRel (Ideal.closure ⊥) :=
   Setoid.ext fun x y =>
@@ -251,6 +252,7 @@ theorem ring_sep_quot (α : Type u) [r : CommRing α] [UniformSpace α] [Uniform
   rfl
 #align uniform_space.ring_sep_quot UniformSpace.ring_sep_quot
 
+set_option synthInstance.etaExperiment true in
 /-- Given a topological ring `α` equipped with a uniform structure that makes subtraction uniformly
 continuous, get an equivalence between the separated quotient of `α` and the quotient ring
 corresponding to the closure of zero. -/
chore: tidy various files (#3124)
Diff
@@ -79,7 +79,7 @@ theorem continuous_mul : Continuous fun p : Completion α × Completion α => p.
   let m := (AddMonoidHom.mul : α →+ α →+ α).compr₂ toCompl
   have : Continuous fun p : α × α => m p.1 p.2 := by
     apply (continuous_coe α).comp _
-    simp only [AddMonoidHom.coe_mul, AddMonoidHom.coe_mul_left]
+    simp only [AddMonoidHom.coe_mul, AddMonoidHom.coe_mulLeft]
     exact _root_.continuous_mul
   have di : DenseInducing (toCompl : α → Completion α) := denseInducing_coe
   convert di.extend_Z_bilin di this
feat: port Topology/Algebra/UniformRing (#2789)

Co-authored-by: Jireh Loreaux <loreaujy@gmail.com>

Dependencies 9 + 476

477 files ported (98.1%)
206794 lines ported (97.6%)
Show graph

The unported dependencies are