Theorem: VitaliFamily.measure_limRatioMeas_zero
File: Mathlib/MeasureTheory/Covering/Differentiation.lean

tactic: refine measure_null_of_locally_null _ fun x _ => ?_
state_before: α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
⊢ ρ {x | v.limRatioMeas hρ x = 0} = 0
state_after: α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
⊢ ∃ u ∈ 𝓝[{x | v.limRatioMeas hρ x = 0}] x, ρ u = 0

tactic: obtain ⟨o, xo, o_open, μo⟩ : ∃ o : Set α, x ∈ o ∧ IsOpen o ∧ μ o < ∞ :=
  Measure.exists_isOpen_measure_lt_top μ x
state_before: α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
⊢ ∃ u ∈ 𝓝[{x | v.limRatioMeas hρ x = 0}] x, ρ u = 0
state_after: case intro.intro.intro
α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
⊢ ∃ u ∈ 𝓝[{x | v.limRatioMeas hρ x = 0}] x, ρ u = 0

tactic: let s := {x : α | v.limRatioMeas hρ x = 0} ∩ o
state_before: case intro.intro.intro
α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
⊢ ∃ u ∈ 𝓝[{x | v.limRatioMeas hρ x = 0}] x, ρ u = 0
state_after: case intro.intro.intro
α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
⊢ ∃ u ∈ 𝓝[{x | v.limRatioMeas hρ x = 0}] x, ρ u = 0

tactic: refine ⟨s, inter_mem_nhdsWithin _ (o_open.mem_nhds xo), le_antisymm ?_ bot_le⟩
state_before: case intro.intro.intro
α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
⊢ ∃ u ∈ 𝓝[{x | v.limRatioMeas hρ x = 0}] x, ρ u = 0
state_after: case intro.intro.intro
α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
⊢ ρ s ≤ 0

tactic: have μs : μ s ≠ ∞ := ((measure_mono inter_subset_right).trans_lt μo).ne
state_before: case intro.intro.intro
α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
⊢ ρ s ≤ 0
state_after: case intro.intro.intro
α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
⊢ ρ s ≤ 0

tactic: have A : ∀ q : ℝ≥0, 0 < q → ρ s ≤ q * μ s := by
  intro q hq
  apply v.measure_le_mul_of_subset_limRatioMeas_lt hρ
  intro y hy
  have : v.limRatioMeas hρ y = 0 := hy.1
  simp only [this, mem_setOf_eq, hq, ENNReal.coe_pos]
state_before: case intro.intro.intro
α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
⊢ ρ s ≤ 0
state_after: case intro.intro.intro
α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
A : ∀ (q : ℝ≥0), 0 < q → ρ s ≤ ↑q * μ s
⊢ ρ s ≤ 0

tactic: have B : Tendsto (fun q : ℝ≥0 => (q : ℝ≥0∞) * μ s) (𝓝[>] (0 : ℝ≥0)) (𝓝 ((0 : ℝ≥0) * μ s)) := by
  apply ENNReal.Tendsto.mul_const _ (Or.inr μs)
  rw [ENNReal.tendsto_coe]
  exact nhdsWithin_le_nhds
state_before: case intro.intro.intro
α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
A : ∀ (q : ℝ≥0), 0 < q → ρ s ≤ ↑q * μ s
⊢ ρ s ≤ 0
state_after: case intro.intro.intro
α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
A : ∀ (q : ℝ≥0), 0 < q → ρ s ≤ ↑q * μ s
B : Tendsto (fun q => ↑q * μ s) (𝓝[>] 0) (𝓝 (↑0 * μ s))
⊢ ρ s ≤ 0

tactic: simp only [zero_mul, ENNReal.coe_zero] at B
state_before: case intro.intro.intro
α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
A : ∀ (q : ℝ≥0), 0 < q → ρ s ≤ ↑q * μ s
B : Tendsto (fun q => ↑q * μ s) (𝓝[>] 0) (𝓝 (↑0 * μ s))
⊢ ρ s ≤ 0
state_after: case intro.intro.intro
α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
A : ∀ (q : ℝ≥0), 0 < q → ρ s ≤ ↑q * μ s
B : Tendsto (fun q => ↑q * μ s) (𝓝[>] 0) (𝓝 0)
⊢ ρ s ≤ 0

tactic: apply ge_of_tendsto B
state_before: case intro.intro.intro
α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
A : ∀ (q : ℝ≥0), 0 < q → ρ s ≤ ↑q * μ s
B : Tendsto (fun q => ↑q * μ s) (𝓝[>] 0) (𝓝 0)
⊢ ρ s ≤ 0
state_after: case intro.intro.intro
α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
A : ∀ (q : ℝ≥0), 0 < q → ρ s ≤ ↑q * μ s
B : Tendsto (fun q => ↑q * μ s) (𝓝[>] 0) (𝓝 0)
⊢ ∀ᶠ (c : ℝ≥0) in 𝓝[>] 0, ρ s ≤ ↑c * μ s

