Exact source view. Private integrated preview.
Exact declaration: MathlibAnnex.CStarAlgebra.CAR.eq_traceExtension_of_mem_stateSpace_of_apply_shellFamilySourceHom_eq_trace
MathlibAnnex/Analysis/CStarAlgebra/CAR/TraceExtensionUnique.lean · lines 18–50
1import MathlibAnnex.Analysis.CStarAlgebra.CAR.TracialRepresentation 2import MathlibAnnex.Analysis.CStarAlgebra.CAR.TracialTransport 3 4/-! 5# Uniqueness of the extension of the CAR trace 6 7This is uniqueness among all state extensions, not merely among traces. 8-/ 9 10set_option autoImplicit false 11 12open scoped InnerProduct 13 14namespace MathlibAnnex.CStarAlgebra.CAR 15 16open MathlibAnnex.Analysis.CStarAlgebra 17 18/-- Any state extending the original CAR trace is the chosen extension. -/ 19theorem eq_traceExtension_of_mem_stateSpace_of_apply_shellFamilySourceHom_eq_trace 20 (family : RepresentativeShellFamily) (φ : ShellFamilyTarget family →L[ℂ] ℂ) 21 (hφ : φ ∈ MathlibAnnex.Analysis.CStarAlgebra.stateSpace (ShellFamilyTarget family)) 22 (hφB : ∀ b, φ (shellFamilySourceHom family b) = trace b) : 23 φ = traceExtension family := by 24 let f := positiveLinearMapOfMemStateSpace φ hφ 25 let ρ : Representation (ShellFamilyTarget family) f.GNS := f.gnsStarAlgHom 26 let ξ : f.GNS := f.gnsCyclicVector 27 have hξ (b : Limit) : Representation.vectorFunctional 28 (ρ.comp (shellFamilySourceHom family)) ξ b = trace b := by 29 change inner ℂ f.gnsCyclicVector (f.gnsStarAlgHom _ f.gnsCyclicVector) = _ 30 rw [PositiveLinearMap.inner_gnsCyclicVector_gnsStarAlgHom] 31 exact hφB b 32 have hcyclic : DenseRange (fun a ↦ ρ a ξ) := 33 f.denseRange_gnsStarAlgHom_apply_gnsCyclicVector 34 obtain ⟨e, heξ, he⟩ := exists_pointed_unitary_of_trace_of_cyclic family 35 ρ (tracialRepresentation family) ξ (tracialVector family) hξ 36 (vectorFunctional_tracialRepresentation_source family) hcyclic 37 (denseRange_tracialRepresentation_orbit family) 38 apply ContinuousLinearMap.ext 39 intro a 40 calc 41 φ a = inner ℂ ξ (ρ a ξ) := (f.inner_gnsCyclicVector_gnsStarAlgHom a).symm 42 _ = inner ℂ (e ξ) (e (ρ a ξ)) := (e.inner_map_map ξ (ρ a ξ)).symm 43 _ = inner ℂ (tracialVector family) 44 (tracialRepresentation family a (tracialVector family)) := by 45 have hcoe (y : f.GNS) : 46 (e : f.GNS →L[ℂ] TracialHilbertSpace family) y = e y := rfl 47 have h := congrArg (fun T : f.GNS →L[ℂ] TracialHilbertSpace family ↦ T ξ) (he a) 48 simpa only [ContinuousLinearMap.comp_apply, hcoe, heξ] using 49 congrArg (fun y ↦ inner ℂ (e ξ) y) h 50 _ = traceExtension family a := inner_tracialVector_tracialRepresentation family a 51 52/-- Existence and uniqueness are on the actual fixed target. -/ 53theorem existsUnique_state_extension_trace (family : RepresentativeShellFamily) : 54 ∃! φ : ShellFamilyTarget family →L[ℂ] ℂ, 55 φ ∈ MathlibAnnex.Analysis.CStarAlgebra.stateSpace (ShellFamilyTarget family) ∧ 56 ∀ b, φ (shellFamilySourceHom family b) = trace b := by 57 refine ⟨traceExtension family, 58 ⟨traceExtension_mem_stateSpace family, traceExtension_shellFamilySourceHom family⟩, ?_⟩ 59 intro φ hφ 60 exact eq_traceExtension_of_mem_stateSpace_of_apply_shellFamilySourceHom_eq_trace family φ hφ.1 hφ.2 61 62end MathlibAnnex.CStarAlgebra.CAR