chore: Bump to 4.11.0

This commit is contained in:
jstoobysmith 2024-09-04 06:28:46 -04:00
parent b6162217b7
commit 17f09022db
48 changed files with 404 additions and 137 deletions

View file

@ -66,9 +66,9 @@ noncomputable def stdBasis : Basis (Fin 1 ⊕ Fin (d)) (LorentzVector d) :=
scoped[LorentzVector] notation "e" => stdBasis
lemma stdBasis_apply (μ ν : Fin 1 ⊕ Fin d) : e μ ν = if μ = ν then 1 else 0 := by
rw [stdBasis]
erw [Pi.basisFun_apply]
exact LinearMap.stdBasis_apply' μ ν
erw [stdBasis, Pi.basisFun_apply, Pi.single_apply]
refine Eq.symm (ite_congr ?h₁ (congrFun rfl) (congrFun rfl))
exact Eq.propIntro (fun a => id (Eq.symm a)) fun a => id (Eq.symm a)
lemma decomp_stdBasis (v : LorentzVector d) : ∑ i, v i • e i = v := by
funext ν
@ -76,13 +76,13 @@ lemma decomp_stdBasis (v : LorentzVector d) : ∑ i, v i • e i = v := by
rw [Finset.sum_eq_single_of_mem ν]
· simp [HSMul.hSMul, SMul.smul, stdBasis, Pi.basisFun_apply]
erw [Pi.basisFun_apply]
simp only [LinearMap.stdBasis_same, mul_one]
simp only [Pi.single_eq_same, mul_one]
· exact Finset.mem_univ ν
· intros b _ hbi
simp [HSMul.hSMul, SMul.smul, stdBasis, Pi.basisFun_apply]
erw [Pi.basisFun_apply]
simp [LinearMap.stdBasis_apply]
exact Or.inr hbi
simp only [Pi.single]
apply Or.inr $ Function.update_noteq (id (Ne.symm hbi)) 1 0
@[simp]
lemma decomp_stdBasis' (v : LorentzVector d) :

View file

