𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
⊢ ∃ f,
    f ∈ (fun f => ↑f) '' ↑(comap (AlgHom.compLeftContinuous ℝ ofRealAm (_ : Continuous ofReal)) (restrictScalars ℝ A)) ∧
      f x₁ ≠ f x₂
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
⊢ SeparatesPoints (comap (AlgHom.compLeftContinuous ℝ ofRealAm (_ : Continuous ofReal)) (restrictScalars ℝ A))
intro x₁ x₂ hx
case intro.intro.intro.intro
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
⊢ ∃ f,
    f ∈ (fun f => ↑f) '' ↑(comap (AlgHom.compLeftContinuous ℝ ofRealAm (_ : Continuous ofReal)) (restrictScalars ℝ A)) ∧
      f x₁ ≠ f x₂
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
⊢ ∃ f,
    f ∈ (fun f => ↑f) '' ↑(comap (AlgHom.compLeftContinuous ℝ ofRealAm (_ : Continuous ofReal)) (restrictScalars ℝ A)) ∧
      f x₁ ≠ f x₂
obtain ⟨_, ⟨f, hfA, rfl⟩, hf⟩ := hA hx
case intro.intro.intro.intro
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
F : C(X, 𝕜) := f - const X (↑f x₂)
⊢ ∃ f,
    f ∈ (fun f => ↑f) '' ↑(comap (AlgHom.compLeftContinuous ℝ ofRealAm (_ : Continuous ofReal)) (restrictScalars ℝ A)) ∧
      f x₁ ≠ f x₂
case intro.intro.intro.intro
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
⊢ ∃ f,
    f ∈ (fun f => ↑f) '' ↑(comap (AlgHom.compLeftContinuous ℝ ofRealAm (_ : Continuous ofReal)) (restrictScalars ℝ A)) ∧
      f x₁ ≠ f x₂
let F : C(X, 𝕜) := f - const _ (f x₂)
case intro.intro.intro.intro.refine'_1
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
F : C(X, 𝕜) := f - const X (↑f x₂)
hFA : F ∈ A
⊢ comp (ContinuousMap.mk ↑normSq) F ∈
    ↑(comap (AlgHom.compLeftContinuous ℝ ofRealAm (_ : Continuous ofReal)) (restrictScalars ℝ A))

case intro.intro.intro.intro.refine'_2
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
F : C(X, 𝕜) := f - const X (↑f x₂)
hFA : F ∈ A
⊢ (fun f => ↑f) (comp (ContinuousMap.mk ↑normSq) F) x₁ ≠ (fun f => ↑f) (comp (ContinuousMap.mk ↑normSq) F) x₂
case intro.intro.intro.intro
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
F : C(X, 𝕜) := f - const X (↑f x₂)
hFA : F ∈ A
⊢ ∃ f,
    f ∈ (fun f => ↑f) '' ↑(comap (AlgHom.compLeftContinuous ℝ ofRealAm (_ : Continuous ofReal)) (restrictScalars ℝ A)) ∧
      f x₁ ≠ f x₂
refine' ⟨_, ⟨(⟨IsROrC.normSq, continuous_normSq⟩ : C(𝕜, ℝ)).comp F, _, rfl⟩, _⟩
case h
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
F : C(X, 𝕜) := f - const X (↑f x₂)
a✝ : X
⊢ ↑(↑f x₂ • 1) a✝ = ↑(const X (↑f x₂)) a✝
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
F : C(X, 𝕜) := f - const X (↑f x₂)
⊢ ↑f x₂ • 1 = const X (↑f x₂)
ext1
no goals
case h
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
F : C(X, 𝕜) := f - const X (↑f x₂)
a✝ : X
⊢ ↑(↑f x₂ • 1) a✝ = ↑(const X (↑f x₂)) a✝
simp only [coe_smul, coe_one, smul_apply, one_apply, Algebra.id.smul_eq_mul, mul_one,
  const_apply]
case intro.intro.intro.intro.refine'_1
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
F : C(X, 𝕜) := f - const X (↑f x₂)
hFA : F ∈ A
⊢ ↑(AlgHom.compLeftContinuous ℝ ofRealAm (_ : Continuous ofReal)) (comp (ContinuousMap.mk ↑normSq) F) ∈
    restrictScalars ℝ A
case intro.intro.intro.intro.refine'_1
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
F : C(X, 𝕜) := f - const X (↑f x₂)
hFA : F ∈ A
⊢ comp (ContinuousMap.mk ↑normSq) F ∈
    ↑(comap (AlgHom.compLeftContinuous ℝ ofRealAm (_ : Continuous ofReal)) (restrictScalars ℝ A))
rw [SetLike.mem_coe, Subalgebra.mem_comap]
case h.e'_4
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
F : C(X, 𝕜) := f - const X (↑f x₂)
hFA : F ∈ A
⊢ ↑(AlgHom.compLeftContinuous ℝ ofRealAm (_ : Continuous ofReal)) (comp (ContinuousMap.mk ↑normSq) F) =
    ↑(AlgHom.compLeftContinuous ℝ ↑conjAe (_ : Continuous ↑conjCle)) F * F
