# Covering Maps #

This file defines covering maps.

## Main definitions #

• IsEvenlyCovered f x I: A point x is evenly covered by f : E → X with fiber I if I is discrete and there is a Trivialization of f at x with fiber I.
• IsCoveringMap f: A function f : E → X is a covering map if every point x is evenly covered by f with fiber f ⁻¹' {x}. The fibers f ⁻¹' {x} must be discrete, but if X is not connected, then the fibers f ⁻¹' {x} are not necessarily isomorphic. Also, f is not assumed to be surjective, so the fibers are even allowed to be empty.
def IsEvenlyCovered {E : Type u_1} {X : Type u_2} [] [] (f : EX) (x : X) (I : Type u_3) [] :

A point x : X is evenly covered by f : E → X if x has an evenly covered neighborhood.

Equations
• = ( ∃ (t : ), x t.baseSet)
Instances For
noncomputable def IsEvenlyCovered.toTrivialization {E : Type u_1} {X : Type u_2} [] [] {f : EX} {x : X} {I : Type u_3} [] (h : ) :
Trivialization ((f ⁻¹' {x})) f

If x is evenly covered by f, then we can construct a trivialization of f at x.

Equations
• h.toTrivialization = ().transFiberHomeomorph (().preimageSingletonHomeomorph ).symm
Instances For
theorem IsEvenlyCovered.mem_toTrivialization_baseSet {E : Type u_1} {X : Type u_2} [] [] {f : EX} {x : X} {I : Type u_3} [] (h : ) :
x h.toTrivialization.baseSet
theorem IsEvenlyCovered.toTrivialization_apply {E : Type u_1} {X : Type u_2} [] [] {f : EX} {x : E} {I : Type u_3} [] (h : IsEvenlyCovered f (f x) I) :
(h.toTrivialization x).2 = x,
theorem IsEvenlyCovered.continuousAt {E : Type u_1} {X : Type u_2} [] [] {f : EX} {x : E} {I : Type u_3} [] (h : IsEvenlyCovered f (f x) I) :
theorem IsEvenlyCovered.to_isEvenlyCovered_preimage {E : Type u_1} {X : Type u_2} [] [] {f : EX} {x : X} {I : Type u_3} [] (h : ) :
IsEvenlyCovered f x (f ⁻¹' {x})
def IsCoveringMapOn {E : Type u_1} {X : Type u_2} [] [] (f : EX) (s : Set X) :

A covering map is a continuous function f : E → X with discrete fibers such that each point of X has an evenly covered neighborhood.

Equations
Instances For
theorem IsCoveringMapOn.mk {E : Type u_1} {X : Type u_2} [] [] (f : EX) (s : Set X) (F : XType u_3) [(x : X) → TopologicalSpace (F x)] [hF : ∀ (x : X), DiscreteTopology (F x)] (e : (x : X) → x sTrivialization (F x) f) (h : ∀ (x : X) (hx : x s), x (e x hx).baseSet) :
theorem IsCoveringMapOn.continuousAt {E : Type u_1} {X : Type u_2} [] [] {f : EX} {s : Set X} (hf : ) {x : E} (hx : f x s) :
theorem IsCoveringMapOn.continuousOn {E : Type u_1} {X : Type u_2} [] [] {f : EX} {s : Set X} (hf : ) :
theorem IsCoveringMapOn.isLocalHomeomorphOn {E : Type u_1} {X : Type u_2} [] [] {f : EX} {s : Set X} (hf : ) :
def IsCoveringMap {E : Type u_1} {X : Type u_2} [] [] (f : EX) :

A covering map is a continuous function f : E → X with discrete fibers such that each point of X has an evenly covered neighborhood.

Equations
Instances For
theorem isCoveringMap_iff_isCoveringMapOn_univ {E : Type u_1} {X : Type u_2} [] [] {f : EX} :
IsCoveringMapOn f Set.univ
theorem IsCoveringMap.isCoveringMapOn {E : Type u_1} {X : Type u_2} [] [] {f : EX} (hf : ) :
IsCoveringMapOn f Set.univ
theorem IsCoveringMap.mk {E : Type u_1} {X : Type u_2} [] [] (f : EX) (F : XType u_3) [(x : X) → TopologicalSpace (F x)] [∀ (x : X), DiscreteTopology (F x)] (e : (x : X) → Trivialization (F x) f) (h : ∀ (x : X), x (e x).baseSet) :
theorem IsCoveringMap.continuous {E : Type u_1} {X : Type u_2} [] [] {f : EX} (hf : ) :
theorem IsCoveringMap.isLocalHomeomorph {E : Type u_1} {X : Type u_2} [] [] {f : EX} (hf : ) :
theorem IsCoveringMap.isOpenMap {E : Type u_1} {X : Type u_2} [] [] {f : EX} (hf : ) :
theorem IsCoveringMap.quotientMap {E : Type u_1} {X : Type u_2} [] [] {f : EX} (hf : ) (hf' : ) :
theorem IsCoveringMap.isSeparatedMap {E : Type u_1} {X : Type u_2} [] [] {f : EX} (hf : ) :
theorem IsCoveringMap.eq_of_comp_eq {E : Type u_1} {X : Type u_2} [] [] {f : EX} (hf : ) {A : Type u_3} [] {g₁ : AE} {g₂ : AE} (h₁ : ) (h₂ : ) (he : f g₁ = f g₂) (a : A) (ha : g₁ a = g₂ a) :
g₁ = g₂
theorem IsCoveringMap.eqOn_of_comp_eqOn {E : Type u_1} {X : Type u_2} [] [] {f : EX} (hf : ) {A : Type u_3} [] {s : Set A} (hs : ) {g₁ : AE} {g₂ : AE} (h₁ : ContinuousOn g₁ s) (h₂ : ContinuousOn g₂ s) (he : Set.EqOn (f g₁) (f g₂) s) {a : A} (has : a s) (ha : g₁ a = g₂ a) :
Set.EqOn g₁ g₂ s
theorem IsCoveringMap.const_of_comp {E : Type u_1} {X : Type u_2} [] [] {f : EX} (hf : ) {A : Type u_3} [] {g : AE} (cont : ) (he : ∀ (a a' : A), f (g a) = f (g a')) (a : A) (a' : A) :
g a = g a'
theorem IsCoveringMap.constOn_of_comp {E : Type u_1} {X : Type u_2} [] [] {f : EX} (hf : ) {A : Type u_3} [] {s : Set A} (hs : ) {g : AE} (cont : ) (he : as, a's, f (g a) = f (g a')) {a : A} {a' : A} (ha : a s) (ha' : a' s) :
g a = g a'
theorem IsFiberBundle.isCoveringMap {E : Type u_1} {X : Type u_2} [] [] {f : EX} {F : Type u_3} [] [] (hf : ∀ (x : X), ∃ (e : ), x e.baseSet) :
theorem FiberBundle.isCoveringMap {X : Type u_2} [] {F : Type u_3} {E : XType u_4} [] [] [] [(x : X) → TopologicalSpace (E x)] [] :
IsCoveringMap Bundle.TotalSpace.proj