@ -74,13 +74,13 @@ lemma contrUpDown_stdBasis_left (x : LorentzVector d) (i : Fin 1 ⊕ Fin d) :
rw [Finset.sum_eq_single_of_mem i]
· simp only [CovariantLorentzVector.stdBasis]
erw [Pi.basisFun_apply]
simp only [LinearMap.stdBasis_same, mul_one]
simp only [Pi.single_eq_same, mul_one]
· exact Finset.mem_univ i
· intro b _ hbi
simp only [CovariantLorentzVector.stdBasis, mul_eq_zero]
erw [Pi.basisFun_apply]
simp only [LinearMap.stdBasis_apply', ite_eq_right_iff, one_ne_zero, imp_false]
exact Or.inr hbi.symm
simp only [Pi.single_apply, ite_eq_right_iff, one_ne_zero, imp_false]
apply Or.inr hbi
@[simp]
lemma contrUpDown_stdBasis_right (x : CovariantLorentzVector d) (i : Fin 1 ⊕ Fin d) :
@ -88,13 +88,13 @@ lemma contrUpDown_stdBasis_right (x : CovariantLorentzVector d) (i : Fin 1 ⊕ F
simp only [contrUpDown, contrUpDownBi, lift.tmul, LinearMap.coe_mk, AddHom.coe_mk]
rw [Finset.sum_eq_single_of_mem i]
· erw [Pi.basisFun_apply]
simp only [LinearMap.stdBasis_same, one_mul]
simp only [Pi.single_eq_same, one_mul]
· exact Finset.mem_univ i
· intro b _ hbi
simp only [CovariantLorentzVector.stdBasis, mul_eq_zero]
erw [Pi.basisFun_apply]
simp only [LinearMap.stdBasis_apply', ite_eq_right_iff, one_ne_zero, imp_false]
exact Or.intro_left (x b = 0) (id (Ne.symm hbi))
simp only [Pi.single_apply, ite_eq_right_iff, one_ne_zero, imp_false]
exact Or.intro_left (x b = 0) hbi
/-- The linear map defining the contraction of a covariant Lorentz vector
and a contravariant Lorentz vector. -/
@ -247,16 +247,16 @@ lemma asTenProd_contr_asCoTenProd :
· change (η μ μ * (η μ μ * e μ μ)) • e μ ⊗ₜ[] CovariantLorentzVector.stdBasis μ = _
rw [LorentzVector.stdBasis]
erw [Pi.basisFun_apply]
simp only [LinearMap.stdBasis_same, mul_one, η_apply_mul_η_apply_diag, one_smul]
simp only [Pi.single_eq_same, mul_one, η_apply_mul_η_apply_diag, one_smul]
· exact Finset.mem_univ μ
· intro ν _ hμν
rw [tmul_smul]
change (η ν ν * (η μ μ * e μ ν)) • (e μ ⊗ₜ[] CovariantLorentzVector.stdBasis ν) = _
rw [LorentzVector.stdBasis]
erw [Pi.basisFun_apply]
simp only [LinearMap.stdBasis_apply', mul_ite, mul_one, mul_zero, ite_smul, zero_smul,
simp only [Pi.single_apply, mul_ite, mul_one, mul_zero, ite_smul, zero_smul,
ite_eq_right_iff, smul_eq_zero, mul_eq_zero]
exact fun a => False.elim (hμν (id (Eq.symm a)))
exact fun a => False.elim (hμν a)
@[simp]
lemma asCoTenProd_contr_asTenProd :
@ -273,15 +273,15 @@ lemma asCoTenProd_contr_asTenProd :
contrLeft_asTenProd]
rw [tmul_sum, Finset.sum_eq_single_of_mem μ, tmul_smul, smul_smul, LorentzVector.stdBasis]
· erw [Pi.basisFun_apply]
simp only [LinearMap.stdBasis_same, mul_one, η_apply_mul_η_apply_diag, one_smul]
simp only [Pi.single_eq_same, mul_one, η_apply_mul_η_apply_diag, one_smul]
· exact Finset.mem_univ μ
· intro ν _ hμν
rw [tmul_smul]
rw [LorentzVector.stdBasis]
erw [Pi.basisFun_apply]
simp only [LinearMap.stdBasis_apply', mul_ite, mul_one, mul_zero, ite_smul, zero_smul,
simp only [Pi.single_apply, mul_ite, mul_one, mul_zero, ite_smul, zero_smul,
ite_eq_right_iff, smul_eq_zero, mul_eq_zero]
exact fun a => False.elim (hμν (id (Eq.symm a)))
exact fun a => False.elim (hμν a)
lemma asTenProd_invariant (g : LorentzGroup d) :
TensorProduct.map (LorentzVector.rep g) (LorentzVector.rep g) asTenProd = asTenProd := by

View file

@ -50,13 +50,13 @@ lemma decomp_stdBasis (v : CovariantLorentzVector d) : ∑ i, v i • stdBasis i
rw [Finset.sum_apply, Finset.sum_eq_single_of_mem ν]
· simp [HSMul.hSMul, SMul.smul, stdBasis, Pi.basisFun_apply]
erw [Pi.basisFun_apply]
simp only [LinearMap.stdBasis_same, mul_one]
simp only [Pi.single_eq_same, mul_one]
· exact Finset.mem_univ ν
· intros b _ hbi
simp [HSMul.hSMul, SMul.smul, stdBasis, Pi.basisFun_apply]
simp only [HSMul.hSMul, SMul.smul, stdBasis, mul_eq_zero]
erw [Pi.basisFun_apply]
simp [LinearMap.stdBasis_apply]
exact Or.inr hbi
simp only [Pi.single]
apply Or.inr (Function.update_noteq (id (Ne.symm hbi)) 1 0)
@[simp]
lemma decomp_stdBasis' (v : CovariantLorentzVector d) :
@ -98,8 +98,8 @@ lemma rep_apply_stdBasis (g : LorentzGroup d) (μ : Fin 1 ⊕ Fin d) :
simp only [rep_apply, Fintype.sum_sum_type, Finset.univ_unique, Fin.default_eq_zero, Fin.isValue,
Finset.sum_singleton, decomp_stdBasis']
funext ν
simp [LorentzVector.stdBasis, Pi.basisFun_apply]
erw [Pi.basisFun_apply, Matrix.mulVec_stdBasis]
simp only [lorentzGroupIsGroup_inv]
erw [Pi.basisFun_apply, Matrix.mulVec_single_one]
rw [← LorentzGroup.coe_inv]
rfl

View file

@ -33,7 +33,8 @@ lemma rep_apply_stdBasis (g : LorentzGroup d) (μ : Fin 1 ⊕ Fin d) :
Finset.sum_singleton, decomp_stdBasis']
funext ν
simp [LorentzVector.stdBasis, Pi.basisFun_apply]
erw [Pi.basisFun_apply, Matrix.mulVec_stdBasis]
erw [Pi.basisFun_apply, Matrix.mulVec_single_one]
rfl
end LorentzVector