Connected subsets of topological spaces #
In this file we define connected subsets of a topological spaces and various other properties and classes related to connectivity.
Main definitions #
We define the following properties for sets in a topological space:
IsConnected
: a nonempty set that has no non-trivial open partition. See also the section below in the module doc.connectedComponent
is the connected component of an element in the space.
We also have a class stating that the whole space satisfies that property: ConnectedSpace
On the definition of connected sets/spaces #
In informal mathematics, connected spaces are assumed to be nonempty.
We formalise the predicate without that assumption as IsPreconnected
.
In other words, the only difference is whether the empty space counts as connected.
There are good reasons to consider the empty space to be “too simple to be simple”
See also https://ncatlab.org/nlab/show/too+simple+to+be+simple,
and in particular
https://ncatlab.org/nlab/show/too+simple+to+be+simple#relationship_to_biased_definitions.
A connected set is one that is nonempty and where there is no non-trivial open partition.
Equations
- IsConnected s = (s.Nonempty ∧ IsPreconnected s)
Instances For
If any point of a set is joined to a fixed point by a preconnected subset, then the original set is preconnected as well.
If any two points of a set are contained in a preconnected subset, then the original set is preconnected as well.
A union of a family of preconnected sets with a common point is preconnected as well.
The directed sUnion of a set S of preconnected subsets is preconnected.
The biUnion of a family of preconnected sets is preconnected if the graph determined by whether two sets intersect is preconnected.
The biUnion of a family of preconnected sets is preconnected if the graph determined by whether two sets intersect is preconnected.
Preconnectedness of the iUnion of a family of preconnected sets indexed by the vertices of a preconnected graph, where two vertices are joined when the corresponding sets intersect.
The iUnion of connected sets indexed by a type with an archimedean successor (like ℕ
or ℤ
)
such that any two neighboring sets meet is preconnected.
The iUnion of connected sets indexed by a type with an archimedean successor (like ℕ
or ℤ
)
such that any two neighboring sets meet is connected.
The iUnion of preconnected sets indexed by a subset of a type with an archimedean successor
(like ℕ
or ℤ
) such that any two neighboring sets meet is preconnected.
The iUnion of connected sets indexed by a subset of a type with an archimedean successor
(like ℕ
or ℤ
) such that any two neighboring sets meet is preconnected.
Theorem of bark and tree: if a set is within a preconnected set and its closure, then it is
preconnected as well. See also IsConnected.subset_closure
.
Theorem of bark and tree: if a set is within a connected set and its closure, then it is
connected as well. See also IsPreconnected.subset_closure
.
The closure of a preconnected set is preconnected as well.
The closure of a connected set is connected as well.
The image of a preconnected set is preconnected as well.
The image of a connected set is connected as well.
Preconnected sets are either contained in or disjoint to any given clopen set.
If a preconnected set s
intersects an open set u
, and limit points of u
inside s
are
contained in u
, then the whole set s
is contained in u
.
The connected component of a point is the maximal connected set that contains this point.
Equations
- connectedComponent x = ⋃₀ {s : Set α | IsPreconnected s ∧ x ∈ s}
Instances For
Given a set F
in a topological space α
and a point x : α
, the connected
component of x
in F
is the connected component of x
in the subtype F
seen as
a set in α
. This definition does not make sense if x
is not in F
so we return the
empty set in this case.
Equations
- connectedComponentIn F x = if h : x ∈ F then Subtype.val '' connectedComponent ⟨x, h⟩ else ∅
Instances For
A preconnected space is one where there is no non-trivial open partition.
- isPreconnected_univ : IsPreconnected Set.univ
The universal set
Set.univ
in a preconnected space is a preconnected set.
Instances
The universal set Set.univ
in a preconnected space is a preconnected set.
A connected space is a nonempty one where there is no non-trivial open partition.
- isPreconnected_univ : IsPreconnected Set.univ
- toNonempty : Nonempty α
A connected space is nonempty.
Instances
A connected space is nonempty.
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
A continuous map from a connected space to a disjoint union Σ i, π i
can be lifted to one of
the components π i
. See also ContinuousMap.exists_lift_sigma
for a version with bundled
ContinuousMap
s.
In a preconnected space, any disjoint family of non-empty clopen subsets has at most one element.
In a preconnected space, any disjoint cover by non-empty open subsets has at most one element.
In a preconnected space, any finite disjoint cover by non-empty closed subsets has at most one element.
In a preconnected space, given a transitive relation P
, if P x y
and P y x
are true
for y
close enough to x
, then P x y
holds for all x, y
. This is a version of the fact
that, if an equivalence relation has open classes, then it has a single equivalence class.
In a preconnected space, if a symmetric transitive relation P x y
is true for y
close
enough to x
, then it holds for all x, y
. This is a version of the fact that, if an equivalence
relation has open classes, then it has a single equivalence class.
In a preconnected set, given a transitive relation P
, if P x y
and P y x
are true
for y
close enough to x
, then P x y
holds for all x, y
. This is a version of the fact
that, if an equivalence relation has open classes, then it has a single equivalence class.
In a preconnected set, if a symmetric transitive relation P x y
is true for y
close
enough to x
, then it holds for all x, y
. This is a version of the fact that, if an equivalence
relation has open classes, then it has a single equivalence class.
A set s
is preconnected if and only if for every cover by two open sets that are disjoint on
s
, it is contained in one of the two covering sets.
A set s
is connected if and only if
for every cover by a finite collection of open sets that are pairwise disjoint on s
,
it is contained in one of the members of the collection.
Preconnected sets are either contained in or disjoint to any given clopen set.
A set s
is preconnected if and only if
for every cover by two closed sets that are disjoint on s
,
it is contained in one of the two covering sets.
A closed set s
is preconnected if and only if for every cover by two closed sets that are
disjoint, it is contained in one of the two covering sets.
The connected component of a point is always a subset of the intersection of all its clopen neighbourhoods.
A clopen set is the union of its connected components.
The preimage of a connected component is preconnected if the function has connected fibers and a subset is closed iff the preimage is.
The setoid of connected components of a topological space
Equations
- connectedComponentSetoid α = { r := fun (x y : α) => connectedComponent x = connectedComponent y, iseqv := ⋯ }
Instances For
The quotient of a space by its connected components
Equations
Instances For
Coercion from a topological space to the set of connected components of this space.
Equations
- ConnectedComponents.mk = Quotient.mk''
Instances For
Equations
- ConnectedComponents.instCoeTC = { coe := ConnectedComponents.mk }
Equations
- ConnectedComponents.instInhabited = { default := ConnectedComponents.mk default }
Equations
- ConnectedComponents.instTopologicalSpace = inferInstanceAs (TopologicalSpace (Quotient (connectedComponentSetoid α)))
The preimage of a singleton in connectedComponents
is the connected component
of an element in the equivalence class.
The preimage of the image of a set under the quotient map to connectedComponents α
is the union of the connected components of the elements in it.
If every map to Bool
(a discrete two-element space), that is
continuous on a set s
, is constant on s, then s is preconnected
A PreconnectedSpace
version of isPreconnected_of_forall_constant