Documentation

LeanPool.Superdiffusion.Algsuperdiff.Section3.Provider.Corrector.OmegaStream

OmegaStream #

Ported from scottnarmstrong/Superdiffusion at 7f20476385d4af418f110303085ad0740c9eba46. Module imports, support namespace and local option directives adapted for Lean Pool.

Provider: the Ω-level approximate antisymmetric stream of the kernel route #

Algsuperdiff/Section3/Provider/Corrector/SolenoidalApproximation.lean proves the cutoff core of part (ii) of l.approximation.stationary.by.local under three disclosed stream hypotheses hstreamSmooth, hstreamAnti, hstreamDiv, and records in its module docstring that the Ω-level stream itself "is not constructed in this file and does not yet exist in the repository".

This file constructs it, in the approximate form, by the elementary kernel route. For a family g = (g_m) of smooth compactly supported scalar fields on ℝᵈ and a stationary square-integrable X : Ω → ℝᵈ, put

S_{im} := A_{g_m} X_i − A_{g_i} X_m (kernelStream),

where A_κ is the mollification along the translation action of Algsuperdiff/Section3/Provider/Corrector/Mollification.lean. Three facts, all elementary:

Choosing g so that Σ_m ∂_m g_m = χ_1 − χ_2 — which the explicit telescoping kernel of Algsuperdiff/Section3/Provider/Corrector/DivergenceKernel.lean does for any two product densities — the stream divergence becomes A_{χ_1} X − A_{χ_2} X almost surely, so

‖div S − X‖_{L²(Ω)} ≤ ‖A_{χ_1} X − X‖_{L²(Ω)} + ‖A_{χ_2} X‖_{L²(Ω)},

the first term small by the approximate-identity layer of Algsuperdiff/Section3/Provider/Corrector/MollifierConvergence.lean and the second small by the decorrelation layer of Algsuperdiff/Section3/Provider/Corrector/MollifiedDecorrelation.lean. That last step, and the discharge of both legs at the fresh shell, are carried out in Algsuperdiff/Section3/Provider/Corrector/OmegaStreamAssembly.lean; this file stops at the exact divergence identity and the almost-sure identification of its right-hand side (kernelStreamDiv_ae_eq).

No resolvent, no Newtonian potential, no Newton theorem and no ergodic theorem is used.

What is not proved here. The divergence identity produced is the ε-approximate one: the stream reproduces an Ω-level field D exactly, and D is within a controlled L²(Ω) distance of X, but D ≠ X. The consumer exists_isSolenoidalZeroNormalTraceOn_limsup_le_of_stationaryStream asks for the exact hypothesis hstreamDiv, so the output of this file does not discharge that hypothesis verbatim; see the note on exists_kernelStream_integral_normSq_le in Algsuperdiff/Section3/Provider/Corrector/OmegaStreamAssembly.lean.

Disclosure. Nothing in this file realizes any source node. It supplies the approximate form of the representation leg disclosed by SolenoidalApproximation.lean; it does not prove part (ii) of l.approximation.stationary.by.local, and it claims no node status.

The reflected kernel #

The reflected kernel y ↦ κ (-y). It is the adjoint kernel of the mollification A_κ on L²(Ω) (integral_mul_mollify_eq).

