On complemented subspaces of L1[0,1]L_1[0,1]

PL1/MatrixTrace.lean

All source files · Download exact source

SHA-256: d9ebf2f0fbcefef57065384d3198913a2cdb0370b1ab6352424eb626153f46c4

1import PL1.SmoothingApproximation2import PL1.L1Sum34/-! # Finite matrix compressions and the interval identity obstruction -/56noncomputable section7set_option autoImplicit false8set_option maxHeartbeats 8000009set_option backward.isDefEq.respectTransparency false10open MeasureTheory Filter11open scoped ENNReal BigOperators Topology1213namespace PL1.MatrixTrace1415attribute [local instance] DyadicTrace.intervalMeasure_probability1617variable {𝕜 Y : Type*} [RCLike 𝕜] [NormedAddCommGroup Y] [NormedSpace 𝕜 Y]1819theorem trace_sum {ι : Type*} (s : Finset ι)20    (R : ι → IntervalL1 𝕜 →L[𝕜] IntervalL1 𝕜) (n : ℕ) :21    DyadicTrace.trace n (∑ i ∈ s, R i) = ∑ i ∈ s, DyadicTrace.trace n (R i) := by22  simp only [DyadicTrace.trace, TraceBounds.partitionTrace, TraceBounds.finiteTrace,23    ContinuousLinearMap.comp_apply, sum_apply, map_sum]24  exact Finset.sum_comm2526theorem trace_tendsto_zero_sum {ι : Type*} (s : Finset ι)27    (R : ι → IntervalL1 𝕜 →L[𝕜] IntervalL1 𝕜)28    (hR : ∀ i ∈ s, Tendsto (fun n => DyadicTrace.trace n (R i)) atTop (𝓝 0)) :29    Tendsto (fun n => DyadicTrace.trace n (∑ i ∈ s, R i)) atTop (𝓝 0) := by30  simp_rw [trace_sum]31  simpa using tendsto_finsetSum s hR3233def insertion (i : ℕ) : Y →L[𝕜] L1Sum Y :=34  lp.singleContinuousLinearMap 𝕜 (fun _ : ℕ => Y) 1 i3536def coordinate (i : ℕ) : L1Sum Y →L[𝕜] Y :=37  lp.evalCLM 𝕜 (fun _ : ℕ => Y) 1 i3839/-- The actual finite coordinate mask of an ell1 sum. -/40def compression (s : Finset ℕ) : L1Sum Y →L[𝕜] L1Sum Y :=41  ∑ i ∈ s, (insertion (𝕜 := 𝕜) i).comp (coordinate i)4243theorem compression_apply (s : Finset ℕ) (x : L1Sum Y) :44    compression (𝕜 := 𝕜) s x = ∑ i ∈ s, lp.single 1 i (x i) := by45  simp only [compression, sum_apply, ContinuousLinearMap.comp_apply, insertion, coordinate]46  rfl4748theorem compression_apply_coord (s : Finset ℕ) (x : L1Sum Y) (i : ℕ) :49    compression (𝕜 := 𝕜) s x i = if i ∈ s then x i else 0 := by50  rw [compression_apply]51  simp only [lp.coeFn_sum, Finset.sum_apply, lp.coeFn_single, Finset.sum_pi_single]5253theorem norm_compression_le_one (s : Finset ℕ) : ‖compression (𝕜 := 𝕜) (Y := Y) s‖ ≤ 1 := by54  apply ContinuousLinearMap.opNorm_le_bound _ zero_le_one55  intro x56  rw [one_mul, compression_apply]57  have h := lp.norm_compl_sum_single (by norm_num : 0 < (1 : ℝ≥0∞).toReal) x s58  have hc := lp.norm_sum_single (by norm_num : 0 < (1 : ℝ≥0∞).toReal) (fun i => x i) s59  simp only [ENNReal.toReal_one, Real.rpow_one] at h hc60  rw [hc]61  have hn := norm_nonneg (x - ∑ i ∈ s, lp.single 1 i (x i))62  linarith6364def entry (Q : L1Sum Y →L[𝕜] L1Sum Y) (i j : ℕ) : Y →L[𝕜] Y :=65  (coordinate i).comp (Q.comp (insertion j))6667theorem compressed_sandwich_eq_sum (E F : Finset ℕ)68    (A : L1Sum Y →L[𝕜] IntervalL1 𝕜) (Q : L1Sum Y →L[𝕜] L1Sum Y)69    (B : IntervalL1 𝕜 →L[𝕜] L1Sum Y) :70    A.comp ((compression E).comp (Q.comp ((compression F).comp B))) =71      ∑ i ∈ E, ∑ j ∈ F, (A.comp (insertion i)).comp72        ((entry Q i j).comp ((coordinate j).comp B)) := by73  apply ContinuousLinearMap.ext74  intro f75  simp only [compression, entry, ContinuousLinearMap.comp_apply, sum_apply, map_sum]76  exact Finset.sum_comm7778theorem compressed_trace_tendsto_zero (E F : Finset ℕ)79    (A : L1Sum Y →L[𝕜] IntervalL1 𝕜) (Q : L1Sum Y →L[𝕜] L1Sum Y)80    (B : IntervalL1 𝕜 →L[𝕜] L1Sum Y)81    (hentry : ∀ i ∈ E, ∀ j ∈ F, Tendsto (fun n => DyadicTrace.trace n82      ((A.comp (insertion i)).comp ((entry Q i j).comp ((coordinate j).comp B))))83        atTop (𝓝 0)) :84    Tendsto (fun n => DyadicTrace.trace n85      (A.comp ((compression E).comp (Q.comp ((compression F).comp B))))) atTop (𝓝 0) := by86  rw [compressed_sandwich_eq_sum]87  apply trace_tendsto_zero_sum88  intro i hi89  exact trace_tendsto_zero_sum F _ (hentry i hi)9091theorem one_le_norm_id_sub_compression (E F : Finset ℕ)92    (A : L1Sum Y →L[𝕜] IntervalL1 𝕜) (Q : L1Sum Y →L[𝕜] L1Sum Y)93    (B : IntervalL1 𝕜 →L[𝕜] L1Sum Y)94    (hentry : ∀ i ∈ E, ∀ j ∈ F, Tendsto (fun n => DyadicTrace.trace n95      ((A.comp (insertion i)).comp ((entry Q i j).comp ((coordinate j).comp B))))96        atTop (𝓝 0)) :97    1 ≤ ‖DyadicTrace.restrictLinfty (ContinuousLinearMap.id 𝕜 (IntervalL1 𝕜) -98      A.comp ((compression E).comp (Q.comp ((compression F).comp B))))‖ :=99  DyadicTrace.one_le_norm_id_sub _ (compressed_trace_tendsto_zero E F A Q B hentry)100101end PL1.MatrixTrace102