Theorem: MeasureTheory.exists_ne_forall_mem_nhds_pos_measure_preimage
File: Mathlib/MeasureTheory/Measure/Typeclasses.lean

tactic: set m : OuterMeasure β := OuterMeasure.map f μ.toOuterMeasure
state_before: α : Type u_1
β✝ : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝⁴ : MeasurableSpace β✝
μ ν ν₁ ν₂ : Measure α
s t : Set α
β : Type u_5
inst✝³ : TopologicalSpace β
inst✝² : T1Space β
inst✝¹ : SecondCountableTopology β
inst✝ : Nonempty β
f : α → β
h : ∀ (b : β), ∃ᵐ (x : α) ∂μ, f x ≠ b
⊢ ∃ a b, a ≠ b ∧ (∀ s ∈ 𝓝 a, 0 < μ (f ⁻¹' s)) ∧ ∀ t ∈ 𝓝 b, 0 < μ (f ⁻¹' t)
state_after: α : Type u_1
β✝ : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝⁴ : MeasurableSpace β✝
μ ν ν₁ ν₂ : Measure α
s t : Set α
β : Type u_5
inst✝³ : TopologicalSpace β
inst✝² : T1Space β
inst✝¹ : SecondCountableTopology β
inst✝ : Nonempty β
f : α → β
h : ∀ (b : β), ∃ᵐ (x : α) ∂μ, f x ≠ b
m : OuterMeasure β := (OuterMeasure.map f) μ.toOuterMeasure
⊢ ∃ a b, a ≠ b ∧ (∀ s ∈ 𝓝 a, 0 < μ (f ⁻¹' s)) ∧ ∀ t ∈ 𝓝 b, 0 < μ (f ⁻¹' t)

tactic: replace h : ∀ b : β, m {b}ᶜ ≠ 0 := fun b => not_eventually.mpr (h b)
state_before: α : Type u_1
β✝ : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝⁴ : MeasurableSpace β✝
μ ν ν₁ ν₂ : Measure α
s t : Set α
β : Type u_5
inst✝³ : TopologicalSpace β
inst✝² : T1Space β
inst✝¹ : SecondCountableTopology β
inst✝ : Nonempty β
f : α → β
h : ∀ (b : β), ∃ᵐ (x : α) ∂μ, f x ≠ b
m : OuterMeasure β := (OuterMeasure.map f) μ.toOuterMeasure
⊢ ∃ a b, a ≠ b ∧ (∀ s ∈ 𝓝 a, 0 < μ (f ⁻¹' s)) ∧ ∀ t ∈ 𝓝 b, 0 < μ (f ⁻¹' t)
state_after: α : Type u_1
β✝ : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝⁴ : MeasurableSpace β✝
μ ν ν₁ ν₂ : Measure α
s t : Set α
β : Type u_5
inst✝³ : TopologicalSpace β
inst✝² : T1Space β
inst✝¹ : SecondCountableTopology β
inst✝ : Nonempty β
f : α → β
m : OuterMeasure β := (OuterMeasure.map f) μ.toOuterMeasure
h : ∀ (b : β), m {b}ᶜ ≠ 0
⊢ ∃ a b, a ≠ b ∧ (∀ s ∈ 𝓝 a, 0 < μ (f ⁻¹' s)) ∧ ∀ t ∈ 𝓝 b, 0 < μ (f ⁻¹' t)

tactic: inhabit β
state_before: α : Type u_1
β✝ : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝⁴ : MeasurableSpace β✝
μ ν ν₁ ν₂ : Measure α
s t : Set α
β : Type u_5
inst✝³ : TopologicalSpace β
inst✝² : T1Space β
inst✝¹ : SecondCountableTopology β
inst✝ : Nonempty β
f : α → β
m : OuterMeasure β := (OuterMeasure.map f) μ.toOuterMeasure
h : ∀ (b : β), m {b}ᶜ ≠ 0
⊢ ∃ a b, a ≠ b ∧ (∀ s ∈ 𝓝 a, 0 < μ (f ⁻¹' s)) ∧ ∀ t ∈ 𝓝 b, 0 < μ (f ⁻¹' t)
state_after: α : Type u_1
β✝ : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝⁴ : MeasurableSpace β✝
μ ν ν₁ ν₂ : Measure α
s t : Set α
β : Type u_5
inst✝³ : TopologicalSpace β
inst✝² : T1Space β
inst✝¹ : SecondCountableTopology β
inst✝ : Nonempty β
f : α → β
m : OuterMeasure β := (OuterMeasure.map f) μ.toOuterMeasure
h : ∀ (b : β), m {b}ᶜ ≠ 0
inhabited_h : Inhabited β
⊢ ∃ a b, a ≠ b ∧ (∀ s ∈ 𝓝 a, 0 < μ (f ⁻¹' s)) ∧ ∀ t ∈ 𝓝 b, 0 < μ (f ⁻¹' t)

tactic: have : m univ ≠ 0 := ne_bot_of_le_ne_bot (h default) (measure_mono <| subset_univ _)
state_before: α : Type u_1
β✝ : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝⁴ : MeasurableSpace β✝
μ ν ν₁ ν₂ : Measure α
s t : Set α
β : Type u_5
inst✝³ : TopologicalSpace β
inst✝² : T1Space β
inst✝¹ : SecondCountableTopology β
inst✝ : Nonempty β
f : α → β
m : OuterMeasure β := (OuterMeasure.map f) μ.toOuterMeasure
h : ∀ (b : β), m {b}ᶜ ≠ 0
inhabited_h : Inhabited β
⊢ ∃ a b, a ≠ b ∧ (∀ s ∈ 𝓝 a, 0 < μ (f ⁻¹' s)) ∧ ∀ t ∈ 𝓝 b, 0 < μ (f ⁻¹' t)
state_after: α : Type u_1
β✝ : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝⁴ : MeasurableSpace β✝
μ ν ν₁ ν₂ : Measure α
s t : Set α
β : Type u_5
inst✝³ : TopologicalSpace β
inst✝² : T1Space β
inst✝¹ : SecondCountableTopology β
inst✝ : Nonempty β
f : α → β
m : OuterMeasure β := (OuterMeasure.map f) μ.toOuterMeasure
h : ∀ (b : β), m {b}ᶜ ≠ 0
inhabited_h : Inhabited β
this : m univ ≠ 0
⊢ ∃ a b, a ≠ b ∧ (∀ s ∈ 𝓝 a, 0 < μ (f ⁻¹' s)) ∧ ∀ t ∈ 𝓝 b, 0 < μ (f ⁻¹' t)

tactic: rcases exists_mem_forall_mem_nhdsWithin_pos_measure this with ⟨b, -, hb⟩
state_before: α : Type u_1
β✝ : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝⁴ : MeasurableSpace β✝
μ ν ν₁ ν₂ : Measure α
s t : Set α
β : Type u_5
inst✝³ : TopologicalSpace β
inst✝² : T1Space β
inst✝¹ : SecondCountableTopology β
inst✝ : Nonempty β
f : α → β
m : OuterMeasure β := (OuterMeasure.map f) μ.toOuterMeasure
h : ∀ (b : β), m {b}ᶜ ≠ 0
inhabited_h : Inhabited β
this : m univ ≠ 0
⊢ ∃ a b, a ≠ b ∧ (∀ s ∈ 𝓝 a, 0 < μ (f ⁻¹' s)) ∧ ∀ t ∈ 𝓝 b, 0 < μ (f ⁻¹' t)
state_after: case intro.intro
α : Type u_1
β✝ : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝⁴ : MeasurableSpace β✝
μ ν ν₁ ν₂ : Measure α
s t : Set α
β : Type u_5
inst✝³ : TopologicalSpace β
inst✝² : T1Space β
inst✝¹ : SecondCountableTopology β
inst✝ : Nonempty β
f : α → β
m : OuterMeasure β := (OuterMeasure.map f) μ.toOuterMeasure
h : ∀ (b : β), m {b}ᶜ ≠ 0
inhabited_h : Inhabited β
this : m univ ≠ 0
b : β
hb : ∀ t ∈ 𝓝[univ] b, 0 < m t
⊢ ∃ a b, a ≠ b ∧ (∀ s ∈ 𝓝 a, 0 < μ (f ⁻¹' s)) ∧ ∀ t ∈ 𝓝 b, 0 < μ (f ⁻¹' t)

tactic: simp only [nhdsWithin_univ] at hb
state_before: case intro.intro
α : Type u_1
β✝ : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝⁴ : MeasurableSpace β✝
μ ν ν₁ ν₂ : Measure α
s t : Set α
β : Type u_5
inst✝³ : TopologicalSpace β
inst✝² : T1Space β
inst✝¹ : SecondCountableTopology β
inst✝ : Nonempty β
f : α → β
m : OuterMeasure β := (OuterMeasure.map f) μ.toOuterMeasure
h : ∀ (b : β), m {b}ᶜ ≠ 0
inhabited_h : Inhabited β
this : m univ ≠ 0
b : β
hb : ∀ t ∈ 𝓝[univ] b, 0 < m t
⊢ ∃ a b, a ≠ b ∧ (∀ s ∈ 𝓝 a, 0 < μ (f ⁻¹' s)) ∧ ∀ t ∈ 𝓝 b, 0 < μ (f ⁻¹' t)
state_after: case intro.intro
α : Type u_1
β✝ : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝⁴ : MeasurableSpace β✝
μ ν ν₁ ν₂ : Measure α
s t : Set α
β : Type u_5
inst✝³ : TopologicalSpace β
inst✝² : T1Space β
inst✝¹ : SecondCountableTopology β
inst✝ : Nonempty β
f : α → β
m : OuterMeasure β := (OuterMeasure.map f) μ.toOuterMeasure
h : ∀ (b : β), m {b}ᶜ ≠ 0
inhabited_h : Inhabited β
this : m univ ≠ 0
b : β
hb : ∀ t ∈ 𝓝 b, 0 < m t
⊢ ∃ a b, a ≠ b ∧ (∀ s ∈ 𝓝 a, 0 < μ (f ⁻¹' s)) ∧ ∀ t ∈ 𝓝 b, 0 < μ (f ⁻¹' t)

tactic: rcases exists_mem_forall_mem_nhdsWithin_pos_measure (h b) with ⟨a, hab : a ≠ b, ha⟩
state_before: case intro.intro
α : Type u_1
β✝ : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝⁴ : MeasurableSpace β✝
μ ν ν₁ ν₂ : Measure α
s t : Set α
β : Type u_5
inst✝³ : TopologicalSpace β
inst✝² : T1Space β
inst✝¹ : SecondCountableTopology β
inst✝ : Nonempty β
f : α → β
m : OuterMeasure β := (OuterMeasure.map f) μ.toOuterMeasure
h : ∀ (b : β), m {b}ᶜ ≠ 0
inhabited_h : Inhabited β
this : m univ ≠ 0
b : β
hb : ∀ t ∈ 𝓝 b, 0 < m t
⊢ ∃ a b, a ≠ b ∧ (∀ s ∈ 𝓝 a, 0 < μ (f ⁻¹' s)) ∧ ∀ t ∈ 𝓝 b, 0 < μ (f ⁻¹' t)
state_after: case intro.intro.intro.intro
α : Type u_1
β✝ : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝⁴ : MeasurableSpace β✝
μ ν ν₁ ν₂ : Measure α
s t : Set α
β : Type u_5
inst✝³ : TopologicalSpace β
inst✝² : T1Space β
inst✝¹ : SecondCountableTopology β
inst✝ : Nonempty β
f : α → β
m : OuterMeasure β := (OuterMeasure.map f) μ.toOuterMeasure
h : ∀ (b : β), m {b}ᶜ ≠ 0
inhabited_h : Inhabited β
this : m univ ≠ 0
b : β
hb : ∀ t ∈ 𝓝 b, 0 < m t
a : β
hab : a ≠ b
ha : ∀ t ∈ 𝓝[{b}ᶜ] a, 0 < m t
⊢ ∃ a b, a ≠ b ∧ (∀ s ∈ 𝓝 a, 0 < μ (f ⁻¹' s)) ∧ ∀ t ∈ 𝓝 b, 0 < μ (f ⁻¹' t)

tactic: simp only [isOpen_compl_singleton.nhdsWithin_eq hab] at ha
state_before: case intro.intro.intro.intro
α : Type u_1
β✝ : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝⁴ : MeasurableSpace β✝
μ ν ν₁ ν₂ : Measure α
s t : Set α
β : Type u_5
inst✝³ : TopologicalSpace β
inst✝² : T1Space β
inst✝¹ : SecondCountableTopology β
inst✝ : Nonempty β
f : α → β
m : OuterMeasure β := (OuterMeasure.map f) μ.toOuterMeasure
h : ∀ (b : β), m {b}ᶜ ≠ 0
inhabited_h : Inhabited β
this : m univ ≠ 0
b : β
hb : ∀ t ∈ 𝓝 b, 0 < m t
a : β
hab : a ≠ b
ha : ∀ t ∈ 𝓝[{b}ᶜ] a, 0 < m t
⊢ ∃ a b, a ≠ b ∧ (∀ s ∈ 𝓝 a, 0 < μ (f ⁻¹' s)) ∧ ∀ t ∈ 𝓝 b, 0 < μ (f ⁻¹' t)
state_after: case intro.intro.intro.intro
α : Type u_1
β✝ : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝⁴ : MeasurableSpace β✝
μ ν ν₁ ν₂ : Measure α
s t : Set α
β : Type u_5
inst✝³ : TopologicalSpace β
inst✝² : T1Space β
inst✝¹ : SecondCountableTopology β
inst✝ : Nonempty β
f : α → β
m : OuterMeasure β := (OuterMeasure.map f) μ.toOuterMeasure
h : ∀ (b : β), m {b}ᶜ ≠ 0
inhabited_h : Inhabited β
this : m univ ≠ 0
b : β
hb : ∀ t ∈ 𝓝 b, 0 < m t
a : β
hab : a ≠ b
ha : ∀ t ∈ 𝓝 a, 0 < m t
⊢ ∃ a b, a ≠ b ∧ (∀ s ∈ 𝓝 a, 0 < μ (f ⁻¹' s)) ∧ ∀ t ∈ 𝓝 b, 0 < μ (f ⁻¹' t)

tactic: exact ⟨a, b, hab, ha, hb⟩
state_before: case intro.intro.intro.intro
α : Type u_1
β✝ : Type u_2
δ : Type u_3
ι : Type u_4
m0 : MeasurableSpace α
inst✝⁴ : MeasurableSpace β✝
μ ν ν₁ ν₂ : Measure α
s t : Set α
β : Type u_5
inst✝³ : TopologicalSpace β
inst✝² : T1Space β
inst✝¹ : SecondCountableTopology β
inst✝ : Nonempty β
f : α → β
m : OuterMeasure β := (OuterMeasure.map f) μ.toOuterMeasure
h : ∀ (b : β), m {b}ᶜ ≠ 0
inhabited_h : Inhabited β
this : m univ ≠ 0
b : β
hb : ∀ t ∈ 𝓝 b, 0 < m t
a : β
hab : a ≠ b
ha : ∀ t ∈ 𝓝 a, 0 < m t
⊢ ∃ a b, a ≠ b ∧ (∀ s ∈ 𝓝 a, 0 < μ (f ⁻¹' s)) ∧ ∀ t ∈ 𝓝 b, 0 < μ (f ⁻¹' t)
state_after: no goals