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.QFT.PerturbationTheory.FieldOpFreeAlgebra.NormalOrder
public import Physlib.QFT.PerturbationTheory.WickAlgebra.BasicNormal Ordering on Field operator algebra
@[expose] public sectionNormal order on super-commutators.
The main result of this is
ฮน_normalOrderF_superCommuteF_eq_zero_mul
which states that applying ฮน to the normal order of something containing a super-commutator
is zero.
inr.inr ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOphฯa:๐|>แถฯa = CreateAnnihilate.annihilatehฯa':๐|>แถฯa' = CreateAnnihilate.annihilateโข normalOrderSign (ฯs ++ ฯa' :: ฯa :: ฯs') โข
(ฮน (ofCrAnListF (createFilter (ฯs ++ ฯs'))) * ฮน (ofCrAnListF (annihilateFilter ฯs)) * 0 *
ฮน (ofCrAnListF (annihilateFilter ฯs'))) =
0
simp All goals completed! ๐
lemma ฮน_normalOrderF_superCommuteF_ofCrAnListF_eq_zero
(ฯa ฯa' : ๐.CrAnFieldOp) (ฯs : List ๐.CrAnFieldOp)
(a : ๐.FieldOpFreeAlgebra) :
ฮน ๐แถ (ofCrAnListF ฯs * [ofCrAnOpF ฯa, ofCrAnOpF ฯa']โF * a) = 0 := by ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (ofCrAnListF ฯs * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * a)) = 0
have hf : ฮน.toLinearMap โโ normalOrderF โโ
mulLinearMap (ofCrAnListF ฯs * [ofCrAnOpF ฯa, ofCrAnOpF ฯa']โF) = 0 := by
apply ofCrAnListFBasis.ext ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebraโข โ (i : List ๐.CrAnFieldOp),
(ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap (ofCrAnListF ฯs * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa')))
(ofCrAnListFBasis i) =
0 (ofCrAnListFBasis i) ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap (ofCrAnListF ฯs * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa')) = 0โข ฮน (normalOrderF (ofCrAnListF ฯs * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * a)) = 0
intro l ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebral:List ๐.CrAnFieldOpโข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap (ofCrAnListF ฯs * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa')))
(ofCrAnListFBasis l) =
0 (ofCrAnListFBasis l) ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap (ofCrAnListF ฯs * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa')) = 0โข ฮน (normalOrderF (ofCrAnListF ฯs * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * a)) = 0
simp only [FieldOpFreeAlgebra.ofListBasis_eq_ofList, LinearMap.coe_comp, Function.comp_apply,
AlgHom.toLinearMap_apply, LinearMap.zero_apply] ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebral:List ๐.CrAnFieldOpโข ฮน (normalOrderF ((mulLinearMap (ofCrAnListF ฯs * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa'))) (ofCrAnListF l))) = 0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap (ofCrAnListF ฯs * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa')) = 0โข ฮน (normalOrderF (ofCrAnListF ฯs * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * a)) = 0
exact ฮน_normalOrderF_superCommuteF_ofCrAnListF_ofCrAnListF_eq_zero ฯa ฯa' ฯs l ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap (ofCrAnListF ฯs * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa')) = 0โข ฮน (normalOrderF (ofCrAnListF ฯs * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * a)) = 0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap (ofCrAnListF ฯs * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa')) = 0โข ฮน (normalOrderF (ofCrAnListF ฯs * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * a)) = 0
change (ฮน.toLinearMap โโ normalOrderF โโ
mulLinearMap ((ofCrAnListF ฯs * [ofCrAnOpF ฯa, ofCrAnOpF ฯa']โF))) a = 0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap (ofCrAnListF ฯs * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa')) = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap (ofCrAnListF ฯs * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa'))) a = 0
rw [hf ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap (ofCrAnListF ฯs * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa')) = 0โข 0 a = 0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap (ofCrAnListF ฯs * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa')) = 0โข 0 a = 0] ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap (ofCrAnListF ฯs * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa')) = 0โข 0 a = 0
simp All goals completed! ๐
lemma ฮน_normalOrderF_superCommuteF_ofCrAnOpF_eq_zero_mul (ฯa ฯa' : ๐.CrAnFieldOp)
(a b : ๐.FieldOpFreeAlgebra) :
ฮน ๐แถ (a * [ofCrAnOpF ฯa, ofCrAnOpF ฯa']โF * b) = 0 := by ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b)) = 0
rw [mul_assoc ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b))) = 0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b))) = 0] ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b))) = 0
change (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip
([ofCrAnOpF ฯa, ofCrAnOpF ฯa']โF * b)) a = 0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b)) a = 0
have hf : ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip
([ofCrAnOpF ฯa, ofCrAnOpF ฯa']โF * b) = 0 := by ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b)) = 0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b) = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b)) a = 0
apply ofCrAnListFBasis.ext ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข โ (i : List ๐.CrAnFieldOp),
(ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b))
(ofCrAnListFBasis i) =
0 (ofCrAnListFBasis i) ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b) = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b)) a = 0
intro l ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebral:List ๐.CrAnFieldOpโข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b))
(ofCrAnListFBasis l) =
0 (ofCrAnListFBasis l) ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b) = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b)) a = 0
simp only [mulLinearMap, FieldOpFreeAlgebra.ofListBasis_eq_ofList, LinearMap.coe_comp,
Function.comp_apply, LinearMap.flip_apply, LinearMap.coe_mk, AddHom.coe_mk,
AlgHom.toLinearMap_apply, LinearMap.zero_apply] ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebral:List ๐.CrAnFieldOpโข ฮน (normalOrderF (ofCrAnListF l * ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b))) = 0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b) = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b)) a = 0
rw [โ mul_assoc ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebral:List ๐.CrAnFieldOpโข ฮน (normalOrderF (ofCrAnListF l * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b)) = 0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebral:List ๐.CrAnFieldOpโข ฮน (normalOrderF (ofCrAnListF l * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b)) = 0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b) = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b)) a = 0] ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebral:List ๐.CrAnFieldOpโข ฮน (normalOrderF (ofCrAnListF l * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b)) = 0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b) = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b)) a = 0
exact ฮน_normalOrderF_superCommuteF_ofCrAnListF_eq_zero ฯa ฯa' _ _ ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b) = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b)) a = 0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b) = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b)) a = 0
rw [hf ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b) = 0โข 0 a = 0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b) = 0โข 0 a = 0] ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b) = 0โข 0 a = 0
simp All goals completed! ๐
lemma ฮน_normalOrderF_superCommuteF_ofCrAnOpF_ofCrAnListF_eq_zero_mul (ฯa : ๐.CrAnFieldOp)
(ฯs : List ๐.CrAnFieldOp) (a b : ๐.FieldOpFreeAlgebra) :
ฮน ๐แถ (a * [ofCrAnOpF ฯa, ofCrAnListF ฯs]โF * b) = 0 := by ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnListF ฯs) * b)) = 0
rw [โ ofCrAnListF_singleton, ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * (superCommuteF (ofCrAnListF [ฯa])) (ofCrAnListF ฯs) * b)) = 0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
((a *
โ n,
(exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โn) ฯs)) โข
ofCrAnListF (List.take (โn) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get n)) *
ofCrAnListF (List.drop (โn + 1) ฯs)) *
b)) =
0 superCommuteF_ofCrAnListF_ofCrAnListF_eq_sum ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
((a *
โ n,
(exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โn) ฯs)) โข
ofCrAnListF (List.take (โn) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get n)) *
ofCrAnListF (List.drop (โn + 1) ฯs)) *
b)) =
0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
((a *
โ n,
(exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โn) ฯs)) โข
ofCrAnListF (List.take (โn) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get n)) *
ofCrAnListF (List.drop (โn + 1) ฯs)) *
b)) =
0] ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
((a *
โ n,
(exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โn) ฯs)) โข
ofCrAnListF (List.take (โn) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get n)) *
ofCrAnListF (List.drop (โn + 1) ฯs)) *
b)) =
0
rw [Finset.mul_sum, ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
((โ i,
a *
((exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โi) ฯs)) โข
ofCrAnListF (List.take (โi) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get i)) *
ofCrAnListF (List.drop (โi + 1) ฯs))) *
b)) =
0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
(โ i,
a *
((exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โi) ฯs)) โข
ofCrAnListF (List.take (โi) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get i)) *
ofCrAnListF (List.drop (โi + 1) ฯs)) *
b)) =
0 Finset.sum_mul ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
(โ i,
a *
((exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โi) ฯs)) โข
ofCrAnListF (List.take (โi) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get i)) *
ofCrAnListF (List.drop (โi + 1) ฯs)) *
b)) =
0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
(โ i,
a *
((exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โi) ฯs)) โข
ofCrAnListF (List.take (โi) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get i)) *
ofCrAnListF (List.drop (โi + 1) ฯs)) *
b)) =
0] ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
(โ i,
a *
((exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โi) ฯs)) โข
ofCrAnListF (List.take (โi) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get i)) *
ofCrAnListF (List.drop (โi + 1) ฯs)) *
b)) =
0
rw [map_sum, ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(โ x,
normalOrderF
(a *
((exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โx) ฯs)) โข
ofCrAnListF (List.take (โx) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get x)) *
ofCrAnListF (List.drop (โx + 1) ฯs)) *
b)) =
0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข โ x,
ฮน
(normalOrderF
(a *
((exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โx) ฯs)) โข
ofCrAnListF (List.take (โx) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get x)) *
ofCrAnListF (List.drop (โx + 1) ฯs)) *
b)) =
0 map_sum ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข โ x,
ฮน
(normalOrderF
(a *
((exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โx) ฯs)) โข
ofCrAnListF (List.take (โx) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get x)) *
ofCrAnListF (List.drop (โx + 1) ฯs)) *
b)) =
0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข โ x,
ฮน
(normalOrderF
(a *
((exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โx) ฯs)) โข
ofCrAnListF (List.take (โx) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get x)) *
ofCrAnListF (List.drop (โx + 1) ฯs)) *
b)) =
0] ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข โ x,
ฮน
(normalOrderF
(a *
((exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โx) ฯs)) โข
ofCrAnListF (List.take (โx) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get x)) *
ofCrAnListF (List.drop (โx + 1) ฯs)) *
b)) =
0
apply Fintype.sum_eq_zero ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข โ (a_1 : Fin ฯs.length),
ฮน
(normalOrderF
(a *
((exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โa_1) ฯs)) โข
ofCrAnListF (List.take (โa_1) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get a_1)) *
ofCrAnListF (List.drop (โa_1 + 1) ฯs)) *
b)) =
0
intro n ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs.lengthโข ฮน
(normalOrderF
(a *
((exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โn) ฯs)) โข
ofCrAnListF (List.take (โn) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get n)) *
ofCrAnListF (List.drop (โn + 1) ฯs)) *
b)) =
0
rw [โ mul_assoc, ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs.lengthโข ฮน
(normalOrderF
(a *
((exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โn) ฯs)) โข
ofCrAnListF (List.take (โn) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get n))) *
ofCrAnListF (List.drop (โn + 1) ฯs) *
b)) =
0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs.lengthโข ฮน
(normalOrderF
(a *
(exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โn) ฯs)) โข
ofCrAnListF (List.take (โn) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get n)) *
ofCrAnListF (List.drop (โn + 1) ฯs) *
b)) =
0 โ mul_assoc ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs.lengthโข ฮน
(normalOrderF
(a *
(exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โn) ฯs)) โข
ofCrAnListF (List.take (โn) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get n)) *
ofCrAnListF (List.drop (โn + 1) ฯs) *
b)) =
0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs.lengthโข ฮน
(normalOrderF
(a *
(exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โn) ฯs)) โข
ofCrAnListF (List.take (โn) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get n)) *
ofCrAnListF (List.drop (โn + 1) ฯs) *
b)) =
0] ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs.lengthโข ฮน
(normalOrderF
(a *
(exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โn) ฯs)) โข
ofCrAnListF (List.take (โn) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get n)) *
ofCrAnListF (List.drop (โn + 1) ฯs) *
b)) =
0
rw [mul_assoc _ _ b, ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs.lengthโข ฮน
(normalOrderF
(a *
(exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โn) ฯs)) โข
ofCrAnListF (List.take (โn) ฯs) *
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnOpF (ฯs.get n)) *
(ofCrAnListF (List.drop (โn + 1) ฯs) * b))) =
0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs.lengthโข ฮน
(normalOrderF
(a *
(exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โn) ฯs)) โข
ofCrAnListF (List.take (โn) ฯs) *
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF (ฯs.get n)) *
(ofCrAnListF (List.drop (โn + 1) ฯs) * b))) =
0 ofCrAnListF_singleton ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs.lengthโข ฮน
(normalOrderF
(a *
(exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โn) ฯs)) โข
ofCrAnListF (List.take (โn) ฯs) *
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF (ฯs.get n)) *
(ofCrAnListF (List.drop (โn + 1) ฯs) * b))) =
0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs.lengthโข ฮน
(normalOrderF
(a *
(exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โn) ฯs)) โข
ofCrAnListF (List.take (โn) ฯs) *
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF (ฯs.get n)) *
(ofCrAnListF (List.drop (โn + 1) ฯs) * b))) =
0] ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs.lengthโข ฮน
(normalOrderF
(a *
(exchangeSign (ofList ๐.crAnStatistics [ฯa])) (ofList ๐.crAnStatistics (List.take (โn) ฯs)) โข
ofCrAnListF (List.take (โn) ฯs) *
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF (ฯs.get n)) *
(ofCrAnListF (List.drop (โn + 1) ฯs) * b))) =
0
rw [ฮน_normalOrderF_superCommuteF_ofCrAnOpF_eq_zero_mul ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs.lengthโข 0 = 0 All goals completed! ๐] All goals completed! ๐
lemma ฮน_normalOrderF_superCommuteF_ofCrAnListF_ofCrAnOpF_eq_zero_mul (ฯa : ๐.CrAnFieldOp)
(ฯs : List ๐.CrAnFieldOp) (a b : ๐.FieldOpFreeAlgebra) :
ฮน ๐แถ (a * [ofCrAnListF ฯs, ofCrAnOpF ฯa]โF * b) = 0 := by ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * (superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF ฯa) * b)) = 0
rw [โ ofCrAnListF_singleton, ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * (superCommuteF (ofCrAnListF ฯs)) (ofCrAnListF [ฯa]) * b)) = 0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
(a *
-(exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics [ฯa]) โข
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnListF ฯs) *
b)) =
0 superCommuteF_ofCrAnListF_ofCrAnListF_symm, ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
(a *
-(exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics [ฯa]) โข
(superCommuteF (ofCrAnListF [ฯa])) (ofCrAnListF ฯs) *
b)) =
0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
(a *
-(exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics [ฯa]) โข
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnListF ฯs) *
b)) =
0 ofCrAnListF_singleton ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
(a *
-(exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics [ฯa]) โข
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnListF ฯs) *
b)) =
0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
(a *
-(exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics [ฯa]) โข
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnListF ฯs) *
b)) =
0] ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
(a *
-(exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics [ฯa]) โข
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnListF ฯs) *
b)) =
0
simp only [ofList_singleton, Algebra.mul_smul_comm, Algebra.smul_mul_assoc,
map_smul] ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข -(exchangeSign (ofList ๐.crAnStatistics ฯs)) (๐.crAnStatistics ฯa) โข
ฮน (normalOrderF (a * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnListF ฯs) * b)) =
0
rw [ฮน_normalOrderF_superCommuteF_ofCrAnOpF_ofCrAnListF_eq_zero_mul ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข -(exchangeSign (ofList ๐.crAnStatistics ฯs)) (๐.crAnStatistics ฯa) โข 0 = 0 ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข -(exchangeSign (ofList ๐.crAnStatistics ฯs)) (๐.crAnStatistics ฯa) โข 0 = 0] ๐:FieldSpecificationฯa:๐.CrAnFieldOpฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข -(exchangeSign (ofList ๐.crAnStatistics ฯs)) (๐.crAnStatistics ฯa) โข 0 = 0
simp All goals completed! ๐
lemma ฮน_normalOrderF_superCommuteF_ofCrAnListF_ofCrAnListF_eq_zero_mul
(ฯs ฯs' : List ๐.CrAnFieldOp) (a b : ๐.FieldOpFreeAlgebra) :
ฮน ๐แถ (a * [ofCrAnListF ฯs, ofCrAnListF ฯs']โF * b) = 0 := by ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * (superCommuteF (ofCrAnListF ฯs)) (ofCrAnListF ฯs') * b)) = 0
rw [superCommuteF_ofCrAnListF_ofCrAnListF_eq_sum, ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
((a *
โ n,
(exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โn) ฯs')) โข
ofCrAnListF (List.take (โn) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get n)) *
ofCrAnListF (List.drop (โn + 1) ฯs')) *
b)) =
0 ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
(โ i,
a *
((exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โi) ฯs')) โข
ofCrAnListF (List.take (โi) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get i)) *
ofCrAnListF (List.drop (โi + 1) ฯs')) *
b)) =
0 Finset.mul_sum, ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
((โ i,
a *
((exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โi) ฯs')) โข
ofCrAnListF (List.take (โi) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get i)) *
ofCrAnListF (List.drop (โi + 1) ฯs'))) *
b)) =
0 ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
(โ i,
a *
((exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โi) ฯs')) โข
ofCrAnListF (List.take (โi) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get i)) *
ofCrAnListF (List.drop (โi + 1) ฯs')) *
b)) =
0 Finset.sum_mul ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
(โ i,
a *
((exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โi) ฯs')) โข
ofCrAnListF (List.take (โi) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get i)) *
ofCrAnListF (List.drop (โi + 1) ฯs')) *
b)) =
0 ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
(โ i,
a *
((exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โi) ฯs')) โข
ofCrAnListF (List.take (โi) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get i)) *
ofCrAnListF (List.drop (โi + 1) ฯs')) *
b)) =
0] ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(normalOrderF
(โ i,
a *
((exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โi) ฯs')) โข
ofCrAnListF (List.take (โi) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get i)) *
ofCrAnListF (List.drop (โi + 1) ฯs')) *
b)) =
0
rw [map_sum, ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข ฮน
(โ x,
normalOrderF
(a *
((exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โx) ฯs')) โข
ofCrAnListF (List.take (โx) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get x)) *
ofCrAnListF (List.drop (โx + 1) ฯs')) *
b)) =
0 ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข โ x,
ฮน
(normalOrderF
(a *
((exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โx) ฯs')) โข
ofCrAnListF (List.take (โx) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get x)) *
ofCrAnListF (List.drop (โx + 1) ฯs')) *
b)) =
0 map_sum ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข โ x,
ฮน
(normalOrderF
(a *
((exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โx) ฯs')) โข
ofCrAnListF (List.take (โx) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get x)) *
ofCrAnListF (List.drop (โx + 1) ฯs')) *
b)) =
0 ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข โ x,
ฮน
(normalOrderF
(a *
((exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โx) ฯs')) โข
ofCrAnListF (List.take (โx) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get x)) *
ofCrAnListF (List.drop (โx + 1) ฯs')) *
b)) =
0] ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข โ x,
ฮน
(normalOrderF
(a *
((exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โx) ฯs')) โข
ofCrAnListF (List.take (โx) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get x)) *
ofCrAnListF (List.drop (โx + 1) ฯs')) *
b)) =
0
apply Fintype.sum_eq_zero ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebraโข โ (a_1 : Fin ฯs'.length),
ฮน
(normalOrderF
(a *
((exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โa_1) ฯs')) โข
ofCrAnListF (List.take (โa_1) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get a_1)) *
ofCrAnListF (List.drop (โa_1 + 1) ฯs')) *
b)) =
0
intro n ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs'.lengthโข ฮน
(normalOrderF
(a *
((exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โn) ฯs')) โข
ofCrAnListF (List.take (โn) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get n)) *
ofCrAnListF (List.drop (โn + 1) ฯs')) *
b)) =
0
rw [โ mul_assoc, ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs'.lengthโข ฮน
(normalOrderF
(a *
((exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โn) ฯs')) โข
ofCrAnListF (List.take (โn) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get n))) *
ofCrAnListF (List.drop (โn + 1) ฯs') *
b)) =
0 ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs'.lengthโข ฮน
(normalOrderF
(a *
(exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โn) ฯs')) โข
ofCrAnListF (List.take (โn) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get n)) *
ofCrAnListF (List.drop (โn + 1) ฯs') *
b)) =
0 โ mul_assoc ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs'.lengthโข ฮน
(normalOrderF
(a *
(exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โn) ฯs')) โข
ofCrAnListF (List.take (โn) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get n)) *
ofCrAnListF (List.drop (โn + 1) ฯs') *
b)) =
0 ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs'.lengthโข ฮน
(normalOrderF
(a *
(exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โn) ฯs')) โข
ofCrAnListF (List.take (โn) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get n)) *
ofCrAnListF (List.drop (โn + 1) ฯs') *
b)) =
0] ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs'.lengthโข ฮน
(normalOrderF
(a *
(exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โn) ฯs')) โข
ofCrAnListF (List.take (โn) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get n)) *
ofCrAnListF (List.drop (โn + 1) ฯs') *
b)) =
0
rw [mul_assoc _ _ b ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs'.lengthโข ฮน
(normalOrderF
(a *
(exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โn) ฯs')) โข
ofCrAnListF (List.take (โn) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get n)) *
(ofCrAnListF (List.drop (โn + 1) ฯs') * b))) =
0 ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs'.lengthโข ฮน
(normalOrderF
(a *
(exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โn) ฯs')) โข
ofCrAnListF (List.take (โn) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get n)) *
(ofCrAnListF (List.drop (โn + 1) ฯs') * b))) =
0] ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs'.lengthโข ฮน
(normalOrderF
(a *
(exchangeSign (ofList ๐.crAnStatistics ฯs)) (ofList ๐.crAnStatistics (List.take (โn) ฯs')) โข
ofCrAnListF (List.take (โn) ฯs') *
(superCommuteF (ofCrAnListF ฯs)) (ofCrAnOpF (ฯs'.get n)) *
(ofCrAnListF (List.drop (โn + 1) ฯs') * b))) =
0
rw [ฮน_normalOrderF_superCommuteF_ofCrAnListF_ofCrAnOpF_eq_zero_mul ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpฯs':List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebran:Fin ฯs'.lengthโข 0 = 0 All goals completed! ๐] All goals completed! ๐
lemma ฮน_normalOrderF_superCommuteF_ofCrAnListF_eq_zero_mul
(ฯs : List ๐.CrAnFieldOp)
(a b c : ๐.FieldOpFreeAlgebra) :
ฮน ๐แถ (a * [ofCrAnListF ฯs, c]โF * b) = 0 := by ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * (superCommuteF (ofCrAnListF ฯs)) c * b)) = 0
change (ฮน.toLinearMap โโ normalOrderF โโ
mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs)) c = 0 ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebraโข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs)) c = 0
have hf : (ฮน.toLinearMap โโ normalOrderF โโ
mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs)) = 0 := by ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * (superCommuteF (ofCrAnListF ฯs)) c * b)) = 0 ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs) = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs)) c = 0
apply ofCrAnListFBasis.ext ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebraโข โ (i : List ๐.CrAnFieldOp),
(ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs))
(ofCrAnListFBasis i) =
0 (ofCrAnListFBasis i) ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs) = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs)) c = 0
intro ฯs' ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebraฯs':List ๐.CrAnFieldOpโข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs))
(ofCrAnListFBasis ฯs') =
0 (ofCrAnListFBasis ฯs') ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs) = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs)) c = 0
simp only [mulLinearMap, LinearMap.coe_mk, AddHom.coe_mk, ofListBasis_eq_ofList,
LinearMap.coe_comp, Function.comp_apply, LinearMap.flip_apply, AlgHom.toLinearMap_apply,
LinearMap.zero_apply] ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebraฯs':List ๐.CrAnFieldOpโข ฮน (normalOrderF (a * (superCommuteF (ofCrAnListF ฯs)) (ofCrAnListF ฯs') * b)) = 0 ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs) = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs)) c = 0
rw [ฮน_normalOrderF_superCommuteF_ofCrAnListF_ofCrAnListF_eq_zero_mul ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebraฯs':List ๐.CrAnFieldOpโข 0 = 0 ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs) = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs)) c = 0] ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs) = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs)) c = 0 ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs) = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs)) c = 0
rw [hf ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs) = 0โข 0 c = 0 ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs) = 0โข 0 c = 0] ๐:FieldSpecificationฯs:List ๐.CrAnFieldOpa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF (ofCrAnListF ฯs) = 0โข 0 c = 0
simp All goals completed! ๐
@[simp]
lemma ฮน_normalOrderF_superCommuteF_eq_zero_mul
(a b c d : ๐.FieldOpFreeAlgebra) : ฮน ๐แถ (a * [d, c]โF * b) = 0 := by ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * (superCommuteF d) c * b)) = 0
change (ฮน.toLinearMap โโ normalOrderF โโ
mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c) d = 0 ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c) d = 0
have hf : (ฮน.toLinearMap โโ normalOrderF โโ
mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c) = 0 := by ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * (superCommuteF d) c * b)) = 0 ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c) d = 0
apply ofCrAnListFBasis.ext ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข โ (i : List ๐.CrAnFieldOp),
(ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c)
(ofCrAnListFBasis i) =
0 (ofCrAnListFBasis i) ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c) d = 0
intro ฯs ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraฯs:List ๐.CrAnFieldOpโข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c) (ofCrAnListFBasis ฯs) =
0 (ofCrAnListFBasis ฯs) ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c) d = 0
simp only [mulLinearMap, LinearMap.coe_mk, AddHom.coe_mk, ofListBasis_eq_ofList,
LinearMap.coe_comp, Function.comp_apply, LinearMap.flip_apply, AlgHom.toLinearMap_apply,
LinearMap.zero_apply] ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraฯs:List ๐.CrAnFieldOpโข ฮน (normalOrderF (a * (superCommuteF (ofCrAnListF ฯs)) c * b)) = 0 ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c) d = 0
rw [ฮน_normalOrderF_superCommuteF_ofCrAnListF_eq_zero_mul ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraฯs:List ๐.CrAnFieldOpโข 0 = 0 ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c) d = 0] ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c) d = 0 ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c = 0โข (ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c) d = 0
rw [hf ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c = 0โข 0 d = 0 ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c = 0โข 0 d = 0] ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebrahf:ฮน.toLinearMap โโ normalOrderF โโ mulLinearMap.flip b โโ mulLinearMap a โโ superCommuteF.flip c = 0โข 0 d = 0
simp All goals completed! ๐
@[simp]
lemma ฮน_normalOrder_superCommuteF_eq_zero_mul_right (b c d : ๐.FieldOpFreeAlgebra) :
ฮน ๐แถ ([d, c]โF * b) = 0 := by ๐:FieldSpecificationb:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF ((superCommuteF d) c * b)) = 0
rw [โ ฮน_normalOrderF_superCommuteF_eq_zero_mul 1 b c d ๐:FieldSpecificationb:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF ((superCommuteF d) c * b)) = ฮน (normalOrderF (1 * (superCommuteF d) c * b)) ๐:FieldSpecificationb:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF ((superCommuteF d) c * b)) = ฮน (normalOrderF (1 * (superCommuteF d) c * b))] ๐:FieldSpecificationb:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF ((superCommuteF d) c * b)) = ฮน (normalOrderF (1 * (superCommuteF d) c * b))
simp All goals completed! ๐
@[simp]
lemma ฮน_normalOrderF_superCommuteF_eq_zero_mul_left (a c d : ๐.FieldOpFreeAlgebra) :
ฮน ๐แถ (a * [d, c]โF) = 0 := by ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * (superCommuteF d) c)) = 0
rw [โ ฮน_normalOrderF_superCommuteF_eq_zero_mul a 1 c d ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * (superCommuteF d) c)) = ฮน (normalOrderF (a * (superCommuteF d) c * 1)) ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * (superCommuteF d) c)) = ฮน (normalOrderF (a * (superCommuteF d) c * 1))] ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * (superCommuteF d) c)) = ฮน (normalOrderF (a * (superCommuteF d) c * 1))
simp All goals completed! ๐
@[simp]
lemma ฮน_normalOrderF_superCommuteF_eq_zero_mul_mul_right (a b1 b2 c d: ๐.FieldOpFreeAlgebra) :
ฮน ๐แถ (a * [d, c]โF * b1 * b2) = 0 := by ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab1:๐.FieldOpFreeAlgebrab2:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * (superCommuteF d) c * b1 * b2)) = 0
rw [โ ฮน_normalOrderF_superCommuteF_eq_zero_mul a (b1 * b2) c d ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab1:๐.FieldOpFreeAlgebrab2:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * (superCommuteF d) c * b1 * b2)) = ฮน (normalOrderF (a * (superCommuteF d) c * (b1 * b2))) ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab1:๐.FieldOpFreeAlgebrab2:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * (superCommuteF d) c * b1 * b2)) = ฮน (normalOrderF (a * (superCommuteF d) c * (b1 * b2)))] ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab1:๐.FieldOpFreeAlgebrab2:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF (a * (superCommuteF d) c * b1 * b2)) = ฮน (normalOrderF (a * (superCommuteF d) c * (b1 * b2)))
congr 2 e_6.e_6 ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab1:๐.FieldOpFreeAlgebrab2:๐.FieldOpFreeAlgebrac:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข a * (superCommuteF d) c * b1 * b2 = a * (superCommuteF d) c * (b1 * b2)
noncomm_ring All goals completed! ๐
@[simp]
lemma ฮน_normalOrderF_superCommuteF_eq_zero (c d : ๐.FieldOpFreeAlgebra) : ฮน ๐แถ ([d, c]โF) = 0 := by ๐:FieldSpecificationc:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF ((superCommuteF d) c)) = 0
rw [โ ฮน_normalOrderF_superCommuteF_eq_zero_mul 1 1 c d ๐:FieldSpecificationc:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF ((superCommuteF d) c)) = ฮน (normalOrderF (1 * (superCommuteF d) c * 1)) ๐:FieldSpecificationc:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF ((superCommuteF d) c)) = ฮน (normalOrderF (1 * (superCommuteF d) c * 1))] ๐:FieldSpecificationc:๐.FieldOpFreeAlgebrad:๐.FieldOpFreeAlgebraโข ฮน (normalOrderF ((superCommuteF d) c)) = ฮน (normalOrderF (1 * (superCommuteF d) c * 1))
simp All goals completed! ๐
Defining normal order for FiedOpAlgebra.
lemma ฮน_normalOrderF_zero_of_mem_ideal (a : ๐.FieldOpFreeAlgebra)
(h : a โ TwoSidedIdeal.span ๐.fieldOpIdealSet) : ฮน ๐แถ (a) = 0 := by ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrah:a โ TwoSidedIdeal.span ๐.fieldOpIdealSetโข ฮน (normalOrderF a) = 0
rw [TwoSidedIdeal.mem_span_iff_mem_addSubgroup_closure ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)โข ฮน (normalOrderF a) = 0 ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)โข ฮน (normalOrderF a) = 0] at h ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)โข ฮน (normalOrderF a) = 0
let p {k : Set ๐.FieldOpFreeAlgebra} (a : FieldOpFreeAlgebra ๐)
(h : a โ AddSubgroup.closure k) := ฮน ๐แถ (a) = 0 ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0โข ฮน (normalOrderF a) = 0
change p a h ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0โข p a h
apply AddSubgroup.closure_induction mem ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0โข โ (x : ๐.FieldOpFreeAlgebra) (hx : x โ Set.univ * ๐.fieldOpIdealSet * Set.univ), p x โฏzero ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0โข p 0 โฏadd ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0โข โ (x y : ๐.FieldOpFreeAlgebra) (hx : x โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ))
(hy : y โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)), p x hx โ p y hy โ p (x + y) โฏneg ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0โข โ (x : ๐.FieldOpFreeAlgebra) (hx : x โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)), p x hx โ p (-x) โฏ
ยท mem ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0โข โ (x : ๐.FieldOpFreeAlgebra) (hx : x โ Set.univ * ๐.fieldOpIdealSet * Set.univ), p x โฏ intro x hx mem ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0x:๐.FieldOpFreeAlgebrahx:x โ Set.univ * ๐.fieldOpIdealSet * Set.univโข p x โฏ
obtain โจa, ha, b, hb, rflโฉ := Set.mem_mul.mp hx mem ๐:FieldSpecificationaโ:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0a:๐.FieldOpFreeAlgebraha:a โ Set.univ * ๐.fieldOpIdealSetb:๐.FieldOpFreeAlgebrahb:b โ Set.univhx:a * b โ Set.univ * ๐.fieldOpIdealSet * Set.univโข p (a * b) โฏ
obtain โจa, ha, c, hc, rflโฉ := ha mem ๐:FieldSpecificationaโ:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0b:๐.FieldOpFreeAlgebrahb:b โ Set.univa:๐.FieldOpFreeAlgebraha:a โ Set.univc:๐.FieldOpFreeAlgebrahc:c โ ๐.fieldOpIdealSethx:(fun x1 x2 => x1 * x2) a c * b โ Set.univ * ๐.fieldOpIdealSet * Set.univโข p ((fun x1 x2 => x1 * x2) a c * b) โฏ
simp only [p] mem ๐:FieldSpecificationaโ:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0b:๐.FieldOpFreeAlgebrahb:b โ Set.univa:๐.FieldOpFreeAlgebraha:a โ Set.univc:๐.FieldOpFreeAlgebrahc:c โ ๐.fieldOpIdealSethx:(fun x1 x2 => x1 * x2) a c * b โ Set.univ * ๐.fieldOpIdealSet * Set.univโข ฮน (normalOrderF (a * c * b)) = 0
simp only [fieldOpIdealSet, exists_prop, exists_and_left, Set.mem_setOf_eq] at hc mem ๐:FieldSpecificationaโ:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0b:๐.FieldOpFreeAlgebrahb:b โ Set.univa:๐.FieldOpFreeAlgebraha:a โ Set.univc:๐.FieldOpFreeAlgebrahx:(fun x1 x2 => x1 * x2) a c * b โ Set.univ * ๐.fieldOpIdealSet * Set.univhc:(โ ฯ1 ฯ2 ฯ3, c = (superCommuteF (ofCrAnOpF ฯ1)) ((superCommuteF (ofCrAnOpF ฯ2)) (ofCrAnOpF ฯ3))) โจ
(โ ฯc,
๐|>แถฯc = CreateAnnihilate.create โง
โ x, ๐|>แถx = CreateAnnihilate.create โง c = (superCommuteF (ofCrAnOpF ฯc)) (ofCrAnOpF x)) โจ
(โ ฯa,
๐|>แถฯa = CreateAnnihilate.annihilate โง
โ x, ๐|>แถx = CreateAnnihilate.annihilate โง c = (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF x)) โจ
โ ฯ ฯ', ยฌ๐.crAnStatistics ฯ = ๐.crAnStatistics ฯ' โง c = (superCommuteF (ofCrAnOpF ฯ)) (ofCrAnOpF ฯ')โข ฮน (normalOrderF (a * c * b)) = 0
match hc with
| Or.inl hc => ๐:FieldSpecificationaโ:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0b:๐.FieldOpFreeAlgebrahb:b โ Set.univa:๐.FieldOpFreeAlgebraha:a โ Set.univc:๐.FieldOpFreeAlgebrahx:(fun x1 x2 => x1 * x2) a c * b โ Set.univ * ๐.fieldOpIdealSet * Set.univhcโ:(โ ฯ1 ฯ2 ฯ3, c = (superCommuteF (ofCrAnOpF ฯ1)) ((superCommuteF (ofCrAnOpF ฯ2)) (ofCrAnOpF ฯ3))) โจ
(โ ฯc,
๐|>แถฯc = CreateAnnihilate.create โง
โ x, ๐|>แถx = CreateAnnihilate.create โง c = (superCommuteF (ofCrAnOpF ฯc)) (ofCrAnOpF x)) โจ
(โ ฯa,
๐|>แถฯa = CreateAnnihilate.annihilate โง
โ x, ๐|>แถx = CreateAnnihilate.annihilate โง c = (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF x)) โจ
โ ฯ ฯ', ยฌ๐.crAnStatistics ฯ = ๐.crAnStatistics ฯ' โง c = (superCommuteF (ofCrAnOpF ฯ)) (ofCrAnOpF ฯ')hc:โ ฯ1 ฯ2 ฯ3, c = (superCommuteF (ofCrAnOpF ฯ1)) ((superCommuteF (ofCrAnOpF ฯ2)) (ofCrAnOpF ฯ3))โข ฮน (normalOrderF (a * c * b)) = 0
obtain โจฯa, ฯa', hฯa, hฯa', rflโฉ := hc ๐:FieldSpecificationaโ:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0b:๐.FieldOpFreeAlgebrahb:b โ Set.univa:๐.FieldOpFreeAlgebraha:a โ Set.univฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOphฯa:๐.CrAnFieldOphx:(fun x1 x2 => x1 * x2) a ((superCommuteF (ofCrAnOpF ฯa)) ((superCommuteF (ofCrAnOpF ฯa')) (ofCrAnOpF hฯa))) * b โ
Set.univ * ๐.fieldOpIdealSet * Set.univhc:(โ ฯ1 ฯ2 ฯ3,
(superCommuteF (ofCrAnOpF ฯa)) ((superCommuteF (ofCrAnOpF ฯa')) (ofCrAnOpF hฯa)) =
(superCommuteF (ofCrAnOpF ฯ1)) ((superCommuteF (ofCrAnOpF ฯ2)) (ofCrAnOpF ฯ3))) โจ
(โ ฯc,
๐|>แถฯc = CreateAnnihilate.create โง
โ x,
๐|>แถx = CreateAnnihilate.create โง
(superCommuteF (ofCrAnOpF ฯa)) ((superCommuteF (ofCrAnOpF ฯa')) (ofCrAnOpF hฯa)) =
(superCommuteF (ofCrAnOpF ฯc)) (ofCrAnOpF x)) โจ
(โ ฯa_1,
๐|>แถฯa_1 = CreateAnnihilate.annihilate โง
โ x,
๐|>แถx = CreateAnnihilate.annihilate โง
(superCommuteF (ofCrAnOpF ฯa)) ((superCommuteF (ofCrAnOpF ฯa')) (ofCrAnOpF hฯa)) =
(superCommuteF (ofCrAnOpF ฯa_1)) (ofCrAnOpF x)) โจ
โ ฯ ฯ',
ยฌ๐.crAnStatistics ฯ = ๐.crAnStatistics ฯ' โง
(superCommuteF (ofCrAnOpF ฯa)) ((superCommuteF (ofCrAnOpF ฯa')) (ofCrAnOpF hฯa)) =
(superCommuteF (ofCrAnOpF ฯ)) (ofCrAnOpF ฯ')โข ฮน (normalOrderF (a * (superCommuteF (ofCrAnOpF ฯa)) ((superCommuteF (ofCrAnOpF ฯa')) (ofCrAnOpF hฯa)) * b)) = 0
simp All goals completed! ๐
| Or.inr (Or.inl hc) => ๐:FieldSpecificationaโ:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0b:๐.FieldOpFreeAlgebrahb:b โ Set.univa:๐.FieldOpFreeAlgebraha:a โ Set.univc:๐.FieldOpFreeAlgebrahx:(fun x1 x2 => x1 * x2) a c * b โ Set.univ * ๐.fieldOpIdealSet * Set.univhcโ:(โ ฯ1 ฯ2 ฯ3, c = (superCommuteF (ofCrAnOpF ฯ1)) ((superCommuteF (ofCrAnOpF ฯ2)) (ofCrAnOpF ฯ3))) โจ
(โ ฯc,
๐|>แถฯc = CreateAnnihilate.create โง
โ x, ๐|>แถx = CreateAnnihilate.create โง c = (superCommuteF (ofCrAnOpF ฯc)) (ofCrAnOpF x)) โจ
(โ ฯa,
๐|>แถฯa = CreateAnnihilate.annihilate โง
โ x, ๐|>แถx = CreateAnnihilate.annihilate โง c = (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF x)) โจ
โ ฯ ฯ', ยฌ๐.crAnStatistics ฯ = ๐.crAnStatistics ฯ' โง c = (superCommuteF (ofCrAnOpF ฯ)) (ofCrAnOpF ฯ')hc:โ ฯc,
๐|>แถฯc = CreateAnnihilate.create โง
โ x, ๐|>แถx = CreateAnnihilate.create โง c = (superCommuteF (ofCrAnOpF ฯc)) (ofCrAnOpF x)โข ฮน (normalOrderF (a * c * b)) = 0
obtain โจฯa, ฯa', hฯa, hฯa', rflโฉ := hc ๐:FieldSpecificationaโ:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0b:๐.FieldOpFreeAlgebrahb:b โ Set.univa:๐.FieldOpFreeAlgebraha:a โ Set.univฯa:๐.CrAnFieldOpฯa':๐|>แถฯa = CreateAnnihilate.createhฯa:๐.CrAnFieldOphฯa':๐|>แถhฯa = CreateAnnihilate.createhx:(fun x1 x2 => x1 * x2) a ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF hฯa)) * b โ Set.univ * ๐.fieldOpIdealSet * Set.univhc:(โ ฯ1 ฯ2 ฯ3,
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF hฯa) =
(superCommuteF (ofCrAnOpF ฯ1)) ((superCommuteF (ofCrAnOpF ฯ2)) (ofCrAnOpF ฯ3))) โจ
(โ ฯc,
๐|>แถฯc = CreateAnnihilate.create โง
โ x,
๐|>แถx = CreateAnnihilate.create โง
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF hฯa) = (superCommuteF (ofCrAnOpF ฯc)) (ofCrAnOpF x)) โจ
(โ ฯa_1,
๐|>แถฯa_1 = CreateAnnihilate.annihilate โง
โ x,
๐|>แถx = CreateAnnihilate.annihilate โง
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF hฯa) = (superCommuteF (ofCrAnOpF ฯa_1)) (ofCrAnOpF x)) โจ
โ ฯ ฯ',
ยฌ๐.crAnStatistics ฯ = ๐.crAnStatistics ฯ' โง
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF hฯa) = (superCommuteF (ofCrAnOpF ฯ)) (ofCrAnOpF ฯ')โข ฮน (normalOrderF (a * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF hฯa) * b)) = 0
simp All goals completed! ๐
| Or.inr (Or.inr (Or.inl hc)) => ๐:FieldSpecificationaโ:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0b:๐.FieldOpFreeAlgebrahb:b โ Set.univa:๐.FieldOpFreeAlgebraha:a โ Set.univc:๐.FieldOpFreeAlgebrahx:(fun x1 x2 => x1 * x2) a c * b โ Set.univ * ๐.fieldOpIdealSet * Set.univhcโ:(โ ฯ1 ฯ2 ฯ3, c = (superCommuteF (ofCrAnOpF ฯ1)) ((superCommuteF (ofCrAnOpF ฯ2)) (ofCrAnOpF ฯ3))) โจ
(โ ฯc,
๐|>แถฯc = CreateAnnihilate.create โง
โ x, ๐|>แถx = CreateAnnihilate.create โง c = (superCommuteF (ofCrAnOpF ฯc)) (ofCrAnOpF x)) โจ
(โ ฯa,
๐|>แถฯa = CreateAnnihilate.annihilate โง
โ x, ๐|>แถx = CreateAnnihilate.annihilate โง c = (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF x)) โจ
โ ฯ ฯ', ยฌ๐.crAnStatistics ฯ = ๐.crAnStatistics ฯ' โง c = (superCommuteF (ofCrAnOpF ฯ)) (ofCrAnOpF ฯ')hc:โ ฯa,
๐|>แถฯa = CreateAnnihilate.annihilate โง
โ x, ๐|>แถx = CreateAnnihilate.annihilate โง c = (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF x)โข ฮน (normalOrderF (a * c * b)) = 0
obtain โจฯa, ฯa', hฯa, hฯa', rflโฉ := hc ๐:FieldSpecificationaโ:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0b:๐.FieldOpFreeAlgebrahb:b โ Set.univa:๐.FieldOpFreeAlgebraha:a โ Set.univฯa:๐.CrAnFieldOpฯa':๐|>แถฯa = CreateAnnihilate.annihilatehฯa:๐.CrAnFieldOphฯa':๐|>แถhฯa = CreateAnnihilate.annihilatehx:(fun x1 x2 => x1 * x2) a ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF hฯa)) * b โ Set.univ * ๐.fieldOpIdealSet * Set.univhc:(โ ฯ1 ฯ2 ฯ3,
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF hฯa) =
(superCommuteF (ofCrAnOpF ฯ1)) ((superCommuteF (ofCrAnOpF ฯ2)) (ofCrAnOpF ฯ3))) โจ
(โ ฯc,
๐|>แถฯc = CreateAnnihilate.create โง
โ x,
๐|>แถx = CreateAnnihilate.create โง
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF hฯa) = (superCommuteF (ofCrAnOpF ฯc)) (ofCrAnOpF x)) โจ
(โ ฯa_1,
๐|>แถฯa_1 = CreateAnnihilate.annihilate โง
โ x,
๐|>แถx = CreateAnnihilate.annihilate โง
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF hฯa) = (superCommuteF (ofCrAnOpF ฯa_1)) (ofCrAnOpF x)) โจ
โ ฯ ฯ',
ยฌ๐.crAnStatistics ฯ = ๐.crAnStatistics ฯ' โง
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF hฯa) = (superCommuteF (ofCrAnOpF ฯ)) (ofCrAnOpF ฯ')โข ฮน (normalOrderF (a * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF hฯa) * b)) = 0
simp All goals completed! ๐
| Or.inr (Or.inr (Or.inr hc)) => ๐:FieldSpecificationaโ:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0b:๐.FieldOpFreeAlgebrahb:b โ Set.univa:๐.FieldOpFreeAlgebraha:a โ Set.univc:๐.FieldOpFreeAlgebrahx:(fun x1 x2 => x1 * x2) a c * b โ Set.univ * ๐.fieldOpIdealSet * Set.univhcโ:(โ ฯ1 ฯ2 ฯ3, c = (superCommuteF (ofCrAnOpF ฯ1)) ((superCommuteF (ofCrAnOpF ฯ2)) (ofCrAnOpF ฯ3))) โจ
(โ ฯc,
๐|>แถฯc = CreateAnnihilate.create โง
โ x, ๐|>แถx = CreateAnnihilate.create โง c = (superCommuteF (ofCrAnOpF ฯc)) (ofCrAnOpF x)) โจ
(โ ฯa,
๐|>แถฯa = CreateAnnihilate.annihilate โง
โ x, ๐|>แถx = CreateAnnihilate.annihilate โง c = (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF x)) โจ
โ ฯ ฯ', ยฌ๐.crAnStatistics ฯ = ๐.crAnStatistics ฯ' โง c = (superCommuteF (ofCrAnOpF ฯ)) (ofCrAnOpF ฯ')hc:โ ฯ ฯ', ยฌ๐.crAnStatistics ฯ = ๐.crAnStatistics ฯ' โง c = (superCommuteF (ofCrAnOpF ฯ)) (ofCrAnOpF ฯ')โข ฮน (normalOrderF (a * c * b)) = 0
obtain โจฯa, ฯa', hฯa, hฯa', rflโฉ := hc ๐:FieldSpecificationaโ:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0b:๐.FieldOpFreeAlgebrahb:b โ Set.univa:๐.FieldOpFreeAlgebraha:a โ Set.univฯa:๐.CrAnFieldOpฯa':๐.CrAnFieldOphฯa:ยฌ๐.crAnStatistics ฯa = ๐.crAnStatistics ฯa'hx:(fun x1 x2 => x1 * x2) a ((superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa')) * b โ Set.univ * ๐.fieldOpIdealSet * Set.univhc:(โ ฯ1 ฯ2 ฯ3,
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') =
(superCommuteF (ofCrAnOpF ฯ1)) ((superCommuteF (ofCrAnOpF ฯ2)) (ofCrAnOpF ฯ3))) โจ
(โ ฯc,
๐|>แถฯc = CreateAnnihilate.create โง
โ x,
๐|>แถx = CreateAnnihilate.create โง
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') = (superCommuteF (ofCrAnOpF ฯc)) (ofCrAnOpF x)) โจ
(โ ฯa_1,
๐|>แถฯa_1 = CreateAnnihilate.annihilate โง
โ x,
๐|>แถx = CreateAnnihilate.annihilate โง
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') = (superCommuteF (ofCrAnOpF ฯa_1)) (ofCrAnOpF x)) โจ
โ ฯ ฯ',
ยฌ๐.crAnStatistics ฯ = ๐.crAnStatistics ฯ' โง
(superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') = (superCommuteF (ofCrAnOpF ฯ)) (ofCrAnOpF ฯ')โข ฮน (normalOrderF (a * (superCommuteF (ofCrAnOpF ฯa)) (ofCrAnOpF ฯa') * b)) = 0
simp All goals completed! ๐
ยท zero ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0โข p 0 โฏ simp [p] All goals completed! ๐
ยท add ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0โข โ (x y : ๐.FieldOpFreeAlgebra) (hx : x โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ))
(hy : y โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)), p x hx โ p y hy โ p (x + y) โฏ intro x y hx hy add ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0x:๐.FieldOpFreeAlgebray:๐.FieldOpFreeAlgebrahx:x โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)hy:y โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)โข p x hx โ p y hy โ p (x + y) โฏ
simp only [map_add, p] add ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0x:๐.FieldOpFreeAlgebray:๐.FieldOpFreeAlgebrahx:x โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)hy:y โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)โข ฮน (normalOrderF x) = 0 โ ฮน (normalOrderF y) = 0 โ ฮน (normalOrderF x) + ฮน (normalOrderF y) = 0
intro h1 h2 add ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0x:๐.FieldOpFreeAlgebray:๐.FieldOpFreeAlgebrahx:x โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)hy:y โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)h1:ฮน (normalOrderF x) = 0h2:ฮน (normalOrderF y) = 0โข ฮน (normalOrderF x) + ฮน (normalOrderF y) = 0
simp [h1, h2] All goals completed! ๐
ยท neg ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0โข โ (x : ๐.FieldOpFreeAlgebra) (hx : x โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)), p x hx โ p (-x) โฏ intro x hx neg ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrah:a โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)p:{k : Set ๐.FieldOpFreeAlgebra} โ (a : ๐.FieldOpFreeAlgebra) โ a โ AddSubgroup.closure k โ Prop := fun {k} a h => ฮน (normalOrderF a) = 0x:๐.FieldOpFreeAlgebrahx:x โ AddSubgroup.closure (Set.univ * ๐.fieldOpIdealSet * Set.univ)โข p x hx โ p (-x) โฏ
simp [p] All goals completed! ๐
lemma ฮน_normalOrderF_eq_of_equiv (a b : ๐.FieldOpFreeAlgebra) (h : a โ b) :
ฮน ๐แถ (a) = ฮน ๐แถ (b) := by ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrah:a โ bโข ฮน (normalOrderF a) = ฮน (normalOrderF b)
rw [equiv_iff_sub_mem_ideal ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrah:a - b โ TwoSidedIdeal.span ๐.fieldOpIdealSetโข ฮน (normalOrderF a) = ฮน (normalOrderF b) ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrah:a - b โ TwoSidedIdeal.span ๐.fieldOpIdealSetโข ฮน (normalOrderF a) = ฮน (normalOrderF b)] at h ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrah:a - b โ TwoSidedIdeal.span ๐.fieldOpIdealSetโข ฮน (normalOrderF a) = ฮน (normalOrderF b)
rw [โ sub_eq_zero, ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrah:a - b โ TwoSidedIdeal.span ๐.fieldOpIdealSetโข ฮน (normalOrderF a) - ฮน (normalOrderF b) = 0 ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrah:a - b โ TwoSidedIdeal.span ๐.fieldOpIdealSetโข ฮน (normalOrderF (a - b)) = 0 โ map_sub, ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrah:a - b โ TwoSidedIdeal.span ๐.fieldOpIdealSetโข ฮน (normalOrderF a - normalOrderF b) = 0 ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrah:a - b โ TwoSidedIdeal.span ๐.fieldOpIdealSetโข ฮน (normalOrderF (a - b)) = 0 โ LinearMap.map_sub ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrah:a - b โ TwoSidedIdeal.span ๐.fieldOpIdealSetโข ฮน (normalOrderF (a - b)) = 0 ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrah:a - b โ TwoSidedIdeal.span ๐.fieldOpIdealSetโข ฮน (normalOrderF (a - b)) = 0] ๐:FieldSpecificationa:๐.FieldOpFreeAlgebrab:๐.FieldOpFreeAlgebrah:a - b โ TwoSidedIdeal.span ๐.fieldOpIdealSetโข ฮน (normalOrderF (a - b)) = 0
exact ฮน_normalOrderF_zero_of_mem_ideal (a - b) h All goals completed! ๐@[inherit_doc normalOrder]
scoped[FieldSpecification.WickAlgebra] notation "๐(" a ")" => normalOrder a