Dense embeddings
This file defines three properties of functions:
dense_range fmeansfhas dense image;dense_inducing imeansiis alsoinducing;dense_embedding emeanseis also anembedding.
The main theorem continuous_extend gives a criterion for a function
f : X → Z to a regular (T₃) space Z to extend along a dense embedding
i : X → Y to a continuous function g : Y → Z. Actually i only
has to be dense_inducing (not necessarily injective).
f : α → β has dense range if its range (image) is a dense subset of β.
Equations
- dense_range f = ∀ (x : β), x ∈ closure (set.range f)
If f : α → β has dense range and β contains some element, then α must too.
Equations
- df.inhabited b = {default := classical.choice _}
- to_inducing : inducing i
- dense : dense_range i
i : α → β is "dense inducing" if it has dense range and the topology on α
is the one induced by i from the topology on β.
The product of two dense inducings is a dense inducing
γ -f→ α g↓ ↓e δ -h→ β
If i : α → β is a dense inducing, then any function f : α → γ "extends"
to a function g = extend di f : β → γ. If γ is Hausdorff and f has a
continuous extension, then g is the unique such extension. In general,
g might not be continuous or even extend f.
Equations
- di.extend f b = lim (filter.comap i (nhds b)) f
- to_dense_inducing : dense_inducing e
- inj : function.injective e
A dense embedding is an embedding with dense image.
The product of two dense embeddings is a dense embedding
The dense embedding of a subtype inside its closure.
Equations
- dense_embedding.subtype_emb p e x = ⟨e ↑x, _⟩
Two continuous functions to a t2-space that agree on the dense range of a function are equal.