topology.instances.complexMathlib.Topology.Instances.Complex

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)

(last sync)

Changes in mathlib3port

mathlib3
mathlib3port
Diff
@@ -43,7 +43,7 @@ theorem Complex.subfield_eq_of_closed {K : Subfield ℂ} (hc : IsClosed (K : Set
     rw [← IsClosed.closure_eq hc]
     apply closure_mono
     rintro _ ⟨_, rfl⟩
-    simp only [Function.comp_apply, of_real_rat_cast, SetLike.mem_coe, SubfieldClass.coe_rat_mem]
+    simp only [Function.comp_apply, of_real_rat_cast, SetLike.mem_coe, SubfieldClass.ratCast_mem]
   nth_rw 2 [range_comp]
   refine' subset_trans _ (image_closure_subset_closure_image continuous_of_real)
   rw [DenseRange.closure_range rat.dense_embedding_coe_real.dense]
Diff
@@ -30,7 +30,7 @@ theorem Complex.subfield_eq_of_closed {K : Subfield ℂ} (hc : IsClosed (K : Set
   by
   suffices range (coe : ℝ → ℂ) ⊆ K
     by
-    rw [range_subset_iff, ← coe_algebra_map] at this 
+    rw [range_subset_iff, ← coe_algebra_map] at this
     have :=
       (Subalgebra.isSimpleOrder_of_finrank finrank_real_complex).eq_bot_or_eq_top
         (Subfield.toIntermediateField K this).toSubalgebra
@@ -80,7 +80,7 @@ theorem Complex.uniformContinuous_ringHom_eq_id_or_conj (K : Subfield ℂ) {ψ :
       rsuffices ⟨r, hr⟩ : ∃ r : ℝ, of_real.range_restrict r = j (ι x)
       · have :=
           RingHom.congr_fun (ring_hom_eq_of_real_of_continuous (by continuity : Continuous ψ₁)) r
-        rw [RingHom.comp_apply, RingHom.comp_apply, hr, RingEquiv.toRingHom_eq_coe] at this 
+        rw [RingHom.comp_apply, RingHom.comp_apply, hr, RingEquiv.toRingHom_eq_coe] at this
         convert this using 1
         · exact (DenseInducing.extend_eq di hc.continuous _).symm
         · rw [← of_real.coe_range_restrict, hr]; rfl
Diff
@@ -51,8 +51,8 @@ theorem Complex.subfield_eq_of_closed {K : Subfield ℂ} (hc : IsClosed (K : Set
 #align complex.subfield_eq_of_closed Complex.subfield_eq_of_closed
 -/
 
-/- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:307:22: continuitity! not supported at the moment -/
-/- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:307:22: continuitity! not supported at the moment -/
+/- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:303:22: continuitity! not supported at the moment -/
+/- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:303:22: continuitity! not supported at the moment -/
 #print Complex.uniformContinuous_ringHom_eq_id_or_conj /-
 /-- Let `K` a subfield of `ℂ` and let `ψ : K →+* ℂ` a ring homomorphism. Assume that `ψ` is uniform
 continuous, then `ψ` is either the inclusion map or the composition of the inclusion map with the
Diff
@@ -3,9 +3,9 @@ Copyright (c) 2022 Xavier Roblot. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Xavier Roblot
 -/
-import Mathbin.Analysis.Complex.Basic
-import Mathbin.FieldTheory.IntermediateField
-import Mathbin.Topology.Algebra.UniformRing
+import Analysis.Complex.Basic
+import FieldTheory.IntermediateField
+import Topology.Algebra.UniformRing
 
 #align_import topology.instances.complex from "leanprover-community/mathlib"@"0b7c740e25651db0ba63648fbae9f9d6f941e31b"
 
@@ -51,8 +51,8 @@ theorem Complex.subfield_eq_of_closed {K : Subfield ℂ} (hc : IsClosed (K : Set
 #align complex.subfield_eq_of_closed Complex.subfield_eq_of_closed
 -/
 
-/- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:305:22: continuitity! not supported at the moment -/
-/- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:305:22: continuitity! not supported at the moment -/
+/- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:307:22: continuitity! not supported at the moment -/
+/- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:307:22: continuitity! not supported at the moment -/
 #print Complex.uniformContinuous_ringHom_eq_id_or_conj /-
 /-- Let `K` a subfield of `ℂ` and let `ψ : K →+* ℂ` a ring homomorphism. Assume that `ψ` is uniform
 continuous, then `ψ` is either the inclusion map or the composition of the inclusion map with the
Diff
@@ -105,7 +105,7 @@ theorem Complex.uniformContinuous_ringHom_eq_id_or_conj (K : Subfield ℂ) {ψ :
       DenseRange.comp (Function.Surjective.denseRange _)
         (DenseEmbedding.subtype denseEmbedding_id (K : Set ℂ)).dense (by continuity : Continuous j)
     rintro ⟨y, hy⟩
-    use ⟨y, by convert hy; simpa only [id.def, Set.image_id']⟩
+    use⟨y, by convert hy; simpa only [id.def, Set.image_id']⟩
     simp only [Subtype.mk_eq_mk, Subtype.coe_mk]
 #align complex.uniform_continuous_ring_hom_eq_id_or_conj Complex.uniformContinuous_ringHom_eq_id_or_conj
 -/
Diff
@@ -2,16 +2,13 @@
 Copyright (c) 2022 Xavier Roblot. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Xavier Roblot
-
-! This file was ported from Lean 3 source module topology.instances.complex
-! leanprover-community/mathlib commit 0b7c740e25651db0ba63648fbae9f9d6f941e31b
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathbin.Analysis.Complex.Basic
 import Mathbin.FieldTheory.IntermediateField
 import Mathbin.Topology.Algebra.UniformRing
 
+#align_import topology.instances.complex from "leanprover-community/mathlib"@"0b7c740e25651db0ba63648fbae9f9d6f941e31b"
+
 /-!
 # Some results about the topology of ℂ
 
Diff
@@ -54,8 +54,8 @@ theorem Complex.subfield_eq_of_closed {K : Subfield ℂ} (hc : IsClosed (K : Set
 #align complex.subfield_eq_of_closed Complex.subfield_eq_of_closed
 -/
 
-/- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:304:22: continuitity! not supported at the moment -/
-/- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:304:22: continuitity! not supported at the moment -/
+/- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:305:22: continuitity! not supported at the moment -/
+/- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:305:22: continuitity! not supported at the moment -/
 #print Complex.uniformContinuous_ringHom_eq_id_or_conj /-
 /-- Let `K` a subfield of `ℂ` and let `ψ : K →+* ℂ` a ring homomorphism. Assume that `ψ` is uniform
 continuous, then `ψ` is either the inclusion map or the composition of the inclusion map with the
Diff
@@ -26,6 +26,7 @@ open Complex Set
 
 open scoped ComplexConjugate
 
+#print Complex.subfield_eq_of_closed /-
 /-- The only closed subfields of `ℂ` are `ℝ` and `ℂ`. -/
 theorem Complex.subfield_eq_of_closed {K : Subfield ℂ} (hc : IsClosed (K : Set ℂ)) :
     K = ofReal.fieldRange ∨ K = ⊤ :=
@@ -51,9 +52,11 @@ theorem Complex.subfield_eq_of_closed {K : Subfield ℂ} (hc : IsClosed (K : Set
   rw [DenseRange.closure_range rat.dense_embedding_coe_real.dense]
   simp only [image_univ]
 #align complex.subfield_eq_of_closed Complex.subfield_eq_of_closed
+-/
 
 /- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:304:22: continuitity! not supported at the moment -/
 /- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:304:22: continuitity! not supported at the moment -/
+#print Complex.uniformContinuous_ringHom_eq_id_or_conj /-
 /-- Let `K` a subfield of `ℂ` and let `ψ : K →+* ℂ` a ring homomorphism. Assume that `ψ` is uniform
 continuous, then `ψ` is either the inclusion map or the composition of the inclusion map with the
 complex conjugation. -/
@@ -108,6 +111,7 @@ theorem Complex.uniformContinuous_ringHom_eq_id_or_conj (K : Subfield ℂ) {ψ :
     use ⟨y, by convert hy; simpa only [id.def, Set.image_id']⟩
     simp only [Subtype.mk_eq_mk, Subtype.coe_mk]
 #align complex.uniform_continuous_ring_hom_eq_id_or_conj Complex.uniformContinuous_ringHom_eq_id_or_conj
+-/
 
 end ComplexSubfield
 
Diff
@@ -99,9 +99,10 @@ theorem Complex.uniformContinuous_ringHom_eq_id_or_conj (K : Subfield ℂ) {ψ :
       · right; ext1 z
         convert RingHom.congr_fun h z using 1
         exact (DenseInducing.extend_eq di hc.continuous z).symm
-  · let j : { x // x ∈ closure (id '' { x | (K : Set ℂ) x }) } → (K.topological_closure : Set ℂ) :=
+  · let j : { x // x ∈ closure (id '' {x | (K : Set ℂ) x}) } → (K.topological_closure : Set ℂ) :=
       fun x => ⟨x, by convert x.prop; simpa only [id.def, Set.image_id']⟩
-    convert DenseRange.comp (Function.Surjective.denseRange _)
+    convert
+      DenseRange.comp (Function.Surjective.denseRange _)
         (DenseEmbedding.subtype denseEmbedding_id (K : Set ℂ)).dense (by continuity : Continuous j)
     rintro ⟨y, hy⟩
     use ⟨y, by convert hy; simpa only [id.def, Set.image_id']⟩
Diff
@@ -32,11 +32,11 @@ theorem Complex.subfield_eq_of_closed {K : Subfield ℂ} (hc : IsClosed (K : Set
   by
   suffices range (coe : ℝ → ℂ) ⊆ K
     by
-    rw [range_subset_iff, ← coe_algebra_map] at this
+    rw [range_subset_iff, ← coe_algebra_map] at this 
     have :=
       (Subalgebra.isSimpleOrder_of_finrank finrank_real_complex).eq_bot_or_eq_top
         (Subfield.toIntermediateField K this).toSubalgebra
-    simp_rw [← SetLike.coe_set_eq] at this⊢
+    simp_rw [← SetLike.coe_set_eq] at this ⊢
     convert this using 2
     simpa only [RingHom.coe_fieldRange, Algebra.coe_bot, coe_algebra_map]
   suffices range (coe : ℝ → ℂ) ⊆ closure (Set.range ((coe : ℝ → ℂ) ∘ (coe : ℚ → ℝ)))
@@ -65,7 +65,7 @@ theorem Complex.uniformContinuous_ringHom_eq_id_or_conj (K : Subfield ℂ) {ψ :
     Subring.topologicalRing K.topological_closure.to_subring
   set ι : K → K.topological_closure := Subfield.inclusion K.le_topological_closure
   have ui : UniformInducing ι :=
-    ⟨by erw [uniformity_subtype, uniformity_subtype, Filter.comap_comap]; congr ⟩
+    ⟨by erw [uniformity_subtype, uniformity_subtype, Filter.comap_comap]; congr⟩
   let di := ui.dense_inducing _
   · -- extψ : closure(K) →+* ℂ is the extension of ψ : K →+* ℂ
     let extψ := DenseInducing.extendRingHom ui di.dense hc
@@ -80,7 +80,7 @@ theorem Complex.uniformContinuous_ringHom_eq_id_or_conj (K : Subfield ℂ) {ψ :
       rsuffices ⟨r, hr⟩ : ∃ r : ℝ, of_real.range_restrict r = j (ι x)
       · have :=
           RingHom.congr_fun (ring_hom_eq_of_real_of_continuous (by continuity : Continuous ψ₁)) r
-        rw [RingHom.comp_apply, RingHom.comp_apply, hr, RingEquiv.toRingHom_eq_coe] at this
+        rw [RingHom.comp_apply, RingHom.comp_apply, hr, RingEquiv.toRingHom_eq_coe] at this 
         convert this using 1
         · exact (DenseInducing.extend_eq di hc.continuous _).symm
         · rw [← of_real.coe_range_restrict, hr]; rfl
@@ -100,11 +100,11 @@ theorem Complex.uniformContinuous_ringHom_eq_id_or_conj (K : Subfield ℂ) {ψ :
         convert RingHom.congr_fun h z using 1
         exact (DenseInducing.extend_eq di hc.continuous z).symm
   · let j : { x // x ∈ closure (id '' { x | (K : Set ℂ) x }) } → (K.topological_closure : Set ℂ) :=
-      fun x => ⟨x, by convert x.prop; simpa only [id.def, Set.image_id'] ⟩
+      fun x => ⟨x, by convert x.prop; simpa only [id.def, Set.image_id']⟩
     convert DenseRange.comp (Function.Surjective.denseRange _)
         (DenseEmbedding.subtype denseEmbedding_id (K : Set ℂ)).dense (by continuity : Continuous j)
     rintro ⟨y, hy⟩
-    use ⟨y, by convert hy; simpa only [id.def, Set.image_id'] ⟩
+    use ⟨y, by convert hy; simpa only [id.def, Set.image_id']⟩
     simp only [Subtype.mk_eq_mk, Subtype.coe_mk]
 #align complex.uniform_continuous_ring_hom_eq_id_or_conj Complex.uniformContinuous_ringHom_eq_id_or_conj
 
Diff
@@ -24,7 +24,7 @@ section ComplexSubfield
 
 open Complex Set
 
-open ComplexConjugate
+open scoped ComplexConjugate
 
 /-- The only closed subfields of `ℂ` are `ℝ` and `ℂ`. -/
 theorem Complex.subfield_eq_of_closed {K : Subfield ℂ} (hc : IsClosed (K : Set ℂ)) :
Diff
@@ -26,12 +26,6 @@ open Complex Set
 
 open ComplexConjugate
 
-/- warning: complex.subfield_eq_of_closed -> Complex.subfield_eq_of_closed is a dubious translation:
-lean 3 declaration is
-  forall {K : Subfield.{0} Complex Complex.field}, (IsClosed.{0} Complex (UniformSpace.toTopologicalSpace.{0} Complex (PseudoMetricSpace.toUniformSpace.{0} Complex (SeminormedRing.toPseudoMetricSpace.{0} Complex (SeminormedCommRing.toSemiNormedRing.{0} Complex (NormedCommRing.toSeminormedCommRing.{0} Complex (NormedField.toNormedCommRing.{0} Complex Complex.normedField)))))) ((fun (a : Type) (b : Type) [self : HasLiftT.{1, 1} a b] => self.0) (Subfield.{0} Complex Complex.field) (Set.{0} Complex) (HasLiftT.mk.{1, 1} (Subfield.{0} Complex Complex.field) (Set.{0} Complex) (CoeTCₓ.coe.{1, 1} (Subfield.{0} Complex Complex.field) (Set.{0} Complex) (SetLike.Set.hasCoeT.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)))) K)) -> (Or (Eq.{1} (Subfield.{0} Complex Complex.field) K (RingHom.fieldRange.{0, 0} Real Complex Real.field Complex.field Complex.ofReal)) (Eq.{1} (Subfield.{0} Complex Complex.field) K (Top.top.{0} (Subfield.{0} Complex Complex.field) (Subfield.hasTop.{0} Complex Complex.field))))
-but is expected to have type
-  forall {K : Subfield.{0} Complex Complex.instFieldComplex}, (IsClosed.{0} Complex (UniformSpace.toTopologicalSpace.{0} Complex (PseudoMetricSpace.toUniformSpace.{0} Complex (SeminormedRing.toPseudoMetricSpace.{0} Complex (SeminormedCommRing.toSeminormedRing.{0} Complex (NormedCommRing.toSeminormedCommRing.{0} Complex (NormedField.toNormedCommRing.{0} Complex Complex.instNormedFieldComplex)))))) (SetLike.coe.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex) K)) -> (Or (Eq.{1} (Subfield.{0} Complex Complex.instFieldComplex) K (RingHom.fieldRange.{0, 0} Real Complex Real.field Complex.instFieldComplex Complex.ofReal)) (Eq.{1} (Subfield.{0} Complex Complex.instFieldComplex) K (Top.top.{0} (Subfield.{0} Complex Complex.instFieldComplex) (Subfield.instTopSubfield.{0} Complex Complex.instFieldComplex))))
-Case conversion may be inaccurate. Consider using '#align complex.subfield_eq_of_closed Complex.subfield_eq_of_closedₓ'. -/
 /-- The only closed subfields of `ℂ` are `ℝ` and `ℂ`. -/
 theorem Complex.subfield_eq_of_closed {K : Subfield ℂ} (hc : IsClosed (K : Set ℂ)) :
     K = ofReal.fieldRange ∨ K = ⊤ :=
@@ -58,9 +52,6 @@ theorem Complex.subfield_eq_of_closed {K : Subfield ℂ} (hc : IsClosed (K : Set
   simp only [image_univ]
 #align complex.subfield_eq_of_closed Complex.subfield_eq_of_closed
 
-/- warning: complex.uniform_continuous_ring_hom_eq_id_or_conj -> Complex.uniformContinuous_ringHom_eq_id_or_conj is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align complex.uniform_continuous_ring_hom_eq_id_or_conj Complex.uniformContinuous_ringHom_eq_id_or_conjₓ'. -/
 /- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:304:22: continuitity! not supported at the moment -/
 /- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:304:22: continuitity! not supported at the moment -/
 /-- Let `K` a subfield of `ℂ` and let `ψ : K →+* ℂ` a ring homomorphism. Assume that `ψ` is uniform
Diff
@@ -74,9 +74,7 @@ theorem Complex.uniformContinuous_ringHom_eq_id_or_conj (K : Subfield ℂ) {ψ :
     Subring.topologicalRing K.topological_closure.to_subring
   set ι : K → K.topological_closure := Subfield.inclusion K.le_topological_closure
   have ui : UniformInducing ι :=
-    ⟨by
-      erw [uniformity_subtype, uniformity_subtype, Filter.comap_comap]
-      congr ⟩
+    ⟨by erw [uniformity_subtype, uniformity_subtype, Filter.comap_comap]; congr ⟩
   let di := ui.dense_inducing _
   · -- extψ : closure(K) →+* ℂ is the extension of ψ : K →+* ℂ
     let extψ := DenseInducing.extendRingHom ui di.dense hc
@@ -94,8 +92,7 @@ theorem Complex.uniformContinuous_ringHom_eq_id_or_conj (K : Subfield ℂ) {ψ :
         rw [RingHom.comp_apply, RingHom.comp_apply, hr, RingEquiv.toRingHom_eq_coe] at this
         convert this using 1
         · exact (DenseInducing.extend_eq di hc.continuous _).symm
-        · rw [← of_real.coe_range_restrict, hr]
-          rfl
+        · rw [← of_real.coe_range_restrict, hr]; rfl
       obtain ⟨r, hr⟩ := SetLike.coe_mem (j (ι x))
       exact ⟨r, Subtype.ext hr⟩
     · -- ψ₁ is the continuous ring hom `ℂ →+* ℂ` constructed from `closure (K) ≃+* ℂ`
@@ -105,26 +102,18 @@ theorem Complex.uniformContinuous_ringHom_eq_id_or_conj (K : Subfield ℂ) {ψ :
           (RingHom.comp (RingEquiv.subfieldCongr h).symm.toRingHom
             (@Subfield.topEquiv ℂ _).symm.toRingHom)
       cases' ring_hom_eq_id_or_conj_of_continuous (by continuity : Continuous ψ₁) with h h
-      · left
-        ext1 z
+      · left; ext1 z
         convert RingHom.congr_fun h z using 1
         exact (DenseInducing.extend_eq di hc.continuous z).symm
-      · right
-        ext1 z
+      · right; ext1 z
         convert RingHom.congr_fun h z using 1
         exact (DenseInducing.extend_eq di hc.continuous z).symm
   · let j : { x // x ∈ closure (id '' { x | (K : Set ℂ) x }) } → (K.topological_closure : Set ℂ) :=
-      fun x =>
-      ⟨x, by
-        convert x.prop
-        simpa only [id.def, Set.image_id'] ⟩
+      fun x => ⟨x, by convert x.prop; simpa only [id.def, Set.image_id'] ⟩
     convert DenseRange.comp (Function.Surjective.denseRange _)
         (DenseEmbedding.subtype denseEmbedding_id (K : Set ℂ)).dense (by continuity : Continuous j)
     rintro ⟨y, hy⟩
-    use
-      ⟨y, by
-        convert hy
-        simpa only [id.def, Set.image_id'] ⟩
+    use ⟨y, by convert hy; simpa only [id.def, Set.image_id'] ⟩
     simp only [Subtype.mk_eq_mk, Subtype.coe_mk]
 #align complex.uniform_continuous_ring_hom_eq_id_or_conj Complex.uniformContinuous_ringHom_eq_id_or_conj
 
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Xavier Roblot
 
 ! This file was ported from Lean 3 source module topology.instances.complex
-! leanprover-community/mathlib commit f0c8bf9245297a541f468be517f1bde6195105e9
+! leanprover-community/mathlib commit 0b7c740e25651db0ba63648fbae9f9d6f941e31b
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -14,6 +14,9 @@ import Mathbin.Topology.Algebra.UniformRing
 
 /-!
 # Some results about the topology of ℂ
+
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
 -/
 
 
@@ -56,10 +59,7 @@ theorem Complex.subfield_eq_of_closed {K : Subfield ℂ} (hc : IsClosed (K : Set
 #align complex.subfield_eq_of_closed Complex.subfield_eq_of_closed
 
 /- warning: complex.uniform_continuous_ring_hom_eq_id_or_conj -> Complex.uniformContinuous_ringHom_eq_id_or_conj is a dubious translation:
-lean 3 declaration is
-  forall (K : Subfield.{0} Complex Complex.field) {ψ : RingHom.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex Complex.ring))}, (UniformContinuous.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (Subtype.uniformSpace.{0} Complex (fun (x : Complex) => Membership.Mem.{0, 0} Complex (Subfield.{0} Complex Complex.field) (SetLike.hasMem.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) x K) (PseudoMetricSpace.toUniformSpace.{0} Complex (SeminormedRing.toPseudoMetricSpace.{0} Complex (SeminormedCommRing.toSemiNormedRing.{0} Complex (NormedCommRing.toSeminormedCommRing.{0} Complex (NormedField.toNormedCommRing.{0} Complex Complex.normedField)))))) (PseudoMetricSpace.toUniformSpace.{0} Complex (SeminormedRing.toPseudoMetricSpace.{0} Complex (SeminormedCommRing.toSemiNormedRing.{0} Complex (NormedCommRing.toSeminormedCommRing.{0} Complex (NormedField.toNormedCommRing.{0} Complex Complex.normedField))))) (coeFn.{1, 1} (RingHom.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex Complex.ring))) (fun (_x : RingHom.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex Complex.ring))) => (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) -> Complex) (RingHom.hasCoeToFun.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex Complex.ring))) ψ)) -> (Or (Eq.{1} ((coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) -> Complex) (RingHom.toFun.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex Complex.ring)) ψ) (coeFn.{1, 1} (RingHom.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.field))))) (fun (_x : RingHom.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.field))))) => (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) -> Complex) (RingHom.hasCoeToFun.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.field))))) (Subfield.subtype.{0} Complex Complex.field K))) (Eq.{1} ((coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) -> Complex) (RingHom.toFun.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex Complex.ring)) ψ) (Function.comp.{1, 1, 1} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex Complex (coeFn.{1, 1} (RingHom.{0, 0} Complex Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.commSemiring)) (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.commSemiring))) (fun (_x : RingHom.{0, 0} Complex Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.commSemiring)) (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.commSemiring))) => Complex -> Complex) (RingHom.hasCoeToFun.{0, 0} Complex Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.commSemiring)) (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.commSemiring))) (starRingEnd.{0} Complex Complex.commSemiring Complex.starRing)) (coeFn.{1, 1} (RingHom.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.field))))) (fun (_x : RingHom.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.field))))) => (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) -> Complex) (RingHom.hasCoeToFun.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.field))))) (Subfield.subtype.{0} Complex Complex.field K)))))
-but is expected to have type
-  forall (K : Subfield.{0} Complex Complex.instFieldComplex) {ψ : RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex)}, (UniformContinuous.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (instUniformSpaceSubtype.{0} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K) (PseudoMetricSpace.toUniformSpace.{0} Complex (SeminormedRing.toPseudoMetricSpace.{0} Complex (SeminormedCommRing.toSeminormedRing.{0} Complex (NormedCommRing.toSeminormedCommRing.{0} Complex (NormedField.toNormedCommRing.{0} Complex Complex.instNormedFieldComplex)))))) (PseudoMetricSpace.toUniformSpace.{0} Complex (SeminormedRing.toPseudoMetricSpace.{0} Complex (SeminormedCommRing.toSeminormedRing.{0} Complex (NormedCommRing.toSeminormedCommRing.{0} Complex (NormedField.toNormedCommRing.{0} Complex Complex.instNormedFieldComplex))))) (FunLike.coe.{1, 1, 1} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex)) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (fun (_x : Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) => Complex) _x) (MulHomClass.toFunLike.{0, 0, 0} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex)) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (NonUnitalNonAssocSemiring.toMul.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))))) (NonUnitalNonAssocSemiring.toMul.{0} Complex (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex))) (NonUnitalRingHomClass.toMulHomClass.{0, 0, 0} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex)) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex)) (RingHomClass.toNonUnitalRingHomClass.{0, 0, 0} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex)) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex) (RingHom.instRingHomClassRingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex))))) ψ)) -> (Or (Eq.{1} ((Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) -> Complex) (OneHom.toFun.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (MulOneClass.toOne.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (MulZeroOneClass.toMulOneClass.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (NonAssocSemiring.toMulZeroOneClass.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K)))))) (MulOneClass.toOne.{0} Complex (MulZeroOneClass.toMulOneClass.{0} Complex (NonAssocSemiring.toMulZeroOneClass.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex)))) (MonoidHom.toOneHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (MulZeroOneClass.toMulOneClass.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (NonAssocSemiring.toMulZeroOneClass.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))))) (MulZeroOneClass.toMulOneClass.{0} Complex (NonAssocSemiring.toMulZeroOneClass.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex))) (RingHom.toMonoidHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex) ψ))) (FunLike.coe.{1, 1, 1} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (fun (_x : Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) => Complex) _x) (MulHomClass.toFunLike.{0, 0, 0} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (NonUnitalNonAssocSemiring.toMul.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))))) (NonUnitalNonAssocSemiring.toMul.{0} Complex (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex)))))) (NonUnitalRingHomClass.toMulHomClass.{0, 0, 0} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (RingHomClass.toNonUnitalRingHomClass.{0, 0, 0} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex)))) (RingHom.instRingHomClassRingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex)))))))) (Subfield.subtype.{0} Complex Complex.instFieldComplex K))) (Eq.{1} ((Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) -> Complex) (OneHom.toFun.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (MulOneClass.toOne.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (MulZeroOneClass.toMulOneClass.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (NonAssocSemiring.toMulZeroOneClass.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K)))))) (MulOneClass.toOne.{0} Complex (MulZeroOneClass.toMulOneClass.{0} Complex (NonAssocSemiring.toMulZeroOneClass.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex)))) (MonoidHom.toOneHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (MulZeroOneClass.toMulOneClass.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (NonAssocSemiring.toMulZeroOneClass.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))))) (MulZeroOneClass.toMulOneClass.{0} Complex (NonAssocSemiring.toMulZeroOneClass.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex))) (RingHom.toMonoidHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex) ψ))) (Function.comp.{1, 1, 1} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex Complex (FunLike.coe.{1, 1, 1} (RingHom.{0, 0} Complex Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)) (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex))) Complex (fun (_x : Complex) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : Complex) => Complex) _x) (MulHomClass.toFunLike.{0, 0, 0} (RingHom.{0, 0} Complex Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)) (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex))) Complex Complex (NonUnitalNonAssocSemiring.toMul.{0} Complex (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)))) (NonUnitalNonAssocSemiring.toMul.{0} Complex (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)))) (NonUnitalRingHomClass.toMulHomClass.{0, 0, 0} (RingHom.{0, 0} Complex Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)) (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex))) Complex Complex (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex))) (RingHomClass.toNonUnitalRingHomClass.{0, 0, 0} (RingHom.{0, 0} Complex Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)) (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex))) Complex Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)) (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)) (RingHom.instRingHomClassRingHom.{0, 0} Complex Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)) (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)))))) (starRingEnd.{0} Complex Complex.instCommSemiringComplex Complex.instStarRingComplexToNonUnitalSemiringToNonUnitalCommSemiringToNonUnitalCommRingCommRing)) (FunLike.coe.{1, 1, 1} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (fun (_x : Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) => Complex) _x) (MulHomClass.toFunLike.{0, 0, 0} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (NonUnitalNonAssocSemiring.toMul.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))))) (NonUnitalNonAssocSemiring.toMul.{0} Complex (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex)))))) (NonUnitalRingHomClass.toMulHomClass.{0, 0, 0} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (RingHomClass.toNonUnitalRingHomClass.{0, 0, 0} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex)))) (RingHom.instRingHomClassRingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex)))))))) (Subfield.subtype.{0} Complex Complex.instFieldComplex K)))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align complex.uniform_continuous_ring_hom_eq_id_or_conj Complex.uniformContinuous_ringHom_eq_id_or_conjₓ'. -/
 /- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:304:22: continuitity! not supported at the moment -/
 /- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:304:22: continuitity! not supported at the moment -/
