Theorem: Continuous.stronglyMeasurable
File: Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean

tactic: borelize β
state_before: α : Type u_1
β✝ : Type ?u.138812
γ : Type ?u.138815
ι : Type ?u.138818
inst✝⁵ : Countable ι
f✝ g : α → β✝
inst✝⁴ : MeasurableSpace α
inst✝³ : TopologicalSpace α
inst✝² : OpensMeasurableSpace α
β : Type u_2
inst✝¹ : TopologicalSpace β
inst✝ : PseudoMetrizableSpace β
h : SecondCountableTopologyEither α β
f : α → β
hf : Continuous f
⊢ StronglyMeasurable f

tactic: cases h.out
state_before: α : Type u_1
β✝ : Type ?u.138812
γ : Type ?u.138815
ι : Type ?u.138818
inst✝⁵ : Countable ι
f✝ g : α → β✝
inst✝⁴ : MeasurableSpace α
inst✝³ : TopologicalSpace α
inst✝² : OpensMeasurableSpace α
β : Type u_2
inst✝¹ : TopologicalSpace β
inst✝ : PseudoMetrizableSpace β
h : SecondCountableTopologyEither α β
f : α → β
hf : Continuous f
this✝¹ : MeasurableSpace β := borel β
this✝ : BorelSpace β
⊢ StronglyMeasurable f

tactic: rw [stronglyMeasurable_iff_measurable_separable]
state_before: case inl
α : Type u_1
β✝ : Type ?u.138812
γ : Type ?u.138815
ι : Type ?u.138818
inst✝⁵ : Countable ι
f✝ g : α → β✝
inst✝⁴ : MeasurableSpace α
inst✝³ : TopologicalSpace α
inst✝² : OpensMeasurableSpace α
β : Type u_2
inst✝¹ : TopologicalSpace β
inst✝ : PseudoMetrizableSpace β
h : SecondCountableTopologyEither α β
f : α → β
hf : Continuous f
this✝¹ : MeasurableSpace β := borel β
this✝ : BorelSpace β
h✝ : SecondCountableTopology α
⊢ StronglyMeasurable f

tactic: refine' ⟨hf.measurable, _⟩
state_before: case inl
α : Type u_1
β✝ : Type ?u.138812
γ : Type ?u.138815
ι : Type ?u.138818
inst✝⁵ : Countable ι
f✝ g : α → β✝
inst✝⁴ : MeasurableSpace α
inst✝³ : TopologicalSpace α
inst✝² : OpensMeasurableSpace α
β : Type u_2
inst✝¹ : TopologicalSpace β
inst✝ : PseudoMetrizableSpace β
h : SecondCountableTopologyEither α β
f : α → β
hf : Continuous f
this✝¹ : MeasurableSpace β := borel β
this✝ : BorelSpace β
h✝ : SecondCountableTopology α
⊢ Measurable f ∧ IsSeparable (range f)

tactic: rw [← image_univ]
state_before: case inl
α : Type u_1
β✝ : Type ?u.138812
γ : Type ?u.138815
ι : Type ?u.138818
inst✝⁵ : Countable ι
f✝ g : α → β✝
inst✝⁴ : MeasurableSpace α
inst✝³ : TopologicalSpace α
inst✝² : OpensMeasurableSpace α
β : Type u_2
inst✝¹ : TopologicalSpace β
inst✝ : PseudoMetrizableSpace β
h : SecondCountableTopologyEither α β
f : α → β
hf : Continuous f
this✝¹ : MeasurableSpace β := borel β
this✝ : BorelSpace β
h✝ : SecondCountableTopology α
⊢ IsSeparable (range f)

tactic: exact (isSeparable_of_separableSpace univ).image hf
state_before: case inl
α : Type u_1
β✝ : Type ?u.138812
γ : Type ?u.138815
ι : Type ?u.138818
inst✝⁵ : Countable ι
f✝ g : α → β✝
inst✝⁴ : MeasurableSpace α
inst✝³ : TopologicalSpace α
inst✝² : OpensMeasurableSpace α
β : Type u_2
inst✝¹ : TopologicalSpace β
inst✝ : PseudoMetrizableSpace β
h : SecondCountableTopologyEither α β
f : α → β
hf : Continuous f
this✝¹ : MeasurableSpace β := borel β
this✝ : BorelSpace β
h✝ : SecondCountableTopology α
⊢ IsSeparable (f '' univ)

tactic: exact hf.measurable.stronglyMeasurable
state_before: case inr
α : Type u_1
β✝ : Type ?u.138812
γ : Type ?u.138815
ι : Type ?u.138818
inst✝⁵ : Countable ι
f✝ g : α → β✝
inst✝⁴ : MeasurableSpace α
inst✝³ : TopologicalSpace α
inst✝² : OpensMeasurableSpace α
β : Type u_2
inst✝¹ : TopologicalSpace β
inst✝ : PseudoMetrizableSpace β
h : SecondCountableTopologyEither α β
f : α → β
hf : Continuous f
this✝¹ : MeasurableSpace β := borel β
this✝ : BorelSpace β
h✝ : SecondCountableTopology β
⊢ StronglyMeasurable f