Theorem: VitaliFamily.ae_tendsto_lintegral_nnnorm_sub_div'
File: Mathlib/MeasureTheory/Covering/Differentiation.lean

tactic: let A := MeasureTheory.Measure.finiteSpanningSetsInOpen' μ
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
⊢ ∀ᵐ (x : α) ∂μ, Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - f x‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 0)

tactic: rcases h'f.isSeparable_range with ⟨t, t_count, ht⟩
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
⊢ ∀ᵐ (x : α) ∂μ, Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - f x‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 0)

tactic: filter_upwards [main, v.ae_eventually_measure_pos] with x hx h'x
state_before: case intro.intro
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
⊢ ∀ᵐ (x : α) ∂μ, Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - f x‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 0)

tactic: have M :
  ∀ c ∈ t, Tendsto (fun a => (∫⁻ y in a, ‖f y - c‖₊ ∂μ) / μ a)
    (v.filterAt x) (𝓝 ‖f x - c‖₊) := by
  intro c hc
  obtain ⟨n, xn⟩ : ∃ n, x ∈ A.set n := by simpa [← A.spanning] using mem_univ x
  specialize hx n c hc
  simp only [xn, indicator_of_mem] at hx
  apply hx.congr' _
  filter_upwards [v.eventually_filterAt_subset_of_nhds (IsOpen.mem_nhds (A.set_mem n) xn),
    v.eventually_filterAt_measurableSet x] with a ha h'a
  congr 1
  apply set_lintegral_congr_fun h'a
  apply eventually_of_forall fun y => ?_
  intro hy
  simp only [ha hy, indicator_of_mem]
state_before: case h
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
⊢ Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - f x‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 0)

tactic: apply ENNReal.tendsto_nhds_zero.2 fun ε εpos => ?_
state_before: case h
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
M : ∀ (c : E), c ∈ t → Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 ↑‖f x - c‖₊)
⊢ Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - f x‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 0)

tactic: obtain ⟨c, ct, xc⟩ : ∃ c ∈ t, (‖f x - c‖₊ : ℝ≥0∞) < ε / 2 := by
  simp_rw [← edist_eq_coe_nnnorm_sub]
  have : f x ∈ closure t := ht (mem_range_self _)
  exact EMetric.mem_closure_iff.1 this (ε / 2) (ENNReal.half_pos (ne_of_gt εpos))
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
M : ∀ (c : E), c ∈ t → Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 ↑‖f x - c‖₊)
ε : ℝ≥0∞
εpos : ε > 0
⊢ ∀ᶠ (x_1 : Set α) in filterAt v x, (∫⁻ (y : α) in x_1, ↑‖f y - f x‖₊ ∂μ) / ↑↑μ x_1 ≤ ε

tactic: filter_upwards [(tendsto_order.1 (M c ct)).2 (ε / 2) xc, h'x, v.eventually_measure_lt_top x] with
  a ha h'a h''a
state_before: case intro.intro
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
M : ∀ (c : E), c ∈ t → Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 ↑‖f x - c‖₊)
ε : ℝ≥0∞
εpos : ε > 0
c : E
ct : c ∈ t
xc : ↑‖f x - c‖₊ < ε / 2
⊢ ∀ᶠ (x_1 : Set α) in filterAt v x, (∫⁻ (y : α) in x_1, ↑‖f y - f x‖₊ ∂μ) / ↑↑μ x_1 ≤ ε

tactic: apply ENNReal.div_le_of_le_mul
state_before: case h
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
M : ∀ (c : E), c ∈ t → Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 ↑‖f x - c‖₊)
ε : ℝ≥0∞
εpos : ε > 0
c : E
ct : c ∈ t
xc : ↑‖f x - c‖₊ < ε / 2
a : Set α
ha : (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a < ε / 2
h'a : 0 < ↑↑μ a
h''a : ↑↑μ a < ⊤
⊢ (∫⁻ (y : α) in a, ↑‖f y - f x‖₊ ∂μ) / ↑↑μ a ≤ ε

tactic: simp_rw [ae_all_iff, ae_ball_iff t_count]
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
⊢ ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)

tactic: intro n c _
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
⊢ ∀ (i : ℕ) (i_1 : E),
    i_1 ∈ t →
      ∀ᵐ (x : α) ∂μ,
        Tendsto
          (fun a =>
            (∫⁻ (y : α) in a,
                ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) i) (fun x => i_1) y‖₊ ∂μ) /
              ↑↑μ a)
          (filterAt v x)
          (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) i) (fun x => i_1) x‖₊)

tactic: apply ae_tendsto_lintegral_div'
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
n : ℕ
c : E
hi✝ : c ∈ t
⊢ ∀ᵐ (x : α) ∂μ,
    Tendsto
      (fun a =>
        (∫⁻ (y : α) in a,
            ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
          ↑↑μ a)
      (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)

tactic: refine' (h'f.sub _).ennnorm
state_before: case hf
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
n : ℕ
c : E
hi✝ : c ∈ t
⊢ Measurable fun y => ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊

tactic: exact stronglyMeasurable_const.indicator (IsOpen.measurableSet (A.set_mem n))
state_before: case hf
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
n : ℕ
c : E
hi✝ : c ∈ t
⊢ StronglyMeasurable fun y => indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y

tactic: apply ne_of_lt
state_before: case h'f
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
n : ℕ
c : E
hi✝ : c ∈ t
⊢ (∫⁻ (y : α), ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) ≠ ⊤

tactic: calc
  (∫⁻ y, ↑‖f y - (A.set n).indicator (fun _ : α => c) y‖₊ ∂μ) ≤
      ∫⁻ y, ‖f y‖₊ + ‖(A.set n).indicator (fun _ : α => c) y‖₊ ∂μ := by
    apply lintegral_mono
    intro x
    dsimp
    rw [← ENNReal.coe_add]
    exact ENNReal.coe_le_coe.2 (nnnorm_sub_le _ _)
  _ = (∫⁻ y, ‖f y‖₊ ∂μ) + ∫⁻ y, ‖(A.set n).indicator (fun _ : α => c) y‖₊ ∂μ :=
    (lintegral_add_left h'f.ennnorm _)
  _ < ∞ + ∞ :=
    haveI I : Integrable ((A.set n).indicator fun _ : α => c) μ := by
      simp only [integrable_indicator_iff (IsOpen.measurableSet (A.set_mem n)),
        integrableOn_const, A.finite n, or_true_iff]
    ENNReal.add_lt_add hf.2 I.2
state_before: case h'f.h
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
n : ℕ
c : E
hi✝ : c ∈ t
⊢ (∫⁻ (y : α), ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) < ⊤

tactic: apply lintegral_mono
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
n : ℕ
c : E
hi✝ : c ∈ t
⊢ (∫⁻ (y : α), ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) ≤
    ∫⁻ (y : α), ↑‖f y‖₊ + ↑‖indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ

tactic: intro x
state_before: case hfg
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
n : ℕ
c : E
hi✝ : c ∈ t
⊢ (fun a => ↑‖f a - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) a‖₊) ≤ fun a =>
    ↑‖f a‖₊ + ↑‖indicator (FiniteSpanningSetsIn.set A n) (fun x => c) a‖₊

tactic: dsimp
state_before: case hfg
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
n : ℕ
c : E
hi✝ : c ∈ t
x : α
⊢ (fun a => ↑‖f a - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) a‖₊) x ≤
    (fun a => ↑‖f a‖₊ + ↑‖indicator (FiniteSpanningSetsIn.set A n) (fun x => c) a‖₊) x

tactic: rw [← ENNReal.coe_add]
state_before: case hfg
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
n : ℕ
c : E
hi✝ : c ∈ t
x : α
⊢ ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊ ≤
    ↑‖f x‖₊ + ↑‖indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊

tactic: exact ENNReal.coe_le_coe.2 (nnnorm_sub_le _ _)
state_before: case hfg
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
n : ℕ
c : E
hi✝ : c ∈ t
x : α
⊢ ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊ ≤
    ↑(‖f x‖₊ + ‖indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)

tactic: simp only [integrable_indicator_iff (IsOpen.measurableSet (A.set_mem n)),
  integrableOn_const, A.finite n, or_true_iff]
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
n : ℕ
c : E
hi✝ : c ∈ t
⊢ Integrable (indicator (FiniteSpanningSetsIn.set A n) fun x => c)

