Open sets #
Summary #
We define the subtype of open sets in a topological space.
Main Definitions #
Bundled open sets #
TopologicalSpace.Opens α
is the type of open subsets of a topological spaceα
.TopologicalSpace.Opens.IsBasis
is a predicate saying that a set ofOpens
s form a topological basis.TopologicalSpace.Opens.comap
: preimage of an open set under a continuous map as aFrameHom
.Homeomorph.opensCongr
: order-preserving equivalence between open sets in the domain and the codomain of a homeomorphism.
Bundled open neighborhoods #
TopologicalSpace.OpenNhdsOf x
is the type of open subsets of a topological spaceα
containingx : α
.TopologicalSpace.OpenNhdsOf.comap f x U
is the preimage of open neighborhoodU
off x
underf : C(α, β)
.
Main results #
We define order structures on both Opens α
(CompleteLattice
, Frame
) and OpenNhdsOf x
(OrderTop
, DistribLattice
).
TODO #
- Rename
TopologicalSpace.Opens
toOpen
? - Port the
auto_cases
tactic version (as a plugin if the portedauto_cases
will allow plugins).
The type of open subsets of a topological space.
- carrier : Set α
The underlying set of a bundled
TopologicalSpace.Opens
object. - is_open' : IsOpen self.carrier
The
TopologicalSpace.Opens.carrier _
is an open set.
Instances For
The TopologicalSpace.Opens.carrier _
is an open set.
Equations
- TopologicalSpace.Opens.instSetLike = { coe := TopologicalSpace.Opens.carrier, coe_injective' := ⋯ }
Equations
- ⋯ = ⋯
the coercion Opens α → Set α
applied to a pair is the same as taking the first component
See Note [custom simps projection].
Equations
Instances For
The interior of a set, as an element of Opens
.
Equations
- TopologicalSpace.Opens.interior s = { carrier := interior s, is_open' := ⋯ }
Instances For
The galois coinsertion between sets and opens.
Equations
- TopologicalSpace.Opens.gi = { choice := fun (s : Set α) (hs : s ≤ ↑(TopologicalSpace.Opens.interior s)) => { carrier := s, is_open' := ⋯ }, gc := ⋯, u_l_le := ⋯, choice_eq := ⋯ }
Instances For
Equations
- One or more equations did not get rendered due to their size.
Equations
- TopologicalSpace.Opens.instUniqueOfIsEmpty = { toInhabited := TopologicalSpace.Opens.instInhabited, uniq := ⋯ }
Equations
- ⋯ = ⋯
Equations
- TopologicalSpace.Opens.instFrame = let __src := inferInstanceAs (CompleteLattice (TopologicalSpace.Opens α)); Order.Frame.mk ⋯
An open set in the indiscrete topology is either empty or the whole space.
Equations
- ⋯ = ⋯
A set of opens α
is a basis if the set of corresponding sets is a topological basis.
Equations
- TopologicalSpace.Opens.IsBasis B = TopologicalSpace.IsTopologicalBasis (SetLike.coe '' B)
Instances For
If α
has a basis consisting of compact opens, then an open set in α
is compact open iff
it is a finite union of some elements in the basis
The preimage of an open set, as an open set.
Equations
- TopologicalSpace.Opens.comap f = { toFun := fun (s : TopologicalSpace.Opens β) => { carrier := ⇑f ⁻¹' ↑s, is_open' := ⋯ }, map_inf' := ⋯, map_top' := ⋯, map_sSup' := ⋯ }
Instances For
A homeomorphism induces an order-preserving equivalence on open sets, by taking comaps.
Equations
- f.opensCongr = { toFun := ⇑(TopologicalSpace.Opens.comap f.symm.toContinuousMap), invFun := ⇑(TopologicalSpace.Opens.comap f.toContinuousMap), left_inv := ⋯, right_inv := ⋯, map_rel_iff' := ⋯ }
Instances For
Equations
- ⋯ = ⋯
The open neighborhoods of a point. See also Opens
or nhds
.
- carrier : Set α
- is_open' : IsOpen self.carrier
- mem' : x ∈ self.carrier
The point
x
belongs to everyU : TopologicalSpace.OpenNhdsOf x
.
Instances For
The point x
belongs to every U : TopologicalSpace.OpenNhdsOf x
.
Equations
- TopologicalSpace.OpenNhdsOf.instSetLike = { coe := fun (U : TopologicalSpace.OpenNhdsOf x) => ↑U.toOpens, coe_injective' := ⋯ }
Equations
- ⋯ = ⋯
Equations
- TopologicalSpace.OpenNhdsOf.instOrderTop = OrderTop.mk ⋯
Equations
- TopologicalSpace.OpenNhdsOf.instInf = { inf := fun (U V : TopologicalSpace.OpenNhdsOf x) => { toOpens := U.toOpens ⊓ V.toOpens, mem' := ⋯ } }
Equations
- TopologicalSpace.OpenNhdsOf.instSup = { sup := fun (U V : TopologicalSpace.OpenNhdsOf x) => { toOpens := U.toOpens ⊔ V.toOpens, mem' := ⋯ } }
Equations
- TopologicalSpace.OpenNhdsOf.instUniqueOfSubsingleton = { toInhabited := TopologicalSpace.OpenNhdsOf.instInhabited, uniq := ⋯ }
Equations
- TopologicalSpace.OpenNhdsOf.instDistribLattice = Function.Injective.distribLattice TopologicalSpace.OpenNhdsOf.toOpens ⋯ ⋯ ⋯
Preimage of an open neighborhood of f x
under a continuous map f
as a LatticeHom
.
Equations
- One or more equations did not get rendered due to their size.