refactor: Lint
This commit is contained in:
parent
e11bf41f4c
commit
f2eaa2ee43
4 changed files with 33 additions and 38 deletions
|
@ -209,6 +209,5 @@ lemma basis_contr (c : complexLorentzTensor.C) (i : Fin (complexLorentzTensor.re
|
||||||
| Color.up => Lorentz.contrCoContraction_basis _ _
|
| Color.up => Lorentz.contrCoContraction_basis _ _
|
||||||
| Color.down => Lorentz.coContrContraction_basis _ _
|
| Color.down => Lorentz.coContrContraction_basis _ _
|
||||||
|
|
||||||
|
|
||||||
end complexLorentzTensor
|
end complexLorentzTensor
|
||||||
end
|
end
|
||||||
|
|
|
@ -177,7 +177,6 @@ lemma basis_contr_pauliMatrix_basis_tree_expand' {n : ℕ} {c : Fin n → comple
|
||||||
<| contr_tensor_eq <| prod_basisVector_tree _ _]
|
<| contr_tensor_eq <| prod_basisVector_tree _ _]
|
||||||
rfl
|
rfl
|
||||||
|
|
||||||
|
|
||||||
def pauliMatrixBasisProdMap
|
def pauliMatrixBasisProdMap
|
||||||
{n : ℕ} {c : Fin n → complexLorentzTensor.C}
|
{n : ℕ} {c : Fin n → complexLorentzTensor.C}
|
||||||
(b : Π k, Fin (complexLorentzTensor.repDim (c k))) (i1 i2 i3 : Fin 4) :
|
(b : Π k, Fin (complexLorentzTensor.repDim (c k))) (i1 i2 i3 : Fin 4) :
|
||||||
|
@ -190,10 +189,11 @@ def pauliMatrixBasisProdMap
|
||||||
def basisVectorContrPauli {n : ℕ} {c : Fin n → complexLorentzTensor.C}
|
def basisVectorContrPauli {n : ℕ} {c : Fin n → complexLorentzTensor.C}
|
||||||
(i : Fin (n + 3)) (j : Fin (n +2))
|
(i : Fin (n + 3)) (j : Fin (n +2))
|
||||||
(b : Π k, Fin (complexLorentzTensor.repDim (c k)))
|
(b : Π k, Fin (complexLorentzTensor.repDim (c k)))
|
||||||
(i1 i2 i3 : Fin 4) :=
|
(i1 i2 i3 : Fin 4) :=
|
||||||
let c' := (Sum.elim c ![Color.up, Color.upL, Color.upR] ∘ finSumFinEquiv.symm)
|
let c' := (Sum.elim c ![Color.up, Color.upL, Color.upR] ∘ finSumFinEquiv.symm)
|
||||||
∘ Fin.succAbove i ∘ Fin.succAbove j
|
∘ Fin.succAbove i ∘ Fin.succAbove j
|
||||||
let b' (i1 i2 i3 : Fin 4) := fun k => (pauliMatrixBasisProdMap b i1 i2 i3) (i.succAbove (j.succAbove k))
|
let b' (i1 i2 i3 : Fin 4) := fun k => (pauliMatrixBasisProdMap b i1 i2 i3)
|
||||||
|
(i.succAbove (j.succAbove k))
|
||||||
basisVector c' (b' i1 i2 i3)
|
basisVector c' (b' i1 i2 i3)
|
||||||
|
|
||||||
lemma basis_contr_pauliMatrix_basis_tree_expand {n : ℕ} {c : Fin n → complexLorentzTensor.C}
|
lemma basis_contr_pauliMatrix_basis_tree_expand {n : ℕ} {c : Fin n → complexLorentzTensor.C}
|
||||||
|
@ -203,7 +203,8 @@ lemma basis_contr_pauliMatrix_basis_tree_expand {n : ℕ} {c : Fin n → complex
|
||||||
(b : Π k, Fin (complexLorentzTensor.repDim (c k))) :
|
(b : Π k, Fin (complexLorentzTensor.repDim (c k))) :
|
||||||
let c' := (Sum.elim c ![Color.up, Color.upL, Color.upR] ∘ finSumFinEquiv.symm)
|
let c' := (Sum.elim c ![Color.up, Color.upL, Color.upR] ∘ finSumFinEquiv.symm)
|
||||||
∘ Fin.succAbove i ∘ Fin.succAbove j
|
∘ Fin.succAbove i ∘ Fin.succAbove j
|
||||||
let b' (i1 i2 i3 : Fin 4) := fun k => (pauliMatrixBasisProdMap b i1 i2 i3) (i.succAbove (j.succAbove k))
|
let b' (i1 i2 i3 : Fin 4) := fun k => (pauliMatrixBasisProdMap b i1 i2 i3)
|
||||||
|
(i.succAbove (j.succAbove k))
|
||||||
(contr i j h (TensorTree.prod (tensorNode (basisVector c b))
|
(contr i j h (TensorTree.prod (tensorNode (basisVector c b))
|
||||||
(constThreeNodeE complexLorentzTensor Color.up Color.upL Color.upR
|
(constThreeNodeE complexLorentzTensor Color.up Color.upL Color.upR
|
||||||
PauliMatrix.asConsTensor))).tensor = (((
|
PauliMatrix.asConsTensor))).tensor = (((
|
||||||
|
@ -215,13 +216,16 @@ lemma basis_contr_pauliMatrix_basis_tree_expand {n : ℕ} {c : Fin n → complex
|
||||||
(tensorNode (basisVector c' (b' 1 0 1))))).add
|
(tensorNode (basisVector c' (b' 1 0 1))))).add
|
||||||
(((TensorTree.smul (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 1 1 0))
|
(((TensorTree.smul (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 1 1 0))
|
||||||
(tensorNode (basisVector c' (b' 1 1 0))))).add
|
(tensorNode (basisVector c' (b' 1 1 0))))).add
|
||||||
((TensorTree.smul (-I) ((TensorTree.smul (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 2 0 1))
|
((TensorTree.smul (-I) ((TensorTree.smul
|
||||||
|
(contrBasisVectorMul i j (pauliMatrixBasisProdMap b 2 0 1))
|
||||||
(tensorNode (basisVector c' (b' 2 0 1)))))).add
|
(tensorNode (basisVector c' (b' 2 0 1)))))).add
|
||||||
((TensorTree.smul I ((TensorTree.smul (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 2 1 0))
|
((TensorTree.smul I ((TensorTree.smul
|
||||||
|
(contrBasisVectorMul i j (pauliMatrixBasisProdMap b 2 1 0))
|
||||||
(tensorNode (basisVector c' (b' 2 1 0)))))).add
|
(tensorNode (basisVector c' (b' 2 1 0)))))).add
|
||||||
(((TensorTree.smul (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 3 0 0))
|
(((TensorTree.smul (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 3 0 0))
|
||||||
(tensorNode (basisVector c' (b' 3 0 0))))).add
|
(tensorNode (basisVector c' (b' 3 0 0))))).add
|
||||||
(TensorTree.smul (-1) ((TensorTree.smul (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 3 1 1)) (tensorNode
|
(TensorTree.smul (-1) ((TensorTree.smul
|
||||||
|
(contrBasisVectorMul i j (pauliMatrixBasisProdMap b 3 1 1)) (tensorNode
|
||||||
(basisVector c' (b' 3 1 1))))))))))))).tensor := by
|
(basisVector c' (b' 3 1 1))))))))))))).tensor := by
|
||||||
rw [basis_contr_pauliMatrix_basis_tree_expand']
|
rw [basis_contr_pauliMatrix_basis_tree_expand']
|
||||||
/- Contracting basis vectors. -/
|
/- Contracting basis vectors. -/
|
||||||
|
@ -243,35 +247,30 @@ lemma basis_contr_pauliMatrix_basis_tree_expand {n : ℕ} {c : Fin n → complex
|
||||||
smul_tensor_eq <| contr_basisVector_tree _]
|
smul_tensor_eq <| contr_basisVector_tree _]
|
||||||
rfl
|
rfl
|
||||||
|
|
||||||
def pauilMatrixBasisContrMap {n : ℕ} {c : Fin n → complexLorentzTensor.C}
|
|
||||||
(i : Fin (n + 3)) (j : Fin (n +2))
|
|
||||||
(b : Π k, Fin (complexLorentzTensor.repDim (c k))) (i1 i2 i3 : Fin 4) :
|
|
||||||
(k : Fin (n + 1)) →
|
|
||||||
Fin
|
|
||||||
(complexLorentzTensor.repDim
|
|
||||||
(Sum.elim c ![Color.up, Color.upL, Color.upR] (finSumFinEquiv.symm (i.succAbove (j.succAbove k))))) :=
|
|
||||||
fun k => (pauliMatrixBasisProdMap b i1 i2 i3) (i.succAbove (j.succAbove k))
|
|
||||||
|
|
||||||
|
|
||||||
lemma basis_contr_pauliMatrix_basis_tree_expand_tensor {n : ℕ} {c : Fin n → complexLorentzTensor.C}
|
lemma basis_contr_pauliMatrix_basis_tree_expand_tensor {n : ℕ} {c : Fin n → complexLorentzTensor.C}
|
||||||
(i : Fin (n + 3)) (j : Fin (n +2))
|
(i : Fin (n + 3)) (j : Fin (n +2))
|
||||||
(h : (pauliMatrixContrMap c) (i.succAbove j) = complexLorentzTensor.τ
|
(h : (pauliMatrixContrMap c) (i.succAbove j) = complexLorentzTensor.τ
|
||||||
((pauliMatrixContrMap c) i))
|
((pauliMatrixContrMap c) i))
|
||||||
(b : Π k, Fin (complexLorentzTensor.repDim (c k))) :
|
(b : Π k, Fin (complexLorentzTensor.repDim (c k))) :
|
||||||
let c' := (Sum.elim c ![Color.up, Color.upL, Color.upR] ∘ finSumFinEquiv.symm)
|
|
||||||
∘ Fin.succAbove i ∘ Fin.succAbove j
|
|
||||||
let b' (i1 i2 i3 : Fin 4) := fun k => (pauliMatrixBasisProdMap b i1 i2 i3) (i.succAbove (j.succAbove k))
|
|
||||||
(contr i j h (TensorTree.prod (tensorNode (basisVector c b))
|
(contr i j h (TensorTree.prod (tensorNode (basisVector c b))
|
||||||
(constThreeNodeE complexLorentzTensor Color.up Color.upL Color.upR
|
(constThreeNodeE complexLorentzTensor Color.up Color.upL Color.upR
|
||||||
PauliMatrix.asConsTensor))).tensor =
|
PauliMatrix.asConsTensor))).tensor =
|
||||||
(contrBasisVectorMul i j (pauliMatrixBasisProdMap b 0 0 0)) • (basisVectorContrPauli i j b 0 0 0)
|
(contrBasisVectorMul i j (pauliMatrixBasisProdMap b 0 0 0)) •
|
||||||
+ (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 0 1 1)) • (basisVectorContrPauli i j b 0 1 1)
|
(basisVectorContrPauli i j b 0 0 0)
|
||||||
+ (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 1 0 1)) • (basisVectorContrPauli i j b 1 0 1)
|
+ (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 0 1 1)) •
|
||||||
+ (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 1 1 0)) • (basisVectorContrPauli i j b 1 1 0)
|
(basisVectorContrPauli i j b 0 1 1)
|
||||||
+ (-I) • (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 2 0 1)) • (basisVectorContrPauli i j b 2 0 1)
|
+ (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 1 0 1)) •
|
||||||
+ I • (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 2 1 0)) • (basisVectorContrPauli i j b 2 1 0)
|
(basisVectorContrPauli i j b 1 0 1)
|
||||||
+ (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 3 0 0)) • (basisVectorContrPauli i j b 3 0 0)
|
+ (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 1 1 0)) •
|
||||||
+ (-1 : ℂ) • (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 3 1 1)) • (basisVectorContrPauli i j b 3 1 1) := by
|
(basisVectorContrPauli i j b 1 1 0)
|
||||||
|
+ (-I) • (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 2 0 1)) •
|
||||||
|
(basisVectorContrPauli i j b 2 0 1)
|
||||||
|
+ I • (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 2 1 0)) •
|
||||||
|
(basisVectorContrPauli i j b 2 1 0)
|
||||||
|
+ (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 3 0 0)) •
|
||||||
|
(basisVectorContrPauli i j b 3 0 0)
|
||||||
|
+ (-1 : ℂ) • (contrBasisVectorMul i j (pauliMatrixBasisProdMap b 3 1 1)) •
|
||||||
|
(basisVectorContrPauli i j b 3 1 1) := by
|
||||||
rw [basis_contr_pauliMatrix_basis_tree_expand]
|
rw [basis_contr_pauliMatrix_basis_tree_expand]
|
||||||
simp only [Nat.succ_eq_add_one, Nat.reduceAdd, Fin.isValue, cons_val_one, head_cons, Fin.val_zero,
|
simp only [Nat.succ_eq_add_one, Nat.reduceAdd, Fin.isValue, cons_val_one, head_cons, Fin.val_zero,
|
||||||
Nat.cast_zero, cons_val_two, Fin.val_one, Nat.cast_one, add_tensor, smul_tensor,
|
Nat.cast_zero, cons_val_two, Fin.val_one, Nat.cast_one, add_tensor, smul_tensor,
|
||||||
|
@ -279,8 +278,6 @@ lemma basis_contr_pauliMatrix_basis_tree_expand_tensor {n : ℕ} {c : Fin n →
|
||||||
simp_all only [Function.comp_apply, Nat.succ_eq_add_one, Nat.reduceAdd, Fin.isValue]
|
simp_all only [Function.comp_apply, Nat.succ_eq_add_one, Nat.reduceAdd, Fin.isValue]
|
||||||
rfl
|
rfl
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
end complexLorentzTensor
|
end complexLorentzTensor
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
@ -76,7 +76,7 @@ lemma pauliMatrix_contr_down_0 :
|
||||||
fin_cases k <;> rfl
|
fin_cases k <;> rfl
|
||||||
|
|
||||||
lemma pauliMatrix_contr_down_1 :
|
lemma pauliMatrix_contr_down_1 :
|
||||||
{(basisVector ![Color.down, Color.down] fun x => 1) | ν μ ⊗
|
{(basisVector ![Color.down, Color.down] fun x => 1) | ν μ ⊗
|
||||||
PauliMatrix.asConsTensor | μ α β}ᵀ.tensor
|
PauliMatrix.asConsTensor | μ α β}ᵀ.tensor
|
||||||
= basisVector pauliCoMap (fun | 0 => 1 | 1 => 0 | 2 => 1)
|
= basisVector pauliCoMap (fun | 0 => 1 | 1 => 0 | 2 => 1)
|
||||||
+ basisVector pauliCoMap (fun | 0 => 1 | 1 => 1 | 2 => 0) := by
|
+ basisVector pauliCoMap (fun | 0 => 1 | 1 => 1 | 2 => 0) := by
|
||||||
|
@ -268,7 +268,6 @@ lemma pauliCo_basis_expand : pauliCo
|
||||||
simp only [neg_smul, one_smul]
|
simp only [neg_smul, one_smul]
|
||||||
abel
|
abel
|
||||||
|
|
||||||
|
|
||||||
lemma pauliCo_basis_expand_tree : pauliCo
|
lemma pauliCo_basis_expand_tree : pauliCo
|
||||||
= (TensorTree.add (tensorNode
|
= (TensorTree.add (tensorNode
|
||||||
(basisVector pauliCoMap (fun | 0 => 0 | 1 => 0 | 2 => 0))) <|
|
(basisVector pauliCoMap (fun | 0 => 0 | 1 => 0 | 2 => 0))) <|
|
||||||
|
|
|
@ -791,11 +791,11 @@ def zeroTree {n : ℕ} {c : Fin n → S.C} : TensorTree S c := tensorNode 0
|
||||||
lemma zeroTree_tensor {n : ℕ} {c : Fin n → S.C} : (zeroTree (c := c)).tensor = 0 := by
|
lemma zeroTree_tensor {n : ℕ} {c : Fin n → S.C} : (zeroTree (c := c)).tensor = 0 := by
|
||||||
rfl
|
rfl
|
||||||
|
|
||||||
lemma zero_smul {T1 : TensorTree S c} :
|
lemma zero_smul {T1 : TensorTree S c} :
|
||||||
(smul 0 T1).tensor = zeroTree.tensor := by
|
(smul 0 T1).tensor = zeroTree.tensor := by
|
||||||
simp only [smul_tensor, _root_.zero_smul, zeroTree_tensor]
|
simp only [smul_tensor, _root_.zero_smul, zeroTree_tensor]
|
||||||
|
|
||||||
lemma smul_zero {a : S.k} : (smul a (zeroTree (c :=c ))).tensor = zeroTree.tensor := by
|
lemma smul_zero {a : S.k} : (smul a (zeroTree (c := c))).tensor = zeroTree.tensor := by
|
||||||
simp only [smul_tensor, zeroTree_tensor, _root_.smul_zero]
|
simp only [smul_tensor, zeroTree_tensor, _root_.smul_zero]
|
||||||
|
|
||||||
lemma zero_add {T1 : TensorTree S c} : (add zeroTree T1).tensor = T1.tensor := by
|
lemma zero_add {T1 : TensorTree S c} : (add zeroTree T1).tensor = T1.tensor := by
|
||||||
|
@ -808,11 +808,11 @@ lemma perm_zero {n m : ℕ} {c : Fin n → S.C} {c1 : Fin m → S.C} (σ : (Over
|
||||||
(OverColor.mk c1)) : (perm σ zeroTree).tensor = zeroTree.tensor := by
|
(OverColor.mk c1)) : (perm σ zeroTree).tensor = zeroTree.tensor := by
|
||||||
simp only [perm_tensor, zeroTree_tensor, map_zero]
|
simp only [perm_tensor, zeroTree_tensor, map_zero]
|
||||||
|
|
||||||
lemma neg_zero : (neg (zeroTree (c := c))).tensor = zeroTree.tensor := by
|
lemma neg_zero : (neg (zeroTree (c := c))).tensor = zeroTree.tensor := by
|
||||||
simp only [neg_tensor, zeroTree_tensor, _root_.neg_zero]
|
simp only [neg_tensor, zeroTree_tensor, _root_.neg_zero]
|
||||||
|
|
||||||
lemma contr_zero {n : ℕ} {c : Fin n.succ.succ → S.C} {i : Fin n.succ.succ} {j : Fin n.succ}
|
lemma contr_zero {n : ℕ} {c : Fin n.succ.succ → S.C} {i : Fin n.succ.succ} {j : Fin n.succ}
|
||||||
{h : c (i.succAbove j) = S.τ (c i)} : (contr i j h zeroTree).tensor = zeroTree.tensor := by
|
{h : c (i.succAbove j) = S.τ (c i)} : (contr i j h zeroTree).tensor = zeroTree.tensor := by
|
||||||
simp only [contr_tensor, zeroTree_tensor, map_zero]
|
simp only [contr_tensor, zeroTree_tensor, map_zero]
|
||||||
|
|
||||||
lemma zero_prod {n m : ℕ} {c : Fin n → S.C} {c1 : Fin m → S.C} (t : TensorTree S c1) :
|
lemma zero_prod {n m : ℕ} {c : Fin n → S.C} {c1 : Fin m → S.C} (t : TensorTree S c1) :
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue