§ 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 contains one 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 is really 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 that Up,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 not be disjoint.
- Example of T1 is the zariski/co-finite topology on Z, where the open sets are complements of finite sets. Given two integers p,q, use the open 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 that they 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 that x∈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