@@ -555,11 +555,18 @@ theorem IsClosedMap.isEvenlyCovered_of_openPartialHomeomorph [T2Space E] {x : X}
555555/-- If `f : E → X` is a closed map between topological spaces with `E` Hausdorff, and `s` is
556556a subset of `X` on which `f` has finite fibers, such that `f` restricts to a homeomorphism on
557557a neighborhood of every point of `f ⁻¹' s`, then `f` is a covering map on `s`. -/
558- theorem IsClosedMap.isCoveringMapOn_of_openPartialHomeomorph [T2Space E]
558+ theorem IsClosedMap.isCoveringMapOn_of_isLocalHomeomorphOn [T2Space E]
559559 (hf : IsClosedMap f) (hs : ∀ x ∈ s, (f ⁻¹' {x}).Finite)
560- (h : ∀ e ∈ f ⁻¹' s, ∃ φ : OpenPartialHomeomorph E X, e ∈ φ.source ∧ φ = f) :
561- IsCoveringMapOn f s :=
562- fun x hx ↦ hf.isEvenlyCovered_of_openPartialHomeomorph (hs x hx) fun e he ↦ h e (by apply he ▸ hx)
560+ (h : IsLocalHomeomorphOn f (f ⁻¹' s)) :
561+ IsCoveringMapOn f s := by
562+ intro x hx
563+ refine hf.isEvenlyCovered_of_openPartialHomeomorph (hs x hx) fun e he ↦ ?_
564+ obtain ⟨φ, hφ, rfl⟩ := h e (by aesop)
565+ aesop
566+
567+ @ [deprecated (since := "2026-06-25" )]
568+ alias IsClosedMap.isCoveringMapOn_of_openPartialHomeomorph :=
569+ IsClosedMap.isCoveringMapOn_of_isLocalHomeomorphOn
563570
564571/-- If `f : E → X` is a continuous map between Hausdorff spaces with `E` compact,
565572and `f` restricts to a homeomorphism on a neighborhood of every point of a fiber `f ⁻¹' {x}`,
@@ -578,8 +585,27 @@ then `f` is a covering map on `s`.
578585For example, `s` can be taken to be the set of regular values of a C¹ map `f : E → X`
579586where `E` and `X` are manifolds of the same dimension with `E` compact, according to
580587the inverse function theorem (see `ContDiffAt.toOpenPartialHomeomorph`). -/
581- theorem IsCoveringMapOn.of_openPartialHomeomorph
588+ theorem IsCoveringMapOn.of_isLocalHomeomorphOn
582589 [T2Space E] [T2Space X] [CompactSpace E] (hf : Continuous f)
583- (h : ∀ e ∈ f ⁻¹' s, ∃ φ : OpenPartialHomeomorph E X, e ∈ φ.source ∧ φ = f) :
584- IsCoveringMapOn f s :=
585- fun x hx ↦ .of_openPartialHomeomorph hf fun e he ↦ h e (by apply he ▸ hx)
590+ (h : IsLocalHomeomorphOn f (f ⁻¹' s)) :
591+ IsCoveringMapOn f s := by
592+ intro x hx
593+ refine .of_openPartialHomeomorph hf fun e he ↦ ?_
594+ obtain ⟨φ, hφ, rfl⟩ := h e (by aesop)
595+ aesop
596+
597+ @ [deprecated (since := "2026-06-25" )]
598+ alias IsCoveringMapOn.of_openPartialHomeomorph := IsCoveringMapOn.of_isLocalHomeomorphOn
599+
600+ @[simp]
601+ lemma isLocalHomeomorph_iff_isCoveringMap [T2Space E] [T2Space X] [CompactSpace E] :
602+ IsLocalHomeomorph f ↔ IsCoveringMap f := by
603+ refine ⟨fun h ↦ ?_, IsCoveringMap.isLocalHomeomorph⟩
604+ have hf : Continuous f := by
605+ rw [continuous_iff_continuousAt]
606+ intro e
607+ obtain ⟨φ, hφ, rfl⟩ := h e
608+ exact φ.continuousAt hφ
609+ rw [isCoveringMap_iff_isCoveringMapOn_univ]
610+ apply IsCoveringMapOn.of_isLocalHomeomorphOn hf
611+ simpa [← isLocalHomeomorph_iff_isLocalHomeomorphOn_univ]
0 commit comments