All proofs
Project-declaredLean 4.29.0-rc6 · mathlib@5c8398df5281

Linfty subsolution Moser on ball

DeGiorgi.linfty_subsolution_Moser_on_ball

Project documentation

Moser L^p → L∞ estimate on an arbitrary ball, in the same a.e.-power format as the unit-ball Chapter 06 theorem.

Exact Lean statement

theorem linfty_subsolution_Moser_on_ball
    (hd : 2 < (d : ℝ))
    {x₀ : E} {R : ℝ} (hR : 0 < R)
    (A : NormalizedEllipticCoeff d (Metric.ball x₀ R))
    {u : E → ℝ} {p₀ : ℝ} (hp₀ : 1 < p₀)
    (hsub : IsSubsolution A.1 u)
    (hposInt :
      IntegrableOn (fun x => |max (u x) 0| ^ p₀) (Metric.ball x₀ R) volume) :
    ∀ᵐ x ∂(volume.restrict (Metric.ball x₀ (R / 2 : ℝ))),
      |max (u x) 0| ^ p₀ ≤
        C_Moser d * A.1.Λ ^ ((d : ℝ) / 2) *
          (p₀ / (p₀ - 1)) ^ (d : ℝ) *
          ((R ^ Module.finrank ℝ E)⁻¹ *
            ∫ x in Metric.ball x₀ R, |max (u x) 0| ^ p₀ ∂volume)

Formal artifact

Lean source

