|
| 1 | +/- |
| 2 | +Copyright (c) 2024 Frédéric Dupuis. All rights reserved. |
| 3 | +Released under Apache 2.0 license as described in the file LICENSE. |
| 4 | +Authors: Frédéric Dupuis |
| 5 | +-/ |
| 6 | + |
| 7 | +import Mathlib.Analysis.Normed.Algebra.Spectrum |
| 8 | +import Mathlib.Analysis.CStarAlgebra.ContinuousFunctionalCalculus.Unital |
| 9 | +import Mathlib.MeasureTheory.Integral.SetIntegral |
| 10 | + |
| 11 | +/-! |
| 12 | +# Integrals and the continuous functional calculus |
| 13 | +
|
| 14 | +This file gives results about integrals of the form `∫ x, cfc (f x) a`. Most notably, we show |
| 15 | +that the integral commutes with the continuous functional calculus under appropriate conditions. |
| 16 | +
|
| 17 | +## Main declarations |
| 18 | +
|
| 19 | ++ `cfc_integral`: given a function `f : X → 𝕜 → 𝕜`, we have that |
| 20 | + `cfc (fun r => ∫ x, f x r ∂μ) a = ∫ x, cfc (f x) a ∂μ` |
| 21 | + under appropriate conditions |
| 22 | +
|
| 23 | +## TODO |
| 24 | +
|
| 25 | ++ Prove a similar result for the non-unital case |
| 26 | ++ Lift this to the case where the CFC is over `ℝ≥0` |
| 27 | ++ Use this to prove operator monotonicity and concavity/convexity of `rpow` and `log` |
| 28 | +-/ |
| 29 | + |
| 30 | +open MeasureTheory |
| 31 | + |
| 32 | +section unital |
| 33 | + |
| 34 | +variable {X : Type*} {𝕜 : Type*} {A : Type*} {p : A → Prop} [RCLike 𝕜] |
| 35 | + [MeasurableSpace X] {μ : Measure X} |
| 36 | + [NormedRing A] [StarRing A] [NormedAlgebra 𝕜 A] [NormedAlgebra ℝ A] [CompleteSpace A] |
| 37 | + [ContinuousFunctionalCalculus 𝕜 p] |
| 38 | + |
| 39 | +lemma cfcL_integral (a : A) (f : X → C(spectrum 𝕜 a, 𝕜)) (hf₁ : Integrable f μ) (ha : p a) : |
| 40 | + ∫ x, cfcL ha (f x) ∂μ = cfcL ha (∫ x, f x ∂μ) := by |
| 41 | + rw [ContinuousLinearMap.integral_comp_comm _ hf₁] |
| 42 | + |
| 43 | +lemma cfcHom_integral (a : A) (f : X → C(spectrum 𝕜 a, 𝕜)) (hf₁ : Integrable f μ) (ha : p a) : |
| 44 | + ∫ x, cfcHom ha (f x) ∂μ = cfcHom ha (∫ x, f x ∂μ) := |
| 45 | + cfcL_integral a f hf₁ ha |
| 46 | + |
| 47 | +open ContinuousMap in |
| 48 | +/-- The continuous functional calculus commutes with integration. -/ |
| 49 | +lemma cfc_integral [TopologicalSpace X] [OpensMeasurableSpace X] (f : X → 𝕜 → 𝕜) |
| 50 | + (bound : X → ℝ) (a : A) [SecondCountableTopologyEither X C(spectrum 𝕜 a, 𝕜)] |
| 51 | + (hf₁ : ∀ x, ContinuousOn (f x) (spectrum 𝕜 a)) |
| 52 | + (hf₂ : Continuous (fun x ↦ (⟨_, hf₁ x |>.restrict⟩ : C(spectrum 𝕜 a, 𝕜)))) |
| 53 | + (hbound : ∀ x, ∀ z ∈ spectrum 𝕜 a, ‖f x z‖ ≤ ‖bound x‖) |
| 54 | + (hbound_finite_integral : HasFiniteIntegral bound μ) (ha : p a := by cfc_tac) : |
| 55 | + cfc (fun r => ∫ x, f x r ∂μ) a = ∫ x, cfc (f x) a ∂μ := by |
| 56 | + let fc : X → C(spectrum 𝕜 a, 𝕜) := fun x => ⟨_, (hf₁ x).restrict⟩ |
| 57 | + have fc_integrable : Integrable fc μ := by |
| 58 | + refine ⟨hf₂.aestronglyMeasurable, ?_⟩ |
| 59 | + refine hbound_finite_integral.mono <| .of_forall fun x ↦ ?_ |
| 60 | + rw [norm_le _ (norm_nonneg (bound x))] |
| 61 | + exact fun z ↦ hbound x z.1 z.2 |
| 62 | + have h_int_fc : (spectrum 𝕜 a).restrict (∫ x, f x · ∂μ) = ∫ x, fc x ∂μ := by |
| 63 | + ext; simp [integral_apply fc_integrable, fc] |
| 64 | + have hcont₂ : ContinuousOn (fun r => ∫ x, f x r ∂μ) (spectrum 𝕜 a) := by |
| 65 | + rw [continuousOn_iff_continuous_restrict] |
| 66 | + convert map_continuous (∫ x, fc x ∂μ) |
| 67 | + rw [integral_congr_ae (.of_forall fun _ ↦ cfc_apply ..), cfc_apply .., |
| 68 | + cfcHom_integral _ _ fc_integrable] |
| 69 | + congr |
| 70 | + |
| 71 | +/-- The continuous functional calculus commutes with integration. -/ |
| 72 | +lemma cfc_integral' [TopologicalSpace X] [OpensMeasurableSpace X] (f : X → 𝕜 → 𝕜) |
| 73 | + (bound : X → ℝ) (a : A) [SecondCountableTopologyEither X C(spectrum 𝕜 a, 𝕜)] |
| 74 | + (hf : Continuous (fun x => (spectrum 𝕜 a).restrict (f x)).uncurry) |
| 75 | + (hbound : ∀ x, ∀ z ∈ spectrum 𝕜 a, ‖f x z‖ ≤ ‖bound x‖) |
| 76 | + (hbound_finite_integral : HasFiniteIntegral bound μ) (ha : p a := by cfc_tac) : |
| 77 | + cfc (fun r => ∫ x, f x r ∂μ) a = ∫ x, cfc (f x) a ∂μ := by |
| 78 | + refine cfc_integral f bound a ?_ ?_ hbound hbound_finite_integral |
| 79 | + · exact (continuousOn_iff_continuous_restrict.mpr <| hf.uncurry_left ·) |
| 80 | + · exact ContinuousMap.curry ⟨_, hf⟩ |>.continuous |
| 81 | + |
| 82 | +end unital |
0 commit comments