refactor: Update supercommute notation
This commit is contained in:
parent
d2ce55ddd0
commit
82fae67ba3
12 changed files with 197 additions and 188 deletions
|
@ -24,24 +24,24 @@ variable (𝓕 : FieldSpecification)
|
|||
def fieldOpIdealSet : Set (FieldOpFreeAlgebra 𝓕) :=
|
||||
{ x |
|
||||
(∃ (φ1 φ2 φ3 : 𝓕.CrAnFieldOp),
|
||||
x = [ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛca]ₛca)
|
||||
x = [ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛF]ₛF)
|
||||
∨ (∃ (φc φc' : 𝓕.CrAnFieldOp) (_ : 𝓕 |>ᶜ φc = .create) (_ : 𝓕 |>ᶜ φc' = .create),
|
||||
x = [ofCrAnOpF φc, ofCrAnOpF φc']ₛca)
|
||||
x = [ofCrAnOpF φc, ofCrAnOpF φc']ₛF)
|
||||
∨ (∃ (φa φa' : 𝓕.CrAnFieldOp) (_ : 𝓕 |>ᶜ φa = .annihilate) (_ : 𝓕 |>ᶜ φa' = .annihilate),
|
||||
x = [ofCrAnOpF φa, ofCrAnOpF φa']ₛca)
|
||||
x = [ofCrAnOpF φa, ofCrAnOpF φa']ₛF)
|
||||
∨ (∃ (φ φ' : 𝓕.CrAnFieldOp) (_ : ¬ (𝓕 |>ₛ φ) = (𝓕 |>ₛ φ')),
|
||||
x = [ofCrAnOpF φ, ofCrAnOpF φ']ₛca)}
|
||||
x = [ofCrAnOpF φ, ofCrAnOpF φ']ₛF)}
|
||||
|
||||
/-- For a field specification `𝓕`, the algebra `𝓕.FieldOpAlgebra` is defined as the quotient
|
||||
of the free algebra `𝓕.FieldOpFreeAlgebra` by the ideal generated by
|
||||
- `[ofCrAnOpF φc, ofCrAnOpF φc']ₛca` for `φc` and `φc'` field creation operators.
|
||||
- `[ofCrAnOpF φc, ofCrAnOpF φc']ₛF` for `φc` and `φc'` field creation operators.
|
||||
This corresponds to the condition that two creation operators always super-commute.
|
||||
- `[ofCrAnOpF φa, ofCrAnOpF φa']ₛca` for `φa` and `φa'` field annihilation operators.
|
||||
- `[ofCrAnOpF φa, ofCrAnOpF φa']ₛF` for `φa` and `φa'` field annihilation operators.
|
||||
This corresponds to the condition that two annihilation operators always super-commute.
|
||||
- `[ofCrAnOpF φ, ofCrAnOpF φ']ₛca` for `φ` and `φ'` operators with different statistics.
|
||||
- `[ofCrAnOpF φ, ofCrAnOpF φ']ₛF` for `φ` and `φ'` operators with different statistics.
|
||||
This corresponds to the condition that two operators with different statistics always
|
||||
super-commute. In other words, fermions and bosons always super-commute.
|
||||
- `[ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛca]ₛca`. This corresponds to the condition,
|
||||
- `[ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛF]ₛF`. This corresponds to the condition,
|
||||
when combined with the conditions above, that the super-commutator is in the center
|
||||
of the algebra.
|
||||
-/
|
||||
|
@ -70,7 +70,7 @@ lemma equiv_iff_exists_add (x y : FieldOpFreeAlgebra 𝓕) :
|
|||
rw [equiv_iff_sub_mem_ideal]
|
||||
simp [ha]
|
||||
|
||||
/-- For a field specification `𝓕`, the projection
|
||||
/-- For a field specification `𝓕`, `ι` is defined as the projection
|
||||
|
||||
`𝓕.FieldOpFreeAlgebra →ₐ[ℂ] FieldOpAlgebra 𝓕`
|
||||
|
||||
|
@ -100,7 +100,7 @@ lemma ι_of_mem_fieldOpIdealSet (x : FieldOpFreeAlgebra 𝓕) (hx : x ∈ 𝓕.f
|
|||
simpa using hx
|
||||
|
||||
lemma ι_superCommuteF_of_create_create (φc φc' : 𝓕.CrAnFieldOp) (hφc : 𝓕 |>ᶜ φc = .create)
|
||||
(hφc' : 𝓕 |>ᶜ φc' = .create) : ι [ofCrAnOpF φc, ofCrAnOpF φc']ₛca = 0 := by
|
||||
(hφc' : 𝓕 |>ᶜ φc' = .create) : ι [ofCrAnOpF φc, ofCrAnOpF φc']ₛF = 0 := by
|
||||
apply ι_of_mem_fieldOpIdealSet
|
||||
simp only [fieldOpIdealSet, exists_and_left, Set.mem_setOf_eq]
|
||||
simp only [exists_prop]
|
||||
|
@ -110,7 +110,7 @@ lemma ι_superCommuteF_of_create_create (φc φc' : 𝓕.CrAnFieldOp) (hφc :
|
|||
|
||||
lemma ι_superCommuteF_of_annihilate_annihilate (φa φa' : 𝓕.CrAnFieldOp)
|
||||
(hφa : 𝓕 |>ᶜ φa = .annihilate) (hφa' : 𝓕 |>ᶜ φa' = .annihilate) :
|
||||
ι [ofCrAnOpF φa, ofCrAnOpF φa']ₛca = 0 := by
|
||||
ι [ofCrAnOpF φa, ofCrAnOpF φa']ₛF = 0 := by
|
||||
apply ι_of_mem_fieldOpIdealSet
|
||||
simp only [fieldOpIdealSet, exists_and_left, Set.mem_setOf_eq]
|
||||
simp only [exists_prop]
|
||||
|
@ -120,7 +120,7 @@ lemma ι_superCommuteF_of_annihilate_annihilate (φa φa' : 𝓕.CrAnFieldOp)
|
|||
use φa, φa', hφa, hφa'
|
||||
|
||||
lemma ι_superCommuteF_of_diff_statistic {φ ψ : 𝓕.CrAnFieldOp}
|
||||
(h : (𝓕 |>ₛ φ) ≠ (𝓕 |>ₛ ψ)) : ι [ofCrAnOpF φ, ofCrAnOpF ψ]ₛca = 0 := by
|
||||
(h : (𝓕 |>ₛ φ) ≠ (𝓕 |>ₛ ψ)) : ι [ofCrAnOpF φ, ofCrAnOpF ψ]ₛF = 0 := by
|
||||
apply ι_of_mem_fieldOpIdealSet
|
||||
simp only [fieldOpIdealSet, exists_prop, exists_and_left, Set.mem_setOf_eq]
|
||||
right
|
||||
|
@ -129,8 +129,8 @@ lemma ι_superCommuteF_of_diff_statistic {φ ψ : 𝓕.CrAnFieldOp}
|
|||
use φ, ψ
|
||||
|
||||
lemma ι_superCommuteF_zero_of_fermionic (φ ψ : 𝓕.CrAnFieldOp)
|
||||
(h : [ofCrAnOpF φ, ofCrAnOpF ψ]ₛca ∈ statisticSubmodule fermionic) :
|
||||
ι [ofCrAnOpF φ, ofCrAnOpF ψ]ₛca = 0 := by
|
||||
(h : [ofCrAnOpF φ, ofCrAnOpF ψ]ₛF ∈ statisticSubmodule fermionic) :
|
||||
ι [ofCrAnOpF φ, ofCrAnOpF ψ]ₛF = 0 := by
|
||||
rw [← ofCrAnListF_singleton, ← ofCrAnListF_singleton] at h ⊢
|
||||
rcases statistic_neq_of_superCommuteF_fermionic h with h | h
|
||||
· simp only [ofCrAnListF_singleton]
|
||||
|
@ -139,8 +139,8 @@ lemma ι_superCommuteF_zero_of_fermionic (φ ψ : 𝓕.CrAnFieldOp)
|
|||
· simp [h]
|
||||
|
||||
lemma ι_superCommuteF_ofCrAnOpF_ofCrAnOpF_bosonic_or_zero (φ ψ : 𝓕.CrAnFieldOp) :
|
||||
[ofCrAnOpF φ, ofCrAnOpF ψ]ₛca ∈ statisticSubmodule bosonic ∨
|
||||
ι [ofCrAnOpF φ, ofCrAnOpF ψ]ₛca = 0 := by
|
||||
[ofCrAnOpF φ, ofCrAnOpF ψ]ₛF ∈ statisticSubmodule bosonic ∨
|
||||
ι [ofCrAnOpF φ, ofCrAnOpF ψ]ₛF = 0 := by
|
||||
rcases superCommuteF_ofCrAnListF_ofCrAnListF_bosonic_or_fermionic [φ] [ψ] with h | h
|
||||
· simp_all [ofCrAnListF_singleton]
|
||||
· simp_all only [ofCrAnListF_singleton]
|
||||
|
@ -155,14 +155,14 @@ lemma ι_superCommuteF_ofCrAnOpF_ofCrAnOpF_bosonic_or_zero (φ ψ : 𝓕.CrAnFie
|
|||
|
||||
@[simp]
|
||||
lemma ι_superCommuteF_ofCrAnOpF_superCommuteF_ofCrAnOpF_ofCrAnOpF (φ1 φ2 φ3 : 𝓕.CrAnFieldOp) :
|
||||
ι [ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛca]ₛca = 0 := by
|
||||
ι [ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛF]ₛF = 0 := by
|
||||
apply ι_of_mem_fieldOpIdealSet
|
||||
simp only [fieldOpIdealSet, exists_prop, exists_and_left, Set.mem_setOf_eq]
|
||||
left
|
||||
use φ1, φ2, φ3
|
||||
|
||||
lemma ι_superCommuteF_superCommuteF_ofCrAnOpF_ofCrAnOpF_ofCrAnOpF (φ1 φ2 φ3 : 𝓕.CrAnFieldOp) :
|
||||
ι [[ofCrAnOpF φ1, ofCrAnOpF φ2]ₛca, ofCrAnOpF φ3]ₛca = 0 := by
|
||||
ι [[ofCrAnOpF φ1, ofCrAnOpF φ2]ₛF, ofCrAnOpF φ3]ₛF = 0 := by
|
||||
rw [← ofCrAnListF_singleton, ← ofCrAnListF_singleton, ← ofCrAnListF_singleton]
|
||||
rcases superCommuteF_ofCrAnListF_ofCrAnListF_bosonic_or_fermionic [φ1] [φ2] with h | h
|
||||
· rw [bonsonic_superCommuteF_symm h]
|
||||
|
@ -175,7 +175,7 @@ lemma ι_superCommuteF_superCommuteF_ofCrAnOpF_ofCrAnOpF_ofCrAnOpF (φ1 φ2 φ3
|
|||
|
||||
lemma ι_superCommuteF_superCommuteF_ofCrAnOpF_ofCrAnOpF_ofCrAnListF (φ1 φ2 : 𝓕.CrAnFieldOp)
|
||||
(φs : List 𝓕.CrAnFieldOp) :
|
||||
ι [[ofCrAnOpF φ1, ofCrAnOpF φ2]ₛca, ofCrAnListF φs]ₛca = 0 := by
|
||||
ι [[ofCrAnOpF φ1, ofCrAnOpF φ2]ₛF, ofCrAnListF φs]ₛF = 0 := by
|
||||
rw [← ofCrAnListF_singleton, ← ofCrAnListF_singleton]
|
||||
rcases superCommuteF_ofCrAnListF_ofCrAnListF_bosonic_or_fermionic [φ1] [φ2] with h | h
|
||||
· rw [superCommuteF_bosonic_ofCrAnListF_eq_sum _ _ h]
|
||||
|
@ -185,27 +185,27 @@ lemma ι_superCommuteF_superCommuteF_ofCrAnOpF_ofCrAnOpF_ofCrAnListF (φ1 φ2 :
|
|||
|
||||
@[simp]
|
||||
lemma ι_superCommuteF_superCommuteF_ofCrAnOpF_ofCrAnOpF_fieldOpFreeAlgebra (φ1 φ2 : 𝓕.CrAnFieldOp)
|
||||
(a : 𝓕.FieldOpFreeAlgebra) : ι [[ofCrAnOpF φ1, ofCrAnOpF φ2]ₛca, a]ₛca = 0 := by
|
||||
change (ι.toLinearMap ∘ₗ superCommuteF [ofCrAnOpF φ1, ofCrAnOpF φ2]ₛca) a = _
|
||||
have h1 : (ι.toLinearMap ∘ₗ superCommuteF [ofCrAnOpF φ1, ofCrAnOpF φ2]ₛca) = 0 := by
|
||||
(a : 𝓕.FieldOpFreeAlgebra) : ι [[ofCrAnOpF φ1, ofCrAnOpF φ2]ₛF, a]ₛF = 0 := by
|
||||
change (ι.toLinearMap ∘ₗ superCommuteF [ofCrAnOpF φ1, ofCrAnOpF φ2]ₛF) a = _
|
||||
have h1 : (ι.toLinearMap ∘ₗ superCommuteF [ofCrAnOpF φ1, ofCrAnOpF φ2]ₛF) = 0 := by
|
||||
apply (ofCrAnListFBasis.ext fun l ↦ ?_)
|
||||
simp [ι_superCommuteF_superCommuteF_ofCrAnOpF_ofCrAnOpF_ofCrAnListF]
|
||||
rw [h1]
|
||||
simp
|
||||
|
||||
lemma ι_commute_fieldOpFreeAlgebra_superCommuteF_ofCrAnOpF_ofCrAnOpF (φ1 φ2 : 𝓕.CrAnFieldOp)
|
||||
(a : 𝓕.FieldOpFreeAlgebra) : ι a * ι [ofCrAnOpF φ1, ofCrAnOpF φ2]ₛca -
|
||||
ι [ofCrAnOpF φ1, ofCrAnOpF φ2]ₛca * ι a = 0 := by
|
||||
(a : 𝓕.FieldOpFreeAlgebra) : ι a * ι [ofCrAnOpF φ1, ofCrAnOpF φ2]ₛF -
|
||||
ι [ofCrAnOpF φ1, ofCrAnOpF φ2]ₛF * ι a = 0 := by
|
||||
rcases ι_superCommuteF_ofCrAnOpF_ofCrAnOpF_bosonic_or_zero φ1 φ2 with h | h
|
||||
swap
|
||||
· simp [h]
|
||||
trans - ι [[ofCrAnOpF φ1, ofCrAnOpF φ2]ₛca, a]ₛca
|
||||
trans - ι [[ofCrAnOpF φ1, ofCrAnOpF φ2]ₛF, a]ₛF
|
||||
· rw [bosonic_superCommuteF h]
|
||||
simp
|
||||
· simp
|
||||
|
||||
lemma ι_superCommuteF_ofCrAnOpF_ofCrAnOpF_mem_center (φ ψ : 𝓕.CrAnFieldOp) :
|
||||
ι [ofCrAnOpF φ, ofCrAnOpF ψ]ₛca ∈ Subalgebra.center ℂ 𝓕.FieldOpAlgebra := by
|
||||
ι [ofCrAnOpF φ, ofCrAnOpF ψ]ₛF ∈ Subalgebra.center ℂ 𝓕.FieldOpAlgebra := by
|
||||
rw [Subalgebra.mem_center_iff]
|
||||
intro a
|
||||
obtain ⟨a, rfl⟩ := ι_surjective a
|
||||
|
|
|
@ -32,7 +32,7 @@ is zero.
|
|||
|
||||
lemma ι_normalOrderF_superCommuteF_ofCrAnListF_ofCrAnListF_eq_zero
|
||||
(φa φa' : 𝓕.CrAnFieldOp) (φs φs' : List 𝓕.CrAnFieldOp) :
|
||||
ι 𝓝ᶠ(ofCrAnListF φs * [ofCrAnOpF φa, ofCrAnOpF φa']ₛca * ofCrAnListF φs') = 0 := by
|
||||
ι 𝓝ᶠ(ofCrAnListF φs * [ofCrAnOpF φa, ofCrAnOpF φa']ₛF * ofCrAnListF φs') = 0 := by
|
||||
rcases CreateAnnihilate.eq_create_or_annihilate (𝓕 |>ᶜ φa) with hφa | hφa
|
||||
<;> rcases CreateAnnihilate.eq_create_or_annihilate (𝓕 |>ᶜ φa') with hφa' | hφa'
|
||||
· rw [normalOrderF_superCommuteF_ofCrAnListF_create_create_ofCrAnListF φa φa' hφa hφa' φs φs']
|
||||
|
@ -53,27 +53,27 @@ lemma ι_normalOrderF_superCommuteF_ofCrAnListF_ofCrAnListF_eq_zero
|
|||
lemma ι_normalOrderF_superCommuteF_ofCrAnListF_eq_zero
|
||||
(φa φa' : 𝓕.CrAnFieldOp) (φs : List 𝓕.CrAnFieldOp)
|
||||
(a : 𝓕.FieldOpFreeAlgebra) :
|
||||
ι 𝓝ᶠ(ofCrAnListF φs * [ofCrAnOpF φa, ofCrAnOpF φa']ₛca * a) = 0 := by
|
||||
ι 𝓝ᶠ(ofCrAnListF φs * [ofCrAnOpF φa, ofCrAnOpF φa']ₛF * a) = 0 := by
|
||||
have hf : ι.toLinearMap ∘ₗ normalOrderF ∘ₗ
|
||||
mulLinearMap (ofCrAnListF φs * [ofCrAnOpF φa, ofCrAnOpF φa']ₛca) = 0 := by
|
||||
mulLinearMap (ofCrAnListF φs * [ofCrAnOpF φa, ofCrAnOpF φa']ₛF) = 0 := by
|
||||
apply ofCrAnListFBasis.ext
|
||||
intro l
|
||||
simp only [FieldOpFreeAlgebra.ofListBasis_eq_ofList, LinearMap.coe_comp, Function.comp_apply,
|
||||
AlgHom.toLinearMap_apply, LinearMap.zero_apply]
|
||||
exact ι_normalOrderF_superCommuteF_ofCrAnListF_ofCrAnListF_eq_zero φa φa' φs l
|
||||
change (ι.toLinearMap ∘ₗ normalOrderF ∘ₗ
|
||||
mulLinearMap ((ofCrAnListF φs * [ofCrAnOpF φa, ofCrAnOpF φa']ₛca))) a = 0
|
||||
mulLinearMap ((ofCrAnListF φs * [ofCrAnOpF φa, ofCrAnOpF φa']ₛF))) a = 0
|
||||
rw [hf]
|
||||
simp
|
||||
|
||||
lemma ι_normalOrderF_superCommuteF_ofCrAnOpF_eq_zero_mul (φa φa' : 𝓕.CrAnFieldOp)
|
||||
(a b : 𝓕.FieldOpFreeAlgebra) :
|
||||
ι 𝓝ᶠ(a * [ofCrAnOpF φa, ofCrAnOpF φa']ₛca * b) = 0 := by
|
||||
ι 𝓝ᶠ(a * [ofCrAnOpF φa, ofCrAnOpF φa']ₛF * b) = 0 := by
|
||||
rw [mul_assoc]
|
||||
change (ι.toLinearMap ∘ₗ normalOrderF ∘ₗ mulLinearMap.flip
|
||||
([ofCrAnOpF φa, ofCrAnOpF φa']ₛca * b)) a = 0
|
||||
([ofCrAnOpF φa, ofCrAnOpF φa']ₛF * b)) a = 0
|
||||
have hf : ι.toLinearMap ∘ₗ normalOrderF ∘ₗ mulLinearMap.flip
|
||||
([ofCrAnOpF φa, ofCrAnOpF φa']ₛca * b) = 0 := by
|
||||
([ofCrAnOpF φa, ofCrAnOpF φa']ₛF * b) = 0 := by
|
||||
apply ofCrAnListFBasis.ext
|
||||
intro l
|
||||
simp only [mulLinearMap, FieldOpFreeAlgebra.ofListBasis_eq_ofList, LinearMap.coe_comp,
|
||||
|
@ -86,7 +86,7 @@ lemma ι_normalOrderF_superCommuteF_ofCrAnOpF_eq_zero_mul (φa φa' : 𝓕.CrAnF
|
|||
|
||||
lemma ι_normalOrderF_superCommuteF_ofCrAnOpF_ofCrAnListF_eq_zero_mul (φa : 𝓕.CrAnFieldOp)
|
||||
(φs : List 𝓕.CrAnFieldOp) (a b : 𝓕.FieldOpFreeAlgebra) :
|
||||
ι 𝓝ᶠ(a * [ofCrAnOpF φa, ofCrAnListF φs]ₛca * b) = 0 := by
|
||||
ι 𝓝ᶠ(a * [ofCrAnOpF φa, ofCrAnListF φs]ₛF * b) = 0 := by
|
||||
rw [← ofCrAnListF_singleton, superCommuteF_ofCrAnListF_ofCrAnListF_eq_sum]
|
||||
rw [Finset.mul_sum, Finset.sum_mul]
|
||||
rw [map_sum, map_sum]
|
||||
|
@ -98,7 +98,7 @@ lemma ι_normalOrderF_superCommuteF_ofCrAnOpF_ofCrAnListF_eq_zero_mul (φa :
|
|||
|
||||
lemma ι_normalOrderF_superCommuteF_ofCrAnListF_ofCrAnOpF_eq_zero_mul (φa : 𝓕.CrAnFieldOp)
|
||||
(φs : List 𝓕.CrAnFieldOp) (a b : 𝓕.FieldOpFreeAlgebra) :
|
||||
ι 𝓝ᶠ(a * [ofCrAnListF φs, ofCrAnOpF φa]ₛca * b) = 0 := by
|
||||
ι 𝓝ᶠ(a * [ofCrAnListF φs, ofCrAnOpF φa]ₛF * b) = 0 := by
|
||||
rw [← ofCrAnListF_singleton, superCommuteF_ofCrAnListF_ofCrAnListF_symm, ofCrAnListF_singleton]
|
||||
simp only [FieldStatistic.instCommGroup.eq_1, FieldStatistic.ofList_singleton, mul_neg,
|
||||
Algebra.mul_smul_comm, neg_mul, Algebra.smul_mul_assoc, map_neg, map_smul]
|
||||
|
@ -107,7 +107,7 @@ lemma ι_normalOrderF_superCommuteF_ofCrAnListF_ofCrAnOpF_eq_zero_mul (φa :
|
|||
|
||||
lemma ι_normalOrderF_superCommuteF_ofCrAnListF_ofCrAnListF_eq_zero_mul
|
||||
(φs φs' : List 𝓕.CrAnFieldOp) (a b : 𝓕.FieldOpFreeAlgebra) :
|
||||
ι 𝓝ᶠ(a * [ofCrAnListF φs, ofCrAnListF φs']ₛca * b) = 0 := by
|
||||
ι 𝓝ᶠ(a * [ofCrAnListF φs, ofCrAnListF φs']ₛF * b) = 0 := by
|
||||
rw [superCommuteF_ofCrAnListF_ofCrAnListF_eq_sum, Finset.mul_sum, Finset.sum_mul]
|
||||
rw [map_sum, map_sum]
|
||||
apply Fintype.sum_eq_zero
|
||||
|
@ -119,7 +119,7 @@ lemma ι_normalOrderF_superCommuteF_ofCrAnListF_ofCrAnListF_eq_zero_mul
|
|||
lemma ι_normalOrderF_superCommuteF_ofCrAnListF_eq_zero_mul
|
||||
(φs : List 𝓕.CrAnFieldOp)
|
||||
(a b c : 𝓕.FieldOpFreeAlgebra) :
|
||||
ι 𝓝ᶠ(a * [ofCrAnListF φs, c]ₛca * b) = 0 := by
|
||||
ι 𝓝ᶠ(a * [ofCrAnListF φs, c]ₛF * b) = 0 := by
|
||||
change (ι.toLinearMap ∘ₗ normalOrderF ∘ₗ
|
||||
mulLinearMap.flip b ∘ₗ mulLinearMap a ∘ₗ superCommuteF (ofCrAnListF φs)) c = 0
|
||||
have hf : (ι.toLinearMap ∘ₗ normalOrderF ∘ₗ
|
||||
|
@ -135,7 +135,7 @@ lemma ι_normalOrderF_superCommuteF_ofCrAnListF_eq_zero_mul
|
|||
|
||||
@[simp]
|
||||
lemma ι_normalOrderF_superCommuteF_eq_zero_mul
|
||||
(a b c d : 𝓕.FieldOpFreeAlgebra) : ι 𝓝ᶠ(a * [d, c]ₛca * b) = 0 := by
|
||||
(a b c d : 𝓕.FieldOpFreeAlgebra) : ι 𝓝ᶠ(a * [d, c]ₛF * b) = 0 := by
|
||||
change (ι.toLinearMap ∘ₗ normalOrderF ∘ₗ
|
||||
mulLinearMap.flip b ∘ₗ mulLinearMap a ∘ₗ superCommuteF.flip c) d = 0
|
||||
have hf : (ι.toLinearMap ∘ₗ normalOrderF ∘ₗ
|
||||
|
@ -151,25 +151,25 @@ lemma ι_normalOrderF_superCommuteF_eq_zero_mul
|
|||
|
||||
@[simp]
|
||||
lemma ι_normalOrder_superCommuteF_eq_zero_mul_right (b c d : 𝓕.FieldOpFreeAlgebra) :
|
||||
ι 𝓝ᶠ([d, c]ₛca * b) = 0 := by
|
||||
ι 𝓝ᶠ([d, c]ₛF * b) = 0 := by
|
||||
rw [← ι_normalOrderF_superCommuteF_eq_zero_mul 1 b c d]
|
||||
simp
|
||||
|
||||
@[simp]
|
||||
lemma ι_normalOrderF_superCommuteF_eq_zero_mul_left (a c d : 𝓕.FieldOpFreeAlgebra) :
|
||||
ι 𝓝ᶠ(a * [d, c]ₛca) = 0 := by
|
||||
ι 𝓝ᶠ(a * [d, c]ₛF) = 0 := by
|
||||
rw [← ι_normalOrderF_superCommuteF_eq_zero_mul a 1 c d]
|
||||
simp
|
||||
|
||||
@[simp]
|
||||
lemma ι_normalOrderF_superCommuteF_eq_zero_mul_mul_right (a b1 b2 c d: 𝓕.FieldOpFreeAlgebra) :
|
||||
ι 𝓝ᶠ(a * [d, c]ₛca * b1 * b2) = 0 := by
|
||||
ι 𝓝ᶠ(a * [d, c]ₛF * b1 * b2) = 0 := by
|
||||
rw [← ι_normalOrderF_superCommuteF_eq_zero_mul a (b1 * b2) c d]
|
||||
congr 2
|
||||
noncomm_ring
|
||||
|
||||
@[simp]
|
||||
lemma ι_normalOrderF_superCommuteF_eq_zero (c d : 𝓕.FieldOpFreeAlgebra) : ι 𝓝ᶠ([d, c]ₛca) = 0 := by
|
||||
lemma ι_normalOrderF_superCommuteF_eq_zero (c d : 𝓕.FieldOpFreeAlgebra) : ι 𝓝ᶠ([d, c]ₛF) = 0 := by
|
||||
rw [← ι_normalOrderF_superCommuteF_eq_zero_mul 1 1 c d]
|
||||
simp
|
||||
|
||||
|
|
|
@ -324,7 +324,7 @@ lemma anPart_mul_normalOrder_ofFieldOpList_eq_superCommute_reorder (φ : 𝓕.Fi
|
|||
|
||||
/--
|
||||
Within a proto-operator algebra we have that
|
||||
`φ * 𝓝ᶠ(φ₀φ₁…φₙ) = 𝓝ᶠ(φφ₀φ₁…φₙ) + [anpart φ, 𝓝ᶠ(φ₀φ₁…φₙ)]ₛca`.
|
||||
`φ * 𝓝ᶠ(φ₀φ₁…φₙ) = 𝓝ᶠ(φφ₀φ₁…φₙ) + [anpart φ, 𝓝ᶠ(φ₀φ₁…φₙ)]ₛF`.
|
||||
-/
|
||||
lemma ofFieldOp_mul_normalOrder_ofFieldOpList_eq_superCommute (φ : 𝓕.FieldOp)
|
||||
(φs : List 𝓕.FieldOp) : ofFieldOp φ * 𝓝(ofFieldOpList φs) =
|
||||
|
|
|
@ -20,13 +20,13 @@ namespace FieldOpAlgebra
|
|||
variable {𝓕 : FieldSpecification}
|
||||
|
||||
lemma ι_superCommuteF_eq_zero_of_ι_right_zero (a b : 𝓕.FieldOpFreeAlgebra) (h : ι b = 0) :
|
||||
ι [a, b]ₛca = 0 := by
|
||||
ι [a, b]ₛF = 0 := by
|
||||
rw [superCommuteF_expand_bosonicProjF_fermionicProjF]
|
||||
rw [ι_eq_zero_iff_ι_bosonicProjF_fermonicProj_zero] at h
|
||||
simp_all
|
||||
|
||||
lemma ι_superCommuteF_eq_zero_of_ι_left_zero (a b : 𝓕.FieldOpFreeAlgebra) (h : ι a = 0) :
|
||||
ι [a, b]ₛca = 0 := by
|
||||
ι [a, b]ₛF = 0 := by
|
||||
rw [superCommuteF_expand_bosonicProjF_fermionicProjF]
|
||||
rw [ι_eq_zero_iff_ι_bosonicProjF_fermonicProj_zero] at h
|
||||
simp_all
|
||||
|
@ -38,12 +38,12 @@ lemma ι_superCommuteF_eq_zero_of_ι_left_zero (a b : 𝓕.FieldOpFreeAlgebra) (
|
|||
-/
|
||||
|
||||
lemma ι_superCommuteF_right_zero_of_mem_ideal (a b : 𝓕.FieldOpFreeAlgebra)
|
||||
(h : b ∈ TwoSidedIdeal.span 𝓕.fieldOpIdealSet) : ι [a, b]ₛca = 0 := by
|
||||
(h : b ∈ TwoSidedIdeal.span 𝓕.fieldOpIdealSet) : ι [a, b]ₛF = 0 := by
|
||||
apply ι_superCommuteF_eq_zero_of_ι_right_zero
|
||||
exact (ι_eq_zero_iff_mem_ideal b).mpr h
|
||||
|
||||
lemma ι_superCommuteF_eq_of_equiv_right (a b1 b2 : 𝓕.FieldOpFreeAlgebra) (h : b1 ≈ b2) :
|
||||
ι [a, b1]ₛca = ι [a, b2]ₛca := by
|
||||
ι [a, b1]ₛF = ι [a, b2]ₛF := by
|
||||
rw [equiv_iff_sub_mem_ideal] at h
|
||||
rw [LinearMap.sub_mem_ker_iff.mp]
|
||||
simp only [LinearMap.mem_ker, ← map_sub]
|
||||
|
@ -68,10 +68,10 @@ noncomputable def superCommuteRight (a : 𝓕.FieldOpFreeAlgebra) :
|
|||
simp
|
||||
|
||||
lemma superCommuteRight_apply_ι (a b : 𝓕.FieldOpFreeAlgebra) :
|
||||
superCommuteRight a (ι b) = ι [a, b]ₛca := by rfl
|
||||
superCommuteRight a (ι b) = ι [a, b]ₛF := by rfl
|
||||
|
||||
lemma superCommuteRight_apply_quot (a b : 𝓕.FieldOpFreeAlgebra) :
|
||||
superCommuteRight a ⟦b⟧= ι [a, b]ₛca := by rfl
|
||||
superCommuteRight a ⟦b⟧= ι [a, b]ₛF := by rfl
|
||||
|
||||
lemma superCommuteRight_eq_of_equiv (a1 a2 : 𝓕.FieldOpFreeAlgebra) (h : a1 ≈ a2) :
|
||||
superCommuteRight a1 = superCommuteRight a2 := by
|
||||
|
@ -126,7 +126,7 @@ noncomputable def superCommute : FieldOpAlgebra 𝓕 →ₗ[ℂ]
|
|||
scoped[FieldSpecification.FieldOpAlgebra] notation "[" a "," b "]ₛ" => superCommute a b
|
||||
|
||||
lemma superCommute_eq_ι_superCommuteF (a b : 𝓕.FieldOpFreeAlgebra) :
|
||||
[ι a, ι b]ₛ = ι [a, b]ₛca := rfl
|
||||
[ι a, ι b]ₛ = ι [a, b]ₛF := rfl
|
||||
|
||||
/-!
|
||||
|
||||
|
|
|
@ -24,7 +24,7 @@ lemma ι_timeOrderF_superCommuteF_superCommuteF_eq_time_ofCrAnListF {φ1 φ2 φ3
|
|||
crAnTimeOrderRel φ1 φ2 ∧ crAnTimeOrderRel φ1 φ3 ∧
|
||||
crAnTimeOrderRel φ2 φ1 ∧ crAnTimeOrderRel φ2 φ3 ∧
|
||||
crAnTimeOrderRel φ3 φ1 ∧ crAnTimeOrderRel φ3 φ2) :
|
||||
ι 𝓣ᶠ(ofCrAnListF φs1 * [ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛca]ₛca *
|
||||
ι 𝓣ᶠ(ofCrAnListF φs1 * [ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛF]ₛF *
|
||||
ofCrAnListF φs2) = 0 := by
|
||||
let l1 :=
|
||||
(List.takeWhile (fun c => ¬ crAnTimeOrderRel φ1 c)
|
||||
|
@ -127,7 +127,7 @@ lemma ι_timeOrderF_superCommuteF_superCommuteF_eq_time_ofCrAnListF {φ1 φ2 φ3
|
|||
repeat rw [mul_assoc]
|
||||
rw [← mul_sub, ← mul_sub, ← mul_sub]
|
||||
rw [← sub_mul, ← sub_mul, ← sub_mul]
|
||||
trans ι (ofCrAnListF l1) * ι [ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛca]ₛca *
|
||||
trans ι (ofCrAnListF l1) * ι [ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛF]ₛF *
|
||||
ι (ofCrAnListF l2)
|
||||
rw [mul_assoc]
|
||||
congr
|
||||
|
@ -141,7 +141,7 @@ lemma ι_timeOrderF_superCommuteF_superCommuteF_eq_time_ofCrAnListF {φ1 φ2 φ3
|
|||
|
||||
lemma ι_timeOrderF_superCommuteF_superCommuteF_ofCrAnListF {φ1 φ2 φ3 : 𝓕.CrAnFieldOp}
|
||||
(φs1 φs2 : List 𝓕.CrAnFieldOp) :
|
||||
ι 𝓣ᶠ(ofCrAnListF φs1 * [ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛca]ₛca * ofCrAnListF φs2)
|
||||
ι 𝓣ᶠ(ofCrAnListF φs1 * [ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛF]ₛF * ofCrAnListF φs2)
|
||||
= 0 := by
|
||||
by_cases h :
|
||||
crAnTimeOrderRel φ1 φ2 ∧ crAnTimeOrderRel φ1 φ3 ∧
|
||||
|
@ -155,16 +155,16 @@ lemma ι_timeOrderF_superCommuteF_superCommuteF_ofCrAnListF {φ1 φ2 φ3 : 𝓕.
|
|||
@[simp]
|
||||
lemma ι_timeOrderF_superCommuteF_superCommuteF {φ1 φ2 φ3 : 𝓕.CrAnFieldOp}
|
||||
(a b : 𝓕.FieldOpFreeAlgebra) :
|
||||
ι 𝓣ᶠ(a * [ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛca]ₛca * b) = 0 := by
|
||||
ι 𝓣ᶠ(a * [ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛF]ₛF * b) = 0 := by
|
||||
let pb (b : 𝓕.FieldOpFreeAlgebra) (hc : b ∈ Submodule.span ℂ (Set.range ofCrAnListFBasis)) :
|
||||
Prop := ι 𝓣ᶠ(a * [ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛca]ₛca * b) = 0
|
||||
Prop := ι 𝓣ᶠ(a * [ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛF]ₛF * b) = 0
|
||||
change pb b (Basis.mem_span _ b)
|
||||
apply Submodule.span_induction
|
||||
· intro x hx
|
||||
obtain ⟨φs, rfl⟩ := hx
|
||||
simp only [ofListBasis_eq_ofList, pb]
|
||||
let pa (a : 𝓕.FieldOpFreeAlgebra) (hc : a ∈ Submodule.span ℂ (Set.range ofCrAnListFBasis)) :
|
||||
Prop := ι 𝓣ᶠ(a * [ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛca]ₛca * ofCrAnListF φs) = 0
|
||||
Prop := ι 𝓣ᶠ(a * [ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛF]ₛF * ofCrAnListF φs) = 0
|
||||
change pa a (Basis.mem_span _ a)
|
||||
apply Submodule.span_induction
|
||||
· intro x hx
|
||||
|
@ -184,19 +184,19 @@ lemma ι_timeOrderF_superCommuteF_superCommuteF {φ1 φ2 φ3 : 𝓕.CrAnFieldOp}
|
|||
|
||||
lemma ι_timeOrderF_superCommuteF_eq_time {φ ψ : 𝓕.CrAnFieldOp}
|
||||
(hφψ : crAnTimeOrderRel φ ψ) (hψφ : crAnTimeOrderRel ψ φ) (a b : 𝓕.FieldOpFreeAlgebra) :
|
||||
ι 𝓣ᶠ(a * [ofCrAnOpF φ, ofCrAnOpF ψ]ₛca * b) =
|
||||
ι ([ofCrAnOpF φ, ofCrAnOpF ψ]ₛca * 𝓣ᶠ(a * b)) := by
|
||||
ι 𝓣ᶠ(a * [ofCrAnOpF φ, ofCrAnOpF ψ]ₛF * b) =
|
||||
ι ([ofCrAnOpF φ, ofCrAnOpF ψ]ₛF * 𝓣ᶠ(a * b)) := by
|
||||
let pb (b : 𝓕.FieldOpFreeAlgebra) (hc : b ∈ Submodule.span ℂ (Set.range ofCrAnListFBasis)) :
|
||||
Prop := ι 𝓣ᶠ(a * [ofCrAnOpF φ, ofCrAnOpF ψ]ₛca * b) =
|
||||
ι ([ofCrAnOpF φ, ofCrAnOpF ψ]ₛca * 𝓣ᶠ(a * b))
|
||||
Prop := ι 𝓣ᶠ(a * [ofCrAnOpF φ, ofCrAnOpF ψ]ₛF * b) =
|
||||
ι ([ofCrAnOpF φ, ofCrAnOpF ψ]ₛF * 𝓣ᶠ(a * b))
|
||||
change pb b (Basis.mem_span _ b)
|
||||
apply Submodule.span_induction
|
||||
· intro x hx
|
||||
obtain ⟨φs, rfl⟩ := hx
|
||||
simp only [ofListBasis_eq_ofList, map_mul, pb]
|
||||
let pa (a : 𝓕.FieldOpFreeAlgebra) (hc : a ∈ Submodule.span ℂ (Set.range ofCrAnListFBasis)) :
|
||||
Prop := ι 𝓣ᶠ(a * [ofCrAnOpF φ, ofCrAnOpF ψ]ₛca * ofCrAnListF φs) =
|
||||
ι ([ofCrAnOpF φ, ofCrAnOpF ψ]ₛca * 𝓣ᶠ(a* ofCrAnListF φs))
|
||||
Prop := ι 𝓣ᶠ(a * [ofCrAnOpF φ, ofCrAnOpF ψ]ₛF * ofCrAnListF φs) =
|
||||
ι ([ofCrAnOpF φ, ofCrAnOpF ψ]ₛF * 𝓣ᶠ(a* ofCrAnListF φs))
|
||||
change pa a (Basis.mem_span _ a)
|
||||
apply Submodule.span_induction
|
||||
· intro x hx
|
||||
|
@ -234,7 +234,7 @@ lemma ι_timeOrderF_superCommuteF_eq_time {φ ψ : 𝓕.CrAnFieldOp}
|
|||
rw [← sub_mul]
|
||||
have h1 : (ι (ofCrAnListF [φ, ψ]) -
|
||||
(exchangeSign (𝓕.crAnStatistics φ)) (𝓕.crAnStatistics ψ) • ι (ofCrAnListF [ψ, φ])) =
|
||||
ι [ofCrAnOpF φ, ofCrAnOpF ψ]ₛca := by
|
||||
ι [ofCrAnOpF φ, ofCrAnOpF ψ]ₛF := by
|
||||
rw [superCommuteF_ofCrAnOpF_ofCrAnOpF]
|
||||
rw [← ofCrAnListF_singleton, ← ofCrAnListF_singleton, ← ofCrAnListF_append]
|
||||
simp only [instCommGroup.eq_1, List.singleton_append, Algebra.smul_mul_assoc, map_sub,
|
||||
|
@ -280,7 +280,7 @@ lemma ι_timeOrderF_superCommuteF_eq_time {φ ψ : 𝓕.CrAnFieldOp}
|
|||
|
||||
lemma ι_timeOrderF_superCommuteF_neq_time {φ ψ : 𝓕.CrAnFieldOp}
|
||||
(hφψ : ¬ (crAnTimeOrderRel φ ψ ∧ crAnTimeOrderRel ψ φ)) (a b : 𝓕.FieldOpFreeAlgebra) :
|
||||
ι 𝓣ᶠ(a * [ofCrAnOpF φ, ofCrAnOpF ψ]ₛca * b) = 0 := by
|
||||
ι 𝓣ᶠ(a * [ofCrAnOpF φ, ofCrAnOpF ψ]ₛF * b) = 0 := by
|
||||
rw [timeOrderF_timeOrderF_mid]
|
||||
have hφψ : ¬ (crAnTimeOrderRel φ ψ) ∨ ¬ (crAnTimeOrderRel ψ φ) := by
|
||||
exact Decidable.not_and_iff_or_not.mp hφψ
|
||||
|
@ -433,7 +433,8 @@ lemma timeOrder_ofFieldOpList_singleton (φ : 𝓕.FieldOp) :
|
|||
|
||||
/-- For a field specification `𝓕`, the time order operator acting on a
|
||||
list of `𝓕.FieldOp`, `𝓣(φ₀…φₙ)`, is equal to
|
||||
`𝓢(φᵢ,φ₀…φᵢ₋₁) • φᵢ * 𝓣(φ₀…φᵢ₋₁φᵢ₊₁φₙ)` where `φᵢ` is the maximal time field in `φ₀…φₙ`.
|
||||
`𝓢(φᵢ,φ₀…φᵢ₋₁) • φᵢ * 𝓣(φ₀…φᵢ₋₁φᵢ₊₁φₙ)` where `φᵢ` is the maximal time field
|
||||
operator in `φ₀…φₙ`.
|
||||
|
||||
The proof of this result ultimately relies on basic properties of ordering and signs. -/
|
||||
lemma timeOrder_eq_maxTimeField_mul_finset (φ : 𝓕.FieldOp) (φs : List 𝓕.FieldOp) :
|
||||
|
|
|
@ -96,7 +96,7 @@ lemma ofCrAnListF_singleton (φ : 𝓕.CrAnFieldOp) :
|
|||
`ofCrAnOpF` of the
|
||||
creation and annihilation parts of `φ`.
|
||||
|
||||
For example for `φ` an incoming asymptotic field operator we get
|
||||
For example, for `φ` an incoming asymptotic field operator we get
|
||||
`ofCrAnOpF ⟨φ, ()⟩`, and for `φ` a
|
||||
position field operator we get `ofCrAnOpF ⟨φ, .create⟩ + ofCrAnOpF ⟨φ, .annihilate⟩`. -/
|
||||
def ofFieldOpF (φ : 𝓕.FieldOp) : FieldOpFreeAlgebra 𝓕 :=
|
||||
|
|
|
@ -239,7 +239,7 @@ lemma normalOrderF_swap_create_annihilate (φc φa : 𝓕.CrAnFieldOp)
|
|||
lemma normalOrderF_superCommuteF_create_annihilate (φc φa : 𝓕.CrAnFieldOp)
|
||||
(hφc : 𝓕 |>ᶜ φc = CreateAnnihilate.create) (hφa : 𝓕 |>ᶜ φa = CreateAnnihilate.annihilate)
|
||||
(a b : 𝓕.FieldOpFreeAlgebra) :
|
||||
𝓝ᶠ(a * [ofCrAnOpF φc, ofCrAnOpF φa]ₛca * b) = 0 := by
|
||||
𝓝ᶠ(a * [ofCrAnOpF φc, ofCrAnOpF φa]ₛF * b) = 0 := by
|
||||
simp only [superCommuteF_ofCrAnOpF_ofCrAnOpF, instCommGroup.eq_1, Algebra.smul_mul_assoc]
|
||||
rw [mul_sub, sub_mul, map_sub, ← smul_mul_assoc, ← mul_assoc, ← mul_assoc,
|
||||
normalOrderF_swap_create_annihilate φc φa hφc hφa]
|
||||
|
@ -248,7 +248,7 @@ lemma normalOrderF_superCommuteF_create_annihilate (φc φa : 𝓕.CrAnFieldOp)
|
|||
lemma normalOrderF_superCommuteF_annihilate_create (φc φa : 𝓕.CrAnFieldOp)
|
||||
(hφc : 𝓕 |>ᶜ φc = CreateAnnihilate.create) (hφa : 𝓕 |>ᶜ φa = CreateAnnihilate.annihilate)
|
||||
(a b : 𝓕.FieldOpFreeAlgebra) :
|
||||
𝓝ᶠ(a * [ofCrAnOpF φa, ofCrAnOpF φc]ₛca * b) = 0 := by
|
||||
𝓝ᶠ(a * [ofCrAnOpF φa, ofCrAnOpF φc]ₛF * b) = 0 := by
|
||||
rw [superCommuteF_ofCrAnOpF_ofCrAnOpF_symm]
|
||||
simp only [instCommGroup.eq_1, neg_smul, mul_neg, Algebra.mul_smul_comm, neg_mul,
|
||||
Algebra.smul_mul_assoc, map_neg, map_smul, neg_eq_zero, smul_eq_zero]
|
||||
|
@ -402,9 +402,9 @@ TODO "Split the following two lemmas up into smaller parts."
|
|||
lemma normalOrderF_superCommuteF_ofCrAnListF_create_create_ofCrAnListF
|
||||
(φc φc' : 𝓕.CrAnFieldOp) (hφc : 𝓕 |>ᶜ φc = CreateAnnihilate.create)
|
||||
(hφc' : 𝓕 |>ᶜ φc' = CreateAnnihilate.create) (φs φs' : List 𝓕.CrAnFieldOp) :
|
||||
(𝓝ᶠ(ofCrAnListF φs * [ofCrAnOpF φc, ofCrAnOpF φc']ₛca * ofCrAnListF φs')) =
|
||||
(𝓝ᶠ(ofCrAnListF φs * [ofCrAnOpF φc, ofCrAnOpF φc']ₛF * ofCrAnListF φs')) =
|
||||
normalOrderSign (φs ++ φc' :: φc :: φs') •
|
||||
(ofCrAnListF (createFilter φs) * [ofCrAnOpF φc, ofCrAnOpF φc']ₛca *
|
||||
(ofCrAnListF (createFilter φs) * [ofCrAnOpF φc, ofCrAnOpF φc']ₛF *
|
||||
ofCrAnListF (createFilter φs') * ofCrAnListF (annihilateFilter (φs ++ φs'))) := by
|
||||
rw [superCommuteF_ofCrAnOpF_ofCrAnOpF, mul_sub, sub_mul, map_sub]
|
||||
conv_lhs =>
|
||||
|
@ -463,10 +463,10 @@ lemma normalOrderF_superCommuteF_ofCrAnListF_annihilate_annihilate_ofCrAnListF
|
|||
(hφa : 𝓕 |>ᶜ φa = CreateAnnihilate.annihilate)
|
||||
(hφa' : 𝓕 |>ᶜ φa' = CreateAnnihilate.annihilate)
|
||||
(φs φs' : List 𝓕.CrAnFieldOp) :
|
||||
𝓝ᶠ(ofCrAnListF φs * [ofCrAnOpF φa, ofCrAnOpF φa']ₛca * ofCrAnListF φs') =
|
||||
𝓝ᶠ(ofCrAnListF φs * [ofCrAnOpF φa, ofCrAnOpF φa']ₛF * ofCrAnListF φs') =
|
||||
normalOrderSign (φs ++ φa' :: φa :: φs') •
|
||||
(ofCrAnListF (createFilter (φs ++ φs'))
|
||||
* ofCrAnListF (annihilateFilter φs) * [ofCrAnOpF φa, ofCrAnOpF φa']ₛca
|
||||
* ofCrAnListF (annihilateFilter φs) * [ofCrAnOpF φa, ofCrAnOpF φa']ₛF
|
||||
* ofCrAnListF (annihilateFilter φs')) := by
|
||||
rw [superCommuteF_ofCrAnOpF_ofCrAnOpF, mul_sub, sub_mul, map_sub]
|
||||
conv_lhs =>
|
||||
|
@ -533,7 +533,7 @@ lemma normalOrderF_superCommuteF_ofCrAnListF_annihilate_annihilate_ofCrAnListF
|
|||
-/
|
||||
|
||||
lemma ofCrAnListF_superCommuteF_normalOrderF_ofCrAnListF (φs φs' : List 𝓕.CrAnFieldOp) :
|
||||
[ofCrAnListF φs, 𝓝ᶠ(ofCrAnListF φs')]ₛca =
|
||||
[ofCrAnListF φs, 𝓝ᶠ(ofCrAnListF φs')]ₛF =
|
||||
ofCrAnListF φs * 𝓝ᶠ(ofCrAnListF φs') -
|
||||
𝓢(𝓕 |>ₛ φs, 𝓕 |>ₛ φs') • 𝓝ᶠ(ofCrAnListF φs') * ofCrAnListF φs := by
|
||||
simp only [normalOrderF_ofCrAnListF, map_smul, superCommuteF_ofCrAnListF_ofCrAnListF,
|
||||
|
@ -541,7 +541,7 @@ lemma ofCrAnListF_superCommuteF_normalOrderF_ofCrAnListF (φs φs' : List 𝓕.C
|
|||
Algebra.mul_smul_comm, mul_comm, Algebra.smul_mul_assoc]
|
||||
|
||||
lemma ofCrAnListF_superCommuteF_normalOrderF_ofFieldOpListF (φs : List 𝓕.CrAnFieldOp)
|
||||
(φs' : List 𝓕.FieldOp) : [ofCrAnListF φs, 𝓝ᶠ(ofFieldOpListF φs')]ₛca =
|
||||
(φs' : List 𝓕.FieldOp) : [ofCrAnListF φs, 𝓝ᶠ(ofFieldOpListF φs')]ₛF =
|
||||
ofCrAnListF φs * 𝓝ᶠ(ofFieldOpListF φs') -
|
||||
𝓢(𝓕 |>ₛ φs, 𝓕 |>ₛ φs') • 𝓝ᶠ(ofFieldOpListF φs') * ofCrAnListF φs := by
|
||||
rw [ofFieldOpListF_sum, map_sum, Finset.mul_sum, Finset.smul_sum, Finset.sum_mul,
|
||||
|
@ -561,20 +561,20 @@ lemma ofCrAnListF_mul_normalOrderF_ofFieldOpListF_eq_superCommuteF (φs : List
|
|||
(φs' : List 𝓕.FieldOp) :
|
||||
ofCrAnListF φs * 𝓝ᶠ(ofFieldOpListF φs') =
|
||||
𝓢(𝓕 |>ₛ φs, 𝓕 |>ₛ φs') • 𝓝ᶠ(ofFieldOpListF φs') * ofCrAnListF φs
|
||||
+ [ofCrAnListF φs, 𝓝ᶠ(ofFieldOpListF φs')]ₛca := by
|
||||
+ [ofCrAnListF φs, 𝓝ᶠ(ofFieldOpListF φs')]ₛF := by
|
||||
simp [ofCrAnListF_superCommuteF_normalOrderF_ofFieldOpListF]
|
||||
|
||||
lemma ofCrAnOpF_mul_normalOrderF_ofFieldOpListF_eq_superCommuteF (φ : 𝓕.CrAnFieldOp)
|
||||
(φs' : List 𝓕.FieldOp) : ofCrAnOpF φ * 𝓝ᶠ(ofFieldOpListF φs') =
|
||||
𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φs') • 𝓝ᶠ(ofFieldOpListF φs') * ofCrAnOpF φ
|
||||
+ [ofCrAnOpF φ, 𝓝ᶠ(ofFieldOpListF φs')]ₛca := by
|
||||
+ [ofCrAnOpF φ, 𝓝ᶠ(ofFieldOpListF φs')]ₛF := by
|
||||
simp [← ofCrAnListF_singleton, ofCrAnListF_mul_normalOrderF_ofFieldOpListF_eq_superCommuteF]
|
||||
|
||||
lemma anPartF_mul_normalOrderF_ofFieldOpListF_eq_superCommuteF (φ : 𝓕.FieldOp)
|
||||
(φs' : List 𝓕.FieldOp) :
|
||||
anPartF φ * 𝓝ᶠ(ofFieldOpListF φs') =
|
||||
𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φs') • 𝓝ᶠ(ofFieldOpListF φs' * anPartF φ)
|
||||
+ [anPartF φ, 𝓝ᶠ(ofFieldOpListF φs')]ₛca := by
|
||||
+ [anPartF φ, 𝓝ᶠ(ofFieldOpListF φs')]ₛF := by
|
||||
rw [normalOrderF_mul_anPartF]
|
||||
match φ with
|
||||
| .inAsymp φ => simp
|
||||
|
|
|
@ -29,7 +29,7 @@ open FieldStatistic
|
|||
|
||||
`superCommuteF φs φs' = φs * φs' - 𝓢(φs, φs') • φs' * φs`.
|
||||
|
||||
The notation `[a, b]ₛca` can be used for `superCommuteF a b`. -/
|
||||
The notation `[a, b]ₛF` can be used for `superCommuteF a b`. -/
|
||||
noncomputable def superCommuteF : 𝓕.FieldOpFreeAlgebra →ₗ[ℂ] 𝓕.FieldOpFreeAlgebra →ₗ[ℂ]
|
||||
𝓕.FieldOpFreeAlgebra :=
|
||||
Basis.constr ofCrAnListFBasis ℂ fun φs =>
|
||||
|
@ -37,7 +37,7 @@ noncomputable def superCommuteF : 𝓕.FieldOpFreeAlgebra →ₗ[ℂ] 𝓕.Field
|
|||
ofCrAnListF (φs ++ φs') - 𝓢(𝓕 |>ₛ φs, 𝓕 |>ₛ φs') • ofCrAnListF (φs' ++ φs)
|
||||
|
||||
@[inherit_doc superCommuteF]
|
||||
scoped[FieldSpecification.FieldOpFreeAlgebra] notation "[" φs "," φs' "]ₛca" => superCommuteF φs φs'
|
||||
scoped[FieldSpecification.FieldOpFreeAlgebra] notation "[" φs "," φs' "]ₛF" => superCommuteF φs φs'
|
||||
|
||||
/-!
|
||||
|
||||
|
@ -46,13 +46,13 @@ scoped[FieldSpecification.FieldOpFreeAlgebra] notation "[" φs "," φs' "]ₛca"
|
|||
-/
|
||||
|
||||
lemma superCommuteF_ofCrAnListF_ofCrAnListF (φs φs' : List 𝓕.CrAnFieldOp) :
|
||||
[ofCrAnListF φs, ofCrAnListF φs']ₛca =
|
||||
[ofCrAnListF φs, ofCrAnListF φs']ₛF =
|
||||
ofCrAnListF (φs ++ φs') - 𝓢(𝓕 |>ₛ φs, 𝓕 |>ₛ φs') • ofCrAnListF (φs' ++ φs) := by
|
||||
rw [← ofListBasis_eq_ofList, ← ofListBasis_eq_ofList]
|
||||
simp only [superCommuteF, Basis.constr_basis]
|
||||
|
||||
lemma superCommuteF_ofCrAnOpF_ofCrAnOpF (φ φ' : 𝓕.CrAnFieldOp) :
|
||||
[ofCrAnOpF φ, ofCrAnOpF φ']ₛca =
|
||||
[ofCrAnOpF φ, ofCrAnOpF φ']ₛF =
|
||||
ofCrAnOpF φ * ofCrAnOpF φ' - 𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φ') • ofCrAnOpF φ' * ofCrAnOpF φ := by
|
||||
rw [← ofCrAnListF_singleton, ← ofCrAnListF_singleton]
|
||||
rw [superCommuteF_ofCrAnListF_ofCrAnListF, ofCrAnListF_append]
|
||||
|
@ -61,7 +61,7 @@ lemma superCommuteF_ofCrAnOpF_ofCrAnOpF (φ φ' : 𝓕.CrAnFieldOp) :
|
|||
rw [FieldStatistic.ofList_singleton, FieldStatistic.ofList_singleton, smul_mul_assoc]
|
||||
|
||||
lemma superCommuteF_ofCrAnListF_ofFieldOpFsList (φcas : List 𝓕.CrAnFieldOp) (φs : List 𝓕.FieldOp) :
|
||||
[ofCrAnListF φcas, ofFieldOpListF φs]ₛca = ofCrAnListF φcas * ofFieldOpListF φs -
|
||||
[ofCrAnListF φcas, ofFieldOpListF φs]ₛF = ofCrAnListF φcas * ofFieldOpListF φs -
|
||||
𝓢(𝓕 |>ₛ φcas, 𝓕 |>ₛ φs) • ofFieldOpListF φs * ofCrAnListF φcas := by
|
||||
conv_lhs => rw [ofFieldOpListF_sum]
|
||||
rw [map_sum]
|
||||
|
@ -74,7 +74,7 @@ lemma superCommuteF_ofCrAnListF_ofFieldOpFsList (φcas : List 𝓕.CrAnFieldOp)
|
|||
simp
|
||||
|
||||
lemma superCommuteF_ofFieldOpListF_ofFieldOpFsList (φ : List 𝓕.FieldOp) (φs : List 𝓕.FieldOp) :
|
||||
[ofFieldOpListF φ, ofFieldOpListF φs]ₛca = ofFieldOpListF φ * ofFieldOpListF φs -
|
||||
[ofFieldOpListF φ, ofFieldOpListF φs]ₛF = ofFieldOpListF φ * ofFieldOpListF φs -
|
||||
𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φs) • ofFieldOpListF φs * ofFieldOpListF φ := by
|
||||
conv_lhs => rw [ofFieldOpListF_sum]
|
||||
simp only [map_sum, LinearMap.coeFn_sum, Finset.sum_apply, instCommGroup.eq_1,
|
||||
|
@ -87,21 +87,21 @@ lemma superCommuteF_ofFieldOpListF_ofFieldOpFsList (φ : List 𝓕.FieldOp) (φs
|
|||
rw [← Finset.sum_mul, ← Finset.smul_sum, ← Finset.mul_sum, ← ofFieldOpListF_sum]
|
||||
|
||||
lemma superCommuteF_ofFieldOpF_ofFieldOpFsList (φ : 𝓕.FieldOp) (φs : List 𝓕.FieldOp) :
|
||||
[ofFieldOpF φ, ofFieldOpListF φs]ₛca = ofFieldOpF φ * ofFieldOpListF φs -
|
||||
[ofFieldOpF φ, ofFieldOpListF φs]ₛF = ofFieldOpF φ * ofFieldOpListF φs -
|
||||
𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φs) • ofFieldOpListF φs * ofFieldOpF φ := by
|
||||
rw [← ofFieldOpListF_singleton, superCommuteF_ofFieldOpListF_ofFieldOpFsList,
|
||||
ofFieldOpListF_singleton]
|
||||
simp
|
||||
|
||||
lemma superCommuteF_ofFieldOpListF_ofFieldOpF (φs : List 𝓕.FieldOp) (φ : 𝓕.FieldOp) :
|
||||
[ofFieldOpListF φs, ofFieldOpF φ]ₛca = ofFieldOpListF φs * ofFieldOpF φ -
|
||||
[ofFieldOpListF φs, ofFieldOpF φ]ₛF = ofFieldOpListF φs * ofFieldOpF φ -
|
||||
𝓢(𝓕 |>ₛ φs, 𝓕 |>ₛ φ) • ofFieldOpF φ * ofFieldOpListF φs := by
|
||||
rw [← ofFieldOpListF_singleton, superCommuteF_ofFieldOpListF_ofFieldOpFsList,
|
||||
ofFieldOpListF_singleton]
|
||||
simp
|
||||
|
||||
lemma superCommuteF_anPartF_crPartF (φ φ' : 𝓕.FieldOp) :
|
||||
[anPartF φ, crPartF φ']ₛca = anPartF φ * crPartF φ' -
|
||||
[anPartF φ, crPartF φ']ₛF = anPartF φ * crPartF φ' -
|
||||
𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φ') • crPartF φ' * anPartF φ := by
|
||||
match φ, φ' with
|
||||
| FieldOp.inAsymp φ, _ =>
|
||||
|
@ -129,7 +129,7 @@ lemma superCommuteF_anPartF_crPartF (φ φ' : 𝓕.FieldOp) :
|
|||
simp [crAnStatistics, ← ofCrAnListF_append]
|
||||
|
||||
lemma superCommuteF_crPartF_anPartF (φ φ' : 𝓕.FieldOp) :
|
||||
[crPartF φ, anPartF φ']ₛca = crPartF φ * anPartF φ' -
|
||||
[crPartF φ, anPartF φ']ₛF = crPartF φ * anPartF φ' -
|
||||
𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φ') • anPartF φ' * crPartF φ := by
|
||||
match φ, φ' with
|
||||
| FieldOp.outAsymp φ, _ =>
|
||||
|
@ -156,7 +156,7 @@ lemma superCommuteF_crPartF_anPartF (φ φ' : 𝓕.FieldOp) :
|
|||
simp [crAnStatistics, ← ofCrAnListF_append]
|
||||
|
||||
lemma superCommuteF_crPartF_crPartF (φ φ' : 𝓕.FieldOp) :
|
||||
[crPartF φ, crPartF φ']ₛca = crPartF φ * crPartF φ' -
|
||||
[crPartF φ, crPartF φ']ₛF = crPartF φ * crPartF φ' -
|
||||
𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φ') • crPartF φ' * crPartF φ := by
|
||||
match φ, φ' with
|
||||
| FieldOp.outAsymp φ, _ =>
|
||||
|
@ -183,7 +183,7 @@ lemma superCommuteF_crPartF_crPartF (φ φ' : 𝓕.FieldOp) :
|
|||
simp [crAnStatistics, ← ofCrAnListF_append]
|
||||
|
||||
lemma superCommuteF_anPartF_anPartF (φ φ' : 𝓕.FieldOp) :
|
||||
[anPartF φ, anPartF φ']ₛca =
|
||||
[anPartF φ, anPartF φ']ₛF =
|
||||
anPartF φ * anPartF φ' - 𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φ') • anPartF φ' * anPartF φ := by
|
||||
match φ, φ' with
|
||||
| FieldOp.inAsymp φ, _ =>
|
||||
|
@ -208,7 +208,7 @@ lemma superCommuteF_anPartF_anPartF (φ φ' : 𝓕.FieldOp) :
|
|||
simp [crAnStatistics, ← ofCrAnListF_append]
|
||||
|
||||
lemma superCommuteF_crPartF_ofFieldOpListF (φ : 𝓕.FieldOp) (φs : List 𝓕.FieldOp) :
|
||||
[crPartF φ, ofFieldOpListF φs]ₛca =
|
||||
[crPartF φ, ofFieldOpListF φs]ₛF =
|
||||
crPartF φ * ofFieldOpListF φs - 𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φs) • ofFieldOpListF φs *
|
||||
crPartF φ := by
|
||||
match φ with
|
||||
|
@ -224,7 +224,7 @@ lemma superCommuteF_crPartF_ofFieldOpListF (φ : 𝓕.FieldOp) (φs : List 𝓕.
|
|||
simp
|
||||
|
||||
lemma superCommuteF_anPartF_ofFieldOpListF (φ : 𝓕.FieldOp) (φs : List 𝓕.FieldOp) :
|
||||
[anPartF φ, ofFieldOpListF φs]ₛca =
|
||||
[anPartF φ, ofFieldOpListF φs]ₛF =
|
||||
anPartF φ * ofFieldOpListF φs - 𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φs) •
|
||||
ofFieldOpListF φs * anPartF φ := by
|
||||
match φ with
|
||||
|
@ -240,14 +240,14 @@ lemma superCommuteF_anPartF_ofFieldOpListF (φ : 𝓕.FieldOp) (φs : List 𝓕.
|
|||
simp [crAnStatistics]
|
||||
|
||||
lemma superCommuteF_crPartF_ofFieldOpF (φ φ' : 𝓕.FieldOp) :
|
||||
[crPartF φ, ofFieldOpF φ']ₛca =
|
||||
[crPartF φ, ofFieldOpF φ']ₛF =
|
||||
crPartF φ * ofFieldOpF φ' -
|
||||
𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φ') • ofFieldOpF φ' * crPartF φ := by
|
||||
rw [← ofFieldOpListF_singleton, superCommuteF_crPartF_ofFieldOpListF]
|
||||
simp
|
||||
|
||||
lemma superCommuteF_anPartF_ofFieldOpF (φ φ' : 𝓕.FieldOp) :
|
||||
[anPartF φ, ofFieldOpF φ']ₛca =
|
||||
[anPartF φ, ofFieldOpF φ']ₛF =
|
||||
anPartF φ * ofFieldOpF φ' -
|
||||
𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φ') • ofFieldOpF φ' * anPartF φ := by
|
||||
rw [← ofFieldOpListF_singleton, superCommuteF_anPartF_ofFieldOpListF]
|
||||
|
@ -263,39 +263,39 @@ multiplication with a sign plus the super commutator.
|
|||
-/
|
||||
lemma ofCrAnListF_mul_ofCrAnListF_eq_superCommuteF (φs φs' : List 𝓕.CrAnFieldOp) :
|
||||
ofCrAnListF φs * ofCrAnListF φs' = 𝓢(𝓕 |>ₛ φs, 𝓕 |>ₛ φs') • ofCrAnListF φs' * ofCrAnListF φs
|
||||
+ [ofCrAnListF φs, ofCrAnListF φs']ₛca := by
|
||||
+ [ofCrAnListF φs, ofCrAnListF φs']ₛF := by
|
||||
rw [superCommuteF_ofCrAnListF_ofCrAnListF]
|
||||
simp [ofCrAnListF_append]
|
||||
|
||||
lemma ofCrAnOpF_mul_ofCrAnListF_eq_superCommuteF (φ : 𝓕.CrAnFieldOp) (φs' : List 𝓕.CrAnFieldOp) :
|
||||
ofCrAnOpF φ * ofCrAnListF φs' = 𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φs') • ofCrAnListF φs' * ofCrAnOpF φ
|
||||
+ [ofCrAnOpF φ, ofCrAnListF φs']ₛca := by
|
||||
+ [ofCrAnOpF φ, ofCrAnListF φs']ₛF := by
|
||||
rw [← ofCrAnListF_singleton, ofCrAnListF_mul_ofCrAnListF_eq_superCommuteF]
|
||||
simp
|
||||
|
||||
lemma ofFieldOpListF_mul_ofFieldOpListF_eq_superCommuteF (φs φs' : List 𝓕.FieldOp) :
|
||||
ofFieldOpListF φs * ofFieldOpListF φs' =
|
||||
𝓢(𝓕 |>ₛ φs, 𝓕 |>ₛ φs') • ofFieldOpListF φs' * ofFieldOpListF φs
|
||||
+ [ofFieldOpListF φs, ofFieldOpListF φs']ₛca := by
|
||||
+ [ofFieldOpListF φs, ofFieldOpListF φs']ₛF := by
|
||||
rw [superCommuteF_ofFieldOpListF_ofFieldOpFsList]
|
||||
simp
|
||||
|
||||
lemma ofFieldOpF_mul_ofFieldOpListF_eq_superCommuteF (φ : 𝓕.FieldOp) (φs' : List 𝓕.FieldOp) :
|
||||
ofFieldOpF φ * ofFieldOpListF φs' = 𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φs') • ofFieldOpListF φs' * ofFieldOpF φ
|
||||
+ [ofFieldOpF φ, ofFieldOpListF φs']ₛca := by
|
||||
+ [ofFieldOpF φ, ofFieldOpListF φs']ₛF := by
|
||||
rw [superCommuteF_ofFieldOpF_ofFieldOpFsList]
|
||||
simp
|
||||
|
||||
lemma ofFieldOpListF_mul_ofFieldOpF_eq_superCommuteF (φs : List 𝓕.FieldOp) (φ : 𝓕.FieldOp) :
|
||||
ofFieldOpListF φs * ofFieldOpF φ = 𝓢(𝓕 |>ₛ φs, 𝓕 |>ₛ φ) • ofFieldOpF φ * ofFieldOpListF φs
|
||||
+ [ofFieldOpListF φs, ofFieldOpF φ]ₛca := by
|
||||
+ [ofFieldOpListF φs, ofFieldOpF φ]ₛF := by
|
||||
rw [superCommuteF_ofFieldOpListF_ofFieldOpF]
|
||||
simp
|
||||
|
||||
lemma crPartF_mul_anPartF_eq_superCommuteF (φ φ' : 𝓕.FieldOp) :
|
||||
crPartF φ * anPartF φ' =
|
||||
𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φ') • anPartF φ' * crPartF φ +
|
||||
[crPartF φ, anPartF φ']ₛca := by
|
||||
[crPartF φ, anPartF φ']ₛF := by
|
||||
rw [superCommuteF_crPartF_anPartF]
|
||||
simp
|
||||
|
||||
|
@ -303,27 +303,27 @@ lemma anPartF_mul_crPartF_eq_superCommuteF (φ φ' : 𝓕.FieldOp) :
|
|||
anPartF φ * crPartF φ' =
|
||||
𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φ') •
|
||||
crPartF φ' * anPartF φ +
|
||||
[anPartF φ, crPartF φ']ₛca := by
|
||||
[anPartF φ, crPartF φ']ₛF := by
|
||||
rw [superCommuteF_anPartF_crPartF]
|
||||
simp
|
||||
|
||||
lemma crPartF_mul_crPartF_eq_superCommuteF (φ φ' : 𝓕.FieldOp) :
|
||||
crPartF φ * crPartF φ' =
|
||||
𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φ') • crPartF φ' * crPartF φ +
|
||||
[crPartF φ, crPartF φ']ₛca := by
|
||||
[crPartF φ, crPartF φ']ₛF := by
|
||||
rw [superCommuteF_crPartF_crPartF]
|
||||
simp
|
||||
|
||||
lemma anPartF_mul_anPartF_eq_superCommuteF (φ φ' : 𝓕.FieldOp) :
|
||||
anPartF φ * anPartF φ' = 𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φ') • anPartF φ' * anPartF φ +
|
||||
[anPartF φ, anPartF φ']ₛca := by
|
||||
[anPartF φ, anPartF φ']ₛF := by
|
||||
rw [superCommuteF_anPartF_anPartF]
|
||||
simp
|
||||
|
||||
lemma ofCrAnListF_mul_ofFieldOpListF_eq_superCommuteF (φs : List 𝓕.CrAnFieldOp)
|
||||
(φs' : List 𝓕.FieldOp) : ofCrAnListF φs * ofFieldOpListF φs' =
|
||||
𝓢(𝓕 |>ₛ φs, 𝓕 |>ₛ φs') • ofFieldOpListF φs' * ofCrAnListF φs
|
||||
+ [ofCrAnListF φs, ofFieldOpListF φs']ₛca := by
|
||||
+ [ofCrAnListF φs, ofFieldOpListF φs']ₛF := by
|
||||
rw [superCommuteF_ofCrAnListF_ofFieldOpFsList]
|
||||
simp
|
||||
|
||||
|
@ -334,8 +334,8 @@ lemma ofCrAnListF_mul_ofFieldOpListF_eq_superCommuteF (φs : List 𝓕.CrAnField
|
|||
-/
|
||||
|
||||
lemma superCommuteF_ofCrAnListF_ofCrAnListF_symm (φs φs' : List 𝓕.CrAnFieldOp) :
|
||||
[ofCrAnListF φs, ofCrAnListF φs']ₛca =
|
||||
(- 𝓢(𝓕 |>ₛ φs, 𝓕 |>ₛ φs')) • [ofCrAnListF φs', ofCrAnListF φs]ₛca := by
|
||||
[ofCrAnListF φs, ofCrAnListF φs']ₛF =
|
||||
(- 𝓢(𝓕 |>ₛ φs, 𝓕 |>ₛ φs')) • [ofCrAnListF φs', ofCrAnListF φs]ₛF := by
|
||||
rw [superCommuteF_ofCrAnListF_ofCrAnListF, superCommuteF_ofCrAnListF_ofCrAnListF, smul_sub]
|
||||
simp only [instCommGroup.eq_1, neg_smul, sub_neg_eq_add]
|
||||
rw [smul_smul]
|
||||
|
@ -346,8 +346,8 @@ lemma superCommuteF_ofCrAnListF_ofCrAnListF_symm (φs φs' : List 𝓕.CrAnField
|
|||
abel
|
||||
|
||||
lemma superCommuteF_ofCrAnOpF_ofCrAnOpF_symm (φ φ' : 𝓕.CrAnFieldOp) :
|
||||
[ofCrAnOpF φ, ofCrAnOpF φ']ₛca =
|
||||
(- 𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φ')) • [ofCrAnOpF φ', ofCrAnOpF φ]ₛca := by
|
||||
[ofCrAnOpF φ, ofCrAnOpF φ']ₛF =
|
||||
(- 𝓢(𝓕 |>ₛ φ, 𝓕 |>ₛ φ')) • [ofCrAnOpF φ', ofCrAnOpF φ]ₛF := by
|
||||
rw [superCommuteF_ofCrAnOpF_ofCrAnOpF, superCommuteF_ofCrAnOpF_ofCrAnOpF]
|
||||
rw [smul_sub]
|
||||
simp only [instCommGroup.eq_1, Algebra.smul_mul_assoc, neg_smul, sub_neg_eq_add]
|
||||
|
@ -365,10 +365,10 @@ lemma superCommuteF_ofCrAnOpF_ofCrAnOpF_symm (φ φ' : 𝓕.CrAnFieldOp) :
|
|||
-/
|
||||
|
||||
lemma superCommuteF_ofCrAnListF_ofCrAnListF_cons (φ : 𝓕.CrAnFieldOp) (φs φs' : List 𝓕.CrAnFieldOp) :
|
||||
[ofCrAnListF φs, ofCrAnListF (φ :: φs')]ₛca =
|
||||
[ofCrAnListF φs, ofCrAnOpF φ]ₛca * ofCrAnListF φs' +
|
||||
[ofCrAnListF φs, ofCrAnListF (φ :: φs')]ₛF =
|
||||
[ofCrAnListF φs, ofCrAnOpF φ]ₛF * ofCrAnListF φs' +
|
||||
𝓢(𝓕 |>ₛ φs, 𝓕 |>ₛ φ)
|
||||
• ofCrAnOpF φ * [ofCrAnListF φs, ofCrAnListF φs']ₛca := by
|
||||
• ofCrAnOpF φ * [ofCrAnListF φs, ofCrAnListF φs']ₛF := by
|
||||
rw [superCommuteF_ofCrAnListF_ofCrAnListF]
|
||||
conv_rhs =>
|
||||
lhs
|
||||
|
@ -386,9 +386,9 @@ lemma superCommuteF_ofCrAnListF_ofCrAnListF_cons (φ : 𝓕.CrAnFieldOp) (φs φ
|
|||
simp only [instCommGroup, map_mul, mul_comm]
|
||||
|
||||
lemma superCommuteF_ofCrAnListF_ofFieldOpListF_cons (φ : 𝓕.FieldOp) (φs : List 𝓕.CrAnFieldOp)
|
||||
(φs' : List 𝓕.FieldOp) : [ofCrAnListF φs, ofFieldOpListF (φ :: φs')]ₛca =
|
||||
[ofCrAnListF φs, ofFieldOpF φ]ₛca * ofFieldOpListF φs' +
|
||||
𝓢(𝓕 |>ₛ φs, 𝓕 |>ₛ φ) • ofFieldOpF φ * [ofCrAnListF φs, ofFieldOpListF φs']ₛca := by
|
||||
(φs' : List 𝓕.FieldOp) : [ofCrAnListF φs, ofFieldOpListF (φ :: φs')]ₛF =
|
||||
[ofCrAnListF φs, ofFieldOpF φ]ₛF * ofFieldOpListF φs' +
|
||||
𝓢(𝓕 |>ₛ φs, 𝓕 |>ₛ φ) • ofFieldOpF φ * [ofCrAnListF φs, ofFieldOpListF φs']ₛF := by
|
||||
rw [superCommuteF_ofCrAnListF_ofFieldOpFsList]
|
||||
conv_rhs =>
|
||||
lhs
|
||||
|
@ -409,14 +409,14 @@ lemma superCommuteF_ofCrAnListF_ofFieldOpListF_cons (φ : 𝓕.FieldOp) (φs : L
|
|||
For a field specification `𝓕`, and two lists `φs = φ₀…φₙ` and `φs'` of `𝓕.CrAnFieldOp`
|
||||
the following super commutation relation holds:
|
||||
|
||||
`[φs', φ₀…φₙ]ₛca = ∑ i, 𝓢(φs', φ₀…φᵢ₋₁) • φ₀…φᵢ₋₁ * [φs', φᵢ]ₛca * φᵢ₊₁ … φₙ`
|
||||
`[φs', φ₀…φₙ]ₛF = ∑ i, 𝓢(φs', φ₀…φᵢ₋₁) • φ₀…φᵢ₋₁ * [φs', φᵢ]ₛF * φᵢ₊₁ … φₙ`
|
||||
|
||||
The proof of this relation is via induction on the length of `φs`.
|
||||
-/
|
||||
lemma superCommuteF_ofCrAnListF_ofCrAnListF_eq_sum (φs : List 𝓕.CrAnFieldOp) :
|
||||
(φs' : List 𝓕.CrAnFieldOp) → [ofCrAnListF φs, ofCrAnListF φs']ₛca =
|
||||
(φs' : List 𝓕.CrAnFieldOp) → [ofCrAnListF φs, ofCrAnListF φs']ₛF =
|
||||
∑ (n : Fin φs'.length), 𝓢(𝓕 |>ₛ φs, 𝓕 |>ₛ φs'.take n) •
|
||||
ofCrAnListF (φs'.take n) * [ofCrAnListF φs, ofCrAnOpF (φs'.get n)]ₛca *
|
||||
ofCrAnListF (φs'.take n) * [ofCrAnListF φs, ofCrAnOpF (φs'.get n)]ₛF *
|
||||
ofCrAnListF (φs'.drop (n + 1))
|
||||
| [] => by
|
||||
simp [← ofCrAnListF_nil, superCommuteF_ofCrAnListF_ofCrAnListF]
|
||||
|
@ -431,9 +431,9 @@ lemma superCommuteF_ofCrAnListF_ofCrAnListF_eq_sum (φs : List 𝓕.CrAnFieldOp)
|
|||
|
||||
lemma superCommuteF_ofCrAnListF_ofFieldOpListF_eq_sum (φs : List 𝓕.CrAnFieldOp) :
|
||||
(φs' : List 𝓕.FieldOp) →
|
||||
[ofCrAnListF φs, ofFieldOpListF φs']ₛca =
|
||||
[ofCrAnListF φs, ofFieldOpListF φs']ₛF =
|
||||
∑ (n : Fin φs'.length), 𝓢(𝓕 |>ₛ φs, 𝓕 |>ₛ φs'.take n) •
|
||||
ofFieldOpListF (φs'.take n) * [ofCrAnListF φs, ofFieldOpF (φs'.get n)]ₛca *
|
||||
ofFieldOpListF (φs'.take n) * [ofCrAnListF φs, ofFieldOpF (φs'.get n)]ₛF *
|
||||
ofFieldOpListF (φs'.drop (n + 1))
|
||||
| [] => by
|
||||
simp only [superCommuteF_ofCrAnListF_ofFieldOpFsList, instCommGroup, ofList_empty,
|
||||
|
@ -450,10 +450,10 @@ lemma superCommuteF_ofCrAnListF_ofFieldOpListF_eq_sum (φs : List 𝓕.CrAnField
|
|||
FieldStatistic.ofList_cons_eq_mul, mul_comm]
|
||||
|
||||
lemma summerCommute_jacobi_ofCrAnListF (φs1 φs2 φs3 : List 𝓕.CrAnFieldOp) :
|
||||
[ofCrAnListF φs1, [ofCrAnListF φs2, ofCrAnListF φs3]ₛca]ₛca =
|
||||
[ofCrAnListF φs1, [ofCrAnListF φs2, ofCrAnListF φs3]ₛF]ₛF =
|
||||
𝓢(𝓕 |>ₛ φs1, 𝓕 |>ₛ φs3) •
|
||||
(- 𝓢(𝓕 |>ₛ φs2, 𝓕 |>ₛ φs3) • [ofCrAnListF φs3, [ofCrAnListF φs1, ofCrAnListF φs2]ₛca]ₛca -
|
||||
𝓢(𝓕 |>ₛ φs1, 𝓕 |>ₛ φs2) • [ofCrAnListF φs2, [ofCrAnListF φs3, ofCrAnListF φs1]ₛca]ₛca) := by
|
||||
(- 𝓢(𝓕 |>ₛ φs2, 𝓕 |>ₛ φs3) • [ofCrAnListF φs3, [ofCrAnListF φs1, ofCrAnListF φs2]ₛF]ₛF -
|
||||
𝓢(𝓕 |>ₛ φs1, 𝓕 |>ₛ φs2) • [ofCrAnListF φs2, [ofCrAnListF φs3, ofCrAnListF φs1]ₛF]ₛF) := by
|
||||
repeat rw [superCommuteF_ofCrAnListF_ofCrAnListF]
|
||||
simp only [instCommGroup, map_sub, map_smul, neg_smul]
|
||||
repeat rw [superCommuteF_ofCrAnListF_ofCrAnListF]
|
||||
|
@ -501,16 +501,16 @@ lemma summerCommute_jacobi_ofCrAnListF (φs1 φs2 φs3 : List 𝓕.CrAnFieldOp)
|
|||
|
||||
lemma superCommuteF_grade {a b : 𝓕.FieldOpFreeAlgebra} {f1 f2 : FieldStatistic}
|
||||
(ha : a ∈ statisticSubmodule f1) (hb : b ∈ statisticSubmodule f2) :
|
||||
[a, b]ₛca ∈ statisticSubmodule (f1 + f2) := by
|
||||
[a, b]ₛF ∈ statisticSubmodule (f1 + f2) := by
|
||||
let p (a2 : 𝓕.FieldOpFreeAlgebra) (hx : a2 ∈ statisticSubmodule f2) : Prop :=
|
||||
[a, a2]ₛca ∈ statisticSubmodule (f1 + f2)
|
||||
[a, a2]ₛF ∈ statisticSubmodule (f1 + f2)
|
||||
change p b hb
|
||||
apply Submodule.span_induction (p := p)
|
||||
· intro x hx
|
||||
obtain ⟨φs, rfl, hφs⟩ := hx
|
||||
simp only [add_eq_mul, instCommGroup, p]
|
||||
let p (a2 : 𝓕.FieldOpFreeAlgebra) (hx : a2 ∈ statisticSubmodule f1) : Prop :=
|
||||
[a2, ofCrAnListF φs]ₛca ∈ statisticSubmodule (f1 + f2)
|
||||
[a2, ofCrAnListF φs]ₛF ∈ statisticSubmodule (f1 + f2)
|
||||
change p a ha
|
||||
apply Submodule.span_induction (p := p)
|
||||
· intro x hx
|
||||
|
@ -543,15 +543,15 @@ lemma superCommuteF_grade {a b : 𝓕.FieldOpFreeAlgebra} {f1 f2 : FieldStatisti
|
|||
|
||||
lemma superCommuteF_bosonic_bosonic {a b : 𝓕.FieldOpFreeAlgebra}
|
||||
(ha : a ∈ statisticSubmodule bosonic) (hb : b ∈ statisticSubmodule bosonic) :
|
||||
[a, b]ₛca = a * b - b * a := by
|
||||
[a, b]ₛF = a * b - b * a := by
|
||||
let p (a2 : 𝓕.FieldOpFreeAlgebra) (hx : a2 ∈ statisticSubmodule bosonic) : Prop :=
|
||||
[a, a2]ₛca = a * a2 - a2 * a
|
||||
[a, a2]ₛF = a * a2 - a2 * a
|
||||
change p b hb
|
||||
apply Submodule.span_induction (p := p)
|
||||
· intro x hx
|
||||
obtain ⟨φs, rfl, hφs⟩ := hx
|
||||
let p (a2 : 𝓕.FieldOpFreeAlgebra) (hx : a2 ∈ statisticSubmodule bosonic) : Prop :=
|
||||
[a2, ofCrAnListF φs]ₛca = a2 * ofCrAnListF φs - ofCrAnListF φs * a2
|
||||
[a2, ofCrAnListF φs]ₛF = a2 * ofCrAnListF φs - ofCrAnListF φs * a2
|
||||
change p a ha
|
||||
apply Submodule.span_induction (p := p)
|
||||
· intro x hx
|
||||
|
@ -576,15 +576,15 @@ lemma superCommuteF_bosonic_bosonic {a b : 𝓕.FieldOpFreeAlgebra}
|
|||
|
||||
lemma superCommuteF_bosonic_fermionic {a b : 𝓕.FieldOpFreeAlgebra}
|
||||
(ha : a ∈ statisticSubmodule bosonic) (hb : b ∈ statisticSubmodule fermionic) :
|
||||
[a, b]ₛca = a * b - b * a := by
|
||||
[a, b]ₛF = a * b - b * a := by
|
||||
let p (a2 : 𝓕.FieldOpFreeAlgebra) (hx : a2 ∈ statisticSubmodule fermionic) : Prop :=
|
||||
[a, a2]ₛca = a * a2 - a2 * a
|
||||
[a, a2]ₛF = a * a2 - a2 * a
|
||||
change p b hb
|
||||
apply Submodule.span_induction (p := p)
|
||||
· intro x hx
|
||||
obtain ⟨φs, rfl, hφs⟩ := hx
|
||||
let p (a2 : 𝓕.FieldOpFreeAlgebra) (hx : a2 ∈ statisticSubmodule bosonic) : Prop :=
|
||||
[a2, ofCrAnListF φs]ₛca = a2 * ofCrAnListF φs - ofCrAnListF φs * a2
|
||||
[a2, ofCrAnListF φs]ₛF = a2 * ofCrAnListF φs - ofCrAnListF φs * a2
|
||||
change p a ha
|
||||
apply Submodule.span_induction (p := p)
|
||||
· intro x hx
|
||||
|
@ -609,15 +609,15 @@ lemma superCommuteF_bosonic_fermionic {a b : 𝓕.FieldOpFreeAlgebra}
|
|||
|
||||
lemma superCommuteF_fermionic_bonsonic {a b : 𝓕.FieldOpFreeAlgebra}
|
||||
(ha : a ∈ statisticSubmodule fermionic) (hb : b ∈ statisticSubmodule bosonic) :
|
||||
[a, b]ₛca = a * b - b * a := by
|
||||
[a, b]ₛF = a * b - b * a := by
|
||||
let p (a2 : 𝓕.FieldOpFreeAlgebra) (hx : a2 ∈ statisticSubmodule bosonic) : Prop :=
|
||||
[a, a2]ₛca = a * a2 - a2 * a
|
||||
[a, a2]ₛF = a * a2 - a2 * a
|
||||
change p b hb
|
||||
apply Submodule.span_induction (p := p)
|
||||
· intro x hx
|
||||
obtain ⟨φs, rfl, hφs⟩ := hx
|
||||
let p (a2 : 𝓕.FieldOpFreeAlgebra) (hx : a2 ∈ statisticSubmodule fermionic) : Prop :=
|
||||
[a2, ofCrAnListF φs]ₛca = a2 * ofCrAnListF φs - ofCrAnListF φs * a2
|
||||
[a2, ofCrAnListF φs]ₛF = a2 * ofCrAnListF φs - ofCrAnListF φs * a2
|
||||
change p a ha
|
||||
apply Submodule.span_induction (p := p)
|
||||
· intro x hx
|
||||
|
@ -641,7 +641,7 @@ lemma superCommuteF_fermionic_bonsonic {a b : 𝓕.FieldOpFreeAlgebra}
|
|||
· exact hb
|
||||
|
||||
lemma superCommuteF_bonsonic {a b : 𝓕.FieldOpFreeAlgebra} (hb : b ∈ statisticSubmodule bosonic) :
|
||||
[a, b]ₛca = a * b - b * a := by
|
||||
[a, b]ₛF = a * b - b * a := by
|
||||
rw [← bosonicProjF_add_fermionicProjF a]
|
||||
simp only [map_add, LinearMap.add_apply]
|
||||
rw [superCommuteF_bosonic_bosonic (by simp) hb, superCommuteF_fermionic_bonsonic (by simp) hb]
|
||||
|
@ -649,7 +649,7 @@ lemma superCommuteF_bonsonic {a b : 𝓕.FieldOpFreeAlgebra} (hb : b ∈ statist
|
|||
abel
|
||||
|
||||
lemma bosonic_superCommuteF {a b : 𝓕.FieldOpFreeAlgebra} (ha : a ∈ statisticSubmodule bosonic) :
|
||||
[a, b]ₛca = a * b - b * a := by
|
||||
[a, b]ₛF = a * b - b * a := by
|
||||
rw [← bosonicProjF_add_fermionicProjF b]
|
||||
simp only [map_add, LinearMap.add_apply]
|
||||
rw [superCommuteF_bosonic_bosonic ha (by simp), superCommuteF_bosonic_fermionic ha (by simp)]
|
||||
|
@ -658,27 +658,27 @@ lemma bosonic_superCommuteF {a b : 𝓕.FieldOpFreeAlgebra} (ha : a ∈ statisti
|
|||
|
||||
lemma superCommuteF_bonsonic_symm {a b : 𝓕.FieldOpFreeAlgebra}
|
||||
(hb : b ∈ statisticSubmodule bosonic) :
|
||||
[a, b]ₛca = - [b, a]ₛca := by
|
||||
[a, b]ₛF = - [b, a]ₛF := by
|
||||
rw [bosonic_superCommuteF hb, superCommuteF_bonsonic hb]
|
||||
simp
|
||||
|
||||
lemma bonsonic_superCommuteF_symm {a b : 𝓕.FieldOpFreeAlgebra}
|
||||
(ha : a ∈ statisticSubmodule bosonic) :
|
||||
[a, b]ₛca = - [b, a]ₛca := by
|
||||
[a, b]ₛF = - [b, a]ₛF := by
|
||||
rw [bosonic_superCommuteF ha, superCommuteF_bonsonic ha]
|
||||
simp
|
||||
|
||||
lemma superCommuteF_fermionic_fermionic {a b : 𝓕.FieldOpFreeAlgebra}
|
||||
(ha : a ∈ statisticSubmodule fermionic) (hb : b ∈ statisticSubmodule fermionic) :
|
||||
[a, b]ₛca = a * b + b * a := by
|
||||
[a, b]ₛF = a * b + b * a := by
|
||||
let p (a2 : 𝓕.FieldOpFreeAlgebra) (hx : a2 ∈ statisticSubmodule fermionic) : Prop :=
|
||||
[a, a2]ₛca = a * a2 + a2 * a
|
||||
[a, a2]ₛF = a * a2 + a2 * a
|
||||
change p b hb
|
||||
apply Submodule.span_induction (p := p)
|
||||
· intro x hx
|
||||
obtain ⟨φs, rfl, hφs⟩ := hx
|
||||
let p (a2 : 𝓕.FieldOpFreeAlgebra) (hx : a2 ∈ statisticSubmodule fermionic) : Prop :=
|
||||
[a2, ofCrAnListF φs]ₛca = a2 * ofCrAnListF φs + ofCrAnListF φs * a2
|
||||
[a2, ofCrAnListF φs]ₛF = a2 * ofCrAnListF φs + ofCrAnListF φs * a2
|
||||
change p a ha
|
||||
apply Submodule.span_induction (p := p)
|
||||
· intro x hx
|
||||
|
@ -703,13 +703,13 @@ lemma superCommuteF_fermionic_fermionic {a b : 𝓕.FieldOpFreeAlgebra}
|
|||
|
||||
lemma superCommuteF_fermionic_fermionic_symm {a b : 𝓕.FieldOpFreeAlgebra}
|
||||
(ha : a ∈ statisticSubmodule fermionic) (hb : b ∈ statisticSubmodule fermionic) :
|
||||
[a, b]ₛca = [b, a]ₛca := by
|
||||
[a, b]ₛF = [b, a]ₛF := by
|
||||
rw [superCommuteF_fermionic_fermionic ha hb]
|
||||
rw [superCommuteF_fermionic_fermionic hb ha]
|
||||
abel
|
||||
|
||||
lemma superCommuteF_expand_bosonicProjF_fermionicProjF (a b : 𝓕.FieldOpFreeAlgebra) :
|
||||
[a, b]ₛca = bosonicProjF a * bosonicProjF b - bosonicProjF b * bosonicProjF a +
|
||||
[a, b]ₛF = bosonicProjF a * bosonicProjF b - bosonicProjF b * bosonicProjF a +
|
||||
bosonicProjF a * fermionicProjF b - fermionicProjF b * bosonicProjF a +
|
||||
fermionicProjF a * bosonicProjF b - bosonicProjF b * fermionicProjF a +
|
||||
fermionicProjF a * fermionicProjF b + fermionicProjF b * fermionicProjF a := by
|
||||
|
@ -722,8 +722,8 @@ lemma superCommuteF_expand_bosonicProjF_fermionicProjF (a b : 𝓕.FieldOpFreeAl
|
|||
abel
|
||||
|
||||
lemma superCommuteF_ofCrAnListF_ofCrAnListF_bosonic_or_fermionic (φs φs' : List 𝓕.CrAnFieldOp) :
|
||||
[ofCrAnListF φs, ofCrAnListF φs']ₛca ∈ statisticSubmodule bosonic ∨
|
||||
[ofCrAnListF φs, ofCrAnListF φs']ₛca ∈ statisticSubmodule fermionic := by
|
||||
[ofCrAnListF φs, ofCrAnListF φs']ₛF ∈ statisticSubmodule bosonic ∨
|
||||
[ofCrAnListF φs, ofCrAnListF φs']ₛF ∈ statisticSubmodule fermionic := by
|
||||
by_cases h1 : (𝓕 |>ₛ φs) = bosonic <;> by_cases h2 : (𝓕 |>ₛ φs') = bosonic
|
||||
· left
|
||||
have h : bosonic = bosonic + bosonic := by
|
||||
|
@ -759,14 +759,14 @@ lemma superCommuteF_ofCrAnListF_ofCrAnListF_bosonic_or_fermionic (φs φs' : Lis
|
|||
apply ofCrAnListF_mem_statisticSubmodule_of _ _ (by simpa using h2)
|
||||
|
||||
lemma superCommuteF_ofCrAnOpF_ofCrAnOpF_bosonic_or_fermionic (φ φ' : 𝓕.CrAnFieldOp) :
|
||||
[ofCrAnOpF φ, ofCrAnOpF φ']ₛca ∈ statisticSubmodule bosonic ∨
|
||||
[ofCrAnOpF φ, ofCrAnOpF φ']ₛca ∈ statisticSubmodule fermionic := by
|
||||
[ofCrAnOpF φ, ofCrAnOpF φ']ₛF ∈ statisticSubmodule bosonic ∨
|
||||
[ofCrAnOpF φ, ofCrAnOpF φ']ₛF ∈ statisticSubmodule fermionic := by
|
||||
rw [← ofCrAnListF_singleton, ← ofCrAnListF_singleton]
|
||||
exact superCommuteF_ofCrAnListF_ofCrAnListF_bosonic_or_fermionic [φ] [φ']
|
||||
|
||||
lemma superCommuteF_superCommuteF_ofCrAnOpF_bosonic_or_fermionic (φ1 φ2 φ3 : 𝓕.CrAnFieldOp) :
|
||||
[ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛca]ₛca ∈ statisticSubmodule bosonic ∨
|
||||
[ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛca]ₛca ∈ statisticSubmodule fermionic := by
|
||||
[ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛF]ₛF ∈ statisticSubmodule bosonic ∨
|
||||
[ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛF]ₛF ∈ statisticSubmodule fermionic := by
|
||||
rcases superCommuteF_ofCrAnOpF_ofCrAnOpF_bosonic_or_fermionic φ2 φ3 with hs | hs
|
||||
<;> rcases ofCrAnOpF_bosonic_or_fermionic φ1 with h1 | h1
|
||||
· left
|
||||
|
@ -796,12 +796,12 @@ lemma superCommuteF_superCommuteF_ofCrAnOpF_bosonic_or_fermionic (φ1 φ2 φ3 :
|
|||
|
||||
lemma superCommuteF_bosonic_ofCrAnListF_eq_sum (a : 𝓕.FieldOpFreeAlgebra) (φs : List 𝓕.CrAnFieldOp)
|
||||
(ha : a ∈ statisticSubmodule bosonic) :
|
||||
[a, ofCrAnListF φs]ₛca = ∑ (n : Fin φs.length),
|
||||
ofCrAnListF (φs.take n) * [a, ofCrAnOpF (φs.get n)]ₛca *
|
||||
[a, ofCrAnListF φs]ₛF = ∑ (n : Fin φs.length),
|
||||
ofCrAnListF (φs.take n) * [a, ofCrAnOpF (φs.get n)]ₛF *
|
||||
ofCrAnListF (φs.drop (n + 1)) := by
|
||||
let p (a : 𝓕.FieldOpFreeAlgebra) (ha : a ∈ statisticSubmodule bosonic) : Prop :=
|
||||
[a, ofCrAnListF φs]ₛca = ∑ (n : Fin φs.length),
|
||||
ofCrAnListF (φs.take n) * [a, ofCrAnOpF (φs.get n)]ₛca *
|
||||
[a, ofCrAnListF φs]ₛF = ∑ (n : Fin φs.length),
|
||||
ofCrAnListF (φs.take n) * [a, ofCrAnOpF (φs.get n)]ₛF *
|
||||
ofCrAnListF (φs.drop (n + 1))
|
||||
change p a ha
|
||||
apply Submodule.span_induction (p := p)
|
||||
|
@ -825,12 +825,12 @@ lemma superCommuteF_bosonic_ofCrAnListF_eq_sum (a : 𝓕.FieldOpFreeAlgebra) (φ
|
|||
|
||||
lemma superCommuteF_fermionic_ofCrAnListF_eq_sum (a : 𝓕.FieldOpFreeAlgebra)
|
||||
(φs : List 𝓕.CrAnFieldOp) (ha : a ∈ statisticSubmodule fermionic) :
|
||||
[a, ofCrAnListF φs]ₛca = ∑ (n : Fin φs.length), 𝓢(fermionic, 𝓕 |>ₛ φs.take n) •
|
||||
ofCrAnListF (φs.take n) * [a, ofCrAnOpF (φs.get n)]ₛca *
|
||||
[a, ofCrAnListF φs]ₛF = ∑ (n : Fin φs.length), 𝓢(fermionic, 𝓕 |>ₛ φs.take n) •
|
||||
ofCrAnListF (φs.take n) * [a, ofCrAnOpF (φs.get n)]ₛF *
|
||||
ofCrAnListF (φs.drop (n + 1)) := by
|
||||
let p (a : 𝓕.FieldOpFreeAlgebra) (ha : a ∈ statisticSubmodule fermionic) : Prop :=
|
||||
[a, ofCrAnListF φs]ₛca = ∑ (n : Fin φs.length), 𝓢(fermionic, 𝓕 |>ₛ φs.take n) •
|
||||
ofCrAnListF (φs.take n) * [a, ofCrAnOpF (φs.get n)]ₛca *
|
||||
[a, ofCrAnListF φs]ₛF = ∑ (n : Fin φs.length), 𝓢(fermionic, 𝓕 |>ₛ φs.take n) •
|
||||
ofCrAnListF (φs.take n) * [a, ofCrAnOpF (φs.get n)]ₛF *
|
||||
ofCrAnListF (φs.drop (n + 1))
|
||||
change p a ha
|
||||
apply Submodule.span_induction (p := p)
|
||||
|
@ -858,9 +858,9 @@ lemma superCommuteF_fermionic_ofCrAnListF_eq_sum (a : 𝓕.FieldOpFreeAlgebra)
|
|||
· exact ha
|
||||
|
||||
lemma statistic_neq_of_superCommuteF_fermionic {φs φs' : List 𝓕.CrAnFieldOp}
|
||||
(h : [ofCrAnListF φs, ofCrAnListF φs']ₛca ∈ statisticSubmodule fermionic) :
|
||||
(𝓕 |>ₛ φs) ≠ (𝓕 |>ₛ φs') ∨ [ofCrAnListF φs, ofCrAnListF φs']ₛca = 0 := by
|
||||
by_cases h0 : [ofCrAnListF φs, ofCrAnListF φs']ₛca = 0
|
||||
(h : [ofCrAnListF φs, ofCrAnListF φs']ₛF ∈ statisticSubmodule fermionic) :
|
||||
(𝓕 |>ₛ φs) ≠ (𝓕 |>ₛ φs') ∨ [ofCrAnListF φs, ofCrAnListF φs']ₛF = 0 := by
|
||||
by_cases h0 : [ofCrAnListF φs, ofCrAnListF φs']ₛF = 0
|
||||
· simp [h0]
|
||||
simp only [ne_eq, h0, or_false]
|
||||
by_contra hn
|
||||
|
|
|
@ -161,7 +161,7 @@ lemma timeOrderF_ofFieldOpF_ofFieldOpF_not_ordered_eq_timeOrderF {φ ψ : 𝓕.F
|
|||
|
||||
lemma timeOrderF_superCommuteF_ofCrAnOpF_ofCrAnOpF_not_crAnTimeOrderRel
|
||||
{φ ψ : 𝓕.CrAnFieldOp} (h : ¬ crAnTimeOrderRel φ ψ) :
|
||||
𝓣ᶠ([ofCrAnOpF φ, ofCrAnOpF ψ]ₛca) = 0 := by
|
||||
𝓣ᶠ([ofCrAnOpF φ, ofCrAnOpF ψ]ₛF) = 0 := by
|
||||
rw [superCommuteF_ofCrAnOpF_ofCrAnOpF]
|
||||
simp only [instCommGroup.eq_1, Algebra.smul_mul_assoc, map_sub, map_smul]
|
||||
rw [← ofCrAnListF_singleton, ← ofCrAnListF_singleton,
|
||||
|
@ -179,28 +179,28 @@ lemma timeOrderF_superCommuteF_ofCrAnOpF_ofCrAnOpF_not_crAnTimeOrderRel
|
|||
|
||||
lemma timeOrderF_superCommuteF_ofCrAnOpF_ofCrAnOpF_not_crAnTimeOrderRel_right
|
||||
{φ ψ : 𝓕.CrAnFieldOp} (h : ¬ crAnTimeOrderRel φ ψ) (a : 𝓕.FieldOpFreeAlgebra) :
|
||||
𝓣ᶠ(a * [ofCrAnOpF φ, ofCrAnOpF ψ]ₛca) = 0 := by
|
||||
𝓣ᶠ(a * [ofCrAnOpF φ, ofCrAnOpF ψ]ₛF) = 0 := by
|
||||
rw [timeOrderF_timeOrderF_right,
|
||||
timeOrderF_superCommuteF_ofCrAnOpF_ofCrAnOpF_not_crAnTimeOrderRel h]
|
||||
simp
|
||||
|
||||
lemma timeOrderF_superCommuteF_ofCrAnOpF_ofCrAnOpF_not_crAnTimeOrderRel_left
|
||||
{φ ψ : 𝓕.CrAnFieldOp} (h : ¬ crAnTimeOrderRel φ ψ) (a : 𝓕.FieldOpFreeAlgebra) :
|
||||
𝓣ᶠ([ofCrAnOpF φ, ofCrAnOpF ψ]ₛca * a) = 0 := by
|
||||
𝓣ᶠ([ofCrAnOpF φ, ofCrAnOpF ψ]ₛF * a) = 0 := by
|
||||
rw [timeOrderF_timeOrderF_left,
|
||||
timeOrderF_superCommuteF_ofCrAnOpF_ofCrAnOpF_not_crAnTimeOrderRel h]
|
||||
simp
|
||||
|
||||
lemma timeOrderF_superCommuteF_ofCrAnOpF_ofCrAnOpF_not_crAnTimeOrderRel_mid
|
||||
{φ ψ : 𝓕.CrAnFieldOp} (h : ¬ crAnTimeOrderRel φ ψ) (a b : 𝓕.FieldOpFreeAlgebra) :
|
||||
𝓣ᶠ(a * [ofCrAnOpF φ, ofCrAnOpF ψ]ₛca * b) = 0 := by
|
||||
𝓣ᶠ(a * [ofCrAnOpF φ, ofCrAnOpF ψ]ₛF * b) = 0 := by
|
||||
rw [timeOrderF_timeOrderF_mid,
|
||||
timeOrderF_superCommuteF_ofCrAnOpF_ofCrAnOpF_not_crAnTimeOrderRel h]
|
||||
simp
|
||||
|
||||
lemma timeOrderF_superCommuteF_superCommuteF_ofCrAnOpF_not_crAnTimeOrderRel
|
||||
{φ1 φ2 : 𝓕.CrAnFieldOp} (h : ¬ crAnTimeOrderRel φ1 φ2) (a : 𝓕.FieldOpFreeAlgebra) :
|
||||
𝓣ᶠ([a, [ofCrAnOpF φ1, ofCrAnOpF φ2]ₛca]ₛca) = 0 := by
|
||||
𝓣ᶠ([a, [ofCrAnOpF φ1, ofCrAnOpF φ2]ₛF]ₛF) = 0 := by
|
||||
rw [← bosonicProjF_add_fermionicProjF a]
|
||||
simp only [map_add, LinearMap.add_apply]
|
||||
rw [bosonic_superCommuteF (Submodule.coe_mem (bosonicProjF a))]
|
||||
|
@ -224,7 +224,7 @@ lemma timeOrderF_superCommuteF_superCommuteF_ofCrAnOpF_not_crAnTimeOrderRel
|
|||
lemma timeOrderF_superCommuteF_ofCrAnOpF_superCommuteF_not_crAnTimeOrderRel
|
||||
{φ1 φ2 φ3 : 𝓕.CrAnFieldOp} (h12 : ¬ crAnTimeOrderRel φ1 φ2)
|
||||
(h13 : ¬ crAnTimeOrderRel φ1 φ3) :
|
||||
𝓣ᶠ([ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛca]ₛca) = 0 := by
|
||||
𝓣ᶠ([ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛF]ₛF) = 0 := by
|
||||
rw [← ofCrAnListF_singleton, ← ofCrAnListF_singleton, ← ofCrAnListF_singleton]
|
||||
rw [summerCommute_jacobi_ofCrAnListF]
|
||||
simp only [instCommGroup.eq_1, ofList_singleton, ofCrAnListF_singleton, neg_smul, map_smul,
|
||||
|
@ -240,7 +240,7 @@ lemma timeOrderF_superCommuteF_ofCrAnOpF_superCommuteF_not_crAnTimeOrderRel
|
|||
lemma timeOrderF_superCommuteF_ofCrAnOpF_superCommuteF_not_crAnTimeOrderRel'
|
||||
{φ1 φ2 φ3 : 𝓕.CrAnFieldOp} (h12 : ¬ crAnTimeOrderRel φ2 φ1)
|
||||
(h13 : ¬ crAnTimeOrderRel φ3 φ1) :
|
||||
𝓣ᶠ([ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛca]ₛca) = 0 := by
|
||||
𝓣ᶠ([ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛF]ₛF) = 0 := by
|
||||
rw [← ofCrAnListF_singleton, ← ofCrAnListF_singleton, ← ofCrAnListF_singleton]
|
||||
rw [summerCommute_jacobi_ofCrAnListF]
|
||||
simp only [instCommGroup.eq_1, ofList_singleton, ofCrAnListF_singleton, neg_smul, map_smul,
|
||||
|
@ -258,7 +258,7 @@ lemma timeOrderF_superCommuteF_ofCrAnOpF_superCommuteF_all_not_crAnTimeOrderRel
|
|||
(crAnTimeOrderRel φ1 φ2 ∧ crAnTimeOrderRel φ1 φ3 ∧
|
||||
crAnTimeOrderRel φ2 φ1 ∧ crAnTimeOrderRel φ2 φ3 ∧
|
||||
crAnTimeOrderRel φ3 φ1 ∧ crAnTimeOrderRel φ3 φ2)) :
|
||||
𝓣ᶠ([ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛca]ₛca) = 0 := by
|
||||
𝓣ᶠ([ofCrAnOpF φ1, [ofCrAnOpF φ2, ofCrAnOpF φ3]ₛF]ₛF) = 0 := by
|
||||
simp only [not_and] at h
|
||||
by_cases h23 : ¬ crAnTimeOrderRel φ2 φ3
|
||||
· simp_all only [IsEmpty.forall_iff, implies_true]
|
||||
|
@ -293,7 +293,7 @@ lemma timeOrderF_superCommuteF_ofCrAnOpF_superCommuteF_all_not_crAnTimeOrderRel
|
|||
|
||||
lemma timeOrderF_superCommuteF_ofCrAnOpF_ofCrAnOpF_eq_time
|
||||
{φ ψ : 𝓕.CrAnFieldOp} (h1 : crAnTimeOrderRel φ ψ) (h2 : crAnTimeOrderRel ψ φ) :
|
||||
𝓣ᶠ([ofCrAnOpF φ, ofCrAnOpF ψ]ₛca) = [ofCrAnOpF φ, ofCrAnOpF ψ]ₛca := by
|
||||
𝓣ᶠ([ofCrAnOpF φ, ofCrAnOpF ψ]ₛF) = [ofCrAnOpF φ, ofCrAnOpF ψ]ₛF := by
|
||||
rw [superCommuteF_ofCrAnOpF_ofCrAnOpF]
|
||||
simp only [instCommGroup.eq_1, Algebra.smul_mul_assoc, map_sub, map_smul]
|
||||
rw [← ofCrAnListF_singleton, ← ofCrAnListF_singleton,
|
||||
|
|
|
@ -66,29 +66,29 @@ def fieldOpToCreateAnnihilateTypeCongr : {i j : 𝓕.FieldOp} → i = j →
|
|||
For a field specification `𝓕`, the (sigma) type `𝓕.CrAnFieldOp`
|
||||
corresponds to the type of creation and annihilation parts of field operators.
|
||||
It formally defined to consist of the following elements:
|
||||
- for each incoming asymptotic field operator `φ` in `𝓕.FieldOp` an element
|
||||
- For each incoming asymptotic field operator `φ` in `𝓕.FieldOp` an element
|
||||
written as `⟨φ, ()⟩` in `𝓕.CrAnFieldOp`, corresponding to the creation part of `φ`.
|
||||
Here `φ` has no annihilation part. (Here `()` is the unique element of `Unit`.)
|
||||
- for each position field operator `φ` in `𝓕.FieldOp` an element of `𝓕.CrAnFieldOp`
|
||||
- For each position field operator `φ` in `𝓕.FieldOp` an element of `𝓕.CrAnFieldOp`
|
||||
written as `⟨φ, .create⟩`, corresponding to the creation part of `φ`.
|
||||
- for each position field operator `φ` in `𝓕.FieldOp` an element of `𝓕.CrAnFieldOp`
|
||||
- For each position field operator `φ` in `𝓕.FieldOp` an element of `𝓕.CrAnFieldOp`
|
||||
written as `⟨φ, .annihilate⟩`, corresponding to the annihilation part of `φ`.
|
||||
- for each outgoing asymptotic field operator `φ` in `𝓕.FieldOp` an element
|
||||
- For each outgoing asymptotic field operator `φ` in `𝓕.FieldOp` an element
|
||||
written as `⟨φ, ()⟩` in `𝓕.CrAnFieldOp`, corresponding to the annihilation part of `φ`.
|
||||
Here `φ` has no creation part. (Here `()` is the unique element of `Unit`.)
|
||||
|
||||
As an example, if `f` corresponds to a Weyl-fermion field, it would contribute
|
||||
the following elements to `𝓕.CrAnFieldOp`
|
||||
- an element corresponding to incoming asymptotic operators for each spin `s`: `a(p, s)`.
|
||||
- an element corresponding to the creation parts of position operators for each each Lorentz
|
||||
index `a`:
|
||||
- For each spin `s`, an element corresponding to an incoming asymptotic operator: `a(p, s)`.
|
||||
- For each each Lorentz
|
||||
index `a`, an element corresponding to the creation part of a position operator:
|
||||
|
||||
`∑ s, ∫ d³p/(…) (xₐ (p,s) a(p, s) e ^ (-i p x))`.
|
||||
- an element corresponding to annihilation parts of position operator,
|
||||
for each each Lorentz index `a`:
|
||||
- For each each Lorentz
|
||||
index `a`,an element corresponding to annihilation part of a position operator:
|
||||
|
||||
`∑ s, ∫ d³p/(…) (yₐ(p,s) a†(p, s) e ^ (-i p x))`.
|
||||
- an element corresponding to outgoing asymptotic operators for each spin `s`: `a†(p, s)`.
|
||||
- For each spin `s`, element corresponding to an outgoing asymptotic operator: `a†(p, s)`.
|
||||
|
||||
-/
|
||||
def CrAnFieldOp : Type := Σ (s : 𝓕.FieldOp), 𝓕.fieldOpToCrAnType s
|
||||
|
|
|
@ -25,24 +25,25 @@ open HepLean.Fin
|
|||
-/
|
||||
|
||||
/-- Given a Wick contraction `φsΛ` for a list `φs` of `𝓕.FieldOp`,
|
||||
an element `φ` of `𝓕.FieldOp`, an `i ≤ φs.length` and a `j` which is either `none` or
|
||||
an element `φ` of `𝓕.FieldOp`, an `i ≤ φs.length` and a `k`
|
||||
in `Option φsΛ.uncontracted` i.e. is either `none` or
|
||||
some element of `φsΛ.uncontracted`, the new Wick contraction
|
||||
`φsΛ.insertAndContract φ i j` is defined by inserting `φ` into `φs` after
|
||||
`φsΛ.insertAndContract φ i k` is defined by inserting `φ` into `φs` after
|
||||
the first `i`-elements and moving the values representing the contracted pairs in `φsΛ`
|
||||
accordingly.
|
||||
If `j` is not `none`, but rather `some j`, to this contraction is added the contraction
|
||||
of `φ` (at position `i`) with the new position of `j` after `φ` is added.
|
||||
If `k` is not `none`, but rather `some k`, to this contraction is added the contraction
|
||||
of `φ` (at position `i`) with the new position of `k` after `φ` is added.
|
||||
|
||||
In other words, `φsΛ.insertAndContract φ i j` is formed by adding `φ` to `φs` at position `i`,
|
||||
and contracting `φ` with the field originally at position `j` if `j` is not `none`.
|
||||
In other words, `φsΛ.insertAndContract φ i k` is formed by adding `φ` to `φs` at position `i`,
|
||||
and contracting `φ` with the field originally at position `k` if `k` is not `none`.
|
||||
It is a Wick contraction of the list `φs.insertIdx φ i` corresponding to `φs` with `φ` inserted at
|
||||
position `i`.
|
||||
|
||||
The notation `φsΛ ↩Λ φ i j` is used to denote `φsΛ.insertAndContract φ i j`. -/
|
||||
The notation `φsΛ ↩Λ φ i k` is used to denote `φsΛ.insertAndContract φ i k`. -/
|
||||
def insertAndContract {φs : List 𝓕.FieldOp} (φ : 𝓕.FieldOp) (φsΛ : WickContraction φs.length)
|
||||
(i : Fin φs.length.succ) (j : Option φsΛ.uncontracted) :
|
||||
(i : Fin φs.length.succ) (k : Option φsΛ.uncontracted) :
|
||||
WickContraction (φs.insertIdx i φ).length :=
|
||||
congr (by simp) (φsΛ.insertAndContractNat i j)
|
||||
congr (by simp) (φsΛ.insertAndContractNat i k)
|
||||
|
||||
@[inherit_doc insertAndContract]
|
||||
scoped[WickContraction] notation φs "↩Λ" φ:max i:max j => insertAndContract φ φs i j
|
||||
|
|
|
@ -34,7 +34,14 @@ def signFinset (c : WickContraction n) (i1 i2 : Fin n) : Finset (Fin n) :=
|
|||
to the number of `fermionic`-`fermionic` exchanges that must be done to put
|
||||
contracted pairs within `φsΛ` next to one another, starting recursively
|
||||
from the contracted pair
|
||||
whose first element occurs at the left-most position. -/
|
||||
whose first element occurs at the left-most position.
|
||||
|
||||
As an example, if `[φ1, φ2, φ3, φ4]` correspond to fermionic fields then the sign
|
||||
associated with
|
||||
- `{{0, 1}}` is `1`
|
||||
- `{{0, 1}, {2, 3}}` is `1`
|
||||
- `{{0, 2}, {1, 3}}` is `-1`
|
||||
-/
|
||||
def sign (φs : List 𝓕.FieldOp) (φsΛ : WickContraction φs.length) : ℂ :=
|
||||
∏ (a : φsΛ.1), 𝓢(𝓕 |>ₛ φs[φsΛ.sndFieldOfContract a],
|
||||
𝓕 |>ₛ ⟨φs.get, φsΛ.signFinset (φsΛ.fstFieldOfContract a) (φsΛ.sndFieldOfContract a)⟩)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue