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

Proof steps:
state_before: α : Type u_1
inst✝¹⁰ : MetricSpace α
β : Type u
inst✝⁹ : SecondCountableTopology α
inst✝⁸ : MeasurableSpace α
inst✝⁷ : OpensMeasurableSpace α
inst✝⁶ : HasBesicovitchCovering α
inst✝⁵ : MetricSpace β
inst✝⁴ : MeasurableSpace β
inst✝³ : BorelSpace β
inst✝² : SecondCountableTopology β
inst✝¹ : HasBesicovitchCovering β
μ : Measure β
inst✝ : IsLocallyFiniteMeasure μ
s : Set β
hs : MeasurableSet s
⊢ ∀ᵐ (x : β) ∂μ, Tendsto (fun r => μ (s ∩ closedBall x r) / μ (closedBall x r)) (𝓝[>] 0) (𝓝 (s.indicator 1 x))
state_after: case h
α : Type u_1
inst✝¹⁰ : MetricSpace α
β : Type u
inst✝⁹ : SecondCountableTopology α
inst✝⁸ : MeasurableSpace α
inst✝⁷ : OpensMeasurableSpace α
inst✝⁶ : HasBesicovitchCovering α
inst✝⁵ : MetricSpace β
inst✝⁴ : MeasurableSpace β
inst✝³ : BorelSpace β
inst✝² : SecondCountableTopology β
inst✝¹ : HasBesicovitchCovering β
μ : Measure β
inst✝ : IsLocallyFiniteMeasure μ
s : Set β
hs : MeasurableSet s
⊢ ∀ (a : β),
    Tendsto (fun a => μ (s ∩ a) / μ a) ((Besicovitch.vitaliFamily μ).filterAt a) (𝓝 (s.indicator 1 a)) →
      Tendsto (fun r => μ (s ∩ closedBall a r) / μ (closedBall a r)) (𝓝[>] 0) (𝓝 (s.indicator 1 a))
tactic: filter_upwards [VitaliFamily.ae_tendsto_measure_inter_div_of_measurableSet
      (Besicovitch.vitaliFamily μ) hs]
state_before: case h
α : Type u_1
inst✝¹⁰ : MetricSpace α
β : Type u
inst✝⁹ : SecondCountableTopology α
inst✝⁸ : MeasurableSpace α
inst✝⁷ : OpensMeasurableSpace α
inst✝⁶ : HasBesicovitchCovering α
inst✝⁵ : MetricSpace β
inst✝⁴ : MeasurableSpace β
inst✝³ : BorelSpace β
inst✝² : SecondCountableTopology β
inst✝¹ : HasBesicovitchCovering β
μ : Measure β
inst✝ : IsLocallyFiniteMeasure μ
s : Set β
hs : MeasurableSet s
⊢ ∀ (a : β),
    Tendsto (fun a => μ (s ∩ a) / μ a) ((Besicovitch.vitaliFamily μ).filterAt a) (𝓝 (s.indicator 1 a)) →
      Tendsto (fun r => μ (s ∩ closedBall a r) / μ (closedBall a r)) (𝓝[>] 0) (𝓝 (s.indicator 1 a))
state_after: case h
α : Type u_1
inst✝¹⁰ : MetricSpace α
β : Type u
inst✝⁹ : SecondCountableTopology α
inst✝⁸ : MeasurableSpace α
inst✝⁷ : OpensMeasurableSpace α
inst✝⁶ : HasBesicovitchCovering α
inst✝⁵ : MetricSpace β
inst✝⁴ : MeasurableSpace β
inst✝³ : BorelSpace β
inst✝² : SecondCountableTopology β
inst✝¹ : HasBesicovitchCovering β
μ : Measure β
inst✝ : IsLocallyFiniteMeasure μ
s : Set β
hs : MeasurableSet s
x : β
hx : Tendsto (fun a => μ (s ∩ a) / μ a) ((Besicovitch.vitaliFamily μ).filterAt x) (𝓝 (s.indicator 1 x))
⊢ Tendsto (fun r => μ (s ∩ closedBall x r) / μ (closedBall x r)) (𝓝[>] 0) (𝓝 (s.indicator 1 x))
tactic: intro x hx
state_before: case h
α : Type u_1
inst✝¹⁰ : MetricSpace α
β : Type u
inst✝⁹ : SecondCountableTopology α
inst✝⁸ : MeasurableSpace α
inst✝⁷ : OpensMeasurableSpace α
inst✝⁶ : HasBesicovitchCovering α
inst✝⁵ : MetricSpace β
inst✝⁴ : MeasurableSpace β
inst✝³ : BorelSpace β
inst✝² : SecondCountableTopology β
inst✝¹ : HasBesicovitchCovering β
μ : Measure β
inst✝ : IsLocallyFiniteMeasure μ
s : Set β
hs : MeasurableSet s
x : β
hx : Tendsto (fun a => μ (s ∩ a) / μ a) ((Besicovitch.vitaliFamily μ).filterAt x) (𝓝 (s.indicator 1 x))
⊢ Tendsto (fun r => μ (s ∩ closedBall x r) / μ (closedBall x r)) (𝓝[>] 0) (𝓝 (s.indicator 1 x))
state_after: no goals
tactic: exact hx.comp (tendsto_filterAt μ x)