Binary trees model problems with two choices at each step. Many problems have more: a coloring of a graph with colors, a function bounded by a known bound, or a sequence of integers with no a priori bound at all. This lesson considers trees of finite sequences of integers. When the branching is bounded by a computable function, nothing changes: the paths of such a tree are, up to a computable coding, the members of a class. When the branching is finite but not computably bounded, König’s lemma still guarantees a path, but finding one may require computing the halting set.
5.1 Trees of integers
Write for the set of finite sequences of integers, with the same notation as for binary strings, and for Baire space, the set of infinite sequences of integers. A tree is a subset closed under prefixes, and a path through is a sequence all of whose prefixes belong to . A tree is finitely branching if every node has finitely many immediate successors . It is computably bounded if there is a computable function with for every and .
Every infinite finitely branching tree has a path.
Call a node large if infinitely many nodes of extend it. The root is large. If is large, then since the nodes extending , other than , extend one of its finitely many successors, one successor is large. Define as the least such that is large. By induction every prefix of is large, hence in .
The hypothesis of finite branching is necessary: the tree is infinite and has no path (see the quiz after Lemma 1.2).
5.2 Coding into binary trees
We code a sequence of integers by a binary sequence, writing each value in unary followed by a separator:
This is the coding of Proposition 5.2 of “The cardinality of the continuum”. The map is a bijection from onto the sequences with infinitely many zeros, and , uniformly: each bit of is computed from finitely many values of , and is the length of the -th block of ones of .
Let be a computable finitely branching tree, and let be the set of binary strings that are prefixes of some with .
- is a c.e. binary tree, and .
- If is computably bounded, then is computable, so is a class.
is closed under prefixes by definition. A binary string decomposes uniquely as , with the sequence of complete blocks and . Then if and only if and, in case , some has . This is a c.e. condition, and it is decidable when is computably bounded by , since then only the values need to be tested.
If , every prefix of is a prefix of some , so . Conversely, let . If had only finitely many zeros, it would end with after some , and would have successors with arbitrarily large , contradicting finite branching. So for some , and every prefix of is in , which by the decomposition means . So .
Let be an infinite computable computably bounded tree. Every PA set computes a path through , and has a low path and a computably dominated path.
is a non-empty class by Proposition 5.2 and Lemma 5.1. A PA set computes a member of it (Theorem 4.2), hence the path . Similarly, the basis theorems give a member that is low, or computably dominated, and .
5.3 Unbounded branching
There is a computable finitely branching tree , in which every node has at most two successors, with exactly one path, and this path computes .
Let , and for let be the least with . Let be the set of sequences such that for every , either where is the least stage with , or and .
is computable: each condition is decidable. It is closed under prefixes, since implies for . Each node has at most two successors, since at position only the values and are possible.
The sequence with for and for is a path: every prefix satisfies the conditions. Conversely, let be a path. If , then . If , then for every , so . Hence , and is the first component of .
There is a low PA set that computes no path through some infinite computable finitely branching tree.
A low set does not compute (Proposition 6.2 of “Low and high sets”). Take a low PA set (Corollary 4.3) and the tree of Theorem 5.4.
The tree has as simple a shape as a binary tree: each node has at most two successors. What makes it harder is the lack of information about the successors: given a node, no algorithm bounds the values of its successors. The bound is computable in , which leads to the following characterization.
A set computes a path through every infinite computable finitely branching tree if and only if is PA relative to (Exercise 4.6).
() Let be an infinite computable finitely branching tree. The binary tree of Proposition 5.2 is c.e., hence computable in , and is non-empty. So is a non-empty class, and , being PA relative to , computes a member , by Theorem 4.2 relativized to . Then computes .
() By the same characterization relativized, it suffices to show that computes a member of every non-empty class , with a binary tree computable in . By the limit lemma (Shoenfield's limit lemma), has a approximation ; replacing by the set of strings of length at most all of whose prefixes are in , we may assume that each is a tree contained in , and it is still an approximation of . Let .
. Since , . Let and . For each , belongs to some , with since , and then . So for infinitely many , hence , as converges.
A finitely branching tree. For , let be the least with . Let be the set of sequences such that, for every , . is computable, since is decided by testing and for . It is a tree, and each node has at most two successors, one for each bit. Its paths are the sequences for , and each such path computes by reading the first components. It is infinite since .
So computes a path through , hence a member of .
So the computational strength of König’s lemma for computable finitely branching trees is that of PA degrees relative to , while weak König’s lemma, for binary trees, corresponds to the PA degrees. In reverse mathematics, this difference is the difference between the systems and .
5.4 Exercises
Show that every infinite computable finitely branching tree has a path computable in .
Solution
is PA relative to : the function if , and otherwise, is computable in and is relative to . Apply Theorem 5.6.
Show that if is PA relative to , then computes .
Solution
By Exercise 4.6, applied with in place of , a set that is PA relative to computes . Alternatively, computes a path through the tree of Theorem 5.4, by Theorem 5.6, and this path computes .
5.5 Notes and references
König’s lemma is due to Kőnig (1927). The coding of computably bounded trees and the analysis of finitely branching trees are standard; Jockusch and Soare (1972) and Simpson’s book on reverse mathematics treat these questions, the latter in the setting of second-order arithmetic.
- 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.
- S. G. Simpson, Subsystems of Second Order Arithmetic, 2nd edition, Cambridge University Press, 2009.