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

iUnion_π”˜β‚„

Carleson.Discrete.ForestUnion Β· Carleson/Discrete/ForestUnion.lean:588 to 615

Source documentation

The sets (π”˜β‚„(k, n, j, l))_l form a partition of π”˜β‚ƒ k n j.

Exact Lean statement

lemma iUnion_π”˜β‚„ (hkn : k ≀ n) : ⋃ l ∈ Iio (4 * n + 12), π”˜β‚„ (X := X) k n j l = π”˜β‚ƒ k n j

Complete declaration

Lean source

Canonical source
Full Lean sourceLean 4
lemma iUnion_π”˜β‚„ (hkn : k ≀ n) : ⋃ l ∈ Iio (4 * n + 12), π”˜β‚„ (X := X) k n j l = π”˜β‚ƒ k n j := by  have : ⋃ l ∈ Iio (4 * n + 12), π”˜β‚„ (X := X) k n j l =      ⋃ i < (4 * n + 12) * 2 ^ n, iteratedMaximalSubfamily (π”˜β‚ƒ k n j) i := by    apply Subset.antisymm    Β· simp only [mem_Iio, π”˜β‚„, mem_Ico, biUnion_and', iUnion_subset_iff]      intro l i hi hl h'i      apply subset_biUnion_of_mem      change i + 1 ≀ (4 * n + 12) * 2 ^ n      suffices i < (4 * n + 12) * 2 ^ n by lia      exact h'i.trans_le (mul_le_mul' (by lia) le_rfl)    Β· simp only [π”˜β‚„, iUnion_subset_iff]      intro i hi      let l := i / 2 ^ n      have : iteratedMaximalSubfamily (π”˜β‚ƒ k n j) i βŠ† ⋃ i ∈ Ico (l * 2 ^ n) ((l + 1) * 2 ^ n),          iteratedMaximalSubfamily (X := X) (π”˜β‚ƒ k n j) i := by        apply subset_biUnion_of_mem        refine ⟨Nat.div_mul_le_self _ _, ?_⟩        rw [← Nat.div_lt_iff_lt_mul (Nat.two_pow_pos n)]        exact lt_add_one _      apply this.trans      apply subset_biUnion_of_mem (u := fun l ↦        ⋃ i ∈ Ico (l * 2 ^ n) ((l + 1) * 2 ^ n), iteratedMaximalSubfamily (π”˜β‚ƒ k n j) i)      simp only [mem_Iio, l]      rwa [Nat.div_lt_iff_lt_mul (Nat.two_pow_pos n)]  rw [this, eq_comm]  apply eq_biUnion_iteratedMaximalSubfamily  intro x  apply forest_stacking x hkn