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

mf_injOn

Carleson.Discrete.ForestUnion Β· Carleson/Discrete/ForestUnion.lean:500 to 522

Mathematical statement

Exact Lean statement

lemma mf_injOn : InjOn (mf k n j) {u | x ∈ π“˜ u.1}

Complete declaration

Lean source

Canonical source
Full Lean sourceLean 4
lemma mf_injOn : InjOn (mf k n j) {u | x ∈ π“˜ u.1} := fun u mu u' mu' e ↦ by  set m := mf k n j u  have iu : smul 100 u.1 ≀ smul 1 m.1 := (exists_smul_le_of_π”˜β‚ƒ u).choose_spec  have iu' : smul 100 u'.1 ≀ smul 1 m.1 := e β–Έ (exists_smul_le_of_π”˜β‚ƒ u').choose_spec  have su : ball_{π“˜ m.1} (𝒬 m.1) 1 βŠ† ball_{π“˜ u.1} (𝒬 u.1) 100 := iu.2  have su' : ball_{π“˜ m.1} (𝒬 m.1) 1 βŠ† ball_{π“˜ u'.1} (𝒬 u'.1) 100 := iu'.2  have nd : Β¬Disjoint (ball_{π“˜ u.1} (𝒬 u.1) 100) (ball_{π“˜ u'.1} (𝒬 u'.1) 100) := by    rw [not_disjoint_iff]    use 𝒬 m.1, su (mem_ball_self zero_lt_one), su' (mem_ball_self zero_lt_one)  by_contra! h; rw [← Subtype.coe_ne_coe] at h; apply absurd _ nd  have nr : Β¬URel k n j u.1 u'.1 := by contrapose! h; exact EquivalenceOn.reprs_inj u.2 u'.2 h  have nπ“˜ : π“˜ u.1 β‰  π“˜ u'.1 := by    contrapose! nr; rw [disjoint_comm] at nd    exact urel_of_not_disjoint (π”˜β‚ƒ_subset_π”˜β‚‚ u.2) nr.symm nd  rcases le_or_gt (s (π“˜ u.1)) (s (π“˜ u'.1)) with hs | hs  Β· have hu := lt_of_le_of_ne ((le_or_disjoint hs).resolve_right      (not_disjoint_iff.mpr ⟨_, mu, mu'⟩)) nπ“˜    have u₁ := (π”˜β‚ƒ_subset_π”˜β‚‚.trans π”˜β‚‚_subset_π”˜β‚) u.2    exact u₁.2 u' ((π”˜β‚ƒ_subset_π”˜β‚‚.trans π”˜β‚‚_subset_π”˜β‚ |>.trans π”˜β‚_subset_ℭ₁) u'.2) hu  Β· have hu := lt_of_le_of_ne ((le_or_disjoint hs.le).resolve_right      (not_disjoint_iff.mpr ⟨_, mu', mu⟩)) nπ“˜.symm    have u'₁ := (π”˜β‚ƒ_subset_π”˜β‚‚.trans π”˜β‚‚_subset_π”˜β‚) u'.2    exact (u'₁.2 u ((π”˜β‚ƒ_subset_π”˜β‚‚.trans π”˜β‚‚_subset_π”˜β‚ |>.trans π”˜β‚_subset_ℭ₁) u.2) hu).symm