Diff
@@ -23,6 +23,12 @@ open Complex Set
 
 open ComplexConjugate
 
+/- warning: complex.subfield_eq_of_closed -> Complex.subfield_eq_of_closed is a dubious translation:
+lean 3 declaration is
+  forall {K : Subfield.{0} Complex Complex.field}, (IsClosed.{0} Complex (UniformSpace.toTopologicalSpace.{0} Complex (PseudoMetricSpace.toUniformSpace.{0} Complex (SeminormedRing.toPseudoMetricSpace.{0} Complex (SeminormedCommRing.toSemiNormedRing.{0} Complex (NormedCommRing.toSeminormedCommRing.{0} Complex (NormedField.toNormedCommRing.{0} Complex Complex.normedField)))))) ((fun (a : Type) (b : Type) [self : HasLiftT.{1, 1} a b] => self.0) (Subfield.{0} Complex Complex.field) (Set.{0} Complex) (HasLiftT.mk.{1, 1} (Subfield.{0} Complex Complex.field) (Set.{0} Complex) (CoeTCₓ.coe.{1, 1} (Subfield.{0} Complex Complex.field) (Set.{0} Complex) (SetLike.Set.hasCoeT.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)))) K)) -> (Or (Eq.{1} (Subfield.{0} Complex Complex.field) K (RingHom.fieldRange.{0, 0} Real Complex Real.field Complex.field Complex.ofReal)) (Eq.{1} (Subfield.{0} Complex Complex.field) K (Top.top.{0} (Subfield.{0} Complex Complex.field) (Subfield.hasTop.{0} Complex Complex.field))))
+but is expected to have type
+  forall {K : Subfield.{0} Complex Complex.instFieldComplex}, (IsClosed.{0} Complex (UniformSpace.toTopologicalSpace.{0} Complex (PseudoMetricSpace.toUniformSpace.{0} Complex (SeminormedRing.toPseudoMetricSpace.{0} Complex (SeminormedCommRing.toSeminormedRing.{0} Complex (NormedCommRing.toSeminormedCommRing.{0} Complex (NormedField.toNormedCommRing.{0} Complex Complex.instNormedFieldComplex)))))) (SetLike.coe.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex) K)) -> (Or (Eq.{1} (Subfield.{0} Complex Complex.instFieldComplex) K (RingHom.fieldRange.{0, 0} Real Complex Real.field Complex.instFieldComplex Complex.ofReal)) (Eq.{1} (Subfield.{0} Complex Complex.instFieldComplex) K (Top.top.{0} (Subfield.{0} Complex Complex.instFieldComplex) (Subfield.instTopSubfield.{0} Complex Complex.instFieldComplex))))
+Case conversion may be inaccurate. Consider using '#align complex.subfield_eq_of_closed Complex.subfield_eq_of_closedₓ'. -/
 /-- The only closed subfields of `ℂ` are `ℝ` and `ℂ`. -/
 theorem Complex.subfield_eq_of_closed {K : Subfield ℂ} (hc : IsClosed (K : Set ℂ)) :
     K = ofReal.fieldRange ∨ K = ⊤ :=