tactic: filter_upwards [self_mem_nhdsWithin] using A
state_before: case intro.intro.intro
α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
A : ∀ (q : ℝ≥0), 0 < q → ρ s ≤ ↑q * μ s
B : Tendsto (fun q => ↑q * μ s) (𝓝[>] 0) (𝓝 0)
⊢ ∀ᶠ (c : ℝ≥0) in 𝓝[>] 0, ρ s ≤ ↑c * μ s
state_after: no goals

tactic: intro q hq
state_before: α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
⊢ ∀ (q : ℝ≥0), 0 < q → ρ s ≤ ↑q * μ s
state_after: α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
q : ℝ≥0
hq : 0 < q
⊢ ρ s ≤ ↑q * μ s

tactic: apply v.measure_le_mul_of_subset_limRatioMeas_lt hρ
state_before: α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
q : ℝ≥0
hq : 0 < q
⊢ ρ s ≤ ↑q * μ s
state_after: α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
q : ℝ≥0
hq : 0 < q
⊢ s ⊆ {x | v.limRatioMeas hρ x < ↑q}

tactic: intro y hy
state_before: α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
q : ℝ≥0
hq : 0 < q
⊢ s ⊆ {x | v.limRatioMeas hρ x < ↑q}
state_after: α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
q : ℝ≥0
hq : 0 < q
y : α
hy : y ∈ s
⊢ y ∈ {x | v.limRatioMeas hρ x < ↑q}

tactic: have : v.limRatioMeas hρ y = 0 := hy.1
state_before: α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
q : ℝ≥0
hq : 0 < q
y : α
hy : y ∈ s
⊢ y ∈ {x | v.limRatioMeas hρ x < ↑q}
state_after: α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
q : ℝ≥0
hq : 0 < q
y : α
hy : y ∈ s
this : v.limRatioMeas hρ y = 0
⊢ y ∈ {x | v.limRatioMeas hρ x < ↑q}

tactic: simp only [this, mem_setOf_eq, hq, ENNReal.coe_pos]
state_before: α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
q : ℝ≥0
hq : 0 < q
y : α
hy : y ∈ s
this : v.limRatioMeas hρ y = 0
⊢ y ∈ {x | v.limRatioMeas hρ x < ↑q}
state_after: no goals

tactic: apply ENNReal.Tendsto.mul_const _ (Or.inr μs)
state_before: α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
A : ∀ (q : ℝ≥0), 0 < q → ρ s ≤ ↑q * μ s
⊢ Tendsto (fun q => ↑q * μ s) (𝓝[>] 0) (𝓝 (↑0 * μ s))
state_after: α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
A : ∀ (q : ℝ≥0), 0 < q → ρ s ≤ ↑q * μ s
⊢ Tendsto ENNReal.ofNNReal (𝓝[>] 0) (𝓝 ↑0)

tactic: rw [ENNReal.tendsto_coe]
state_before: α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
A : ∀ (q : ℝ≥0), 0 < q → ρ s ≤ ↑q * μ s
⊢ Tendsto ENNReal.ofNNReal (𝓝[>] 0) (𝓝 ↑0)
state_after: α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
A : ∀ (q : ℝ≥0), 0 < q → ρ s ≤ ↑q * μ s
⊢ Tendsto (fun a => a) (𝓝[>] 0) (𝓝 0)

tactic: exact nhdsWithin_le_nhds
state_before: α : Type u_1
inst✝⁵ : MetricSpace α
m0 : MeasurableSpace α
μ : Measure α
v : VitaliFamily μ
E : Type u_2
inst✝⁴ : NormedAddCommGroup E
inst✝³ : SecondCountableTopology α
inst✝² : BorelSpace α
inst✝¹ : IsLocallyFiniteMeasure μ
ρ : Measure α
inst✝ : IsLocallyFiniteMeasure ρ
hρ : ρ ≪ μ
x : α
x✝ : x ∈ {x | v.limRatioMeas hρ x = 0}
o : Set α
xo : x ∈ o
o_open : IsOpen o
μo : μ o < ⊤
s : Set α := {x | v.limRatioMeas hρ x = 0} ∩ o
μs : μ s ≠ ⊤
A : ∀ (q : ℝ≥0), 0 < q → ρ s ≤ ↑q * μ s
⊢ Tendsto (fun a => a) (𝓝[>] 0) (𝓝 0)
state_after: no goals