Theorem: Measurable.map_measurableSpace_eq_borel
File: Mathlib/MeasureTheory/Constructions/Polish/Basic.lean

Proof steps:
state_before: α : Type u_1
ι : Type u_2
X : Type u_3
Y : Type u_4
Z : Type u_5
β : Type u_6
inst✝⁸ : MeasurableSpace X
inst✝⁷ : StandardBorelSpace X
inst✝⁶ : TopologicalSpace Y
inst✝⁵ : T0Space Y
inst✝⁴ : MeasurableSpace Y
inst✝³ : OpensMeasurableSpace Y
inst✝² : MeasurableSpace β
inst✝¹ : MeasurableSpace Z
inst✝ : SecondCountableTopology Y
f : X → Y
hf : Measurable f
hsurj : Surjective f
⊢ MeasurableSpace.map f inst✝⁸ = borel Y
state_after: α : Type u_1
ι : Type u_2
X : Type u_3
Y : Type u_4
Z : Type u_5
β : Type u_6
inst✝⁸ : MeasurableSpace X
inst✝⁷ : StandardBorelSpace X
inst✝⁶ : TopologicalSpace Y
inst✝⁵ : T0Space Y
inst✝⁴ : MeasurableSpace Y
inst✝³ : OpensMeasurableSpace Y
inst✝² : MeasurableSpace β
inst✝¹ : MeasurableSpace Z
inst✝ : SecondCountableTopology Y
f : X → Y
hf : Measurable f
hsurj : Surjective f
d : Measurable f
⊢ MeasurableSpace.map f inst✝⁸ = borel Y
tactic: have d := hf.mono le_rfl OpensMeasurableSpace.borel_le
state_before: α : Type u_1
ι : Type u_2
X : Type u_3
Y : Type u_4
Z : Type u_5
β : Type u_6
inst✝⁸ : MeasurableSpace X
inst✝⁷ : StandardBorelSpace X
inst✝⁶ : TopologicalSpace Y
inst✝⁵ : T0Space Y
inst✝⁴ : MeasurableSpace Y
inst✝³ : OpensMeasurableSpace Y
inst✝² : MeasurableSpace β
inst✝¹ : MeasurableSpace Z
inst✝ : SecondCountableTopology Y
f : X → Y
hf : Measurable f
hsurj : Surjective f
d : Measurable f
⊢ MeasurableSpace.map f inst✝⁸ = borel Y
state_after: α : Type u_1
ι : Type u_2
X : Type u_3
Y : Type u_4
Z : Type u_5
β : Type u_6
inst✝⁸ : MeasurableSpace X
inst✝⁷ : StandardBorelSpace X
inst✝⁶ : TopologicalSpace Y
inst✝⁵ : T0Space Y
inst✝⁴ : MeasurableSpace Y
inst✝³ : OpensMeasurableSpace Y
inst✝² : MeasurableSpace β
inst✝¹ : MeasurableSpace Z
inst✝ : SecondCountableTopology Y
f : X → Y
hf : Measurable f
hsurj : Surjective f
d : Measurable f
this : MeasurableSpace Y := borel Y
⊢ MeasurableSpace.map f inst✝⁸ = borel Y
tactic: letI := borel Y
state_before: α : Type u_1
ι : Type u_2
X : Type u_3
Y : Type u_4
Z : Type u_5
β : Type u_6
inst✝⁸ : MeasurableSpace X
inst✝⁷ : StandardBorelSpace X
inst✝⁶ : TopologicalSpace Y
inst✝⁵ : T0Space Y
inst✝⁴ : MeasurableSpace Y
inst✝³ : OpensMeasurableSpace Y
inst✝² : MeasurableSpace β
inst✝¹ : MeasurableSpace Z
inst✝ : SecondCountableTopology Y
f : X → Y
hf : Measurable f
hsurj : Surjective f
d : Measurable f
this : MeasurableSpace Y := borel Y
⊢ MeasurableSpace.map f inst✝⁸ = borel Y
state_after: α : Type u_1
ι : Type u_2
X : Type u_3
Y : Type u_4
Z : Type u_5
β : Type u_6
inst✝⁸ : MeasurableSpace X
inst✝⁷ : StandardBorelSpace X
inst✝⁶ : TopologicalSpace Y
inst✝⁵ : T0Space Y
inst✝⁴ : MeasurableSpace Y
inst✝³ : OpensMeasurableSpace Y
inst✝² : MeasurableSpace β
inst✝¹ : MeasurableSpace Z
inst✝ : SecondCountableTopology Y
f : X → Y
hf : Measurable f
hsurj : Surjective f
d : Measurable f
this✝ : MeasurableSpace Y := borel Y
this : BorelSpace Y
⊢ MeasurableSpace.map f inst✝⁸ = borel Y
tactic: haveI : BorelSpace Y := ⟨rfl⟩
state_before: α : Type u_1
ι : Type u_2
X : Type u_3
Y : Type u_4
Z : Type u_5
β : Type u_6
inst✝⁸ : MeasurableSpace X
inst✝⁷ : StandardBorelSpace X
inst✝⁶ : TopologicalSpace Y
inst✝⁵ : T0Space Y
inst✝⁴ : MeasurableSpace Y
inst✝³ : OpensMeasurableSpace Y
inst✝² : MeasurableSpace β
inst✝¹ : MeasurableSpace Z
inst✝ : SecondCountableTopology Y
f : X → Y
hf : Measurable f
hsurj : Surjective f
d : Measurable f
this✝ : MeasurableSpace Y := borel Y
this : BorelSpace Y
⊢ MeasurableSpace.map f inst✝⁸ = borel Y
state_after: no goals
tactic: exact d.map_measurableSpace_eq hsurj