@@ -87,84 +87,56 @@ lemma C6_1_2_ne_zero (a : ℕ) : (C6_1_2 a : ℝ≥0∞) ≠ 0 := by rw [C6_1_2]
8787open MeasureTheory Metric Bornology Set
8888
8989private lemma ineq_6_1_7 (x : X) {𝔄 : Set (𝔓 X)} (p : 𝔄) :
90- (2 : ℝ≥0 ) ^ a ^ 3 / volume.real (ball x (↑D ^ 𝔰 p.1 / (↑D * 4 ))) ≤
91- 2 ^ (5 * a + 101 * a ^ 3 ) / volume.real (ball x (8 * ↑D ^ 𝔰 p.1 )) := by
92- calc (2 : ℝ≥0 ) ^ a ^ 3 / volume.real (ball x ((D : ℝ) ^ 𝔰 p.1 / (↑D * 4 )))
93- _ = 2 ^ a ^ 3 / volume.real (ball x ((1 / ((D : ℝ) * 32 )) * (8 * D ^ 𝔰 p.1 ))) := by
94- congr
95- ring_nf
90+ (2 : ℝ≥0 ∞) ^ a ^ 3 / volume (ball x (D ^ 𝔰 p.1 / (D * 4 ))) ≤
91+ 2 ^ (5 * a + 101 * a ^ 3 ) / volume (ball x (8 * D ^ 𝔰 p.1 )) := by
92+ calc
93+ _ = 2 ^ a ^ 3 / volume (ball x (1 / (D * 32 ) * (8 * D ^ 𝔰 p.1 ))) := by congr! 3 ; ring
9694 _ = 2 ^ a ^ 3 * 2 ^ (5 * a + 100 * a ^ 3 ) / (2 ^ (5 * a + 100 * a ^ 3 ) *
97- volume.real (ball x ((1 / ((D : ℝ) * 32 )) * (8 * D ^ 𝔰 p.1 )))) := by
98- have hvol : volume.real (ball x (1 / ↑D / 32 * (8 * ↑D ^ 𝔰 p.1 ))) ≠ 0 :=
99- ne_of_gt (measureReal_ball_pos _
100- (mul_pos (div_pos (one_div_pos.mpr (defaultD_pos _)) (by positivity))
101- (mul_pos (by positivity) (zpow_pos (defaultD_pos _) _))))
102- rw [mul_div_assoc, ← div_div, div_eq_mul_inv]
103- congr
104- rw [eq_div_iff_mul_eq (by positivity), mul_comm, mul_assoc,
105- mul_inv_cancel₀ hvol, mul_one]
106- _ ≤ 2 ^ a ^ 3 * 2 ^ (5 * a + 100 * a ^ 3 ) / volume.real (ball x (8 * D ^ 𝔰 p.1 )) := by
95+ volume (ball x (1 / (D * 32 ) * (8 * D ^ 𝔰 p.1 )))) := by
96+ rw [mul_div_assoc, ← div_div, div_eq_mul_inv]
97+ conv_rhs => rw [← inv_inv (volume _), ← div_eq_mul_inv,
98+ ENNReal.div_div_cancel (by positivity) (by finiteness)]
99+ _ ≤ 2 ^ a ^ 3 * 2 ^ (5 * a + 100 * a ^ 3 ) / volume (ball x (8 * D ^ 𝔰 p.1 )) := by
107100 gcongr
108- · exact (measureReal_ball_pos x (mul_pos (by positivity) (zpow_pos (defaultD_pos _) _)))
109- · have heq : 2 ^ (100 * a ^ 2 ) * 2 ^ 5 * (1 / (↑D * 32 ) * (8 * (D : ℝ) ^ 𝔰 p.1 )) =
110- (8 * ↑D ^ 𝔰 p.1 ) := by
101+ · have heq : 2 ^ (100 * a ^ 2 ) * 2 ^ 5 * (1 / (D * 32 ) * (8 * (D : ℝ) ^ 𝔰 p.1 )) =
102+ 8 * D ^ 𝔰 p.1 := by
111103 have hD : (D : ℝ) = 2 ^ (100 * a^2 ) := by simp
112104 rw [← hD]
113105 ring_nf
114106 rw [mul_inv_cancel₀ (defaultD_pos _).ne', one_mul]
115- convert (DoublingMeasure.volume_real_ball_two_le_same_repeat x
116- (( 1 / ((D : ℝ) * 32 )) * (8 * D ^ 𝔰 p.1 )) (100 *a^2 + 5 )) using 1
107+ convert measure_ball_two_le_same_iterate (μ := volume) x
108+ (1 / (D * 32 ) * (8 * D ^ 𝔰 p.1 )) (100 *a^2 + 5 ) using 2
117109 · conv_lhs => rw [← heq, ← pow_add]
118- · congr 1
119- simp only [defaultA, Nat.cast_pow, Nat.cast_ofNat]
120- ring
121- _ = 2 ^ (5 * a + 101 * a ^ 3 ) / volume.real (ball x (8 * ↑D ^ 𝔰 p.1 )) := by ring_nf
122-
123- private lemma ineq_6_1_7' (x : X) {𝔄 : Set (𝔓 X)} (p : 𝔄) :
124- (2 : ℝ≥0 ) ^ a ^ 3 / (volume (ball x (↑D ^ 𝔰 p.1 / (↑D * 4 )))).toNNReal ≤
125- 2 ^ (5 * a + 101 * a ^ 3 ) / (volume (ball x (8 * ↑D ^ 𝔰 p.1 ))).toNNReal := by
126- suffices (2 : ℝ≥0 ) ^ a ^ 3 / volume.real (ball x (↑D ^ 𝔰 p.1 / (↑D * 4 ))) ≤
127- 2 ^ (5 * a + 101 * a ^ 3 ) / volume.real (ball x (8 * ↑D ^ 𝔰 p.1 )) by
128- simp only [← NNReal.coe_le_coe, ← NNReal.val_eq_coe]
129- exact this
130- exact ineq_6_1_7 x p
110+ · rw [Nat.cast_pow, Nat.cast_ofNat, ENNReal.coe_pow, coe_ofNat]; ring
111+ _ = _ := by ring_nf
131112
132113-- Composition of inequalities 6.1.6, 6.1.7, 6.1.8.
133114lemma norm_Ks_le' {x y : X} {𝔄 : Set (𝔓 X)} (p : 𝔄) (hxE : x ∈ E ↑p) (hy : Ks (𝔰 p.1 ) x y ≠ 0 ) :
134- ‖Ks (𝔰 p.1 ) x y‖₊ ≤
135- (2 : ℝ≥0 ) ^ (6 *a + 101 *a^3 ) / (volume (ball (𝔠 p.1 ) (8 *D ^ 𝔰 p.1 ))).toNNReal := by
115+ ‖Ks (𝔰 p.1 ) x y‖ₑ ≤ 2 ^ (6 * a + 101 * a ^ 3 ) / volume (ball (𝔠 p.1 ) (8 * D ^ 𝔰 p.1 )) := by
136116 have hDpow_pos : 0 < (D : ℝ) ^ 𝔰 p.1 := defaultD_pow_pos ..
137117 have h8Dpow_pos : 0 < 8 * (D : ℝ) ^ 𝔰 p.1 := mul_defaultD_pow_pos _ (by linarith) _
138- have hdist_cp : dist x (𝔠 p) ≤ 4 *D ^ 𝔰 p.1 := le_of_lt (mem_ball.mp (Grid_subset_ball hxE.1 ))
139- have h : ‖Ks (𝔰 p.1 ) x y‖₊ ≤ (2 : ℝ≥0 )^(a^3 ) / (volume (ball x (D ^ (𝔰 p.1 - 1 )/4 ))).toNNReal := by
140- apply le_trans (NNReal.coe_le_coe.mpr kernel_bound_old)
141- rw [NNReal.coe_div, NNReal.coe_pow, NNReal.coe_ofNat, ← NNReal.val_eq_coe]
142- exact div_le_div_of_nonneg_left (pow_nonneg zero_le_two _)
143- (measure_ball_pos_real x _ (div_pos (zpow_pos (defaultD_pos _) _) zero_lt_four))
144- (measureReal_mono (Metric.ball_subset_ball (dist_mem_Icc_of_Ks_ne_zero hy).1 )
145- measure_ball_ne_top)
146- apply le_trans h
118+ have hdist_cp : dist x (𝔠 p) ≤ 4 * D ^ 𝔰 p.1 := (mem_ball.mp (Grid_subset_ball hxE.1 )).le
119+ have h : ‖Ks (𝔰 p.1 ) x y‖ₑ ≤ 2 ^ a ^ 3 / volume (ball x (D ^ (𝔰 p.1 - 1 ) / 4 )) := by
120+ apply kernel_bound.trans
121+ rw [C_K, ← Nat.cast_pow, NNReal.rpow_natCast, ENNReal.coe_pow, coe_ofNat, vol]; gcongr
122+ exact (dist_mem_Icc_of_Ks_ne_zero hy).1
123+ apply h.trans
147124 rw [zpow_sub₀ (by simp), zpow_one, div_div]
148- apply le_trans (ineq_6_1_7' x p)
125+ apply (ineq_6_1_7 x p).trans
149126 have ha : 6 * a + 101 * a ^ 3 = (5 * a + 101 * a ^ 3 ) + a := by omega
150127 simp only [div_eq_mul_inv, ge_iff_le]
151128 rw [ha, pow_add _ (5 * a + 101 * a ^ 3 ) a, mul_assoc]
152129 apply mul_le_mul_of_nonneg_left _ (zero_le _)
153- suffices (volume (ball (𝔠 p.1 ) (8 * ↑D ^ 𝔰 p.1 ))).toNNReal ≤
154- 2 ^ a * (volume (ball x (8 * ↑D ^ 𝔰 p.1 ))).toNNReal by
155- rw [le_mul_inv_iff₀, ← le_inv_mul_iff₀ , mul_comm _ (_^a), inv_inv]
156- exact this
157- · exact inv_pos.mpr (measure_ball_pos_nnreal _ _ h8Dpow_pos)
158- · exact measure_ball_pos_nnreal _ _ h8Dpow_pos
159- have h2 : dist x (𝔠 p) + 8 * ↑D ^ 𝔰 p.1 ≤ 2 * (8 * ↑D ^ 𝔰 p.1 ) :=
160- calc dist x (𝔠 p) + 8 * ↑D ^ 𝔰 p.1
161- ≤ 4 * ↑D ^ 𝔰 p.1 + 8 * ↑D ^ 𝔰 p.1 := (add_le_add_iff_right _).mpr hdist_cp
162- _ ≤ 2 * (8 * ↑D ^ 𝔰 p.1 ) := by
163- ring_nf
164- exact mul_le_mul_of_nonneg (le_refl _) (by linarith) (le_of_lt hDpow_pos) (by linarith)
165- convert measureNNReal_ball_le_of_dist_le' (μ := volume) zero_lt_two h2
166- simp only [As, defaultA, Nat.cast_pow, Nat.cast_ofNat, Nat.one_lt_ofNat, logb_self_eq_one,
167- Nat.ceil_one, pow_one]
130+ suffices volume (ball (𝔠 p.1 ) (8 * D ^ 𝔰 p.1 )) ≤ 2 ^ a * volume (ball x (8 * D ^ 𝔰 p.1 )) by
131+ rw [← inv_inv (2 ^ a), ← ENNReal.mul_inv (.inl (by simp)) (.inl (by finiteness)),
132+ ENNReal.inv_le_inv, ← ENNReal.div_eq_inv_mul]
133+ exact ENNReal.div_le_of_le_mul' this
134+ have h2 : dist x (𝔠 p) + 8 * D ^ 𝔰 p.1 ≤ 2 * (8 * D ^ 𝔰 p.1 ) :=
135+ calc
136+ _ ≤ (4 : ℝ) * D ^ 𝔰 p.1 + 8 * D ^ 𝔰 p.1 := (add_le_add_iff_right _).mpr hdist_cp
137+ _ ≤ _ := by linarith
138+ convert measure_ball_le_of_dist_le' (μ := volume) zero_lt_two h2
139+ simp [As]
168140
169141-- lemma 6.1.2
170142lemma MaximalBoundAntichain {𝔄 : Set (𝔓 X)} (h𝔄 : IsAntichain (· ≤ ·) 𝔄)
@@ -198,75 +170,62 @@ lemma MaximalBoundAntichain {𝔄 : Set (𝔓 X)} (h𝔄 : IsAntichain (· ≤
198170 rw [div_eq_inv_mul, ← add_mul]
199171 exact mul_lt_mul_of_pos_right (by norm_num) (defaultD_pow_pos ..)
200172 -- 6.1.6, 6.1.7, 6.1.8
201- have hKs : ∀ (y : X) (hy : Ks (𝔰 p.1 ) x y ≠ 0 ), ‖Ks (𝔰 p. 1 ) x y‖₊ ≤
202- ( 2 : ℝ≥ 0 ) ^ (6 * a + 101 *a^ 3 ) / ( volume (ball (𝔠 p.1 ) (8 * D ^ 𝔰 p.1 ))).toNNReal :=
203- fun y hy ↦ norm_Ks_le' _ hxE hy
204- calc (‖carlesonSum 𝔄 f x‖₊ : ℝ≥ 0 ∞)
205- = ↑ ‖carlesonOn p f x‖₊ := by
206- have hp : ↑p ∈ ({p | p ∈ 𝔄} : Finset (𝔓 X)) := by
207- simp only [Finset.mem_filter, Finset.mem_univ, Subtype.coe_prop, and_self]
208- rw [carlesonSum, Finset.sum_eq_single_of_mem p.1 hp hne_p]
209- _ ≤ ∫⁻ (y : X) , ‖cexp (I * (↑(( Q x) y) - ↑(( Q x) x) )) * Ks (𝔰 p.1 ) x y * f y‖ₑ := by
173+ have hKs (y : X) (hy : Ks (𝔰 p.1 ) x y ≠ 0 ) :
174+ ‖Ks (𝔰 p. 1 ) x y‖ₑ ≤ 2 ^ (6 * a + 101 * a ^ 3 ) / volume (ball (𝔠 p.1 ) (8 * D ^ 𝔰 p.1 )) :=
175+ norm_Ks_le' _ hxE hy
176+ calc
177+ _ = ‖carlesonOn p f x‖ₑ := by
178+ have hp : ↑p ∈ ({p | p ∈ 𝔄} : Finset (𝔓 X)) := by
179+ simp only [Finset.mem_filter, Finset.mem_univ, Subtype.coe_prop, and_self]
180+ rw [carlesonSum, Finset.sum_eq_single_of_mem p.1 hp hne_p]
181+ _ ≤ ∫⁻ y , ‖exp (I * (Q x y - Q x x )) * Ks (𝔰 p.1 ) x y * f y‖ₑ := by
210182 rw [carlesonOn, indicator, if_pos hxE]
211183 refine le_trans (enorm_integral_le_lintegral_enorm _) (lintegral_mono fun z w h ↦ ?_)
212184 simp only [nnnorm_mul, coe_mul, some_eq_coe', zpow_neg, Ks, mul_assoc,
213185 enorm_eq_nnnorm] at h ⊢
214186 use w
215- _ ≤ ∫⁻ (y : X), ‖Ks (𝔰 p.1 ) x y * f y‖ₑ := by
216- simp only [enorm_mul]
217- refine lintegral_mono_nnreal fun y ↦ ?_
218- rw [mul_assoc]
219- conv_rhs => rw [← one_mul (‖Ks (𝔰 p.1 ) x y‖₊ * ‖f y‖₊)]
220- apply mul_le_mul_of_nonneg_right _ (zero_le _)
221- · apply le_of_eq
222- rw [mul_comm, ← Complex.ofReal_sub, NNReal.eq_iff,
223- coe_nnnorm, NNReal.coe_one, Complex.norm_exp_ofReal_mul_I]
224- _ = ∫⁻ (y : X) in ball (𝔠 ↑p) (8 * ↑D ^ 𝔰 p.1 ), ‖Ks (𝔰 p.1 ) x y * f y‖ₑ := by
225- rw [MeasureTheory.setLIntegral_eq_of_support_subset]
187+ _ ≤ ∫⁻ y, ‖Ks (𝔰 p.1 ) x y * f y‖ₑ := by
188+ simp only [enorm_mul]; refine lintegral_mono_fn fun y ↦ ?_
189+ rw [← Complex.ofReal_sub, enorm_exp_I_mul_ofReal, one_mul]
190+ _ = ∫⁻ y in ball (𝔠 p) (8 * D ^ 𝔰 p.1 ), ‖Ks (𝔰 p.1 ) x y * f y‖ₑ := by
191+ rw [setLIntegral_eq_of_support_subset]
226192 intro y hy
227193 simp only [enorm_mul, Function.support_mul, mem_inter_iff, Function.mem_support, ne_eq,
228194 enorm_eq_zero] at hy
229195 rw [mem_ball, dist_comm]
230196 exact hdist_cpy y hy.1
231- _ ≤ ∫⁻ (y : X) in ball (𝔠 ↑p) (8 * ↑D ^ 𝔰 p.1 ),
232- (((2 : ℝ≥0 ) ^ (6 *a + 101 *a^3 ) /
233- (volume (ball (𝔠 p.1 ) (8 *D ^ 𝔰 p.1 ))).toNNReal) * ‖f y‖₊ : ℝ≥0 ) := by
234- refine lintegral_mono_nnreal fun y ↦ ?_
235- rw [nnnorm_mul]
236- gcongr
197+ _ ≤ ∫⁻ y in ball (𝔠 p) (8 * D ^ 𝔰 p.1 ),
198+ 2 ^ (6 * a + 101 * a ^ 3 ) / volume (ball (𝔠 p.1 ) (8 * D ^ 𝔰 p.1 )) * ‖f y‖ₑ := by
199+ refine lintegral_mono_fn fun y ↦ ?_
200+ rw [enorm_mul]; gcongr
237201 by_cases hy : Ks (𝔰 p.1 ) x y = 0
238202 · simp [hy]
239203 · exact hKs y hy
240- _ = (2 : ℝ≥0 )^(5 *a + 101 *a^3 + a) *
241- ⨍⁻ y, ‖f y‖ₑ ∂volume.restrict (ball (𝔠 p.1 ) (8 *D ^ 𝔰 p.1 )) := by
242- rw [laverage_eq, Measure.restrict_apply MeasurableSet.univ, univ_inter]
243- simp_rw [div_eq_mul_inv, coe_mul, enorm_eq_nnnorm]
244- rw [lintegral_const_mul _ hfm.nnnorm.coe_nnreal_ennreal, ENNReal.coe_pow, coe_inv
245- (ne_of_gt (measure_ball_pos_nnreal _ _ h8Dpow_pos)),
246- ENNReal.coe_toNNReal measure_ball_ne_top]
247- ring
248- _ ≤ (C6_1_2 a) * (ball (𝔠 p.1 ) (8 *D ^ 𝔰 p.1 )).indicator (x := x)
249- (fun _ ↦ ⨍⁻ y, ‖f y‖ₑ ∂volume.restrict (ball (𝔠 p.1 ) (8 *D ^ 𝔰 p.1 ))) := by
250- simp only [coe_ofNat, indicator, mem_ball, mul_ite, mul_zero]
204+ _ = 2 ^ (5 * a + 101 * a ^ 3 + a) * ⨍⁻ y in ball (𝔠 p.1 ) (8 * D ^ 𝔰 p.1 ), ‖f y‖ₑ ∂volume := by
205+ rw [lintegral_const_mul _ hfm.enorm, ENNReal.mul_comm_div, setLAverage_eq]
206+ congr 2 ; ring
207+ _ ≤ C6_1_2 a * (ball (𝔠 p.1 ) (8 * D ^ 𝔰 p.1 )).indicator (x := x)
208+ (fun _ ↦ ⨍⁻ y in ball (𝔠 p.1 ) (8 * D ^ 𝔰 p.1 ), ‖f y‖ₑ ∂volume) := by
209+ simp only [indicator, mem_ball, mul_ite, mul_zero]
251210 rw [if_pos]
252211 · gcongr
253- rw [C6_1_2, add_comm (5 * a), add_assoc]; norm_cast
212+ rw [C6_1_2, add_comm (5 * a), add_assoc]; norm_cast
254213 apply pow_le_pow_right₀ one_le_two
255214 calc
256- _ ≤ 101 * a ^ 3 + 6 * a ^ 3 := by
215+ _ ≤ 101 * a ^ 3 + 6 * a ^ 3 := by
257216 rw [add_le_add_iff_left]
258217 ring_nf
259218 gcongr
260219 exact le_self_pow₀ (by linarith [four_le_a X]) (by omega)
261220 _ = 107 * a ^ 3 := by ring
262- · exact lt_of_le_of_lt hdist_cp
221+ · exact hdist_cp.trans_lt
263222 (mul_lt_mul_of_nonneg_of_pos (by linarith) (le_refl _) (by linarith) hDpow_pos)
264- _ ≤ ( C6_1_2 a) * MB volume 𝔄 𝔠 (fun 𝔭 ↦ 8 * D ^ 𝔰 𝔭 ) f x := by
223+ _ ≤ C6_1_2 a * MB volume 𝔄 𝔠 (8 * D ^ 𝔰 · ) f x := by
265224 rw [mul_le_mul_left (C6_1_2_ne_zero a) coe_ne_top, MB, maximalFunction,
266225 inv_one, ENNReal.rpow_one, le_iSup_iff]
267226 simp only [iSup_le_iff, ENNReal.rpow_one]
268227 exact (fun _ hc ↦ hc p.1 p.2 )
269- · simp only [ne_eq, Subtype.exists, exists_prop, not_exists, not_and, Decidable. not_not] at hx
228+ · simp only [ne_eq, Subtype.exists, exists_prop, not_exists, not_and, not_not] at hx
270229 have h0 : carlesonSum 𝔄 f x = 0 := by
271230 refine Finset.sum_eq_zero (fun p hp ↦ ?_)
272231 rw [Finset.mem_filter_univ] at hp
0 commit comments