Imports
/-
Copyright (c) 2025 Joseph Tooby-Smith. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Joseph Tooby-Smith
-/
module
public import Physlib.Particles.BeyondTheStandardModel.TwoHDM.BasicThe gram matrix for the two Higgs doublet model
The main reference for material in this section is https://arxiv.org/pdf/hep-ph/0605184.
We will show that the gram matrix of the two Higgs doublet model describes the gauge orbits of the configuration space.
@[expose] public sectionA. The Gram matrix
H:TwoHiggsDoublet⊢ IsSelfAdjoint !![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ]
ext i j H:TwoHiggsDoubleti:Fin 2j:Fin 2⊢ star !![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] i j =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] i j
fin_cases i «0» H:TwoHiggsDoubletj:Fin 2⊢ star !![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨0, ⋯⟩) j =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨0, ⋯⟩) j«1» H:TwoHiggsDoubletj:Fin 2⊢ star !![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩) j =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩) j <;> «0» H:TwoHiggsDoubletj:Fin 2⊢ star !![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨0, ⋯⟩) j =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨0, ⋯⟩) j«1» H:TwoHiggsDoubletj:Fin 2⊢ star !![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩) j =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩) j fin_cases j «1».«0» H:TwoHiggsDoublet⊢ star !![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩) =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩)«1».«1» H:TwoHiggsDoublet⊢ star !![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) <;> «0».«0» H:TwoHiggsDoublet⊢ star !![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩) =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩)«0».«1» H:TwoHiggsDoublet⊢ star !![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩)«1».«0» H:TwoHiggsDoublet⊢ star !![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩) =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩)«1».«1» H:TwoHiggsDoublet⊢ star !![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) simp [inner_conj_symm] All goals completed! 🐙
lemma eq_fst_norm_of_eq_gramMatrix {H1 H2 : TwoHiggsDoublet}
(h : H1.gramMatrix = H2.gramMatrix) : ‖H1.Φ1‖ = ‖H2.Φ1‖ := by H1:TwoHiggsDoubletH2:TwoHiggsDoubleth:H1.gramMatrix = H2.gramMatrix⊢ ‖H1.Φ1‖ = ‖H2.Φ1‖
have hinner : ⟪H1.Φ1, H1.Φ1⟫_ℂ = ⟪H2.Φ1, H2.Φ1⟫_ℂ := congrArg (· 0 0) h H1:TwoHiggsDoubletH2:TwoHiggsDoubleth:H1.gramMatrix = H2.gramMatrixhinner:⟪H1.Φ1, H1.Φ1⟫_ℂ = ⟪H2.Φ1, H2.Φ1⟫_ℂ⊢ ‖H1.Φ1‖ = ‖H2.Φ1‖
rw [norm_eq_sqrt_re_inner (𝕜 := ℂ) H1.Φ1, H1:TwoHiggsDoubletH2:TwoHiggsDoubleth:H1.gramMatrix = H2.gramMatrixhinner:⟪H1.Φ1, H1.Φ1⟫_ℂ = ⟪H2.Φ1, H2.Φ1⟫_ℂ⊢ √(RCLike.re ⟪H1.Φ1, H1.Φ1⟫_ℂ) = ‖H2.Φ1‖ All goals completed! 🐙 norm_eq_sqrt_re_inner (𝕜 := ℂ) H2.Φ1, H1:TwoHiggsDoubletH2:TwoHiggsDoubleth:H1.gramMatrix = H2.gramMatrixhinner:⟪H1.Φ1, H1.Φ1⟫_ℂ = ⟪H2.Φ1, H2.Φ1⟫_ℂ⊢ √(RCLike.re ⟪H1.Φ1, H1.Φ1⟫_ℂ) = √(RCLike.re ⟪H2.Φ1, H2.Φ1⟫_ℂ) All goals completed! 🐙 hinner H1:TwoHiggsDoubletH2:TwoHiggsDoubleth:H1.gramMatrix = H2.gramMatrixhinner:⟪H1.Φ1, H1.Φ1⟫_ℂ = ⟪H2.Φ1, H2.Φ1⟫_ℂ⊢ √(RCLike.re ⟪H2.Φ1, H2.Φ1⟫_ℂ) = √(RCLike.re ⟪H2.Φ1, H2.Φ1⟫_ℂ) All goals completed! 🐙] All goals completed! 🐙
lemma eq_snd_norm_of_eq_gramMatrix {H1 H2 : TwoHiggsDoublet}
(h : H1.gramMatrix = H2.gramMatrix) : ‖H1.Φ2‖ = ‖H2.Φ2‖ := by H1:TwoHiggsDoubletH2:TwoHiggsDoubleth:H1.gramMatrix = H2.gramMatrix⊢ ‖H1.Φ2‖ = ‖H2.Φ2‖
have hinner : ⟪H1.Φ2, H1.Φ2⟫_ℂ = ⟪H2.Φ2, H2.Φ2⟫_ℂ := congrArg (· 1 1) h H1:TwoHiggsDoubletH2:TwoHiggsDoubleth:H1.gramMatrix = H2.gramMatrixhinner:⟪H1.Φ2, H1.Φ2⟫_ℂ = ⟪H2.Φ2, H2.Φ2⟫_ℂ⊢ ‖H1.Φ2‖ = ‖H2.Φ2‖
rw [norm_eq_sqrt_re_inner (𝕜 := ℂ) H1.Φ2, H1:TwoHiggsDoubletH2:TwoHiggsDoubleth:H1.gramMatrix = H2.gramMatrixhinner:⟪H1.Φ2, H1.Φ2⟫_ℂ = ⟪H2.Φ2, H2.Φ2⟫_ℂ⊢ √(RCLike.re ⟪H1.Φ2, H1.Φ2⟫_ℂ) = ‖H2.Φ2‖ All goals completed! 🐙 norm_eq_sqrt_re_inner (𝕜 := ℂ) H2.Φ2, H1:TwoHiggsDoubletH2:TwoHiggsDoubleth:H1.gramMatrix = H2.gramMatrixhinner:⟪H1.Φ2, H1.Φ2⟫_ℂ = ⟪H2.Φ2, H2.Φ2⟫_ℂ⊢ √(RCLike.re ⟪H1.Φ2, H1.Φ2⟫_ℂ) = √(RCLike.re ⟪H2.Φ2, H2.Φ2⟫_ℂ) All goals completed! 🐙 hinner H1:TwoHiggsDoubletH2:TwoHiggsDoubleth:H1.gramMatrix = H2.gramMatrixhinner:⟪H1.Φ2, H1.Φ2⟫_ℂ = ⟪H2.Φ2, H2.Φ2⟫_ℂ⊢ √(RCLike.re ⟪H2.Φ2, H2.Φ2⟫_ℂ) = √(RCLike.re ⟪H2.Φ2, H2.Φ2⟫_ℂ) All goals completed! 🐙] All goals completed! 🐙
@[simp]
lemma gaugeGroupI_smul_gramMatrix (g : StandardModel.GaugeGroupI) (H : TwoHiggsDoublet) :
(g • H).gramMatrix = H.gramMatrix := by g:GaugeGroupIH:TwoHiggsDoublet⊢ (g • H).gramMatrix = H.gramMatrix
rw [gramMatrix, g:GaugeGroupIH:TwoHiggsDoublet⊢ !![⟪(g • H).Φ1, (g • H).Φ1⟫_ℂ, ⟪(g • H).Φ2, (g • H).Φ1⟫_ℂ; ⟪(g • H).Φ1, (g • H).Φ2⟫_ℂ, ⟪(g • H).Φ2, (g • H).Φ2⟫_ℂ] =
H.gramMatrix g:GaugeGroupIH:TwoHiggsDoublet⊢ !![⟪g • H.Φ1, g • H.Φ1⟫_ℂ, ⟪g • H.Φ2, g • H.Φ1⟫_ℂ; ⟪g • H.Φ1, g • H.Φ2⟫_ℂ, ⟪g • H.Φ2, g • H.Φ2⟫_ℂ] =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] gramMatrix, g:GaugeGroupIH:TwoHiggsDoublet⊢ !![⟪(g • H).Φ1, (g • H).Φ1⟫_ℂ, ⟪(g • H).Φ2, (g • H).Φ1⟫_ℂ; ⟪(g • H).Φ1, (g • H).Φ2⟫_ℂ, ⟪(g • H).Φ2, (g • H).Φ2⟫_ℂ] =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] g:GaugeGroupIH:TwoHiggsDoublet⊢ !![⟪g • H.Φ1, g • H.Φ1⟫_ℂ, ⟪g • H.Φ2, g • H.Φ1⟫_ℂ; ⟪g • H.Φ1, g • H.Φ2⟫_ℂ, ⟪g • H.Φ2, g • H.Φ2⟫_ℂ] =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] gaugeGroupI_smul_fst, g:GaugeGroupIH:TwoHiggsDoublet⊢ !![⟪g • H.Φ1, g • H.Φ1⟫_ℂ, ⟪(g • H).Φ2, g • H.Φ1⟫_ℂ; ⟪g • H.Φ1, (g • H).Φ2⟫_ℂ, ⟪(g • H).Φ2, (g • H).Φ2⟫_ℂ] =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] g:GaugeGroupIH:TwoHiggsDoublet⊢ !![⟪g • H.Φ1, g • H.Φ1⟫_ℂ, ⟪g • H.Φ2, g • H.Φ1⟫_ℂ; ⟪g • H.Φ1, g • H.Φ2⟫_ℂ, ⟪g • H.Φ2, g • H.Φ2⟫_ℂ] =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] gaugeGroupI_smul_snd g:GaugeGroupIH:TwoHiggsDoublet⊢ !![⟪g • H.Φ1, g • H.Φ1⟫_ℂ, ⟪g • H.Φ2, g • H.Φ1⟫_ℂ; ⟪g • H.Φ1, g • H.Φ2⟫_ℂ, ⟪g • H.Φ2, g • H.Φ2⟫_ℂ] =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] g:GaugeGroupIH:TwoHiggsDoublet⊢ !![⟪g • H.Φ1, g • H.Φ1⟫_ℂ, ⟪g • H.Φ2, g • H.Φ1⟫_ℂ; ⟪g • H.Φ1, g • H.Φ2⟫_ℂ, ⟪g • H.Φ2, g • H.Φ2⟫_ℂ] =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ]] g:GaugeGroupIH:TwoHiggsDoublet⊢ !![⟪g • H.Φ1, g • H.Φ1⟫_ℂ, ⟪g • H.Φ2, g • H.Φ1⟫_ℂ; ⟪g • H.Φ1, g • H.Φ2⟫_ℂ, ⟪g • H.Φ2, g • H.Φ2⟫_ℂ] =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ]
ext i j g:GaugeGroupIH:TwoHiggsDoubleti:Fin 2j:Fin 2⊢ !![⟪g • H.Φ1, g • H.Φ1⟫_ℂ, ⟪g • H.Φ2, g • H.Φ1⟫_ℂ; ⟪g • H.Φ1, g • H.Φ2⟫_ℂ, ⟪g • H.Φ2, g • H.Φ2⟫_ℂ] i j =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] i j
fin_cases i «0» g:GaugeGroupIH:TwoHiggsDoubletj:Fin 2⊢ !![⟪g • H.Φ1, g • H.Φ1⟫_ℂ, ⟪g • H.Φ2, g • H.Φ1⟫_ℂ; ⟪g • H.Φ1, g • H.Φ2⟫_ℂ, ⟪g • H.Φ2, g • H.Φ2⟫_ℂ] ((fun i => i) ⟨0, ⋯⟩)
j =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨0, ⋯⟩) j«1» g:GaugeGroupIH:TwoHiggsDoubletj:Fin 2⊢ !![⟪g • H.Φ1, g • H.Φ1⟫_ℂ, ⟪g • H.Φ2, g • H.Φ1⟫_ℂ; ⟪g • H.Φ1, g • H.Φ2⟫_ℂ, ⟪g • H.Φ2, g • H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩)
j =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩) j <;> «0» g:GaugeGroupIH:TwoHiggsDoubletj:Fin 2⊢ !![⟪g • H.Φ1, g • H.Φ1⟫_ℂ, ⟪g • H.Φ2, g • H.Φ1⟫_ℂ; ⟪g • H.Φ1, g • H.Φ2⟫_ℂ, ⟪g • H.Φ2, g • H.Φ2⟫_ℂ] ((fun i => i) ⟨0, ⋯⟩)
j =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨0, ⋯⟩) j«1» g:GaugeGroupIH:TwoHiggsDoubletj:Fin 2⊢ !![⟪g • H.Φ1, g • H.Φ1⟫_ℂ, ⟪g • H.Φ2, g • H.Φ1⟫_ℂ; ⟪g • H.Φ1, g • H.Φ2⟫_ℂ, ⟪g • H.Φ2, g • H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩)
j =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩) j fin_cases j «1».«0» g:GaugeGroupIH:TwoHiggsDoublet⊢ !![⟪g • H.Φ1, g • H.Φ1⟫_ℂ, ⟪g • H.Φ2, g • H.Φ1⟫_ℂ; ⟪g • H.Φ1, g • H.Φ2⟫_ℂ, ⟪g • H.Φ2, g • H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩)
((fun i => i) ⟨0, ⋯⟩) =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩)«1».«1» g:GaugeGroupIH:TwoHiggsDoublet⊢ !![⟪g • H.Φ1, g • H.Φ1⟫_ℂ, ⟪g • H.Φ2, g • H.Φ1⟫_ℂ; ⟪g • H.Φ1, g • H.Φ2⟫_ℂ, ⟪g • H.Φ2, g • H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩)
((fun i => i) ⟨1, ⋯⟩) =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) <;> «0».«0» g:GaugeGroupIH:TwoHiggsDoublet⊢ !![⟪g • H.Φ1, g • H.Φ1⟫_ℂ, ⟪g • H.Φ2, g • H.Φ1⟫_ℂ; ⟪g • H.Φ1, g • H.Φ2⟫_ℂ, ⟪g • H.Φ2, g • H.Φ2⟫_ℂ] ((fun i => i) ⟨0, ⋯⟩)
((fun i => i) ⟨0, ⋯⟩) =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩)«0».«1» g:GaugeGroupIH:TwoHiggsDoublet⊢ !![⟪g • H.Φ1, g • H.Φ1⟫_ℂ, ⟪g • H.Φ2, g • H.Φ1⟫_ℂ; ⟪g • H.Φ1, g • H.Φ2⟫_ℂ, ⟪g • H.Φ2, g • H.Φ2⟫_ℂ] ((fun i => i) ⟨0, ⋯⟩)
((fun i => i) ⟨1, ⋯⟩) =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩)«1».«0» g:GaugeGroupIH:TwoHiggsDoublet⊢ !![⟪g • H.Φ1, g • H.Φ1⟫_ℂ, ⟪g • H.Φ2, g • H.Φ1⟫_ℂ; ⟪g • H.Φ1, g • H.Φ2⟫_ℂ, ⟪g • H.Φ2, g • H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩)
((fun i => i) ⟨0, ⋯⟩) =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩)«1».«1» g:GaugeGroupIH:TwoHiggsDoublet⊢ !![⟪g • H.Φ1, g • H.Φ1⟫_ℂ, ⟪g • H.Φ2, g • H.Φ1⟫_ℂ; ⟪g • H.Φ1, g • H.Φ2⟫_ℂ, ⟪g • H.Φ2, g • H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩)
((fun i => i) ⟨1, ⋯⟩) =
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) simp All goals completed! 🐙
lemma gramMatrix_det_eq (H : TwoHiggsDoublet) :
H.gramMatrix.det = ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 := by H:TwoHiggsDoublet⊢ H.gramMatrix.det = ↑‖H.Φ1‖ ^ 2 * ↑‖H.Φ2‖ ^ 2 - ↑‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2
rw [gramMatrix, H:TwoHiggsDoublet⊢ !![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ].det =
↑‖H.Φ1‖ ^ 2 * ↑‖H.Φ2‖ ^ 2 - ↑‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 H:TwoHiggsDoublet⊢ !![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 0 0 *
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 1 -
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 0 1 *
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 0 =
↑‖H.Φ1‖ ^ 2 * ↑‖H.Φ2‖ ^ 2 - ↑‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 Matrix.det_fin_two H:TwoHiggsDoublet⊢ !![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 0 0 *
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 1 -
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 0 1 *
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 0 =
↑‖H.Φ1‖ ^ 2 * ↑‖H.Φ2‖ ^ 2 - ↑‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 H:TwoHiggsDoublet⊢ !![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 0 0 *
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 1 -
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 0 1 *
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 0 =
↑‖H.Φ1‖ ^ 2 * ↑‖H.Φ2‖ ^ 2 - ↑‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2] H:TwoHiggsDoublet⊢ !![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 0 0 *
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 1 -
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 0 1 *
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 0 =
↑‖H.Φ1‖ ^ 2 * ↑‖H.Φ2‖ ^ 2 - ↑‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2
simp only [inner_self_eq_norm_sq_to_K, Complex.coe_algebraMap, Fin.isValue, Matrix.of_apply,
Matrix.cons_val', Matrix.cons_val_zero, Matrix.cons_val_fin_one, Matrix.cons_val_one,
sub_right_inj] H:TwoHiggsDoublet⊢ ⟪H.Φ2, H.Φ1⟫_ℂ * ⟪H.Φ1, H.Φ2⟫_ℂ = ↑‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2
rw [← Complex.conj_mul', H:TwoHiggsDoublet⊢ ⟪H.Φ2, H.Φ1⟫_ℂ * ⟪H.Φ1, H.Φ2⟫_ℂ = (starRingEnd ℂ) ⟪H.Φ1, H.Φ2⟫_ℂ * ⟪H.Φ1, H.Φ2⟫_ℂ All goals completed! 🐙 inner_conj_symm H:TwoHiggsDoublet⊢ ⟪H.Φ2, H.Φ1⟫_ℂ * ⟪H.Φ1, H.Φ2⟫_ℂ = ⟪H.Φ2, H.Φ1⟫_ℂ * ⟪H.Φ1, H.Φ2⟫_ℂ All goals completed! 🐙] All goals completed! 🐙
lemma gramMatrix_det_eq_real (H : TwoHiggsDoublet) :
H.gramMatrix.det.re = ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 := by H:TwoHiggsDoublet⊢ H.gramMatrix.det.re = ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2
rw [gramMatrix_det_eq H:TwoHiggsDoublet⊢ (↑‖H.Φ1‖ ^ 2 * ↑‖H.Φ2‖ ^ 2 - ↑‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2).re = ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 H:TwoHiggsDoublet⊢ (↑‖H.Φ1‖ ^ 2 * ↑‖H.Φ2‖ ^ 2 - ↑‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2).re = ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2] H:TwoHiggsDoublet⊢ (↑‖H.Φ1‖ ^ 2 * ↑‖H.Φ2‖ ^ 2 - ↑‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2).re = ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2
simp [← Complex.ofReal_pow, Complex.ofReal_im] All goals completed! 🐙
lemma gramMatrix_det_nonneg (H : TwoHiggsDoublet) :
0 ≤ H.gramMatrix.det.re := by H:TwoHiggsDoublet⊢ 0 ≤ H.gramMatrix.det.re
rw [gramMatrix_det_eq_real H:TwoHiggsDoublet⊢ 0 ≤ ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 H:TwoHiggsDoublet⊢ 0 ≤ ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2] H:TwoHiggsDoublet⊢ 0 ≤ ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2
simp only [sub_nonneg] H:TwoHiggsDoublet⊢ ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 ≤ ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2
convert inner_mul_inner_self_le (𝕜 := ℂ) H.Φ1 H.Φ2 e'_3 H:TwoHiggsDoublet⊢ ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 = ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ * ‖⟪H.Φ2, H.Φ1⟫_ℂ‖e'_4.e'_5 H:TwoHiggsDoublet⊢ ‖H.Φ1‖ ^ 2 = RCLike.re ⟪H.Φ1, H.Φ1⟫_ℂe'_4.e'_6 H:TwoHiggsDoublet⊢ ‖H.Φ2‖ ^ 2 = RCLike.re ⟪H.Φ2, H.Φ2⟫_ℂ
· e'_3 H:TwoHiggsDoublet⊢ ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 = ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ * ‖⟪H.Φ2, H.Φ1⟫_ℂ‖ simp [sq, norm_inner_symm] All goals completed! 🐙
· e'_4.e'_5 H:TwoHiggsDoublet⊢ ‖H.Φ1‖ ^ 2 = RCLike.re ⟪H.Φ1, H.Φ1⟫_ℂ exact norm_sq_eq_re_inner H.Φ1 All goals completed! 🐙
· e'_4.e'_6 H:TwoHiggsDoublet⊢ ‖H.Φ2‖ ^ 2 = RCLike.re ⟪H.Φ2, H.Φ2⟫_ℂ exact norm_sq_eq_re_inner H.Φ2 All goals completed! 🐙
lemma gramMatrix_tr_nonneg (H : TwoHiggsDoublet) :
0 ≤ H.gramMatrix.trace.re := by H:TwoHiggsDoublet⊢ 0 ≤ H.gramMatrix.trace.re
rw [gramMatrix, H:TwoHiggsDoublet⊢ 0 ≤ !![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ].trace.re H:TwoHiggsDoublet⊢ 0 ≤
(!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 0 0 +
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 1).re Matrix.trace_fin_two H:TwoHiggsDoublet⊢ 0 ≤
(!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 0 0 +
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 1).re H:TwoHiggsDoublet⊢ 0 ≤
(!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 0 0 +
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 1).re] H:TwoHiggsDoublet⊢ 0 ≤
(!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 0 0 +
!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 1).re
simp only [inner_self_eq_norm_sq_to_K, Complex.coe_algebraMap, Fin.isValue, Matrix.of_apply,
Matrix.cons_val', Matrix.cons_val_zero, Matrix.cons_val_fin_one, Matrix.cons_val_one,
Complex.add_re, ← Complex.ofReal_pow, Complex.ofReal_re] H:TwoHiggsDoublet⊢ 0 ≤ ‖H.Φ1‖ ^ 2 + ‖H.Φ2‖ ^ 2
positivity All goals completed! 🐙
lemma gaugeGroupI_exists_fst_eq {H : TwoHiggsDoublet} (h1 : H.Φ1 ≠ 0) :
∃ g : StandardModel.GaugeGroupI,
g • H.Φ1 = (!2[‖H.Φ1‖, 0] : HiggsVec) ∧
(g • H.Φ2) 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ‖H.Φ1‖ ∧
‖(g • H.Φ2) 1‖ = Real.sqrt (H.gramMatrix.det.re) / ‖H.Φ1‖ := by H:TwoHiggsDoubleth1:H.Φ1 ≠ 0⊢ ∃ g,
g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧
(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧ ‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖
rw [gramMatrix_det_eq_real H:TwoHiggsDoubleth1:H.Φ1 ≠ 0⊢ ∃ g,
g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧
(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ H:TwoHiggsDoubleth1:H.Φ1 ≠ 0⊢ ∃ g,
g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧
(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖] H:TwoHiggsDoubleth1:H.Φ1 ≠ 0⊢ ∃ g,
g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧
(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
obtain ⟨g, h⟩ := (HiggsVec.mem_orbit_gaugeGroupI_iff (H.Φ1) (!2[‖H.Φ1‖, 0] : HiggsVec)).mpr
(by H:TwoHiggsDoubleth1:H.Φ1 ≠ 0⊢ ‖!₂[↑‖H.Φ1‖, 0]‖ = ‖H.Φ1‖ H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:(fun m => m • H.Φ1) g = !₂[↑‖H.Φ1‖, 0]⊢ ∃ g,
g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧
(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ simp [@PiLp.norm_eq_of_L2] All goals completed! 🐙 H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:(fun m => m • H.Φ1) g = !₂[↑‖H.Φ1‖, 0]⊢ ∃ g,
g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧
(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖) H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:(fun m => m • H.Φ1) g = !₂[↑‖H.Φ1‖, 0]⊢ ∃ g,
g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧
(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
use g h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:(fun m => m • H.Φ1) g = !₂[↑‖H.Φ1‖, 0]⊢ g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧
(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
simp at h h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]⊢ g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧
(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
simp [h] h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
have h_fst : (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ‖H.Φ1‖ := by H:TwoHiggsDoubleth1:H.Φ1 ≠ 0⊢ ∃ g,
g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧
(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧ ‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖ h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
have h2 : ⟪H.Φ1, H.Φ2⟫_ℂ = ⟪g • H.Φ1, g • H.Φ2⟫_ℂ := by H:TwoHiggsDoubleth1:H.Φ1 ≠ 0⊢ ∃ g,
g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧
(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧ ‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖ H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h2:⟪H.Φ1, H.Φ2⟫_ℂ = ⟪g • H.Φ1, g • H.Φ2⟫_ℂ⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
simp H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h2:⟪H.Φ1, H.Φ2⟫_ℂ = ⟪g • H.Φ1, g • H.Φ2⟫_ℂ⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h2:⟪H.Φ1, H.Φ2⟫_ℂ = ⟪g • H.Φ1, g • H.Φ2⟫_ℂ⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
rw [h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h2:⟪H.Φ1, H.Φ2⟫_ℂ = ⟪!₂[↑‖H.Φ1‖, 0], g • H.Φ2⟫_ℂ⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h2:⟪H.Φ1, H.Φ2⟫_ℂ = ⟪!₂[↑‖H.Φ1‖, 0], g • H.Φ2⟫_ℂ⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖] at h2 H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h2:⟪H.Φ1, H.Φ2⟫_ℂ = ⟪!₂[↑‖H.Φ1‖, 0], g • H.Φ2⟫_ℂ⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
conv_rhs at h2 =>
simp [PiLp.inner_apply] H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h2:⟪H.Φ1, H.Φ2⟫_ℂ = ⟪!₂[↑‖H.Φ1‖, 0], g • H.Φ2⟫_ℂ| (g • H.Φ2).ofLp 0 * ↑‖H.Φ1‖h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
rw [h2 H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h2:⟪H.Φ1, H.Φ2⟫_ℂ = (g • H.Φ2).ofLp 0 * ↑‖H.Φ1‖⊢ (g • H.Φ2).ofLp 0 = (g • H.Φ2).ofLp 0 * ↑‖H.Φ1‖ / ↑‖H.Φ1‖ H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h2:⟪H.Φ1, H.Φ2⟫_ℂ = (g • H.Φ2).ofLp 0 * ↑‖H.Φ1‖⊢ (g • H.Φ2).ofLp 0 = (g • H.Φ2).ofLp 0 * ↑‖H.Φ1‖ / ↑‖H.Φ1‖h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖] H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h2:⟪H.Φ1, H.Φ2⟫_ℂ = (g • H.Φ2).ofLp 0 * ↑‖H.Φ1‖⊢ (g • H.Φ2).ofLp 0 = (g • H.Φ2).ofLp 0 * ↑‖H.Φ1‖ / ↑‖H.Φ1‖h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
have hx : (‖H.Φ1‖ : ℂ) ≠ 0 := by H:TwoHiggsDoubleth1:H.Φ1 ≠ 0⊢ ∃ g,
g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧
(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧ ‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖ H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h2:⟪H.Φ1, H.Φ2⟫_ℂ = (g • H.Φ2).ofLp 0 * ↑‖H.Φ1‖hx:↑‖H.Φ1‖ ≠ 0⊢ (g • H.Φ2).ofLp 0 = (g • H.Φ2).ofLp 0 * ↑‖H.Φ1‖ / ↑‖H.Φ1‖h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
simp_all H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h2:⟪H.Φ1, H.Φ2⟫_ℂ = (g • H.Φ2).ofLp 0 * ↑‖H.Φ1‖hx:↑‖H.Φ1‖ ≠ 0⊢ (g • H.Φ2).ofLp 0 = (g • H.Φ2).ofLp 0 * ↑‖H.Φ1‖ / ↑‖H.Φ1‖h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h2:⟪H.Φ1, H.Φ2⟫_ℂ = (g • H.Φ2).ofLp 0 * ↑‖H.Φ1‖hx:↑‖H.Φ1‖ ≠ 0⊢ (g • H.Φ2).ofLp 0 = (g • H.Φ2).ofLp 0 * ↑‖H.Φ1‖ / ↑‖H.Φ1‖h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
field_simph H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧
‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
apply And.intro h_fst h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
have hx : ‖g • H.Φ2‖ ^ 2 = ‖H.Φ2‖ ^ 2 := by H:TwoHiggsDoubleth1:H.Φ1 ≠ 0⊢ ∃ g,
g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧
(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧ ‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖ h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖g • H.Φ2‖ ^ 2 = ‖H.Φ2‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
simph H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖g • H.Φ2‖ ^ 2 = ‖H.Φ2‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖g • H.Φ2‖ ^ 2 = ‖H.Φ2‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
rw [PiLp.norm_sq_eq_of_L2 h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:∑ i, ‖(g • H.Φ2).ofLp i‖ ^ 2 = ‖H.Φ2‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:∑ i, ‖(g • H.Φ2).ofLp i‖ ^ 2 = ‖H.Φ2‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖] at hxh H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:∑ i, ‖(g • H.Φ2).ofLp i‖ ^ 2 = ‖H.Φ2‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
simp at hx h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
have hx0 : ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2 := by H:TwoHiggsDoubleth1:H.Φ1 ≠ 0⊢ ∃ g,
g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧
(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧ ‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖ h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
rw [← hx H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2 H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖] H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
simph H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
have h0 : ‖(g • H.Φ2) 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2 := by H:TwoHiggsDoubleth1:H.Φ1 ≠ 0⊢ ∃ g,
g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧
(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧ ‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖ h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
field_simp H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ ^ 2 * ‖H.Φ1‖ ^ 2 = ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
rw [hx0, H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2⊢ (‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2) * ‖H.Φ1‖ ^ 2 = ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2⊢ (‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖‖ ^ 2) * ‖H.Φ1‖ ^ 2 = ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ h_fst H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2⊢ (‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖‖ ^ 2) * ‖H.Φ1‖ ^ 2 = ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2⊢ (‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖‖ ^ 2) * ‖H.Φ1‖ ^ 2 = ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖] H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2⊢ (‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖‖ ^ 2) * ‖H.Φ1‖ ^ 2 = ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
simp only [Fin.isValue, Complex.norm_div, Complex.norm_real, norm_norm] H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2⊢ (‖H.Φ2‖ ^ 2 - (‖⟪H.Φ1, H.Φ2⟫_ℂ‖ / ‖H.Φ1‖) ^ 2) * ‖H.Φ1‖ ^ 2 = ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
ring_nf H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2⊢ ‖H.Φ2‖ ^ 2 * ‖H.Φ1‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 * ‖H.Φ1‖ ^ 2 * ‖H.Φ1‖⁻¹ ^ 2 =
‖H.Φ2‖ ^ 2 * ‖H.Φ1‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
field_simph H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
have habc (a b c : ℝ) (ha : 0 ≤ a) (hx : a ^ 2 = b / c ^2) (hc : c ≠ 0) (hc : 0 < c) :
a = Real.sqrt b / c := by H:TwoHiggsDoubleth1:H.Φ1 ≠ 0⊢ ∃ g,
g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧
(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧ ‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖ h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
have hb : b = (a * c) ^ 2 := by H:TwoHiggsDoubleth1:H.Φ1 ≠ 0⊢ ∃ g,
g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧
(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ ∧ ‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖ H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx✝:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2a:ℝb:ℝc:ℝha:0 ≤ ahx:a ^ 2 = b / c ^ 2hc✝:c ≠ 0hc:0 < chb:b = (a * c) ^ 2⊢ a = √b / ch H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
rw [mul_pow, H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx✝:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2a:ℝb:ℝc:ℝha:0 ≤ ahx:a ^ 2 = b / c ^ 2hc✝:c ≠ 0hc:0 < c⊢ b = a ^ 2 * c ^ 2 H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx✝:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2a:ℝb:ℝc:ℝha:0 ≤ ahx:a ^ 2 = b / c ^ 2hc✝:c ≠ 0hc:0 < c⊢ b = b / c ^ 2 * c ^ 2 H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx✝:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2a:ℝb:ℝc:ℝha:0 ≤ ahx:a ^ 2 = b / c ^ 2hc✝:c ≠ 0hc:0 < chb:b = (a * c) ^ 2⊢ a = √b / ch H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ hx H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx✝:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2a:ℝb:ℝc:ℝha:0 ≤ ahx:a ^ 2 = b / c ^ 2hc✝:c ≠ 0hc:0 < c⊢ b = b / c ^ 2 * c ^ 2 H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx✝:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2a:ℝb:ℝc:ℝha:0 ≤ ahx:a ^ 2 = b / c ^ 2hc✝:c ≠ 0hc:0 < c⊢ b = b / c ^ 2 * c ^ 2 H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx✝:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2a:ℝb:ℝc:ℝha:0 ≤ ahx:a ^ 2 = b / c ^ 2hc✝:c ≠ 0hc:0 < chb:b = (a * c) ^ 2⊢ a = √b / ch H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖] H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx✝:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2a:ℝb:ℝc:ℝha:0 ≤ ahx:a ^ 2 = b / c ^ 2hc✝:c ≠ 0hc:0 < c⊢ b = b / c ^ 2 * c ^ 2 H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx✝:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2a:ℝb:ℝc:ℝha:0 ≤ ahx:a ^ 2 = b / c ^ 2hc✝:c ≠ 0hc:0 < chb:b = (a * c) ^ 2⊢ a = √b / ch H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
field_simp H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx✝:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2a:ℝb:ℝc:ℝha:0 ≤ ahx:a ^ 2 = b / c ^ 2hc✝:c ≠ 0hc:0 < chb:b = (a * c) ^ 2⊢ a = √b / ch H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx✝:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2a:ℝb:ℝc:ℝha:0 ≤ ahx:a ^ 2 = b / c ^ 2hc✝:c ≠ 0hc:0 < chb:b = (a * c) ^ 2⊢ a = √b / ch H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
rw [hb, H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx✝:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2a:ℝb:ℝc:ℝha:0 ≤ ahx:a ^ 2 = b / c ^ 2hc✝:c ≠ 0hc:0 < chb:b = (a * c) ^ 2⊢ a = √((a * c) ^ 2) / ch H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ Real.sqrt_sq (mul_nonneg ha hc.le), H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx✝:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2a:ℝb:ℝc:ℝha:0 ≤ ahx:a ^ 2 = b / c ^ 2hc✝:c ≠ 0hc:0 < chb:b = (a * c) ^ 2⊢ a = a * c / ch H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ mul_div_assoc, H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx✝:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2a:ℝb:ℝc:ℝha:0 ≤ ahx:a ^ 2 = b / c ^ 2hc✝:c ≠ 0hc:0 < chb:b = (a * c) ^ 2⊢ a = a * (c / c)h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ div_self hc.ne', H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx✝:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2a:ℝb:ℝc:ℝha:0 ≤ ahx:a ^ 2 = b / c ^ 2hc✝:c ≠ 0hc:0 < chb:b = (a * c) ^ 2⊢ a = a * 1h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ mul_one H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx✝:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2a:ℝb:ℝc:ℝha:0 ≤ ahx:a ^ 2 = b / c ^ 2hc✝:c ≠ 0hc:0 < chb:b = (a * c) ^ 2⊢ a = ah H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖]h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖h H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖(g • H.Φ2).ofLp 1‖ = √(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖
apply habc h.hx H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2h.hc H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖H.Φ1‖ ≠ 0h.hc H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ 0 < ‖H.Φ1‖h.ha H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ 0 ≤ ‖(g • H.Φ2).ofLp 1‖
rw [h0 h.hx H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2 =
(‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2h.hc H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖H.Φ1‖ ≠ 0h.hc H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ 0 < ‖H.Φ1‖h.ha H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ 0 ≤ ‖(g • H.Φ2).ofLp 1‖ h.hc H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖H.Φ1‖ ≠ 0h.hc H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ 0 < ‖H.Φ1‖h.ha H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ 0 ≤ ‖(g • H.Φ2).ofLp 1‖]h.hc H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖H.Φ1‖ ≠ 0h.hc H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ 0 < ‖H.Φ1‖h.ha H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ 0 ≤ ‖(g • H.Φ2).ofLp 1‖
ring_nf h.hc H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖H.Φ1‖ ≠ 0h.hc H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ 0 < ‖H.Φ1‖h.ha H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ 0 ≤ ‖(g • H.Φ2).ofLp 1‖
· h.hc H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ ‖H.Φ1‖ ≠ 0 exact norm_ne_zero_iff.mpr h1 All goals completed! 🐙
· h.hc H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ 0 < ‖H.Φ1‖ simpa using h1 All goals completed! 🐙
· h.ha H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_fst:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖hx:‖(g • H.Φ2).ofLp 0‖ ^ 2 + ‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2hx0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = ‖H.Φ2‖ ^ 2 - ‖(g • H.Φ2).ofLp 0‖ ^ 2h0:‖(g • H.Φ2).ofLp 1‖ ^ 2 = (‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2) / ‖H.Φ1‖ ^ 2habc:∀ (a b c : ℝ), 0 ≤ a → a ^ 2 = b / c ^ 2 → c ≠ 0 → 0 < c → a = √b / c⊢ 0 ≤ ‖(g • H.Φ2).ofLp 1‖ exact norm_nonneg ((g • H.Φ2).ofLp 1) All goals completed! 🐙
lemma gaugeGroupI_exists_fst_eq_snd_eq {H : TwoHiggsDoublet} (h1 : H.Φ1 ≠ 0) :
∃ g : StandardModel.GaugeGroupI,
g • H.Φ1 = (!2[‖H.Φ1‖, 0] : HiggsVec) ∧
g • H.Φ2 = (!2[⟪H.Φ1, H.Φ2⟫_ℂ / ‖H.Φ1‖, √(H.gramMatrix.det.re) / ‖H.Φ1‖] : HiggsVec) := by H:TwoHiggsDoubleth1:H.Φ1 ≠ 0⊢ ∃ g, g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧ g • H.Φ2 = !₂[⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖, ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖]
obtain ⟨g, h_fst, h_snd_0, h_snd_1⟩ := gaugeGroupI_exists_fst_eq h1 H:TwoHiggsDoubleth1:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖⊢ ∃ g, g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧ g • H.Φ2 = !₂[⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖, ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖]
obtain ⟨k, h1, h2, h3⟩ := HiggsVec.gaugeGroupI_smul_phase_snd (g • H.Φ2) H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ ∃ g, g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧ g • H.Φ2 = !₂[⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖, ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖]
use k * g h H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ (k * g) • H.Φ1 = !₂[↑‖H.Φ1‖, 0] ∧ (k * g) • H.Φ2 = !₂[⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖, ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖]
apply And.intro h.left H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ (k * g) • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h.right H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ (k * g) • H.Φ2 = !₂[⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖, ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖]
· h.left H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ (k * g) • H.Φ1 = !₂[↑‖H.Φ1‖, 0] rw [mul_smul, h.left H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ k • g • H.Φ1 = !₂[↑‖H.Φ1‖, 0] All goals completed! 🐙 h_fst, h.left H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ k • !₂[↑‖H.Φ1‖, 0] = !₂[↑‖H.Φ1‖, 0] All goals completed! 🐙 h3 h.left H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ !₂[↑‖H.Φ1‖, 0] = !₂[↑‖H.Φ1‖, 0] All goals completed! 🐙] All goals completed! 🐙
· h.right H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ (k * g) • H.Φ2 = !₂[⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖, ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖] rw [mul_smul h.right H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ k • g • H.Φ2 = !₂[⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖, ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖] h.right H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ k • g • H.Φ2 = !₂[⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖, ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖]]h.right H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ k • g • H.Φ2 = !₂[⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖, ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖]
ext i h.right H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]i:Fin 2⊢ (k • g • H.Φ2).ofLp i = !₂[⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖, ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖].ofLp i
fin_cases i h.right.«0» H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ (k • g • H.Φ2).ofLp ((fun i => i) ⟨0, ⋯⟩) =
!₂[⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖, ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖].ofLp ((fun i => i) ⟨0, ⋯⟩)h.right.«1» H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ (k • g • H.Φ2).ofLp ((fun i => i) ⟨1, ⋯⟩) =
!₂[⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖, ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖].ofLp ((fun i => i) ⟨1, ⋯⟩)
· h.right.«0» H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ (k • g • H.Φ2).ofLp ((fun i => i) ⟨0, ⋯⟩) =
!₂[⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖, ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖].ofLp ((fun i => i) ⟨0, ⋯⟩) simp h.right.«0» H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ (k • g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖
rw [h2, h.right.«0» H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ (g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ All goals completed! 🐙 h_snd_0 h.right.«0» H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖ All goals completed! 🐙] All goals completed! 🐙
· h.right.«1» H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ (k • g • H.Φ2).ofLp ((fun i => i) ⟨1, ⋯⟩) =
!₂[⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖, ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖].ofLp ((fun i => i) ⟨1, ⋯⟩) simp h.right.«1» H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ (k • g • H.Φ2).ofLp 1 = ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖
rw [h1, h.right.«1» H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ ↑‖(g • H.Φ2).ofLp 1‖ = ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖ h.right.«1» H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ ↑(√H.gramMatrix.det.re / ‖H.Φ1‖) = ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖ h_snd_1 h.right.«1» H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ ↑(√H.gramMatrix.det.re / ‖H.Φ1‖) = ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖h.right.«1» H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ ↑(√H.gramMatrix.det.re / ‖H.Φ1‖) = ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖]h.right.«1» H:TwoHiggsDoubleth1✝:H.Φ1 ≠ 0g:GaugeGroupIh_fst:g • H.Φ1 = !₂[↑‖H.Φ1‖, 0]h_snd_0:(g • H.Φ2).ofLp 0 = ⟪H.Φ1, H.Φ2⟫_ℂ / ↑‖H.Φ1‖h_snd_1:‖(g • H.Φ2).ofLp 1‖ = √H.gramMatrix.det.re / ‖H.Φ1‖k:GaugeGroupIh1:(k • g • H.Φ2).ofLp 1 = ↑‖(g • H.Φ2).ofLp 1‖h2:∀ (φ1 : HiggsVec), (k • φ1).ofLp 0 = φ1.ofLp 0h3:∀ (a : ℝ), k • !₂[↑a, 0] = !₂[↑a, 0]⊢ ↑(√H.gramMatrix.det.re / ‖H.Φ1‖) = ↑√H.gramMatrix.det.re / ↑‖H.Φ1‖
simp All goals completed! 🐙
lemma mem_orbit_gaugeGroupI_iff_gramMatrix (H1 H2 : TwoHiggsDoublet) :
H1 ∈ MulAction.orbit GaugeGroupI H2 ↔ H1.gramMatrix = H2.gramMatrix := by H1:TwoHiggsDoubletH2:TwoHiggsDoublet⊢ H1 ∈ MulAction.orbit GaugeGroupI H2 ↔ H1.gramMatrix = H2.gramMatrix
apply Iff.intro mp H1:TwoHiggsDoubletH2:TwoHiggsDoublet⊢ H1 ∈ MulAction.orbit GaugeGroupI H2 → H1.gramMatrix = H2.gramMatrixmpr H1:TwoHiggsDoubletH2:TwoHiggsDoublet⊢ H1.gramMatrix = H2.gramMatrix → H1 ∈ MulAction.orbit GaugeGroupI H2
· mp H1:TwoHiggsDoubletH2:TwoHiggsDoublet⊢ H1 ∈ MulAction.orbit GaugeGroupI H2 → H1.gramMatrix = H2.gramMatrix intro h mp H1:TwoHiggsDoubletH2:TwoHiggsDoubleth:H1 ∈ MulAction.orbit GaugeGroupI H2⊢ H1.gramMatrix = H2.gramMatrix
obtain ⟨g, hg⟩ := h mp H1:TwoHiggsDoubletH2:TwoHiggsDoubletg:GaugeGroupIhg:(fun m => m • H2) g = H1⊢ H1.gramMatrix = H2.gramMatrix
simp at hg mp H1:TwoHiggsDoubletH2:TwoHiggsDoubletg:GaugeGroupIhg:g • H2 = H1⊢ H1.gramMatrix = H2.gramMatrix
simp [← hg] All goals completed! 🐙
by_cases Φ1_zero : H1.Φ1 = 0 pos H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0⊢ H1.gramMatrix = H2.gramMatrix → H1 ∈ MulAction.orbit GaugeGroupI H2neg H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0⊢ H1.gramMatrix = H2.gramMatrix → H1 ∈ MulAction.orbit GaugeGroupI H2
· pos H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0⊢ H1.gramMatrix = H2.gramMatrix → H1 ∈ MulAction.orbit GaugeGroupI H2 intro h pos H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrix⊢ H1 ∈ MulAction.orbit GaugeGroupI H2
obtain ⟨g1, hg1⟩ := (HiggsVec.mem_orbit_gaugeGroupI_iff (H1.Φ2) (!2[‖H1.Φ2‖, 0] : HiggsVec)).mpr
(by H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrix⊢ ‖!₂[↑‖H1.Φ2‖, 0]‖ = ‖H1.Φ2‖ pos H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]⊢ H1 ∈ MulAction.orbit GaugeGroupI H2 simp [@PiLp.norm_eq_of_L2] All goals completed! 🐙 pos H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]⊢ H1 ∈ MulAction.orbit GaugeGroupI H2)pos H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]⊢ H1 ∈ MulAction.orbit GaugeGroupI H2
obtain ⟨g2, hg2⟩ := (HiggsVec.mem_orbit_gaugeGroupI_iff (H2.Φ2) (!2[‖H2.Φ2‖, 0] : HiggsVec)).mpr
(by H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]⊢ ‖!₂[↑‖H2.Φ2‖, 0]‖ = ‖H2.Φ2‖ pos H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]⊢ H1 ∈ MulAction.orbit GaugeGroupI H2 simp [@PiLp.norm_eq_of_L2] All goals completed! 🐙pos H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]⊢ H1 ∈ MulAction.orbit GaugeGroupI H2)pos H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]⊢ H1 ∈ MulAction.orbit GaugeGroupI H2
use g1⁻¹ * g2 h H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]⊢ (fun m => m • H2) (g1⁻¹ * g2) = H1
simp only h H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]⊢ (g1⁻¹ * g2) • H2 = H1
ext:1 h.h1 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]⊢ ((g1⁻¹ * g2) • H2).Φ1 = H1.Φ1h.h2 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]⊢ ((g1⁻¹ * g2) • H2).Φ2 = H1.Φ2
· h.h1 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]⊢ ((g1⁻¹ * g2) • H2).Φ1 = H1.Φ1 simp [Φ1_zero] h.h1 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]⊢ (g1⁻¹ * g2) • H2.Φ1 = 0
have hnorm : ‖H2.Φ1‖ = ‖H1.Φ1‖ := by H1:TwoHiggsDoubletH2:TwoHiggsDoublet⊢ H1 ∈ MulAction.orbit GaugeGroupI H2 ↔ H1.gramMatrix = H2.gramMatrix h.h1 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]hnorm:‖H2.Φ1‖ = ‖H1.Φ1‖⊢ (g1⁻¹ * g2) • H2.Φ1 = 0
symm H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]⊢ ‖H1.Φ1‖ = ‖H2.Φ1‖h.h1 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]hnorm:‖H2.Φ1‖ = ‖H1.Φ1‖⊢ (g1⁻¹ * g2) • H2.Φ1 = 0
rw [← eq_fst_norm_of_eq_gramMatrix h H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]⊢ ‖H1.Φ1‖ = ‖H1.Φ1‖h.h1 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]hnorm:‖H2.Φ1‖ = ‖H1.Φ1‖⊢ (g1⁻¹ * g2) • H2.Φ1 = 0]h.h1 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]hnorm:‖H2.Φ1‖ = ‖H1.Φ1‖⊢ (g1⁻¹ * g2) • H2.Φ1 = 0h.h1 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]hnorm:‖H2.Φ1‖ = ‖H1.Φ1‖⊢ (g1⁻¹ * g2) • H2.Φ1 = 0
simp [Φ1_zero] at hnorm h.h1 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]hnorm:H2.Φ1 = 0⊢ (g1⁻¹ * g2) • H2.Φ1 = 0
simp [hnorm] All goals completed! 🐙
· h.h2 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]⊢ ((g1⁻¹ * g2) • H2).Φ2 = H1.Φ2 simp [mul_smul] h.h2 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]⊢ g1⁻¹ • g2 • H2.Φ2 = H1.Φ2
refine inv_smul_eq_iff.mpr ?_ h.h2 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:(fun m => m • H1.Φ2) g1 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:(fun m => m • H2.Φ2) g2 = !₂[↑‖H2.Φ2‖, 0]⊢ g2 • H2.Φ2 = g1 • H1.Φ2
simp at hg1 hg2 h.h2 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:g1 • H1.Φ2 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:g2 • H2.Φ2 = !₂[↑‖H2.Φ2‖, 0]⊢ g2 • H2.Φ2 = g1 • H1.Φ2
simp [hg1, hg2] h.h2 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIhg1:g1 • H1.Φ2 = !₂[↑‖H1.Φ2‖, 0]g2:GaugeGroupIhg2:g2 • H2.Φ2 = !₂[↑‖H2.Φ2‖, 0]⊢ ‖H2.Φ2‖ = ‖H1.Φ2‖
exact eq_snd_norm_of_eq_gramMatrix h.symm All goals completed! 🐙
· neg H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0⊢ H1.gramMatrix = H2.gramMatrix → H1 ∈ MulAction.orbit GaugeGroupI H2 intro h neg H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrix⊢ H1 ∈ MulAction.orbit GaugeGroupI H2
obtain ⟨g1, H1_Φ1, H1_Φ2⟩ := gaugeGroupI_exists_fst_eq_snd_eq (H := H1) Φ1_zero neg H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]⊢ H1 ∈ MulAction.orbit GaugeGroupI H2
have Φ2_nezero : H2.Φ1 ≠ 0 := by H1:TwoHiggsDoubletH2:TwoHiggsDoublet⊢ H1 ∈ MulAction.orbit GaugeGroupI H2 ↔ H1.gramMatrix = H2.gramMatrix neg H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0⊢ H1 ∈ MulAction.orbit GaugeGroupI H2
intro hzero H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]hzero:H2.Φ1 = 0⊢ Falseneg H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0⊢ H1 ∈ MulAction.orbit GaugeGroupI H2
have hnorm : ‖H1.Φ1‖ = ‖H2.Φ1‖ := by H1:TwoHiggsDoubletH2:TwoHiggsDoublet⊢ H1 ∈ MulAction.orbit GaugeGroupI H2 ↔ H1.gramMatrix = H2.gramMatrix H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]hzero:H2.Φ1 = 0hnorm:‖H1.Φ1‖ = ‖H2.Φ1‖⊢ Falseneg H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0⊢ H1 ∈ MulAction.orbit GaugeGroupI H2
rw [← eq_fst_norm_of_eq_gramMatrix h H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]hzero:H2.Φ1 = 0⊢ ‖H1.Φ1‖ = ‖H1.Φ1‖ H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]hzero:H2.Φ1 = 0hnorm:‖H1.Φ1‖ = ‖H2.Φ1‖⊢ Falseneg H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0⊢ H1 ∈ MulAction.orbit GaugeGroupI H2] H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]hzero:H2.Φ1 = 0hnorm:‖H1.Φ1‖ = ‖H2.Φ1‖⊢ Falseneg H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0⊢ H1 ∈ MulAction.orbit GaugeGroupI H2 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]hzero:H2.Φ1 = 0hnorm:‖H1.Φ1‖ = ‖H2.Φ1‖⊢ Falseneg H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0⊢ H1 ∈ MulAction.orbit GaugeGroupI H2
simp [hzero] at hnorm H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]hzero:H2.Φ1 = 0hnorm:H1.Φ1 = 0⊢ Falseneg H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0⊢ H1 ∈ MulAction.orbit GaugeGroupI H2
simp [hnorm] at Φ1_zeroneg H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0⊢ H1 ∈ MulAction.orbit GaugeGroupI H2neg H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0⊢ H1 ∈ MulAction.orbit GaugeGroupI H2
obtain ⟨g2, H2_Φ1, H2_Φ2⟩ := gaugeGroupI_exists_fst_eq_snd_eq (H := H2) Φ2_nezero neg H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ H1 ∈ MulAction.orbit GaugeGroupI H2
use g1⁻¹ * g2 h H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ (fun m => m • H2) (g1⁻¹ * g2) = H1
simp only h H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ (g1⁻¹ * g2) • H2 = H1
ext:1 h.h1 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ ((g1⁻¹ * g2) • H2).Φ1 = H1.Φ1h.h2 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ ((g1⁻¹ * g2) • H2).Φ2 = H1.Φ2
· h.h1 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ ((g1⁻¹ * g2) • H2).Φ1 = H1.Φ1 simp [mul_smul] h.h1 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ g1⁻¹ • g2 • H2.Φ1 = H1.Φ1
refine inv_smul_eq_iff.mpr ?_ h.h1 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ g2 • H2.Φ1 = g1 • H1.Φ1
simp [H1_Φ1, H2_Φ1] h.h1 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ ‖H2.Φ1‖ = ‖H1.Φ1‖
apply eq_fst_norm_of_eq_gramMatrix h.symm All goals completed! 🐙
· h.h2 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ ((g1⁻¹ * g2) • H2).Φ2 = H1.Φ2 simp [mul_smul] h.h2 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ g1⁻¹ • g2 • H2.Φ2 = H1.Φ2
refine inv_smul_eq_iff.mpr ?_ h.h2 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ g2 • H2.Φ2 = g1 • H1.Φ2
simp [H1_Φ2, H2_Φ2] h.h2 H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ ⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖ = ⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖ ∧
↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖ = ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖
apply And.intro h.h2.left H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ ⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖ = ⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖h.h2.right H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖ = ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖
· h.h2.left H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ ⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖ = ⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖ congr 1 h.h2.left.e_a H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ ⟪H2.Φ1, H2.Φ2⟫_ℂ = ⟪H1.Φ1, H1.Φ2⟫_ℂh.h2.left.e_a H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ ↑‖H2.Φ1‖ = ↑‖H1.Φ1‖
· h.h2.left.e_a H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ ⟪H2.Φ1, H2.Φ2⟫_ℂ = ⟪H1.Φ1, H1.Φ2⟫_ℂ symm h.h2.left.e_a H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ ⟪H1.Φ1, H1.Φ2⟫_ℂ = ⟪H2.Φ1, H2.Φ2⟫_ℂ
exact congrArg (fun x => x 1 0) h All goals completed! 🐙
· h.h2.left.e_a H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ ↑‖H2.Φ1‖ = ↑‖H1.Φ1‖ simp only [Complex.ofReal_inj] h.h2.left.e_a H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ ‖H2.Φ1‖ = ‖H1.Φ1‖
exact eq_fst_norm_of_eq_gramMatrix h.symm All goals completed! 🐙
· h.h2.right H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖ = ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖ congr 2 h.h2.right.e_a H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ √H2.gramMatrix.det.re = √H1.gramMatrix.det.reh.h2.right.e_a H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ ‖H2.Φ1‖ = ‖H1.Φ1‖
· h.h2.right.e_a H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ √H2.gramMatrix.det.re = √H1.gramMatrix.det.re simp [h] All goals completed! 🐙
· h.h2.right.e_a H1:TwoHiggsDoubletH2:TwoHiggsDoubletΦ1_zero:¬H1.Φ1 = 0h:H1.gramMatrix = H2.gramMatrixg1:GaugeGroupIH1_Φ1:g1 • H1.Φ1 = !₂[↑‖H1.Φ1‖, 0]H1_Φ2:g1 • H1.Φ2 = !₂[⟪H1.Φ1, H1.Φ2⟫_ℂ / ↑‖H1.Φ1‖, ↑√H1.gramMatrix.det.re / ↑‖H1.Φ1‖]Φ2_nezero:H2.Φ1 ≠ 0g2:GaugeGroupIH2_Φ1:g2 • H2.Φ1 = !₂[↑‖H2.Φ1‖, 0]H2_Φ2:g2 • H2.Φ2 = !₂[⟪H2.Φ1, H2.Φ2⟫_ℂ / ↑‖H2.Φ1‖, ↑√H2.gramMatrix.det.re / ↑‖H2.Φ1‖]⊢ ‖H2.Φ1‖ = ‖H1.Φ1‖ exact eq_fst_norm_of_eq_gramMatrix h.symm All goals completed! 🐙A.1. Gram matrix is surjective
lemma gramMatrix_surjective_det_tr (K : Matrix (Fin 2) (Fin 2) ℂ)
(hKs : IsSelfAdjoint K) (hKdet : 0 ≤ K.det.re) (hKtr : 0 ≤ K.trace.re) :
∃ H : TwoHiggsDoublet, H.gramMatrix = K := by K:Matrix (Fin 2) (Fin 2) ℂhKs:IsSelfAdjoint KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.re⊢ ∃ H, H.gramMatrix = K
/- Basic results related to K. -/
rw [isSelfAdjoint_iff K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.re⊢ ∃ H, H.gramMatrix = K K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.re⊢ ∃ H, H.gramMatrix = K] at hKs K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.re⊢ ∃ H, H.gramMatrix = K
have hcomp : ∀ i j, (starRingEnd ℂ) (K j i) = K i j := fun i j => congrFun (congrFun hKs i) j K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i j⊢ ∃ H, H.gramMatrix = K
have hK_explicit2 : K = !![((K 0 0).re : ℂ), K 0 1; conj (K 0 1), ((K 1 1).re : ℂ)] := by
ext i j K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i ji:Fin 2j:Fin 2⊢ K i j = !![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re] i j K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i jhK_explicit2:K = !![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re]⊢ ∃ H, H.gramMatrix = K
fin_cases i «0» K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i jj:Fin 2⊢ K ((fun i => i) ⟨0, ⋯⟩) j = !![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re] ((fun i => i) ⟨0, ⋯⟩) j«1» K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i jj:Fin 2⊢ K ((fun i => i) ⟨1, ⋯⟩) j = !![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re] ((fun i => i) ⟨1, ⋯⟩) j K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i jhK_explicit2:K = !![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re]⊢ ∃ H, H.gramMatrix = K <;> «0» K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i jj:Fin 2⊢ K ((fun i => i) ⟨0, ⋯⟩) j = !![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re] ((fun i => i) ⟨0, ⋯⟩) j«1» K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i jj:Fin 2⊢ K ((fun i => i) ⟨1, ⋯⟩) j = !![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re] ((fun i => i) ⟨1, ⋯⟩) j K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i jhK_explicit2:K = !![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re]⊢ ∃ H, H.gramMatrix = K fin_cases j «1».«0» K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i j⊢ K ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩) =
!![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩)«1».«1» K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i j⊢ K ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) =
!![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i jhK_explicit2:K = !![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re]⊢ ∃ H, H.gramMatrix = K <;> «0».«0» K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i j⊢ K ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩) =
!![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re] ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩)«0».«1» K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i j⊢ K ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) =
!![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re] ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩)«1».«0» K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i j⊢ K ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩) =
!![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩)«1».«1» K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i j⊢ K ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) =
!![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i jhK_explicit2:K = !![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re]⊢ ∃ H, H.gramMatrix = K simp «1».«1» K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i j⊢ K 1 1 = ↑(K 1 1).re K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i jhK_explicit2:K = !![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re]⊢ ∃ H, H.gramMatrix = K
· «0».«0» K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i j⊢ K 0 0 = ↑(K 0 0).re K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i jhK_explicit2:K = !![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re]⊢ ∃ H, H.gramMatrix = K exact (Complex.conj_eq_iff_re.mp (hcomp 0 0)).symm All goals completed! 🐙 K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i jhK_explicit2:K = !![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re]⊢ ∃ H, H.gramMatrix = K
· «1».«0» K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i j⊢ K 1 0 = (starRingEnd ℂ) (K 0 1) K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i jhK_explicit2:K = !![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re]⊢ ∃ H, H.gramMatrix = K exact (hcomp 1 0).symm All goals completed! 🐙 K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i jhK_explicit2:K = !![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re]⊢ ∃ H, H.gramMatrix = K
· «1».«1» K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i j⊢ K 1 1 = ↑(K 1 1).re K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i jhK_explicit2:K = !![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re]⊢ ∃ H, H.gramMatrix = K exact (Complex.conj_eq_iff_re.mp (hcomp 1 1)).symm K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i jhK_explicit2:K = !![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re]⊢ ∃ H, H.gramMatrix = K K:Matrix (Fin 2) (Fin 2) ℂhKs:star K = KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehcomp:∀ (i j : Fin 2), (starRingEnd ℂ) (K j i) = K i jhK_explicit2:K = !![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re]⊢ ∃ H, H.gramMatrix = K
clear hKs hcomp K:Matrix (Fin 2) (Fin 2) ℂhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rehK_explicit2:K = !![↑(K 0 0).re, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re]⊢ ∃ H, H.gramMatrix = K
generalize (K 0 0).re = a at * K:Matrix (Fin 2) (Fin 2) ℂhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rea:ℝhK_explicit2:K = !![↑a, K 0 1; (starRingEnd ℂ) (K 0 1), ↑(K 1 1).re]⊢ ∃ H, H.gramMatrix = K
generalize (K 1 1).re = b at * K:Matrix (Fin 2) (Fin 2) ℂhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rea:ℝb:ℝhK_explicit2:K = !![↑a, K 0 1; (starRingEnd ℂ) (K 0 1), ↑b]⊢ ∃ H, H.gramMatrix = K
generalize K 0 1 = c at * K:Matrix (Fin 2) (Fin 2) ℂhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rea:ℝb:ℝc:ℂhK_explicit2:K = !![↑a, c; (starRingEnd ℂ) c, ↑b]⊢ ∃ H, H.gramMatrix = K
have det_eq_abc : K.det = a * b - ‖c‖ ^ 2 := by
simp [hK_explicit2] K:Matrix (Fin 2) (Fin 2) ℂhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rea:ℝb:ℝc:ℂhK_explicit2:K = !![↑a, c; (starRingEnd ℂ) c, ↑b]⊢ c * (starRingEnd ℂ) c = ↑‖c‖ ^ 2 K:Matrix (Fin 2) (Fin 2) ℂhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rea:ℝb:ℝc:ℂhK_explicit2:K = !![↑a, c; (starRingEnd ℂ) c, ↑b]det_eq_abc:K.det = ↑a * ↑b - ↑‖c‖ ^ 2⊢ ∃ H, H.gramMatrix = K
rw [Complex.mul_conj' K:Matrix (Fin 2) (Fin 2) ℂhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rea:ℝb:ℝc:ℂhK_explicit2:K = !![↑a, c; (starRingEnd ℂ) c, ↑b]⊢ ↑‖c‖ ^ 2 = ↑‖c‖ ^ 2 K:Matrix (Fin 2) (Fin 2) ℂhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rea:ℝb:ℝc:ℂhK_explicit2:K = !![↑a, c; (starRingEnd ℂ) c, ↑b]det_eq_abc:K.det = ↑a * ↑b - ↑‖c‖ ^ 2⊢ ∃ H, H.gramMatrix = K] K:Matrix (Fin 2) (Fin 2) ℂhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rea:ℝb:ℝc:ℂhK_explicit2:K = !![↑a, c; (starRingEnd ℂ) c, ↑b]det_eq_abc:K.det = ↑a * ↑b - ↑‖c‖ ^ 2⊢ ∃ H, H.gramMatrix = K K:Matrix (Fin 2) (Fin 2) ℂhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rea:ℝb:ℝc:ℂhK_explicit2:K = !![↑a, c; (starRingEnd ℂ) c, ↑b]det_eq_abc:K.det = ↑a * ↑b - ↑‖c‖ ^ 2⊢ ∃ H, H.gramMatrix = K
have tra_eq_abc : K.trace.re = a + b := by
simp [hK_explicit2] K:Matrix (Fin 2) (Fin 2) ℂhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rea:ℝb:ℝc:ℂhK_explicit2:K = !![↑a, c; (starRingEnd ℂ) c, ↑b]det_eq_abc:K.det = ↑a * ↑b - ↑‖c‖ ^ 2tra_eq_abc:K.trace.re = a + b⊢ ∃ H, H.gramMatrix = K K:Matrix (Fin 2) (Fin 2) ℂhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.rea:ℝb:ℝc:ℂhK_explicit2:K = !![↑a, c; (starRingEnd ℂ) c, ↑b]det_eq_abc:K.det = ↑a * ↑b - ↑‖c‖ ^ 2tra_eq_abc:K.trace.re = a + b⊢ ∃ H, H.gramMatrix = K
simp [det_eq_abc, ← Complex.ofReal_pow] at hKdet K:Matrix (Fin 2) (Fin 2) ℂhKtr:0 ≤ K.trace.rea:ℝb:ℝc:ℂhK_explicit2:K = !![↑a, c; (starRingEnd ℂ) c, ↑b]det_eq_abc:K.det = ↑a * ↑b - ↑‖c‖ ^ 2tra_eq_abc:K.trace.re = a + bhKdet:‖c‖ ^ 2 ≤ a * b⊢ ∃ H, H.gramMatrix = K
rw [tra_eq_abc K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhK_explicit2:K = !![↑a, c; (starRingEnd ℂ) c, ↑b]det_eq_abc:K.det = ↑a * ↑b - ↑‖c‖ ^ 2tra_eq_abc:K.trace.re = a + bhKdet:‖c‖ ^ 2 ≤ a * b⊢ ∃ H, H.gramMatrix = K K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhK_explicit2:K = !![↑a, c; (starRingEnd ℂ) c, ↑b]det_eq_abc:K.det = ↑a * ↑b - ↑‖c‖ ^ 2tra_eq_abc:K.trace.re = a + bhKdet:‖c‖ ^ 2 ≤ a * b⊢ ∃ H, H.gramMatrix = K] at hKtr K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhK_explicit2:K = !![↑a, c; (starRingEnd ℂ) c, ↑b]det_eq_abc:K.det = ↑a * ↑b - ↑‖c‖ ^ 2tra_eq_abc:K.trace.re = a + bhKdet:‖c‖ ^ 2 ≤ a * b⊢ ∃ H, H.gramMatrix = K
rw [hK_explicit2 K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhK_explicit2:K = !![↑a, c; (starRingEnd ℂ) c, ↑b]det_eq_abc:K.det = ↑a * ↑b - ↑‖c‖ ^ 2tra_eq_abc:K.trace.re = a + bhKdet:‖c‖ ^ 2 ≤ a * b⊢ ∃ H, H.gramMatrix = !![↑a, c; (starRingEnd ℂ) c, ↑b] K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhK_explicit2:K = !![↑a, c; (starRingEnd ℂ) c, ↑b]det_eq_abc:K.det = ↑a * ↑b - ↑‖c‖ ^ 2tra_eq_abc:K.trace.re = a + bhKdet:‖c‖ ^ 2 ≤ a * b⊢ ∃ H, H.gramMatrix = !![↑a, c; (starRingEnd ℂ) c, ↑b]] K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhK_explicit2:K = !![↑a, c; (starRingEnd ℂ) c, ↑b]det_eq_abc:K.det = ↑a * ↑b - ↑‖c‖ ^ 2tra_eq_abc:K.trace.re = a + bhKdet:‖c‖ ^ 2 ≤ a * b⊢ ∃ H, H.gramMatrix = !![↑a, c; (starRingEnd ℂ) c, ↑b]
clear hK_explicit2 det_eq_abc tra_eq_abc K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * b⊢ ∃ H, H.gramMatrix = !![↑a, c; (starRingEnd ℂ) c, ↑b]
have ha_nonneg : 0 ≤ a := by K:Matrix (Fin 2) (Fin 2) ℂhKs:IsSelfAdjoint KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.re⊢ ∃ H, H.gramMatrix = K K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ a⊢ ∃ H, H.gramMatrix = !![↑a, c; (starRingEnd ℂ) c, ↑b] nlinarith K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ a⊢ ∃ H, H.gramMatrix = !![↑a, c; (starRingEnd ℂ) c, ↑b] K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ a⊢ ∃ H, H.gramMatrix = !![↑a, c; (starRingEnd ℂ) c, ↑b]
have hb_nonneg : 0 ≤ b := by K:Matrix (Fin 2) (Fin 2) ℂhKs:IsSelfAdjoint KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.re⊢ ∃ H, H.gramMatrix = K K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ b⊢ ∃ H, H.gramMatrix = !![↑a, c; (starRingEnd ℂ) c, ↑b] nlinarith K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ b⊢ ∃ H, H.gramMatrix = !![↑a, c; (starRingEnd ℂ) c, ↑b] K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ b⊢ ∃ H, H.gramMatrix = !![↑a, c; (starRingEnd ℂ) c, ↑b]
/- Splitting the cases into a = 0 and other. -/
by_cases ha : a = 0 pos K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:a = 0⊢ ∃ H, H.gramMatrix = !![↑a, c; (starRingEnd ℂ) c, ↑b]neg K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0⊢ ∃ H, H.gramMatrix = !![↑a, c; (starRingEnd ℂ) c, ↑b]
· pos K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:a = 0⊢ ∃ H, H.gramMatrix = !![↑a, c; (starRingEnd ℂ) c, ↑b] use ⟨(0 : HiggsVec), (!2[√b, 0] : HiggsVec)⟩ h K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:a = 0⊢ { Φ1 := 0, Φ2 := !₂[↑√b, 0] }.gramMatrix = !![↑a, c; (starRingEnd ℂ) c, ↑b]
subst ha h K:Matrix (Fin 2) (Fin 2) ℂb:ℝc:ℂhb_nonneg:0 ≤ bhKtr:0 ≤ 0 + bhKdet:‖c‖ ^ 2 ≤ 0 * bha_nonneg:0 ≤ 0⊢ { Φ1 := 0, Φ2 := !₂[↑√b, 0] }.gramMatrix = !![↑0, c; (starRingEnd ℂ) c, ↑b]
simp_all h K:Matrix (Fin 2) (Fin 2) ℂb:ℝc:ℂhb_nonneg:0 ≤ bhKdet:c = 0⊢ { Φ1 := 0, Φ2 := !₂[↑√b, 0] }.gramMatrix = !![0, 0; 0, ↑b]
subst hKdet h K:Matrix (Fin 2) (Fin 2) ℂb:ℝhb_nonneg:0 ≤ b⊢ { Φ1 := 0, Φ2 := !₂[↑√b, 0] }.gramMatrix = !![0, 0; 0, ↑b]
ext i j h K:Matrix (Fin 2) (Fin 2) ℂb:ℝhb_nonneg:0 ≤ bi:Fin 2j:Fin 2⊢ { Φ1 := 0, Φ2 := !₂[↑√b, 0] }.gramMatrix i j = !![0, 0; 0, ↑b] i j
fin_cases i h.«0» K:Matrix (Fin 2) (Fin 2) ℂb:ℝhb_nonneg:0 ≤ bj:Fin 2⊢ { Φ1 := 0, Φ2 := !₂[↑√b, 0] }.gramMatrix ((fun i => i) ⟨0, ⋯⟩) j = !![0, 0; 0, ↑b] ((fun i => i) ⟨0, ⋯⟩) jh.«1» K:Matrix (Fin 2) (Fin 2) ℂb:ℝhb_nonneg:0 ≤ bj:Fin 2⊢ { Φ1 := 0, Φ2 := !₂[↑√b, 0] }.gramMatrix ((fun i => i) ⟨1, ⋯⟩) j = !![0, 0; 0, ↑b] ((fun i => i) ⟨1, ⋯⟩) j <;> h.«0» K:Matrix (Fin 2) (Fin 2) ℂb:ℝhb_nonneg:0 ≤ bj:Fin 2⊢ { Φ1 := 0, Φ2 := !₂[↑√b, 0] }.gramMatrix ((fun i => i) ⟨0, ⋯⟩) j = !![0, 0; 0, ↑b] ((fun i => i) ⟨0, ⋯⟩) jh.«1» K:Matrix (Fin 2) (Fin 2) ℂb:ℝhb_nonneg:0 ≤ bj:Fin 2⊢ { Φ1 := 0, Φ2 := !₂[↑√b, 0] }.gramMatrix ((fun i => i) ⟨1, ⋯⟩) j = !![0, 0; 0, ↑b] ((fun i => i) ⟨1, ⋯⟩) j fin_cases j h.«1».«0» K:Matrix (Fin 2) (Fin 2) ℂb:ℝhb_nonneg:0 ≤ b⊢ { Φ1 := 0, Φ2 := !₂[↑√b, 0] }.gramMatrix ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩) =
!![0, 0; 0, ↑b] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩)h.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂb:ℝhb_nonneg:0 ≤ b⊢ { Φ1 := 0, Φ2 := !₂[↑√b, 0] }.gramMatrix ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) =
!![0, 0; 0, ↑b] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) <;> h.«0».«0» K:Matrix (Fin 2) (Fin 2) ℂb:ℝhb_nonneg:0 ≤ b⊢ { Φ1 := 0, Φ2 := !₂[↑√b, 0] }.gramMatrix ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩) =
!![0, 0; 0, ↑b] ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩)h.«0».«1» K:Matrix (Fin 2) (Fin 2) ℂb:ℝhb_nonneg:0 ≤ b⊢ { Φ1 := 0, Φ2 := !₂[↑√b, 0] }.gramMatrix ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) =
!![0, 0; 0, ↑b] ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩)h.«1».«0» K:Matrix (Fin 2) (Fin 2) ℂb:ℝhb_nonneg:0 ≤ b⊢ { Φ1 := 0, Φ2 := !₂[↑√b, 0] }.gramMatrix ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩) =
!![0, 0; 0, ↑b] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩)h.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂb:ℝhb_nonneg:0 ≤ b⊢ { Φ1 := 0, Φ2 := !₂[↑√b, 0] }.gramMatrix ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) =
!![0, 0; 0, ↑b] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) simp [gramMatrix] h.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂb:ℝhb_nonneg:0 ≤ b⊢ ↑‖!₂[↑√b, 0]‖ ^ 2 = ↑b
simp [PiLp.norm_eq_of_L2, ← Complex.ofReal_pow] h.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂb:ℝhb_nonneg:0 ≤ b⊢ √b ^ 2 = b
exact Real.sq_sqrt hb_nonneg All goals completed! 🐙
/- The case when a ≠ 0. -/
have h1 : (√a : ℂ) ≠ 0 := by K:Matrix (Fin 2) (Fin 2) ℂhKs:IsSelfAdjoint KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.re⊢ ∃ H, H.gramMatrix = K neg K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0⊢ ∃ H, H.gramMatrix = !![↑a, c; (starRingEnd ℂ) c, ↑b]
simp_allneg K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0⊢ ∃ H, H.gramMatrix = !![↑a, c; (starRingEnd ℂ) c, ↑b]neg K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0⊢ ∃ H, H.gramMatrix = !![↑a, c; (starRingEnd ℂ) c, ↑b]
use ⟨(!2[√a, 0] : HiggsVec), !2[conj c/ √a, √(a * b - ‖c‖ ^ 2) / √a]⟩ h K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0⊢ { Φ1 := !₂[↑√a, 0], Φ2 := !₂[(starRingEnd ℂ) c / ↑√a, ↑√(a * b - ‖c‖ ^ 2) / ↑√a] }.gramMatrix =
!![↑a, c; (starRingEnd ℂ) c, ↑b]
ext i j h K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0i:Fin 2j:Fin 2⊢ { Φ1 := !₂[↑√a, 0], Φ2 := !₂[(starRingEnd ℂ) c / ↑√a, ↑√(a * b - ‖c‖ ^ 2) / ↑√a] }.gramMatrix i j =
!![↑a, c; (starRingEnd ℂ) c, ↑b] i j
fin_cases i h.«0» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0j:Fin 2⊢ { Φ1 := !₂[↑√a, 0], Φ2 := !₂[(starRingEnd ℂ) c / ↑√a, ↑√(a * b - ‖c‖ ^ 2) / ↑√a] }.gramMatrix ((fun i => i) ⟨0, ⋯⟩) j =
!![↑a, c; (starRingEnd ℂ) c, ↑b] ((fun i => i) ⟨0, ⋯⟩) jh.«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0j:Fin 2⊢ { Φ1 := !₂[↑√a, 0], Φ2 := !₂[(starRingEnd ℂ) c / ↑√a, ↑√(a * b - ‖c‖ ^ 2) / ↑√a] }.gramMatrix ((fun i => i) ⟨1, ⋯⟩) j =
!![↑a, c; (starRingEnd ℂ) c, ↑b] ((fun i => i) ⟨1, ⋯⟩) j <;> h.«0» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0j:Fin 2⊢ { Φ1 := !₂[↑√a, 0], Φ2 := !₂[(starRingEnd ℂ) c / ↑√a, ↑√(a * b - ‖c‖ ^ 2) / ↑√a] }.gramMatrix ((fun i => i) ⟨0, ⋯⟩) j =
!![↑a, c; (starRingEnd ℂ) c, ↑b] ((fun i => i) ⟨0, ⋯⟩) jh.«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0j:Fin 2⊢ { Φ1 := !₂[↑√a, 0], Φ2 := !₂[(starRingEnd ℂ) c / ↑√a, ↑√(a * b - ‖c‖ ^ 2) / ↑√a] }.gramMatrix ((fun i => i) ⟨1, ⋯⟩) j =
!![↑a, c; (starRingEnd ℂ) c, ↑b] ((fun i => i) ⟨1, ⋯⟩) j fin_cases j h.«1».«0» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0⊢ { Φ1 := !₂[↑√a, 0], Φ2 := !₂[(starRingEnd ℂ) c / ↑√a, ↑√(a * b - ‖c‖ ^ 2) / ↑√a] }.gramMatrix ((fun i => i) ⟨1, ⋯⟩)
((fun i => i) ⟨0, ⋯⟩) =
!![↑a, c; (starRingEnd ℂ) c, ↑b] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩)h.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0⊢ { Φ1 := !₂[↑√a, 0], Φ2 := !₂[(starRingEnd ℂ) c / ↑√a, ↑√(a * b - ‖c‖ ^ 2) / ↑√a] }.gramMatrix ((fun i => i) ⟨1, ⋯⟩)
((fun i => i) ⟨1, ⋯⟩) =
!![↑a, c; (starRingEnd ℂ) c, ↑b] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) <;> h.«0».«0» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0⊢ { Φ1 := !₂[↑√a, 0], Φ2 := !₂[(starRingEnd ℂ) c / ↑√a, ↑√(a * b - ‖c‖ ^ 2) / ↑√a] }.gramMatrix ((fun i => i) ⟨0, ⋯⟩)
((fun i => i) ⟨0, ⋯⟩) =
!![↑a, c; (starRingEnd ℂ) c, ↑b] ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩)h.«0».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0⊢ { Φ1 := !₂[↑√a, 0], Φ2 := !₂[(starRingEnd ℂ) c / ↑√a, ↑√(a * b - ‖c‖ ^ 2) / ↑√a] }.gramMatrix ((fun i => i) ⟨0, ⋯⟩)
((fun i => i) ⟨1, ⋯⟩) =
!![↑a, c; (starRingEnd ℂ) c, ↑b] ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩)h.«1».«0» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0⊢ { Φ1 := !₂[↑√a, 0], Φ2 := !₂[(starRingEnd ℂ) c / ↑√a, ↑√(a * b - ‖c‖ ^ 2) / ↑√a] }.gramMatrix ((fun i => i) ⟨1, ⋯⟩)
((fun i => i) ⟨0, ⋯⟩) =
!![↑a, c; (starRingEnd ℂ) c, ↑b] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩)h.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0⊢ { Φ1 := !₂[↑√a, 0], Φ2 := !₂[(starRingEnd ℂ) c / ↑√a, ↑√(a * b - ‖c‖ ^ 2) / ↑√a] }.gramMatrix ((fun i => i) ⟨1, ⋯⟩)
((fun i => i) ⟨1, ⋯⟩) =
!![↑a, c; (starRingEnd ℂ) c, ↑b] ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) simp [gramMatrix, PiLp.norm_eq_of_L2, ← Complex.ofReal_pow] h.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0⊢ √((‖c‖ / |√a|) ^ 2 + (|√(a * b - ‖c‖ ^ 2)| / |√a|) ^ 2) ^ 2 = b
· h.«0».«0» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0⊢ √a ^ 2 = a exact Real.sq_sqrt ha_nonneg All goals completed! 🐙
· h.«0».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0⊢ ⟪!₂[(starRingEnd ℂ) c / ↑√a, ↑√(a * b - ‖c‖ ^ 2) / ↑√a], !₂[↑√a, 0]⟫_ℂ = c simp [PiLp.inner_apply] h.«0».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0⊢ ↑√a * (c / ↑√a) = c
field_simp All goals completed! 🐙
· h.«1».«0» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0⊢ ⟪!₂[↑√a, 0], !₂[(starRingEnd ℂ) c / ↑√a, ↑√(a * b - ‖c‖ ^ 2) / ↑√a]⟫_ℂ = (starRingEnd ℂ) c simp [PiLp.inner_apply] h.«1».«0» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0⊢ (starRingEnd ℂ) c / ↑√a * ↑√a = (starRingEnd ℂ) c
field_simp All goals completed! 🐙
· h.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0⊢ √((‖c‖ / |√a|) ^ 2 + (|√(a * b - ‖c‖ ^ 2)| / |√a|) ^ 2) ^ 2 = b have hD : (0 : ℝ) ≤ a * b - ‖c‖ ^ 2 := by K:Matrix (Fin 2) (Fin 2) ℂhKs:IsSelfAdjoint KhKdet:0 ≤ K.det.rehKtr:0 ≤ K.trace.re⊢ ∃ H, H.gramMatrix = K h.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ √((‖c‖ / |√a|) ^ 2 + (|√(a * b - ‖c‖ ^ 2)| / |√a|) ^ 2) ^ 2 = b linarithh.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ √((‖c‖ / |√a|) ^ 2 + (|√(a * b - ‖c‖ ^ 2)| / |√a|) ^ 2) ^ 2 = bh.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ √((‖c‖ / |√a|) ^ 2 + (|√(a * b - ‖c‖ ^ 2)| / |√a|) ^ 2) ^ 2 = b
rw [Real.sq_sqrt (by K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ 0 ≤ (‖c‖ / |√a|) ^ 2 + (|√(a * b - ‖c‖ ^ 2)| / |√a|) ^ 2 h.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ ‖c‖ ^ 2 / a + (a * b - ‖c‖ ^ 2) / a = b positivity All goals completed! 🐙h.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ ‖c‖ ^ 2 / a + (a * b - ‖c‖ ^ 2) / a = b), div_pow, h.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ ‖c‖ ^ 2 / |√a| ^ 2 + (|√(a * b - ‖c‖ ^ 2)| / |√a|) ^ 2 = bh.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ ‖c‖ ^ 2 / a + (a * b - ‖c‖ ^ 2) / a = b div_pow, h.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ ‖c‖ ^ 2 / |√a| ^ 2 + |√(a * b - ‖c‖ ^ 2)| ^ 2 / |√a| ^ 2 = bh.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ ‖c‖ ^ 2 / a + (a * b - ‖c‖ ^ 2) / a = b sq_abs, h.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ ‖c‖ ^ 2 / √a ^ 2 + |√(a * b - ‖c‖ ^ 2)| ^ 2 / √a ^ 2 = bh.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ ‖c‖ ^ 2 / a + (a * b - ‖c‖ ^ 2) / a = b sq_abs, h.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ ‖c‖ ^ 2 / √a ^ 2 + √(a * b - ‖c‖ ^ 2) ^ 2 / √a ^ 2 = bh.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ ‖c‖ ^ 2 / a + (a * b - ‖c‖ ^ 2) / a = b
Real.sq_sqrt ha_nonneg, h.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ ‖c‖ ^ 2 / a + √(a * b - ‖c‖ ^ 2) ^ 2 / a = bh.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ ‖c‖ ^ 2 / a + (a * b - ‖c‖ ^ 2) / a = b Real.sq_sqrt hD h.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ ‖c‖ ^ 2 / a + (a * b - ‖c‖ ^ 2) / a = bh.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ ‖c‖ ^ 2 / a + (a * b - ‖c‖ ^ 2) / a = b]h.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ ‖c‖ ^ 2 / a + (a * b - ‖c‖ ^ 2) / a = b
field_simp h.«1».«1» K:Matrix (Fin 2) (Fin 2) ℂa:ℝb:ℝhKtr:0 ≤ a + bc:ℂhKdet:‖c‖ ^ 2 ≤ a * bha_nonneg:0 ≤ ahb_nonneg:0 ≤ bha:¬a = 0h1:↑√a ≠ 0hD:0 ≤ a * b - ‖c‖ ^ 2⊢ ‖c‖ ^ 2 + (a * b - ‖c‖ ^ 2) = a * b
ring All goals completed! 🐙B. The Gram vector
The lemma manifesting the definitional equality for the gramVector.
lemma gramVector_eq (H : TwoHiggsDoublet) : H.gramVector = fun μ =>
2 * PauliMatrix.pauliBasis.repr ⟨gramMatrix H, gramMatrix_selfAdjoint H⟩ μ := rfl
@[simp]
lemma gaugeGroupI_smul_fst_gramVector (g : StandardModel.GaugeGroupI)
(H : TwoHiggsDoublet) (μ : Fin 1 ⊕ Fin 3) :
(g • H).gramVector μ = H.gramVector μ := by g:GaugeGroupIH:TwoHiggsDoubletμ:Fin 1 ⊕ Fin 3⊢ (g • H).gramVector μ = H.gramVector μ
rw [gramVector, g:GaugeGroupIH:TwoHiggsDoubletμ:Fin 1 ⊕ Fin 3⊢ 2 * (PauliMatrix.pauliBasis.repr ⟨(g • H).gramMatrix, ⋯⟩) μ = H.gramVector μ g:GaugeGroupIH:TwoHiggsDoubletμ:Fin 1 ⊕ Fin 3⊢ 2 * (PauliMatrix.pauliBasis.repr ⟨(g • H).gramMatrix, ⋯⟩) μ = 2 * (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) μ gramVector g:GaugeGroupIH:TwoHiggsDoubletμ:Fin 1 ⊕ Fin 3⊢ 2 * (PauliMatrix.pauliBasis.repr ⟨(g • H).gramMatrix, ⋯⟩) μ = 2 * (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) μ g:GaugeGroupIH:TwoHiggsDoubletμ:Fin 1 ⊕ Fin 3⊢ 2 * (PauliMatrix.pauliBasis.repr ⟨(g • H).gramMatrix, ⋯⟩) μ = 2 * (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) μ] g:GaugeGroupIH:TwoHiggsDoubletμ:Fin 1 ⊕ Fin 3⊢ 2 * (PauliMatrix.pauliBasis.repr ⟨(g • H).gramMatrix, ⋯⟩) μ = 2 * (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) μ
congr 1 e_a g:GaugeGroupIH:TwoHiggsDoubletμ:Fin 1 ⊕ Fin 3⊢ (PauliMatrix.pauliBasis.repr ⟨(g • H).gramMatrix, ⋯⟩) μ = (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) μ
simp All goals completed! 🐙
lemma gramMatrix_eq_gramVector_sum_pauliMatrix (H : TwoHiggsDoublet) :
gramMatrix H = (1 / 2 : ℝ) • ∑ μ, H.gramVector μ • PauliMatrix.pauliMatrix μ := by H:TwoHiggsDoublet⊢ H.gramMatrix = (1 / 2) • ∑ μ, H.gramVector μ • PauliMatrix.pauliMatrix μ
have h1 := congrArg (fun x => x.1) <|
PauliMatrix.pauliBasis.sum_repr ⟨gramMatrix H, gramMatrix_selfAdjoint H⟩ H:TwoHiggsDoubleth1:↑(∑ i, (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) i • PauliMatrix.pauliBasis i) = ↑⟨H.gramMatrix, ⋯⟩⊢ H.gramMatrix = (1 / 2) • ∑ μ, H.gramVector μ • PauliMatrix.pauliMatrix μ
simp [-Module.Basis.sum_repr] at h1 H:TwoHiggsDoubleth1:(PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inl 0) • ↑(PauliMatrix.pauliBasis (Sum.inl 0)) +
∑ x, (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inr x) • ↑(PauliMatrix.pauliBasis (Sum.inr x)) =
H.gramMatrix⊢ H.gramMatrix = (1 / 2) • ∑ μ, H.gramVector μ • PauliMatrix.pauliMatrix μ
rw [← h1 H:TwoHiggsDoubleth1:(PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inl 0) • ↑(PauliMatrix.pauliBasis (Sum.inl 0)) +
∑ x, (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inr x) • ↑(PauliMatrix.pauliBasis (Sum.inr x)) =
H.gramMatrix⊢ (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inl 0) • ↑(PauliMatrix.pauliBasis (Sum.inl 0)) +
∑ x, (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inr x) • ↑(PauliMatrix.pauliBasis (Sum.inr x)) =
(1 / 2) • ∑ μ, H.gramVector μ • PauliMatrix.pauliMatrix μ H:TwoHiggsDoubleth1:(PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inl 0) • ↑(PauliMatrix.pauliBasis (Sum.inl 0)) +
∑ x, (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inr x) • ↑(PauliMatrix.pauliBasis (Sum.inr x)) =
H.gramMatrix⊢ (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inl 0) • ↑(PauliMatrix.pauliBasis (Sum.inl 0)) +
∑ x, (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inr x) • ↑(PauliMatrix.pauliBasis (Sum.inr x)) =
(1 / 2) • ∑ μ, H.gramVector μ • PauliMatrix.pauliMatrix μ] H:TwoHiggsDoubleth1:(PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inl 0) • ↑(PauliMatrix.pauliBasis (Sum.inl 0)) +
∑ x, (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inr x) • ↑(PauliMatrix.pauliBasis (Sum.inr x)) =
H.gramMatrix⊢ (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inl 0) • ↑(PauliMatrix.pauliBasis (Sum.inl 0)) +
∑ x, (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inr x) • ↑(PauliMatrix.pauliBasis (Sum.inr x)) =
(1 / 2) • ∑ μ, H.gramVector μ • PauliMatrix.pauliMatrix μ
simp [gramVector, smul_smul, Finset.smul_sum] H:TwoHiggsDoubleth1:(PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inl 0) • ↑(PauliMatrix.pauliBasis (Sum.inl 0)) +
∑ x, (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inr x) • ↑(PauliMatrix.pauliBasis (Sum.inr x)) =
H.gramMatrix⊢ (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inl 0) • ↑(PauliMatrix.pauliBasis (Sum.inl 0)) +
∑ x, (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inr x) • ↑(PauliMatrix.pauliBasis (Sum.inr x)) =
(PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inl 0) • PauliMatrix.pauliMatrix (Sum.inl 0) +
∑ x, (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inr x) • PauliMatrix.pauliMatrix (Sum.inr x)
congr 1 e_a H:TwoHiggsDoubleth1:(PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inl 0) • ↑(PauliMatrix.pauliBasis (Sum.inl 0)) +
∑ x, (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inr x) • ↑(PauliMatrix.pauliBasis (Sum.inr x)) =
H.gramMatrix⊢ (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inl 0) • ↑(PauliMatrix.pauliBasis (Sum.inl 0)) =
(PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inl 0) • PauliMatrix.pauliMatrix (Sum.inl 0)e_a H:TwoHiggsDoubleth1:(PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inl 0) • ↑(PauliMatrix.pauliBasis (Sum.inl 0)) +
∑ x, (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inr x) • ↑(PauliMatrix.pauliBasis (Sum.inr x)) =
H.gramMatrix⊢ ∑ x, (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inr x) • ↑(PauliMatrix.pauliBasis (Sum.inr x)) =
∑ x, (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inr x) • PauliMatrix.pauliMatrix (Sum.inr x) <;> e_a H:TwoHiggsDoubleth1:(PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inl 0) • ↑(PauliMatrix.pauliBasis (Sum.inl 0)) +
∑ x, (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inr x) • ↑(PauliMatrix.pauliBasis (Sum.inr x)) =
H.gramMatrix⊢ (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inl 0) • ↑(PauliMatrix.pauliBasis (Sum.inl 0)) =
(PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inl 0) • PauliMatrix.pauliMatrix (Sum.inl 0)e_a H:TwoHiggsDoubleth1:(PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inl 0) • ↑(PauliMatrix.pauliBasis (Sum.inl 0)) +
∑ x, (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inr x) • ↑(PauliMatrix.pauliBasis (Sum.inr x)) =
H.gramMatrix⊢ ∑ x, (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inr x) • ↑(PauliMatrix.pauliBasis (Sum.inr x)) =
∑ x, (PauliMatrix.pauliBasis.repr ⟨H.gramMatrix, ⋯⟩) (Sum.inr x) • PauliMatrix.pauliMatrix (Sum.inr x) simp [PauliMatrix.pauliBasis, PauliMatrix.pauliSelfAdjoint] All goals completed! 🐙
lemma gramMatrix_eq_component_gramVector (H : TwoHiggsDoublet) :
gramMatrix H =
!![(1 / 2 : ℂ) * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2)),
(1 / 2 : ℂ) * (H.gramVector (Sum.inr 0) - Complex.I * H.gramVector (Sum.inr 1));
(1 / 2 : ℂ) * (H.gramVector (Sum.inr 0) + Complex.I * H.gramVector (Sum.inr 1)),
(1 / 2 : ℂ) * (H.gramVector (Sum.inl 0) - H.gramVector (Sum.inr 2))] := by H:TwoHiggsDoublet⊢ H.gramMatrix =
!![1 / 2 * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))),
1 / 2 * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)));
1 / 2 * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))),
1 / 2 * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))]
rw [gramMatrix_eq_gramVector_sum_pauliMatrix H:TwoHiggsDoublet⊢ (1 / 2) • ∑ μ, H.gramVector μ • PauliMatrix.pauliMatrix μ =
!![1 / 2 * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))),
1 / 2 * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)));
1 / 2 * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))),
1 / 2 * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))] H:TwoHiggsDoublet⊢ (1 / 2) • ∑ μ, H.gramVector μ • PauliMatrix.pauliMatrix μ =
!![1 / 2 * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))),
1 / 2 * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)));
1 / 2 * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))),
1 / 2 * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))]] H:TwoHiggsDoublet⊢ (1 / 2) • ∑ μ, H.gramVector μ • PauliMatrix.pauliMatrix μ =
!![1 / 2 * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))),
1 / 2 * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)));
1 / 2 * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))),
1 / 2 * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))]
simp [PauliMatrix.pauliMatrix, Fin.sum_univ_three, Complex.real_smul, Matrix.one_fin_two] H:TwoHiggsDoublet⊢ (2⁻¹ * ↑(H.gramVector (Sum.inl 0)) + 2⁻¹ * ↑(H.gramVector (Sum.inr 2)) =
2⁻¹ * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))) ∧
2⁻¹ * ↑(H.gramVector (Sum.inr 0)) + -(2⁻¹ * (↑(H.gramVector (Sum.inr 1)) * Complex.I)) =
2⁻¹ * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)))) ∧
2⁻¹ * ↑(H.gramVector (Sum.inr 0)) + 2⁻¹ * (↑(H.gramVector (Sum.inr 1)) * Complex.I) =
2⁻¹ * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))) ∧
2⁻¹ * ↑(H.gramVector (Sum.inl 0)) + -(2⁻¹ * ↑(H.gramVector (Sum.inr 2))) =
2⁻¹ * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))
ring_nf H:TwoHiggsDoublet⊢ (True ∧ True) ∧ True ∧ True
simp All goals completed! 🐙
lemma gramVector_inl_eq_trace_gramMatrix (H : TwoHiggsDoublet) :
H.gramVector (Sum.inl 0) = H.gramMatrix.trace.re := by H:TwoHiggsDoublet⊢ H.gramVector (Sum.inl 0) = H.gramMatrix.trace.re
rw [gramMatrix_eq_component_gramVector, H:TwoHiggsDoublet⊢ H.gramVector (Sum.inl 0) =
!![1 / 2 * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))),
1 / 2 * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)));
1 / 2 * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))),
1 / 2 * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))].trace.re H:TwoHiggsDoublet⊢ H.gramVector (Sum.inl 0) =
(!![1 / 2 * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))),
1 / 2 * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)));
1 / 2 * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))),
1 / 2 * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))]
0 0 +
!![1 / 2 * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))),
1 / 2 * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)));
1 / 2 * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))),
1 / 2 * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))]
1 1).re Matrix.trace_fin_two H:TwoHiggsDoublet⊢ H.gramVector (Sum.inl 0) =
(!![1 / 2 * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))),
1 / 2 * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)));
1 / 2 * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))),
1 / 2 * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))]
0 0 +
!![1 / 2 * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))),
1 / 2 * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)));
1 / 2 * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))),
1 / 2 * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))]
1 1).re H:TwoHiggsDoublet⊢ H.gramVector (Sum.inl 0) =
(!![1 / 2 * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))),
1 / 2 * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)));
1 / 2 * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))),
1 / 2 * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))]
0 0 +
!![1 / 2 * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))),
1 / 2 * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)));
1 / 2 * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))),
1 / 2 * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))]
1 1).re] H:TwoHiggsDoublet⊢ H.gramVector (Sum.inl 0) =
(!![1 / 2 * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))),
1 / 2 * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)));
1 / 2 * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))),
1 / 2 * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))]
0 0 +
!![1 / 2 * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))),
1 / 2 * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)));
1 / 2 * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))),
1 / 2 * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))]
1 1).re
simp only [Fin.isValue, one_div, Matrix.of_apply, Matrix.cons_val', Matrix.cons_val_zero,
Matrix.cons_val_fin_one, Matrix.cons_val_one, Complex.add_re, Complex.mul_re, Complex.inv_re,
Complex.re_ofNat, Complex.normSq_ofNat, div_self_mul_self', Complex.ofReal_re, Complex.inv_im,
Complex.im_ofNat, neg_zero, zero_div, Complex.add_im, Complex.ofReal_im, add_zero, mul_zero,
sub_zero, Complex.sub_re, Complex.sub_im, sub_self] H:TwoHiggsDoublet⊢ H.gramVector (Sum.inl 0) =
2⁻¹ * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2)) +
2⁻¹ * (H.gramVector (Sum.inl 0) - H.gramVector (Sum.inr 2))
ring All goals completed! 🐙
lemma gramVector_inl_nonneg (H : TwoHiggsDoublet) :
0 ≤ H.gramVector (Sum.inl 0) := by H:TwoHiggsDoublet⊢ 0 ≤ H.gramVector (Sum.inl 0)
rw [gramVector_inl_eq_trace_gramMatrix H:TwoHiggsDoublet⊢ 0 ≤ H.gramMatrix.trace.re H:TwoHiggsDoublet⊢ 0 ≤ H.gramMatrix.trace.re] H:TwoHiggsDoublet⊢ 0 ≤ H.gramMatrix.trace.re
exact gramMatrix_tr_nonneg H All goals completed! 🐙
lemma normSq_Φ1_eq_gramVector (H : TwoHiggsDoublet) :
‖H.Φ1‖ ^ 2 = (1/2 : ℝ) * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2)) := by H:TwoHiggsDoublet⊢ ‖H.Φ1‖ ^ 2 = 1 / 2 * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2))
trans (gramMatrix H 0 0).re H:TwoHiggsDoublet⊢ ‖H.Φ1‖ ^ 2 = (H.gramMatrix 0 0).reH:TwoHiggsDoublet⊢ (H.gramMatrix 0 0).re = 1 / 2 * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2))
· H:TwoHiggsDoublet⊢ ‖H.Φ1‖ ^ 2 = (H.gramMatrix 0 0).re simp [gramMatrix, ← Complex.ofReal_pow] All goals completed! 🐙
· H:TwoHiggsDoublet⊢ (H.gramMatrix 0 0).re = 1 / 2 * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2)) rw [gramMatrix_eq_component_gramVector H:TwoHiggsDoublet⊢ (!![1 / 2 * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))),
1 / 2 * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)));
1 / 2 * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))),
1 / 2 * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))]
0 0).re =
1 / 2 * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2)) H:TwoHiggsDoublet⊢ (!![1 / 2 * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))),
1 / 2 * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)));
1 / 2 * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))),
1 / 2 * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))]
0 0).re =
1 / 2 * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2))] H:TwoHiggsDoublet⊢ (!![1 / 2 * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))),
1 / 2 * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)));
1 / 2 * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))),
1 / 2 * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))]
0 0).re =
1 / 2 * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2))
simp All goals completed! 🐙
lemma normSq_Φ2_eq_gramVector (H : TwoHiggsDoublet) :
‖H.Φ2‖ ^ 2 = (1/2 : ℝ) * (H.gramVector (Sum.inl 0) - H.gramVector (Sum.inr 2)) := by H:TwoHiggsDoublet⊢ ‖H.Φ2‖ ^ 2 = 1 / 2 * (H.gramVector (Sum.inl 0) - H.gramVector (Sum.inr 2))
trans (gramMatrix H 1 1).re H:TwoHiggsDoublet⊢ ‖H.Φ2‖ ^ 2 = (H.gramMatrix 1 1).reH:TwoHiggsDoublet⊢ (H.gramMatrix 1 1).re = 1 / 2 * (H.gramVector (Sum.inl 0) - H.gramVector (Sum.inr 2))
· H:TwoHiggsDoublet⊢ ‖H.Φ2‖ ^ 2 = (H.gramMatrix 1 1).re simp [gramMatrix, ← Complex.ofReal_pow] All goals completed! 🐙
· H:TwoHiggsDoublet⊢ (H.gramMatrix 1 1).re = 1 / 2 * (H.gramVector (Sum.inl 0) - H.gramVector (Sum.inr 2)) rw [gramMatrix_eq_component_gramVector H:TwoHiggsDoublet⊢ (!![1 / 2 * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))),
1 / 2 * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)));
1 / 2 * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))),
1 / 2 * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))]
1 1).re =
1 / 2 * (H.gramVector (Sum.inl 0) - H.gramVector (Sum.inr 2)) H:TwoHiggsDoublet⊢ (!![1 / 2 * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))),
1 / 2 * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)));
1 / 2 * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))),
1 / 2 * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))]
1 1).re =
1 / 2 * (H.gramVector (Sum.inl 0) - H.gramVector (Sum.inr 2))] H:TwoHiggsDoublet⊢ (!![1 / 2 * (↑(H.gramVector (Sum.inl 0)) + ↑(H.gramVector (Sum.inr 2))),
1 / 2 * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)));
1 / 2 * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))),
1 / 2 * (↑(H.gramVector (Sum.inl 0)) - ↑(H.gramVector (Sum.inr 2)))]
1 1).re =
1 / 2 * (H.gramVector (Sum.inl 0) - H.gramVector (Sum.inr 2))
simp All goals completed! 🐙lemma Φ1_inner_Φ2_eq_gramVector (H : TwoHiggsDoublet) :
(⟪H.Φ1, H.Φ2⟫_ℂ) = (1/2 : ℝ) * (H.gramVector (Sum.inr 0) +
Complex.I * H.gramVector (Sum.inr 1)) := by H:TwoHiggsDoublet⊢ ⟪H.Φ1, H.Φ2⟫_ℂ = ↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1)))
trans (gramMatrix H 1 0) H:TwoHiggsDoublet⊢ ⟪H.Φ1, H.Φ2⟫_ℂ = H.gramMatrix 1 0H:TwoHiggsDoublet⊢ H.gramMatrix 1 0 = ↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1)))
· H:TwoHiggsDoublet⊢ ⟪H.Φ1, H.Φ2⟫_ℂ = H.gramMatrix 1 0 simp [gramMatrix] All goals completed! 🐙
· H:TwoHiggsDoublet⊢ H.gramMatrix 1 0 = ↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))) simp [gramMatrix_eq_component_gramVector] All goals completed! 🐙lemma Φ2_inner_Φ1_eq_gramVector (H : TwoHiggsDoublet) :
(⟪H.Φ2, H.Φ1⟫_ℂ) = (1/2 : ℝ) * (H.gramVector (Sum.inr 0) -
Complex.I * H.gramVector (Sum.inr 1)) := by H:TwoHiggsDoublet⊢ ⟪H.Φ2, H.Φ1⟫_ℂ = ↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)))
trans (gramMatrix H 0 1) H:TwoHiggsDoublet⊢ ⟪H.Φ2, H.Φ1⟫_ℂ = H.gramMatrix 0 1H:TwoHiggsDoublet⊢ H.gramMatrix 0 1 = ↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1)))
· H:TwoHiggsDoublet⊢ ⟪H.Φ2, H.Φ1⟫_ℂ = H.gramMatrix 0 1 simp [gramMatrix] All goals completed! 🐙
· H:TwoHiggsDoublet⊢ H.gramMatrix 0 1 = ↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1))) simp [gramMatrix_eq_component_gramVector] All goals completed! 🐙
lemma Φ1_inner_Φ2_normSq_eq_gramVector (H : TwoHiggsDoublet) :
‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 =
(1/4 : ℝ) * (H.gramVector (Sum.inr 0) ^ 2 + H.gramVector (Sum.inr 1) ^ 2) := by H:TwoHiggsDoublet⊢ ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 = 1 / 4 * (H.gramVector (Sum.inr 0) ^ 2 + H.gramVector (Sum.inr 1) ^ 2)
trans (⟪H.Φ1, H.Φ2⟫_ℂ * conj ⟪H.Φ1, H.Φ2⟫_ℂ).re H:TwoHiggsDoublet⊢ ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 = (⟪H.Φ1, H.Φ2⟫_ℂ * (starRingEnd ℂ) ⟪H.Φ1, H.Φ2⟫_ℂ).reH:TwoHiggsDoublet⊢ (⟪H.Φ1, H.Φ2⟫_ℂ * (starRingEnd ℂ) ⟪H.Φ1, H.Φ2⟫_ℂ).re =
1 / 4 * (H.gramVector (Sum.inr 0) ^ 2 + H.gramVector (Sum.inr 1) ^ 2)
· H:TwoHiggsDoublet⊢ ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 = (⟪H.Φ1, H.Φ2⟫_ℂ * (starRingEnd ℂ) ⟪H.Φ1, H.Φ2⟫_ℂ).re rw [Complex.mul_conj', H:TwoHiggsDoublet⊢ ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 = (↑‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2).re H:TwoHiggsDoublet⊢ ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 = (↑(‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2)).re ← Complex.ofReal_pow H:TwoHiggsDoublet⊢ ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 = (↑(‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2)).re H:TwoHiggsDoublet⊢ ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 = (↑(‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2)).re] H:TwoHiggsDoublet⊢ ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 = (↑(‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2)).re
rfl All goals completed! 🐙
rw [conj_inner_symm H.Φ2 H.Φ1 H:TwoHiggsDoublet⊢ (⟪H.Φ1, H.Φ2⟫_ℂ * ⟪H.Φ2, H.Φ1⟫_ℂ).re = 1 / 4 * (H.gramVector (Sum.inr 0) ^ 2 + H.gramVector (Sum.inr 1) ^ 2) H:TwoHiggsDoublet⊢ (⟪H.Φ1, H.Φ2⟫_ℂ * ⟪H.Φ2, H.Φ1⟫_ℂ).re = 1 / 4 * (H.gramVector (Sum.inr 0) ^ 2 + H.gramVector (Sum.inr 1) ^ 2)] H:TwoHiggsDoublet⊢ (⟪H.Φ1, H.Φ2⟫_ℂ * ⟪H.Φ2, H.Φ1⟫_ℂ).re = 1 / 4 * (H.gramVector (Sum.inr 0) ^ 2 + H.gramVector (Sum.inr 1) ^ 2)
rw [Φ1_inner_Φ2_eq_gramVector, H:TwoHiggsDoublet⊢ (↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))) * ⟪H.Φ2, H.Φ1⟫_ℂ).re =
1 / 4 * (H.gramVector (Sum.inr 0) ^ 2 + H.gramVector (Sum.inr 1) ^ 2) H:TwoHiggsDoublet⊢ (↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))) *
(↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1))))).re =
1 / 4 * (H.gramVector (Sum.inr 0) ^ 2 + H.gramVector (Sum.inr 1) ^ 2) Φ2_inner_Φ1_eq_gramVector H:TwoHiggsDoublet⊢ (↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))) *
(↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1))))).re =
1 / 4 * (H.gramVector (Sum.inr 0) ^ 2 + H.gramVector (Sum.inr 1) ^ 2) H:TwoHiggsDoublet⊢ (↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))) *
(↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1))))).re =
1 / 4 * (H.gramVector (Sum.inr 0) ^ 2 + H.gramVector (Sum.inr 1) ^ 2)] H:TwoHiggsDoublet⊢ (↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1))) *
(↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) - Complex.I * ↑(H.gramVector (Sum.inr 1))))).re =
1 / 4 * (H.gramVector (Sum.inr 0) ^ 2 + H.gramVector (Sum.inr 1) ^ 2)
simp [Complex.mul_re] H:TwoHiggsDoublet⊢ 2⁻¹ * H.gramVector (Sum.inr 0) * (2⁻¹ * H.gramVector (Sum.inr 0)) +
2⁻¹ * H.gramVector (Sum.inr 1) * (2⁻¹ * H.gramVector (Sum.inr 1)) =
4⁻¹ * (H.gramVector (Sum.inr 0) ^ 2 + H.gramVector (Sum.inr 1) ^ 2)
ring All goals completed! 🐙
lemma gramVector_inl_zero_eq (H : TwoHiggsDoublet) :
H.gramVector (Sum.inl 0) = ‖H.Φ1‖ ^ 2 + ‖H.Φ2‖ ^ 2 := by H:TwoHiggsDoublet⊢ H.gramVector (Sum.inl 0) = ‖H.Φ1‖ ^ 2 + ‖H.Φ2‖ ^ 2
rw [normSq_Φ1_eq_gramVector, H:TwoHiggsDoublet⊢ H.gramVector (Sum.inl 0) = 1 / 2 * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2)) + ‖H.Φ2‖ ^ 2 H:TwoHiggsDoublet⊢ H.gramVector (Sum.inl 0) =
1 / 2 * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2)) +
1 / 2 * (H.gramVector (Sum.inl 0) - H.gramVector (Sum.inr 2)) normSq_Φ2_eq_gramVector H:TwoHiggsDoublet⊢ H.gramVector (Sum.inl 0) =
1 / 2 * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2)) +
1 / 2 * (H.gramVector (Sum.inl 0) - H.gramVector (Sum.inr 2)) H:TwoHiggsDoublet⊢ H.gramVector (Sum.inl 0) =
1 / 2 * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2)) +
1 / 2 * (H.gramVector (Sum.inl 0) - H.gramVector (Sum.inr 2))] H:TwoHiggsDoublet⊢ H.gramVector (Sum.inl 0) =
1 / 2 * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2)) +
1 / 2 * (H.gramVector (Sum.inl 0) - H.gramVector (Sum.inr 2))
ring All goals completed! 🐙lemma gramVector_inl_zero_eq_gramMatrix (H : TwoHiggsDoublet) :
H.gramVector (Sum.inl 0) = (H.gramMatrix 0 0).re + (H.gramMatrix 1 1).re := by H:TwoHiggsDoublet⊢ H.gramVector (Sum.inl 0) = (H.gramMatrix 0 0).re + (H.gramMatrix 1 1).re
simp [gramVector_inl_zero_eq, gramMatrix, ← Complex.ofReal_pow, Complex.ofReal_re] All goals completed! 🐙
lemma gramVector_inr_zero_eq (H : TwoHiggsDoublet) :
H.gramVector (Sum.inr 0) = 2 * (⟪H.Φ1, H.Φ2⟫_ℂ).re := by H:TwoHiggsDoublet⊢ H.gramVector (Sum.inr 0) = 2 * (⟪H.Φ1, H.Φ2⟫_ℂ).re
rw [Φ1_inner_Φ2_eq_gramVector H:TwoHiggsDoublet⊢ H.gramVector (Sum.inr 0) = 2 * (↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1)))).re H:TwoHiggsDoublet⊢ H.gramVector (Sum.inr 0) = 2 * (↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1)))).re] H:TwoHiggsDoublet⊢ H.gramVector (Sum.inr 0) = 2 * (↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1)))).re
simp All goals completed! 🐙
lemma gramVector_inr_zero_eq_gramMatrix (H : TwoHiggsDoublet) :
H.gramVector (Sum.inr 0) = 2 * (H.gramMatrix 1 0).re := by H:TwoHiggsDoublet⊢ H.gramVector (Sum.inr 0) = 2 * (H.gramMatrix 1 0).re
rw [gramMatrix, H:TwoHiggsDoublet⊢ H.gramVector (Sum.inr 0) = 2 * (!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 0).re H:TwoHiggsDoublet⊢ 2 * (⟪H.Φ1, H.Φ2⟫_ℂ).re = 2 * (!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 0).re gramVector_inr_zero_eq H:TwoHiggsDoublet⊢ 2 * (⟪H.Φ1, H.Φ2⟫_ℂ).re = 2 * (!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 0).re H:TwoHiggsDoublet⊢ 2 * (⟪H.Φ1, H.Φ2⟫_ℂ).re = 2 * (!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 0).re] H:TwoHiggsDoublet⊢ 2 * (⟪H.Φ1, H.Φ2⟫_ℂ).re = 2 * (!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 0).re
simp All goals completed! 🐙
lemma gramVector_inr_one_eq (H : TwoHiggsDoublet) :
H.gramVector (Sum.inr 1) = 2 * (⟪H.Φ1, H.Φ2⟫_ℂ).im := by H:TwoHiggsDoublet⊢ H.gramVector (Sum.inr 1) = 2 * (⟪H.Φ1, H.Φ2⟫_ℂ).im
rw [Φ1_inner_Φ2_eq_gramVector H:TwoHiggsDoublet⊢ H.gramVector (Sum.inr 1) = 2 * (↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1)))).im H:TwoHiggsDoublet⊢ H.gramVector (Sum.inr 1) = 2 * (↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1)))).im] H:TwoHiggsDoublet⊢ H.gramVector (Sum.inr 1) = 2 * (↑(1 / 2) * (↑(H.gramVector (Sum.inr 0)) + Complex.I * ↑(H.gramVector (Sum.inr 1)))).im
simp All goals completed! 🐙
lemma gramVector_inr_one_eq_gramMatrix (H : TwoHiggsDoublet) :
H.gramVector (Sum.inr 1) = 2 * (H.gramMatrix 1 0).im := by H:TwoHiggsDoublet⊢ H.gramVector (Sum.inr 1) = 2 * (H.gramMatrix 1 0).im
rw [gramMatrix, H:TwoHiggsDoublet⊢ H.gramVector (Sum.inr 1) = 2 * (!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 0).im H:TwoHiggsDoublet⊢ 2 * (⟪H.Φ1, H.Φ2⟫_ℂ).im = 2 * (!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 0).im gramVector_inr_one_eq H:TwoHiggsDoublet⊢ 2 * (⟪H.Φ1, H.Φ2⟫_ℂ).im = 2 * (!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 0).im H:TwoHiggsDoublet⊢ 2 * (⟪H.Φ1, H.Φ2⟫_ℂ).im = 2 * (!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 0).im] H:TwoHiggsDoublet⊢ 2 * (⟪H.Φ1, H.Φ2⟫_ℂ).im = 2 * (!![⟪H.Φ1, H.Φ1⟫_ℂ, ⟪H.Φ2, H.Φ1⟫_ℂ; ⟪H.Φ1, H.Φ2⟫_ℂ, ⟪H.Φ2, H.Φ2⟫_ℂ] 1 0).im
simp All goals completed! 🐙
lemma gramVector_inr_two_eq (H : TwoHiggsDoublet) :
H.gramVector (Sum.inr 2) = ‖H.Φ1‖ ^ 2 - ‖H.Φ2‖ ^ 2 := by H:TwoHiggsDoublet⊢ H.gramVector (Sum.inr 2) = ‖H.Φ1‖ ^ 2 - ‖H.Φ2‖ ^ 2
rw [normSq_Φ1_eq_gramVector, H:TwoHiggsDoublet⊢ H.gramVector (Sum.inr 2) = 1 / 2 * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2)) - ‖H.Φ2‖ ^ 2 H:TwoHiggsDoublet⊢ H.gramVector (Sum.inr 2) =
1 / 2 * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2)) -
1 / 2 * (H.gramVector (Sum.inl 0) - H.gramVector (Sum.inr 2)) normSq_Φ2_eq_gramVector H:TwoHiggsDoublet⊢ H.gramVector (Sum.inr 2) =
1 / 2 * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2)) -
1 / 2 * (H.gramVector (Sum.inl 0) - H.gramVector (Sum.inr 2)) H:TwoHiggsDoublet⊢ H.gramVector (Sum.inr 2) =
1 / 2 * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2)) -
1 / 2 * (H.gramVector (Sum.inl 0) - H.gramVector (Sum.inr 2))] H:TwoHiggsDoublet⊢ H.gramVector (Sum.inr 2) =
1 / 2 * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2)) -
1 / 2 * (H.gramVector (Sum.inl 0) - H.gramVector (Sum.inr 2))
ring All goals completed! 🐙lemma gramVector_inr_two_eq_gramMatrix (H : TwoHiggsDoublet) :
H.gramVector (Sum.inr 2) = (H.gramMatrix 0 0).re - (H.gramMatrix 1 1).re := by H:TwoHiggsDoublet⊢ H.gramVector (Sum.inr 2) = (H.gramMatrix 0 0).re - (H.gramMatrix 1 1).re
simp [gramVector_inr_two_eq, gramMatrix, ← Complex.ofReal_pow, Complex.ofReal_re] All goals completed! 🐙
lemma gramMatrix_det_eq_gramVector (H : TwoHiggsDoublet) :
H.gramMatrix.det.re =
(1/4 : ℝ) * (H.gramVector (Sum.inl 0) ^ 2 -
∑ μ : Fin 3, H.gramVector (Sum.inr μ) ^ 2) := by H:TwoHiggsDoublet⊢ H.gramMatrix.det.re = 1 / 4 * (H.gramVector (Sum.inl 0) ^ 2 - ∑ μ, H.gramVector (Sum.inr μ) ^ 2)
rw [gramMatrix_det_eq_real H:TwoHiggsDoublet⊢ ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 =
1 / 4 * (H.gramVector (Sum.inl 0) ^ 2 - ∑ μ, H.gramVector (Sum.inr μ) ^ 2) H:TwoHiggsDoublet⊢ ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 =
1 / 4 * (H.gramVector (Sum.inl 0) ^ 2 - ∑ μ, H.gramVector (Sum.inr μ) ^ 2)] H:TwoHiggsDoublet⊢ ‖H.Φ1‖ ^ 2 * ‖H.Φ2‖ ^ 2 - ‖⟪H.Φ1, H.Φ2⟫_ℂ‖ ^ 2 =
1 / 4 * (H.gramVector (Sum.inl 0) ^ 2 - ∑ μ, H.gramVector (Sum.inr μ) ^ 2)
simp [normSq_Φ1_eq_gramVector, normSq_Φ2_eq_gramVector, Φ1_inner_Φ2_normSq_eq_gramVector,
Fin.sum_univ_three] H:TwoHiggsDoublet⊢ 2⁻¹ * (H.gramVector (Sum.inl 0) + H.gramVector (Sum.inr 2)) *
(2⁻¹ * (H.gramVector (Sum.inl 0) - H.gramVector (Sum.inr 2))) -
4⁻¹ * (H.gramVector (Sum.inr 0) ^ 2 + H.gramVector (Sum.inr 1) ^ 2) =
4⁻¹ *
(H.gramVector (Sum.inl 0) ^ 2 -
(H.gramVector (Sum.inr 0) ^ 2 + H.gramVector (Sum.inr 1) ^ 2 + H.gramVector (Sum.inr 2) ^ 2))
ring All goals completed! 🐙
lemma gramVector_inr_sum_sq_le_inl (H : TwoHiggsDoublet) :
∑ μ : Fin 3, H.gramVector (Sum.inr μ) ^ 2 ≤ H.gramVector (Sum.inl 0) ^ 2 := by H:TwoHiggsDoublet⊢ ∑ μ, H.gramVector (Sum.inr μ) ^ 2 ≤ H.gramVector (Sum.inl 0) ^ 2
have h := gramMatrix_det_nonneg H H:TwoHiggsDoubleth:0 ≤ H.gramMatrix.det.re⊢ ∑ μ, H.gramVector (Sum.inr μ) ^ 2 ≤ H.gramVector (Sum.inl 0) ^ 2
rw [gramMatrix_det_eq_gramVector H:TwoHiggsDoubleth:0 ≤ 1 / 4 * (H.gramVector (Sum.inl 0) ^ 2 - ∑ μ, H.gramVector (Sum.inr μ) ^ 2)⊢ ∑ μ, H.gramVector (Sum.inr μ) ^ 2 ≤ H.gramVector (Sum.inl 0) ^ 2 H:TwoHiggsDoubleth:0 ≤ 1 / 4 * (H.gramVector (Sum.inl 0) ^ 2 - ∑ μ, H.gramVector (Sum.inr μ) ^ 2)⊢ ∑ μ, H.gramVector (Sum.inr μ) ^ 2 ≤ H.gramVector (Sum.inl 0) ^ 2] at h H:TwoHiggsDoubleth:0 ≤ 1 / 4 * (H.gramVector (Sum.inl 0) ^ 2 - ∑ μ, H.gramVector (Sum.inr μ) ^ 2)⊢ ∑ μ, H.gramVector (Sum.inr μ) ^ 2 ≤ H.gramVector (Sum.inl 0) ^ 2
linarith All goals completed! 🐙
lemma gramVector_surjective (v : Fin 1 ⊕ Fin 3 → ℝ)
(h_inl : 0 ≤ v (Sum.inl 0))
(h_det : ∑ μ : Fin 3, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2) :
∃ H : TwoHiggsDoublet, H.gramVector = v := by v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2⊢ ∃ H, H.gramVector = v
let K := !![(1 / 2 : ℂ) * (v (Sum.inl 0) + v (Sum.inr 2)),
(1 / 2 : ℂ) * (v (Sum.inr 0) - Complex.I * v (Sum.inr 1));
(1 / 2 : ℂ) * (v (Sum.inr 0) + Complex.I * v (Sum.inr 1)),
(1 / 2 : ℂ) * (v (Sum.inl 0) - v (Sum.inr 2))] v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]⊢ ∃ H, H.gramVector = v
have hK_selfAdjoint : IsSelfAdjoint K := by
rw [isSelfAdjoint_iff v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]⊢ star K = K v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]⊢ star K = K v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint K⊢ ∃ H, H.gramVector = v] v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]⊢ star K = K v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint K⊢ ∃ H, H.gramVector = v
ext i j v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]i:Fin 2j:Fin 2⊢ star K i j = K i j v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint K⊢ ∃ H, H.gramVector = v
fin_cases i «0» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]j:Fin 2⊢ star K ((fun i => i) ⟨0, ⋯⟩) j = K ((fun i => i) ⟨0, ⋯⟩) j«1» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]j:Fin 2⊢ star K ((fun i => i) ⟨1, ⋯⟩) j = K ((fun i => i) ⟨1, ⋯⟩) j v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint K⊢ ∃ H, H.gramVector = v <;> «0» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]j:Fin 2⊢ star K ((fun i => i) ⟨0, ⋯⟩) j = K ((fun i => i) ⟨0, ⋯⟩) j«1» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]j:Fin 2⊢ star K ((fun i => i) ⟨1, ⋯⟩) j = K ((fun i => i) ⟨1, ⋯⟩) j v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint K⊢ ∃ H, H.gramVector = v fin_cases j «1».«0» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]⊢ star K ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩) = K ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩)«1».«1» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]⊢ star K ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) = K ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint K⊢ ∃ H, H.gramVector = v <;> «0».«0» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]⊢ star K ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩) = K ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩)«0».«1» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]⊢ star K ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) = K ((fun i => i) ⟨0, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩)«1».«0» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]⊢ star K ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩) = K ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨0, ⋯⟩)«1».«1» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]⊢ star K ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) = K ((fun i => i) ⟨1, ⋯⟩) ((fun i => i) ⟨1, ⋯⟩) v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint K⊢ ∃ H, H.gramVector = v simp [K] All goals completed! 🐙 v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint K⊢ ∃ H, H.gramVector = v
ring v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint K⊢ ∃ H, H.gramVector = v v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint K⊢ ∃ H, H.gramVector = v
have hK_det_nonneg : 0 ≤ K.det.re := by
simp [K] v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint K⊢ 2⁻¹ * v (Sum.inr 0) * (2⁻¹ * v (Sum.inr 0)) + 2⁻¹ * v (Sum.inr 1) * (2⁻¹ * v (Sum.inr 1)) ≤
2⁻¹ * (v (Sum.inl 0) + v (Sum.inr 2)) * (2⁻¹ * (v (Sum.inl 0) - v (Sum.inr 2))) v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.re⊢ ∃ H, H.gramVector = v
simp [Fin.sum_univ_three] at h_det v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint Kh_det:v (Sum.inr 0) ^ 2 + v (Sum.inr 1) ^ 2 + v (Sum.inr 2) ^ 2 ≤ v (Sum.inl 0) ^ 2⊢ 2⁻¹ * v (Sum.inr 0) * (2⁻¹ * v (Sum.inr 0)) + 2⁻¹ * v (Sum.inr 1) * (2⁻¹ * v (Sum.inr 1)) ≤
2⁻¹ * (v (Sum.inl 0) + v (Sum.inr 2)) * (2⁻¹ * (v (Sum.inl 0) - v (Sum.inr 2))) v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.re⊢ ∃ H, H.gramVector = v
linarith v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.re⊢ ∃ H, H.gramVector = v v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.re⊢ ∃ H, H.gramVector = v
have hK_tr : 0 ≤ K.trace.re := by
simp [K] v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.re⊢ 0 ≤ 2⁻¹ * (v (Sum.inl 0) + v (Sum.inr 2)) + 2⁻¹ * (v (Sum.inl 0) - v (Sum.inr 2)) v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.rehK_tr:0 ≤ K.trace.re⊢ ∃ H, H.gramVector = v
linarith v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.rehK_tr:0 ≤ K.trace.re⊢ ∃ H, H.gramVector = v v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.rehK_tr:0 ≤ K.trace.re⊢ ∃ H, H.gramVector = v
obtain ⟨H, hH⟩ := gramMatrix_surjective_det_tr K hK_selfAdjoint hK_det_nonneg hK_tr v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.rehK_tr:0 ≤ K.trace.reH:TwoHiggsDoublethH:H.gramMatrix = K⊢ ∃ H, H.gramVector = v
use H h v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.rehK_tr:0 ≤ K.trace.reH:TwoHiggsDoublethH:H.gramMatrix = K⊢ H.gramVector = v
ext μ h v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.rehK_tr:0 ≤ K.trace.reH:TwoHiggsDoublethH:H.gramMatrix = Kμ:Fin 1 ⊕ Fin 3⊢ H.gramVector μ = v μ
fin_cases μ h.«0» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.rehK_tr:0 ≤ K.trace.reH:TwoHiggsDoublethH:H.gramMatrix = K⊢ H.gramVector (Sum.inl ((fun i => i) ⟨0, ⋯⟩)) = v (Sum.inl ((fun i => i) ⟨0, ⋯⟩))h.«1» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.rehK_tr:0 ≤ K.trace.reH:TwoHiggsDoublethH:H.gramMatrix = K⊢ H.gramVector (Sum.inr ((fun i => i) ⟨0, ⋯⟩)) = v (Sum.inr ((fun i => i) ⟨0, ⋯⟩))h.«2» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.rehK_tr:0 ≤ K.trace.reH:TwoHiggsDoublethH:H.gramMatrix = K⊢ H.gramVector (Sum.inr ((fun i => i) ⟨1, ⋯⟩)) = v (Sum.inr ((fun i => i) ⟨1, ⋯⟩))h.«3» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.rehK_tr:0 ≤ K.trace.reH:TwoHiggsDoublethH:H.gramMatrix = K⊢ H.gramVector (Sum.inr ((fun i => i) ⟨2, ⋯⟩)) = v (Sum.inr ((fun i => i) ⟨2, ⋯⟩))
· h.«0» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.rehK_tr:0 ≤ K.trace.reH:TwoHiggsDoublethH:H.gramMatrix = K⊢ H.gramVector (Sum.inl ((fun i => i) ⟨0, ⋯⟩)) = v (Sum.inl ((fun i => i) ⟨0, ⋯⟩)) simp [gramVector_inl_zero_eq_gramMatrix, hH, K] h.«0» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.rehK_tr:0 ≤ K.trace.reH:TwoHiggsDoublethH:H.gramMatrix = K⊢ 2⁻¹ * (v (Sum.inl 0) + v (Sum.inr 2)) + 2⁻¹ * (v (Sum.inl 0) - v (Sum.inr 2)) = v (Sum.inl 0)
ring All goals completed! 🐙
· h.«1» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.rehK_tr:0 ≤ K.trace.reH:TwoHiggsDoublethH:H.gramMatrix = K⊢ H.gramVector (Sum.inr ((fun i => i) ⟨0, ⋯⟩)) = v (Sum.inr ((fun i => i) ⟨0, ⋯⟩)) simp [gramVector_inr_zero_eq_gramMatrix, hH, K] All goals completed! 🐙
· h.«2» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.rehK_tr:0 ≤ K.trace.reH:TwoHiggsDoublethH:H.gramMatrix = K⊢ H.gramVector (Sum.inr ((fun i => i) ⟨1, ⋯⟩)) = v (Sum.inr ((fun i => i) ⟨1, ⋯⟩)) simp [gramVector_inr_one_eq_gramMatrix, hH, K] All goals completed! 🐙
· h.«3» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.rehK_tr:0 ≤ K.trace.reH:TwoHiggsDoublethH:H.gramMatrix = K⊢ H.gramVector (Sum.inr ((fun i => i) ⟨2, ⋯⟩)) = v (Sum.inr ((fun i => i) ⟨2, ⋯⟩)) simp [gramVector_inr_two_eq_gramMatrix, hH, K] h.«3» v:Fin 1 ⊕ Fin 3 → ℝh_inl:0 ≤ v (Sum.inl 0)h_det:∑ μ, v (Sum.inr μ) ^ 2 ≤ v (Sum.inl 0) ^ 2K:Matrix (Fin 2) (Fin 2) ℂ :=
!![1 / 2 * (↑(v (Sum.inl 0)) + ↑(v (Sum.inr 2))), 1 / 2 * (↑(v (Sum.inr 0)) - Complex.I * ↑(v (Sum.inr 1)));
1 / 2 * (↑(v (Sum.inr 0)) + Complex.I * ↑(v (Sum.inr 1))), 1 / 2 * (↑(v (Sum.inl 0)) - ↑(v (Sum.inr 2)))]hK_selfAdjoint:IsSelfAdjoint KhK_det_nonneg:0 ≤ K.det.rehK_tr:0 ≤ K.trace.reH:TwoHiggsDoublethH:H.gramMatrix = K⊢ 2⁻¹ * (v (Sum.inl 0) + v (Sum.inr 2)) - 2⁻¹ * (v (Sum.inl 0) - v (Sum.inr 2)) = v (Sum.inr 2)
ring All goals completed! 🐙
lemma mem_orbit_gaugeGroupI_iff_gramVector (H1 H2 : TwoHiggsDoublet) :
H1 ∈ MulAction.orbit GaugeGroupI H2 ↔ H1.gramVector = H2.gramVector := by H1:TwoHiggsDoubletH2:TwoHiggsDoublet⊢ H1 ∈ MulAction.orbit GaugeGroupI H2 ↔ H1.gramVector = H2.gramVector
rw [mem_orbit_gaugeGroupI_iff_gramMatrix H1:TwoHiggsDoubletH2:TwoHiggsDoublet⊢ H1.gramMatrix = H2.gramMatrix ↔ H1.gramVector = H2.gramVector H1:TwoHiggsDoubletH2:TwoHiggsDoublet⊢ H1.gramMatrix = H2.gramMatrix ↔ H1.gramVector = H2.gramVector] H1:TwoHiggsDoubletH2:TwoHiggsDoublet⊢ H1.gramMatrix = H2.gramMatrix ↔ H1.gramVector = H2.gramVector
constructor mp H1:TwoHiggsDoubletH2:TwoHiggsDoublet⊢ H1.gramMatrix = H2.gramMatrix → H1.gramVector = H2.gramVectormpr H1:TwoHiggsDoubletH2:TwoHiggsDoublet⊢ H1.gramVector = H2.gramVector → H1.gramMatrix = H2.gramMatrix
· mp H1:TwoHiggsDoubletH2:TwoHiggsDoublet⊢ H1.gramMatrix = H2.gramMatrix → H1.gramVector = H2.gramVector intro h mp H1:TwoHiggsDoubletH2:TwoHiggsDoubleth:H1.gramMatrix = H2.gramMatrix⊢ H1.gramVector = H2.gramVector
simp only [gramVector_eq, h] All goals completed! 🐙
· mpr H1:TwoHiggsDoubletH2:TwoHiggsDoublet⊢ H1.gramVector = H2.gramVector → H1.gramMatrix = H2.gramMatrix intro h mpr H1:TwoHiggsDoubletH2:TwoHiggsDoubleth:H1.gramVector = H2.gramVector⊢ H1.gramMatrix = H2.gramMatrix
rw [gramMatrix_eq_gramVector_sum_pauliMatrix, mpr H1:TwoHiggsDoubletH2:TwoHiggsDoubleth:H1.gramVector = H2.gramVector⊢ (1 / 2) • ∑ μ, H1.gramVector μ • PauliMatrix.pauliMatrix μ = H2.gramMatrix All goals completed! 🐙
gramMatrix_eq_gramVector_sum_pauliMatrix, mpr H1:TwoHiggsDoubletH2:TwoHiggsDoubleth:H1.gramVector = H2.gramVector⊢ (1 / 2) • ∑ μ, H1.gramVector μ • PauliMatrix.pauliMatrix μ = (1 / 2) • ∑ μ, H2.gramVector μ • PauliMatrix.pauliMatrix μ All goals completed! 🐙 h mpr H1:TwoHiggsDoubletH2:TwoHiggsDoubleth:H1.gramVector = H2.gramVector⊢ (1 / 2) • ∑ μ, H2.gramVector μ • PauliMatrix.pauliMatrix μ = (1 / 2) • ∑ μ, H2.gramVector μ • PauliMatrix.pauliMatrix μ All goals completed! 🐙] All goals completed! 🐙