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

PL1/NoiseGeneratorCore.lean

All source files · Download exact source

SHA-256: 323527fcec8aee10ef1aa0f040f3b493ed038c21200e64d9a42a7b46868ca0da

1import PL1.NoiseGenerator2import PL1.WalshExpectations34/-! # Finite Walsh polynomials form a core for the actual noise generator56The conditional expectations preserve the genuine generator graph and7converge in both coordinates. Convergence is stated explicitly in the graph8sum norm `‖f‖₁ + ‖g‖₁`, with no substitution of the product maximum norm.9-/1011noncomputable section12open Filter MeasureTheory13open scoped Topology ENNReal NNReal14namespace PL1.Noise15open Walsh WalshExpectations1617variable (K : Type*) [RCLike K] (rates : ℕ → ℝ≥0)1819/-- Every finite-coordinate expectation preserves the actual infinitesimal generator graph. -/20theorem IsGeneratorPair.expectation {f g : Lp K 1 haar}21    (hfg : IsGeneratorPair K rates f g) (m : ℕ) :22    IsGeneratorPair K rates (expectationL1 K m f) (expectationL1 K m g) := by23  apply (isGeneratorPair_iff_resolvent K rates _ _).mpr24  have he := (isGeneratorPair_iff_resolvent K rates f g).mp hfg25  calc26    _ = resolventL1 K rates (dyadicTime 0) (expectationL1 K m (f + g)) := by simp only [map_add]27    _ = expectationL1 K m (resolventL1 K rates (dyadicTime 0) (f + g)) :=28      (DFunLike.congr_fun (expectationL1_resolvent_commute K m rates (dyadicTime 0)) (f + g)).symm29    _ = _ := by rw [he]3031/-- The expectation approximants converge in the exact graph sum norm. -/32theorem tendsto_expectation_graphNorm (f g : Lp K 1 haar) :33    Tendsto (fun m => ResolventGeneratorGraph.graphNorm K34      (expectationL1 K m f - f, expectationL1 K m g - g)) atTop (𝓝 0) := by35  have hf := ((tendsto_expectationL1 K f).sub_const f).norm36  have hg := ((tendsto_expectationL1 K g).sub_const g).norm37  simpa only [ResolventGeneratorGraph.graphNorm, sub_self, norm_zero, zero_add] using hf.add hg3839/-- Every actual generator pair is approximated by finite Walsh polynomial generator pairs. -/40theorem IsGeneratorPair.polynomial_core {f g : Lp K 1 haar}41    (hfg : IsGeneratorPair K rates f g) :42    (∀ m, expectationL1 K m f ∈ finiteSpan K m ∧ expectationL1 K m g ∈ finiteSpan K m ∧43      IsGeneratorPair K rates (expectationL1 K m f) (expectationL1 K m g)) ∧44    Tendsto (fun m => ‖expectationL1 K m f - f‖ + ‖expectationL1 K m g - g‖) atTop (𝓝 0) :=45  ⟨fun m => ⟨expectationL1_mem_finiteSpan K m f, expectationL1_mem_finiteSpan K m g,46      hfg.expectation K rates m⟩, tendsto_expectation_graphNorm K f g⟩4748/-- A quantitative form of graph-norm density by finite Walsh polynomials. -/49theorem IsGeneratorPair.exists_polynomial_graphNorm_lt {f g : Lp K 1 haar}50    (hfg : IsGeneratorPair K rates f g) (ε : ℝ) (hε : 0 < ε) :51    ∃ (m : ℕ) (p q : Lp K 1 haar), p ∈ finiteSpan K m ∧ q ∈ finiteSpan K m ∧52      IsGeneratorPair K rates p q ∧ ‖p - f‖ + ‖q - g‖ < ε := by53  obtain ⟨m, hm⟩ := ((tendsto_expectation_graphNorm K f g).eventually_lt_const hε).exists54  exact ⟨m, expectationL1 K m f, expectationL1 K m g,55    expectationL1_mem_finiteSpan K m f, expectationL1_mem_finiteSpan K m g,56    hfg.expectation K rates m, hm⟩5758/-- Every finite Walsh polynomial itself belongs to the actual generator domain. -/59theorem finiteSpan_subset_generator_domain (m : ℕ) {f : Lp K 1 haar}60    (hf : f ∈ finiteSpan K m) : ∃ g, IsGeneratorPair K rates f g := by61  apply (exists_generatorPair_iff_range K rates f).mpr62  have hsub : finiteSpan K m ≤ (resolventL1 K rates (dyadicTime 0)).range := by63    apply Submodule.span_le.mpr64    rintro x ⟨F, _, rfl⟩65    exact (exists_generatorPair_iff_range K rates (scalarCharacterLp K 1 F)).mp66      ⟨_, isGeneratorPair_character K rates F⟩67  exact hsub hf6869#print axioms IsGeneratorPair.polynomial_core70#print axioms IsGeneratorPair.exists_polynomial_graphNorm_lt71#print axioms finiteSpan_subset_generator_domain72end PL1.Noise73