MathlibAnnex/Analysis/CStarAlgebra/Representation/ReducedAtomic.lean
Exact source · gss-v0.5.0
Fixed commit original · Raw UTF-8 source · Back to GSS Companion
Select a source link from a manuscript to highlight its exact range.
Technical identity
- Commit
ac405356bb98afed954da9b9c795d23cc8d5d149- SHA-256
60fb61c1ab2702b9cdf383e7dce49ab474def2513ae05d907bafda381fc4afeb- Bytes
- 18185
1/-2Copyright (c) 2026 Ryotaro Tanaka. All rights reserved.3Released under Apache 2.0 license as described in the file LICENSE.4Authors: Ryotaro Tanaka5-/67import MathlibAnnex.Analysis.CStarAlgebra.DirectSum.DiscreteCCR8import MathlibAnnex.Analysis.CStarAlgebra.Representation.CompactOperatorDiagonal910/-!11# The reduced atomic representation on the genuine Hilbert direct sum1213For a nonunital complex C-star algebra, choose the existing pure-state GNS14representative at every primitive point and form their completed dependent15Hilbert `lp 2` sum. The corresponding atomic action is faithful because the16intersection of all primitive kernels is zero. No countability or separability17assumption is imposed.1819Under discreteness of the primitive spectrum and the stated CCR range equality,20the repaired coordinate equivalence identifies the algebra with the actual c₀21sum of compact primitive fibres. The c₀ diagonal representation on the Hilbert22sum is then literally the reduced atomic representation. Consequently its23image consists of compact operators, and its literal operator range agrees with24the c₀ diagonal range, equivalently with the compact intersection of the25bounded primitive block-diagonal range. The bounded product `lp _ ∞`, the c₀26source algebra, and the Hilbert representation space `lp _ 2` remain distinct27objects.28-/2930@[expose] public section3132set_option autoImplicit false33set_option maxHeartbeats 200000034set_option synthInstance.maxHeartbeats 20000035noncomputable section3637open Filter Set Topology38open scoped BigOperators CStarAlgebra ENNReal lp3940namespace MathlibAnnex.Analysis.CStarAlgebra4142open MathlibAnnex.Analysis.InnerProductSpace4344universe u4546namespace PrimitiveSpectrum4748variable {A : Type u} [NonUnitalCStarAlgebra A] [PartialOrder A] [StarOrderedRing A]4950/-- The completed dependent Hilbert `lp 2` sum of the selected primitive GNS51spaces. This is not the bounded product of compact-operator fibres. -/52abbrev ReducedAtomicHilbertSpace (A : Type u) [NonUnitalCStarAlgebra A]53[PartialOrder A] [StarOrderedRing A] :=54HilbertSum (fun P : PrimitiveSpectrum A => P.pureStateRepresentative.GNS)5556/-- The selected primitive GNS representations acting diagonally on their57genuine completed Hilbert sum. -/58def reducedAtomicRepresentation :59NonUnitalCStarRepresentation A (ReducedAtomicHilbertSpace A) :=60(atomicRepresentation (fun P : PrimitiveSpectrum A =>61P.pureStateRepresentative.gnsRepresentation.unitization)).toNonUnitalStarAlgHom.comp62(Unitization.inrNonUnitalStarAlgHom ℂ A)6364@[simp]65theorem reducedAtomicRepresentation_apply66(a : A) (x : ReducedAtomicHilbertSpace A) (P : PrimitiveSpectrum A) :67reducedAtomicRepresentation a x P =68P.pureStateRepresentative.gnsRepresentation a (x P) := by69simp [reducedAtomicRepresentation, atomicRepresentation_apply, NonUnitalCStarRepresentation.unitization_inr]7071/-- On one displayed primitive coordinate, the reduced atomic action is exactly72the selected GNS action. -/73@[simp]74theorem reducedAtomicRepresentation_coordinateEmbedding75[DecidableEq (PrimitiveSpectrum A)] (a : A) (P : PrimitiveSpectrum A)76(x : P.pureStateRepresentative.GNS) :77reducedAtomicRepresentation a (coordinateEmbedding P x) =78coordinateEmbedding P79(P.pureStateRepresentative.gnsRepresentation a x) := by80classical81apply lp.ext82funext Q83by_cases hQP : Q = P84· subst Q85simp [reducedAtomicRepresentation_apply, coordinateEmbedding_apply,86lp.coeFn_single]87· simp [reducedAtomicRepresentation_apply, coordinateEmbedding_apply,88lp.coeFn_single, hQP, Ne.symm hQP]8990/-- Projection to one primitive coordinate commutes with the reduced atomic91action. -/92@[simp]93theorem coordinateProjection_reducedAtomicRepresentation94[DecidableEq (PrimitiveSpectrum A)] (a : A) (x : ReducedAtomicHilbertSpace A) (P : PrimitiveSpectrum A) :95coordinateProjection P (reducedAtomicRepresentation a x) =96P.pureStateRepresentative.gnsRepresentation a97(coordinateProjection P x) := by98classical99simp [coordinateProjection_apply, reducedAtomicRepresentation_apply]100101/-- The reduced atomic representation is faithful: an element killed on every102selected primitive GNS space belongs to the intersection of all primitive103ideals, hence is zero. -/104theorem reducedAtomicRepresentation_injective :105Function.Injective (reducedAtomicRepresentation (A := A)) := by106classical107intro a b hab108apply sub_eq_zero.mp109have hzero : reducedAtomicRepresentation (A := A) (a - b) = 0 := by110rw [map_sub, hab, sub_self]111have hall : a - b ∈ kernelIntersection112(Set.univ : Set (PrimitiveSpectrum A)) := by113rw [mem_kernelIntersection]114intro P _hP115rw [← P.coe_toTwoSidedIdeal]116rw [← P.kernelIdeal_pureStateRepresentative]117apply (NonUnitalCStarRepresentation.mem_kernelIdeal118P.pureStateRepresentative.gnsRepresentation (a - b)).2119apply ContinuousLinearMap.ext120intro x121have h := congrArg122(fun T : ReducedAtomicHilbertSpace A →L[ℂ] ReducedAtomicHilbertSpace A =>123coordinateProjection P (T (coordinateEmbedding P x))) hzero124simpa [coordinateProjection_reducedAtomicRepresentation,125coordinateEmbedding_apply, coordinateProjection_apply, lp.coeFn_single] using h126rw [kernelIntersection_univ_eq_bot, TwoSidedIdeal.mem_bot] at hall127exact hall128129/-- Faithfulness upgrades the reduced atomic representation to an isometry. -/130theorem isometry_reducedAtomicRepresentation :131Isometry (reducedAtomicRepresentation (A := A)) :=132NonUnitalStarAlgHom.isometry (reducedAtomicRepresentation (A := A))133reducedAtomicRepresentation_injective134135@[simp]136theorem norm_reducedAtomicRepresentation (a : A) :137‖reducedAtomicRepresentation (A := A) a‖ = ‖a‖ := by138simpa only [map_zero, dist_zero_right] using139(isometry_reducedAtomicRepresentation (A := A)).dist_eq a 0140141/-- Restriction of the faithful reduced atomic representation to its literal142operator range is onto. -/143theorem reducedAtomicRepresentation_rangeRestrict_surjective :144Function.Surjective145(NonUnitalStarAlgHom.rangeRestrict (reducedAtomicRepresentation (A := A))) := by146intro T147obtain ⟨a, ha⟩ := (NonUnitalStarAlgHom.mem_range148(reducedAtomicRepresentation (A := A))).1 T.property149exact ⟨a, Subtype.ext ha⟩150151/-- The literal range restriction is bijective. -/152theorem reducedAtomicRepresentation_rangeRestrict_bijective :153Function.Bijective154(NonUnitalStarAlgHom.rangeRestrict (reducedAtomicRepresentation (A := A))) := by155constructor156· intro a b hab157apply reducedAtomicRepresentation_injective158exact congrArg Subtype.val hab159· exact reducedAtomicRepresentation_rangeRestrict_surjective160161/-- Actual nonunital C-star equivalence from `A` to the literal reduced atomic162operator range. -/163def reducedAtomicEquivRange :164A ≃⋆ₐ[ℂ] (NonUnitalStarAlgHom.range (reducedAtomicRepresentation (A := A))) :=165{ Equiv.ofBijective (NonUnitalStarAlgHom.rangeRestrict (reducedAtomicRepresentation (A := A)))166reducedAtomicRepresentation_rangeRestrict_bijective with167map_add' := map_add (NonUnitalStarAlgHom.rangeRestrict (reducedAtomicRepresentation (A := A)))168map_mul' := map_mul (NonUnitalStarAlgHom.rangeRestrict (reducedAtomicRepresentation (A := A)))169map_smul' := map_smul (NonUnitalStarAlgHom.rangeRestrict (reducedAtomicRepresentation (A := A)))170map_star' := map_star (NonUnitalStarAlgHom.rangeRestrict (reducedAtomicRepresentation (A := A))) }171172@[simp]173theorem reducedAtomicEquivRange_apply_coe (a : A) :174((reducedAtomicEquivRange (A := A) a :175(NonUnitalStarAlgHom.range (reducedAtomicRepresentation (A := A)))) :176ReducedAtomicHilbertSpace A →L[ℂ] ReducedAtomicHilbertSpace A) =177reducedAtomicRepresentation a := rfl178179/-- The abstract bounded-product coordinate map acts on the Hilbert `lp 2` sum180as the reduced atomic representation. This theorem connects the two different181`lp` constructions without identifying their types. -/182theorem boundedProduct_diagonalRepresentation_coordinateMap183(hCCR : ∀ P : PrimitiveSpectrum A,184(NonUnitalStarAlgHom.range P.pureStateRepresentative.gnsRepresentation) =185ContinuousLinearMap.compactOperatorStarSubalgebra ℂ186P.pureStateRepresentative.GNS)187(a : A) :188CompactOperatorBoundedProduct.diagonalRepresentation189(fun P : PrimitiveSpectrum A => P.pureStateRepresentative.GNS)190(coordinateMap hCCR a) =191reducedAtomicRepresentation a := by192apply ContinuousLinearMap.ext193intro x194apply lp.ext195funext P196simp only [CompactOperatorBoundedProduct.diagonalRepresentation_apply,197coordinateMap_apply_coe, reducedAtomicRepresentation_apply]198199/-- After the repaired range theorem and `coordinateC0Equiv`, the c₀ diagonal200representation is literally the reduced atomic representation. -/201theorem c0_diagonalRepresentation_coordinateC0Equiv202[DiscreteTopology (PrimitiveSpectrum A)]203(hCCR : ∀ P : PrimitiveSpectrum A,204(NonUnitalStarAlgHom.range P.pureStateRepresentative.gnsRepresentation) =205ContinuousLinearMap.compactOperatorStarSubalgebra ℂ206P.pureStateRepresentative.GNS)207(a : A) :208CompactOperatorC0Sum.diagonalRepresentation209(fun P : PrimitiveSpectrum A => P.pureStateRepresentative.GNS)210(coordinateC0Equiv hCCR a) =211reducedAtomicRepresentation a := by212apply ContinuousLinearMap.ext213intro x214apply lp.ext215funext P216simp only [CompactOperatorC0Sum.diagonalRepresentation_apply,217eval_coordinateC0Equiv_apply_coe, reducedAtomicRepresentation_apply]218219section RangeC0Proof220221private abbrev reducedAtomicC0NonUnitalCStarAlgebra : NonUnitalCStarAlgebra (CompactC0Sum A) :=222C0DirectSum.nonUnitalCStarAlgebra _223224attribute [local instance] reducedAtomicC0NonUnitalCStarAlgebra225226private abbrev reducedAtomicC0NormedAddCommGroup : NormedAddCommGroup (CompactC0Sum A) :=227@NonUnitalNormedRing.toNormedAddCommGroup _228reducedAtomicC0NonUnitalCStarAlgebra.toNonUnitalNormedRing229230attribute [local instance] reducedAtomicC0NormedAddCommGroup231232private abbrev reducedAtomicC0SeminormedAddGroup : SeminormedAddGroup (CompactC0Sum A) :=233@NormedAddGroup.toSeminormedAddGroup _234(@NormedAddCommGroup.toNormedAddGroup _ reducedAtomicC0NormedAddCommGroup)235236attribute [local instance] reducedAtomicC0SeminormedAddGroup237238private abbrev reducedAtomicC0Ring : NonUnitalRing (CompactC0Sum A) :=239reducedAtomicC0NonUnitalCStarAlgebra.toNonUnitalNormedRing.toNonUnitalRing240241private abbrev reducedAtomicC0NonAssocSemiring : NonUnitalNonAssocSemiring (CompactC0Sum A) :=242reducedAtomicC0Ring.toNonUnitalNonAssocRing.toNonUnitalNonAssocSemiring243244attribute [local instance] reducedAtomicC0Ring reducedAtomicC0NonAssocSemiring245246private abbrev reducedAtomicC0AddCommMonoid : AddCommMonoid (CompactC0Sum A) :=247reducedAtomicC0NonAssocSemiring.toAddCommMonoid248249attribute [local instance] reducedAtomicC0AddCommMonoid250251private abbrev reducedAtomicC0AddMonoid : AddMonoid (CompactC0Sum A) :=252reducedAtomicC0AddCommMonoid.toAddMonoid253254attribute [local instance] reducedAtomicC0AddMonoid255256private abbrev reducedAtomicC0Module : Module ℂ (CompactC0Sum A) :=257reducedAtomicC0NonUnitalCStarAlgebra.toNormedSpace.toModule258259attribute [local instance] reducedAtomicC0Module260261private abbrev reducedAtomicC0DistribMulAction : DistribMulAction ℂ (CompactC0Sum A) :=262reducedAtomicC0NonUnitalCStarAlgebra.toNormedSpace.toModule.toDistribMulAction263264private abbrev reducedAtomicC0AddZeroClass : AddZeroClass (CompactC0Sum A) :=265reducedAtomicC0NonAssocSemiring.toAddCommMonoid.toAddMonoid.toAddZeroClass266267attribute [local instance] reducedAtomicC0DistribMulAction reducedAtomicC0AddZeroClass268269private abbrev reducedAtomicC0Zero : Zero (CompactC0Sum A) :=270reducedAtomicC0AddZeroClass.toZero271272attribute [local instance] reducedAtomicC0Zero273274private abbrev reducedAtomicC0Add : Add (CompactC0Sum A) :=275reducedAtomicC0AddZeroClass.toAddZero.toAdd276277private abbrev reducedAtomicC0Mul : Mul (CompactC0Sum A) :=278reducedAtomicC0NonAssocSemiring.toMulZeroClass.toMul279280attribute [local instance] reducedAtomicC0Add reducedAtomicC0Mul281282set_option maxHeartbeats 8000000 in283/-- The literal Hilbert-operator range of the reduced atomic representation is284exactly the literal range of the compact c₀ diagonal representation. -/285theorem reducedAtomicRepresentation_range_eq_c0_diagonalRepresentation_range286[DiscreteTopology (PrimitiveSpectrum A)]287(hCCR : ∀ P : PrimitiveSpectrum A,288(NonUnitalStarAlgHom.range P.pureStateRepresentative.gnsRepresentation) =289ContinuousLinearMap.compactOperatorStarSubalgebra ℂ290P.pureStateRepresentative.GNS) :291(NonUnitalStarAlgHom.range (reducedAtomicRepresentation (A := A))) =292(NonUnitalStarAlgHom.range (CompactOperatorC0Sum.diagonalRepresentation293(fun P : PrimitiveSpectrum A => P.pureStateRepresentative.GNS))) := by294apply SetLike.coe_injective295change Set.range (reducedAtomicRepresentation (A := A)) =296Set.range (CompactOperatorC0Sum.diagonalRepresentation297(fun P : PrimitiveSpectrum A => P.pureStateRepresentative.GNS))298let c : A → CompactC0Sum A := coordinateC0Equiv hCCR299let d : CompactC0Sum A →300(ReducedAtomicHilbertSpace A →L[ℂ] ReducedAtomicHilbertSpace A) :=301CompactOperatorC0Sum.diagonalRepresentation302(fun P : PrimitiveSpectrum A => P.pureStateRepresentative.GNS)303have hc : Function.Surjective c := EquivLike.surjective (coordinateC0Equiv hCCR)304have hd : d ∘ c = (reducedAtomicRepresentation (A := A)) := by305funext a306dsimp only [Function.comp_apply, c, d]307exact c0_diagonalRepresentation_coordinateC0Equiv hCCR a308change Set.range (reducedAtomicRepresentation (A := A)) = Set.range d309rw [← hd]310exact hc.range_comp d311312set_option maxHeartbeats 8000000 in313/-- Under discreteness and the selected CCR range equalities, the reduced314atomic operator range is exactly the compact part of the bounded primitive315block-diagonal range. This remains a block-diagonal range statement and does316not assert surjectivity onto all compact operators on the Hilbert sum. -/317theorem reducedAtomicRepresentation_range_eq_bounded_diagonalRepresentation_range_inf_compactOperatorStarSubalgebra318[DiscreteTopology (PrimitiveSpectrum A)]319(hCCR : ∀ P : PrimitiveSpectrum A,320(NonUnitalStarAlgHom.range P.pureStateRepresentative.gnsRepresentation) =321ContinuousLinearMap.compactOperatorStarSubalgebra ℂ322P.pureStateRepresentative.GNS) :323(NonUnitalStarAlgHom.range (reducedAtomicRepresentation (A := A))) =324(NonUnitalStarAlgHom.range (CompactOperatorBoundedProduct.diagonalRepresentation325(fun P : PrimitiveSpectrum A => P.pureStateRepresentative.GNS))) ⊓326ContinuousLinearMap.compactOperatorStarSubalgebra ℂ327(ReducedAtomicHilbertSpace A) := by328exact (reducedAtomicRepresentation_range_eq_c0_diagonalRepresentation_range hCCR).trans329(CompactOperatorBoundedProduct.diagonalRepresentation_range_inf_compactOperatorStarSubalgebra330(fun P : PrimitiveSpectrum A => P.pureStateRepresentative.GNS)).symm331332end RangeC0Proof333334/-- Under discreteness and the selected CCR range equalities, every reduced335atomic image operator is compact. -/336theorem isCompactOperator_reducedAtomicRepresentation337[DiscreteTopology (PrimitiveSpectrum A)]338(hCCR : ∀ P : PrimitiveSpectrum A,339(NonUnitalStarAlgHom.range P.pureStateRepresentative.gnsRepresentation) =340ContinuousLinearMap.compactOperatorStarSubalgebra ℂ341P.pureStateRepresentative.GNS)342(a : A) : IsCompactOperator (reducedAtomicRepresentation a) := by343rw [← c0_diagonalRepresentation_coordinateC0Equiv hCCR a]344exact CompactOperatorC0Sum.isCompactOperator_diagonalRepresentation345(fun P : PrimitiveSpectrum A => P.pureStateRepresentative.GNS)346(coordinateC0Equiv hCCR a)347348/-- The reduced atomic operator range is contained in the concrete compact349operators on the completed Hilbert sum. -/350theorem reducedAtomicRepresentation_range_le_compactOperatorStarSubalgebra351[DiscreteTopology (PrimitiveSpectrum A)]352(hCCR : ∀ P : PrimitiveSpectrum A,353(NonUnitalStarAlgHom.range P.pureStateRepresentative.gnsRepresentation) =354ContinuousLinearMap.compactOperatorStarSubalgebra ℂ355P.pureStateRepresentative.GNS) :356(NonUnitalStarAlgHom.range (reducedAtomicRepresentation (A := A))) ≤357ContinuousLinearMap.compactOperatorStarSubalgebra ℂ358(ReducedAtomicHilbertSpace A) := by359intro T hT360obtain ⟨a, ha⟩ := (NonUnitalStarAlgHom.mem_range361(reducedAtomicRepresentation (A := A))).1 hT362rw [← ha]363exact isCompactOperator_reducedAtomicRepresentation hCCR a364365/-- The reduced atomic representation with codomain restricted to the actual366compact operators on the Hilbert sum. -/367def reducedAtomicCompactRepresentation368[DiscreteTopology (PrimitiveSpectrum A)]369(hCCR : ∀ P : PrimitiveSpectrum A,370(NonUnitalStarAlgHom.range P.pureStateRepresentative.gnsRepresentation) =371ContinuousLinearMap.compactOperatorStarSubalgebra ℂ372P.pureStateRepresentative.GNS) :373A →⋆ₙₐ[ℂ] ContinuousLinearMap.compactOperatorStarSubalgebra ℂ374(ReducedAtomicHilbertSpace A) :=375NonUnitalStarAlgHom.codRestrict (reducedAtomicRepresentation (A := A))376(ContinuousLinearMap.compactOperatorStarSubalgebra ℂ377(ReducedAtomicHilbertSpace A))378(isCompactOperator_reducedAtomicRepresentation hCCR)379380@[simp]381theorem reducedAtomicCompactRepresentation_apply_coe382[DiscreteTopology (PrimitiveSpectrum A)]383(hCCR : ∀ P : PrimitiveSpectrum A,384(NonUnitalStarAlgHom.range P.pureStateRepresentative.gnsRepresentation) =385ContinuousLinearMap.compactOperatorStarSubalgebra ℂ386P.pureStateRepresentative.GNS)387(a : A) :388((reducedAtomicCompactRepresentation hCCR a :389ContinuousLinearMap.compactOperatorStarSubalgebra ℂ390(ReducedAtomicHilbertSpace A)) :391ReducedAtomicHilbertSpace A →L[ℂ] ReducedAtomicHilbertSpace A) =392reducedAtomicRepresentation a := rfl393394end PrimitiveSpectrum395396end MathlibAnnex.Analysis.CStarAlgebra