topology.instances.complex
⟷
Mathlib.Topology.Instances.Complex
The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(last sync)
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -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]
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/63721b2c3eba6c325ecf8ae8cca27155a4f6306f
@@ -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
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -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 ℂ
mathlib commit https://github.com/leanprover-community/mathlib/commit/2a0ce625dbb0ffbc7d1316597de0b25c1ec75303
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/9fb8964792b4237dac6200193a0d533f1b3f7423
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/5f25c089cb34db4db112556f23c50d12da81b297
@@ -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']⟩
mathlib commit https://github.com/leanprover-community/mathlib/commit/cca40788df1b8755d5baf17ab2f27dacc2e17acb
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -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 ℂ)) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -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 -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/ef95945cd48c932c9e034872bd25c3c220d9c946
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/75e7fca56381d056096ce5d05e938f63a6567828
@@ -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. -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/738054fa93d43512da144ec45ce799d18fd44248
@@ -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 ℂ
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce7e9d53d4bbc38065db3b595cd5bd73c323bc1d
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/bd9851ca476957ea4549eb19b40e7b5ade9428cc
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.
@@ -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]
@@ -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
@@ -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]
Homogenises porting notes via capitalisation and addition of whitespace.
It makes the following changes:
@@ -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
⊥ : 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.
@@ -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]
@@ -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]
@@ -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]
@@ -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]
@@ -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 ℂ
-/
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
@@ -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
The unported dependencies are
algebra.order.module
init.core
linear_algebra.free_module.finite.rank
algebra.order.monoid.cancel.defs
algebra.abs
algebra.group_power.lemmas
init.data.list.basic
linear_algebra.free_module.rank
algebra.order.monoid.cancel.basic
init.data.list.default
topology.subset_properties
init.logic
The following 1 dependencies have changed in mathlib3 since they were ported, which may complicate porting this file