α : Type u_1
β : Type u_2
inst✝² : TopologicalSpace α
inst✝¹ : TopologicalSpace β
inst✝ : PolishSpace β
f : α → β
hf : ClosedEmbedding f
this : UpgradedPolishSpace β := upgradePolishSpace β
⊢ PolishSpace α
α : Type u_1
β : Type u_2
inst✝² : TopologicalSpace α
inst✝¹ : TopologicalSpace β
inst✝ : PolishSpace β
f : α → β
hf : ClosedEmbedding f
⊢ PolishSpace α
letI := upgradePolishSpace β
α : Type u_1
β : Type u_2
inst✝² : TopologicalSpace α
inst✝¹ : TopologicalSpace β
inst✝ : PolishSpace β
f : α → β
hf : ClosedEmbedding f
this✝ : UpgradedPolishSpace β := upgradePolishSpace β
this : MetricSpace α := Embedding.comapMetricSpace f (_ : _root_.Embedding f)
⊢ PolishSpace α
α : Type u_1
β : Type u_2
inst✝² : TopologicalSpace α
inst✝¹ : TopologicalSpace β
inst✝ : PolishSpace β
f : α → β
hf : ClosedEmbedding f
this : UpgradedPolishSpace β := upgradePolishSpace β
⊢ PolishSpace α
letI : MetricSpace α := hf.toEmbedding.comapMetricSpace f
α : Type u_1
β : Type u_2
inst✝² : TopologicalSpace α
inst✝¹ : TopologicalSpace β
inst✝ : PolishSpace β
f : α → β
hf : ClosedEmbedding f
this✝¹ : UpgradedPolishSpace β := upgradePolishSpace β
this✝ : MetricSpace α := Embedding.comapMetricSpace f (_ : _root_.Embedding f)
this : SecondCountableTopology α
⊢ PolishSpace α
α : Type u_1
β : Type u_2
inst✝² : TopologicalSpace α
inst✝¹ : TopologicalSpace β
inst✝ : PolishSpace β
f : α → β
hf : ClosedEmbedding f
this✝ : UpgradedPolishSpace β := upgradePolishSpace β
this : MetricSpace α := Embedding.comapMetricSpace f (_ : _root_.Embedding f)
⊢ PolishSpace α
haveI : SecondCountableTopology α := hf.toEmbedding.secondCountableTopology
α : Type u_1
β : Type u_2
inst✝² : TopologicalSpace α
inst✝¹ : TopologicalSpace β
inst✝ : PolishSpace β
f : α → β
hf : ClosedEmbedding f
this✝² : UpgradedPolishSpace β := upgradePolishSpace β
this✝¹ : MetricSpace α := Embedding.comapMetricSpace f (_ : _root_.Embedding f)
this✝ : SecondCountableTopology α
this : CompleteSpace α
⊢ PolishSpace α
α : Type u_1
β : Type u_2
inst✝² : TopologicalSpace α
inst✝¹ : TopologicalSpace β
inst✝ : PolishSpace β
f : α → β
hf : ClosedEmbedding f
this✝¹ : UpgradedPolishSpace β := upgradePolishSpace β
this✝ : MetricSpace α := Embedding.comapMetricSpace f (_ : _root_.Embedding f)
this : SecondCountableTopology α
⊢ PolishSpace α
have : CompleteSpace α := by
  rw [completeSpace_iff_isComplete_range hf.toEmbedding.to_isometry.uniformInducing]
  exact hf.closed_range.isComplete
no goals
α : Type u_1
β : Type u_2
inst✝² : TopologicalSpace α
inst✝¹ : TopologicalSpace β
inst✝ : PolishSpace β
f : α → β
hf : ClosedEmbedding f
this✝² : UpgradedPolishSpace β := upgradePolishSpace β
this✝¹ : MetricSpace α := Embedding.comapMetricSpace f (_ : _root_.Embedding f)
this✝ : SecondCountableTopology α
this : CompleteSpace α
⊢ PolishSpace α
infer_instance
α : Type u_1
β : Type u_2
inst✝² : TopologicalSpace α
inst✝¹ : TopologicalSpace β
inst✝ : PolishSpace β
f : α → β
hf : ClosedEmbedding f
this✝¹ : UpgradedPolishSpace β := upgradePolishSpace β
this✝ : MetricSpace α := Embedding.comapMetricSpace f (_ : _root_.Embedding f)
this : SecondCountableTopology α
⊢ IsComplete (range f)
α : Type u_1
β : Type u_2
inst✝² : TopologicalSpace α
inst✝¹ : TopologicalSpace β
inst✝ : PolishSpace β
f : α → β
hf : ClosedEmbedding f
this✝¹ : UpgradedPolishSpace β := upgradePolishSpace β
this✝ : MetricSpace α := Embedding.comapMetricSpace f (_ : _root_.Embedding f)
this : SecondCountableTopology α
⊢ CompleteSpace α
rw [completeSpace_iff_isComplete_range hf.toEmbedding.to_isometry.uniformInducing]
no goals
α : Type u_1
β : Type u_2
inst✝² : TopologicalSpace α
inst✝¹ : TopologicalSpace β
inst✝ : PolishSpace β
f : α → β
hf : ClosedEmbedding f
this✝¹ : UpgradedPolishSpace β := upgradePolishSpace β
this✝ : MetricSpace α := Embedding.comapMetricSpace f (_ : _root_.Embedding f)
this : SecondCountableTopology α
⊢ IsComplete (range f)
exact hf.closed_range.isComplete