Skip to main content
fpvandoorn/carleson
Source indexedlemma · leanprover/lean4:v4.32.0

TileStructure.Forest.cntp_approxOnCube_eq

Carleson.ForestOperator.RemainingTiles · Carleson/ForestOperator/RemainingTiles.lean:774 to 811

Mathematical statement

Exact Lean statement

lemma cntp_approxOnCube_eq (hu₁ : u₁ ∈ t) :
    approxOnCube (𝓙 (t u₁))
      (‖(𝓘 u₁ : Set X).indicator (adjointCarlesonSum (t u₂ \ 𝔖₀ t u₁ u₂) f₂) ·‖) =
    approxOnCube (𝓙₆ t u₁) (‖adjointCarlesonSum (t u₂ \ 𝔖₀ t u₁ u₂) f₂ ·‖)

Complete declaration

Lean source

Canonical source
Full Lean sourceLean 4
lemma cntp_approxOnCube_eq (hu₁ : u₁  t) :    approxOnCube (𝓙 (t u₁))      (‖(𝓘 u₁ : Set X).indicator (adjointCarlesonSum (t u₂ \ 𝔖₀ t u₁ u₂) f₂) ·‖) =    approxOnCube (𝓙₆ t u₁) (‖adjointCarlesonSum (t u₂ \ 𝔖₀ t u₁ u₂) f₂ ·‖) := by  set U := (𝓘 u₁ : Set X)  ext x; simp only [approxOnCube]  classical  calc    _ = ∑ p with p  𝓙₆ t u₁, (p : Set X).indicator (fun x  ⨍ y in p,U.indicator (adjointCarlesonSum (t u₂ \ 𝔖₀ t u₁ u₂) f₂) y‖) x := by      apply (Finset.sum_subset (fun p mp  ?_) (fun p mp np  ?_)).symm      · rw [Finset.mem_filter_univ] at mp         exact mp.1      · rw [Finset.mem_filter_univ] at mp np        rw [indicator_apply_eq_zero]; intro mx        rw [show (0 : ) = ⨍ y in (p : Set X), 0 by simp]        refine setAverage_congr_fun coeGrid_measurable (.of_forall fun y my  ?_)        suffices Disjoint (p : Set X) U by          rw [indicator_of_notMem (this.notMem_of_mem_left my), norm_zero]        -- There has to be a cube `I ∈ 𝓙₆` (the one containing `c (𝓘 u₁)`)        have cm : c (𝓘 u₁)  (𝓘 u₁ : Set X) := Grid.c_mem_Grid        rw [ union_𝓙₆ hu₁, mem_iUnion₂] at cm; obtain I, mI, hI := cm        -- Obviously `I ≠ p`        have nIp : I  p := ne_of_mem_of_not_mem mI np        -- If `U` intersected `p`, `U ≤ p` since `p ∉ 𝓙₆`        by_contra! h        rw [𝓙₆, mem_inter_iff, not_and, mem_Iic] at np; specialize np mp        have Ulp := le_or_ge_or_disjoint.resolve_left np |>.resolve_right h        -- `I`, being in `𝓙₆`, should be a maximal cube in `𝓙₀ 𝔖`,        -- but `p` is above it and also in `𝓙₀ 𝔖`; contradiction        rw [𝓙₆, mem_inter_iff, mem_Iic] at mI        rw [𝓙, mem_setOf] at mp mI        exact nIp <| le_antisymm (mI.2.trans Ulp) (mI.1.2 mp.1 (mI.2.trans Ulp))    _ = _ := by      congr! 3 with p mp      refine setAverage_congr_fun coeGrid_measurable (.of_forall fun y my  ?_)      rw [Finset.mem_filter_univ, 𝓙₆, mem_inter_iff, mem_Iic] at mp      rw [indicator_of_mem (mp.2.1 my)]