refactor: Lint
This commit is contained in:
parent
006e29fd08
commit
fca3f02eca
16 changed files with 416 additions and 352 deletions
|
@ -262,12 +262,12 @@ lemma ofCrAnFieldOpList_eq_normalOrder (φs : List 𝓕.CrAnStates) :
|
|||
one_smul]
|
||||
|
||||
lemma normalOrder_normalOrder_mid (a b c : 𝓕.FieldOpAlgebra) :
|
||||
𝓝(a * b * c) = 𝓝(a * 𝓝(b) * c) := by
|
||||
𝓝(a * b * c) = 𝓝(a * 𝓝(b) * c) := by
|
||||
obtain ⟨a, rfl⟩ := ι_surjective a
|
||||
obtain ⟨b, rfl⟩ := ι_surjective b
|
||||
obtain ⟨c, rfl⟩ := ι_surjective c
|
||||
rw [normalOrder_eq_ι_normalOrderF]
|
||||
simp [← map_mul]
|
||||
simp only [← map_mul]
|
||||
rw [normalOrder_eq_ι_normalOrderF]
|
||||
rw [normalOrderF_normalOrderF_mid]
|
||||
rfl
|
||||
|
@ -277,7 +277,7 @@ lemma normalOrder_normalOrder_left (a b : 𝓕.FieldOpAlgebra) :
|
|||
obtain ⟨a, rfl⟩ := ι_surjective a
|
||||
obtain ⟨b, rfl⟩ := ι_surjective b
|
||||
rw [normalOrder_eq_ι_normalOrderF]
|
||||
simp [← map_mul]
|
||||
simp only [← map_mul]
|
||||
rw [normalOrder_eq_ι_normalOrderF]
|
||||
rw [normalOrderF_normalOrderF_left]
|
||||
rfl
|
||||
|
@ -287,7 +287,7 @@ lemma normalOrder_normalOrder_right (a b : 𝓕.FieldOpAlgebra) :
|
|||
obtain ⟨a, rfl⟩ := ι_surjective a
|
||||
obtain ⟨b, rfl⟩ := ι_surjective b
|
||||
rw [normalOrder_eq_ι_normalOrderF]
|
||||
simp [← map_mul]
|
||||
simp only [← map_mul]
|
||||
rw [normalOrder_eq_ι_normalOrderF]
|
||||
rw [normalOrderF_normalOrderF_right]
|
||||
rfl
|
||||
|
@ -503,7 +503,7 @@ lemma anPart_mul_normalOrder_ofFieldOpList_eq_superCommute_reorder (φ : 𝓕.St
|
|||
(φs : List 𝓕.States) : anPart φ * 𝓝(ofFieldOpList φs) =
|
||||
𝓝(anPart φ * ofFieldOpList φs) + [anPart φ, 𝓝(ofFieldOpList φs)]ₛ := by
|
||||
rw [anPart_mul_normalOrder_ofFieldOpList_eq_superCommute]
|
||||
simp [instCommGroup.eq_1, map_add, map_smul]
|
||||
simp only [instCommGroup.eq_1, add_left_inj]
|
||||
rw [normalOrder_anPart_ofFieldOpList_swap]
|
||||
|
||||
/--
|
||||
|
@ -562,8 +562,8 @@ lemma ofFieldOpList_normalOrder_insert (φ : 𝓕.States) (φs : List 𝓕.State
|
|||
rw [hl]
|
||||
rw [ofFieldOpList_append, ofFieldOpList_append]
|
||||
rw [ofFieldOpList_mul_ofFieldOpList_eq_superCommute, add_mul]
|
||||
simp [instCommGroup.eq_1, Nat.succ_eq_add_one, ofList_singleton, Algebra.smul_mul_assoc,
|
||||
map_add, map_smul, add_zero, smul_smul,
|
||||
simp only [instCommGroup.eq_1, Nat.succ_eq_add_one, ofList_singleton, Algebra.smul_mul_assoc,
|
||||
map_add, map_smul, normalOrder_superCommute_left_eq_zero, add_zero, smul_smul,
|
||||
exchangeSign_mul_self_swap, one_smul]
|
||||
rw [← ofFieldOpList_append, ← ofFieldOpList_append]
|
||||
simp
|
||||
|
|
|
@ -34,15 +34,15 @@ theorem static_wick_theorem : (φs : List 𝓕.States) →
|
|||
| φ :: φs => by
|
||||
rw [ofFieldOpList_cons]
|
||||
rw [static_wick_theorem φs]
|
||||
rw [show (φ :: φs) = φs.insertIdx (⟨0, Nat.zero_lt_succ φs.length⟩ : Fin φs.length.succ) φ
|
||||
rw [show (φ :: φs) = φs.insertIdx (⟨0, Nat.zero_lt_succ φs.length⟩ : Fin φs.length.succ) φ
|
||||
from rfl]
|
||||
conv_rhs => rw [insertLift_sum ]
|
||||
conv_rhs => rw [insertLift_sum]
|
||||
rw [Finset.mul_sum]
|
||||
apply Finset.sum_congr rfl
|
||||
intro c _
|
||||
trans (sign φs c • ↑c.staticContract * (ofFieldOp φ * normalOrder (ofFieldOpList [c]ᵘᶜ)))
|
||||
trans (sign φs c • ↑c.staticContract * (ofFieldOp φ * normalOrder (ofFieldOpList [c]ᵘᶜ)))
|
||||
· have ht := Subalgebra.mem_center_iff.mp (Subalgebra.smul_mem (Subalgebra.center ℂ _)
|
||||
(c.staticContract).2 c.sign )
|
||||
(c.staticContract).2 c.sign)
|
||||
conv_rhs => rw [← mul_assoc, ← ht]
|
||||
simp [mul_assoc]
|
||||
rw [ofFieldOp_mul_normalOrder_ofFieldOpList_eq_sum]
|
||||
|
@ -61,7 +61,7 @@ theorem static_wick_theorem : (φs : List 𝓕.States) →
|
|||
simp only [Algebra.smul_mul_assoc, Nat.succ_eq_add_one, Fin.zero_eta, Fin.val_zero,
|
||||
List.insertIdx_zero]
|
||||
rw [normalOrder_uncontracted_some]
|
||||
simp [← mul_assoc]
|
||||
simp only [← mul_assoc]
|
||||
rw [← smul_mul_assoc]
|
||||
conv_rhs => rw [← smul_mul_assoc]
|
||||
congr 1
|
||||
|
@ -69,7 +69,7 @@ theorem static_wick_theorem : (φs : List 𝓕.States) →
|
|||
swap
|
||||
· simp
|
||||
rw [smul_smul]
|
||||
by_cases hn : GradingCompliant φs c ∧ (𝓕|>ₛφ) = (𝓕|>ₛ φs[n.1])
|
||||
by_cases hn : GradingCompliant φs c ∧ (𝓕|>ₛφ) = (𝓕|>ₛ φs[n.1])
|
||||
· congr 1
|
||||
swap
|
||||
· have h1 := c.staticContract.2
|
||||
|
@ -82,19 +82,20 @@ theorem static_wick_theorem : (φs : List 𝓕.States) →
|
|||
ofFinset_empty, map_one, one_mul]
|
||||
simp only [Fin.zero_succAbove, Fin.not_lt_zero, not_false_eq_true]
|
||||
exact hn
|
||||
· simp at hn
|
||||
· simp only [Fin.getElem_fin, not_and] at hn
|
||||
by_cases h0 : ¬ GradingCompliant φs c
|
||||
· rw [staticContract_of_not_gradingCompliant]
|
||||
simp only [ZeroMemClass.coe_zero, zero_mul, smul_zero, instCommGroup.eq_1, mul_zero]
|
||||
exact h0
|
||||
· simp_all
|
||||
have h1 : contractStateAtIndex φ [c]ᵘᶜ
|
||||
· simp_all only [Finset.mem_univ, not_not, instCommGroup.eq_1, forall_const]
|
||||
have h1 : contractStateAtIndex φ [c]ᵘᶜ
|
||||
((uncontractedStatesEquiv φs c) (some n)) = 0 := by
|
||||
simp only [contractStateAtIndex, uncontractedStatesEquiv, Equiv.optionCongr_apply,
|
||||
Equiv.coe_trans, Option.map_some', Function.comp_apply, finCongr_apply,
|
||||
instCommGroup.eq_1, Fin.coe_cast, Fin.getElem_fin, smul_eq_zero]
|
||||
right
|
||||
simp [uncontractedListGet]
|
||||
simp only [uncontractedListGet, List.getElem_map,
|
||||
uncontractedList_getElem_uncontractedIndexEquiv_symm, List.get_eq_getElem]
|
||||
rw [superCommute_anPart_ofState_diff_grade_zero]
|
||||
exact hn
|
||||
rw [h1]
|
||||
|
|
|
@ -94,7 +94,7 @@ lemma normalOrder_timeContract (φ ψ : 𝓕.States) :
|
|||
· rw [timeContract_of_timeOrderRel _ _ h]
|
||||
simp
|
||||
· rw [timeContract_of_not_timeOrderRel _ _ h]
|
||||
simp
|
||||
simp only [instCommGroup.eq_1, map_smul, smul_eq_zero]
|
||||
have h1 : timeOrderRel ψ φ := by
|
||||
have ht : timeOrderRel φ ψ ∨ timeOrderRel ψ φ := IsTotal.total (r := 𝓕.timeOrderRel) φ ψ
|
||||
simp_all
|
||||
|
@ -103,10 +103,10 @@ lemma normalOrder_timeContract (φ ψ : 𝓕.States) :
|
|||
|
||||
lemma timeOrder_timeContract_eq_time_mid {φ ψ : 𝓕.States}
|
||||
(h1 : timeOrderRel φ ψ) (h2 : timeOrderRel ψ φ) (a b : 𝓕.FieldOpAlgebra) :
|
||||
𝓣(a * timeContract φ ψ * b) = timeContract φ ψ * 𝓣(a * b):= by
|
||||
𝓣(a * timeContract φ ψ * b) = timeContract φ ψ * 𝓣(a * b) := by
|
||||
rw [timeContract_of_timeOrderRel _ _ h1]
|
||||
rw [ofFieldOp_eq_sum]
|
||||
simp [Finset.mul_sum, Finset.sum_mul]
|
||||
simp only [map_sum, Finset.mul_sum, Finset.sum_mul]
|
||||
congr
|
||||
funext x
|
||||
match φ with
|
||||
|
@ -115,19 +115,19 @@ lemma timeOrder_timeContract_eq_time_mid {φ ψ : 𝓕.States}
|
|||
| .position φ =>
|
||||
simp only [anPart_position, instCommGroup.eq_1]
|
||||
apply timeOrder_superCommute_eq_time_mid _ _
|
||||
simp [crAnTimeOrderRel, h1]
|
||||
simp only [crAnTimeOrderRel, h1]
|
||||
simp [crAnTimeOrderRel, h2]
|
||||
| .outAsymp φ =>
|
||||
simp only [anPart_posAsymp, instCommGroup.eq_1]
|
||||
apply timeOrder_superCommute_eq_time_mid _ _
|
||||
simp [crAnTimeOrderRel, h1]
|
||||
simp only [crAnTimeOrderRel, h1]
|
||||
simp [crAnTimeOrderRel, h2]
|
||||
|
||||
lemma timeOrder_timeContract_eq_time_left {φ ψ : 𝓕.States}
|
||||
(h1 : timeOrderRel φ ψ) (h2 : timeOrderRel ψ φ) (b : 𝓕.FieldOpAlgebra) :
|
||||
𝓣(timeContract φ ψ * b) = timeContract φ ψ * 𝓣(b):= by
|
||||
𝓣(timeContract φ ψ * b) = timeContract φ ψ * 𝓣(b) := by
|
||||
trans 𝓣(1 * timeContract φ ψ * b)
|
||||
simp
|
||||
simp only [one_mul]
|
||||
rw [timeOrder_timeContract_eq_time_mid h1 h2]
|
||||
simp
|
||||
|
||||
|
@ -135,11 +135,11 @@ lemma timeOrder_timeContract_neq_time {φ ψ : 𝓕.States}
|
|||
(h1 : ¬ (timeOrderRel φ ψ ∧ timeOrderRel ψ φ)) :
|
||||
𝓣(timeContract φ ψ) = 0 := by
|
||||
by_cases h2 : timeOrderRel φ ψ
|
||||
· simp_all
|
||||
· simp_all only [true_and]
|
||||
rw [timeContract_of_timeOrderRel _ _ h2]
|
||||
simp
|
||||
simp only
|
||||
rw [ofFieldOp_eq_sum]
|
||||
simp [Finset.mul_sum, Finset.sum_mul]
|
||||
simp only [map_sum]
|
||||
apply Finset.sum_eq_zero
|
||||
intro x hx
|
||||
match φ with
|
||||
|
@ -154,10 +154,10 @@ lemma timeOrder_timeContract_neq_time {φ ψ : 𝓕.States}
|
|||
apply timeOrder_superCommute_neq_time
|
||||
simp_all [crAnTimeOrderRel]
|
||||
· rw [timeContract_of_not_timeOrderRel_expand _ _ h2]
|
||||
simp
|
||||
simp only [instCommGroup.eq_1, map_smul, smul_eq_zero]
|
||||
right
|
||||
rw [ofFieldOp_eq_sum]
|
||||
simp [Finset.mul_sum, Finset.sum_mul]
|
||||
simp only [map_sum]
|
||||
apply Finset.sum_eq_zero
|
||||
intro x hx
|
||||
match ψ with
|
||||
|
|
|
@ -440,15 +440,15 @@ lemma timeOrder_superCommute_eq_time_mid {φ ψ : 𝓕.CrAnStates}
|
|||
rw [← map_mul, ← map_mul, timeOrder_eq_ι_timeOrderF]
|
||||
rw [ι_timeOrderF_superCommuteF_eq_time]
|
||||
rfl
|
||||
simp_all
|
||||
simp_all
|
||||
· simp_all
|
||||
· simp_all
|
||||
|
||||
lemma timeOrder_superCommute_eq_time_left {φ ψ : 𝓕.CrAnStates}
|
||||
(hφψ : crAnTimeOrderRel φ ψ) (hψφ : crAnTimeOrderRel ψ φ) (b : 𝓕.FieldOpAlgebra) :
|
||||
𝓣([ofCrAnFieldOp φ, ofCrAnFieldOp ψ]ₛ * b) =
|
||||
[ofCrAnFieldOp φ, ofCrAnFieldOp ψ]ₛ * 𝓣(b) := by
|
||||
trans 𝓣(1 * [ofCrAnFieldOp φ, ofCrAnFieldOp ψ]ₛ * b)
|
||||
simp
|
||||
simp only [one_mul]
|
||||
rw [timeOrder_superCommute_eq_time_mid hφψ hψφ]
|
||||
simp
|
||||
|
||||
|
@ -458,16 +458,16 @@ lemma timeOrder_superCommute_neq_time {φ ψ : 𝓕.CrAnStates}
|
|||
rw [ofCrAnFieldOp, ofCrAnFieldOp]
|
||||
rw [superCommute_eq_ι_superCommuteF]
|
||||
rw [timeOrder_eq_ι_timeOrderF]
|
||||
trans ι (timeOrderF (1 * (superCommuteF (ofCrAnState φ)) (ofCrAnState ψ) * 1))
|
||||
simp
|
||||
rw [ι_timeOrderF_superCommuteF_neq_time ]
|
||||
trans ι (timeOrderF (1 * (superCommuteF (ofCrAnState φ)) (ofCrAnState ψ) * 1))
|
||||
simp only [one_mul, mul_one]
|
||||
rw [ι_timeOrderF_superCommuteF_neq_time]
|
||||
exact hφψ
|
||||
|
||||
lemma timeOrder_superCommute_anPart_ofFieldOp_neq_time {φ ψ : 𝓕.States}
|
||||
(hφψ : ¬ (timeOrderRel φ ψ ∧ timeOrderRel ψ φ)) :
|
||||
𝓣([anPart φ,ofFieldOp ψ]ₛ) = 0 := by
|
||||
rw [ofFieldOp_eq_sum]
|
||||
simp
|
||||
simp only [map_sum]
|
||||
apply Finset.sum_eq_zero
|
||||
intro a ha
|
||||
match φ with
|
||||
|
@ -483,24 +483,24 @@ lemma timeOrder_superCommute_anPart_ofFieldOp_neq_time {φ ψ : 𝓕.States}
|
|||
simp_all [crAnTimeOrderRel]
|
||||
|
||||
lemma timeOrder_timeOrder_mid (a b c : 𝓕.FieldOpAlgebra) :
|
||||
𝓣(a * b * c) = 𝓣(a * 𝓣(b) * c):= by
|
||||
𝓣(a * b * c) = 𝓣(a * 𝓣(b) * c) := by
|
||||
obtain ⟨a, rfl⟩ := ι_surjective a
|
||||
obtain ⟨b, rfl⟩ := ι_surjective b
|
||||
obtain ⟨c, rfl⟩ := ι_surjective c
|
||||
rw [← map_mul, ← map_mul, timeOrder_eq_ι_timeOrderF, timeOrder_eq_ι_timeOrderF,
|
||||
← map_mul, ← map_mul, timeOrder_eq_ι_timeOrderF, timeOrderF_timeOrderF_mid]
|
||||
← map_mul, ← map_mul, timeOrder_eq_ι_timeOrderF, timeOrderF_timeOrderF_mid]
|
||||
|
||||
lemma timeOrder_timeOrder_left (b c : 𝓕.FieldOpAlgebra) :
|
||||
𝓣(b * c) = 𝓣(𝓣(b) * c):= by
|
||||
𝓣(b * c) = 𝓣(𝓣(b) * c) := by
|
||||
trans 𝓣(1 * b * c)
|
||||
simp
|
||||
simp only [one_mul]
|
||||
rw [timeOrder_timeOrder_mid]
|
||||
simp
|
||||
|
||||
lemma timeOrder_timeOrder_right (a b : 𝓕.FieldOpAlgebra) :
|
||||
𝓣(a * b) = 𝓣(a * 𝓣(b)) := by
|
||||
trans 𝓣(a * b * 1)
|
||||
simp
|
||||
simp only [mul_one]
|
||||
rw [timeOrder_timeOrder_mid]
|
||||
simp
|
||||
|
||||
|
|
|
@ -20,11 +20,13 @@ open WickContraction
|
|||
open EqTimeOnly
|
||||
|
||||
lemma timeOrder_ofFieldOpList_eqTimeOnly (φs : List 𝓕.States) :
|
||||
timeOrder (ofFieldOpList φs) = ∑ (φsΛ : EqTimeOnly φs),
|
||||
timeOrder (ofFieldOpList φs) = ∑ (φsΛ : {φsΛ // φsΛ.EqTimeOnly (φs := φs)}),
|
||||
φsΛ.1.sign • φsΛ.1.timeContract.1 * 𝓣(𝓝(ofFieldOpList [φsΛ.1]ᵘᶜ)):= by
|
||||
rw [static_wick_theorem φs]
|
||||
let e2 : WickContraction φs.length ≃ {φsΛ // φsΛ ∈ EqTimeOnly φs} ⊕ {φsΛ // ¬ φsΛ ∈ EqTimeOnly φs} :=
|
||||
(Equiv.sumCompl (Membership.mem (EqTimeOnly φs))).symm
|
||||
let e2 : WickContraction φs.length ≃
|
||||
{φsΛ : WickContraction φs.length // φsΛ.EqTimeOnly} ⊕
|
||||
{φsΛ : WickContraction φs.length // ¬ φsΛ.EqTimeOnly} :=
|
||||
(Equiv.sumCompl _).symm
|
||||
rw [← e2.symm.sum_comp]
|
||||
simp only [Equiv.symm_symm, Algebra.smul_mul_assoc, Fintype.sum_sum_type,
|
||||
Equiv.sumCompl_apply_inl, Equiv.sumCompl_apply_inr, map_add, map_sum, map_smul, e2]
|
||||
|
@ -32,31 +34,35 @@ lemma timeOrder_ofFieldOpList_eqTimeOnly (φs : List 𝓕.States) :
|
|||
enter [2, 2, x]
|
||||
rw [timeOrder_timeOrder_left]
|
||||
rw [timeOrder_staticContract_of_not_mem _ x.2]
|
||||
simp
|
||||
simp only [Finset.univ_eq_attach, zero_mul, map_zero, smul_zero, Finset.sum_const_zero, add_zero]
|
||||
congr
|
||||
funext x
|
||||
rw [staticContract_eq_timeContract]
|
||||
rw [timeOrder_timeContract_mul_of_mem_left]
|
||||
rw [staticContract_eq_timeContract_of_eqTimeOnly]
|
||||
rw [timeOrder_timeContract_mul_of_eqTimeOnly_left]
|
||||
exact x.2
|
||||
exact x.2
|
||||
|
||||
lemma timeOrder_ofFieldOpList_eq_eqTimeOnly_empty (φs : List 𝓕.States) :
|
||||
timeOrder (ofFieldOpList φs) = 𝓣(𝓝(ofFieldOpList φs)) +
|
||||
∑ (φsΛ : {φsΛ // φsΛ ∈ EqTimeOnly φs ∧ φsΛ ≠ empty}),
|
||||
∑ (φsΛ : {φsΛ // φsΛ.EqTimeOnly (φs := φs) ∧ φsΛ ≠ empty}),
|
||||
φsΛ.1.sign • φsΛ.1.timeContract.1 * 𝓣(𝓝(ofFieldOpList [φsΛ.1]ᵘᶜ)) := by
|
||||
let e1 : EqTimeOnly φs ≃ {φsΛ : EqTimeOnly φs // φsΛ.1 = empty} ⊕ {φsΛ : EqTimeOnly φs // ¬ φsΛ.1 = empty} :=
|
||||
(Equiv.sumCompl fun (a : EqTimeOnly φs) => a.1 = empty).symm
|
||||
let e1 : {φsΛ : WickContraction φs.length // φsΛ.EqTimeOnly} ≃
|
||||
{φsΛ : {φsΛ : WickContraction φs.length // φsΛ.EqTimeOnly} // φsΛ.1 = empty} ⊕
|
||||
{φsΛ : {φsΛ : WickContraction φs.length // φsΛ.EqTimeOnly} // ¬ φsΛ.1 = empty} :=
|
||||
(Equiv.sumCompl _).symm
|
||||
rw [timeOrder_ofFieldOpList_eqTimeOnly, ← e1.symm.sum_comp]
|
||||
simp [e1]
|
||||
simp only [Equiv.symm_symm, Algebra.smul_mul_assoc, Fintype.sum_sum_type,
|
||||
Equiv.sumCompl_apply_inl, Equiv.sumCompl_apply_inr, ne_eq, e1]
|
||||
congr 1
|
||||
· let e2 : { φsΛ : EqTimeOnly φs // φsΛ.1 = empty } ≃ Unit := {
|
||||
· let e2 : { φsΛ : {φsΛ : WickContraction φs.length // φsΛ.EqTimeOnly} // φsΛ.1 = empty } ≃ Unit := {
|
||||
toFun := fun x => (), invFun := fun x => ⟨⟨empty, by simp⟩, rfl⟩,
|
||||
left_inv a := by
|
||||
ext
|
||||
simp [a.2], right_inv a := by simp }
|
||||
rw [← e2.symm.sum_comp]
|
||||
simp [e2, sign_empty]
|
||||
· let e2 : { φsΛ : EqTimeOnly φs // ¬ φsΛ.1 = empty } ≃
|
||||
{φsΛ // φsΛ ∈ EqTimeOnly φs ∧ φsΛ ≠ empty} := {
|
||||
· let e2 : { φsΛ : {φsΛ : WickContraction φs.length // φsΛ.EqTimeOnly} // ¬ φsΛ.1 = empty } ≃
|
||||
{φsΛ // φsΛ.EqTimeOnly ∧ φsΛ ≠ empty} := {
|
||||
toFun := fun x => ⟨x, ⟨x.1.2, x.2⟩⟩, invFun := fun x => ⟨⟨x.1, x.2.1⟩, x.2.2⟩,
|
||||
left_inv a := by rfl, right_inv a := by rfl }
|
||||
rw [← e2.symm.sum_comp]
|
||||
|
@ -64,7 +70,7 @@ lemma timeOrder_ofFieldOpList_eq_eqTimeOnly_empty (φs : List 𝓕.States) :
|
|||
|
||||
lemma normalOrder_timeOrder_ofFieldOpList_eq_eqTimeOnly_empty (φs : List 𝓕.States) :
|
||||
𝓣(𝓝(ofFieldOpList φs)) = 𝓣(ofFieldOpList φs) -
|
||||
∑ (φsΛ : {φsΛ // φsΛ ∈ EqTimeOnly φs ∧ φsΛ ≠ empty}),
|
||||
∑ (φsΛ : {φsΛ // φsΛ.EqTimeOnly (φs := φs) ∧ φsΛ ≠ empty}),
|
||||
φsΛ.1.sign • φsΛ.1.timeContract.1 * 𝓣(𝓝(ofFieldOpList [φsΛ.1]ᵘᶜ)) := by
|
||||
rw [timeOrder_ofFieldOpList_eq_eqTimeOnly_empty]
|
||||
simp
|
||||
|
@ -74,20 +80,21 @@ lemma normalOrder_timeOrder_ofFieldOpList_eq_haveEqTime_sum_not_haveEqTime (φs
|
|||
φsΛ.1.sign • φsΛ.1.timeContract.1 * 𝓝(ofFieldOpList [φsΛ.1]ᵘᶜ))
|
||||
+ (∑ (φsΛ : {φsΛ : WickContraction φs.length // HaveEqTime φsΛ}),
|
||||
φsΛ.1.sign • φsΛ.1.timeContract.1 * 𝓝(ofFieldOpList [φsΛ.1]ᵘᶜ))
|
||||
- ∑ (φsΛ : {φsΛ // φsΛ ∈ EqTimeOnly φs ∧ φsΛ ≠ empty}),
|
||||
- ∑ (φsΛ : {φsΛ // φsΛ.EqTimeOnly (φs := φs) ∧ φsΛ ≠ empty}),
|
||||
φsΛ.1.sign • φsΛ.1.timeContract.1 * 𝓣(𝓝(ofFieldOpList [φsΛ.1]ᵘᶜ)) := by
|
||||
rw [normalOrder_timeOrder_ofFieldOpList_eq_eqTimeOnly_empty]
|
||||
rw [wicks_theorem]
|
||||
let e1 : WickContraction φs.length ≃ {φsΛ // HaveEqTime φsΛ} ⊕ {φsΛ // ¬ HaveEqTime φsΛ} := by
|
||||
exact (Equiv.sumCompl HaveEqTime).symm
|
||||
rw [← e1.symm.sum_comp]
|
||||
simp [e1]
|
||||
simp only [Equiv.symm_symm, Algebra.smul_mul_assoc, Fintype.sum_sum_type,
|
||||
Equiv.sumCompl_apply_inl, Equiv.sumCompl_apply_inr, ne_eq, sub_left_inj, e1]
|
||||
rw [add_comm]
|
||||
|
||||
lemma haveEqTime_wick_sum_eq_split (φs : List 𝓕.States) :
|
||||
(∑ (φsΛ : {φsΛ : WickContraction φs.length // HaveEqTime φsΛ}),
|
||||
φsΛ.1.sign • φsΛ.1.timeContract.1 * 𝓝(ofFieldOpList [φsΛ.1]ᵘᶜ)) =
|
||||
∑ (φsΛ : {φsΛ // φsΛ ∈ EqTimeOnly φs ∧ φsΛ ≠ empty}), (sign φs ↑φsΛ • (φsΛ.1).timeContract *
|
||||
∑ (φsΛ : {φsΛ // φsΛ.EqTimeOnly (φs := φs) ∧ φsΛ ≠ empty}), (sign φs ↑φsΛ • (φsΛ.1).timeContract *
|
||||
∑ φssucΛ : { φssucΛ : WickContraction [φsΛ.1]ᵘᶜ.length // ¬φssucΛ.HaveEqTime },
|
||||
sign [φsΛ.1]ᵘᶜ φssucΛ •
|
||||
(φssucΛ.1).timeContract * normalOrder (ofFieldOpList [φssucΛ.1]ᵘᶜ)) := by
|
||||
|
@ -108,7 +115,7 @@ lemma haveEqTime_wick_sum_eq_split (φs : List 𝓕.States) :
|
|||
rw [← Finset.mul_sum]
|
||||
congr
|
||||
funext φsΛ'
|
||||
simp
|
||||
simp only [ne_eq, Algebra.smul_mul_assoc]
|
||||
congr 1
|
||||
rw [@join_uncontractedListGet]
|
||||
|
||||
|
@ -116,7 +123,7 @@ lemma haveEqTime_wick_sum_eq_split (φs : List 𝓕.States) :
|
|||
lemma normalOrder_timeOrder_ofFieldOpList_eq_not_haveEqTime_sub_inductive (φs : List 𝓕.States) :
|
||||
𝓣(𝓝(ofFieldOpList φs)) = (∑ (φsΛ : {φsΛ : WickContraction φs.length // ¬ HaveEqTime φsΛ}),
|
||||
φsΛ.1.sign • φsΛ.1.timeContract.1 * 𝓝(ofFieldOpList [φsΛ.1]ᵘᶜ))
|
||||
+ ∑ (φsΛ : {φsΛ // φsΛ ∈ EqTimeOnly φs ∧ φsΛ ≠ empty}),
|
||||
+ ∑ (φsΛ : {φsΛ // φsΛ.EqTimeOnly (φs := φs) ∧ φsΛ ≠ empty}),
|
||||
sign φs ↑φsΛ • (φsΛ.1).timeContract *
|
||||
(∑ φssucΛ : { φssucΛ : WickContraction [φsΛ.1]ᵘᶜ.length // ¬ φssucΛ.HaveEqTime },
|
||||
sign [φsΛ.1]ᵘᶜ φssucΛ • (φssucΛ.1).timeContract * normalOrder (ofFieldOpList [φssucΛ.1]ᵘᶜ) -
|
||||
|
@ -125,11 +132,11 @@ lemma normalOrder_timeOrder_ofFieldOpList_eq_not_haveEqTime_sub_inductive (φs :
|
|||
rw [add_sub_assoc]
|
||||
congr 1
|
||||
rw [haveEqTime_wick_sum_eq_split]
|
||||
simp
|
||||
simp only [ne_eq, Algebra.smul_mul_assoc]
|
||||
rw [← Finset.sum_sub_distrib]
|
||||
congr 1
|
||||
funext x
|
||||
simp
|
||||
simp only
|
||||
rw [← smul_sub, ← mul_sub]
|
||||
|
||||
lemma wicks_theorem_normal_order_empty : 𝓣(𝓝(ofFieldOpList [])) = ∑ (φsΛ : {φsΛ : WickContraction ([] : List 𝓕.States).length // ¬ HaveEqTime φsΛ}),
|
||||
|
@ -140,12 +147,12 @@ lemma wicks_theorem_normal_order_empty : 𝓣(𝓝(ofFieldOpList [])) = ∑ (φs
|
|||
invFun := fun x => ⟨empty, by simp⟩,
|
||||
left_inv := by
|
||||
intro a
|
||||
simp
|
||||
simp only [List.length_nil]
|
||||
apply Subtype.eq
|
||||
apply Subtype.eq
|
||||
simp [empty]
|
||||
simp only [empty]
|
||||
ext i
|
||||
simp
|
||||
simp only [Finset.not_mem_empty, false_iff]
|
||||
by_contra hn
|
||||
have h2 := a.1.2.1 i hn
|
||||
rw [@Finset.card_eq_two] at h2
|
||||
|
@ -153,11 +160,13 @@ lemma wicks_theorem_normal_order_empty : 𝓣(𝓝(ofFieldOpList [])) = ∑ (φs
|
|||
exact Fin.elim0 a,
|
||||
right_inv := by intro a; simp}
|
||||
rw [← e2.symm.sum_comp]
|
||||
simp [e2, sign_empty]
|
||||
simp only [Finset.univ_unique, PUnit.default_eq_unit, List.length_nil, Equiv.coe_fn_symm_mk,
|
||||
sign_empty, timeContract_empty, OneMemClass.coe_one, one_smul, uncontractedListGet_empty,
|
||||
one_mul, Finset.sum_const, Finset.card_singleton, e2]
|
||||
have h1' : ofFieldOpList (𝓕 := 𝓕) [] = ofCrAnFieldOpList [] := by rfl
|
||||
rw [h1']
|
||||
rw [normalOrder_ofCrAnFieldOpList]
|
||||
simp
|
||||
simp only [normalOrderSign_nil, normalOrderList_nil, one_smul]
|
||||
rw [ofCrAnFieldOpList, timeOrder_eq_ι_timeOrderF]
|
||||
rw [timeOrderF_ofCrAnList]
|
||||
simp
|
||||
|
@ -181,9 +190,9 @@ decreasing_by
|
|||
simp only [uncontractedListGet, List.length_cons, List.length_map, gt_iff_lt]
|
||||
rw [uncontractedList_length_eq_card]
|
||||
have hc := uncontracted_card_eq_iff φsΛ.1
|
||||
simp [φsΛ.2.2] at hc
|
||||
simp only [List.length_cons, φsΛ.2.2, iff_false] at hc
|
||||
have hc' := uncontracted_card_le φsΛ.1
|
||||
simp_all
|
||||
simp_all only [Algebra.smul_mul_assoc, List.length_cons, Finset.mem_univ, gt_iff_lt]
|
||||
omega
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue