topology.maps

# Specific classes of maps between topological spaces

This file introduces the following properties of a map f : X → Y between topological spaces:

• is_open_map f means the image of an open set under f is open.
• is_closed_map f means the image of a closed set under f is closed.

(Open and closed maps need not be continuous.)

• inducing f means the topology on X is the one induced via f from the topology on Y. These behave like embeddings except they need not be injective. Instead, points of X which are identified by f are also indistinguishable in the topology on X.
• embedding f means f is inducing and also injective. Equivalently, f identifies X with a subspace of Y.
• open_embedding f means f is an embedding with open image, so it identifies X with an open subspace of Y. Equivalently, f is an embedding and an open map.
• closed_embedding f similarly means f is an embedding with closed image, so it identifies X with a closed subspace of Y. Equivalently, f is an embedding and a closed map.

• quotient_map f is the dual condition to embedding f: f is surjective and the topology on Y is the one coinduced via f from the topology on X. Equivalently, f identifies Y with a quotient of X. Quotient maps are also sometimes known as identification maps.

## Tags

open map, closed map, embedding, quotient map, identification map

structure inducing {α : Type u_1} {β : Type u_2} [tα : topological_space α] [tβ : topological_space β] :
(α → β) → Prop
• induced : =

theorem inducing_id {α : Type u_1}  :

theorem inducing.comp {α : Type u_1} {β : Type u_2} {γ : Type u_3} {g : β → γ} {f : α → β} :
inducing (g f)

theorem inducing_of_inducing_compose {α : Type u_1} {β : Type u_2} {γ : Type u_3} {f : α → β} {g : β → γ} :
inducing (g f)

theorem inducing_open {α : Type u_1} {β : Type u_2} {f : α → β} {s : set α} :
is_open (set.range f)is_open (f '' s)

theorem inducing_is_closed {α : Type u_1} {β : Type u_2} {f : α → β} {s : set α} :
is_closed (f '' s)

theorem inducing.nhds_eq_comap {α : Type u_1} {β : Type u_2} {f : α → β} (hf : inducing f) (a : α) :
𝓝 a = (𝓝 (f a))

theorem inducing.map_nhds_eq {α : Type u_1} {β : Type u_2} {f : α → β} (hf : inducing f) (a : α) :
𝓝 (f a) (𝓝 a) = 𝓝 (f a)

theorem inducing.tendsto_nhds_iff {β : Type u_2} {γ : Type u_3} {ι : Type u_1} {f : ι → β} {g : β → γ} {a : filter ι} {b : β} :
a (𝓝 b) filter.tendsto (g f) a (𝓝 (g b)))

theorem inducing.continuous_iff {α : Type u_1} {β : Type u_2} {γ : Type u_3} {f : α → β} {g : β → γ} :
continuous (g f))

theorem inducing.continuous {α : Type u_1} {β : Type u_2} {f : α → β} :

structure embedding {α : Type u_1} {β : Type u_2} [tα : topological_space α] [tβ : topological_space β] :
(α → β) → Prop
• to_inducing :
• inj :

A function between topological spaces is an embedding if it is injective, and for all s : set α, s is open iff it is the preimage of an open set.

theorem embedding.mk' {α : Type u_1} {β : Type u_2} (f : α → β) :
(∀ (a : α), (𝓝 (f a)) = 𝓝 a)

theorem embedding_id {α : Type u_1}  :

theorem embedding.comp {α : Type u_1} {β : Type u_2} {γ : Type u_3} {g : β → γ} {f : α → β} :
embedding (g f)

theorem embedding_of_embedding_compose {α : Type u_1} {β : Type u_2} {γ : Type u_3} {f : α → β} {g : β → γ} :
embedding (g f)

theorem embedding_open {α : Type u_1} {β : Type u_2} {f : α → β} {s : set α} :
is_open (set.range f)is_open (f '' s)

theorem embedding_is_closed {α : Type u_1} {β : Type u_2} {f : α → β} {s : set α} :
is_closed (f '' s)

theorem embedding.map_nhds_eq {α : Type u_1} {β : Type u_2} {f : α → β} (hf : embedding f) (a : α) :
𝓝 (f a) (𝓝 a) = 𝓝 (f a)

theorem embedding.tendsto_nhds_iff {β : Type u_2} {γ : Type u_3} {ι : Type u_1} {f : ι → β} {g : β → γ} {a : filter ι} {b : β} :
a (𝓝 b) filter.tendsto (g f) a (𝓝 (g b)))

theorem embedding.continuous_iff {α : Type u_1} {β : Type u_2} {γ : Type u_3} {f : α → β} {g : β → γ} :
continuous (g f))

theorem embedding.continuous {α : Type u_1} {β : Type u_2} {f : α → β} :

theorem embedding.closure_eq_preimage_closure_image {α : Type u_1} {β : Type u_2} {e : α → β} (he : embedding e) (s : set α) :
= e ⁻¹' closure (e '' s)

def quotient_map {α : Type u_1} {β : Type u_2} [tα : topological_space α] [tβ : topological_space β] :
(α → β) → Prop

A function between topological spaces is a quotient map if it is surjective, and for all s : set β, s is open iff its preimage is an open set.

Equations
theorem quotient_map.id {α : Type u_1}  :

theorem quotient_map.comp {α : Type u_1} {β : Type u_2} {γ : Type u_3} {g : β → γ} {f : α → β} :
quotient_map (g f)

theorem quotient_map.of_quotient_map_compose {α : Type u_1} {β : Type u_2} {γ : Type u_3} {f : α → β} {g : β → γ} :
quotient_map (g f)

theorem quotient_map.continuous_iff {α : Type u_1} {β : Type u_2} {γ : Type u_3} {f : α → β} {g : β → γ} :
continuous (g f))

theorem quotient_map.continuous {α : Type u_1} {β : Type u_2} {f : α → β} :

def is_open_map {α : Type u_1} {β : Type u_2}  :
(α → β) → Prop

A map f : α → β is said to be an open map, if the image of any open U : set α is open in β.

Equations
theorem is_open_map.id {α : Type u_1}  :

theorem is_open_map.comp {α : Type u_1} {β : Type u_2} {γ : Type u_3} {g : β → γ} {f : α → β} :
is_open_map (g f)

theorem is_open_map.is_open_range {α : Type u_1} {β : Type u_2} {f : α → β} :

theorem is_open_map.image_mem_nhds {α : Type u_1} {β : Type u_2} {f : α → β} (hf : is_open_map f) {x : α} {s : set α} :
s 𝓝 xf '' s 𝓝 (f x)

theorem is_open_map.nhds_le {α : Type u_1} {β : Type u_2} {f : α → β} (hf : is_open_map f) (a : α) :
𝓝 (f a) (𝓝 a)

theorem is_open_map.of_inverse {α : Type u_1} {β : Type u_2} {f : α → β} {f' : β → α} :

theorem is_open_map.to_quotient_map {α : Type u_1} {β : Type u_2} {f : α → β} :

theorem is_open_map_iff_nhds_le {α : Type u_1} {β : Type u_2} {f : α → β} :
∀ (a : α), 𝓝 (f a) (𝓝 a)

def is_closed_map {α : Type u_1} {β : Type u_2}  :
(α → β) → Prop

Equations
theorem is_closed_map.id {α : Type u_1}  :

theorem is_closed_map.comp {α : Type u_1} {β : Type u_2} {γ : Type u_3} {g : β → γ} {f : α → β} :
is_closed_map (g f)

theorem is_closed_map.of_inverse {α : Type u_1} {β : Type u_2} {f : α → β} {f' : β → α} :

theorem is_closed_map.of_nonempty {α : Type u_1} {β : Type u_2} {f : α → β} :
(∀ (s : set α), s.nonemptyis_closed (f '' s))

structure open_embedding {α : Type u_1} {β : Type u_2}  :
(α → β) → Prop

An open embedding is an embedding with open image.

theorem open_embedding.open_iff_image_open {α : Type u_1} {β : Type u_2} {f : α → β} (hf : open_embedding f) {s : set α} :
is_open (f '' s)

theorem open_embedding.is_open_map {α : Type u_1} {β : Type u_2} {f : α → β} :

theorem open_embedding.continuous {α : Type u_1} {β : Type u_2} {f : α → β} :

theorem open_embedding.open_iff_preimage_open {α : Type u_1} {β : Type u_2} {f : α → β} (hf : open_embedding f) {s : set β} :
s (is_open s is_open (f ⁻¹' s))

theorem open_embedding_of_embedding_open {α : Type u_1} {β : Type u_2} {f : α → β} :

theorem open_embedding_of_continuous_injective_open {α : Type u_1} {β : Type u_2} {f : α → β} :

theorem open_embedding_id {α : Type u_1}  :

theorem open_embedding.comp {α : Type u_1} {β : Type u_2} {γ : Type u_3} {g : β → γ} {f : α → β} :
open_embedding (g f)

structure closed_embedding {α : Type u_1} {β : Type u_2}  :
(α → β) → Prop
• to_embedding :
• closed_range :

A closed embedding is an embedding with closed image.

theorem closed_embedding.continuous {α : Type u_1} {β : Type u_2} {f : α → β} :

theorem closed_embedding.closed_iff_image_closed {α : Type u_1} {β : Type u_2} {f : α → β} (hf : closed_embedding f) {s : set α} :

theorem closed_embedding.is_closed_map {α : Type u_1} {β : Type u_2} {f : α → β} :

theorem closed_embedding.closed_iff_preimage_closed {α : Type u_1} {β : Type u_2} {f : α → β} (hf : closed_embedding f) {s : set β} :
s is_closed (f ⁻¹' s))

theorem closed_embedding_of_embedding_closed {α : Type u_1} {β : Type u_2} {f : α → β} :

theorem closed_embedding_of_continuous_injective_closed {α : Type u_1} {β : Type u_2} {f : α → β} :

theorem closed_embedding_id {α : Type u_1}  :

theorem closed_embedding.comp {α : Type u_1} {β : Type u_2} {γ : Type u_3} {g : β → γ} {f : α → β} :
closed_embedding (g f)