Canonical source
Full Lean sourceLean 4
theorem linfty_subsolution_Moser_on_ball    (hd : 2 < (d : ))    {x₀ : E} {R : } (hR : 0 < R)    (A : NormalizedEllipticCoeff d (Metric.ball x₀ R))    {u : E  } {p₀ : } (hp₀ : 1 < p₀)    (hsub : IsSubsolution A.1 u)    (hposInt :      IntegrableOn (fun x => |max (u x) 0| ^ p₀) (Metric.ball x₀ R) volume) :    ᵐ x ∂(volume.restrict (Metric.ball x₀ (R / 2 : ))),      |max (u x) 0| ^ p₀         C_Moser d * A.1^ ((d : ) / 2) *          (p₀ / (p₀ - 1)) ^ (d : ) *          ((R ^ Module.finrank  E)⁻¹ *            ∫ x in Metric.ball x₀ R, |max (u x) 0| ^ p₀ ∂volume) := by  let uR : E   := rescaleToUnitBall (d := d) (x₀ := x₀) (R := R) u  let AR : NormalizedEllipticCoeff d (Metric.ball (0 : E) 1) :=    rescaleNormalizedCoeffToUnitBall (d := d) (x₀ := x₀) (R := R) hR A  have hsubR : IsSubsolution AR.1 uR := by    change IsSubsolution      (rescaleCoeffToUnitBall (d := d) (x₀ := x₀) (R := R) hR A.1)      (rescaleToUnitBall (d := d) (x₀ := x₀) (R := R) u)    exact rescaleToUnitBall_isSubsolution (d := d) (x₀ := x₀) (R := R) hR A.1 hsub  have hIntR :      IntegrableOn (fun z => |max (uR z) 0| ^ p₀) (Metric.ball (0 : E) 1) volume := by    dsimp [uR]    have hposInt' :        IntegrableOn (fun x => |max (u x) 0| ^ p₀) (Metric.ball x₀ (R * (1 : ))) volume := by      simpa using hposInt    exact (integrableOn_rescaleToUnitBall_iff      (d := d) (x₀ := x₀) (R := R) (ρ := (1 : )) hR      (f := fun x => |max (u x) 0| ^ p₀)).2 hposInt'  have hInt_eq :      ∫ z in Metric.ball (0 : E) 1, |max (uR z) 0| ^ p₀ ∂volume =        (R ^ Module.finrank  E)⁻¹ *          ∫ x in Metric.ball x₀ R, |max (u x) 0| ^ p₀ ∂volume := by    simpa [uR] using integral_comp_affine_ball      (d := d) (x₀ := x₀) (R := R) (ρ := (1 : )) hR      (fun x => |max (u x) 0| ^ p₀)  have hunit :      ᵐ z ∂(volume.restrict (Metric.ball (0 : E) (1 / 2 : ))),        |max (u (x₀ + R • z)) 0| ^ p₀           C_Moser d * A.1^ ((d : ) / 2) *            (p₀ / (p₀ - 1)) ^ (d : ) *            ((R ^ Module.finrank  E)⁻¹ *              ∫ x in Metric.ball x₀ R, |max (u x) 0| ^ p₀ ∂volume) := by    have hbase := linfty_subsolution_Moser (d := d) hd AR hp₀ hsubR hIntR    rw [hInt_eq] at hbase    simpa [uR, AR] using hbase  have hRhalf : R * (1 / 2 : ) = R / 2 := by    ring  have hmap_half :      Measure.map (fun x : E => R⁻¹ • (x - x₀))        (volume.restrict (Metric.ball x₀ (R / 2 : ))) =      ENNReal.ofReal (|R⁻¹ ^ Module.finrank  E|⁻¹) •        (volume.restrict (Metric.ball (0 : E) (1 / 2 : ))) := by    simpa [hRhalf] using      inverse_affine_map_restrict_ball_mul        (d := d) (x₀ := x₀) (R := R) (ρ := (1 / 2 : )) hR  have hscaled :      ᵐ z ∂ ENNReal.ofReal (|R⁻¹ ^ Module.finrank  E|⁻¹) •          (volume.restrict (Metric.ball (0 : E) (1 / 2 : ))),        |max (u (x₀ + R • z)) 0| ^ p₀           C_Moser d * A.1^ ((d : ) / 2) *            (p₀ / (p₀ - 1)) ^ (d : ) *            ((R ^ Module.finrank  E)⁻¹ *              ∫ x in Metric.ball x₀ R, |max (u x) 0| ^ p₀ ∂volume) := by    rw [ae_iff]    rw [Measure.smul_apply]    rw [ae_iff] at hunit    rw [hunit]    simp  have hmap_event :      ᵐ z ∂ Measure.map (fun x : E => R⁻¹ • (x - x₀))          (volume.restrict (Metric.ball x₀ (R / 2 : ))),        |max (u (x₀ + R • z)) 0| ^ p₀           C_Moser d * A.1^ ((d : ) / 2) *            (p₀ / (p₀ - 1)) ^ (d : ) *            ((R ^ Module.finrank  E)⁻¹ *              ∫ x in Metric.ball x₀ R, |max (u x) 0| ^ p₀ ∂volume) := by    rw [hmap_half]    exact hscaled  have htarget :      ᵐ x ∂(volume.restrict (Metric.ball x₀ (R / 2 : ))),        |max (u (x₀ + R • (R⁻¹ • (x - x₀)))) 0| ^ p₀           C_Moser d * A.1^ ((d : ) / 2) *            (p₀ / (p₀ - 1)) ^ (d : ) *            ((R ^ Module.finrank  E)⁻¹ *              ∫ x in Metric.ball x₀ R, |max (u x) 0| ^ p₀ ∂volume) := by    exact ae_of_ae_map      (((measurable_const_smul R⁻¹).comp (measurable_id.sub measurable_const)).aemeasurable)      hmap_event  filter_upwards [htarget] with x hx  have hcancel : x₀ + R • (R⁻¹ • (x - x₀)) = x := by    calc      x₀ + R • (R⁻¹ • (x - x₀)) = x₀ + (R * R⁻¹) • (x - x₀) := by        rw [smul_smul]      _ = x₀ + (1 : ) • (x - x₀) := by        simp [hR.ne']      _ = x := by        simp  simpa [hcancel] using hx
Project
DeGiorgi
License
Apache-2.0
Commit
4c1b3077d378
Source
DeGiorgi/ScaledBallEstimates.lean:187-287

Reuse this declaration

Bring the exact result into your workflow

The import identifies the source module. Your project still needs the pinned package dependency shown on this page.

What this badge means

This completion status comes from the project or community source. It has not yet been represented here as an independent rebuild and axiom audit.

Continue in this project

Related declarations

Project-declaredLean 4.29.0-rc6

Ae eq of tendsto e Lp Norm sub

BareFunction.ae_eq_of_tendsto_eLpNorm_sub

Plain-language statement

Lp limit uniqueness: if f_n → g₁ and f_n → g₂ in eLpNorm, then g₁ =ᵐ g₂.

partial differential equationsregularity theoryanalysis

Source project: DeGiorgi

Person-level attribution pending.

View proof record
Project-declaredLean 4.29.0-rc6

E Lp Norm pi le sum component

BareFunction.eLpNorm_pi_le_sum_component

Plain-language statement

Vector eLpNorm ≤ sum of component eLpNorms for Pi-valued functions. Uses eLpNorm_mono_real for the pointwise bound together with eLpNorm_sum_le for ℝ-valued functions, avoiding Pi instance synthesis.

partial differential equationsregularity theoryanalysis

Source project: DeGiorgi

Person-level attribution pending.

View proof record
Project-declaredLean 4.29.0-rc6

Mem Lp of tendsto e Lp Norm

BareFunction.memLp_of_tendsto_eLpNorm

Plain-language statement

If f n → g in eLpNorm and each f n ∈ Lp, then g ∈ Lp, provided g is AEStronglyMeasurable. Avoids the Lp type entirely. The key observation: eLpNorm (f n - g) → 0 means eLpNorm (f N - g) < 1 for some N. Then eLpNorm g ≤ eLpNorm (f N - g) + eLpNorm (f N) < ∞.

partial differential equationsregularity theoryanalysis

Source project: DeGiorgi

Person-level attribution pending.

View proof record