@@ -49,6 +55,12 @@ theorem Complex.subfield_eq_of_closed {K : Subfield ℂ} (hc : IsClosed (K : Set
   simp only [image_univ]
 #align complex.subfield_eq_of_closed Complex.subfield_eq_of_closed
 
+/- warning: complex.uniform_continuous_ring_hom_eq_id_or_conj -> Complex.uniformContinuous_ringHom_eq_id_or_conj is a dubious translation:
+lean 3 declaration is
+  forall (K : Subfield.{0} Complex Complex.field) {ψ : RingHom.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex Complex.ring))}, (UniformContinuous.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (Subtype.uniformSpace.{0} Complex (fun (x : Complex) => Membership.Mem.{0, 0} Complex (Subfield.{0} Complex Complex.field) (SetLike.hasMem.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) x K) (PseudoMetricSpace.toUniformSpace.{0} Complex (SeminormedRing.toPseudoMetricSpace.{0} Complex (SeminormedCommRing.toSemiNormedRing.{0} Complex (NormedCommRing.toSeminormedCommRing.{0} Complex (NormedField.toNormedCommRing.{0} Complex Complex.normedField)))))) (PseudoMetricSpace.toUniformSpace.{0} Complex (SeminormedRing.toPseudoMetricSpace.{0} Complex (SeminormedCommRing.toSemiNormedRing.{0} Complex (NormedCommRing.toSeminormedCommRing.{0} Complex (NormedField.toNormedCommRing.{0} Complex Complex.normedField))))) (coeFn.{1, 1} (RingHom.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex Complex.ring))) (fun (_x : RingHom.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex Complex.ring))) => (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) -> Complex) (RingHom.hasCoeToFun.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex Complex.ring))) ψ)) -> (Or (Eq.{1} ((coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) -> Complex) (RingHom.toFun.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex Complex.ring)) ψ) (coeFn.{1, 1} (RingHom.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.field))))) (fun (_x : RingHom.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.field))))) => (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) -> Complex) (RingHom.hasCoeToFun.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.field))))) (Subfield.subtype.{0} Complex Complex.field K))) (Eq.{1} ((coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) -> Complex) (RingHom.toFun.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex Complex.ring)) ψ) (Function.comp.{1, 1, 1} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex Complex (coeFn.{1, 1} (RingHom.{0, 0} Complex Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.commSemiring)) (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.commSemiring))) (fun (_x : RingHom.{0, 0} Complex Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.commSemiring)) (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.commSemiring))) => Complex -> Complex) (RingHom.hasCoeToFun.{0, 0} Complex Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.commSemiring)) (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.commSemiring))) (starRingEnd.{0} Complex Complex.commSemiring Complex.starRing)) (coeFn.{1, 1} (RingHom.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.field))))) (fun (_x : RingHom.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.field))))) => (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) -> Complex) (RingHom.hasCoeToFun.{0, 0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) Complex (NonAssocRing.toNonAssocSemiring.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Ring.toNonAssocRing.{0} (coeSort.{1, 2} (Subfield.{0} Complex Complex.field) Type (SetLike.hasCoeToSort.{0, 0} (Subfield.{0} Complex Complex.field) Complex (Subfield.setLike.{0} Complex Complex.field)) K) (Subfield.ring.{0} Complex Complex.field K))) (NonAssocRing.toNonAssocSemiring.{0} Complex (Ring.toNonAssocRing.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.field))))) (Subfield.subtype.{0} Complex Complex.field K)))))
+but is expected to have type
+  forall (K : Subfield.{0} Complex Complex.instFieldComplex) {ψ : RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex)}, (UniformContinuous.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (instUniformSpaceSubtype.{0} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K) (PseudoMetricSpace.toUniformSpace.{0} Complex (SeminormedRing.toPseudoMetricSpace.{0} Complex (SeminormedCommRing.toSeminormedRing.{0} Complex (NormedCommRing.toSeminormedCommRing.{0} Complex (NormedField.toNormedCommRing.{0} Complex Complex.instNormedFieldComplex)))))) (PseudoMetricSpace.toUniformSpace.{0} Complex (SeminormedRing.toPseudoMetricSpace.{0} Complex (SeminormedCommRing.toSeminormedRing.{0} Complex (NormedCommRing.toSeminormedCommRing.{0} Complex (NormedField.toNormedCommRing.{0} Complex Complex.instNormedFieldComplex))))) (FunLike.coe.{1, 1, 1} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex)) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (fun (_x : Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) => Complex) _x) (MulHomClass.toFunLike.{0, 0, 0} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex)) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (NonUnitalNonAssocSemiring.toMul.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))))) (NonUnitalNonAssocSemiring.toMul.{0} Complex (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex))) (NonUnitalRingHomClass.toMulHomClass.{0, 0, 0} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex)) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex)) (RingHomClass.toNonUnitalRingHomClass.{0, 0, 0} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex)) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex) (RingHom.instRingHomClassRingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex))))) ψ)) -> (Or (Eq.{1} ((Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) -> Complex) (OneHom.toFun.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (MulOneClass.toOne.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (MulZeroOneClass.toMulOneClass.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (NonAssocSemiring.toMulZeroOneClass.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K)))))) (MulOneClass.toOne.{0} Complex (MulZeroOneClass.toMulOneClass.{0} Complex (NonAssocSemiring.toMulZeroOneClass.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex)))) (MonoidHom.toOneHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (MulZeroOneClass.toMulOneClass.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (NonAssocSemiring.toMulZeroOneClass.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))))) (MulZeroOneClass.toMulOneClass.{0} Complex (NonAssocSemiring.toMulZeroOneClass.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex))) (RingHom.toMonoidHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex) ψ))) (FunLike.coe.{1, 1, 1} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (fun (_x : Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) => Complex) _x) (MulHomClass.toFunLike.{0, 0, 0} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (NonUnitalNonAssocSemiring.toMul.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))))) (NonUnitalNonAssocSemiring.toMul.{0} Complex (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex)))))) (NonUnitalRingHomClass.toMulHomClass.{0, 0, 0} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (RingHomClass.toNonUnitalRingHomClass.{0, 0, 0} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex)))) (RingHom.instRingHomClassRingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex)))))))) (Subfield.subtype.{0} Complex Complex.instFieldComplex K))) (Eq.{1} ((Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) -> Complex) (OneHom.toFun.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (MulOneClass.toOne.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (MulZeroOneClass.toMulOneClass.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (NonAssocSemiring.toMulZeroOneClass.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K)))))) (MulOneClass.toOne.{0} Complex (MulZeroOneClass.toMulOneClass.{0} Complex (NonAssocSemiring.toMulZeroOneClass.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex)))) (MonoidHom.toOneHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (MulZeroOneClass.toMulOneClass.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (NonAssocSemiring.toMulZeroOneClass.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))))) (MulZeroOneClass.toMulOneClass.{0} Complex (NonAssocSemiring.toMulZeroOneClass.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex))) (RingHom.toMonoidHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex Complex.instSemiringComplex) ψ))) (Function.comp.{1, 1, 1} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex Complex (FunLike.coe.{1, 1, 1} (RingHom.{0, 0} Complex Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)) (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex))) Complex (fun (_x : Complex) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : Complex) => Complex) _x) (MulHomClass.toFunLike.{0, 0, 0} (RingHom.{0, 0} Complex Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)) (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex))) Complex Complex (NonUnitalNonAssocSemiring.toMul.{0} Complex (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)))) (NonUnitalNonAssocSemiring.toMul.{0} Complex (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)))) (NonUnitalRingHomClass.toMulHomClass.{0, 0, 0} (RingHom.{0, 0} Complex Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)) (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex))) Complex Complex (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex))) (RingHomClass.toNonUnitalRingHomClass.{0, 0, 0} (RingHom.{0, 0} Complex Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)) (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex))) Complex Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)) (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)) (RingHom.instRingHomClassRingHom.{0, 0} Complex Complex (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)) (Semiring.toNonAssocSemiring.{0} Complex (CommSemiring.toSemiring.{0} Complex Complex.instCommSemiringComplex)))))) (starRingEnd.{0} Complex Complex.instCommSemiringComplex Complex.instStarRingComplexToNonUnitalSemiringToNonUnitalCommSemiringToNonUnitalCommRingCommRing)) (FunLike.coe.{1, 1, 1} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (fun (_x : Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) => Complex) _x) (MulHomClass.toFunLike.{0, 0, 0} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (NonUnitalNonAssocSemiring.toMul.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))))) (NonUnitalNonAssocSemiring.toMul.{0} Complex (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex)))))) (NonUnitalRingHomClass.toMulHomClass.{0, 0, 0} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (RingHomClass.toNonUnitalRingHomClass.{0, 0, 0} (RingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex))))) (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex)))) (RingHom.instRingHomClassRingHom.{0, 0} (Subtype.{1} Complex (fun (x : Complex) => Membership.mem.{0, 0} Complex (Subfield.{0} Complex Complex.instFieldComplex) (SetLike.instMembership.{0, 0} (Subfield.{0} Complex Complex.instFieldComplex) Complex (Subfield.instSetLikeSubfield.{0} Complex Complex.instFieldComplex)) x K)) Complex (Subsemiring.toNonAssocSemiring.{0} Complex (Semiring.toNonAssocSemiring.{0} Complex (Ring.toSemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)))) (Subring.toSubsemiring.{0} Complex (DivisionRing.toRing.{0} Complex (Field.toDivisionRing.{0} Complex Complex.instFieldComplex)) (Subfield.toSubring.{0} Complex Complex.instFieldComplex K))) (Semiring.toNonAssocSemiring.{0} Complex (DivisionSemiring.toSemiring.{0} Complex (Semifield.toDivisionSemiring.{0} Complex (Field.toSemifield.{0} Complex Complex.instFieldComplex)))))))) (Subfield.subtype.{0} Complex Complex.instFieldComplex K)))))
+Case conversion may be inaccurate. Consider using '#align complex.uniform_continuous_ring_hom_eq_id_or_conj Complex.uniformContinuous_ringHom_eq_id_or_conjₓ'. -/
 /- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:304:22: continuitity! not supported at the moment -/
 /- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:304:22: continuitity! not supported at the moment -/
 /-- Let `K` a subfield of `ℂ` and let `ψ : K →+* ℂ` a ring homomorphism. Assume that `ψ` is uniform