Equations
Instances For

    The real inner product is multiplication.

    Reflection reverses the sign of a partial derivative.

    Elementary algebra of the mollification kernel #

    theorem Algsuperdiff.Section3.Provider.Corrector.mollify_neg_kernel {d : ℕ} {Ω : Type u_1} [AddAction (HCPolySupport.Vec d) Ω] {E : Type u_2} [NormedAddCommGroup E] [NormedSpace ℝ E] (κ : HCPolySupport.Vec d → ℝ) (X : Ω → E) (ω : Ω) :
    mollify (fun (y : HCPolySupport.Vec d) => -κ y) X ω = -mollify κ X ω

    Negating the kernel negates the mollification.

    theorem Algsuperdiff.Section3.Provider.Corrector.mollify_kernel_sub {d : ℕ} {Ω : Type u_1} [AddAction (HCPolySupport.Vec d) Ω] {E : Type u_2} [NormedAddCommGroup E] [NormedSpace ℝ E] {κ₁ κ₂ ν : HCPolySupport.Vec d → ℝ} (hν : ∀ (y : HCPolySupport.Vec d), ν y = κ₁ y - κ₂ y) {X : Ω → E} {ω : Ω} (h1 : MeasureTheory.Integrable (fun (y : HCPolySupport.Vec d) => κ₁ y • X (-y +ᵥ ω)) MeasureTheory.volume) (h2 : MeasureTheory.Integrable (fun (y : HCPolySupport.Vec d) => κ₂ y • X (-y +ᵥ ω)) MeasureTheory.volume) :
    mollify ν X ω = mollify κ₁ X ω - mollify κ₂ X ω

    Splitting a kernel that is a pointwise difference.

    Euclidean-vector fields assembled from scalars #

    def Algsuperdiff.Section3.Provider.Corrector.vecPack {d : ℕ} {Ω : Type u_1} (ψ : Fin d → Ω → ℝ) (ω : Ω) :

    A Euclidean-vector stationary field assembled from its d scalar coordinates.

    Equations
    Instances For
      theorem Algsuperdiff.Section3.Provider.Corrector.memLp_two_vecPack {d : ℕ} {Ω : Type u_1} [MeasurableSpace Ω] {μ : MeasureTheory.Measure Ω} {ψ : Fin d → Ω → ℝ} (hψm : ∀ (i : Fin d), MeasureTheory.StronglyMeasurable (ψ i)) (hψ : ∀ (i : Fin d), MeasureTheory.MemLp (ψ i) 2 μ) :

      The mollified horizontal divergence and its vanishing #

      noncomputable def Algsuperdiff.Section3.Provider.Corrector.mollifyDiv {d : ℕ} {Ω : Type u_1} [AddAction (HCPolySupport.Vec d) Ω] (κ : HCPolySupport.Vec d → ℝ) (X : Ω → HCPolySupport.HilbertVec d) (ω : Ω) :

      The mollified horizontal divergence Σ_m A_{∂_m κ} X_m. It is the cross term of the row divergence of kernelStream.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For

        The adjoint of mollification is mollification by the reflected kernel. The proof is the change of variables y ↦ -y on ℝᵈ together with the translation invariance of μ; no integration by parts is used.

        The pairing identity for the mollified divergence: its L²(Ω) adjoint is minus the mollified gradient at the reflected kernel.

        The cross term vanishes. For a field in the stationary solenoidal subspace the mollified horizontal divergence is almost surely zero. This is the only use of solenoidality in the construction of the stream.

        The kernel stream and its realizations #

        Smoothness of a mollified realization, for an arbitrary smooth compactly supported kernel.

        theorem Algsuperdiff.Section3.Provider.Corrector.realize_mollify_apply {d : ℕ} {Ω : Type u_1} [AddAction (HCPolySupport.Vec d) Ω] {E : Type u_2} [NormedAddCommGroup E] [NormedSpace ℝ E] (κ : HCPolySupport.Vec d → ℝ) (X : Ω → E) (ω : Ω) (x : HCPolySupport.Vec d) :
        realize (mollify κ X) ω x = ∫ (y : HCPolySupport.Vec d), κ y • realize X ω (x - y)

        A mollified realization as an honest convolution integral.

        theorem Algsuperdiff.Section3.Provider.Corrector.realize_mollify_eq_sum {d : ℕ} {Ω : Type u_1} [AddAction (HCPolySupport.Vec d) Ω] {E : Type u_2} [NormedAddCommGroup E] [NormedSpace ℝ E] {κ : Fin d → HCPolySupport.Vec d → ℝ} {ν : HCPolySupport.Vec d → ℝ} (hκc : ∀ (m : Fin d), Continuous (κ m)) (hκs : ∀ (m : Fin d), HasCompactSupport (κ m)) (hν : ∀ (y : HCPolySupport.Vec d), ν y = ∑ m : Fin d, κ m y) {X : Ω → E} {ω : Ω} (hloc : MeasureTheory.LocallyIntegrable (realize X ω) MeasureTheory.volume) (x : HCPolySupport.Vec d) :
        realize (mollify ν X) ω x = ∑ m : Fin d, realize (mollify (κ m) X) ω x

        Kernel additivity of the mollified realization, at every point of space.

        The kernel stream S_{im} = A_{g_m} X_i − A_{g_i} X_m, in the column convention of Algsuperdiff.Section3.Provider.Corrector.streamRealization: the value S ω m is the m-th column, so the entry S_{im} is (S ω m) i.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For

          The kernel stream is antisymmetric, for every sample, by construction.

          theorem Algsuperdiff.Section3.Provider.Corrector.contDiff_streamRealization_kernelStream {d : ℕ} {Ω : Type u_1} [AddAction (HCPolySupport.Vec d) Ω] {g : Fin d → HCPolySupport.Vec d → ℝ} (hgs : ∀ (m : Fin d), ContDiff ℝ (↑⊤) (g m)) (hgc : ∀ (m : Fin d), HasCompactSupport (g m)) {X : Ω → HCPolySupport.HilbertVec d} {ω : Ω} (hloc : ∀ (i : Fin d), MeasureTheory.LocallyIntegrable (realize (coordField X i) ω) MeasureTheory.volume) (i m : Fin d) :

          The realizations of the kernel stream are smooth.

          theorem Algsuperdiff.Section3.Provider.Corrector.coordDeriv_realize_mollify {d : ℕ} {Ω : Type u_1} [AddAction (HCPolySupport.Vec d) Ω] {κ : HCPolySupport.Vec d → ℝ} (hκc : HasCompactSupport κ) (hκ : ContDiff ℝ (↑⊤) κ) {φ : Ω → ℝ} {ω : Ω} (hloc : MeasureTheory.LocallyIntegrable (realize φ ω) MeasureTheory.volume) (i : Fin d) (x : HCPolySupport.Vec d) :
          coordDeriv (realize (mollify κ φ) ω) i x = realize (mollify (kernelDeriv κ i) φ) ω x

          The coordinate derivative of a mollified realization falls on the kernel.

          theorem Algsuperdiff.Section3.Provider.Corrector.coordDeriv_streamRealization_kernelStream {d : ℕ} {Ω : Type u_1} [AddAction (HCPolySupport.Vec d) Ω] {g : Fin d → HCPolySupport.Vec d → ℝ} (hgs : ∀ (m : Fin d), ContDiff ℝ (↑⊤) (g m)) (hgc : ∀ (m : Fin d), HasCompactSupport (g m)) {X : Ω → HCPolySupport.HilbertVec d} {ω : Ω} (hloc : ∀ (i : Fin d), MeasureTheory.LocallyIntegrable (realize (coordField X i) ω) MeasureTheory.volume) (i m : Fin d) (x : HCPolySupport.Vec d) :
          coordDeriv (streamRealization (kernelStream g X) ω i m) m x = realize (mollify (kernelDeriv (g m) m) (coordField X i)) ω x - realize (mollify (kernelDeriv (g i) m) (coordField X m)) ω x

          The single coordinate derivative of an entry of the kernel stream.

          The Ω-level row divergence of the kernel stream: the smoothing of X by the divergence of g, minus the cross term.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            theorem Algsuperdiff.Section3.Provider.Corrector.streamDivergence_kernelStream {d : ℕ} {Ω : Type u_1} [AddAction (HCPolySupport.Vec d) Ω] {g : Fin d → HCPolySupport.Vec d → ℝ} {ν : HCPolySupport.Vec d → ℝ} (hgs : ∀ (m : Fin d), ContDiff ℝ (↑⊤) (g m)) (hgc : ∀ (m : Fin d), HasCompactSupport (g m)) (hν : ∀ (y : HCPolySupport.Vec d), ν y = ∑ m : Fin d, kernelDeriv (g m) m y) {X : Ω → HCPolySupport.HilbertVec d} {ω : Ω} (hloc : ∀ (i : Fin d), MeasureTheory.LocallyIntegrable (realize (coordField X i) ω) MeasureTheory.volume) (x : HCPolySupport.Vec d) :

            The exact divergence identity. At every point of space the row divergence of the realization of the kernel stream is the realization of the Ω-level field kernelStreamDiv. There is no error term here: the whole approximation is carried by the distance between kernelStreamDiv and X.

            Measurability and square integrability of the kernel stream #

            The row divergence is the two-scale smoothing of the field. Almost surely the Ω-level row divergence of the kernel stream is A_{κ₁} X − A_{κ₂} X: the cross term is killed by solenoidality and the remaining kernel splits.