Theorem: mulIndicator_thickening_eventually_eq_mulIndicator_closure
File: Mathlib/Topology/MetricSpace/ThickenedIndicator.lean

tactic: by_cases x_mem_closure : x ∈ closure E
state_before: α : Type u_1
inst✝¹ : PseudoEMetricSpace α
β : Type u_2
inst✝ : One β
f : α → β
E : Set α
x : α
⊢ ∀ᶠ (δ : ℝ) in 𝓝[>] 0, (thickening δ E).mulIndicator f x = (closure E).mulIndicator f x
state_after: case pos
α : Type u_1
inst✝¹ : PseudoEMetricSpace α
β : Type u_2
inst✝ : One β
f : α → β
E : Set α
x : α
x_mem_closure : x ∈ closure E
⊢ ∀ᶠ (δ : ℝ) in 𝓝[>] 0, (thickening δ E).mulIndicator f x = (closure E).mulIndicator f x

case neg
α : Type u_1
inst✝¹ : PseudoEMetricSpace α
β : Type u_2
inst✝ : One β
f : α → β
E : Set α
x : α
x_mem_closure : x ∉ closure E
⊢ ∀ᶠ (δ : ℝ) in 𝓝[>] 0, (thickening δ E).mulIndicator f x = (closure E).mulIndicator f x

tactic: filter_upwards [self_mem_nhdsWithin] with δ δ_pos
state_before: case pos
α : Type u_1
inst✝¹ : PseudoEMetricSpace α
β : Type u_2
inst✝ : One β
f : α → β
E : Set α
x : α
x_mem_closure : x ∈ closure E
⊢ ∀ᶠ (δ : ℝ) in 𝓝[>] 0, (thickening δ E).mulIndicator f x = (closure E).mulIndicator f x
state_after: case h
α : Type u_1
inst✝¹ : PseudoEMetricSpace α
β : Type u_2
inst✝ : One β
f : α → β
E : Set α
x : α
x_mem_closure : x ∈ closure E
δ : ℝ
δ_pos : δ ∈ Ioi 0
⊢ (thickening δ E).mulIndicator f x = (closure E).mulIndicator f x

tactic: simp only [closure_subset_thickening δ_pos E x_mem_closure, mulIndicator_of_mem, x_mem_closure]
state_before: case h
α : Type u_1
inst✝¹ : PseudoEMetricSpace α
β : Type u_2
inst✝ : One β
f : α → β
E : Set α
x : α
x_mem_closure : x ∈ closure E
δ : ℝ
δ_pos : δ ∈ Ioi 0
⊢ (thickening δ E).mulIndicator f x = (closure E).mulIndicator f x
state_after: no goals

tactic: have obs := eventually_not_mem_thickening_of_infEdist_pos x_mem_closure
state_before: case neg
α : Type u_1
inst✝¹ : PseudoEMetricSpace α
β : Type u_2
inst✝ : One β
f : α → β
E : Set α
x : α
x_mem_closure : x ∉ closure E
⊢ ∀ᶠ (δ : ℝ) in 𝓝[>] 0, (thickening δ E).mulIndicator f x = (closure E).mulIndicator f x
state_after: case neg
α : Type u_1
inst✝¹ : PseudoEMetricSpace α
β : Type u_2
inst✝ : One β
f : α → β
E : Set α
x : α
x_mem_closure : x ∉ closure E
obs : ∀ᶠ (δ : ℝ) in 𝓝 0, x ∉ thickening δ E
⊢ ∀ᶠ (δ : ℝ) in 𝓝[>] 0, (thickening δ E).mulIndicator f x = (closure E).mulIndicator f x

tactic: filter_upwards [mem_nhdsWithin_of_mem_nhds obs, self_mem_nhdsWithin]
  with δ x_notin_thE _
state_before: case neg
α : Type u_1
inst✝¹ : PseudoEMetricSpace α
β : Type u_2
inst✝ : One β
f : α → β
E : Set α
x : α
x_mem_closure : x ∉ closure E
obs : ∀ᶠ (δ : ℝ) in 𝓝 0, x ∉ thickening δ E
⊢ ∀ᶠ (δ : ℝ) in 𝓝[>] 0, (thickening δ E).mulIndicator f x = (closure E).mulIndicator f x
state_after: case h
α : Type u_1
inst✝¹ : PseudoEMetricSpace α
β : Type u_2
inst✝ : One β
f : α → β
E : Set α
x : α
x_mem_closure : x ∉ closure E
obs : ∀ᶠ (δ : ℝ) in 𝓝 0, x ∉ thickening δ E
δ : ℝ
x_notin_thE : x ∉ thickening δ E
a✝ : δ ∈ Ioi 0
⊢ (thickening δ E).mulIndicator f x = (closure E).mulIndicator f x

tactic: simp only [x_notin_thE, not_false_eq_true, mulIndicator_of_not_mem, x_mem_closure]
state_before: case h
α : Type u_1
inst✝¹ : PseudoEMetricSpace α
β : Type u_2
inst✝ : One β
f : α → β
E : Set α
x : α
x_mem_closure : x ∉ closure E
obs : ∀ᶠ (δ : ℝ) in 𝓝 0, x ∉ thickening δ E
δ : ℝ
x_notin_thE : x ∉ thickening δ E
a✝ : δ ∈ Ioi 0
⊢ (thickening δ E).mulIndicator f x = (closure E).mulIndicator f x
state_after: no goals