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.WickAlgebra.BasicUniversality properties of WickAlgebra
@[expose] public section
For a field specification, π, given an algebra A and a function f : π.CrAnFieldOp β A
such that the lift of f to FreeAlgebra.lift β f : FreeAlgebra β π.CrAnFieldOp β A is
zero on the ideal defining π.WickAlgebra, the corresponding map π.WickAlgebra β A.
π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0b:π.FieldOpFreeAlgebraa:π.FieldOpFreeAlgebraha:a β TwoSidedIdeal.span π.fieldOpIdealSetβ’ ((FreeAlgebra.lift β) f) b + 0 = ((FreeAlgebra.lift β) f) b
simp All goals completed! π)@[simp]
lemma universalLiftMap_ΞΉ {A : Type} [Semiring A] [Algebra β A] (f : π.CrAnFieldOp β A)
(h1 : β a β TwoSidedIdeal.span π.fieldOpIdealSet, FreeAlgebra.lift β f a = 0) :
universalLiftMap f h1 (ΞΉ a) = FreeAlgebra.lift β f a := by π:FieldSpecificationa:π.FieldOpFreeAlgebraA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ universalLiftMap f h1 (ΞΉ a) = ((FreeAlgebra.lift β) f) a rfl All goals completed! π
For a field specification, π, given an algebra A and a function f : π.CrAnFieldOp β A
such that the lift of f to FreeAlgebra.lift β f : FreeAlgebra β π.CrAnFieldOp β A is
zero on the ideal defining π.WickAlgebra, the corresponding algebra map
π.WickAlgebra β A.
def universalLift {A : Type} [Semiring A] [Algebra β A] (f : π.CrAnFieldOp β A)
(h1 : β a β TwoSidedIdeal.span π.fieldOpIdealSet, FreeAlgebra.lift β f a = 0) :
WickAlgebra π ββ[β] A where
toFun := universalLiftMap f h1
map_one' := by π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ universalLiftMap f h1 1 = 1
rw [show 1 = ΞΉ (π := π) 1 from rfl, π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ universalLiftMap f h1 (ΞΉ 1) = 1 π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ ((FreeAlgebra.lift β) f) 1 = 1 universalLiftMap_ΞΉ π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ ((FreeAlgebra.lift β) f) 1 = 1 π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ ((FreeAlgebra.lift β) f) 1 = 1] π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ ((FreeAlgebra.lift β) f) 1 = 1
simp All goals completed! π
map_mul' x y := by π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0x:π.WickAlgebray:π.WickAlgebraβ’ universalLiftMap f h1 (x * y) = universalLiftMap f h1 x * universalLiftMap f h1 y
obtain β¨x, rflβ© := ΞΉ_surjective x π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0y:π.WickAlgebrax:π.FieldOpFreeAlgebraβ’ universalLiftMap f h1 (ΞΉ x * y) = universalLiftMap f h1 (ΞΉ x) * universalLiftMap f h1 y
obtain β¨y, rflβ© := ΞΉ_surjective y π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0x:π.FieldOpFreeAlgebray:π.FieldOpFreeAlgebraβ’ universalLiftMap f h1 (ΞΉ x * ΞΉ y) = universalLiftMap f h1 (ΞΉ x) * universalLiftMap f h1 (ΞΉ y)
simp [β map_mul] All goals completed! π
map_zero' := by π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ universalLiftMap f h1 0 = 0
rw [show 0 = ΞΉ (π := π) 0 from rfl, π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ universalLiftMap f h1 (ΞΉ 0) = 0 π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ ((FreeAlgebra.lift β) f) 0 = 0 universalLiftMap_ΞΉ π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ ((FreeAlgebra.lift β) f) 0 = 0 π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ ((FreeAlgebra.lift β) f) 0 = 0] π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ ((FreeAlgebra.lift β) f) 0 = 0
simp All goals completed! π
map_add' x y := by π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0x:π.WickAlgebray:π.WickAlgebraβ’ universalLiftMap f h1 (x + y) = universalLiftMap f h1 x + universalLiftMap f h1 y
obtain β¨x, rflβ© := ΞΉ_surjective x π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0y:π.WickAlgebrax:π.FieldOpFreeAlgebraβ’ universalLiftMap f h1 (ΞΉ x + y) = universalLiftMap f h1 (ΞΉ x) + universalLiftMap f h1 y
obtain β¨y, rflβ© := ΞΉ_surjective y π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0x:π.FieldOpFreeAlgebray:π.FieldOpFreeAlgebraβ’ universalLiftMap f h1 (ΞΉ x + ΞΉ y) = universalLiftMap f h1 (ΞΉ x) + universalLiftMap f h1 (ΞΉ y)
simp [β map_add] All goals completed! π
commutes' r := by π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0r:ββ’ universalLiftMap f h1 ((algebraMap β π.WickAlgebra) r) = (algebraMap β A) r
rw [Algebra.algebraMap_eq_smul_one r π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0r:ββ’ universalLiftMap f h1 (r β’ 1) = (algebraMap β A) r π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0r:ββ’ universalLiftMap f h1 (r β’ 1) = (algebraMap β A) r] π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0r:ββ’ universalLiftMap f h1 (r β’ 1) = (algebraMap β A) r
rw [show r β’ 1 = ΞΉ (π := π) (r β’ 1) from rfl, π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0r:ββ’ universalLiftMap f h1 (ΞΉ (r β’ 1)) = (algebraMap β A) r π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0r:ββ’ ((FreeAlgebra.lift β) f) (r β’ 1) = (algebraMap β A) r universalLiftMap_ΞΉ π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0r:ββ’ ((FreeAlgebra.lift β) f) (r β’ 1) = (algebraMap β A) r π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0r:ββ’ ((FreeAlgebra.lift β) f) (r β’ 1) = (algebraMap β A) r] π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0r:ββ’ ((FreeAlgebra.lift β) f) (r β’ 1) = (algebraMap β A) r
simp only [map_smul, map_one] π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0r:ββ’ r β’ 1 = (algebraMap β A) r
exact Eq.symm (Algebra.algebraMap_eq_smul_one r) All goals completed! π@[simp]
lemma universalLift_ΞΉ {A : Type} [Semiring A] [Algebra β A] (f : π.CrAnFieldOp β A)
(h1 : β a β TwoSidedIdeal.span π.fieldOpIdealSet, FreeAlgebra.lift β f a = 0) :
universalLift f h1 (ΞΉ a) = FreeAlgebra.lift β f a := by π:FieldSpecificationa:π.FieldOpFreeAlgebraA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ (universalLift f h1) (ΞΉ a) = ((FreeAlgebra.lift β) f) a rfl All goals completed! π
For a field specification, π, the algebra π.WickAlgebra satisfies the following universal
property. Let f : π.CrAnFieldOp β A be a function and g : π.FieldOpFreeAlgebra ββ[β] A
the universal lift of that function associated with the free algebra π.FieldOpFreeAlgebra.
If g is zero on the ideal defining π.WickAlgebra, then there exists
algebra map g' : WickAlgebra π ββ[β] A such that g' β ΞΉ = g, and furthermore this
algebra map is unique.
lemma universality {A : Type} [Semiring A] [Algebra β A] (f : π.CrAnFieldOp β A)
(h1 : β a β TwoSidedIdeal.span π.fieldOpIdealSet, FreeAlgebra.lift β f a = 0) :
β! g : WickAlgebra π ββ[β] A, g β ΞΉ = FreeAlgebra.lift β f := by π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ β! g, βg β βΞΉ = β((FreeAlgebra.lift β) f)
use universalLift f h1 h π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ (fun g => βg β βΞΉ = β((FreeAlgebra.lift β) f)) (universalLift f h1) β§
β (y : π.WickAlgebra ββ[β] A), (fun g => βg β βΞΉ = β((FreeAlgebra.lift β) f)) y β y = universalLift f h1
simp only h π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ β(universalLift f h1) β βΞΉ = β((FreeAlgebra.lift β) f) β§
β (y : π.WickAlgebra ββ[β] A), βy β βΞΉ = β((FreeAlgebra.lift β) f) β y = universalLift f h1
apply And.intro h.left π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ β(universalLift f h1) β βΞΉ = β((FreeAlgebra.lift β) f)h.right π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ β (y : π.WickAlgebra ββ[β] A), βy β βΞΉ = β((FreeAlgebra.lift β) f) β y = universalLift f h1
Β· h.left π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ β(universalLift f h1) β βΞΉ = β((FreeAlgebra.lift β) f) ext a h.left π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0a:π.FieldOpFreeAlgebraβ’ (β(universalLift f h1) β βΞΉ) a = ((FreeAlgebra.lift β) f) a
simp All goals completed! π
Β· h.right π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0β’ β (y : π.WickAlgebra ββ[β] A), βy β βΞΉ = β((FreeAlgebra.lift β) f) β y = universalLift f h1 intro g hg h.right π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0g:π.WickAlgebra ββ[β] Ahg:βg β βΞΉ = β((FreeAlgebra.lift β) f)β’ g = universalLift f h1
ext a h.right π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0g:π.WickAlgebra ββ[β] Ahg:βg β βΞΉ = β((FreeAlgebra.lift β) f)a:π.WickAlgebraβ’ g a = (universalLift f h1) a
obtain β¨a, rflβ© := ΞΉ_surjective a h.right π:FieldSpecificationA:TypeinstβΒΉ:Semiring Ainstβ:Algebra β Af:π.CrAnFieldOp β Ah1:β a β TwoSidedIdeal.span π.fieldOpIdealSet, ((FreeAlgebra.lift β) f) a = 0g:π.WickAlgebra ββ[β] Ahg:βg β βΞΉ = β((FreeAlgebra.lift β) f)a:π.FieldOpFreeAlgebraβ’ g (ΞΉ a) = (universalLift f h1) (ΞΉ a)
simpa using congrFun hg a All goals completed! π