What concept does an open set axiomatise?

Edit, 7/10/11: The idea below was recently also discussed in this blog post by Michael O'Connor.


This was thoroughly discussed on MathOverflow. The answers that I found most convincing can be summarized as follows: open sets axiomatize the notion of a semidecidable property.

That is, open sets axiomatize the notion of a condition whose truth can be verified in finite time (but whose falsehood cannot necessarily be verified in finite time). A continuous function $f : A \to B$ between two spaces is a function such that the preimage of any semidecidable subset is semidecidable, hence is a computable function in the sense that a decision procedure to verify whether $f(a) \in U \subset B$ in finite time gives a decision procedure to verify whether $a \in V \subset A$ in finite time.

To really make sense of what I just said above you should think of $A$ as the set of possible conditions of some system, $f$ as a measurement of some property of the system, and $B$ as the set of possible values of the property you're measuring. Then $f$ is computable precisely when information about $f(a)$ allows us to deduce information about $a$. In some sense it is the central premise of the scientific method that this is possible.

Note that the above description really brings out the special role of the Sierpinski space $\mathbb{S}$. Indeed, a subset of a topological space $X$ is open precisely when the indicator function $X \to \mathbb{S}$ is continuous.

Onto the axioms:

  • The union of an arbitrary collection of open sets is open because any decision procedures to verify conditions $U_i, i \in I$ in finite time can be run in parallel to verify condition $\bigcup U_i$ in finite time.
  • The intersection of a finite collection, but not necessarily an infinite collection, of open sets is open because a finite number of decision procedures to verify conditions $U_1, ... U_n$ in finite time can be run in parallel to verify condition $\bigcap U_i$ in finite time, but this is not necessarily true of an infinite number of decision procedures, which may take an unbounded amount of time to all complete.
  • The empty set and the entire space are open because both of these conditions can be verified in zero time.

Finally, note that it is intuitively possible to verify whether a point in a metric space lies in an open ball in finite time by showing that it lies in an even smaller open ball (which can be done using finite-precision computations), but it is not necessarily possible to do the same for a closed ball because the point may lie on the boundary and we cannot make arbitrarily precise measurements in finite time.

In the particular case of the Zariski topology, it is always possible to verify in finite time whether a polynomial is nonzero at a point by computing with sufficient precision, but without additional information it is not necessarily possible to verify in finite time whether a polynomial is zero at a point.


I just want to give an example to the Qiaochu's beautiful answer.

In Jet Nestruev's book there is following physical interpretation of structures on smooth manifold (or rather how physical system can be modeled with smooth manifold):

  • physical system = manifold $M$
  • state of system = point of $M,$ $x\in M$
  • measuring device = function on $M,$ $f:M\to\mathbb{R}$ (smooth, but stick to continuous ones)

Connecting this with Qiaochu's answer we get additional interpretation

  • condition $C$ on system such that verifying if state satisfies $C$ only requires finite amount of measuring devices = open set in $M,$ $U\subset M.$

Just wanted to add some clarification to Qiachou Yuan's enlightening answer:


  • The union of an arbitrary collection of open sets is open because any decision procedures to verify conditions Ui,i∈I U i , i ∈ I in finite time can be run in parallel to verify condition ⋃Ui ⋃ U i in finite time.
  • The intersection of a finite collection, but not necessarily an infinite collection, of open sets is open because a finite number of decision procedures to verify conditions U1,...Un U 1 , . . . U n in finite time can be run in parallel to verify condition ⋂Ui ⋂ U i in finite time, but this is not necessarily true of an infinite number of decision procedures, which may take an unbounded amount of time to all complete.
  • The empty set and the entire space are open because both of these conditions can be verified in zero time.

In response to Zhen Lin's comment:


Sorry to resurrect an old question, but I just realised that the analogy is not quite so clear. It's reasonable enough to say that the union of a countable collection of semidecidable sets is again semidecidable, by a standard interleaving argument... but it's not clear that an uncountable union of semidecidable sets should be semidecidable. – Zhen Lin Jun 2 '11 at 17:21

@Zhen: you can run an arbitrary number of decision procedures in parallel. (This is a fairly idealized model of computation.) I'm not sure what you mean by "a standard interleaving argument." – Qiaochu Yuan Jun 2 '11 at 17:23 6

Hmmm. It's more idealised that Turing machines, that's for sure! By interleaving argument, I mean the following: Let P1,P2,P3,… P 1 , P 2 , P 3 , … be decision procedures. Then we can construct a single decision procedure P P which halts when some Pn P n halts in this fashion: First, run the step 1 1 of P1 P 1 , then run step 1 1 of P2 P 2 and step 2 2 of P1 P 1 , and then run step 1 1 of P3 P 3 , step 2 2 of P2 P 2 , and step 3 3 of P1 P 1 , and so on. I'm not entirely certain this is permitted in the Turing machine model, but it seems reasonable enough. – Zhen Lin Jun 2 '11 at 17:30 1

@Zhen: yes, this isn't a Turing machine model. – Qiaochu Yuan Jun 2 '11 at 18:28


Like Qiachou Yuan said, you can verify the openness of the union of arbitrary open sets in finite time by running the decision procedures for each Ui,i∈I in parallel (the total time would be equal to the slowest verification procedure).

However, this is not the case for an arbitrary intersection of open sets. This is because any decision procedure for verifying an intersection requires at least 2 open sets (to calculate the overlap). You could try to run this in parallel by computing the intersections of pairs of open sets, and then computing the intersections of the intersections, and so on. However, for an infinite collection of open sets, this process would have to continue indefinitely (to visualize this, remember that counting the integers by 2's - 0, 2, 4, ... - still produces a countably infinite set).

It's okay to run infinitely many decision processes in parallel (because we are already dealing with infinite spaces), but for infinite intersections even the parallel process wouldn't terminate.