§ Finite topologies and DFS numbering
In this great math overflow question on
How to think about non hausdorff topologies in the finite case, there's an answer that encourages us
to think of them as preorders, which are basically graphs. I wanted to understand
this perspective, as well as connect it to DFS numbers, since they provide a
nice way to embed these topologies into R.
§ Closure axioms of topology
We can axiomatize a topology using the kurotawski closure axioms. We need an
idempotent monotonic function c:2X→2X which satisfies some
technical conditions. Formally:
- c(∅)=∅) [c is a strict function: it takes bottoms to bottoms]
- A⊆c(A). [monotonicity]
- c is idempotent: c(c(A))=c(A). [idempotence]
- for all A,B in X, c(A∪B)=c(A)∪c(B).
Under this, a set is closed if it is a fixed point of c: That is, a set A
is closed iff c(A)=A.
§ Slight weakening into Single axiom version
Interestingly, this also gives a single axiom version of topological axioms,
something that maybe useful for machine learning. The single axiom is that
for all A,B⊆X, A∪c(A)∪c(C(B))⊆c(A∪B).
This does not provide that c(∅)=∅, but it does provide
the other axioms [2-4].
§ Continuous functions
A function is continuous iff f(c(A))⊆c′(f(A)) for every A∈X.
TODO: give examples of why this works, and why we need (⊆) and not just (eq).
§ Finite topologies as preorders
We draw an arrow x→y iff x∈Closure(y). Alternatively stated,
draw an arrow iff Closure(x)⊆Closure(y). That is, we have an injection
from the closure of x into the closure of y, and the arrow represents
the injection. Alternatively, we can think of
this as ordering the elements x by "information". A point x has less information
than point y if its closure has fewer points.
§ T0 in terms of closure:
- X is T0 iff for points p,q∈X, we have an open set O which containsone of the points but not the other. Formally,either p∈O∧q∈O, or p∈O∧q∈O.
- Example of a T0 space is the sierpinski space.Here, we have the open set {⊥} by considering the computation
f(thunk) = force(thunk)
. For more on this perspective, see [Topology isreally about computation ](#topology-is-really-about-computation--part-1).This open set contains only ⊥ and not ⊤. - Closure definition: X is T0 iff x=y⟹c({x})=c({y})
§ T1 in terms of closure:
- X is T1 iff for all p,q in X, we have open sets Up,Uq such thatUp,Uq are open neighbourhoods of p,q which do not contain the "other point".Formally, we need p∈Up and q∈Up, and similarly q∈Uq and p∈Uq.That is, Up and Uq can split p,q apart, but Up and Uq need notbe disjoint.
- Example of T1 is the zariski/co-finite topology on Z, wherethe open sets are complements of finite sets. Given two integers p,q, use theopen sets as the complements of the closed finite sets Up={q}C=Z−q, and Uq={p}C=Z−p. These separate p and q,but have huge intersection: Up∩Uq=Z−{p,q}.
- Closure definition: X is T1 iff c({x})={x}.
- T1 has all singleton sets as closed
§ Haussdorf (T2) in terms of closure
- X ix T1 iff for all p,q in X, we have open set Up,Uq such thatthey are disjoint (Up∩Uq=∅) and are neighbourhoods of p, q:p∈Up and q∈Uq.
- Example of a T2 space is that of the real line, where any two points p,qcan be separated with epsilon balls with centers p,q and radii (p−q)/3.
- Closure definition: X is T2 iff x=y implies there is a set A∈2X such thatx∈c(A)∧y∈c(X−A) where X−A is the set complement.
§ Relationship between DFS and closure when the topology is T0
If the topology is T0, then we know that the relation will be a poset,
and hence the graph will be a DAG. Thus, whenever we have x→y, we
will get
§ DFS: the T0 case
§ DFS: the back edges