§ 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\mathbb R.

§ Closure axioms of topology

We can axiomatize a topology using the kurotawski closure axioms. We need an idempotent monotonic function c:2X2Xc: 2^X \rightarrow 2^X which satisfies some technical conditions. Formally:
  1. c()=)c(\emptyset) = \emptyset) [cc is a strict function: it takes bottoms to bottoms]
  2. Ac(A)A \subseteq c(A). [monotonicity]
  3. cc is idempotent: c(c(A))=c(A)c(c(A)) = c(A). [idempotence]
  4. for all A,BA, B in XX, c(AB)=c(A)c(B)c(A \cup B) = c(A) \cup c(B).
Under this, a set is closed if it is a fixed point of cc: That is, a set AA is closed iff c(A)=Ac(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,BXA, B \subseteq X, Ac(A)c(C(B))c(AB)A \cup c(A) \cup c(C(B)) \subseteq c(A \cup B). This does not provide that c()=c(\emptyset) = \emptyset, but it does provide the other axioms [2-4].

§ Continuous functions

A function is continuous iff f(c(A))c(f(A))f(c(A)) \subseteq c'(f(A)) for every AXA \in X. TODO: give examples of why this works, and why we need ()(\subseteq) and not just (eq)(eq).

§ Finite topologies as preorders

We draw an arrow xyx \rightarrow y iff xClosure(y)x \in Closure(y). Alternatively stated, draw an arrow iff Closure(x)Closure(y)Closure(x) \subseteq Closure(y). That is, we have an injection from the closure of xx into the closure of yy, and the arrow represents the injection. Alternatively, we can think of this as ordering the elements xx by "information". A point xx has less information than point yy if its closure has fewer points.

§ T0 in terms of closure:

  • XX is T0T_0 iff for points p,qXp, q \in X, we have an open set OO which containsone of the points but not the other. Formally,either pOq∉Op \in O \land q \not \in O, or p∉OqOp \not \in O \land q \in O.
  • Example of a T0T_0 space is the sierpinski space.Here, we have the open set {}\{ \bot \} by considering the computationf(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 \bot and not \top.
  • Closure definition: XX is T0T_0 iff xy    c({x})c({y})x \neq y \implies c(\{x\}) \neq c(\{y\})

§ T1 in terms of closure:

  • XX is T1T_1 iff for all p,qp, q in XX, we have open sets Up,UqU_p, U_q such thatUp,UqU_p, U_q are open neighbourhoods of p,qp, q which do not contain the "other point".Formally, we need pUpp \in U_p and q∉Upq \not \in U_p, and similarly qUqq \in U_q and p∉Uqp \not \in U_q.That is, UpU_p and UqU_q can split p,qp, q apart, but UpU_p and UqU_q need notbe disjoint.
  • Example of T1T_1 is the zariski/co-finite topology on Z\mathbb Z, wherethe open sets are complements of finite sets. Given two integers p,qp, q, use theopen sets as the complements of the closed finite sets Up={q}C=ZqU_p = \{q\}^C = \mathbb Z - q, and Uq={p}C=ZpU_q = \{p\}^C = \mathbb Z - p. These separate pp and qq,but have huge intersection: UpUq=Z{p,q}U_p \cap U_q = Z - \{ p, q\}.
  • Closure definition: XX is T1T_1 iff c({x})={x}c(\{x\}) = \{x\}.
  • T1 has all singleton sets as closed

§ Haussdorf (T2) in terms of closure

  • XX ix T1T_1 iff for all p,qp, q in XX, we have open set Up,UqU_p, U_q such thatthey are disjoint (UpUq=U_p \cap U_q = \emptyset) and are neighbourhoods of pp, qq:pUpp \in U_p and qUqq \in U_q.
  • Example of a T2T_2 space is that of the real line, where any two points p,qp, qcan be separated with epsilon balls with centers p,qp, q and radii (pq)/3(p - q) / 3.
  • Closure definition: XX is T2T_2 iff xyx \neq y implies there is a set A2XA \in 2^X such thatx∉c(A)y∉c(XA)x \not \in c(A) \land y \not \in c(X - A) where XAX - A is the set complement.

§ Relationship between DFS and closure when the topology is T0T0

If the topology is T0T0, then we know that the relation will be a poset, and hence the graph will be a DAG. Thus, whenever we have xyx \rightarrow y, we will get

§ DFS: the T0 case

§ DFS: the back edges