fpvandoorn/carleson
Source indexedlemma Β· leanprover/lean4:v4.32.0
dach_bound
Carleson.Antichain.AntichainOperator Β· Carleson/Antichain/AntichainOperator.lean:174 to 229
Source documentation
Equations (6.1.34) to (6.1.37) in Lemma 6.1.4.
Exact Lean statement
lemma dach_bound (hπ : IsAntichain (Β· β€ Β·) π) {p : π X} (mp : p β π) (hg : Measurable g)
(hgG : β x, βg xβ β€ G.indicator 1 x) {xβ : X} (hx : xβ β ball (π p) (14 * D ^ π° p)) :
dach π p g β€ C6_1_6 a * densβ π ^ (pβ a : β)β»ΒΉ * M14 π (qβ a) g xβComplete declaration
Lean source
Full Lean sourceLean 4
lemma dach_bound (hπ : IsAntichain (Β· β€ Β·) π) {p : π X} (mp : p β π) (hg : Measurable g) (hgG : β x, βg xβ β€ G.indicator 1 x) {xβ : X} (hx : xβ β ball (π p) (14 * D ^ π° p)) : dach π p g β€ C6_1_6 a * densβ π ^ (pβ a : β)β»ΒΉ * M14 π (qβ a) g xβ := by classical unfold dach set B := ball (π p) (14 * D ^ π° p) set A : Set (π X) := {p' | (p' β π β§ π° p' β€ π° p) β§ (π p' : Set X) β B} have sA : A β π := fun _ β¦ by simp only [A, mem_setOf_eq, and_imp]; tauto calc _ = (volume B)β»ΒΉ * β«β» x, B.indicator (βg Β·ββ) x * β p' with p' β A, (1 + edist_(p') (π¬ p') (π¬ p)) ^ (-(2 * a ^ 2 + a ^ 3 : β)β»ΒΉ) * (E p').indicator 1 x * G.indicator 1 x := by congr! with x; change β p' with p' β A, _ = _ rw [Finset.mul_sum] conv_rhs => enter [2, p'] rw [β mul_assoc, β mul_assoc, mul_comm _ (_ ^ _), mul_assoc, mul_assoc] congr! 2 with p' mp' rw [β mul_assoc, β inter_indicator_mul]; simp_rw [Pi.one_apply, mul_one] simp_rw [A, mem_setOf_eq, Finset.mem_filter_univ] at mp' rw [inter_eq_right.mpr (E_subset_π.trans mp'.2)] by_cases hx : x β G Β· rw [indicator_of_mem hx, Pi.one_apply, mul_one] Β· specialize hgG x; rw [indicator_of_notMem hx, norm_le_zero_iff] at hgG have : (E p').indicator (βg Β·ββ) x = 0 := by rw [indicator_apply_eq_zero, hgG, enorm_zero]; exact fun _ β¦ rfl rw [this, zero_mul] _ β€ (volume B)β»ΒΉ * eLpNorm (B.indicator (βg Β·ββ)) (ENNReal.ofReal (qβ a)) * eLpNorm (fun x β¦ β p' with p' β A, (1 + edist_(p') (π¬ p') (π¬ p)) ^ (-(2 * a ^ 2 + a ^ 3 : β)β»ΒΉ) * (E p').indicator 1 x * G.indicator 1 x) (ENNReal.ofReal (pβ a)) := by rw [mul_assoc]; gcongr; apply lintegral_mul_le_eLpNorm_mul_eLqNorm Β· exact Real.HolderConjugate.ennrealOfReal (holderConjugate_pβ (four_le_a X)).symm Β· fun_prop (discharger := measurability) Β· refine Finset.aemeasurable_fun_sum _ fun p' mp' β¦ ?_ simp_rw [mul_assoc, β inter_indicator_mul] exact (AEMeasurable.indicator (by simp) (measurableSet_E.inter measurableSet_G)).const_mul _ _ β€ (volume B)β»ΒΉ * (volume B ^ (qβ a)β»ΒΉ * M14 π (qβ a) g xβ) * (C6_1_6 a * densβ A ^ (pβ a)β»ΒΉ * volume (β t β A, (π t : Set X)) ^ (pβ a)β»ΒΉ) := by gcongr Β· exact eLpNorm_le_M14 mp hx (qβ_pos (four_le_a X)) Β· convert! tile_count (hπ.subset sA) β¨π¬ p, range_π¬ (mem_range_self p)β© _ β€ (volume B)β»ΒΉ * (volume B ^ (qβ a)β»ΒΉ * M14 π (qβ a) g xβ) * (C6_1_6 a * densβ π ^ (pβ a)β»ΒΉ * volume B ^ (pβ a)β»ΒΉ) := by have : 0 β€ (pβ a)β»ΒΉ := by rw [Right.inv_nonneg]; exact (pβ_pos (four_le_a X)).le gcongr Β· exact densβ_mono sA Β· refine iUnionβ_subset fun p' mp' β¦ ?_ simp_rw [A, mem_setOf_eq] at mp'; exact mp'.2 _ = _ := by rw [mul_comm, mul_assoc]; congr 1 have vpos : 0 < volume B := by apply measure_ball_pos; unfold defaultD; positivity rw [β mul_assoc, β ENNReal.rpow_neg_one, β ENNReal.rpow_add _ _ vpos.ne' (by finiteness), β mul_assoc, β ENNReal.rpow_add _ _ vpos.ne' (by finiteness), β add_rotate, (holderConjugate_pβ (four_le_a X)).symm.inv_add_inv_eq_one, add_neg_cancel, ENNReal.rpow_zero, one_mul]