2024-10-15 13:19:46 +00:00
|
|
|
|
/-
|
|
|
|
|
Copyright (c) 2024 Joseph Tooby-Smith. All rights reserved.
|
|
|
|
|
Released under Apache 2.0 license as described in the file LICENSE.
|
|
|
|
|
Authors: Joseph Tooby-Smith
|
|
|
|
|
-/
|
|
|
|
|
import HepLean.SpaceTime.LorentzVector.Complex.Two
|
|
|
|
|
/-!
|
|
|
|
|
|
|
|
|
|
# Unit for complex Lorentz vectors
|
|
|
|
|
|
|
|
|
|
-/
|
|
|
|
|
noncomputable section
|
|
|
|
|
|
|
|
|
|
open Matrix
|
|
|
|
|
open MatrixGroups
|
|
|
|
|
open Complex
|
|
|
|
|
open TensorProduct
|
|
|
|
|
open SpaceTime
|
|
|
|
|
open CategoryTheory.MonoidalCategory
|
|
|
|
|
namespace Lorentz
|
|
|
|
|
|
|
|
|
|
/-- The contra-co unit for complex lorentz vectors. Usually denoted `δⁱᵢ`. -/
|
|
|
|
|
def contrCoUnitVal : (complexContr ⊗ complexCo).V :=
|
|
|
|
|
contrCoToMatrix.symm 1
|
|
|
|
|
|
|
|
|
|
/-- The contra-co unit for complex lorentz vectors as a morphism
|
|
|
|
|
`𝟙_ (Rep ℂ SL(2,ℂ)) ⟶ complexContr ⊗ complexCo`, manifesting the invaraince under
|
|
|
|
|
the `SL(2, ℂ)` action. -/
|
2024-10-15 13:36:48 +00:00
|
|
|
|
def contrCoUnit : 𝟙_ (Rep ℂ SL(2,ℂ)) ⟶ complexContr ⊗ complexCo where
|
2024-10-15 13:19:46 +00:00
|
|
|
|
hom := {
|
|
|
|
|
toFun := fun a =>
|
|
|
|
|
let a' : ℂ := a
|
|
|
|
|
a' • contrCoUnitVal,
|
|
|
|
|
map_add' := fun x y => by
|
|
|
|
|
simp only [add_smul],
|
|
|
|
|
map_smul' := fun m x => by
|
|
|
|
|
simp only [smul_smul]
|
|
|
|
|
rfl}
|
|
|
|
|
comm M := by
|
|
|
|
|
ext x : 2
|
|
|
|
|
simp only [Action.instMonoidalCategory_tensorObj_V, Action.instMonoidalCategory_tensorUnit_V,
|
|
|
|
|
Action.tensorUnit_ρ', CategoryTheory.Category.id_comp, Action.tensor_ρ', ModuleCat.coe_comp,
|
|
|
|
|
Function.comp_apply]
|
|
|
|
|
let x' : ℂ := x
|
|
|
|
|
change x' • contrCoUnitVal =
|
|
|
|
|
(TensorProduct.map (complexContr.ρ M) (complexCo.ρ M)) (x' • contrCoUnitVal)
|
|
|
|
|
simp only [Action.instMonoidalCategory_tensorObj_V, _root_.map_smul]
|
|
|
|
|
apply congrArg
|
|
|
|
|
simp only [Action.instMonoidalCategory_tensorObj_V, contrCoUnitVal]
|
|
|
|
|
erw [contrCoToMatrix_ρ_symm]
|
|
|
|
|
apply congrArg
|
|
|
|
|
simp
|
|
|
|
|
|
|
|
|
|
/-- The co-contra unit for complex lorentz vectors. Usually denoted `δᵢⁱ`. -/
|
|
|
|
|
def coContrUnitVal : (complexCo ⊗ complexContr).V :=
|
|
|
|
|
coContrToMatrix.symm 1
|
|
|
|
|
|
|
|
|
|
/-- The co-contra unit for complex lorentz vectors as a morphism
|
|
|
|
|
`𝟙_ (Rep ℂ SL(2,ℂ)) ⟶ complexCo ⊗ complexContr`, manifesting the invaraince under
|
|
|
|
|
the `SL(2, ℂ)` action. -/
|
2024-10-15 13:36:48 +00:00
|
|
|
|
def coContrUnit : 𝟙_ (Rep ℂ SL(2,ℂ)) ⟶ complexCo ⊗ complexContr where
|
2024-10-15 13:19:46 +00:00
|
|
|
|
hom := {
|
|
|
|
|
toFun := fun a =>
|
|
|
|
|
let a' : ℂ := a
|
|
|
|
|
a' • coContrUnitVal,
|
|
|
|
|
map_add' := fun x y => by
|
|
|
|
|
simp only [add_smul],
|
|
|
|
|
map_smul' := fun m x => by
|
|
|
|
|
simp only [smul_smul]
|
|
|
|
|
rfl}
|
|
|
|
|
comm M := by
|
|
|
|
|
ext x : 2
|
|
|
|
|
simp only [Action.instMonoidalCategory_tensorObj_V, Action.instMonoidalCategory_tensorUnit_V,
|
|
|
|
|
Action.tensorUnit_ρ', CategoryTheory.Category.id_comp, Action.tensor_ρ', ModuleCat.coe_comp,
|
|
|
|
|
Function.comp_apply]
|
|
|
|
|
let x' : ℂ := x
|
|
|
|
|
change x' • coContrUnitVal =
|
|
|
|
|
(TensorProduct.map (complexCo.ρ M) (complexContr.ρ M)) (x' • coContrUnitVal)
|
|
|
|
|
simp only [Action.instMonoidalCategory_tensorObj_V, _root_.map_smul]
|
|
|
|
|
apply congrArg
|
|
|
|
|
simp only [Action.instMonoidalCategory_tensorObj_V, coContrUnitVal]
|
|
|
|
|
erw [coContrToMatrix_ρ_symm]
|
|
|
|
|
apply congrArg
|
|
|
|
|
symm
|
|
|
|
|
refine transpose_eq_one.mp ?h.h.h.a
|
|
|
|
|
simp
|
|
|
|
|
|
|
|
|
|
end Lorentz
|
|
|
|
|
end
|