case intro.intro.intro.intro.refine'_1
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
F : C(X, 𝕜) := f - const X (↑f x₂)
hFA : F ∈ A
⊢ ↑(AlgHom.compLeftContinuous ℝ ofRealAm (_ : Continuous ofReal)) (comp (ContinuousMap.mk ↑normSq) F) ∈
    restrictScalars ℝ A
convert (A.restrictScalars ℝ).mul_mem (mem_conjInvariantSubalgebra hA' hFA) hFA
case h.e'_4.h
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
F : C(X, 𝕜) := f - const X (↑f x₂)
hFA : F ∈ A
a✝ : X
⊢ ↑(↑(AlgHom.compLeftContinuous ℝ ofRealAm (_ : Continuous ofReal)) (comp (ContinuousMap.mk ↑normSq) F)) a✝ =
    ↑(↑(AlgHom.compLeftContinuous ℝ ↑conjAe (_ : Continuous ↑conjCle)) F * F) a✝
case h.e'_4
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
F : C(X, 𝕜) := f - const X (↑f x₂)
hFA : F ∈ A
⊢ ↑(AlgHom.compLeftContinuous ℝ ofRealAm (_ : Continuous ofReal)) (comp (ContinuousMap.mk ↑normSq) F) =
    ↑(AlgHom.compLeftContinuous ℝ ↑conjAe (_ : Continuous ↑conjCle)) F * F
ext1
case h.e'_4.h
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
F : C(X, 𝕜) := f - const X (↑f x₂)
hFA : F ∈ A
a✝ : X
⊢ ↑(↑(AlgHom.compLeftContinuous ℝ ofRealAm (_ : Continuous ofReal)) (comp (ContinuousMap.mk ↑normSq) F)) a✝ =
    ↑(F * ↑(AlgHom.compLeftContinuous ℝ ↑conjAe (_ : Continuous ↑conjCle)) F) a✝
case h.e'_4.h
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
F : C(X, 𝕜) := f - const X (↑f x₂)
hFA : F ∈ A
a✝ : X
⊢ ↑(↑(AlgHom.compLeftContinuous ℝ ofRealAm (_ : Continuous ofReal)) (comp (ContinuousMap.mk ↑normSq) F)) a✝ =
    ↑(↑(AlgHom.compLeftContinuous ℝ ↑conjAe (_ : Continuous ↑conjCle)) F * F) a✝
rw [mul_comm]
no goals
case h.e'_4.h
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
F : C(X, 𝕜) := f - const X (↑f x₂)
hFA : F ∈ A
a✝ : X
⊢ ↑(↑(AlgHom.compLeftContinuous ℝ ofRealAm (_ : Continuous ofReal)) (comp (ContinuousMap.mk ↑normSq) F)) a✝ =
    ↑(F * ↑(AlgHom.compLeftContinuous ℝ ↑conjAe (_ : Continuous ↑conjCle)) F) a✝
exact (IsROrC.mul_conj _).symm
case intro.intro.intro.intro.refine'_2
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
F : C(X, 𝕜) := f - const X (↑f x₂)
hFA : F ∈ A
this : ↑f x₁ - ↑f x₂ ≠ 0
⊢ (fun f => ↑f) (comp (ContinuousMap.mk ↑normSq) F) x₁ ≠ (fun f => ↑f) (comp (ContinuousMap.mk ↑normSq) F) x₂
case intro.intro.intro.intro.refine'_2
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
F : C(X, 𝕜) := f - const X (↑f x₂)
hFA : F ∈ A
⊢ (fun f => ↑f) (comp (ContinuousMap.mk ↑normSq) F) x₁ ≠ (fun f => ↑f) (comp (ContinuousMap.mk ↑normSq) F) x₂
have : f x₁ - f x₂ ≠ 0 := sub_ne_zero.mpr hf
no goals
case intro.intro.intro.intro.refine'_2
𝕜 : Type u_1
X : Type u_2
inst✝¹ : IsROrC 𝕜
inst✝ : TopologicalSpace X
A : Subalgebra 𝕜 C(X, 𝕜)
hA : SeparatesPoints A
hA' : ConjInvariantSubalgebra (restrictScalars ℝ A)
x₁ x₂ : X
hx : x₁ ≠ x₂
f : C(X, 𝕜)
hfA : f ∈ ↑A
hf : (fun f => ↑f) f x₁ ≠ (fun f => ↑f) f x₂
F : C(X, 𝕜) := f - const X (↑f x₂)
hFA : F ∈ A
this : ↑f x₁ - ↑f x₂ ≠ 0
⊢ (fun f => ↑f) (comp (ContinuousMap.mk ↑normSq) F) x₁ ≠ (fun f => ↑f) (comp (ContinuousMap.mk ↑normSq) F) x₂
simpa only [comp_apply, coe_sub, coe_const, sub_apply, coe_mk, sub_self, map_zero, Ne.def,
  normSq_eq_zero, const_apply] using this