Many problems of mathematics ask for an infinite object satisfying conditions that can each be refuted in finite time: a coloring of an infinite graph in which no two adjacent vertices share a color, a completion of a consistent theory, a separating set for two disjoint c.e. sets. The set of solutions of such a problem is a class: the set of infinite paths through a computable binary tree. This lesson defines trees, the topology of Cantor space, and the classes, and proves weak König’s lemma, which guarantees that an infinite binary tree has a path. The rest of the course studies how complex these paths must be.
1.1 Binary trees
We use the notation for strings of Computation relative to an oracle: is the prefix relation, the length, and the cylinder of the sequences extending . We also write for the set of strings of length , and for the set of strings of length at most .
A binary tree is a set closed under prefixes: if and , then . Its elements are nodes. A path through is a sequence all of whose prefixes belong to ; the class of paths is written . A node is extendible if , that is, if some path goes through it.
Every infinite binary tree has a path.
Let be an infinite binary tree. Say that a node is large if infinitely many nodes of extend it. The root is large, since is infinite. If is large, then one of and is large: every node extending other than itself extends one of them, and they cannot both have finitely many extensions in . Define by induction: is if is large, and otherwise. By induction, every is large, hence in , so .
The proof chooses, at each step, a branch with infinitely many nodes above it, a question that cannot be decided by an algorithm in general. The course measures exactly how much computational power this choice requires.
1.2 The topology of Cantor space
A class is open if it is a union of cylinders: for some set of strings , written . A class is closed if its complement is open.
These are the open and closed sets of the product topology on . The cylinders are both open and closed: the complement of is the union of the cylinders with , .
A class is closed if and only if for some binary tree . One can take , whose nodes are all extendible.
If , its complement is the union of the cylinders with : a sequence is not a path exactly when one of its prefixes is not in . So is closed. Conversely, let be closed, with complement , and let , a tree. Clearly . If , then for some ; but is in , so for some , and , a contradiction.
Cantor space is compact: if , then already for a finite . More generally, every closed class is compact, and a decreasing sequence of non-empty closed classes has a non-empty intersection.
Let be the set of strings having no prefix in , a tree. Its paths are the sequences not covered by , so , and is finite by Lemma 1.2. Let exceed the lengths of its nodes. Every string of length is then outside , so it has a prefix in , of length at most ; the finitely many such prefixes form . The same argument applies to a cover of a closed class , using the tree . For the last statement, if , the complements of the form an open cover of , so finitely many of them cover it, and since they increase, one of them does; then for some .
1.3 Π⁰₁ classes
A class is a class if for some computable binary tree . A class is a class with a c.e. set of strings. An index of a class is an index of the characteristic function of such a tree .
For , the following are equivalent:
- is a class;
- for some co-c.e. tree ;
- for some computable relation on strings;
- for some ;
- the complement of is a class.
Moreover, the passages between these descriptions are uniform in indices.
(1 ⇒ 2) A computable tree is co-c.e.
(2 ⇒ 5) The complement of is , and is c.e.
(5 ⇒ 4) If the complement is with c.e., let be the functional which, with oracle , enumerates and halts as soon as it finds a string with . Then if and only if .
(4 ⇒ 3) Let be "". It is computable, and by Proposition 1.5 of “Computation relative to an oracle”, if and only if for every .
(3 ⇒ 1) Let . It is a computable tree, and if and only if for every .
All steps transform indices by computable functions.
- Let and be disjoint c.e. sets. The class of separating sets is : if and only if some has or some has , a condition on prefixes of .
- The class is , by the same argument; its elements are the diagonally non-computable -valued functions.
- A singleton with computable is a class, with tree .
Given an index of a computable tree , the property is : if and only if has no node of some length . Consequently, the set of such that is c.e., and the extendible nodes of a computable tree form a co-c.e. set.
By Lemma 1.2, if and only if is finite, if and only if some length has no node in , since is closed under prefixes. For a given , this is decided by testing the strings of length . For the class , the tree of Proposition 1.7 is computable, uniformly in , so its emptiness is a property of . (By contrast, the set of such that is the characteristic function of a tree without paths is not c.e.: the set of indices of total functions reduces to it.) A node is not extendible if and only if the computable tree has no path, which is a condition, uniformly in .
This is a consequence of compactness: emptiness of a class, a priori a statement about all sequences , is in fact . Non-emptiness, which asks for an infinite path, is accordingly a property: a finite amount of computation can show that a class is empty, never that it is non-empty.
1.4 Exercises
Show that the intersection of two classes, and the union of two classes, are classes, uniformly in indices.
Solution
If and with and computable trees, then and . The first equality is immediate. For the second, a path of that is not a path of has a prefix ; all its longer prefixes are then outside , hence in , and its shorter prefixes are prefixes of nodes of , hence in ; so it is a path of .
Show that a class is if and only if the set of strings with is c.e., and is closed.
Solution
If with computable, then is the property of Proposition 1.9, uniformly in . Conversely, if is closed and is c.e., then the complement of is : a sequence outside the closed class has a cylinder neighborhood disjoint from . So the complement is a class, and is by Proposition 1.7.
1.5 Notes and references
König’s lemma is due to Dénes Kőnig (1927). classes were studied systematically from the 1950s, notably by Kleene, Kreisel and Shoenfield, and the theory of their members by Jockusch and Soare (1972). Cenzer and Remmel’s survey gives a broad account.
- D. Kőnig, Über eine Schlussweise aus dem Endlichen ins Unendliche, Acta Scientiarum Mathematicarum (Szeged) 3 (1927), 121–130.
- C. G. Jockusch and R. I. Soare, Π⁰₁ classes and degrees of theories, Transactions of the American Mathematical Society 173 (1972), 33–56.
- D. Cenzer and J. B. Remmel, Π⁰₁ classes in mathematics, in Handbook of Recursive Mathematics, Volume 2, Studies in Logic 139, North-Holland, 1998, 623–821.