Theorem: Besicovitch.exists_closedBall_covering_tsum_measure_le
File: Mathlib/MeasureTheory/Covering/Besicovitch.lean

tactic: obtain ⟨u, su, u_open, μu⟩ : ∃ U, U ⊇ s ∧ IsOpen U ∧ μ U ≤ μ s + ε / 2 :=
  Set.exists_isOpen_le_add _ _
    (by
      simpa only [or_false_iff, Ne.def, ENNReal.div_eq_zero_iff, ENNReal.one_ne_top] using hε)
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
⊢ ∃ t r,
    Set.Countable t ∧
      t ⊆ s ∧
        (∀ (x : α), x ∈ t → r x ∈ f x) ∧
          (s ⊆ ⋃ (x : α) (_ : x ∈ t), closedBall x (r x)) ∧ (∑' (x : ↑t), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε

tactic: have : ∀ x ∈ s, ∃ R > 0, ball x R ⊆ u := fun x hx =>
  Metric.mem_nhds_iff.1 (u_open.mem_nhds (su hx))
state_before: case intro.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
⊢ ∃ t r,
    Set.Countable t ∧
      t ⊆ s ∧
        (∀ (x : α), x ∈ t → r x ∈ f x) ∧
          (s ⊆ ⋃ (x : α) (_ : x ∈ t), closedBall x (r x)) ∧ (∑' (x : ↑t), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε

tactic: choose! R hR using this
state_before: case intro.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
this : ∀ (x : α), x ∈ s → ∃ R, R > 0 ∧ ball x R ⊆ u
⊢ ∃ t r,
    Set.Countable t ∧
      t ⊆ s ∧
        (∀ (x : α), x ∈ t → r x ∈ f x) ∧
          (s ⊆ ⋃ (x : α) (_ : x ∈ t), closedBall x (r x)) ∧ (∑' (x : ↑t), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε

tactic: obtain ⟨t0, r0, t0_count, t0s, hr0, μt0, t0_disj⟩ :
  ∃ (t0 : Set α) (r0 : α → ℝ), t0.Countable ∧ t0 ⊆ s ∧
    (∀ x ∈ t0, r0 x ∈ f x ∩ Ioo 0 (R x)) ∧ μ (s \ ⋃ x ∈ t0, closedBall x (r0 x)) = 0 ∧
      t0.PairwiseDisjoint fun x => closedBall x (r0 x) :=
  exists_disjoint_closedBall_covering_ae μ f s hf R fun x hx => (hR x hx).1
state_before: case intro.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
⊢ ∃ t r,
    Set.Countable t ∧
      t ⊆ s ∧
        (∀ (x : α), x ∈ t → r x ∈ f x) ∧
          (s ⊆ ⋃ (x : α) (_ : x ∈ t), closedBall x (r x)) ∧ (∑' (x : ↑t), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε

tactic: let s' := s \ ⋃ x ∈ t0, closedBall x (r0 x)
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
⊢ ∃ t r,
    Set.Countable t ∧
      t ⊆ s ∧
        (∀ (x : α), x ∈ t → r x ∈ f x) ∧
          (s ⊆ ⋃ (x : α) (_ : x ∈ t), closedBall x (r x)) ∧ (∑' (x : ↑t), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε

tactic: have s's : s' ⊆ s := diff_subset _ _
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
⊢ ∃ t r,
    Set.Countable t ∧
      t ⊆ s ∧
        (∀ (x : α), x ∈ t → r x ∈ f x) ∧
          (s ⊆ ⋃ (x : α) (_ : x ∈ t), closedBall x (r x)) ∧ (∑' (x : ↑t), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε

tactic: obtain ⟨N, τ, hτ, H⟩ : ∃ N τ, 1 < τ ∧ IsEmpty (Besicovitch.SatelliteConfig α N τ) :=
  HasBesicovitchCovering.no_satelliteConfig
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
⊢ ∃ t r,
    Set.Countable t ∧
      t ⊆ s ∧
        (∀ (x : α), x ∈ t → r x ∈ f x) ∧
          (s ⊆ ⋃ (x : α) (_ : x ∈ t), closedBall x (r x)) ∧ (∑' (x : ↑t), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε

tactic: obtain ⟨v, s'v, v_open, μv⟩ : ∃ v, v ⊇ s' ∧ IsOpen v ∧ μ v ≤ μ s' + ε / 2 / N :=
  Set.exists_isOpen_le_add _ _
    (by
      simp only [hε, ENNReal.nat_ne_top, WithTop.mul_eq_top_iff, Ne.def, ENNReal.div_eq_zero_iff,
        ENNReal.one_ne_top, not_false_iff, and_false_iff, false_and_iff, or_self_iff])
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
⊢ ∃ t r,
    Set.Countable t ∧
      t ⊆ s ∧
        (∀ (x : α), x ∈ t → r x ∈ f x) ∧
          (s ⊆ ⋃ (x : α) (_ : x ∈ t), closedBall x (r x)) ∧ (∑' (x : ↑t), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε

tactic: have : ∀ x ∈ s', ∃ r1 ∈ f x ∩ Ioo (0 : ℝ) 1, closedBall x r1 ⊆ v := by
  intro x hx
  rcases Metric.mem_nhds_iff.1 (v_open.mem_nhds (s'v hx)) with ⟨r, rpos, hr⟩
  rcases hf x (s's hx) (min r 1) (lt_min rpos zero_lt_one) with ⟨R', hR'⟩
  exact
    ⟨R', ⟨hR'.1, hR'.2.1, hR'.2.2.trans_le (min_le_right _ _)⟩,
      Subset.trans (closedBall_subset_ball (hR'.2.2.trans_le (min_le_left _ _))) hr⟩
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
⊢ ∃ t r,
    Set.Countable t ∧
      t ⊆ s ∧
        (∀ (x : α), x ∈ t → r x ∈ f x) ∧
          (s ⊆ ⋃ (x : α) (_ : x ∈ t), closedBall x (r x)) ∧ (∑' (x : ↑t), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε

tactic: choose! r1 hr1 using this
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
this : ∀ (x : α), x ∈ s' → ∃ r1, r1 ∈ f x ∩ Ioo 0 1 ∧ closedBall x r1 ⊆ v
⊢ ∃ t r,
    Set.Countable t ∧
      t ⊆ s ∧
        (∀ (x : α), x ∈ t → r x ∈ f x) ∧
          (s ⊆ ⋃ (x : α) (_ : x ∈ t), closedBall x (r x)) ∧ (∑' (x : ↑t), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε

tactic: let q : BallPackage s' α :=
  { c := fun x => x
    r := fun x => r1 x
    rpos := fun x => (hr1 x.1 x.2).1.2.1
    r_bound := 1
    r_le := fun x => (hr1 x.1 x.2).1.2.2.le }
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
⊢ ∃ t r,
    Set.Countable t ∧
      t ⊆ s ∧
        (∀ (x : α), x ∈ t → r x ∈ f x) ∧
          (s ⊆ ⋃ (x : α) (_ : x ∈ t), closedBall x (r x)) ∧ (∑' (x : ↑t), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε

tactic: obtain ⟨S, S_disj, hS⟩ :
  ∃ S : Fin N → Set s',
    (∀ i : Fin N, (S i).PairwiseDisjoint fun j => closedBall (q.c j) (q.r j)) ∧
      range q.c ⊆ ⋃ i : Fin N, ⋃ j ∈ S i, ball (q.c j) (q.r j) :=
  exist_disjoint_covering_families hτ H q
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
⊢ ∃ t r,
    Set.Countable t ∧
      t ⊆ s ∧
        (∀ (x : α), x ∈ t → r x ∈ f x) ∧
          (s ⊆ ⋃ (x : α) (_ : x ∈ t), closedBall x (r x)) ∧ (∑' (x : ↑t), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε

tactic: have S_count : ∀ i, (S i).Countable := by
  intro i
  apply (S_disj i).countable_of_nonempty_interior fun j _ => ?_
  have : (ball (j : α) (r1 j)).Nonempty := nonempty_ball.2 (q.rpos _)
  exact this.mono ball_subset_interior_closedBall
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
⊢ ∃ t r,
    Set.Countable t ∧
      t ⊆ s ∧
        (∀ (x : α), x ∈ t → r x ∈ f x) ∧
          (s ⊆ ⋃ (x : α) (_ : x ∈ t), closedBall x (r x)) ∧ (∑' (x : ↑t), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε

tactic: let r x := if x ∈ s' then r1 x else r0 x
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
⊢ ∃ t r,
    Set.Countable t ∧
      t ⊆ s ∧
        (∀ (x : α), x ∈ t → r x ∈ f x) ∧
          (s ⊆ ⋃ (x : α) (_ : x ∈ t), closedBall x (r x)) ∧ (∑' (x : ↑t), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε

tactic: have r_t0 : ∀ x ∈ t0, r x = r0 x := by
  intro x hx
  have : ¬x ∈ s' := by
    simp only [not_exists, exists_prop, mem_iUnion, mem_closedBall, not_and, not_lt, not_le,
      mem_diff, not_forall]
    intro _
    refine' ⟨x, hx, _⟩
    rw [dist_self]
    exact (hr0 x hx).2.1.le
  simp only [if_neg this]
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
⊢ ∃ t r,
    Set.Countable t ∧
      t ⊆ s ∧
        (∀ (x : α), x ∈ t → r x ∈ f x) ∧
          (s ⊆ ⋃ (x : α) (_ : x ∈ t), closedBall x (r x)) ∧ (∑' (x : ↑t), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε

tactic: refine' ⟨t0 ∪ ⋃ i : Fin N, ((↑) : s' → α) '' S i, r, _, _, _, _, _⟩
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
⊢ ∃ t r,
    Set.Countable t ∧
      t ⊆ s ∧
        (∀ (x : α), x ∈ t → r x ∈ f x) ∧
          (s ⊆ ⋃ (x : α) (_ : x ∈ t), closedBall x (r x)) ∧ (∑' (x : ↑t), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε

tactic: simpa only [or_false_iff, Ne.def, ENNReal.div_eq_zero_iff, ENNReal.one_ne_top] using hε
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
⊢ ε / 2 ≠ 0

tactic: simp only [hε, ENNReal.nat_ne_top, WithTop.mul_eq_top_iff, Ne.def, ENNReal.div_eq_zero_iff,
  ENNReal.one_ne_top, not_false_iff, and_false_iff, false_and_iff, or_self_iff]
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
⊢ ε / 2 / ↑N ≠ 0

tactic: intro x hx
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
⊢ ∀ (x : α), x ∈ s' → ∃ r1, r1 ∈ f x ∩ Ioo 0 1 ∧ closedBall x r1 ⊆ v

tactic: rcases Metric.mem_nhds_iff.1 (v_open.mem_nhds (s'v hx)) with ⟨r, rpos, hr⟩
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
x : α
hx : x ∈ s'
⊢ ∃ r1, r1 ∈ f x ∩ Ioo 0 1 ∧ closedBall x r1 ⊆ v

tactic: rcases hf x (s's hx) (min r 1) (lt_min rpos zero_lt_one) with ⟨R', hR'⟩
state_before: case intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
x : α
hx : x ∈ s'
r : ℝ
rpos : r > 0
hr : ball x r ⊆ v
⊢ ∃ r1, r1 ∈ f x ∩ Ioo 0 1 ∧ closedBall x r1 ⊆ v

tactic: exact
  ⟨R', ⟨hR'.1, hR'.2.1, hR'.2.2.trans_le (min_le_right _ _)⟩,
    Subset.trans (closedBall_subset_ball (hR'.2.2.trans_le (min_le_left _ _))) hr⟩
state_before: case intro.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
x : α
hx : x ∈ s'
r : ℝ
rpos : r > 0
hr : ball x r ⊆ v
R' : ℝ
hR' : R' ∈ f x ∩ Ioo 0 (min r 1)
⊢ ∃ r1, r1 ∈ f x ∩ Ioo 0 1 ∧ closedBall x r1 ⊆ v

tactic: intro i
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
⊢ ∀ (i : Fin N), Set.Countable (S i)

tactic: apply (S_disj i).countable_of_nonempty_interior fun j _ => ?_
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
i : Fin N
⊢ Set.Countable (S i)

tactic: have : (ball (j : α) (r1 j)).Nonempty := nonempty_ball.2 (q.rpos _)
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
i : Fin N
j : ↑s'
x✝ : j ∈ S i
⊢ Set.Nonempty (interior (closedBall (BallPackage.c q j) (BallPackage.r q j)))

tactic: exact this.mono ball_subset_interior_closedBall
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
i : Fin N
j : ↑s'
x✝ : j ∈ S i
this : Set.Nonempty (ball (↑j) (r1 ↑j))
⊢ Set.Nonempty (interior (closedBall (BallPackage.c q j) (BallPackage.r q j)))

tactic: intro x hx
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
⊢ ∀ (x : α), x ∈ t0 → r x = r0 x

tactic: have : ¬x ∈ s' := by
  simp only [not_exists, exists_prop, mem_iUnion, mem_closedBall, not_and, not_lt, not_le,
    mem_diff, not_forall]
  intro _
  refine' ⟨x, hx, _⟩
  rw [dist_self]
  exact (hr0 x hx).2.1.le
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
x : α
hx : x ∈ t0
⊢ r x = r0 x

tactic: simp only [if_neg this]
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
x : α
hx : x ∈ t0
this : ¬x ∈ s'
⊢ r x = r0 x

tactic: simp only [not_exists, exists_prop, mem_iUnion, mem_closedBall, not_and, not_lt, not_le,
  mem_diff, not_forall]
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
x : α
hx : x ∈ t0
⊢ ¬x ∈ s'

tactic: intro _
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
x : α
hx : x ∈ t0
⊢ x ∈ s → ∃ x_1, x_1 ∈ t0 ∧ dist x x_1 ≤ r0 x_1

tactic: refine' ⟨x, hx, _⟩
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
x : α
hx : x ∈ t0
a✝ : x ∈ s
⊢ ∃ x_1, x_1 ∈ t0 ∧ dist x x_1 ≤ r0 x_1

tactic: rw [dist_self]
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
x : α
hx : x ∈ t0
a✝ : x ∈ s
⊢ dist x x ≤ r0 x

tactic: exact (hr0 x hx).2.1.le
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
x : α
hx : x ∈ t0
a✝ : x ∈ s
⊢ 0 ≤ r0 x

tactic: exact t0_count.union (countable_iUnion fun i => (S_count i).image _)
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.refine'_1
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
⊢ Set.Countable (t0 ∪ ⋃ (i : Fin N), Subtype.val '' S i)

tactic: simp only [t0s, true_and_iff, union_subset_iff, image_subset_iff, iUnion_subset_iff]
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.refine'_2
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
⊢ (t0 ∪ ⋃ (i : Fin N), Subtype.val '' S i) ⊆ s

tactic: intro i x _
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.refine'_2
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
⊢ ∀ (i : Fin N), S i ⊆ (fun a => ↑a) ⁻¹' s

tactic: exact s's x.2
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.refine'_2
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
i : Fin N
x : { x // x ∈ s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x) }
a✝ : x ∈ S i
⊢ x ∈ (fun a => ↑a) ⁻¹' s

tactic: intro x hx
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.refine'_3
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
⊢ ∀ (x : α), (x ∈ t0 ∪ ⋃ (i : Fin N), Subtype.val '' S i) → r x ∈ f x

tactic: cases hx with
| inl hx =>
  rw [r_t0 x hx]
  exact (hr0 _ hx).1
| inr hx =>
  have h'x : x ∈ s' := by
    simp only [mem_iUnion, mem_image] at hx
    rcases hx with ⟨i, y, _, rfl⟩
    exact y.2
  simp only [if_pos h'x, (hr1 x h'x).1.1]
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.refine'_3
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ t0 ∪ ⋃ (i : Fin N), Subtype.val '' S i
⊢ r x ∈ f x

tactic: rw [r_t0 x hx]
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.refine'_3.inl
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ t0
⊢ r x ∈ f x

tactic: exact (hr0 _ hx).1
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.refine'_3.inl
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ t0
⊢ r0 x ∈ f x

tactic: have h'x : x ∈ s' := by
  simp only [mem_iUnion, mem_image] at hx
  rcases hx with ⟨i, y, _, rfl⟩
  exact y.2
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.refine'_3.inr
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ ⋃ (i : Fin N), Subtype.val '' S i
⊢ r x ∈ f x

tactic: simp only [if_pos h'x, (hr1 x h'x).1.1]
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.refine'_3.inr
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ ⋃ (i : Fin N), Subtype.val '' S i
h'x : x ∈ s'
⊢ r x ∈ f x

tactic: simp only [mem_iUnion, mem_image] at hx
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ ⋃ (i : Fin N), Subtype.val '' S i
⊢ x ∈ s'

tactic: rcases hx with ⟨i, y, _, rfl⟩
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : ∃ i x_1, x_1 ∈ S i ∧ ↑x_1 = x
⊢ x ∈ s'

tactic: exact y.2
state_before: case intro.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
i : Fin N
y : { x // x ∈ s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x) }
left✝ : y ∈ S i
⊢ ↑y ∈ s'

tactic: intro x hx
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.refine'_4
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
⊢ s ⊆ ⋃ (x : α) (_ : x ∈ t0 ∪ ⋃ (i : Fin N), Subtype.val '' S i), closedBall x (r x)

tactic: by_cases h'x : x ∈ s'
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.refine'_4
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ s
⊢ x ∈ ⋃ (x : α) (_ : x ∈ t0 ∪ ⋃ (i : Fin N), Subtype.val '' S i), closedBall x (r x)

tactic: obtain ⟨i, y, ySi, xy⟩ : ∃ (i : Fin N) (y : ↥s'), y ∈ S i ∧ x ∈ ball (y : α) (r1 y) := by
  have A : x ∈ range q.c := by
    simpa only [not_exists, exists_prop, mem_iUnion, mem_closedBall, not_and, not_le,
      mem_setOf_eq, Subtype.range_coe_subtype, mem_diff] using h'x
  simpa only [mem_iUnion, mem_image, bex_def] using hS A
state_before: case pos
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ s
h'x : x ∈ s'
⊢ x ∈ ⋃ (x : α) (_ : x ∈ t0 ∪ ⋃ (i : Fin N), Subtype.val '' S i), closedBall x (r x)

tactic: refine' mem_iUnion₂.2 ⟨y, Or.inr _, _⟩
state_before: case pos.intro.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ s
h'x : x ∈ s'
i : Fin N
y : ↑s'
ySi : y ∈ S i
xy : x ∈ ball (↑y) (r1 ↑y)
⊢ x ∈ ⋃ (x : α) (_ : x ∈ t0 ∪ ⋃ (i : Fin N), Subtype.val '' S i), closedBall x (r x)

tactic: have A : x ∈ range q.c := by
  simpa only [not_exists, exists_prop, mem_iUnion, mem_closedBall, not_and, not_le,
    mem_setOf_eq, Subtype.range_coe_subtype, mem_diff] using h'x
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ s
h'x : x ∈ s'
⊢ ∃ i y, y ∈ S i ∧ x ∈ ball (↑y) (r1 ↑y)

tactic: simpa only [mem_iUnion, mem_image, bex_def] using hS A
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ s
h'x : x ∈ s'
A : x ∈ range q.c
⊢ ∃ i y, y ∈ S i ∧ x ∈ ball (↑y) (r1 ↑y)

tactic: simpa only [not_exists, exists_prop, mem_iUnion, mem_closedBall, not_and, not_le,
  mem_setOf_eq, Subtype.range_coe_subtype, mem_diff] using h'x
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ s
h'x : x ∈ s'
⊢ x ∈ range q.c

tactic: simp only [mem_iUnion, mem_image]
state_before: case pos.intro.intro.intro.refine'_1
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ s
h'x : x ∈ s'
i : Fin N
y : ↑s'
ySi : y ∈ S i
xy : x ∈ ball (↑y) (r1 ↑y)
⊢ ↑y ∈ ⋃ (i : Fin N), Subtype.val '' S i

tactic: exact ⟨i, y, ySi, rfl⟩
state_before: case pos.intro.intro.intro.refine'_1
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ s
h'x : x ∈ s'
i : Fin N
y : ↑s'
ySi : y ∈ S i
xy : x ∈ ball (↑y) (r1 ↑y)
⊢ ∃ i x, x ∈ S i ∧ ↑x = ↑y

tactic: have : (y : α) ∈ s' := y.2
state_before: case pos.intro.intro.intro.refine'_2
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ s
h'x : x ∈ s'
i : Fin N
y : ↑s'
ySi : y ∈ S i
xy : x ∈ ball (↑y) (r1 ↑y)
⊢ x ∈ closedBall (↑y) (r ↑y)

tactic: simp only [if_pos this]
state_before: case pos.intro.intro.intro.refine'_2
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ s
h'x : x ∈ s'
i : Fin N
y : ↑s'
ySi : y ∈ S i
xy : x ∈ ball (↑y) (r1 ↑y)
this : ↑y ∈ s'
⊢ x ∈ closedBall (↑y) (r ↑y)

tactic: exact ball_subset_closedBall xy
state_before: case pos.intro.intro.intro.refine'_2
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ s
h'x : x ∈ s'
i : Fin N
y : ↑s'
ySi : y ∈ S i
xy : x ∈ ball (↑y) (r1 ↑y)
this : ↑y ∈ s'
⊢ x ∈ closedBall (↑y) (r1 ↑y)

tactic: obtain ⟨y, yt0, hxy⟩ : ∃ y : α, y ∈ t0 ∧ x ∈ closedBall y (r0 y) := by
  simpa [hx, -mem_closedBall] using h'x
state_before: case neg
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ s
h'x : ¬x ∈ s'
⊢ x ∈ ⋃ (x : α) (_ : x ∈ t0 ∪ ⋃ (i : Fin N), Subtype.val '' S i), closedBall x (r x)

tactic: refine' mem_iUnion₂.2 ⟨y, Or.inl yt0, _⟩
state_before: case neg.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ s
h'x : ¬x ∈ s'
y : α
yt0 : y ∈ t0
hxy : x ∈ closedBall y (r0 y)
⊢ x ∈ ⋃ (x : α) (_ : x ∈ t0 ∪ ⋃ (i : Fin N), Subtype.val '' S i), closedBall x (r x)

tactic: rwa [r_t0 _ yt0]
state_before: case neg.intro.intro
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ s
h'x : ¬x ∈ s'
y : α
yt0 : y ∈ t0
hxy : x ∈ closedBall y (r0 y)
⊢ x ∈ closedBall y (r y)

tactic: simpa [hx, -mem_closedBall] using h'x
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ s
h'x : ¬x ∈ s'
⊢ ∃ y, y ∈ t0 ∧ x ∈ closedBall y (r0 y)

tactic: calc
  (∑' x : ↥(t0 ∪ ⋃ i : Fin N, ((↑) : s' → α) '' S i), μ (closedBall x (r x))) ≤
      (∑' x : t0, μ (closedBall x (r x))) +
        ∑' x : ⋃ i : Fin N, ((↑) : s' → α) '' S i, μ (closedBall x (r x)) :=
    ENNReal.tsum_union_le (fun x => μ (closedBall x (r x))) _ _
  _ ≤
      (∑' x : t0, μ (closedBall x (r x))) +
        ∑ i : Fin N, ∑' x : ((↑) : s' → α) '' S i, μ (closedBall x (r x)) :=
    (add_le_add le_rfl (ENNReal.tsum_iUnion_le (fun x => μ (closedBall x (r x))) _))
  _ ≤ μ s + ε / 2 + ∑ i : Fin N, ε / 2 / N := by
    refine' add_le_add A _
    refine' Finset.sum_le_sum _
    intro i _
    exact B i
  _ ≤ μ s + ε / 2 + ε / 2 := by
    refine' add_le_add le_rfl _
    simp only [Finset.card_fin, Finset.sum_const, nsmul_eq_mul, ENNReal.mul_div_le]
  _ = μ s + ε := by rw [add_assoc, ENNReal.add_halves]
state_before: case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.intro.refine'_5
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
B : ∀ (i : Fin N), (∑' (x : ↑(Subtype.val '' S i)), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ε / 2 / ↑N
⊢ (∑' (x : ↑(t0 ∪ ⋃ (i : Fin N), Subtype.val '' S i)), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε

tactic: congr 1
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
⊢ (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) = ∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r0 ↑x))

tactic: ext x
state_before: case e_f
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
⊢ (fun x => ↑↑μ (closedBall (↑x) (r ↑x))) = fun x => ↑↑μ (closedBall (↑x) (r0 ↑x))

tactic: rw [r_t0 x x.2]
state_before: case e_f.h
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : ↑t0
⊢ ↑↑μ (closedBall (↑x) (r ↑x)) = ↑↑μ (closedBall (↑x) (r0 ↑x))

tactic: haveI : Encodable t0 := t0_count.toEncodable
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
⊢ (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r0 ↑x))) = ↑↑μ (⋃ (x : ↑t0), closedBall (↑x) (r0 ↑x))

tactic: rw [measure_iUnion]
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
this : Encodable ↑t0
⊢ (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r0 ↑x))) = ↑↑μ (⋃ (x : ↑t0), closedBall (↑x) (r0 ↑x))

tactic: exact (pairwise_subtype_iff_pairwise_set _ _).2 t0_disj
state_before: case hn
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
this : Encodable ↑t0
⊢ Pairwise (Disjoint on fun x => closedBall (↑x) (r0 ↑x))

tactic: exact fun i => measurableSet_closedBall
state_before: case h
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
this : Encodable ↑t0
⊢ ∀ (i : ↑t0), MeasurableSet (closedBall (↑i) (r0 ↑i))

tactic: apply measure_mono
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
⊢ ↑↑μ (⋃ (x : ↑t0), closedBall (↑x) (r0 ↑x)) ≤ ↑↑μ u

tactic: simp only [SetCoe.forall, Subtype.coe_mk, iUnion_subset_iff]
state_before: case h
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
⊢ (⋃ (x : ↑t0), closedBall (↑x) (r0 ↑x)) ⊆ u

tactic: intro x hx
state_before: case h
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
⊢ ∀ (x : α), x ∈ t0 → closedBall x (r0 x) ⊆ u

tactic: apply Subset.trans (closedBall_subset_ball (hr0 x hx).2.2) (hR x (t0s hx)).2
state_before: case h
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
x : α
hx : x ∈ t0
⊢ closedBall x (r0 x) ⊆ u

tactic: have : InjOn ((↑) : s' → α) (S i) := Subtype.val_injective.injOn _
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
i : Fin N
⊢ (∑' (x : ↑(Subtype.val '' S i)), ↑↑μ (closedBall (↑x) (r ↑x))) = ∑' (x : ↑(S i)), ↑↑μ (closedBall (↑↑x) (r ↑↑x))

tactic: let F : S i ≃ ((↑) : s' → α) '' S i := this.bijOn_image.equiv _
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
i : Fin N
this : InjOn Subtype.val (S i)
⊢ (∑' (x : ↑(Subtype.val '' S i)), ↑↑μ (closedBall (↑x) (r ↑x))) = ∑' (x : ↑(S i)), ↑↑μ (closedBall (↑↑x) (r ↑↑x))

tactic: exact (F.tsum_eq fun x => μ (closedBall x (r x))).symm
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
i : Fin N
this : InjOn Subtype.val (S i)
F : ↑(S i) ≃ ↑(Subtype.val '' S i) := BijOn.equiv Subtype.val (_ : BijOn Subtype.val (S i) (Subtype.val '' S i))
⊢ (∑' (x : ↑(Subtype.val '' S i)), ↑↑μ (closedBall (↑x) (r ↑x))) = ∑' (x : ↑(S i)), ↑↑μ (closedBall (↑↑x) (r ↑↑x))

tactic: congr 1
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
i : Fin N
⊢ (∑' (x : ↑(S i)), ↑↑μ (closedBall (↑↑x) (r ↑↑x))) = ∑' (x : ↑(S i)), ↑↑μ (closedBall (↑↑x) (r1 ↑↑x))

tactic: ext x
state_before: case e_f
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
i : Fin N
⊢ (fun x => ↑↑μ (closedBall (↑↑x) (r ↑↑x))) = fun x => ↑↑μ (closedBall (↑↑x) (r1 ↑↑x))

tactic: have : (x : α) ∈ s' := x.1.2
state_before: case e_f.h
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
i : Fin N
x : ↑(S i)
⊢ ↑↑μ (closedBall (↑↑x) (r ↑↑x)) = ↑↑μ (closedBall (↑↑x) (r1 ↑↑x))

tactic: simp only [if_pos this]
state_before: case e_f.h
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
i : Fin N
x : ↑(S i)
this : ↑↑x ∈ s'
⊢ ↑↑μ (closedBall (↑↑x) (r ↑↑x)) = ↑↑μ (closedBall (↑↑x) (r1 ↑↑x))

tactic: haveI : Encodable (S i) := (S_count i).toEncodable
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
i : Fin N
⊢ (∑' (x : ↑(S i)), ↑↑μ (closedBall (↑↑x) (r1 ↑↑x))) = ↑↑μ (⋃ (x : ↑(S i)), closedBall (↑↑x) (r1 ↑↑x))

tactic: rw [measure_iUnion]
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
i : Fin N
this : Encodable ↑(S i)
⊢ (∑' (x : ↑(S i)), ↑↑μ (closedBall (↑↑x) (r1 ↑↑x))) = ↑↑μ (⋃ (x : ↑(S i)), closedBall (↑↑x) (r1 ↑↑x))

tactic: exact (pairwise_subtype_iff_pairwise_set _ _).2 (S_disj i)
state_before: case hn
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
i : Fin N
this : Encodable ↑(S i)
⊢ Pairwise (Disjoint on fun x => closedBall (↑↑x) (r1 ↑↑x))

tactic: exact fun i => measurableSet_closedBall
state_before: case h
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
i : Fin N
this : Encodable ↑(S i)
⊢ ∀ (i_1 : ↑(S i)), MeasurableSet (closedBall (↑↑i_1) (r1 ↑↑i_1))

tactic: apply measure_mono
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
i : Fin N
⊢ ↑↑μ (⋃ (x : ↑(S i)), closedBall (↑↑x) (r1 ↑↑x)) ≤ ↑↑μ v

tactic: simp only [SetCoe.forall, Subtype.coe_mk, iUnion_subset_iff]
state_before: case h
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
i : Fin N
⊢ (⋃ (x : ↑(S i)), closedBall (↑↑x) (r1 ↑↑x)) ⊆ v

tactic: intro x xs' _
state_before: case h
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
i : Fin N
⊢ ∀ (x : α) (h : x ∈ s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)),
    { val := x, property := h } ∈ S i → closedBall x (r1 x) ⊆ v

tactic: exact (hr1 x xs').2
state_before: case h
α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
i : Fin N
x : α
xs' : x ∈ s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
h✝ : { val := x, property := xs' } ∈ S i
⊢ closedBall x (r1 x) ⊆ v

tactic: have : μ s' = 0 := μt0
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
i : Fin N
⊢ ↑↑μ v ≤ ε / 2 / ↑N

tactic: rwa [this, zero_add] at μv
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
i : Fin N
this : ↑↑μ s' = 0
⊢ ↑↑μ v ≤ ε / 2 / ↑N

tactic: refine' add_le_add A _
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
B : ∀ (i : Fin N), (∑' (x : ↑(Subtype.val '' S i)), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ε / 2 / ↑N
⊢ ((∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) +
      ∑ i : Fin N, ∑' (x : ↑(Subtype.val '' S i)), ↑↑μ (closedBall (↑x) (r ↑x))) ≤
    ↑↑μ s + ε / 2 + ∑ i : Fin N, ε / 2 / ↑N

tactic: refine' Finset.sum_le_sum _
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
B : ∀ (i : Fin N), (∑' (x : ↑(Subtype.val '' S i)), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ε / 2 / ↑N
⊢ (∑ i : Fin N, ∑' (x : ↑(Subtype.val '' S i)), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ∑ i : Fin N, ε / 2 / ↑N

tactic: intro i _
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
B : ∀ (i : Fin N), (∑' (x : ↑(Subtype.val '' S i)), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ε / 2 / ↑N
⊢ ∀ (i : Fin N), i ∈ Finset.univ → (∑' (x : ↑(Subtype.val '' S i)), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ε / 2 / ↑N

tactic: exact B i
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
B : ∀ (i : Fin N), (∑' (x : ↑(Subtype.val '' S i)), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ε / 2 / ↑N
i : Fin N
a✝ : i ∈ Finset.univ
⊢ (∑' (x : ↑(Subtype.val '' S i)), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ε / 2 / ↑N

tactic: refine' add_le_add le_rfl _
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
B : ∀ (i : Fin N), (∑' (x : ↑(Subtype.val '' S i)), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ε / 2 / ↑N
⊢ ↑↑μ s + ε / 2 + ∑ i : Fin N, ε / 2 / ↑N ≤ ↑↑μ s + ε / 2 + ε / 2

tactic: simp only [Finset.card_fin, Finset.sum_const, nsmul_eq_mul, ENNReal.mul_div_le]
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
B : ∀ (i : Fin N), (∑' (x : ↑(Subtype.val '' S i)), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ε / 2 / ↑N
⊢ ∑ i : Fin N, ε / 2 / ↑N ≤ ε / 2

tactic: rw [add_assoc, ENNReal.add_halves]
state_before: α : Type u_1
inst✝⁶ : MetricSpace α
β : Type u
inst✝⁵ : SecondCountableTopology α
inst✝⁴ : MeasurableSpace α
inst✝³ : OpensMeasurableSpace α
inst✝² : HasBesicovitchCovering α
μ : MeasureTheory.Measure α
inst✝¹ : SigmaFinite μ
inst✝ : Measure.OuterRegular μ
ε : ℝ≥0∞
hε : ε ≠ 0
f : α → Set ℝ
s : Set α
hf : ∀ (x : α), x ∈ s → ∀ (δ : ℝ), δ > 0 → Set.Nonempty (f x ∩ Ioo 0 δ)
u : Set α
su : u ⊇ s
u_open : IsOpen u
μu : ↑↑μ u ≤ ↑↑μ s + ε / 2
R : α → ℝ
hR : ∀ (x : α), x ∈ s → R x > 0 ∧ ball x (R x) ⊆ u
t0 : Set α
r0 : α → ℝ
t0_count : Set.Countable t0
t0s : t0 ⊆ s
hr0 : ∀ (x : α), x ∈ t0 → r0 x ∈ f x ∩ Ioo 0 (R x)
μt0 : ↑↑μ (s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)) = 0
t0_disj : PairwiseDisjoint t0 fun x => closedBall x (r0 x)
s' : Set α := s \ ⋃ (x : α) (_ : x ∈ t0), closedBall x (r0 x)
s's : s' ⊆ s
N : ℕ
τ : ℝ
hτ : 1 < τ
H : IsEmpty (SatelliteConfig α N τ)
v : Set α
s'v : v ⊇ s'
v_open : IsOpen v
μv : ↑↑μ v ≤ ↑↑μ s' + ε / 2 / ↑N
r1 : α → ℝ
hr1 : ∀ (x : α), x ∈ s' → r1 x ∈ f x ∩ Ioo 0 1 ∧ closedBall x (r1 x) ⊆ v
q : BallPackage (↑s') α :=
  { c := fun x => ↑x, r := fun x => r1 ↑x, rpos := (_ : ∀ (x : ↑s'), 0 < r1 ↑x), r_bound := 1,
    r_le := (_ : ∀ (x : ↑s'), r1 ↑x ≤ 1) }
S : Fin N → Set ↑s'
S_disj : ∀ (i : Fin N), PairwiseDisjoint (S i) fun j => closedBall (BallPackage.c q j) (BallPackage.r q j)
hS : range q.c ⊆ ⋃ (i : Fin N) (j : ↑s') (_ : j ∈ S i), ball (BallPackage.c q j) (BallPackage.r q j)
S_count : ∀ (i : Fin N), Set.Countable (S i)
r : α → ℝ := fun x => if x ∈ s' then r1 x else r0 x
r_t0 : ∀ (x : α), x ∈ t0 → r x = r0 x
A : (∑' (x : ↑t0), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ↑↑μ s + ε / 2
B : ∀ (i : Fin N), (∑' (x : ↑(Subtype.val '' S i)), ↑↑μ (closedBall (↑x) (r ↑x))) ≤ ε / 2 / ↑N
⊢ ↑↑μ s + ε / 2 + ε / 2 = ↑↑μ s + ε