Skip to content

Commit 5441a78

Browse files
chore: bump to v4.24.0 (#502)
1 parent a0242db commit 5441a78

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+139
-246
lines changed

Carleson/Antichain/AntichainTileCount.lean

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ lemma tile_reach {ϑ : Θ X} {N : ℕ} {p p' : 𝔓 X} (hp : dist_(p) (𝒬 p)
8383
← sub_eq_add_neg, mul_comm _ ((2 : ℝ) ^ _)] at hle
8484
calc dist_{𝔠 p, 2^((2 : ℤ) - 5*a^2 - 2*a) * D^𝔰 p'} (𝒬 p') o'
8585
_ ≤ 2^(-(5 : ℤ)*a - 2) * dist_{𝔠 p, 4 * D^𝔰 p'} (𝒬 p') o' := hle
86-
_ < 2^(-(5 : ℤ)*a - 2) * 2^(5*a + N + 2) := (mul_lt_mul_left (by positivity)).mpr hlt2
86+
_ < 2^(-(5 : ℤ)*a - 2) * 2^(5*a + N + 2) := (mul_lt_mul_iff_right₀ (by positivity)).mpr hlt2
8787
_ = 2^N := by
8888
rw [← zpow_natCast, ← zpow_add₀ two_ne_zero]
8989
simp
@@ -111,7 +111,7 @@ lemma tile_reach {ϑ : Θ X} {N : ℕ} {p p' : 𝔓 X} (hp : dist_(p) (𝒬 p)
111111
_ = (4 * 2 ^ (2 - 5 * (a : ℤ) ^ 2 - 2 * ↑a)) * (D * D ^ 𝔰 p) := by ring
112112
_ ≤ 4 * 2 ^ (2 - 5 * (a : ℤ) ^ 2 - 2 * ↑a) * D ^ 𝔰 p' := by
113113
have h1D : 1 ≤ (D : ℝ) := one_le_realD _
114-
nth_rewrite 1 [mul_le_mul_left (by positivity), ← zpow_one (D : ℝ),
114+
nth_rewrite 1 [mul_le_mul_iff_right₀ (by positivity), ← zpow_one (D : ℝ),
115115
← zpow_add₀ (ne_of_gt (realD_pos _))]
116116
gcongr
117117
rw [add_comm]

Carleson/Antichain/Basic.lean

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,9 @@ scoped notation "nnqt" => 2*nnq/(nnq + 1)
3232
end ShortVariables
3333

3434
lemma inv_nnqt_eq : (nnqt : ℝ)⁻¹ = 2⁻¹ + 2⁻¹ * q⁻¹ := by
35-
have : 2 * q ≠ 0 := mul_ne_zero (by norm_num) (by linarith only [(q_mem_Ioc X).1])
36-
field_simp [show (nnq : ℝ) = q by rfl]
35+
have : q ≠ 0 := by linarith only [(q_mem_Ioc X).1]
36+
simp [show (nnq : ℝ) = q by rfl]
37+
field_simp
3738

3839
lemma inv_nnqt_mem_Ico : (nnqt : ℝ)⁻¹ ∈ Ico (3 / 4) 1 := by
3940
rw [inv_nnqt_eq]
@@ -374,14 +375,13 @@ lemma const_check : C6_1_2 a * C2_0_6 (defaultA a) (p X).toNNReal 2 ≤ C6_1_3 a
374375
have hqiq : q = iq⁻¹ := by rw [iq_eq, inv_inv]
375376
have : 0 < 1 - iq := by linarith [inv_q_mem_Ico X |>.2]
376377
have hpdiv' : 2 / (p X) / (2 / (p X).toNNReal - 1).toReal = (2 - iq) * (1 - iq)⁻¹ := by
377-
simp only [div_eq_mul_inv, hp_coe', inv_p_eq', ← iq_eq]
378-
field_simp [show 2 - iq - 1 = 1 - iq by ring]
378+
simp [div_eq_mul_inv, hp_coe', inv_p_eq', ← iq_eq, field, show 2 - iq - 1 = 1 - iq by ring]
379379
have : 2⁻¹ ≤ iq := inv_q_mem_Ico X |>.1
380380
have hiq1 : 2 ≤ (1 - iq)⁻¹ := by
381381
apply (le_inv_comm₀ (by positivity) (by positivity)).mp
382382
linarith only [inv_q_mem_Ico X |>.1]
383383
have : 1 < 2 - iq := by linarith only [inv_q_mem_Ico X |>.2]
384-
have : 0 < (q - 1)⁻¹ := inv_pos_of_pos <| by linarith only [q_mem_Ioc X |>.1]
384+
have : 0 < q - 1 := by linarith only [q_mem_Ioc X |>.1]
385385
have haux : 1 ≤ (2 - iq) * (1 - iq)⁻¹ * 2 ^ (2 * a) := by
386386
conv_lhs => rw [← one_mul 1, ← mul_one (1 * 1)]
387387
gcongr
@@ -405,7 +405,7 @@ lemma const_check : C6_1_2 a * C2_0_6 (defaultA a) (p X).toNNReal 2 ≤ C6_1_3 a
405405
· rw [mul_comm (2 ^ _)]
406406
gcongr ?_ * 2 ^ (2 * a)
407407
calc
408-
_ = (2 * q - 1) * (q - 1)⁻¹ := by field_simp [hqiq]
408+
_ = (2 * q - 1) * (q - 1)⁻¹ := by simp [hqiq]; field_simp
409409
_ ≤ _ := by gcongr; linarith only [q_mem_Ioc X |>.2]
410410
calc
411411
_ ≤ 2 ^ ((𝕔 + 2) * a ^ 3) * (2 ^ (2 * a + 4) * (q - 1)⁻¹) := by simp [C6_1_2, hc_le]

Carleson/Calculations.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ lemma calculation_logD_64 [PseudoMetricSpace X] [ProofData a q K σ₁ σ₂ F G
136136
lemma calculation_5 {dist_1 dist_2 : ℝ}
137137
(h : dist_1 ≤ (2 ^ (a : ℝ)) ^ (6 : ℝ) * dist_2) :
138138
2 ^ ((-𝕔 : ℝ) * a) * dist_1 ≤ 2 ^ ((-(𝕔 - 6) : ℝ) * a) * dist_2 := by
139-
apply (mul_le_mul_left (show 0 < (2 : ℝ) ^ (𝕔 * (a : ℝ)) by positivity)).mp
139+
apply (mul_le_mul_iff_right₀ (show 0 < (2 : ℝ) ^ (𝕔 * (a : ℝ)) by positivity)).mp
140140
rw [← mul_assoc, neg_mul,
141141
Real.rpow_neg (by positivity),
142142
mul_inv_cancel₀ (a := (2 : ℝ) ^ (𝕔 * (a : ℝ))) (by positivity),

Carleson/Classical/Approximation.lean

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -63,10 +63,12 @@ lemma fourierCoeffOn_bound {f : ℝ → ℂ} (f_continuous : Continuous f) :
6363
∃ C, ∀ n, ‖fourierCoeffOn Real.two_pi_pos f n‖ ≤ C := by
6464
obtain ⟨C, f_bounded⟩ := continuous_bounded f_continuous.continuousOn
6565
refine ⟨C, fun n ↦ ?_⟩
66-
simp only [fourierCoeffOn_eq_integral, sub_zero, one_div, mul_inv_rev]
66+
simp only [fourierCoeffOn_eq_integral, sub_zero, one_div, mul_inv_rev, Complex.real_smul,
67+
Complex.norm_real, Complex.norm_mul, norm_eq_abs, abs_mul, abs_inv, Nat.abs_ofNat]
6768
field_simp
68-
rw [abs_of_nonneg pi_pos.le, mul_comm π, div_le_iff₀ Real.two_pi_pos]
69-
calc ‖∫ (x : ℝ) in (0 : ℝ)..(2 * π), (starRingEnd ℂ) (Complex.exp (2 * π * Complex.I * n * x / (2 * π))) * f x‖
69+
rw [abs_of_nonneg pi_pos.le, mul_comm π]
70+
calc
71+
_ = ‖∫ (x : ℝ) in (0 : ℝ)..(2 * π), (starRingEnd ℂ) (Complex.exp (2 * π * Complex.I * n * x / (2 * π))) * f x‖ := by simp
7072
_ = ‖∫ (x : ℝ) in (0 : ℝ)..(2 * π), (starRingEnd ℂ) (Complex.exp (Complex.I * n * x)) * f x‖ := by
7173
congr with x
7274
congr
@@ -88,7 +90,7 @@ lemma fourierCoeffOn_bound {f : ℝ → ℂ} (f_continuous : Continuous f) :
8890
/-Could specify `aestronglyMeasurable` and `intervalIntegrable` intead of `f_continuous`. -/
8991
exact IntervalIntegrable.intervalIntegrable_norm_iff f_continuous.aestronglyMeasurable |>.mpr
9092
(f_continuous.intervalIntegrable ..)
91-
_ = C * (2 * π) := by simp; ring
93+
_ = _ := by simp
9294

9395
/-TODO: Assumptions might be weakened. -/
9496
lemma periodic_deriv {𝕜 : Type} [NontriviallyNormedField 𝕜] {F : Type} [NormedAddCommGroup F] [NormedSpace 𝕜 F]
@@ -150,9 +152,10 @@ lemma int_sum_nat {β : Type*} [AddCommGroup β] [TopologicalSpace β] [Continuo
150152
rw [←tendsto_add_atTop_iff_nat 1] at this
151153
convert this using 1
152154
ext N
153-
induction' N with N ih
154-
· simp
155-
· have : Icc (- Int.ofNat (N.succ)) (N.succ) = insert (↑(N.succ)) (insert (-Int.ofNat (N.succ)) (Icc (-Int.ofNat N) N)) := by
155+
induction N with
156+
| zero => simp
157+
| succ N ih =>
158+
have : Icc (- Int.ofNat (N.succ)) (N.succ) = insert (↑(N.succ)) (insert (-Int.ofNat (N.succ)) (Icc (-Int.ofNat N) N)) := by
156159
rw [←Ico_insert_right, ←Ioo_insert_left]
157160
· congr 2 with n
158161
simp only [Int.ofNat_eq_coe, mem_Ioo, mem_Icc]
@@ -194,7 +197,7 @@ lemma fourierConv_ofTwiceDifferentiable {f : ℝ → ℂ} (periodicf : f.Periodi
194197
rw [summable_congr @fourierCoeff_correspondence, ←summable_norm_iff]
195198
apply summable_of_le_on_nonzero _ _ summable_maj <;> intro i
196199
· simp
197-
· intro ine0; field_simp [maj_def, hC i ine0]
200+
· intro ine0; simpa only [maj_def, one_div_mul_eq_div] using hC i ine0
198201
have := int_sum_nat function_sum
199202
rw [ContinuousMap.tendsto_iff_tendstoUniformly, Metric.tendstoUniformly_iff] at this
200203
have := this ε εpos

Carleson/Classical/Basic.lean

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -197,7 +197,7 @@ lemma lower_secant_bound_aux {η : ℝ} (ηpos : 0 < η) {x : ℝ} (le_abs_x :
197197
_ ≤ (2 / π) * x := by gcongr
198198
_ = 1 - ((1 - (2 / π) * (x - π / 2)) * Real.cos (π / 2) + ((2 / π) * (x - π / 2)) * Real.cos (π)) := by
199199
field_simp -- a bit slow
200-
ring
200+
simp
201201
_ ≤ 1 - (Real.cos ((1 - (2 / π) * (x - π / 2)) * (π / 2) + (((2 / π) * (x - π / 2)) * (π)))) := by
202202
gcongr
203203
apply (strictConvexOn_cos_Icc.convexOn).2 (by simp [pi_nonneg])
@@ -253,7 +253,7 @@ lemma lower_secant_bound' {η : ℝ} {x : ℝ} (le_abs_x : η ≤ |x|) (abs_x_le
253253
exact mul_le_of_le_div₀ (by norm_num) (div_nonneg (by norm_num) pi_nonneg) (by simpa)
254254
· exact mul_nonneg (div_nonneg (by norm_num) pi_nonneg) x_nonneg
255255
· simp
256-
_ = Real.sin x := by field_simp
256+
_ = Real.sin x := by simp; field_simp
257257
_ ≤ Real.sqrt ((Real.sin x) ^ 2) := by
258258
rw [Real.sqrt_sq_eq_abs]
259259
apply le_abs_self
@@ -282,8 +282,7 @@ lemma lower_secant_bound {η : ℝ} {x : ℝ} (xIcc : x ∈ Set.Icc (-2 * π +
282282
rw [mul_assoc]
283283
gcongr
284284
field_simp
285-
rw [div_le_div_iff₀ (by norm_num) pi_pos]
286-
linarith [pi_le_four]
285+
norm_num [pi_le_four]
287286
_ ≤ ‖1 - Complex.exp (Complex.I * x)‖ := by
288287
apply lower_secant_bound' xAbs
289288
rw [abs_le, neg_sub', sub_neg_eq_add, neg_mul_eq_neg_mul]

Carleson/Classical/DirichletKernel.lean

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -209,6 +209,7 @@ lemma partialFourierSum_eq_conv_dirichletKernel {f : ℝ → ℂ} {x : ℝ}
209209
congr with n
210210
rw [fourier_coe_apply, fourier_coe_apply, fourier_coe_apply, ←exp_add]
211211
congr
212+
simp
212213
field_simp
213214
ring
214215

Carleson/Classical/HilbertKernel.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import Carleson.Classical.Basic
2-
import Mathlib.Data.Real.Pi.Bounds
2+
import Mathlib.Analysis.Real.Pi.Bounds
33

44
/- This file contains definitions and lemmas regarding the Hilbert kernel. -/
55

Carleson/Classical/HilbertStrongType.lean

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import Carleson.Defs
55
import Carleson.ToMathlib.MeasureTheory.Integral.MeanInequalities
66
import Carleson.TwoSidedCarleson.Basic
77
import Mathlib.Algebra.BigOperators.Group.Finset.Indicator
8-
import Mathlib.Data.Real.Pi.Bounds
8+
import Mathlib.Analysis.Real.Pi.Bounds
99

1010
/- This file contains the proof that the Hilbert kernel is a bounded operator. -/
1111

@@ -223,7 +223,7 @@ lemma spectral_projection_bound {f : ℝ → ℂ} {n : ℕ} (hmf : AEMeasurable
223223
← eLpNorm_liftIoc _ _ partialFourierSum_uniformContinuous.continuous.aestronglyMeasurable,
224224
volume_eq_smul_haarAddCircle,
225225
eLpNorm_smul_measure_of_ne_top (by trivial), eLpNorm_smul_measure_of_ne_top (by trivial),
226-
smul_eq_mul, smul_eq_mul, ENNReal.mul_le_mul_left (by simp [Real.pi_pos]) (by simp)]
226+
smul_eq_mul, smul_eq_mul, ENNReal.mul_le_mul_left (by simp [Real.pi_pos]) (by finiteness)]
227227
have ae_eq_right : F =ᶠ[ae haarAddCircle] liftIoc (2 * π) 0 f := MemLp.coeFn_toLp _
228228
have ae_eq_left : partialFourierSumLp 2 n F =ᶠ[ae haarAddCircle]
229229
liftIoc (2 * π) 0 (partialFourierSum n f) :=
@@ -315,7 +315,7 @@ lemma integrable_bump_convolution {f g : ℝ → ℝ}
315315
have: eLpNorm g 1 (volume.restrict (Ioc 0 (2 * π))) ≠ ⊤ := by
316316
grw [← lt_top_iff_ne_top,
317317
eLpNorm_le_eLpNorm_mul_rpow_measure_univ (OrderTop.le_top 1) (hg.restrict _).1]
318-
exact ENNReal.mul_lt_top (hg.restrict _).eLpNorm_lt_top (by norm_num)
318+
exact ENNReal.mul_lt_top (hg.restrict _).eLpNorm_lt_top (by norm_num; simp [← ENNReal.ofReal_ofNat, ← ENNReal.ofReal_mul])
319319
rw [← ENNReal.toReal_le_toReal this (by norm_num)]
320320

321321
calc

Carleson/Discrete/ExceptionalSet.lean

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -396,7 +396,7 @@ lemma indicator_sum_eq_natCast {s : Finset (𝔓 X)} :
396396
open scoped Classical in
397397
lemma layervol_eq_zero_of_lt {t : ℝ} (ht : (𝔐 (X := X) k n).toFinset.card < t) :
398398
layervol (X := X) k n t = 0 := by
399-
rw [layervol, measure_zero_iff_ae_notMem]
399+
rw [layervol, measure_eq_zero_iff_ae_notMem]
400400
refine ae_of_all volume fun x ↦ ?_; rw [mem_setOf, not_le]
401401
calc
402402
_ ≤ ((𝔐 (X := X) k n).toFinset.card : ℝ) := by
@@ -658,7 +658,7 @@ lemma tree_count :
658658
simp_rw [← mul_sum, stackSize_real, mem_coe, filter_univ_mem, interchange, sum_const]
659659
let _ : PosMulReflectLE ℝ := inferInstance -- perf: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/performance.20example.20with.20type-class.20inference
660660
-- Replace the cardinality of `𝔘` with the upper bound proven in `card_𝔘m_le`, and simplify.
661-
apply le_of_le_of_eq <| (mul_le_mul_left (zpow_pos two_pos _)).mpr <| sum_le_sum <|
661+
apply le_of_le_of_eq <| (mul_le_mul_iff_right₀ (zpow_pos two_pos _)).mpr <| sum_le_sum <|
662662
fun _ _ ↦ smul_le_smul_of_nonneg_right card_𝔘m_le <| Set.indicator_apply_nonneg (by simp)
663663
simp_rw [← smul_sum, nsmul_eq_mul, ← mul_assoc, filter_mem_univ_eq_toFinset (𝔐 k n), defaultA]
664664
rw [sub_eq_add_neg, zpow_add₀ two_ne_zero, ← pow_mul, mul_comm 9, mul_comm (2 ^ _)]

Carleson/Discrete/ForestComplement.lean

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import Carleson.Antichain.AntichainOperator
22
import Carleson.Discrete.Defs
33
import Carleson.Discrete.SumEstimates
4+
import Mathlib.Analysis.Complex.ExponentialBounds
45
import Mathlib.Combinatorics.Enumerative.DoubleCounting
5-
import Mathlib.Data.Complex.ExponentialBounds
66

77
open MeasureTheory Measure NNReal Metric Complex Set
88
open scoped ENNReal
@@ -166,7 +166,7 @@ lemma exists_j_of_mem_𝔓pos_ℭ (h : p ∈ 𝔓pos (X := X)) (mp : p ∈ ℭ k
166166
rcases B.eq_zero_or_pos with Bz | Bpos
167167
· simp_rw [B, filter_mem_univ_eq_toFinset, Finset.card_eq_zero, toFinset_eq_empty] at Bz
168168
exact Or.inl ⟨mp, Bz⟩
169-
· right; use Nat.log 2 B; rw [Nat.lt_pow_iff_log_lt one_lt_two Bpos.ne'] at Blt
169+
· right; use Nat.log 2 B; rw [Nat.log_lt_iff_lt_pow one_lt_two Bpos.ne'] at Blt
170170
refine ⟨by omega, (?_ : _ ∧ _ ≤ B), (?_ : ¬(_ ∧ _ ≤ B))⟩
171171
· exact ⟨mp, Nat.pow_log_le_self 2 Bpos.ne'⟩
172172
· rw [not_and, not_le]; exact fun _ ↦ Nat.lt_pow_succ_log_self one_lt_two _
@@ -600,7 +600,7 @@ lemma carlesonSum_𝔓₁_compl_eq_𝔓pos_inter (f : X → ℂ) :
600600
∀ᵐ x, x ∈ G \ G' → carlesonSum 𝔓₁ᶜ f x = carlesonSum (𝔓pos (X := X) ∩ 𝔓₁ᶜ) f x := by
601601
have A p (hp : p ∈ (𝔓pos (X := X))ᶜ) : ∀ᵐ x, x ∈ G \ G' → x ∉ 𝓘 p := by
602602
simp only [𝔓pos, mem_compl_iff, mem_setOf_eq, not_lt, nonpos_iff_eq_zero] at hp
603-
filter_upwards [measure_zero_iff_ae_notMem.mp hp] with x hx h'x (h''x : x ∈ (𝓘 p : Set X))
603+
filter_upwards [measure_eq_zero_iff_ae_notMem.mp hp] with x hx h'x (h''x : x ∈ (𝓘 p : Set X))
604604
simp [h''x, h'x.1, h'x.2] at hx
605605
rw [← ae_ball_iff (to_countable 𝔓posᶜ)] at A
606606
filter_upwards [A] with x hx h'x
@@ -997,8 +997,7 @@ lemma lintegral_carlesonSum_𝔓₁_compl_le_sum_aux1 [ProofData a q K σ₁ σ
997997
+ ((q - 1) / (8 * a ^ 4)) ^ 2 * (38 * 1 + 40 * ↑Z) / (Real.log 2) ^ 2
998998
+ ((q - 1) / (8 * a ^ 4)) * (28 * 1 + 64 * ↑Z) / (Real.log 2) ^ 3
999999
+ (48 * ↑Z) / (Real.log 2) ^ 4) := by
1000-
field_simp only
1001-
ring
1000+
field_simp
10021001
_ ≤ ((8 * a ^ 4) / (q - 1)) ^ 4 *
10031002
(((2 - 1) / (8 * 4 ^ 4)) ^ 3 * (24 * (Z / 2 ^ 48) + 16 * ↑Z) / 0.69
10041003
+ ((2 - 1) / (8 * 4 ^ 4)) ^ 2 * (38 * (Z / 2 ^ 48) + 40 * ↑Z) / 0.69 ^ 2

0 commit comments

Comments
 (0)