Basic definitions for the GNS construction #
This file formalises some basic notions used in the GNS construction, following the AQFT-in-Lean blueprint, section 10.1.
Main definitions #
Physicslib4.GNS.State: a state on an abstract C*-algebra, defined as a continuous linear functional that is positive (sendsstar a * ato a non-negative complex number) and normalised (operator norm equal to1). This corresponds to the blueprint labeldef:state.Physicslib4.GNS.State.IsFaithful: faithfulness of a state, asserting thatω (star a * a) = 0only whena = 0. Also part ofdef:state.Physicslib4.GNS.IsCyclicVector: a vectorΩof a Hilbert spaceHis cyclic for a representationπ : A →⋆ₐ[ℂ] (H →L[ℂ] H)of an algebraAwhen the set{ π a Ω : a ∈ A }is dense inH. This corresponds to the blueprint labeldef:cyclic-vector.
Notes #
Mathlib does not yet provide a packaged State type for C*-algebras, so we
introduce one here. The positivity condition is stated using the canonical
partial order on ℂ from Mathlib: 0 ≤ z iff z.re ≥ 0 and z.im = 0.
The blueprint statement of def:cyclic-vector only requires A to be an
algebra; here we keep the assumptions general enough to be reusable but
require the operator-algebra side H →L[ℂ] H to make sense, so H is a
complex Hilbert space.
A state on a unital C*-algebra A is a continuous linear functional
A →L[ℂ] ℂ that is positive (sends every element of the form
star a * a to a non-negative complex number) and normalised (operator
norm equal to 1).
Blueprint reference: def:state.
- map_add' (x y : A) : (↑self.toContinuousLinearMap).toFun (x + y) = (↑self.toContinuousLinearMap).toFun x + (↑self.toContinuousLinearMap).toFun y
- map_smul' (m : ℂ) (x : A) : (↑self.toContinuousLinearMap).toFun (m • x) = (RingHom.id ℂ) m • (↑self.toContinuousLinearMap).toFun x
- cont : Continuous (↑self.toContinuousLinearMap).toFun
Positivity:
ω (a* a) ≥ 0for everya ∈ A.Normalisation: the operator norm of
ωequals1.
Instances For
Equations
- Physicslib4.GNS.State.instFunLikeComplex = { coe := fun (ω : Physicslib4.GNS.State A) => ⇑ω.toContinuousLinearMap, coe_injective := ⋯ }
A state ω on a C*-algebra A is faithful if ω (star a * a) = 0
implies a = 0. Equivalently, a ≠ 0 implies 0 < ω (star a * a).
Blueprint reference: def:state (faithfulness clause).
Instances For
A vector Ω : H is cyclic for a representation
π : A →⋆ₐ[ℂ] (H →L[ℂ] H) of A on the Hilbert space H when
the set { π a Ω : a ∈ A } is dense in H.
Blueprint reference: def:cyclic-vector.
Equations
- Physicslib4.GNS.IsCyclicVector π Ω = Dense (Set.range fun (a : A) => (π a) Ω)