tactic: intro c hc
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
⊢ ∀ (c : E), c ∈ t → Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 ↑‖f x - c‖₊)

tactic: obtain ⟨n, xn⟩ : ∃ n, x ∈ A.set n := by simpa [← A.spanning] using mem_univ x
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
c : E
hc : c ∈ t
⊢ Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 ↑‖f x - c‖₊)

tactic: specialize hx n c hc
state_before: case intro
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
c : E
hc : c ∈ t
n : ℕ
xn : x ∈ FiniteSpanningSetsIn.set A n
⊢ Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 ↑‖f x - c‖₊)

tactic: simp only [xn, indicator_of_mem] at hx
state_before: case intro
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
c : E
hc : c ∈ t
n : ℕ
xn : x ∈ FiniteSpanningSetsIn.set A n
hx :
  Tendsto
    (fun a =>
      (∫⁻ (y : α) in a,
          ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
        ↑↑μ a)
    (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
⊢ Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 ↑‖f x - c‖₊)

tactic: apply hx.congr' _
state_before: case intro
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
c : E
hc : c ∈ t
n : ℕ
xn : x ∈ FiniteSpanningSetsIn.set A n
hx :
  Tendsto
    (fun a =>
      (∫⁻ (y : α) in a,
          ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
        ↑↑μ a)
    (filterAt v x) (𝓝 ↑‖f x - c‖₊)
⊢ Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 ↑‖f x - c‖₊)

tactic: filter_upwards [v.eventually_filterAt_subset_of_nhds (IsOpen.mem_nhds (A.set_mem n) xn),
  v.eventually_filterAt_measurableSet x] with a ha h'a
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
c : E
hc : c ∈ t
n : ℕ
xn : x ∈ FiniteSpanningSetsIn.set A n
hx :
  Tendsto
    (fun a =>
      (∫⁻ (y : α) in a,
          ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
        ↑↑μ a)
    (filterAt v x) (𝓝 ↑‖f x - c‖₊)
⊢ (fun a =>
      (∫⁻ (y : α) in a,
          ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
        ↑↑μ a) =ᶠ[filterAt v x]
    fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a

tactic: congr 1
state_before: case h
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
c : E
hc : c ∈ t
n : ℕ
xn : x ∈ FiniteSpanningSetsIn.set A n
hx :
  Tendsto
    (fun a =>
      (∫⁻ (y : α) in a,
          ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
        ↑↑μ a)
    (filterAt v x) (𝓝 ↑‖f x - c‖₊)
a : Set α
ha : a ⊆ FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n
h'a : MeasurableSet a
⊢ (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
      ↑↑μ a =
    (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a

tactic: apply set_lintegral_congr_fun h'a
state_before: case h.e_a
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
c : E
hc : c ∈ t
n : ℕ
xn : x ∈ FiniteSpanningSetsIn.set A n
hx :
  Tendsto
    (fun a =>
      (∫⁻ (y : α) in a,
          ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
        ↑↑μ a)
    (filterAt v x) (𝓝 ↑‖f x - c‖₊)
a : Set α
ha : a ⊆ FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n
h'a : MeasurableSet a
⊢ (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) =
    ∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ

tactic: apply eventually_of_forall fun y => ?_
state_before: case h.e_a
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
c : E
hc : c ∈ t
n : ℕ
xn : x ∈ FiniteSpanningSetsIn.set A n
hx :
  Tendsto
    (fun a =>
      (∫⁻ (y : α) in a,
          ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
        ↑↑μ a)
    (filterAt v x) (𝓝 ↑‖f x - c‖₊)
a : Set α
ha : a ⊆ FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n
h'a : MeasurableSet a
⊢ ∀ᵐ (x : α) ∂μ,
    x ∈ a → ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊ = ↑‖f x - c‖₊

tactic: intro hy
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
c : E
hc : c ∈ t
n : ℕ
xn : x ∈ FiniteSpanningSetsIn.set A n
hx :
  Tendsto
    (fun a =>
      (∫⁻ (y : α) in a,
          ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
        ↑↑μ a)
    (filterAt v x) (𝓝 ↑‖f x - c‖₊)
a : Set α
ha : a ⊆ FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n
h'a : MeasurableSet a
y : α
⊢ y ∈ a → ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ = ↑‖f y - c‖₊

tactic: simp only [ha hy, indicator_of_mem]
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
c : E
hc : c ∈ t
n : ℕ
xn : x ∈ FiniteSpanningSetsIn.set A n
hx :
  Tendsto
    (fun a =>
      (∫⁻ (y : α) in a,
          ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
        ↑↑μ a)
    (filterAt v x) (𝓝 ↑‖f x - c‖₊)
a : Set α
ha : a ⊆ FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n
h'a : MeasurableSet a
y : α
hy : y ∈ a
⊢ ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ = ↑‖f y - c‖₊

tactic: simpa [← A.spanning] using mem_univ x
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
c : E
hc : c ∈ t
⊢ ∃ n, x ∈ FiniteSpanningSetsIn.set A n

tactic: simp_rw [← edist_eq_coe_nnnorm_sub]
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
M : ∀ (c : E), c ∈ t → Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 ↑‖f x - c‖₊)
ε : ℝ≥0∞
εpos : ε > 0
⊢ ∃ c, c ∈ t ∧ ↑‖f x - c‖₊ < ε / 2

tactic: have : f x ∈ closure t := ht (mem_range_self _)
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
M : ∀ (c : E), c ∈ t → Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 ↑‖f x - c‖₊)
ε : ℝ≥0∞
εpos : ε > 0
⊢ ∃ c, c ∈ t ∧ edist (f x) c < ε / 2

tactic: exact EMetric.mem_closure_iff.1 this (ε / 2) (ENNReal.half_pos (ne_of_gt εpos))
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
M : ∀ (c : E), c ∈ t → Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 ↑‖f x - c‖₊)
ε : ℝ≥0∞
εpos : ε > 0
this : f x ∈ closure t
⊢ ∃ c, c ∈ t ∧ edist (f x) c < ε / 2

tactic: apply lintegral_mono fun x => ?_
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
M : ∀ (c : E), c ∈ t → Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 ↑‖f x - c‖₊)
ε : ℝ≥0∞
εpos : ε > 0
c : E
ct : c ∈ t
xc : ↑‖f x - c‖₊ < ε / 2
a : Set α
ha : (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a < ε / 2
h'a : 0 < ↑↑μ a
h''a : ↑↑μ a < ⊤
⊢ (∫⁻ (y : α) in a, ↑‖f y - f x‖₊ ∂μ) ≤ ∫⁻ (y : α) in a, ↑‖f y - c‖₊ + ↑‖f x - c‖₊ ∂μ

tactic: simpa only [← edist_eq_coe_nnnorm_sub] using edist_triangle_right _ _ _
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x✝ : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x✝)
        (𝓝 ↑‖f x✝ - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x✝‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x✝, 0 < ↑↑μ a
M : ∀ (c : E), c ∈ t → Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x✝) (𝓝 ↑‖f x✝ - c‖₊)
ε : ℝ≥0∞
εpos : ε > 0
c : E
ct : c ∈ t
xc : ↑‖f x✝ - c‖₊ < ε / 2
a : Set α
ha : (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a < ε / 2
h'a : 0 < ↑↑μ a
h''a : ↑↑μ a < ⊤
x : α
⊢ ↑‖f x - f x✝‖₊ ≤ ↑‖f x - c‖₊ + ↑‖f x✝ - c‖₊

tactic: refine' add_le_add _ _
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
M : ∀ (c : E), c ∈ t → Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 ↑‖f x - c‖₊)
ε : ℝ≥0∞
εpos : ε > 0
c : E
ct : c ∈ t
xc : ↑‖f x - c‖₊ < ε / 2
a : Set α
ha : (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a < ε / 2
h'a : 0 < ↑↑μ a
h''a : ↑↑μ a < ⊤
⊢ ((∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) + ∫⁻ (x_1 : α) in a, ↑‖f x - c‖₊ ∂μ) ≤ ε / 2 * ↑↑μ a + ε / 2 * ↑↑μ a

tactic: rw [ENNReal.div_lt_iff (Or.inl h'a.ne') (Or.inl h''a.ne)] at ha
state_before: case refine'_1
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
M : ∀ (c : E), c ∈ t → Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 ↑‖f x - c‖₊)
ε : ℝ≥0∞
εpos : ε > 0
c : E
ct : c ∈ t
xc : ↑‖f x - c‖₊ < ε / 2
a : Set α
ha : (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a < ε / 2
h'a : 0 < ↑↑μ a
h''a : ↑↑μ a < ⊤
⊢ (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) ≤ ε / 2 * ↑↑μ a

tactic: exact ha.le
state_before: case refine'_1
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
M : ∀ (c : E), c ∈ t → Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 ↑‖f x - c‖₊)
ε : ℝ≥0∞
εpos : ε > 0
c : E
ct : c ∈ t
xc : ↑‖f x - c‖₊ < ε / 2
a : Set α
ha : (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) < ε / 2 * ↑↑μ a
h'a : 0 < ↑↑μ a
h''a : ↑↑μ a < ⊤
⊢ (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) ≤ ε / 2 * ↑↑μ a

tactic: simp only [lintegral_const, Measure.restrict_apply, MeasurableSet.univ, univ_inter]
state_before: case refine'_2
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
M : ∀ (c : E), c ∈ t → Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 ↑‖f x - c‖₊)
ε : ℝ≥0∞
εpos : ε > 0
c : E
ct : c ∈ t
xc : ↑‖f x - c‖₊ < ε / 2
a : Set α
ha : (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a < ε / 2
h'a : 0 < ↑↑μ a
h''a : ↑↑μ a < ⊤
⊢ (∫⁻ (x_1 : α) in a, ↑‖f x - c‖₊ ∂μ) ≤ ε / 2 * ↑↑μ a

tactic: exact mul_le_mul_right' xc.le _
state_before: case refine'_2
α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
M : ∀ (c : E), c ∈ t → Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 ↑‖f x - c‖₊)
ε : ℝ≥0∞
εpos : ε > 0
c : E
ct : c ∈ t
xc : ↑‖f x - c‖₊ < ε / 2
a : Set α
ha : (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a < ε / 2
h'a : 0 < ↑↑μ a
h''a : ↑↑μ a < ⊤
⊢ ↑‖f x - c‖₊ * ↑↑μ a ≤ ε / 2 * ↑↑μ a

tactic: rw [← add_mul, ENNReal.add_halves]
state_before: α : Type u_2
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : MeasureTheory.Measure α
v : VitaliFamily μ
E : Type u_1
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : MeasureTheory.Measure α
inst✝ : IsLocallyFiniteMeasure ρ
f : α → E
hf : Integrable f
h'f : StronglyMeasurable f
A : FiniteSpanningSetsIn μ {K | IsOpen K} := finiteSpanningSetsInOpen' μ
t : Set E
t_count : Set.Countable t
ht : range f ⊆ closure t
main :
  ∀ᵐ (x : α) ∂μ,
    ∀ (n : ℕ) (c : E),
      c ∈ t →
        Tendsto
          (fun a => (∫⁻ (y : α) in a, ↑‖f y - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) y‖₊ ∂μ) / ↑↑μ a)
          (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set A n) (fun x => c) x‖₊)
x : α
hx :
  ∀ (n : ℕ) (c : E),
    c ∈ t →
      Tendsto
        (fun a =>
          (∫⁻ (y : α) in a,
              ↑‖f y - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) y‖₊ ∂μ) /
            ↑↑μ a)
        (filterAt v x) (𝓝 ↑‖f x - indicator (FiniteSpanningSetsIn.set (finiteSpanningSetsInOpen' μ) n) (fun x => c) x‖₊)
h'x : ∀ᶠ (a : Set α) in filterAt v x, 0 < ↑↑μ a
M : ∀ (c : E), c ∈ t → Tendsto (fun a => (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a) (filterAt v x) (𝓝 ↑‖f x - c‖₊)
ε : ℝ≥0∞
εpos : ε > 0
c : E
ct : c ∈ t
xc : ↑‖f x - c‖₊ < ε / 2
a : Set α
ha : (∫⁻ (y : α) in a, ↑‖f y - c‖₊ ∂μ) / ↑↑μ a < ε / 2
h'a : 0 < ↑↑μ a
h''a : ↑↑μ a < ⊤
⊢ ε / 2 * ↑↑μ a + ε / 2 * ↑↑μ a = ε * ↑↑μ a