Diff
@@ -49,8 +49,8 @@ theorem Complex.subfield_eq_of_closed {K : Subfield ℂ} (hc : IsClosed (K : Set
   simp only [image_univ]
 #align complex.subfield_eq_of_closed Complex.subfield_eq_of_closed
 
-/- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:301:22: continuitity! not supported at the moment -/
-/- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:301:22: continuitity! not supported at the moment -/
+/- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:304:22: continuitity! not supported at the moment -/
+/- ./././Mathport/Syntax/Translate/Tactic/Mathlib/Misc2.lean:304:22: continuitity! not supported at the moment -/
 /-- Let `K` a subfield of `ℂ` and let `ψ : K →+* ℂ` a ring homomorphism. Assume that `ψ` is uniform
 continuous, then `ψ` is either the inclusion map or the composition of the inclusion map with the
 complex conjugation. -/
Diff
@@ -4,13 +4,13 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Xavier Roblot
 
 ! This file was ported from Lean 3 source module topology.instances.complex
-! leanprover-community/mathlib commit 78ac1db34d90519b8e8f7bfe39cb264a6a117db2
+! leanprover-community/mathlib commit f0c8bf9245297a541f468be517f1bde6195105e9
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
-import Mathbin.Topology.Algebra.UniformField
 import Mathbin.Analysis.Complex.Basic
-import Mathbin.FieldTheory.Adjoin
+import Mathbin.FieldTheory.IntermediateField
+import Mathbin.Topology.Algebra.UniformRing
 
 /-!
 # Some results about the topology of ℂ
Diff
@@ -106,8 +106,7 @@ theorem Complex.uniformContinuous_ringHom_eq_id_or_conj (K : Subfield ℂ) {ψ :
       ⟨x, by
         convert x.prop
         simpa only [id.def, Set.image_id'] ⟩
-    convert
-      DenseRange.comp (Function.Surjective.denseRange _)
+    convert DenseRange.comp (Function.Surjective.denseRange _)
         (DenseEmbedding.subtype denseEmbedding_id (K : Set ℂ)).dense (by continuity : Continuous j)
     rintro ⟨y, hy⟩
     use

Changes in mathlib4

mathlib3
mathlib4
chore: Rename nat_cast/int_cast/rat_cast to natCast/intCast/ratCast (#11486)

Now that I am defining NNRat.cast, I want a definitive answer to this naming issue. Plenty of lemmas in mathlib already use natCast/intCast/ratCast over nat_cast/int_cast/rat_cast, and this matches with the general expectation that underscore-separated name parts correspond to a single declaration.

Diff
@@ -35,7 +35,7 @@ theorem Complex.subfield_eq_of_closed {K : Subfield ℂ} (hc : IsClosed (K : Set
     rw [← IsClosed.closure_eq hc]
     apply closure_mono
     rintro _ ⟨_, rfl⟩
-    simp only [Function.comp_apply, ofReal_rat_cast, SetLike.mem_coe, SubfieldClass.ratCast_mem]
+    simp only [Function.comp_apply, ofReal_ratCast, SetLike.mem_coe, SubfieldClass.ratCast_mem]
   nth_rw 1 [range_comp]
   refine' subset_trans _ (image_closure_subset_closure_image continuous_ofReal)
   rw [DenseRange.closure_range Rat.denseEmbedding_coe_real.dense]
chore: avoid id.def (adaptation for nightly-2024-03-27) (#11829)

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

Diff
@@ -103,7 +103,7 @@ theorem Complex.uniformContinuous_ringHom_eq_id_or_conj (K : Subfield ℂ) {ψ :
       fun x =>
       ⟨x, by
         convert x.prop
-        simp only [id.def, Set.image_id']
+        simp only [id, Set.image_id']
         rfl ⟩
     convert DenseRange.comp (Function.Surjective.denseRange _)
         (DenseEmbedding.subtype denseEmbedding_id (K : Set ℂ)).dense (by continuity : Continuous j)
@@ -111,7 +111,7 @@ theorem Complex.uniformContinuous_ringHom_eq_id_or_conj (K : Subfield ℂ) {ψ :
     use
       ⟨y, by
         convert hy
-        simp only [id.def, Set.image_id']
+        simp only [id, Set.image_id']
         rfl ⟩
 #align complex.uniform_continuous_ring_hom_eq_id_or_conj Complex.uniformContinuous_ringHom_eq_id_or_conj
 
chore: Rename coe_nat/coe_int/coe_rat to natCast/intCast/ratCast (#11499)

This is less exhaustive than its sibling #11486 because edge cases are harder to classify. No fundamental difficulty, just me being a bit fast and lazy.

Reduce the diff of #11203

Diff
@@ -35,7 +35,7 @@ theorem Complex.subfield_eq_of_closed {K : Subfield ℂ} (hc : IsClosed (K : Set
     rw [← IsClosed.closure_eq hc]
     apply closure_mono
     rintro _ ⟨_, rfl⟩
-    simp only [Function.comp_apply, ofReal_rat_cast, SetLike.mem_coe, SubfieldClass.coe_rat_mem]
+    simp only [Function.comp_apply, ofReal_rat_cast, SetLike.mem_coe, SubfieldClass.ratCast_mem]
   nth_rw 1 [range_comp]
   refine' subset_trans _ (image_closure_subset_closure_image continuous_ofReal)
   rw [DenseRange.closure_range Rat.denseEmbedding_coe_real.dense]
style: homogenise porting notes (#11145)

Homogenises porting notes via capitalisation and addition of whitespace.

It makes the following changes:

  • converts "--porting note" into "-- Porting note";
  • converts "porting note" into "Porting note".
Diff
@@ -66,7 +66,7 @@ theorem Complex.uniformContinuous_ringHom_eq_id_or_conj (K : Subfield ℂ) {ψ :
       -- ψ₁ is the continuous ring hom `ℝ →+* ℂ` constructed from `j : closure (K) ≃+* ℝ`
       -- and `extψ : closure (K) →+* ℂ`
       let ψ₁ := RingHom.comp extψ (RingHom.comp j.symm.toRingHom ofReal.rangeRestrict)
-      -- porting note: was `by continuity!` and was used inline
+      -- Porting note: was `by continuity!` and was used inline
       have hψ₁ : Continuous ψ₁ := by
         simpa only [RingHom.coe_comp] using hψ.comp ((continuous_algebraMap ℝ ℂ).subtype_mk _)
       ext1 x
@@ -87,7 +87,7 @@ theorem Complex.uniformContinuous_ringHom_eq_id_or_conj (K : Subfield ℂ) {ψ :
         RingHom.comp extψ
           (RingHom.comp (RingEquiv.subfieldCongr h).symm.toRingHom
             (@Subfield.topEquiv ℂ _).symm.toRingHom)
-      -- porting note: was `by continuity!` and was used inline
+      -- Porting note: was `by continuity!` and was used inline
       have hψ₁ : Continuous ψ₁ := by
         simpa only [RingHom.coe_comp] using hψ.comp (continuous_id.subtype_mk _)
       cases' ringHom_eq_id_or_conj_of_continuous hψ₁ with h h
refactor(Algebra/Algebra/Subalgebra/Basic): use a better defeq for ⊥ : Subalgebra R A (#8038)

And the same thing for StarSubalgebra R A. IntermediateField was already handled in #7957.

As a result, nine (obvious) lemmas are now true by definition.

This slightly adjusts the statement of Algebra.toSubmodule_bot to make it simpler and true by definition; the original statement can be recovered by rewriting by Submodule.one_eq_span, which I've had to add in some downstream proofs.

Diff
@@ -28,10 +28,8 @@ theorem Complex.subfield_eq_of_closed {K : Subfield ℂ} (hc : IsClosed (K : Set
     have :=
       (Subalgebra.isSimpleOrder_of_finrank finrank_real_complex).eq_bot_or_eq_top
         (Subfield.toIntermediateField K this).toSubalgebra
-    simp_rw [← SetLike.coe_set_eq] at this ⊢
-    convert this using 2
-    simp only [RingHom.coe_fieldRange, Algebra.coe_bot, coe_algebraMap]
-    rfl
+    simp_rw [← SetLike.coe_set_eq, IntermediateField.coe_toSubalgebra] at this ⊢
+    exact this
   suffices range (ofReal' : ℝ → ℂ) ⊆ closure (Set.range ((ofReal' : ℝ → ℂ) ∘ ((↑) : ℚ → ℝ))) by
     refine' subset_trans this _
     rw [← IsClosed.closure_eq hc]
Revert "chore: revert #7703 (#7710)"

This reverts commit f3695eb2.

Diff
@@ -75,7 +75,8 @@ theorem Complex.uniformContinuous_ringHom_eq_id_or_conj (K : Subfield ℂ) {ψ :
       rsuffices ⟨r, hr⟩ : ∃ r : ℝ, ofReal.rangeRestrict r = j (ι x)
       · have :=
           RingHom.congr_fun (ringHom_eq_ofReal_of_continuous hψ₁) r
-        rw [RingHom.comp_apply, RingHom.comp_apply, hr, RingEquiv.toRingHom_eq_coe] at this
+        -- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
+        erw [RingHom.comp_apply, RingHom.comp_apply, hr, RingEquiv.toRingHom_eq_coe] at this
         convert this using 1
         · exact (DenseInducing.extend_eq di hc.continuous _).symm
         · rw [← ofReal.coe_rangeRestrict, hr]
chore: revert #7703 (#7710)

This reverts commit 26eb2b0a.

Diff
@@ -75,8 +75,7 @@ theorem Complex.uniformContinuous_ringHom_eq_id_or_conj (K : Subfield ℂ) {ψ :
       rsuffices ⟨r, hr⟩ : ∃ r : ℝ, ofReal.rangeRestrict r = j (ι x)
       · have :=
           RingHom.congr_fun (ringHom_eq_ofReal_of_continuous hψ₁) r
-        -- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
-        erw [RingHom.comp_apply, RingHom.comp_apply, hr, RingEquiv.toRingHom_eq_coe] at this
+        rw [RingHom.comp_apply, RingHom.comp_apply, hr, RingEquiv.toRingHom_eq_coe] at this
         convert this using 1
         · exact (DenseInducing.extend_eq di hc.continuous _).symm
         · rw [← ofReal.coe_rangeRestrict, hr]
chore: bump toolchain to v4.2.0-rc2 (#7703)

This includes all the changes from #7606.

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

Diff
@@ -75,7 +75,8 @@ theorem Complex.uniformContinuous_ringHom_eq_id_or_conj (K : Subfield ℂ) {ψ :
       rsuffices ⟨r, hr⟩ : ∃ r : ℝ, ofReal.rangeRestrict r = j (ι x)
       · have :=
           RingHom.congr_fun (ringHom_eq_ofReal_of_continuous hψ₁) r
-        rw [RingHom.comp_apply, RingHom.comp_apply, hr, RingEquiv.toRingHom_eq_coe] at this
+        -- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
+        erw [RingHom.comp_apply, RingHom.comp_apply, hr, RingEquiv.toRingHom_eq_coe] at this
         convert this using 1
         · exact (DenseInducing.extend_eq di hc.continuous _).symm
         · rw [← ofReal.coe_rangeRestrict, hr]
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) 2022 Xavier Roblot. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Xavier Roblot
-
-! This file was ported from Lean 3 source module topology.instances.complex
-! leanprover-community/mathlib commit f0c8bf9245297a541f468be517f1bde6195105e9
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathlib.Analysis.Complex.Basic
 import Mathlib.FieldTheory.IntermediateField
 import Mathlib.Topology.Algebra.UniformRing
 
+#align_import topology.instances.complex from "leanprover-community/mathlib"@"f0c8bf9245297a541f468be517f1bde6195105e9"
+
 /-!
 # Some results about the topology of ℂ
 -/
chore: clean up spacing around at and goals (#5387)

Changes are of the form

  • some_tactic at h⊢ -> some_tactic at h ⊢
  • some_tactic at h -> some_tactic at h
Diff
@@ -31,7 +31,7 @@ theorem Complex.subfield_eq_of_closed {K : Subfield ℂ} (hc : IsClosed (K : Set
     have :=
       (Subalgebra.isSimpleOrder_of_finrank finrank_real_complex).eq_bot_or_eq_top
         (Subfield.toIntermediateField K this).toSubalgebra
-    simp_rw [← SetLike.coe_set_eq] at this⊢
+    simp_rw [← SetLike.coe_set_eq] at this ⊢
     convert this using 2
     simp only [RingHom.coe_fieldRange, Algebra.coe_bot, coe_algebraMap]
     rfl
feat: port Topology.Instances.Complex (#4314)

Dependencies 12 + 796

797 files ported (98.5%)
348485 lines ported (98.4%)
Show graph

The unported dependencies are

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