Descriptive Set Theory
Total Page:16
File Type:pdf, Size:1020Kb
Descriptive Set theory by George Barmpalias Institute for Language, Logic and Computation Lectures 9-13 (last updated: 30 of November 2009) Hyperarithmetic theory 1 The class ∆1 is of fundamental importance in many branches of mathematical logic. These are called the hyperarithmetic sets because they can be shown to be a constructive extension of the arithmetical class. 1 . in the same way that ∆1 was obtained by extending the finite Borel classes into the transfinite. This is just one of the many striking analogies between the 1 1 classes ∆1, ∆1 and the theories behind them. 1 We get the theorems about ∆1 by ‘effectivizing’ (i.e., 1 constructivising) the arguments about ∆1. This often requires a fair amount of recursion/computability theory. Remember that the difference between the boldface and the lightface theory is that the operations in the lightface theory have to be computable (effective unions, intersections) while in the boldface theory this restriction is not there. 1 Up to the Borel level ∆1 operations (unions, intersections) are countable. 1 1 But in the projective classes Σ1; Σ2;::: and the analytical 1 1 classes Σ1; Σ2;::: the operations become uncountable. The set of Borel codes can be defined as the smallest class of reals which contains the codes for closed sets and is closed under the operations of ‘union’ and ‘complement’ (as these were defined when we defined the notion of ‘α codes Borel set A’). By transfinite induction we can show that a set is Borel iff there is a Borel code α such that the the relation ‘α codes Borel set A’ holds (as this was defined formally). Also you can stratify the Borel codes α according to the length of the tree Tα. If α is a Borel code, then Tα is well founded and has countable length. Hence we have a hierarchy of Borel codes of length @1. Using the current methods it can be shown that the levels in the hierarchy of Borel codes correspond to the transfinite hierarchy of Borel classes. 1 We showed that if B has Borel code α then it is ∆1 in parameter α. How about restricting ourselves to the computable Borel codes α? 1 In that case B is ∆1 without parameter. 1 Is the converse true? Does every ∆1 set have a recursive Borel code? We will answer this question in the positive, by ‘effectivizing’ the methods we have seen. Read what follows against the theory used above to show that 1 ∆1 is the Borel class. Computability-theoretic details are replaced by intuitive descriptions (as computability theory was not required for this course). Definition Let f : N!N be a continuous function. A real δ is a code for f iff for all k we have δ(k) = 0 exactly when k = hs; ti such that f (Ns) ⊆ Nt (equivalently, Ns ⊆ Nt ). Continuous functions The behavior or a continuous function between two Polish spaces is completely determined by its behavior on the basic open sets of the spaces. If we know the code of f , i.e. all s; t such that f (Ns) ⊆ Nt , then we can ‘compute’ f (x), given x. This is because if f (x) 6= y then there are neighborhoods Ns; Nt of x; y respectively such that f (Ns) 6⊆ Nt . So given x, we ‘compute’ f (x) inductively as follows. Continuous functions If we have ‘computed’ an initial segment σ of f (x), to determine the next digit we ‘look’ for a segment τ ⊂ x and some string 0 σ ⊃ σ such that f (Nτ ) ⊆ Nσ0 is recorded somewhere in the code of f . Since f : X ! Y is continuous, smaller open areas in X are mapped to smaller open areas in Y , so σ0; τ will be found. Hence the next digit of f (x) is determined. Continuous functions One thing to remember is that, if f is continuous then f (x) = y iff: for all Nt with y 2 Nt there is Ns with x 2 Ns such that f (Ns) ⊆ Nt : Continuous functions are a generalization of computable functions. Computable functions are continuous. A continuous function is computably coded if it has a code which is computable. A computably coded Borel set is a Borel set which has a computable Borel code. Theorem If B is a computably coded Borel set and f is a computably coded continuous function, then f −1(B) is computably coded Proof: Suppose that the code β of B is computable. Then the items Tβ; Fβ associated with it (the tree and the assignment that we defined earlier) are also computable, since they are computable in β. Recall that f −1(D [ C) = f −1(D) [ f −1(C) (same for countable unions) and N − f −1(D) = f −1(N − D). Using a program for f and the computable tree Tβ we can define a program generating a computable code for f −1(B). This is done by recursion on the well-founded tree Tβ and generates computable codes for the inverse images of the sets ! represented by each labelled node Fβ(s); s 2 ! of the tree. This happens in the same way we computably unravel a code of a Borel set and produce the codes of the sets it is made of (through unions and negations). To generate the code of the inverse image of the set −1 corresponding to the root of Tβ (that is, f (B)) we ask the same questions about the nodes in the next lower level of the tree. And so on. Since Tβ is well founded, the program will halt and will give the right answer. Of course the program must give an immediate answer for the sets corresponding on the leaves of the tree (nodes without successors). Note that the leaves are closed sets with computable codes, so 0 Π1 sets (set of infinite paths through a computable tree). 0 It is not hard to show that the inverse image of a Π1 set (through 0 a computably coded continuous function) is Π1 (exercise). The height of a well founded tree is a countable ordinal (exercise). For each countable ordinal σ, the set WFσ is countable (exercise). Therefore it can be coded into a real, a point in the Baire space. Theorem Suppose that T is a well-founded tree. There is a function ' computable in T such that for all s the number '(s) is a code for a program printing a code for WF . jjT sjj Proof: Consider fs(P) = P s for each tree P of N . Then fs is a computably coded continuous function. If Q is a well-founded tree then P 2 WFjjQjj () jjPjj ≤ jjQjj () 8k 9` jjP sk jj ≤ jjQ s`jj where sn is the one-bit sequence with digit n. Hence WF = \ [ f −1(WF ): jjQjj k ` sk jjQs`jj So for each sequence s, WF = \ [ f −1(WF ): jjT sjj k ` sk jjT s∗`jj This gives a recipe how to make a code for WF using jjT sjj codes corresponding to the predecessors of s in T , i.e. codes for WF , k; ` 2 . jjT s∗`jj N Then as in the previous theorem a program can be defined by recursion on the the tree T , giving a code for WF for each T s node s on T . The output on a node of the tree depends on the output of the program on the nodes below it. For a node s which is a leaf, the tree T s is the empty tree. Therefore a code for the set of empty trees can be immediately calculated. The program always halts since the tree is well founded. Corollary If T is a well-founded tree, then WFjjT jj is Borel with a code computable in T . An ordinal is computable if it is the height of a computable tree. Therefore computable ordinals are countable. CK Let !1 be the least non-computable ordinal. CK Then !1 is countable, as the supremum of a countable collection of countable ordinals. Definition Let WFG be the set of Gödel numbers of well-founded computable trees. Let WFGσ be the set of Gödel numbers of well-founded computable trees of height < σ. Note that WFG = WFG CK . !1 CK We have shown that for each σ < !1 the set WFσ is a recursively coded Borel set. Theorem 1 1 The set WFG is Π1 but not Σ1. Proof This is similar to the analogous boldface version. 1 1 A usual method to show that something is Π1 but not Σ1 is to 1 show that it is Π1-complete. 1 This means that knowing this set makes us compute all Π1 sets. So ‘complete’ means universal, and we constructed such sets when we proved the hierarchy theorems. 1 1 1 1 If a Π1-complete set is Σ1, then all Π1 are Σ1, which is a contradiction. 1 So let A be Π1. Then n 2 A () 8β9mP(β; m; n) for a computable predicate P. By the normal form theorem (see Assignment 4 for an exercise asking for a complete proof), there is a computable sequence of trees Tn such that n 2 A () Tn 2 WF () hTni 2 WFG: Since the lightface classes are closed under computable 1 1 1 substitution, if WFG was Σ1 then all Π1 would be Σ1, which we know it is not true. Theorem 1 Every ∆1 set of reals is a computably coded continuous inverse CK image of some WFσ for σ < !1 . Proof.