Enumeration Reducibility and Polynomial Time Bounds
Charles Milton Harris
Submitted in accordance with the requirements for the degree of Doctor of Philosophy
The University of Leeds Department of Pure Mathematics January 2006
The candidate confirms that the work submitted is his own and that appropriate credit has been given where reference has been made to the work of others. This copy has been supplied on the understanding that it is copyright material and that no quotation from the thesis may be published without proper acknowledgement. ii Acknowledgements
I would like to thank Barry Cooper for his help, and for always managing to make time to talk and give advice, during my time as a Phd student under his supervision. I am extremely grateful and indebted to my father Roland and my step- mother Paddy for their unstinting support during my years as a student. I would also like to thank my brothers Paul and Simon, and my sisters Tessa and Jane, who have often looked after me during my time at university. Thankyou to Tina and Chris for the bed, the midnight feasts, and their friendship. Finally I would like to mention Aldo, Frantz, and Olivier (formerly) of the “Caf´edes Ar`enes” in Paris who put up with me and fed me almost every day for the best part of two years.
iii iv ACKNOWLEDGEMENTS Abstract
This thesis discusses enumeration reducibility and three of its variants. We begin with an appraisal of the basic properties of enumeration reducibility ( ≤e ).
Underlying principles of the ≤e are discussed and six different definitions of the latter are introduced. Insights due to the different definitions are presented and particular attention is paid to Scott’s formulation of ≤e in terms of the λ-calculus.
We introduce symmetric enumeration reducibility (≤se ) and we give a clas- sification of ≤se in terms of other standard reducibilities. We show that the natural embedding of the Turing degrees into the enumeration degrees (De) translates to an embedding ( ιse ) into Dse that preserves least element, suprema and infima. We define a weak and a strong jump and we observe that ιse preserves the jump operator relative to the latter definition. We prove various (global) results concerning branching, exact pairs, minimal covers and diamond embeddings in Dse. We show that certain classes of symmetric enumeration de- grees are first order definable, in particular the classes of semirecursive, Σn ∪Πn,
∆n (for any n ∈ ω), and embedded Turing degrees. This last result allows us to conclude that the theory of Dse has the same 1-degree as the theory of Second Order Arithmetic.
We present two polynomial time variants of ≤e , non deterministic poly- NP nomial time conjunctive reducibility (≤c ) and polynomial time enumeration reducibility (≤pe ). The degree structure induced by ≤pe over the computable sets (hRECpe, ≤i) is studied. It is shown that the latter is a non distributive
v vi ABSTRACT upper semi-lattice that is not a lattice. We demonstrate the relativised ver- sion of the property that every non zero polynomial time enumeration (pe-) degree is part of a minimal pair. We prove that the pe-degrees are dense and moreover, that any countable distributive lattice can be embedded in any in- terval of the pe-degrees via embeddings that either preserve least or greatest element. We also explain why there exist similar embeddings of finite nowhere complemented distributive lattices that preserve least and greatest elements. SN Strong non deterministic polynomial time Turing reducibility ( ≤T ) is intro- SN duced. A canonical embedding of the degree structure induced by ≤T over the computable sets into hRECpe, ≤i is presented. We observe that this em- bedding preserves suprema and least element and that it is also essentially an NP embedding into the equivalent degree structure induced by ≤c . We prove the existence of relativised quasiminimal degrees in the case of the latter embed- ding. In conclusion we show that there exists sets A, B ∈ E such that A≤pe B P whereas AT B. Contents
Acknowledgements iii
Abstract v
1 Introduction 1 1.1 General Overview and Background ...... 1 1.2 Preliminaries...... 5 1.2.1 Basic Notation...... 5 1.2.2 Finite Sets and Functions...... 6 1.2.3 Strings and Finite Initial Segments...... 7 1.2.4 Partial Orders and Lattices...... 7
2 Defining Enumeration Reducibility 9 2.1 Overview ...... 9 2.2 Turing Machines and Reductions ...... 10 2.2.1 Main Matter ...... 10 2.2.2 Other Reducibilities and Notation ...... 19 2.3 Constructive Enumeration Reducibility ...... 21 2.3.1 Main matter ...... 21 2.3.2 Other Facts and Notation ...... 27 2.4 Enumeration Reducibility and n-T-reducibility ...... 27 2.5 Non Constructive Enumeration Reducibility ...... 33 2.6 Enumeration reducibility and Lambda ...... 40
vii viii CONTENTS
2.6.1 The language Lambda and the C.E. Sets...... 41 2.6.2 Enumeration Degrees and Lambda ...... 58
3 Symmetric Enumeration Reducibility 65 3.1 Overview ...... 65 3.2 Introduction to Symmetric Enumeration Reducibility ...... 66 3.3 Embedding the Turing Degrees ...... 70 3.4 Jump Operators ...... 73 3.5 The Symmetric Enumeration Hierarchy ...... 77
3.6 Basic Properties of Dse ...... 82
3.7 CEA and co-CEA substructures of Dse ...... 89 3.8 Diamond embeddings and minimal covers ...... 92 3.9 Automorphisms and definability ...... 105
4 Polynomial Time Enumeration Reducibility 115 4.1 Overview ...... 115 4.2 Preliminaries ...... 116 4.2.1 Background Notation ...... 116 4.2.2 Coding Finite Sets and Pairs of Strings ...... 117 4.2.3 Turing Machines and Time Bounds ...... 118 4.2.4 Deterministic Turing Machines and Reductions ...... 119 4.2.5 Non Deterministic Turing machines and Reductions . . . 120 4.2.6 Complexity Classes ...... 126 4.3 Polynomial Time Enumeration Reducibility ...... 126
4.4 Basic Properties of hRECpe, ≤i ...... 150 4.5 Join and Meet Lemmas ...... 165
4.6 Lattice Embeddings in hRECpe, ≤i ...... 172 4.7 Embedding the sn-T-degrees ...... 181 P 4.8 Separating ≤T and ≤pe in E ...... 193
A Additional Proofs and Results 205 A.1 Proofs in Lambda ...... 205 CONTENTS ix
A.2 Strong Definability in Lambda ...... 215 A.3 Complete sets, jumps and Lambda ...... 225
Bibliography 235 x CONTENTS Chapter 1
Introduction
1.1 General Overview and Background
Enumeration reducibility (≤e ) is a relation between sets of numbers in which only positive information is processed. The first informal definition of ≤e appeared in an early draft of [Rog67]. According to this definition, a set A is enumeration reducible to a set B (A≤e B) if there is an effective procedure for getting an enumeration A from any enumeration of B. The formalised version1 of this definition appeared in [FR59]. Essentially it is this latter formulation that has been the basic tool in the ensuing research on enumeration reducibility and its degree structure. However two other equivalent definitions appeared in the literature in the 1970’s. The first of these was due to Selman [Sel71] who defined a relation G1 between sets such that AG1B iff, for any set X, if B is computably enumerable (c.e.) in X, then so is A. Selman proved in the same paper that (over non trivial sets), this relation is equivalent to ≤e despite the fact that the former is defined in a non constructive manner whereas the latter is defined with respect to a given effective procedure. The second equivalent definition appeared in Scott [Sco75]. In this paper Scott defined the language Lambda—an extension of the lambda calculus—and an interpretation in Pω
1In other words Definition 2.3.2 below.
1 2 CHAPTER 1. INTRODUCTION of the language according to which a set is c.e. iff it is the interpretation of a closed Lambda term. Moreover, for any A, B ⊆ ω, and supposing B to be a constant with interpretation B, A≤e B iff there exists a closed Lambda term u such that A is the interpretation of the (parametrised2) Lambda term (u) B. Thus an enumeration reduction corresponds to an application by a closed term in Scott’s language Lambda (whereas abstraction corresponds to the formation of an enumeration operator). In Chapter 2 we present these three different approaches to enumeration reducibility with a view to giving a more complete picture of the basic properties of the latter. In particular, by a careful analysis of oracle computations we reformulate ≤e in terms of oracle Turing machines (Definition 2.3.4). We also underline and extend previous work by Sasso, Cooper and McEvoy [McE84] on the relationship between deterministic (≤T) and non deterministic Turing reducibility, enumeration reducibility, and the relation “computably enumerable in” (c.e. in). A standard result that follows from the work reviewed in Chapter 2 is the fact that the Turing degrees (DT) canonically embed into the enumeration de- grees (De). In other words the Turing degrees can be regarded as a (partial order) substructure of the enumeration degrees. This leads to the question of the status of the former within the latter. In particular, are the Turing degrees first order definable in the enumeration degrees? A recent paper by Kalimullin [Kal03] addresses this question. Namely, Kalimullin shows that the enumera- tion jump operation is first order definable and, as a consequence of Friedberg’s completeness criterion, that the the class of embedded Turing degrees in the 0 cone above 0e is also first order definable within the structure. Kalimullin’s methods, which originate in earlier work on splitting properties of the embed- ded Turing degrees [AKC03] in De, underpin the main results in the work on the degree structure presented in Chapter 3. This work originated in a problem raised by McEvoy [McE84] of how one might refine the arithmetical hierarchy in such a way as to make it compatible with enumeration reducibility. Symmetric
2We will call such a term a Generalised Lambda (GLambda) term below. 1.1. GENERAL OVERVIEW AND BACKGROUND 3
enumeration reducibility (≤se) was defined as a means of solving this problem in an arguably satisfactory manner (see Chapter 3 Section 3.5). This reducibil- ity is symmetric in that it involves enumeration reductions between both sets themselves and (simultaneously) between the complements of these sets. In a way therefore, this reducibility is a natural generalisation of symmetric relations such as many one reducibility. We study various aspects of the degree structure
(Dse) induced by symmetric enumeration reducibility. In particular we show that the embedding of DT into De is essentially an embedding into Dse and, using the methods developped by Kalimullin mentioned above, that the embed- ded Turing degrees are first order definable within Dse. Thus, using Simpson’s
Theorem [Sim77] on the complexity of the first order theory of DT, we are able to conclude that the first order theory of Dse has the same 1-degree as the the- ory of Second Order Arithmetic. A number of other structural and definability results are also proved by adapting techniques—for example from [Med55] and [AKC03]—formerly applied in the context of the enumeration degrees. According to the characterisation of non deterministic Turing reducibility in Chapter 2, there are two fundamental types of non deterministic reducibil- ity between sets. The first corresponds to reductions (of type ≤NT) between N semicharacteristic functions and is equivalent to ≤e . The second (≤T) corre- sponds to reductions of semicharacteristic functions to characteristic functions N ( A ≤T B if sA ≤NT cB ) and is equivalent to the relation “ c.e. in ”. From this point of view, the class of c.e. sets is precisely the class of sets com- puted/accepted by a non deterministic Turing machine. In the period 1971-5, NP, the polynomial time bounded equivalent of this class came to prominence when it was discovered that many of the well known combinatorial problems (when coded as sets of strings) belonged to NP and that, moreover the latter be- long to the class of problems that are the hardest such (timewise) to compute— i.e. the problems defined to be np-complete. Cook [Coo71] discovered the first of these problems—in particular the satisfiability problem—and Karp [Kar72] subsequently showed that a number of other well known problems (such as the travelling salesman problem) are also np-complete. The np-complete problems 4 CHAPTER 1. INTRODUCTION in effect became the witness of the so called NP =? P question. In layman’s terms the latter asks the question whether any problem computable by an effi- cient algorithm that has the ability to guess is also computable by an efficient algorithm that does not have this ability. Accordingly the notion efficiently computable is identified with computable in polynomial time, P is the class of sets computable by a polynomial time bounded Turing machine and NP (as indicated above) is the class of sets computable by a polynomial time bounded non deterministic Turing machine. Cook [Coo71] also defined the polynomial time equivalent of Turing re- P NP N ducibility (≤T). Its non deterministic counterpart (≤T , a variant of ≤T) ap- peared in Meyer and Stockmeyer’s work [MS72] on the definition of a polyno- mial time equivalent of the arithmetical hierarchy. These two notions were used in [BGS75] to give some measure of the difficulty of solving the NP =? P ques- tion. In this paper Baker, Gill and Solovay constructed sets A and B such that P(A) = NP(A) whereas P(B) 6= NP(B) and argued that the former rules out the possibility of solving NP =? P by standard diagonalisation methods and the latter rules out a solution using appropriate (deterministic) simulations (of non deterministic reductions). According to their argument, the reason for this is that, in either case the methodology used would relativise to reductions between sets and thus contradict the corresponding counterexample. During the same period interest started to focus on the structural prop- P P erties of ≤T and its many one counterpart ≤m. Ladner [Lad75] initiated the study into the degree structures (the Cook and Karp degrees respectively) of these two reducibilities over the computable sets. Ladner developed methods for constructing meets and joins in the structures and proved various fundamental results including the fact that both structures are dense upper semi-lattices, but not lattices, with zero element corresponding to P. Ladner’s results were conse- quently extended and his techniques refined by a number of researchers includ- ing Breidbart [Bre78], Mehlhorn [Meh74, Meh76], Chew and Machtey [CM81], Sch¨oning [Sch82a] and ,in particular, Ambos-Spies [AS80, AS84, AS85a, AS85b, AS86, AS87b, AS87a]. (For a guide to more recent work on these structure see 1.2. PRELIMINARIES. 5 the review article [AS99] by Ambos-Spies.) Enumeration type polynomial time bounded non deterministic reducibilities, on the other hand, have received limited attention from the research community. Ladner, Lynch and Selman [LLS75] defined and briefly discussed polynomial NP time bounded non deterministic many one reducibility (≤m ) and a polynomial NP time bounded constructive variant of enumeration reducibility (≤c ). Subse- quently Selman wrote the paper [Sel78] in which he defined polynomial time enumeration reducibility (≤pe) and in which he pointed out the differences be- NP tween this reducibility and ≤c . Copestake showed in [Cop97] that Ladner’s NP methods can be adapted to the study of the degree structure induced by ≤c over the computable sets. We thus know, for example, that the latter is a dense upper semi-lattice and contains minimal pairs. It appears however that no work has been done on the structural properties of ≤pe since Selman’s paper. With this in mind Chapter 4 can be seen as an attempt at gaining a basic overview of the properties of ≤pe and its degree structure (the pe-degrees). Using re- sults from Selman’s paper we adapt methods formerly applied in research on the Cook degrees—in particular by Ambos-Spies—to prove that the pe-degrees form a dense non distributive upper semi-lattice that is not a lattice. We present results on lattices embeddings by Ambos-Spies that are also applicable in this context. We describe an embedding analogous to the embedding of DT into De and we conclude by a refinement of Baker Gill and Solovay’s result in which we P prove the separation of ≤pe and ≤T over sets of relatively low time complex- ity.
1.2 Preliminaries.
1.2.1 Basic Notation.
We let ω (ω+) denote the set of (non zero) natural numbers and A, B, . . . denote subsets of ω. Lower case letters n, x, . . . and f, g, . . . represent numbers and functions (from ω to ω) respectively, whereas A, B,... represent classes of sets. 6 CHAPTER 1. INTRODUCTION
(To avoid a local conflict of notation, in Section 2.6 and Appendix A we use
A, B,... to denote classes of sets.) Pω denotes { X | X ⊆ ω } and PF denotes the class of partial functions from ω into ω. A denotes the complement of A and ||A|| denotes the cardinality of A. The set { n · x + m | x ∈ A } is written nA + m and 2A ∪ 2B+1 is written A ⊕ B. We use h , i to denote the standard diagonal coding function defined by hx, yi = 1/2(x2 + y2 + 2xy + 3x + y).
The semi-characteristic function of A is defined to be the function sA such that Dom(sA) = A and sA(x) = 1 for all x ∈ A. The characteristic func- tion of A is written cA. When no ambiguity arises we also write A(x) instead of cA(x). For any function f, its graph is written Graph(f). We also use the short- hand F = Graph(f) (and so SA and CA stand for Graph(sA) and Graph(cA) respectively).
1.2.2 Finite Sets and Functions.
We assume {Dn | n ∈ ω} to be the enumeration of all finite sets defined such that if n = 0 then Dn = ∅ and if n > 0, then Dn is the set of numbers making
ai up the binary decomposition of n. In other words, if n = Σi≤k2 (say) then 0 Dn = { ai | i ≤ k }. Note that, to simplify notation, we usually use D,D etc. to denote both the finite sets themselves and their indices. For example if i, j are the indices of D,D0 then hD,D0i is shorthand for hi, ji.
We assume { hn | n ∈ ω } to be the computable enumeration (with rep- etitions) of all finite functions from ω into ω defined such that for any given n ∈ ω,
∀x∀y[ hn(x) = y ⇔ hx, yi ∈ Dn & ∀z( hx, zi ∈ Dn ⇒ z ≥ y )] .
We also use the shorthand hD instead of hn if D = Dn (i.e. if D is being used as shorthand for Dn). Note that h∅ (i.e. h0) is the empty (nowhere defined) function. 1.2. PRELIMINARIES. 7
1.2.3 Strings and Finite Initial Segments.
A string is a partial function σ from ω into {0, 1} with finite domain. λ denotes the empty string and |σ| the length of σ (i.e. the cardinality of its domain). For (s, i) ∈ { (+, 1) , (−, 0) }, we use σs to denote the set { n | σ(n)↓ = i } and s s s (σA) to denote the set { n | n ∈ A & σ(n) ↓ = i } (and so σ = (σω) for s ∈ {+, −}). If the domain of σ is an initial segment of ω, σ is said to be an initial segment. Note that this means that, if |σ| = n + 1 the domain of σ is 0 {0, . . . , n}. We use the shorthand σ = σ b(i) to denote the extension of σ of length |σ| + 1, such that σ0(|σ|) = i.
1.2.4 Partial Orders and Lattices.
A partially ordered (p.o.) set L = hL, ≤i is said to be an upper semi lattice (u.s.l) if, for all a, b ∈ L, the supremum of a and b (written a ∪ b) exists. If the infinum of a and b (written a ∩ b) also always exists then L is said to be a lattice. Join and meet are alternative expressions for supremum and infinum.
The least (greatest) element of a p.o. set L = hL, ≤i is denoted by 0L (1L) or simply 0 (1). For any elements x, y, z we say that x is join (meet) reducible to y, z if y, z < x ( y, z > x ) and x = y ∪ z ( x = y ∩ z ). We also say that x is join (meet) reducible or splits (branches) in this case. If x = 0 and x is meet reducible to y, z then we say that y, z is a minimal pair. An order embedding of a p.o. set L1 = hL1, ≤1i into a p.o. set L2 = hL2, ≤2i is a one-one map
F : L1 → L2 such that
(∀a ∈ L1)(∀b ∈ L1)[ a ≤1 b ⇔ F (a) ≤2 F (b)] .
If F is also onto we say that L1 and L2 are order isomorphic (and that F is an order isomorphism). If moreover L1 = L2 then we say that F is an order automorphism of L1. For any B ⊆ L1 we say that B is an order automorphism base of L1 if, for any order automorphism G of L1 , such that G(x) = x for all x ∈ B then G is trivial (i.e. the identity order automorphism of L1 ). Note that we usually drop the term order when no ambiguity arises. 8 CHAPTER 1. INTRODUCTION
An order embedding F of L1 into L2 is said to preserve the least element or 0 (greatest element or 1) if either F (0L1 ) = 0L2 (F (1L1 ) = 1L2 ) or 0L1 (1L1 ) does not exist. F is said to preserve joins (meets) if, for all a, b ∈ L1, whenever a ∪ b ( a ∩ b ) is defined, F (a ∪ b) = F (a) ∪ F (b)( F (a ∩ b) = F (a) ∩ F (b) ). If
L1 is a lattice and L2 is an upper semi-lattice then F is said to be a lattice embedding if F preserves both joins and meets. A lattice L = hL, ≤i is distributive if
(∀a ∈ L)(∀b ∈ L)(∀c ∈ L)[ (a ∪ b) ∩ (a ∪ c) = a ∪ (b ∩ c)] .
An upper semi-lattice is distributive if
(∀a ∈ L)(∀b ∈ L)(∀c ∈ L)[ c ≤ a ∪ b ⇒ (∃d ≤ a)(∃e ≤ b)[ c = d ∪ e ]] .
Note that the latter notion of distributivity is derived from the former in the sense that any sublattice of a distributive u.s.l. is a distributive lattice. A distributive lattice L is Boolean if L posesses 0 and 1, is non trivial (i.e. 0 6= 1) and is complemented in the sense that (∀a ∈ L)(∃a ∈ L)[ a∪a = 1 & a∩a = 0 ]. A proper non empty subset of I is an ideal of the u.s.l. L = hL, ≤i if I is closed downwards—i.e. (∀x ∈ I)(∀y ∈ L)[ y ≤ x ⇒ y ∈ I ]—and is also closed under joins. The quotient u.s.l. of L over I (written L/I) is defined to be hL∗, ≤∗i where L∗ = { [x] | x ∈ L } with [x] = { z ∪ y | y ∈ I &(∃y0 ∈ I)[ x = z ∪ y0 ] } and [x] ≤∗ [y] if x ≤ y ∪ z for some z ∈ I. Note that for a Boolean lattice L, L/I is also a Boolean lattice. Chapter 2
Defining Enumeration Reducibility
2.1 Overview
The purpose of the present Chapter is to present enumeration reducibility (≤e ) in its various guises and to review its relationship with Turing reducibility, non determinism and the lambda calculus. To begin with (Section 2.2) we give a careful presentation of deterministic and non deterministic reducibilities and the relation “ c.e. in ”, in terms of the standard Turing machine models. We then revisit the informal and formalised versions of enumeration reducibility (Definitions 2.3.1-2.3.2) due to Friedberg and Rogers (Section 2.3). Also, us- ing observations made in Section 2.2 we show that A ≤e B is equivalent to the existence of a deterministic machine ϕ such that, whenever f is a partial function enumerating B, ϕf computes some partial function enumerating A (Definition 2.3.4).
In Section 2.4 we present McEvoy’s result that non deterministic Turing reductions and enumeration reductions between partial functions are equivalent and we accordingly define the latter in terms of the former (Definition 2.4.3). We
9 10 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY show how this equivalence in turn leads to the equivalence of Turing reducibility and enumeration reducibility over partial functions provided that the domain of the oracle function is computable. We also define the well known canonical embedding of the Turing degrees into the enumeration degrees induced by this equivalence. In Section 2.5 we consider Selman’s non constructive definition of enumer- ation reducibility (Definition 2.5.3, page 38) and we look at the proof of the equivalence betweeen this formulation and the original constructive definition due to Friedberg and Rogers (i.e. Definition 2.3.2). We also discuss two results that follow (almost) immediately from Selman’s definition. We conclude this Chapter by giving an account of Scott’s language Lambda (Section 2.6). We explain how enumeration reducibility can be defined in this language (Definition 2.3.1) and we show how to articulate basic structural results of ≤e therein.
2.2 Turing Machines and Reductions
We present below the Turing machine models that we will be using and we define the associated reducibilities.
2.2.1 Main Matter
We begin by defining the basic deterministic Turing machine model [Tur36, Pos36] and then present its oracle and non deterministic variants.
Definition 2.2.1 (Deterministic Turing Machine). We define a deterministic Turing machine ϕ in the standard way. Our presentation follows that of Soare [Soa87]. Accordingly ϕ consists of the following components.
• An infinite two way tape divided into cells each containing either B (blank) or 1.
• A reading head that scans one cell of the tape at a time. 2.2. TURING MACHINES AND REDUCTIONS 11
• A finite set of internal states Q = {q0, . . . , qn}.
• Three possible operations. (1) Change from one internal state to another. (2) Change the scanned symbol s to another symbol s0 ∈ S = {1,B}. (3) Move the reading head one cell to the right (R) or left (L).
The operation of ϕ is dictated by a finite partial map
δ : Q × S → Q × S × {R,L}
We call δ the control of ϕ. Observe that δ is essentially a finite set of instruc- tions, i.e. a program. Accordingly δ dictates the behavious of ϕ in the following manner. If δ(q, s) = (q0, s0,X0) with q, q0 ∈ Q, s, s0 ∈ S and X0 ∈ {R,L} then, whenever ϕ is in state q with its reading head scanning a cell containing s, ϕ replaces s by s0, changes into state q0 and moves one cell left or right according to the value of X0.
We assume that ϕ has three distinguished states: the initial state qi, the output (successful halt) state qo and the fail (unsuccessful halt) state qf . (Ob- serve that the latter is non standard. Its addition here is for reasons of concision and has no effect on the overall characteristics of the machine model.) The input x is represented by a string of x + 1 consecutive 1’s on the tape.
The computation of ϕ on input x starts in state qi with its head scanning the leftmost cell containing a 1. The computation then proceeds according to the instructions contained in the control δ. If ϕ(x) halts in the output state qo then, by definition, ϕ(x) outputs the integer y corresponding to the total number of 1’s on the tape (written ϕ(x)↓ = y ). If ϕ halts in the fail state or continues indefinitely (in an infinite loop) then ϕ(x) is said to fail, i.e. ϕ(x) has no output (written ϕ(x)↑). At each stage p in the computation of ϕ(x) , the state of the instantaneous condition of the computation is uniquely identified by the internal state of the machine q, the contents s0 of the cell being scanned, the symbols on the left of the head s−m . . . s−1 up to the last 1 and the symbols on the right of the head s1 . . . sn up to the last 1. Accordingly we call the configuration of ϕ(x) at stage 12 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY p the tuple
(s1, . . . , s−1, q, s0, s1, . . . , sn) .
A halting computation of ϕ(x) is thus a sequence of configurations c0, c1, . . . , cl where c0 represents the machine ϕ in state qi scanning the leftmost symbol of x and cl represents ϕ in either the output (qo) or the fail (qf ) halting state.
Definition 2.2.2 (Deterministic Oracle Turing Machine). Suppose that we equip ϕ with an extra (oracle) tape and an extra reading head for this tape. Also suppose that we modify the description of ϕ so that ϕ has an internal query state (qq) allowing ϕ to write numbers on the oracle tape and an answer state (qa) allowing ϕ to read numbers from the oracle tape. In this case ϕ is said to be a deterministic oracle Turing machine on the understanding that the oracle information (i.e. the answer provided for any query) is provided by a function. If ϕ is equipped with (function) oracle g (written ϕg), then ϕg(x) is said to fail if it queries a number z such that g(z)↑ (in addition to the other cases when ϕg(x) is said to fail as stipulated in Definition 2.2.1). Otherwise the description of ϕ is that of Definition 2.2.1. Accordingly ϕg(x)↓ = y denotes the situation when ϕg(x) (halts successfully and) outputs y whereas ϕg(x)↑ denotes the situation when ϕg(x) fails. Observe that we can regard any computation of ϕ as a sequence of configurations similar to the description in Definition 2.2.1.
Definition 2.2.3 (Non Deterministic Turing Machine). Suppose that the description of ϕ is that of Definition 2.2.1 with the difference that δ is not a function. Indeed we suppose that δ is a one-many relation in the sense that, for any (q, s) there may may be two or more different triples (q0, s0,X0), (q00, s00,X00) such that both ( (q, s) , (q0, s0,X0)) ∈ δ and ( (q, s) , (q00, s00,X00)) ∈ δ. (Any such relation can also be described as many-one, i.e. we are just articulating the notion of a relation in an idiosyncratic manner to suit the definition of our machine model.) In this case we say that ϕ is a non determinisitic Turing machine. We say that δ is a one-k relation if for any pair (q, s) ∈ Q × S there are at most k different triples (q0, s0,X0) such that ( (q, s) , (q0, s0,X0)) ∈ δ and such 2.2. TURING MACHINES AND REDUCTIONS 13 that k is the least such number (in the sense that there is at least one pair (ˆq, sˆ) related to k different triples via δ). Note that such a k always exists as δ is finite. We now define ϕ to be a k-way non deterministic Turing machine if its control δ is one-k. This means that ϕ can guess between up to as many as k different ways to proceed at certain stages in a computation. Accordingly if cp is a configuration of ϕ during a computation of ϕ(x) then cp+1 might be one of up to k different configurations. In other words the (possible) computations of ϕ(x) form a k-ary tree. We say that ϕ(x) outputs y (written ϕ(x) ↓ = y ) if there exists a halting computation of ϕ(x) that outputs y and y is unique in the sense that every other halting computation of ϕ(x) either outputs y or fails. We say that ϕ(x) fails (written ϕ(x)↑) if every halting computation of ϕ(x) fails. Otherwise—i.e. in the case when there exist at least two (possible) halting computations of ϕ(x) that output different numbers—we say that ϕ(x) is inconsistent (written ϕ(x)↓↓).
Definition 2.2.4 (Non Deterministic Oracle Turing Machine). Suppose that ϕ is defined as in Definition 2.2.3 except that ϕ is equipped with an oracle in the manner described in Definition 2.2.2. Then we say that ϕ is a non deterministic oracle Turing machine. If ϕ is equipped with function oracle g (written ϕg), then a computation of ϕg(x) is said to fail if it queries a number z such that g(z)↑ (in addition to the other cases when such a computation is said to fail as stipulated by Defi- nition 2.2.3). With this in mind ϕg(x)↓ = y denotes the situation when ϕg(x) outputs y whereas ϕg(x)↑ denotes the situation when ϕg(x) fails and ϕg(x)↓↓ denotes the situation when ϕg(x) is inconsistent, as described in Definition 2.2.3.
For any Turing machine defined as in Definition 2.2.1 or Definition 2.2.3 we say that ϕ computes function f if ϕ(x) ↓ = f(x) whenever x ∈ Dom(f) and ϕ(x) ↑ whenever x ∈ ω − Dom(f). On the other hand, for any oracle Turing machine defined as in Definition 2.2.2 or Definition 2.2.4 and function g we say that ϕ computes function f with oracle g if ϕg(x)↓ = f(x) whenever 14 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY x ∈ Dom(f) and ϕg(x)↑ whenever x ∈ ω − Dom(f). In the first case we write f = ϕ and in the second case we write f = ϕg. Accordingly we say that the partial function (total function) f is partial computable (computable) if f = ϕ for some deterministic (or non deterministic, as we shall see later) Turing machine
ϕ. Likewise set A is computable if cA = ϕ for some such machine ϕ. We say that A is computably enumerable (c.e.) if A = Ran(f) for some partial1 computable function f or, equivalently, if sA is partial computable (see Note 2.2.10).
Definition 2.2.5. Suppose that A, B are subsets of ω and f, g are (partial) functions from ω into ω. We say that f is Turing reducible to g (f ≤T g) if f = ϕg for some deterministic oracle Turing machine ϕ. We also say that A is
Turing reducible to g (A≤T g) if cA ≤T g and that A is Turing reducible to B
( A≤T B) if cA ≤T cB.
Definition 2.2.6. Suppose that f, g are (partial) functions from ω into ω. We g say that f is non deterministic Turing reducible to g (f ≤NT g) if f = ϕ for some non deterministic oracle Turing machine ϕ.
Definition 2.2.7. Suppose that A, B are subsets of ω. We say that A is (set- N wise) non deterministic Turing reducible to B (A≤T B) if sA ≤NT cB .
Remark 1. Notice that the above non deterministic definitions can easily be N completed. Accordingly we could let g ≤NT A denote g ≤NT sA and g ≤T
A denote g ≤NT cA . Then, following the example of Definition 2.2.5 (with semi characteristic functions replacing characteristic functions) we would define
A ≤NT B if sA ≤NT sB . However, as we shall see in Section 2.4, the latter is equivalent to A ≤e B. Thus, in order to avoid notational ambiguity we limit N the definitions of ≤NT and ≤T to those given above. In particular we suppose N that ≤T is only defined over sets.
Remark 2. The polynomial time bounded version of non deterministic Turing NP reducibility (≤T ) defined in the literature (see for example [LLS75] page 117, N and Chapter 4 below) is a version of ≤T (and not of ≤NT). 1Of course, if A 6= ∅ then we can suppose f to be (total) computable—see Note 2.2.10. 2.2. TURING MACHINES AND REDUCTIONS 15
Note 2.2.8. We observed in Definition 2.2.1 that a halting computation of a Turing machine is made up of a sequence of configurations. Now, it is easily seen that (arbitrary) sequences of such configurations can be effectively coded in ω. Suppose therefore that we have an appropriate coding scheme. Then, given a (non oracle) Turing machine ϕ and x, y ∈ ω we can effectively check whether any n ∈ ω codes a halting computation of ϕ(x) that (successfully halts and) outputs y. On the other hand, if ϕ is an oracle Turing machine with oracle g such that Dom(g) is computable then this check is effective in g. Indeed for any configuration c of ϕg(x) in the query state with (say) z the number to be queried, we can effectively decide whether z ∈ Dom(g) or not. Call such a query configuration bad if z∈ / Dom(g) . Then clearly, for any (arbitrary) sequence of g configurations c0, . . . , cp of ϕ (x) we can effectively decide if c0, . . . , cp contains a bad query configuration or not (and of course if it does then it does not constitute a sucessfully halting computation of ϕg(x)). It follows that the set
g Outϕ = { hw, x, yi | w encodes a halting computation of ϕg(x) that outputs y } (2.2.1) is computable in g. Observe that this is not the case in general—i.e. if Dom(g) is not computable. g If Dom(g) is computable and g is partially computable then the set Outϕ is itself clearly computable. In particular, it follows that, if {hn | n ∈ ω} is the computable enumeration of finite functions defined on page 6, then the set
Outϕ = { hw, x, y, Di | w encodes a halting computation
of ϕhD (x) that outputs y } (2.2.2) is computable. (Notice that hD is shorthand for hn iff D is shorthand for Dn.) Note that these observations clearly apply to any Turing machine whether deterministic or not.
Definition 2.2.9. For any A, B ⊆ ω, we say that A is computably enumerable in B (A c.e. in B) if there exists a partial function f ≤T cB such that A =
Ran(f) or, equivalently, if sA ≤T cB (see Note 2.2.10). 16 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY
Note 2.2.10. We can generalise Definition 2.2.9 to a relation between sets and functions. Accordingly, for any A ⊆ ω, and partial function g (from ω into ω), define A c.e. in g if there exists a partial function f ≤T g such that A = Ran(f). We can now (supposing A and g to be any set and function as just described) observe the following equivalences.
(a) If Dom(g) is computable then
A c.e. in g iff sA ≤T g . (2.2.3)
Indeed, to prove (⇐ ) define fA to be the partial function with graph
{ hx, xi | x ∈ A }. Then clearly fA ≤T sA and so fA ≤T g (whether or not Dom(g) is computable). Also Ran(f) = A by definition. On the other
hand, to prove (⇒) suppose that A = Ran(f) such that f ≤T g and that deterministic oracle Turing machine ϕ witnesses the latter. Define function
tˆA from ω × ω into ω such that g 1 if n = hw, x, yi (say) and hw, x, yi ∈ Outϕ , tˆA(y, n) = t(y, n + 1) otherwise ,
g where Outϕ is defined according to (2.2.1) in Note 2.2.8. Then clearly
tˆA ≤T g. Also, it is easily checked that 1 if y ∈ A, tA(y) =def tˆA(y, 0) = ↑ otherwise .
In other words, tA ' sA and so sA ≤T g.
(b) If Dom(g) is computable then, using a similar argument to that used in (a)
it is easily shown that A c.e. in g iff there exists a binary relation R≤T g such that, for all y ∈ ω,
y ∈ A iff ∃nR(y, n) . (2.2.4)
(c) If Dom(g) is computable and A 6= ∅ , then A = Ran(f) for some partial ˆ ˆ f ≤T g iff A = Ran(f) for some total f ≤T g (where, as usual, “partial” 2.2. TURING MACHINES AND REDUCTIONS 17
means either total or non total). Indeed, if f is partial, A = Ran(f) and f = ϕg for some deterministic oracle Turing machine ϕ, then choose a ∈ A and define, for all z ∈ ω, g y if z = hw, x, yi (say) and hw, x, yi ∈ Outϕ , fˆ(z) = a otherwise ,
g where Outϕ ≤T g is defined according to (2.2.1) in Note 2.2.8. Then clearly ˆ ˆ ˆ f is total and f ≤T g . Moreover Ran(f) = A since for every y ∈ ω, y ∈ A iff there exists, by assumption on f = ϕg , some w and x such that w encodes a halting computation of ϕg(x) that outputs y (i.e. such that g hw, x, yi ∈ Outϕ ).
(d) It is obvious that sA ≤T g iff there exists a deterministic oracle Turing machine ϕ such that A = { n | ϕg(n)↓ } (whether or not Dom(g) is com- putable).
Notice how (a) explains the equivalence stated in Definition 2.2.10. Note also how we could also now define, for any partial functions f and g, f c.e. in g if Graph(f) c.e. in g.
Remark. We will in fact only be interested in the relation “c.e. in” with regard to sets. Accordingly we will only use the latter in the sense stipulated by Definition 2.2.9.
For each of Definitions 2.2.1-2.2.4 we assume a fixed computable enumera- tion {ϕn | n ∈ ω} of the relevant type of Turing machine. Observe that any deterministic Turing machine is simply a 1-way non deterministic Turing ma- chine and so the non deterministic enumerations essentially subsume (i.e. via a computable map) the deterministic ones. We also suppose that { Wn | n ∈ ω } is the computable enumeration of c.e. sets defined such that Wn = Ran(ϕn)
(i.e. { y | ∃x[ ϕn(x)↓ = y ] } ) for all n ∈ ω, where {ϕn | n ∈ ω} is our enumer- ation of deterministic Turing machines, and we say that function f has partial computable index n if f = ϕn. 18 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY
Lemma 2.2.11. Suppose that f, g are partial functions from ω into ω such that f is constant. Then f ≤NT g iff there exists a non deterministic oracle Turing machine ϕ such that, for all x ∈ ω,
f(x)↓ = y iff ϕg(x)↓↓y (2.2.5) where the notation ϕg(x)↓↓ y means that there exists at least one computation of ϕg(x) that outputs y (but there may exist at least one other computation of ϕg(x) that outputs some y0 6= y—i.e. ϕg(x) may be inconsistent).
Proof. (⇒) Obvious.
(⇐) Suppose that f(x) = c for all x ∈ Dom(f) and suppose that ϕ witnesses
(2.2.5). Define ϕb so that ϕb simulates ϕ with the difference that (for any x) whenever ϕ(x) (halts successfully and) outputs some y 6= c then ϕb(x) enters the fail state. It is easy to see that that ϕb witnesses f ≤NT g.
Definition 2.2.12 (Deterministic acceptor). We define a deterministic (oracle) Turing machine acceptor ϕ to be as described in Definition 2.2.1 and Defini- tion 2.2.2 with the difference that instead of the output state (qo), ϕ has a halting accept (qacc) and reject (qr) state. If ϕ is an oracle acceptor we suppose that instead of an answer state (qa), ϕ has a yes state (qy) and a no state (qn). Thus ϕ always computes a partial characteristic function (accept = 1, reject = 0) and the oracle is always understood to be a partial characteristic function (yes = 1, no = 0).
Definition 2.2.13 (Non deterministic acceptor). We define a non deterministic (oracle) Turing machine acceptor ϕ to be as described in Definition 2.2.3 and
Definition 2.2.4 with the difference that instead of the output state (qo), ϕ has a halting accept (qacc) state. If ϕ is an oracle acceptor we suppose that instead of an answer state (qa), ϕ has a yes state (qy) and a no state (qn). Thus ϕ always computes a semi-characteristic function (accept = 1) and the oracle is always understood to be a partial characteristic function (yes = 1, no = 0).
Notation. For any set B, we use ϕB as shorthand for a Turing machine acceptor B with oracle cB and we write A = ϕ if A reduces to B via ϕ. 2.2. TURING MACHINES AND REDUCTIONS 19
Without loss of generality we can assume that the two models described in
Definition 2.2.12 and Definition 2.2.13 underpin respectively ≤T , considered as N a relation over Pω, and ≤T (which we only defined over Pω). Accordingly, we will usually drop the term acceptor since the type of machine used is dictated by the context (i.e. acceptors for reductions between sets and general (functional) Turing machines otherwise). The reader should notice that these assumptions are presentation orientated and are otherwise superfluous to any arguments or proofs used (in the sense that everything could be carried out using our more general Turing machine models defined earlier.) N Also note that by Lemma 2.2.11 we can assume that if A≤T B, then there exists a non deterministic oracle Turing machine (acceptor) such that, for all x ∈ ω,
x ∈ A iff there exists an accepting computation of ϕB(x) . (2.2.6)
Bearing these observations in mind we assume a computable enumeration
{ ϕn | n ∈ ω } for each of the four types of Turing machine acceptor such that, in the non deterministic case ϕn behaves in operational terms as just described (for all n ∈ ω).
2.2.2 Other Reducibilities and Notation
K denotes the halting problem { n | ϕn(n)↓ } , and KB denotes the Turing jump B of B, namely the set { n | ϕn (n) ↓ } (relative to the appropriate listings of deterministic machines described above). For deterministic Turing reductions we use Q(ϕ, x, B) to denote the set of oracle queries made by ϕB on input x. Likewise we use Q+(ϕ, x, B) to denote the set of positive queries of the computation and Q−(ϕ, x, B) to denote the set of negative queries.
We say that A is many one reducible to B (A ≤m B) if there is a computable function f such that A = f −1(B). Furthermore, if f is one-one, A is said to be one-one reducible to B (A ≤1 B). A is said to be truth table reducible to B ( A ≤tt B ) if there is a computable function f such that, for all n ∈ ω, 20 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY
n ∈ A iff B |= σf(n) where { σm | m ∈ ω } is an effective enumeration of propositional formulae (called truth table conditions) constructed from atoms of the form “z ∈ X”. A is said to be positive reducible to B,(A≤p B) if there exists a computable function f : ω → ω+ such that, for all x ≥ 0, x ∈ A ⇔
∃y(y ∈ Df(x) & Dy ⊆ B). We say that A is wtt-reducible to B (A≤wtt B), if there exists a Turing machine ϕ and computable function f such that A = ϕB and such that for all x ≥ 0, Q(ϕ, x, B) ⊆ {0, . . . , f(x)}.
For any relation ≤r we define ≡r = ≤r ∩r ≥ . Thus if ≤r is transitive and reflexive ≡r is an equivalence relation. Suppose that r = T . Then we call the equivalence classes of ≤r over Pω the Turing degrees (DT) and the partially ordered structure induced by ≤T over DT the Turing degree structure
(hDT , ≤ i). For simplicity we identify DT with hDT , ≤ i. Also, for any subclass
A ⊆ DT we use AT to denote the substructure of hDT , ≤ i corresponding to A 0 (i.e. hA , ≤ i). We use aT,bT, etc. to denote Turing degrees and aT to denote the jump of aT, i.e. degT(KA) for any A ∈ aT.
We use the above notation for degrees in a similar way for the other standard reducibilities (≤1 , ≤m , etc.) and for the reducibilites that we introduce below
(i.e. for ≤e and ≤se in particular). Subscripts are dropped if the context is clear.
A is said to be r-hard for a class C if X ≤r A for all X in C and A is said to be r-complete for C if A also belongs to C. We use the shorthand Comp(A), and Ce(A) to denote the classes { E | E R A } such that (respectively) R is
≤T and “ c.e. in ”. Accordingly, we use Comp and Ce to denote the classes of computable and c.e. sets. Also we will employ the abbreviations r-reduction, r-degree etc. when appropriate.
We assume the reader to be conversant with the arithmetical hierarchy rel- A A A ative to a set A ( {Σn , Πn , ∆n | n ∈ ω } ) and, in particular the basic definition A Σ1 = { X | X c.e. in A } . 2.3. CONSTRUCTIVE ENUMERATION REDUCIBILITY 21
2.3 Constructive Enumeration Reducibility
We now introduce enumeration reducibility via its standard informal and formal definitions and we present an alternative definition in terms of deterministic oracle Turing machines.
2.3.1 Main matter
Enumeration reducibility was originally defined by Rogers in an early draft of [Rog67] and first mentioned in published form by Friedberg and Rogers in [FR59]. Rogers presents (on page 145 of [Rog67]) the intuitive model underlying this reducibility as follows.
“Let sets A and B be given. Consider a procedure that is determined by a finite set of instructions in the following way. A computation is begun. The computation proceeds algorithmically except that, from time to time, the computing agent may be requested to obtain an “in- put” integer, and, from time to time the procedure yields an “output” integer. When an input is requested, any integer, or no integer, may be supplied. Assume that when the members of B are supplied, in any order whatever as inputs, then the computation always eventually yields the set A, in some order, as outputs. The order in which the members of A appear may vary as the order of inputs varies. (We permit repetitions in the listing of B and in the listing of A.) If such a procedure exists we say that A is enumeration reducible to B.”
Rogers then gives a concise reformulation of the above. We use this as the basic informal definition of enumeration reducibility.
Definition 2.3.1 (First version of ≤e ). For any A, B ⊆ ω, A is enumera- tion reducible to B ( A ≤e B ) if there is an effective procedure for getting an enumeration of A from any enumeration of B.
A straightforward argument (see [Rog67] page 146) shows that this definition can be made precise in the following manner. 22 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY
Definition 2.3.2 (Second version of ≤e ). For any A, B ⊆ ω, A≤e B if there exists a c.e. set W such that, for all x ∈ ω,
x ∈ A iff ∃D[ hx, Di ∈ W & D ⊆ B ] , (2.3.1)
and in this case we say that A≤e B via W (or that W witnesses A≤e B ). We define ΦW to be the enumeration operator induced by W in the sense of (2.3.1) and we accordingly use the notation A = ΦW (B).
Notation. We use the alternative notation Φn in the above definition if W = th Wn, the n c.e. set in our standard computable listing { Wn | n ∈ ω } of c.e. th sets. We say that Φn is the n enumeration operator. We obviously obtain a computable listing { Φn | n ∈ ω } of all enumeration operators in this way.
Rogers also suggested an oracle Turing machine characterisation of ≤e in which the model is adapted to incorporate the informal description quoted above—in particular computations are not considered to fail if the oracle fails to reply—but concludes that such a model might not be general enough to include all instances of ≤e (see [Rog67] pages 145-6).
It turns out however that, in a slightly different sense, ≤e can be precisely formulated in terms of the standard oracle Turing machine model (as described in Definition 2.2.2). We prove that this can be done below (Theorem 2.3.3) and we thus obtain a further definition of for ≤e . The reader should note however that this definition does not model ≤e in the exact sense of the passage quoted above.
Notation 1. For any (partial) function f from ω into ω and A ⊆ ω, we say that f enumerates A if Ran(f) = A. Also, for any deterministic oracle machine ϕ we say that ϕf (ϕ with oracle f) enumerates A if ϕf computes a (partial) f function gf (i.e. ϕ = gf ) such that gf enumerates A.
Notation 2. We assume { hn | n ∈ ω } to be the computable enumeration of all finite functions defined on page 6.
Reminder. PF denotes the class of partial functions from ω into ω. 2.3. CONSTRUCTIVE ENUMERATION REDUCIBILITY 23
Theorem 2.3.3. For any A, B ⊆ ω, A ≤e B iff there exists a deterministic oracle Turing machine ϕ such that
(∀f ∈ PF )[ f enumerates B ⇒ ϕf enumerates A ] . (2.3.2)
Proof. (⇐) Suppose that deterministic oracle Turing machine ϕ witnesses (2.3.2). Then define
0 h 0 W := { hy, Di | ∃x∃D [ ϕ D (x)↓ = y & Ran(hD0 ) = D ] } and notice that
0 0 W = { hy, Di | ∃w∃x∃D [ hw, x, y, D i ∈ Outϕ & Ran(hD0 ) = D ] } where Outϕ is defined by (2.2.2) in Note 2.2.8. Thus W is c.e. (since Outϕ is computable). We show that W witnesses the reduction A≤e B.
• Suppose that y ∈ A. Then, by assumption, for any function f such that Ran(f) = B, there exists x such that ϕf (x)↓ = y. Pick any such f and x. Then by definition, there exists a finite function h ⊆ f such that ϕh(x)↓
0 h 0 = y. Define D = Graph(h) and note that ϕ D (x)↓ = y since hD0 =def h.
Let D = Ran(hD0 ). Then hy, Di ∈ W by definition. Also clearly D ⊆ B
since Ran(hD0 ) ⊆ Ran(f) = B.
• Suppose that there exists D such that hy, Di ∈ W and D ⊆ B. Then, by
0 h 0 definition there exist x and D such that ϕ D (x) ↓ = y and Ran(hD0 ) =
D ⊆ B. Let f be any function such that hD0 ⊆ f and Ran(f) = B. (Note that f’s existence is guaranteed2 by the fact that D ⊆ B.) Then ϕf (x)↓ = y. Now, by assumption ϕf = g for some (partial) function g such that Ran(g) = A. Therefore y ∈ A since y = ϕf (x) = g(x).
(⇒) Suppose that W witnesses A ≤e B. We need to define a deterministic oracle Turing machine ϕ such that, if f is a function enumerating B then ϕf enumerates A. This is trivial if A = ∅. Namely define ϕ so that ϕ fails on any
2 For example choose n > max{ w | w ∈ Dom(hD0 ) } and define f(z) = hD0 (z) if z ∈
Dom(hD0 ), f(z) = z − n if z ∈ B + n and f(z)↑ otherwise. 24 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY input x (without consulting the oracle). If, on the other hand A 6= ∅, choose a ∈ A and pick a total computable function h that enumerates W . (Note that W 6= ∅ as A 6= ∅.) Accordingly define the procedure Proc(x) as follows.
Definition of Proc(x)
(i) Compute hm, pi such that x = hm, pi. Proceed to (ii).
(ii) Compute the number y and finite set D such that h(p) = hy, Di. If D = ∅ then output y, else proceed to (iii).
0 0 0 (iii) Compute the finite set D coded by m (i.e such that D = Dm). If ||D || ≥ ||D|| proceed to (iv), else output a (because, as the putative oracle fˆ is a function we know that fˆ(D0) 6= D for cardinality reasons in this case).
(iv) Process (interrogate) each z ∈ D0 in turn (e.g. in increasing order). Namely pass each z ∈ D0 to the putative oracle fˆ (i.e. apply query z). There are two possible outcomes. (a) fˆ(z)↑ for some z ∈ D0. Then Proc(x) fails by definition. (b) fˆ(z)↓ for all z ∈ D0. Then store fˆ(D0) and proceed to (v).
(v) Test whether fˆ(D0) = D. If so then output y, else output a.
Note that Proc(x) is clearly deterministic3. Let ϕ be a deterministic oracle Turing machine implementing Proc(x). We show that ϕ witnesses (2.3.2). To do this we need to show that, for any function f, if f enumerates B, then ϕf enumerates A. Accordingly fix any such f and consider y ∈ ω. There are two cases to consider.
• y ∈ A. Then, by definition, there exists hy, Di ∈ W such that D ⊆ B. 0 −1 −1 Define D = fleast(D) where fleast(D) =def { zv | v ∈ D } and in which 0 zv = µz( f(z) = v ), and suppose that D = Dm. Also let p = µw( h(w) = hy, Di ) (remember that h enumerates W ) and set x = hm, pi. It is now easily checked that Proc(x) outputs y.
3 Notice also that if h = fi , and thus W = Wi , then Proc(x) has fixed parameters a ∈ A as chosen above and i. 2.3. CONSTRUCTIVE ENUMERATION REDUCIBILITY 25
• y∈ / A. Then, by definition, for every hy, Di ∈ W , we know that D * B. Hence, for any x ∈ W , Proc(x) cannot output y during (ii) (since D 6= ∅).
Moreover, for any finite set D0, f(D0) 6= D since Ran(f) = B and D * B. Thus Proc(x) either fails (during (iv)(a)) or outputs a ∈ A (and not y)
We have thus shown that ϕf enumerates A. Since f was assumed to be any function enumerating B this concludes the proof.
Definition 2.3.4 (Third version of ≤e ). For any A, B ⊆ ω, A≤e B if there exists a deterministic oracle Turing machine such that
(∀f ∈ PF )[ f enumerates B ⇒ ϕf enumerates A ] , (2.3.3) in other words such that, for any partial function f (from ω into ω) , if Ran(f) = B , then ϕf computes a partial function g (i.e. g = ϕf ) such that Ran(g) = A.
In this case we say that A≤e B via ϕ (or that ϕ witnesses A≤e B ).
Remark 1. If we restrict Definition 2.3.4 to the case when A and B are non empty and f and g are understood to be total, we obtain a standard result, arising from the relation between ≤e and computable operators ([Rog67] Chap- ter 9) in common usage in the literature4. Thus the particularity of Defini- tion 2.3.4 lies in the fact that, by relaxing the totality requirement for the functions involved, enumeration reductions in which at least one of the two sets is empty are also accounted for.
Remark 2. Note how, despite the disparity with the intuitive model quoted on page 21, Definition 2.3.4 appears to precisely formalise the concise reformulation of this model given in Definition 2.3.1.
Now, suppose that ϕ witnesses A≤e B according to Definition 2.3.4 Then Rogers’ (quoted) model might be thought of as implementing a stage by stage procedure with oracle f in which, at Stage 1 one step of ϕf (0) is performed whereas (for n > 0) at Stage n + 1, each of the computations ϕf (0), . . . , ϕf (n)
4 For example in the indentification of De with a substructure of the Medvedev lattice (see [Rog67] Chapter 13 or [Sor96]). 26 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY is visited. In this model visiting ϕf (m) is tantamount to performing one (more) step of ϕf (m) if this computation has not already halted (and no step otherwise) and then passing directly on to computation ϕf (m + 1). Moreover, if z is a query made during ϕf (m) such that f(z) is undefined we suppose that that the computation is still defined and performs one (empty) step before passing to ϕf (m + 1). Obviously however this last stipulation means that the oracle resource must be viewed in a different manner to that in which it is used in our standard Turing models.
Observe that it is obvious by Definition 2.3.4 that ≤e is transitive. Indeed, 0 if ϕ witnesses A≤e B and ϕ witnesses B≤e C, then if machine ϕb is defined so as to simulate ϕ with ϕ0 replacing the oracle (so that in effect the oracle of ϕ0 becomes the oracle of ϕb), then ϕb witnesses A≤e C.
Lemma 2.3.5. If A, B ⊆ ω are such that A ≤e B and A 6= ∅ then there exists a deterministic oracle Turing machine ϕ such that the following conditions hold.
(a) ϕ witnesses A≤e B in the sense of Definition 2.3.4. f (b) For any total function f : ω → ω, ϕ computes a total function gf such
that Ran(gf ) ⊆ A.
Proof. Suppose that c.e. set Wi witnesses the reduction A≤e B in the sense of Definition 2.3.2. Then there exists an oracle Turing machine ϕ, defined so as to implement the procedure Proc(x) (with parameters i and some a ∈ A) as described in the proof of Theorem 2.3.3. Accordingly, ϕ witnesses A≤e B in the sense of Definition 2.3.4. Let f be any total function from ω into ω. Then it is easily checked that, for all x ∈ ω, Proc(x) outputs some number y ∈ A. f Thus ϕ computes a total function gf such that Ran(gf ) ⊆ A. (Moreover, if
B = ∅, then for every y ∈ A there exists hy, ∅i ∈ Wi and so there exists x such that Proc(x) outputs y during (iii). Thus Ran(gf ) = A in this case).
Notation. For any (partial) functions from ω into ω we use the shorthand f ≤e g if Graph(f) ≤e Graph(g). 2.4. ENUMERATION REDUCIBILITY AND N-T-REDUCIBILITY 27
2.3.2 Other Facts and Notation
Since ≤e is transitive (as mentioned above) and obviously reflexive, ≡e =
≤e ∩e ≥ is an equivalence relation and so gives rise to a degree structure: the enumeration degrees (De). The zero degree of De is easily seen to be Ce. We define the arithmetical e-degrees ( AR ) and the low e-degrees ( L ) to be the classes of degrees containing arithmetical and (Turing) low sets (i.e. each degree contains some such set) respectively. ARe and Le denote the corresponding substructures of De.
We call a set C total if C≤e C (i.e. C ≡e C ⊕ C). We say that an e-degree a is total if a contains a total set, or equivalently if a contains the graph of a characteristic function (or a set of the the form X ⊕ X). TOT denotes the class of total e-degrees and TOT e denotes the corresponding substructure of
De. For any set A, KA denotes the set { n | n ∈ Φn(A) } and JA denotes the 0 set KA ⊕ KA . For any e-degree a and A ∈ a, a denotes dege(JA). We call 0 (k) JA the e-jump of A and a the jump of a. JA denotes the iterated form of JA (0) (k+1) defined by: JA = A and JA = J (k) . The iterated jump of a is written JA a(k) and is defined by: a(0) = a and a(k+1) = (a(k))0 .
2.4 Enumeration Reducibility and n-T-reducibility
Non deterministic Turing reducibility between (partial) functions was studied by McEvoy in his thesis [McE84]. In this Section we rearticulate McEvoy’s and other standard results and draw some further conclusions on the relationship N between ≤NT , ≤T , ≤T , ≤e , and the relation “c.e. in ”.
Notation. We assume { hn | n ∈ ω } to be the computable enumeration of all finite functions defined on page 6.
Theorem 2.4.1 ([McE84]). For any (partial) functions f, g from ω into ω,
f ≤NT g iff f ≤e g .
Proof. (⇒) Suppose that non deterministic oracle machine ϕ witnesses the 28 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY
reduction f ≤NT g. Define the set
W := { hhx, yi,Di | ϕhD (x) has a halting computation
that outputs y }
and notice that W = { hhx, yi,Di | ∃w[ hw, x, y, Di ∈ Outϕ ] } where Outϕ is defined by (2.2.2) in Note 2.2.8. Thus W is c.e. (since Outϕ is computable).
Moreover it is easily checked that f ≤e g via W (in particular because, for all x ∈ ω, it is not the case that ϕg(x)↓↓ as described in Definitions 2.2.3-2.2.4, due to the fact that ϕ witnesses a reduction between functions, namely f ≤NT g).
(⇐) Suppose that the set W witnesses the reduction f ≤e g (i.e. hx, yi ∈ Graph(f) iff ∃D[ hhx, yi,Di ∈ W & D ⊆ Graph(g) ] ). We need to define a non deterministic oracle Turing machine ϕ such that ϕg computes f (i.e. ϕg = f ).
This is trivial if f = h∅ (the nowhere defined function). Namely define ϕ so that ϕ fails for any input x (without consulting the oracle). If, on the other hand, f 6= h∅, pick a total computable function h that enumerates W . (Note that W 6= ∅ as Graph(f) 6= ∅ in this case.) Define the non deterministic procedure Pr(n, x) as follows.
Definition of Pr(n, x).
(i) Guess i ∈ {0, 1}. If i = 0 proceed to Pr(n + 1, x). If i = 1 proceed to (ii).
(ii) Compute h(n) and decode z, y, D (say) such that h(n) = hhz, yi,Di. Proceed to (iii).
(iii) Test whether z = x. If not then fail. If so, then proceed to (iv).
(iv) If D = ∅ then output y. Otherwise there exists k ≥ 0 such that D =
{ hxi, yii | 0 ≤ i ≤ k } and hxi, yii < hxi+1, yi+1i for all 0 ≤ i < k. In
this case process (interrogate) each hxi, yii in turn. Namely, pass xi to
the putative oracleg ˆ (i.e. query xi). There are three possible outcomes.
(a)g ˆ(xi) is undefined. Then Pr(n, x) fails by definition.
(b)g ˆ(xi)↓= w 6= yi. Then fail. 2.4. ENUMERATION REDUCIBILITY AND N-T-REDUCIBILITY 29
(c)g ˆ(xi)= yi. If i < k then proceed to the interrogation of hxi+1, yi+1i. If i = k then output y.
Notation. We say that an implementation of Pr(n, x) is proper (trivial) if during (i) the guess i = 1 (i = 0) is made.
Define (master) procedure Pr(x) = Pr(0, x) and let ϕ be a 2-way non determin- istic Turing machine that implements Pr(x). (Notice that if h = fi , and thus
W = Wi , then Pr(x) has fixed parameter i.) Then we can easily check that ϕ witnesses f ≤NT g. Indeed fix x ∈ ω and consider the two possible cases.
• f(x)↓. In other words f(x) = y for some y ∈ ω. Thus, as f ≤e g via W , there exists finite set D such that hhx, yi,Di ∈ W and D ⊆ Graph(g). However, W = Ran(h) and so h(n) = hhx, yi,Di for some n ∈ ω. Thus there exists a computation of ϕg(x) that outputs y. Namely, ϕg(x) implements Pr(m, x) trivially for all m < n (i.e. makes n guesses i = 0) and then implements Pr(n, x) properly. The latter outputs y by definition. Moreover, for any other
n0, y0,D0 such that h(n0) = hhx, y0i,D0i , if y0 6= y then D0 * Graph(g) (since
Ran(h) = W and W witnesses f ≤e g ) and so any proper implementation of Pr(n0, x) fails during (iv). It follows that ϕg(x) is consistent (i.e. every successfully halting computation of ϕg(x) outputs y) and so ϕg(x)↓ = y.
• f(x)↑. Then, for any y, D such that hhx, yi,Di ∈ W , it must be the case
that D * Graph(g). Hence, for any n, a proper implementation of procedure Pr(n, x) with oracle g that does not fail during (iii) must fail during (iv). This means that every possible computation of ϕg(x) fails, i.e. ϕg(x)↑.
This completes the proof of the Theorem.
Corollary 2.4.2. For any (partial) functions f, g from ω into ω, f ≤NT g iff there exists a 2-way non deterministic Turing oracle machine such that f = ϕg.
Proof. (⇒) By Theorem 2.4.1, we know that f ≤e g. But then, by the proof of Theorem 2.4.1 there exists a 2-way non deterministic machine ϕ such that f = ϕg. 30 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY
(⇐) Trivial.
Notice that obviously Graph(sX ) ≡e X for any set X (and so Y ≤e Z iff sY ≤e sZ for any sets Y,Z). Thus, another consequence of Theorem 2.4.1 is that we can formulate enumeration reducibility in terms of non deterministic Turing reductions as follows.
Definition 2.4.3 (Fourth version of ≤e ). For any A, B ⊆ ω, A ≤e B if sA ≤NT sB .
Note 2.4.4. Call a non deterministic oracle Turing machine acceptor ϕ (see Definition 2.2.13) conjunctive if it only uses positive information. In other words, for any computation of ϕX (x) (i.e ϕ with putative oracle X and input x) any no response from the oracle X causes the computation to fail. Say that N B A is non deterministic conjunctive reducible to B ( A ≤c B ) if A = ϕ for such N a machine ϕ. Then Theorem 2.4.1 also tells us that ≤c is equivalent to ≤e (over Pω).
Theorem 2.4.5. For any (partial) functions f, g from ω into ω such that Dom(g) is computable
f ≤T g iff f ≤e g .
Proof. (⇒) Trivially f ≤NT g and so f ≤e g by Theorem 2.4.1.
(⇐) Suppose that f ≤e g is witnessed by W . In other words, f(x) = y iff ∃D[ hhx, yi,Di ∈ W & D ⊆ Graph(g) ]. We need to define a deterministic oracle Turing machine ϕ such that ϕg computes f (i.e. ϕg = f ). This is trivial if f = h∅ (the nowhere defined function). Namely define ϕ so that ϕ fails for any input x (without consulting the oracle). If, on the other hand, f 6= h∅, pick a total computable function h that enumerates W . (Note that W 6= ∅ as Graph(f) 6= ∅ in this case.) Define the deterministic procedure Prb (n, x) as follows.
Definition of Prb (n, x). 2.4. ENUMERATION REDUCIBILITY AND N-T-REDUCIBILITY 31
(i) Compute h(n) and decode z, y, D (say) such that h(n) = hhz, yi,Di. Proceed to (ii).
(ii) Test whether z = x. If not then proceed to Prb (n + 1, x). If so, then proceed to (iii).
(iii) If D = ∅ then output y. Otherwise there exists k ≥ 0 such that D =
{ hxi, yii | 0 ≤ i ≤ k } and hxi, yii < hxi+1, yi+1i for all 0 ≤ i < k. In
this case process (interrogate) each hxi, yii in turn. Namely test firstly
whether xi ∈ Dom(g). If not, then proceed to Prb (n + 1, x). If so then
pass xi to the putative oracleg ˆ (i.e. query xi). There are three possible outcomes.
(a)g ˆ(xi) is undefined. Then Prb (n, x) fails by definition.
(b)g ˆ(xi)↓ = w 6= yi. Then proceed to Prb (n + 1, x)
(c)g ˆ(xi)↓ = yi. If i < k then proceed to the interrogation of hxi+1, yi+1i. If i = k then output y.
Define (master) oracle procedure Prb (x) = Prb (0, x) . Note that Prb (x) is clearly deterministic and effective, since Dom(g) is computable5. Moreover, if g is the oracle for Prb (x) then (iii)(a) is redundant—i.e. never happens. Accord- ingly let ϕ be a deterministic oracle Turing machine that implements Prb (x).
Then we can easily check that ϕ witnesses the reduction f ≤T g (namely that Prb (x) with oracle g outputs f(x) whenever f(x)↓ and does not halt—i.e. fails— otherwise).
Corollary 2.4.6. For any (partial) functions f, g from ω into ω such that Dom(g) is computable,
f ≤T g iff f ≤NT g .
Proof. Apply Theorem 2.4.1 and Theorem 2.4.5.
We now establish the analogy hinted at by our manner of defining the rela- N tions “≤T ” and “ c.e. in ”. (see Definition 2.2.7 and Definition 2.2.9). 5 Notice also that if h = fi (and so W = Wi ) and j is the index of a deterministic Turing machine that computes cDom(ˆg) , then Prb (x) has fixed parameters i and j. 32 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY
Proposition 2.4.7. For any A, B ⊆ ω,
N A c.e. in B iff A≤T B iff sA ≤e cB iff A≤e B ⊕ B.
Proof. By Corollary 2.4.6, sA ≤T cB iff sA ≤NT cB ; this proves the first equiv- alence. By Theorem 2.4.1 sA ≤NT cB iff sA ≤e cB ; this proves the second equivalence. The third equivalence is obvious (since B ⊕ B ≡e Graph(cB)).
Remark. Corollary 2.4.6 also implies that, for any A, B ⊆ ω, cA ≤NT cB iff cA ≤T cB . In other words the notation A ≤T B can also be thought of as shorthand for cA ≤NT cB .
Note 2.4.8. Suppose that A, B ⊆ ω and that W ⊆ ω is a c.e. set such that, for all x ∈ ω,
x ∈ A iff ∃D[ hx, Di ∈ W & D+ ⊆ B & D− ⊆ B ] . (2.4.1)
+ − Then A = ΦW (B ⊕ B) by definition (since “D ⊆ B & D ⊆ B ” is equivalent to “D ⊆ B ⊕ B ”). N On the other hand, for any X,Y ⊆ ω, X ≤T Y iff X ≤e Y ⊕ Y by Proposi- tion 2.4.7. Bearing this in mind, define ΦbW to be the n-T-operator witnessing
(2.4.1) in the sense that A = ΦbW (B) = ΦW (B ⊕ B) . Accordingly if we assume
{ Φbn | n ∈ ω } to be an enumeration of n-T-operators derived from our standard enumeration of e-operators {Φn | n ∈ ω }, then for any X,Y ⊆ ω,
N X ≤T Y iff X = Φbn(Y ) for some n ∈ ω. In practice, in the present context we will only take advantage of the equiv- alence X c.e. in Y iff X = Φn(X ⊕ X), for some n ∈ ω, guaranteed by Propo- sition 2.4.7 (see the proof of Theorem 2.5.2 below). Note however that we will make extensive use of a variant of the notion of an n-T-operator in the context of polynomial time bounded reductions.
Finally in this Section we draw the reader’s attention to the relationship between DT and De implied by Theorem 2.4.5. In effect, if f, g are total functions 2.5. NON CONSTRUCTIVE ENUMERATION REDUCIBILITY 33
then the Theorem tells us that f ≤T g iff f ≤e g . We can thus see that DT is essentially a substructure (TOTe) of De.
Reminder. The notation CX is shorthand for Graph(cX ).
Proposition 2.4.9. The embedding ιe of the Turing degrees into the e-degrees induced by the map X 7→ CX is an order embedding that preserves suprema and least element.
The reader should also note that a central element of our study of the sym- metric enumeration degrees (Chapter 3) is precisely the above map viewed as an embedding from the Turing degrees into the symmetric enumeration degrees.
2.5 Non Constructive Enumeration Reducibil- ity
In [Sel71] Selman formulated a non constructive definition of a reducibility that turned out to be equivalent to enumeration reducibility. We look briefly at Selman’s original argument in Note 2.5.1 below, and we then present a version of Selman’s proof of the above equivalence. We also discuss results that follow from Selman’s definition.
Note 2.5.1 (Selman’s argument). In [Sel71] Selman defined two classes of re- + + lations { A B A X X A Gn B iff (∀X ⊆ ω)[ B ∈ Σn ⇒ A ∈ Σn ] . Selman proved that (over Pω) <1 is equivalent to ≤T (Corollary 1.4 of [Sel71]). Moreover Selman also showed that G1 is essentially the same as ≤e . Indeed, on page 344 of [Sel71] Selman defined a relation =1 such that, for any A, B ⊆ ω, A =1 B iff there exist (total) computable functions f and g such that, for all x ∈ ω, x ∈ A iff ∃y(∀z < f(y))[ g(x, y, z) ∈ B ] , (2.5.1) 34 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY and went on to prove (Theorem 2.8 on page 347) that, if B/∈ {∅, ω}, then A =1 B iff A G1 B . Now, if A =1 B via functions f and g in the sense of (2.5.1) then the c.e. set Wc = { hx, Di | ∃y[ D = { g(x, y, z) | z < f(y) } ] } witnesses A≤e B . In the other direction, if A≤e B and A = ∅ then if we let f be the constant zero function (i.e. f(x) = 0 for all x ∈ ω), then f with any computable g witnesses A =1 B. However if A 6= ∅ and B = ∅ then clearly there are no f and g witnessing (2.5.1). On the other hand if we assume that A 6= ∅ and B 6= ∅ then we can choose a (total) computable function f enumerating W (since A 6= ∅ implies W 6= ∅). If also we suppose that B 6= ω, then we can pick b ∈ B and define (total) computable g such that z if f(y) = hx, Di and z ∈ D g(x, y, z) = b otherwise. Then, if we define f 0 so that f 0(y) = f(y) + b + 1, we see that f 0 and g witness the reduction A =1 B . We thus know that A =1 B ⇒ A ≤e B for all A, B and A≤e B ⇒ A =1 B provided that B/∈ {∅, ω}. Thus Selman’s proof of the (almost) equivalence of =1 and G1 shows that, if B/∈ {∅, ω} then A ≤e B iff A G1 B. However the condition B/∈ {∅, ω} is clearly an artefact of the definition of =1. Accordingly Selman’s proof shows, to all intents and purposes, the equivalence of ≤e and G1. We now proceed by presenting a version of Selman’s proof due (mainly) to Copestake [Cop97] and Cooper [Coo90]. Theorem 2.5.2. For all sets A, B ⊆ ω, A≤e B iff (∀X ⊆ ω)[ B c.e. in X ⇒ A c.e. in X ] (2.5.2) Proof. (⇒) Suppose that deterministic oracle Turing machine ϕ witnesses A≤e B (in the sense of Definition 2.3.4). Let X be any set and let f be a (par- f tial) function f ≤T X enumerating B (see Note 2.2.10). Then ϕ enumerates 2.5. NON CONSTRUCTIVE ENUMERATION REDUCIBILITY 35 A. In other words, there exists (partial) g such that ϕf = g and g enumerates A. Thus g ≤T X (since g ≤T f via ϕ and f ≤T X) and so A is c.e. in X by definition. (⇐) We prove the contrapositive of ⇒. Namely we show that if Ae B , then there exists a set C such that B c.e. in C (and in fact B ≤e C ) but A is not c.e. in C. Notation. We use the notation for strings described on page 7 and we assume # : 2<ω → ω to be a (one-one onto) computable coding of all such strings. We suppose { Φn | n ∈ ω } to be the standard computable listing of e-operators defined on page 22. The set C is constructed so as to satisfy, for all n ≥ 0, the requirement Rn : A 6= Φn(C ⊕ C) . Thus, by Proposition 2.4.7 we guarantee A not c.e. in C. However, during the construction of C we also satisfy the condition that, for all x ∈ ω, x ∈ B iff ∃y[ hx, yi ∈ C ]. Accordingly we ensure that B c.e. in C . The construction. C is constructed by finite initial segments {αn}n≥0 so S + that, at the end of the construction, C = { αn | n ≥ 0 }. Notation. For any σ ∈ 2<ω we define the predicate + admissible(σ, n) ≡ αn ⊂ σ & ∀x∀y[ hx, yi ∈ σ ⇒ x ∈ B ] &(∀x ≤ n)[ x ∈ B ⇒ ∃y(hx, yi ∈ σ+)] for n ≥ 0 and admissible(σ, −1) = true (where αn ⊂ σ denotes αn ⊆ σ and |σ| > |αn|). Observe that the last conjunct of admissible(α, n) is of course shorthand for (∀x ≤ n)[ x∈ / B ∨ ∃y(hx, yi ∈ σ+) ]. Stage n = 0. α0 = λ (the empty string). Stage n+1. At this point in the construction αn has already been defined. We 36 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY diagonalise against e-operator Φn. There are three logical cases to be considered. + − Case 1. ∃x [ x∈ / A & ∃σ( admissible(σ, n)& x ∈ Φn(σ ⊕ σ ))] + − Case 2. ∃x [ x ∈ A & ∀σ( admissible(σ, n) ⇒ x∈ / Φn(σ ⊕ σ ))] + − Case 3. ∀x [ x ∈ A iff ∃σ( admissible(σ, n)& x ∈ Φn(σ ⊕ σ ))] We will show in Claim 1 that Case 3 contradicts our original assumption that Ae B. We thus proceed as follows. • If Case 1 holds, let (x, σ) be the least pair satisfying admissible(σ, n) and x ∈ Φn(σ) and define αn+1 = σ. • If Case 2 holds, let αn+1 be the least string σ satisfying admissible(σ, n). Note that by induction αn satisfies admissible(αn, n − 1) and so it follows easily + that such a σ exists. (Indeed, we only need to ensure that ∃y[ hn, yi ∈ αn+1 ] + iff n ∈ B. Now, if hn, yi ∈ αn for some y then we know that n ∈ B as αn satisfies admissible(αn, n − 1) and we can set αn+1 = αn b 0. If there is no such y then we define αn+1 according to whether n ∈ B or not. If not, we let αn+1 = αnb 0. If on the other hand n ∈ B we let y = µz[ hn, zi ≥ |αn| ] 6 k and we define αn+1 = αn (b0) b hn, yi where k = hn, yi − |αn|.) Analysis of the construction. We complete the proof by proving the fol- lowing three Claims. Claim 1. For any n ≥ 0, Case 3 does not hold at Stage n + 1. Proof. Suppose otherwise, i.e. suppose that Case 3 holds at some Stage n + 1. We show that this implies A ≤e B in contradiction with our original assumption. We firstly define the set + W = { h#(σ),Di | αn ⊂ σ &(∀z ≤ n)[ z∈ / B ∨ ∃y(hz, yi ∈ σ )] & D = { x | ∃y[ hx, yi ∈ σ+ }} 6 This notation means that for example, if k = 2, then αn+1 = αn b 0 b 0 bhn, zi. 2.5. NON CONSTRUCTIVE ENUMERATION REDUCIBILITY 37 Observe that W is computably enumerable. Moreover clearly { #(σ) | admissible(σ, n) } ≤e B (2.5.3) + − via W . Now define Wc = { hx, {#(σ)} i | x ∈ Φn(σ ⊕ σ ) } and note that Wc is also computably enumerable. Also, our present assumption that Case 3 holds implies that A≤e { #(σ) | admissible(σ, n) } via Wc. Thus, by (2.5.3) and transitivity of ≤e , we know that A≤e B (contradiction). 3 Claim 2. B c.e. in C. Proof. Note firstly that, by construction αn satisfies admissible(αn, n − 1) (2.5.4) for all n ≥ 0. Fix x ∈ ω and consider x relative to B. • x∈ / B. Suppose also that hx, yi ∈ C for some y. Then, for some nx > x hx, yi ∈ αn for all n ≥ nx. However this contradicts (2.5.4). • x ∈ B. Then, by (2.5.4) for the case n = x + 1, there exists y such that + hx, yi ∈ αx+1 ⊆ C. Thus B ≤e C via the set W = { hx, {hx, yi}i | x, y ∈ ω } and so B c.e. in C. 3 Claim 3. Requirement Rn is satisfied for all n ≥ 0. Proof. By Claim 1, at Stage n + 1, either Case 1 or Case 2 hold at Stage n + 1. + − If Case 1 holds there exists x∈ / A such that x ∈ Φn(αn+1 ⊕ αn+1) and thus, by definition x ∈ Φn(C ⊕C). On the other hand, if Case 2 holds, there exists x ∈ A + − such that x∈ / Φn(σ ⊕σ ) for all σ satisfying admissible(σ, n). Suppose that x ∈ + − Φn(C ⊕C). Then, for some m ≥ n, x ∈ Φn(αm+1 ⊕αm+1). But by construction αm+1 satisfies admissible(αm+1, m) and thus also satisfies admissible(αm+1, n). However the Case 2 hypothesis is that no such initial segment (as αm+1) exists. Hence x∈ / Φn(C ⊕ C). It follows that in both cases Rn is met. 3 38 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY By Claim 2, B c.e. in C whereas Claim 3 ensures that A not c.e. in C. Thus C witnesses the fact that, if A e B then it is not the case that (∀X ⊆ ω)[ B c.e. in X ⇒ A c.e. in X ] . This completes the proof. By the above result we obtain a non constructive definition of ≤e . Definition 2.5.3 (Fifth version of ≤e ). For all A, B ⊆ ω, A≤e B if (∀X ⊆ ω)[ B c.e. in X ⇒ A c.e. in X ] . Note 2.5.4. By Proposition 2.4.7 we also know that A≤e B iff N N (∀X ⊆ ω)[ B≤T X ⇒ A≤T X ] . (2.5.5) Similarly, by Corollary 1.4 of [Sel71], A≤T B iff N N (∀X ⊆ ω)[ X ≤T A ⇒ X ≤T B ] . One advantage of Selman’s non constructive definition of ≤e is that it pro- vides us with a straightforward means of proving that ≤e is a maximal transi- tive subrelation of “ c.e. in ” (see Theorem 2.7 of [Sel71]). We prove a slightly stronger result. Notation. We say that a class C ⊆ Pω is an e-ideal if C is closed under join (i.e. A, B ∈ C ⇒ A ⊕ B ∈ C ) and closed under ≤e (i.e. B ∈ C & A≤e B ⇒ A ∈ C ). We say that C is Turing jump closed if KA ∈ C whenever A ∈ C. Theorem 2.5.5. ≤e is a maximal transitive subrelation of the relation “ c.e. in ” over any Turing jump closed e-ideal. Proof. Let C be a Turing jump closed e-ideal and suppose that there exists a transitive relation R over C such that ≤e ⊂ R ⊆ “c.e. in ” over C. Thus there exist sets A, B ∈ C such that A R B but Ae B. Now, by the proof of Theorem 2.5.2, there exists a set B ≤e C such that A not c.e. in C. Also the construction of C is clearly effective in KA⊕B. Thus, by hypothesis, C ∈ C. So B ≤e C implies that B R C and hence A R C (since A R B and R is transitive). However this means that A c.e. in C contradicting our assumption relative to A and C. 2.5. NON CONSTRUCTIVE ENUMERATION REDUCIBILITY 39 Corollary 2.5.6. For any set A, ≤e is a maximal transitive relation of the relation “c.e. in ” over the Arithmetical Hierarchy relativised to A. Remark 1. Soskov proved in Theorem 1.4 of [Sos00] that, for any A, B ⊆ ω, A≤e B iff (∀X ⊆ ω)[ B c.e. in X & JX = JB ⇒ A c.e. in X ] . Call a class C e-jump down if, whenever B ∈ C and JX = JB then X ∈ C. Then, by a similar argument to the proof of Theorem 2.5.5, we can show that over any e-jump down e-ideal ≤e is a maximal transitive subrelation of “c.e. in ”. Note that the class of low sets is an e-jump down e-ideal. Remark 2. Another consequence (using Proposition 2.4.7) of Selman’s defini- tion of ≤e is that, for any a, b ∈ De, a ≤ b iff (∀x ∈ T OT )( b ≤ x ⇒ a ≤ x ) , (2.5.6) and from this we can directly derive Sorbi’s result [Sor98] that TOT is an automorphism base of De. Namely, suppose that F is an automorphism of De such that F (c) = c for all c ∈ T OT . • Let d be any total e-degree such that a ≤ d. Then F (a) ≤ F (d) since F is an automorphism of De. Also F (d) = d since d ∈ T OT . Thus F (a) ≤ d. It follows by (2.5.6) that F (a) ≤ a since d was chosen arbitrarily. • Let e be any total e-degree such that F (a) ≤ e. Then F (a) ≤ F (e) since F (e) = e by totality of e. Thus a ≤ e as F is an automorphism. It follows by (2.5.6) that a ≤ F (a) since e was chose arbitrarily. Thus F (a) = a (since F (a) ≤ a and a ≤ F (a)) for all a ∈ De. Remark 3. With Remark 2 in mind notice that Soskov’s theorem tells us that, for any a, b ∈ De, a ≤ b iff (∀x ∈ T OT )( x0 = b0 & b ≤ x ⇒ a ≤ x ) , (2.5.7) 40 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY Define an ideal I to be jump down if, for any e-degrees a and d, if, whenever a ∈ I and d0 = a0, then d then d ∈ I. Then we can show, using a similar argument to that followed in Remark 2, that for any such I the substructure of De induced by I (i.e. Ie) has automorphism base I ∩T OT . Thus the structures ARe (the arithmetical degrees) and Le (the low degrees) have automorphism bases AR ∩ T OT and L ∩ T OT respectively. 2.6 Enumeration reducibility and Lambda Scott showed in [Sco75, Sco76] that enumeration reducibility can be expressed in terms of the λ-calculus. Namely Scott defined an extension of the language of the λ-calculus (Lambda) and showed that enumeration reducibility corresponds precisely to application by closed terms of this language, under the interpreta- tion in Pω first developed for the pure λ-calculus by Plotkin in [Plo72]. The work that we present below is both an attempt at presenting Scott’s original construction and at showing how this leads to a natural setting for articulating the basic properties of enumeration reducibility and its degree structure. The reader will observe however that we introduce a generalised language GLambda containing enough constants for each of the members of Pω. This is an idiosyn- cracy of our own presentation and not to be found in Scott’s work. There are two reasons for this approach. The first stems from the fact that the succinctness of Scott’s account follows partly from the fact that he eschews a formal defi- nition of the semantics of the language Lambda. Since, for reasons of clarity, we would like to underline the difference between language and interpretation we need some means of formally describing the latter. The standard means of doing this (see for example [Bar84] Chapter 18) is to introduce valuations for the countably many variables of Lambda. Our approach is to postulate a fixed set of constants for Pω and to extend Lambda by allowing these con- stants as basic terms of the language (so obtaining GLambda). This enables us to define the interpretation of closed terms of the language only, thus avoid- ing reference to valuations. (Terms with free variables have implicit values as 2.6. ENUMERATION REDUCIBILITY AND LAMBDA 41 functions Pω → Pω and we restrict ourselves to a form of shorthand for their denotation—see the Notation detailed on page 45.) The second reason is that we need constants in any case to express enumeration reducibility in this context and so it is not unnatural to postulate their existence sooner rather than later. Notation. We use standard notation for terms of the λ-calculus (as found, for example in [Kri90]). In particular we use x, y, z, . . . to denote variables, λx.t to denote (instances of) abstractions and (t)u to denote applications. We often use shorthand for terms when the meaning is clear, for example, (t)n u for (t)(t) ... (t) u | {z } n (t)u v w for (((t)u)v)w (t)u (v)w for ((t)u)(v)w and so on. 2.6.1 The language Lambda and the C.E. Sets. Before introducing the languages Lambda and GLambda we briefly review the notion of continuity that we will be using. Indeed we shall work within the framework of the Scott topology for the complete partial order (h Pω , ⊆ i. The induced topological space has as (countable) basis sets of the form: Un = { A ⊆ ω | Dn ⊆ A } . Accordingly every open set is a union of sets of this form. A function F : Pωk → Pω is continuous in this context iff [ F (A1,...,Ak) = {F (Dn1 ,...,Dnk ) | Dn1 ⊆ A1,...,Dnk ⊆ Ak } Note 2.6.1 (The integers as subspace). For any number n ∈ ω we identify n with the singleton set {n} and ω with the corresponding (discrete) subspace of Pω. 42 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY Definition 2.6.2. The graph of a continuous function F : Pωk → Pω is defined by the equation graphk(F ) = { hh... hn, mki, mk−1i,...i, m1i | n ∈ F (Dm1 ,...,Dmk ) } for all k ≥ 1. We write graph(F ) as shorthand for graph1(F ). Thus, if k = 1, graph(F ) = { hn, mi | n ∈ F (Dm) }. Definition 2.6.3. The function Pω → Pω determined by any set A ⊆ ω is defined by the equation fun(A)(X) = { n | ∃m[ hn, mi ∈ A & Dm ⊆ X ] } and generally, for k ≥ 1, the function Pωk → Pω determined by A is defined by induction. . . fun1(A)(X) = fun(A)(X) funk+1(A)(X1,X2,...,Xk+1) = fun( funk(A)(X2,...,Xk+1))( X1 ) Lemma 2.6.4 ([Sco75, Sco76]). For all k ≥ 1, every continuous function F : Pωk → Pω is uniquely determined by its graph in the sense that funk( graphk(F ))(X1,...,Xk) = F (X1,...,Xk) (2.6.1) conversely every set A ⊆ ω determines a continuous function and we have A ⊆ graphk(funk(A)) (2.6.2) where equality holds if A satisfies hhn, mki, . . . , m1i ∈ A & Dm1 ⊆ Dp1 ,...,Dmk ⊆ Dpk (2.6.3) ⇒ hhn, pki, . . . , p1i ∈ A for all mi, pi ∈ ω, 1 ≤ i ≤ k. 2.6. ENUMERATION REDUCIBILITY AND LAMBDA 43 Lemma 2.6.5 ([Sco75, Sco76]). Continuous functions of several variables over Pω are closed under substitution. Theorem 2.6.6 (The fixed point Theorem (Kleene)). Every continuous func- tion F : Pω → Pω has a least fixed point given by the formula: [ fix(F ) = { F n(∅) | n ∈ ω } (2.6.4) where F n is the n-fold composition of F with itself. We now introduce the language Lambda and its extension by constants GLambda and we describe the interpretation of closed terms of the language GLambda. Definition 2.6.7. Let x, y, . . . be a countable set of variables. A Lambda term is obtained by application of the following rules a finite number of times: • a variable x is a Lambda term • 0 is a Lambda term • if u is a Lambda term, then u+1 is a Lambda term • if u is a Lambda term, then u−1 is a Lambda term • if u, v, t are Lambda terms then u ⊃ v, t is a Lambda term • if x is a variable and u is a Lambda term then λx.u is a Lambda term • if u and v are Lambda terms then (u)v is a Lambda term. Free variables of a term t are defined as usual (for the λ-calculus). A closed Lambda term is a term having no free variables. Closed Lambda denotes the set of such terms. Note 2.6.8. We assume C to be a fixed set of constants (parameters) having the same cardinality as Pω. Definition 2.6.9 (Parametric environment). A total onto function η : C → Pω is said to be a parametric environment for Pω. Note 2.6.10. It is of course standard mathematical practice to name sets Pω with more or less meaningful symbols—Dn, A etc.—according to the context. 44 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY Likewise we allow naming or shorthand for constants. For example (for any parametric environment η) if η(Aζ ) = Dn then we allow Dn as (meaningful) shorthand for Aζ . In other words, in general we use η(A) = A whenever we designate A ⊆ ω η(Dn) = Dn for all n ∈ ω η(n) = n (=def {n}) for all n ∈ ω and so on. Definition 2.6.11 (GLambda). Assume C be the fixed set of constants stipu- lated above. A Generalised Lambda (GLambda) term is obtained by a finite number of applications of the rules of Definition 2.6.7 with the additional rule • a constant A ∈ C is a GLambda term. Closed GLambda denotes the set of closed GLambda terms. For any term t, FV (t) denotes its set of free variables and setConst(t) denotes the collection of set constants (i.e. members of C) in t. Definition 2.6.12. Assume that C be the fixed set of constants stipulated above and let η be a parametric environment for Pω. The map [[ ]]η : Closed GLambda → Pω is defined as follows: [[ A ]]η = η(A) for every A ∈ C (2.6.5) [[ 0 ]]η = 0 i.e. the singleton {0} (2.6.6) [[ u+1 ]]η = { n+1 | n ∈ [[ u ]]η } (2.6.7) [[ u−1 ]]η = { n | n+1 ∈ [[ u ]]η } (2.6.8) [[ u ⊃ v, t ]]η = { n ∈ [[ v ]]η | 0 ∈ [[ u ]]η } ∪ { n ∈ [[ t ]]η | ∃k ( k+1 ∈ [[ u ]]η ) } (2.6.9) [[(u)v ]]η = { n | ∃m ( hn, mi ∈ [[ u ]]η & Dm ⊆ [[ v ]]η ) } (2.6.10) [[ λx.u ]]η = { hn, mi | n ∈ [[ u[Dm/x] ]]η } (2.6.11) 2.6. ENUMERATION REDUCIBILITY AND LAMBDA 45 where u, v and t are closed GLambda terms. Moreover, u[Dm/x] is the closed GLambda term obtained by replacing all (free) occurrences of x in u by the constant Dm (see Note 2.6.10). Note 2.6.13. The outcome of the work below does not depend on which para- metric environment η we use. Thus, for simplicity of notation, we assume η to be fixed and we think of η as the generic parametric environment. Accordingly from now on we use [[ ]] instead of [[ ]]η. (Notice however that for clarity we shall mention η for functional notation—see the Notation presented below.) Remark. The interpretation of the term u ⊃ v, t can be made explicit as follows ∅ if [[ u ]] = ∅ [[ v ]] if [[ u ]] = 0 (i.e. {0}) [[ u ⊃ v, t ]] = [[ t ]] if 0 ∈/ [[ u ]] 6= ∅ [[ v ]] ∪ [[ t ]] otherwise. Definition 2.6.14 (GLambda/Lambda definability). We say that a term of the language GLambda (Lambda) defines a function of its free variables. For any set A and finite class U = {B1,...,Bn} we say that A is Lambda definable in U iff A = [[ t ]] for some closed GLambda term t such that η( setConst(t)) ⊆ U (i.e. the set constants in t are all mapped to—so are constants representing— sets in U). Moreover, if U = {B} we say that A is Lambda definable in B and if U = ∅ we say that A is Lambda definable. Notation. For any GLambda term with free variables in {x0, . . . , xn−1} we use the notation (X0,...,Xn−1) 7→ [[ t[x0, . . . , xn−1] ]]hη(xi)=Xi | i Theorem 2.6.15. For all k ≥ 1 and any function F : Pωk → Pω, F is continuous iff it is GLambda definable. Proof. See Appendix A.1 page 205. 46 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY Corollary 2.6.16 ([Sco75, Sco76]). All Lambda definable functions are con- tinuous. Definition 2.6.17. Let u and v be any GLambda terms. Then we say that u α-transforms to v (u *α v) if, for some y not occurring in u, u = λx.u0 and v = λy.u0[y/x](α) and we say that u β-transforms to v (u *β v) if u = (λx.t)w and v = t[w/x]. (β) 0 0 We say that u α-reduces to v (u →α v) if there are subterms u and v of u 0 0 0 0 and v respectively such that u *α v and v = u[v /u ]—in other words if v 0 0 is obtained from u by the single transformation u *α v . Similarly we say that u β-reduces to v (u →β v)if the same conditions hold with α replaced by β. We also say that u αβ-reduces to v (u →αβ v) if u →α v or u →β v and we call αβ-equivalence ('αβ) the equivalence relation on terms induced by the transitive closure of this relation. In other words, u 'αβ v iff u = v or there exists n ≥ 1 and terms u0, . . . , un such that u0 = u and un = v and ui →αβ ui+1 or ui+1 →αβ ui for all 0 ≤ i < n. Theorem 2.6.18. For all closed GLambda terms u, v, λx.t, λx.w: (a) u 'αβ v implies [[ u ]] = [[ v ]]. (b) (The ξ rule) [[ λx.t ]] = [[ λx.w ]] iff for all A ⊆ ω, [[ t[A/x] ]] = [[ w[A/x] ]]. Proof. See Appendix A.1 page 207. Corollary 2.6.19 ([Sco75, Sco76]). Pω is a model (satisfying α,β and ξ) for the λ-calculus. Note 2.6.20 (Scott’s Reduction Theorem). Let u be a closed GLambda term such that setConst(u) = {B1, B2,..., Bn}. Then, by Theorem 2.6.18, 0 [[ u ]] = [[(λx1, . . . λxn.u ) B1 B2,... Bn ]] 2.6. ENUMERATION REDUCIBILITY AND LAMBDA 47 0 where u = u[x1/B1, . . . , xn/Bn]. Notice that this reiterates an implicit Corol- lary of Theorem 2.6.15, notably that F : Pωn → Pω is continuous iff there exists a closed GLambda term u such that F (X1,X2,...,Xn) = [[(u) x1 x2 . . . xn ]]hη(xi)=Xi | 1≤i≤ni. Definition 2.6.21 (Generalised Enumeration Operator [Cas71]). Define Φ : Pω2 → Pω to be the continuous function induced by application of GLambda terms: ΦX0 (X1) := [[(x0)x1 ]]hη(xi)=Xi | i<2i Accordingly, for any A ⊆ ω (closed GLambda term u) we say that ΦA (Φ[[ u ]]) is the generalised operator defined by A (u). Note 2.6.22. By Definition 2.6.21 we are able to use the following notation: ΦA(B) =def [[(A)B ]] Φ[[ u ]]([[ v ]]) =def [[(u)v ]] for any A, B ⊆ ω and u, v ∈ Closed GLambda etc. Also notice that Φ is obviously Lambda definable. Indeed ΦX0 (X1) = [[( λs.λz.(s)z ) x0 x1 ]]hη(xi)=Xi | i<2i Theorem 2.6.23 (The Combinator Theorem [Sco75, Sco76]). A set A ⊆ ω is Lambda definable iff A = [[ u ]] for some (closed) term u generated by finitely many applications of the combi- nators 2.6.12-2.6.17 below. A function F : Pωk → Pω is Lambda definable iff F (X1,...,Xk) = [[(s) x1 . . . xk ]]hη(xi)=Xi | 1≤i≤ki for some (closed) Lambda term s generated by finitely many application of the 48 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY combinators 2.6.12-2.6.17 below. 0 = 0 (2.6.12) suc = λx.x+1 (2.6.13) pred = λx.x−1 (2.6.14) cond = λx.λy.λz.x ⊃ y, z (2.6.15) K = λx.λy.x (2.6.16) S = λu.λv.λy.((u)x)(v)x . (2.6.17) Proof. Let u be any closed Lambda term. Then, by induction on the structure 0 0 of u we can show that u 'αβ u such that u is derived from u by replacing every instance of a subterm of the form v + 1 w − 1 s ⊃ v, v0 by (respectively) (suc)v (pred)w (cond) s v v0 . Also, if we set u00 := u0[w/0, x/suc, y/pred, z/cond] such that w, x, y, z are new free variables (i.e. not appearing in u0 before this substitution), then 0 00 u 'β (λw.λx.λy.λz.u ) 0 suc pred cond However λw.λx.λy.λz.u00 is a closed term of the pure λ-calculus. Hence, by a standard result of the λ-calculus (see for example [Bar84] Proposition 8.1.2.) there exists a (closed) term t generated (solely) by applications of K and S such that 00 t 'αβ λw.λx.λy.λz.u . This means that u 'αβ (t) 0 suc pred cond and so [[ u ]] = [[(t) 0 suc pred cond ]] and the term (t) 0 suc pred cond is generated from the combinators 2.6.12- 2.6.17. 2.6. ENUMERATION REDUCIBILITY AND LAMBDA 49 Notation. We use n as shorthand for (suc)n0 (whereas n is a member of C, i.e. a set constant). Thus, in Pω, n =def {n} = [[ n ]] = [[ n ]] (2.6.18) for all n ∈ ω. Accordingly we will use the Lambda terms n in preference to the GLambda constants n. Definition 2.6.24. The paradoxical combinator Y is defined by the equation Y := λu. (λx.(u)(x)x) λx.(u)(x)x (2.6.19) Theorem 2.6.25 (The First Recursion Theorem [Sco75, Sco76]). If F : Pω → Pω is continuous and G = graph(F ) then fix(F ) = [[(Y)G ]] ( =def Φ[[Y]](G)) Remark. Theorem 2.6.25 implies that, for any continuous function F : Pω → Pω and finite D ⊆ Pω, if F is definable in D then fix(F ) is also. Also notice that Y induces a continuous operator. Note 2.6.26 (Interlude on functions and graphs). Suppose that F : Pω → Pω is continuous and let G = graph(F ). Notice that F (X) =def fun(G)(X) and fun(G)(X) = [[(G)x ]]hη(x)=Xi (2.6.20) and, for any A ⊆ ω, graph(fun(A)) = [[ λx.(A)x ]] (2.6.21) in the terminology of Definitions 2.6.2-2.6.3. It then follows that G =def { hn, mi | n ∈ F (Dm) } = { hn, mi | n ∈ [[(G)Dm ]] } = [[ λx.(G)x ]] Also, if u is any closed GLambda term, (e.g. A) such that [[ u ]] = [[ λx.(u)x ]] 50 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY then [[ u ]] = graph([[(u)x ]]hη(x)=Xi). In other words, by Theorem 2.6.15, [[ u ]] (i.e. A if u = A) is the graph of a continuous function. It therefore seems perfectly natural to take graph(F ) to be the canonical element in in Pω representing F . Accordingly we can identify F with its graph. This means that the space of continuous functions Pω → Pω can be identified with FUN = { A | A = [[ λx.(A)x ]] } ⊆ Pω Note 2.6.27 (Some Lambda definitions). We list below some useful constants and functions that Scott observed to be Lambda definable. (a) The constant ⊥ such that [[ ⊥ ]] = ∅. Note that ∅ is the least fixed point of the identity function X 7→ X. So define ⊥ := (λx.(x)x) λx.(x)x (2.6.22) since (Y) λx.x 'αβ (λx.(x)x) λx.(x)x (b) The term ∪ such that [[ x ∪ y ]] = [[ x ]] ∪ [[ y ]] is defined by x ∪ y := λz.0 ⊃ x, y . (2.6.23) (c) The constant > such that [[ > ]] = ω is defined by > := (Y) λx.0 ∪ (x+1) . (2.6.24) (d) The term ∩ such that [[ x ∩ y ]] = [[ x ]] ∩ [[ y ]] is defined is defined in two stages. Firstly define: intersect0 = (Y) λs.λz.λx.λy. x ⊃ [y ⊃ z, ⊥], (s) z+1 x−1 y−1 (2.6.25) 2.6. ENUMERATION REDUCIBILITY AND LAMBDA 51 and then define intersect = (intersect0) 0 . (2.6.26) And now we use the latter to define ∩. Accordingly, x ∩ y = (intersect) x y . (2.6.27) See Appendix A.1 page 211 for proof. (e) hhhx0, . . . , xn−1iii defines the function Pω → Pω that canonically extends (in the sense of Definition 2.6.32 below), the map xi if i < n i 7→ (2.6.28) ∅ if i ≥ n This term is defined by the equations hhhiii := ⊥ (2.6.29) hhhxiii := λz.z ⊃ x, ⊥ (2.6.30) hhhx, yiii := λz.z ⊃ x, [z−1 ⊃ y, ⊥] (2.6.31) hhhx0, . . . , xn−1iii := λz.z ⊃ x0, (hhhx1, . . . , xn−1iii) z−1 (2.6.32) In other words hhh...iii defines finite sequences. Note that this means that, for S any A ⊆ ω, [[(hX0,..., Xn−1i) A ]] = { Xi | i ∈ An } and so in particular we indeed obtain the behaviour indicated in (2.6.28), namely if m < n then [[(hX0,..., Xn−1i) m ]] = Xm whereas [[(hX0,..., Xn−1i) m ]] = ∅ if m ≥ n. We would of course like to generalise this to infinite sequences over ω (i.e. functions with infinite domain over ω). This leads us to the definition below. Definition 2.6.28. The closed Lambda terms seq0 and seq are defined by the equations seq0 = (Y) λs.λw.λu.λz. z ⊃ (u)w, (s) w+1 u z−1 seq = (seq0) 0 52 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY Lemma 2.6.29 ([Sco75, Sco76]). For any closed GLambda term u [[(seq)u ]] = [[ λx.S{ (u)n | n ∈ x } ]] where S{ (u)n | n ∈ x } is shorthand for the term having obvious meaning (with n ranging over ω). Proof. See Appendix A.1 page 213. Note 2.6.30 ([Sco75, Sco76]). The combinator seq revalues a term as a dis- tributive function where we call F : Pω → Pω distributive if [ F (X) = { F (n) | n ∈ X } (2.6.33) This is of course a stronger notion that continuity ( F (X) = S { F (D) | D ⊆ X } with D ranging over the finite sets). In particular seq provides us with the means to define functions f : ω → ω in GLambda (and Lambda). Definition 2.6.31 ([Sco75, Sco76]). For any GLambda term u, define λn ∈ ω.u := (seq) λx.u[x/n] Remark. This definition means that for any closed GLambda terms λx.u and v, [ [[(λn ∈ ω.u)v ]] = { [[(λx.u)n ]] | n ∈ [[ v ]] } which, if v = A, [ = { [[(λx.u)n ]] | n ∈ A } Definition 2.6.32 (Canonical Extension). For any set A ⊆ ω and function f : A → Pω we use the following shorthand7: F = { hm, ni | n ∈ f(m) } (2.6.34) f ∗ = { hn, 2mi | n ∈ f(m) } (2.6.35) ˆ m ∗ f = { hn, ki | ∃m ( hn, 2 i ∈ f & m ∈ Dk ) } (2.6.36) = { hn, ki | ∃m ( n ∈ f(m)& m ∈ Dk ) } (2.6.37) 7 Observe that the notation F accords with that stipulated in the Introduction (page 5). 2.6. ENUMERATION REDUCIBILITY AND LAMBDA 53 In particular, if f : A → ω then n ∈ f(m) is equivalent to f(m) = n . fˆ is said to be the canonical extension of f because (a) it is the (graph of the) minimal continuous extension of f in Pω and (b) fˆ and f are enumeration equivalent in the following sense: ∗ ˆ F ≡1 f ≡e f. Note 2.6.33 (Definability). For any set A ⊆ ω, a function f : A → ω is considered to be a mapping ω → ω ∪ {∅} in this context, where f(n) = ∅ is equivalent to f(n)↑. Accordingly we understand definability for such functions to be the notion that precisely reflects this behaviour. Definition 2.6.34. For any k ≥ 1, a function F : Pωk → Pω is said to be strongly Lambda (GLambda) definable if there exists a closed Lambda (GLambda) term λn1 ∈ ω . . . λnk ∈ ω.u such that, F (X1,...,Xk) = [[(λn1 ∈ ω . . . λnk ∈ ω.u) x1 . . . xk ]]hη(xi)=Xi | 1≤i≤ki i.e. such that F is Lambda (GLambda) definable and such that the set [[ λn1 ∈ ω . . . λnk ∈ ω.u ]] is the graph of F . Closed terms of the form [[ λn1 ∈ ω . . . λnk ∈ ω.t ]] are referred to as strong Lambda (GLambda) terms. Note 2.6.35. If s is a strong Lambda (GLambda) term, that (strongly) defines function f : ωk → ω then, by definition [[ s ]] = f.ˆ Note 2.6.36 (Scott’s approach to definability). At this point in the discussion, Scott introduces the notion of (set) computable functions and proves a gen- eral definability Theorem for such functions and, in consequence, a definability Theorem for the Ce. Scott’s argument is encapsulated in Lemma 2.6.37 Def- inition 2.6.38 and Theorem 2.6.39 below. The reader is referred to [Sco75] or [Sco76] for proofs. 54 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY Lemma 2.6.37 ([Sco75, Sco76]). The primitive recursive functions are (stron- gly) Lambda definable. Definition 2.6.38 ([Sco75, Sco76]). A continuous function F : Pωk → Pω is said to be (set) computable iff { hm, n1, . . . , nki | m ∈ [[(F ) Dn1 ... Dnk ]] } (2.6.38) is c.e. (Notice that, in accordance with Note 2.6.26, we identify F with its graph). Theorem 2.6.39 ([Sco75, Sco76]). For a k-ary continuous function F , the following are equivalent: (a) F is computable. (b) [[ λx1 . . . λxk. (F ) x1 . . . xk ]] is c.e. (c) [[ λx1 . . . λxk. (F ) x1 . . . xk ]] is Lambda definable. Note 2.6.40. Definability of Ce (in the sense of Theorem 2.6.44) follows easily from the above. We take a slightly different approach here. We prove that the partial computable functions with values and range in ω are strongly Lambda definable and we then prove Scott’s definability Theorem for Ce. The framework of this argument is based on a similar proof in [Kri90] Chapter 2. Note that by this approach we also obtain a definability Theorem for the class of partial computable functions. Lemma 2.6.41. Let u, v, w be any closed GLambda terms. Then (a) [[(u)v ]] = ∅ if [[ u ]] = ∅ (b) [[ u ⊃ v, w ]] = ∅ if [[ u ]] = ∅ (a) [[(u)v ]] = ∅ if u = λn ∈ ω.u0 and [[ v ]] = ∅ Proof. (a) and (b) follow by Definition 2.6.12. For (c) consider closed GLambda terms λn ∈ ω.u0 and v such that [[ v ]] = ∅. Then [ [[(λn ∈ ω.u0)v ]] = [[ u0[n] ]] n∈[[v]] = ∅ . 2.6. ENUMERATION REDUCIBILITY AND LAMBDA 55 Note 2.6.42. Lemma 2.6.41 implies that for all closed GLambda terms u and 0 v1, . . . , vk, [[(u) v1 . . . vk ]] = ∅ if u = λn1 ∈ ω . . . λnk ∈ ω.u and [[ vi ]] = ∅ for some 1 ≤ i ≤ k. The above observations are instrumental in establishing the following defin- ability result for partial computable functions. Proposition 2.6.43. Any partial computable function from ωk into ω (for any k ≥ 1) is strongly Lambda definable. Proof. See Appendix A.1, page 216. Theorem 2.6.44 ([Sco75, Sco76]). A set A ⊆ ω is Lambda definable iff A is c.e. Proof. (⇒) Suppose that A is Lambda definable. Then, by Theorem 2.6.23 A = [[ u ]] for some (closed) Lambda term generated by finitely many applications of the combinators defined in Equations 2.6.12-2.6.17. Now, it is straightfoward to show that, for each such combinator c, its denotation [[ c ]] is c.e. Also if t and v are (closed) terms such that [[ u ]] and [[ v ]] are both c.e. then clearly [[(t)v ]] (= Φ[[t]]([[ v ]])) is c.e. So, by induction on the structure of u, A = [[ u ]] is c.e. (⇐) Suppose that A is c.e. Then A = Ran(f) for some computable function f : ω → ω. By Proposition 2.6.43, f is strongly Lambda definable; i.e. fˆ = [[ s ]] for some strong Lambda term s. However this means that [[(s)> ]] =def Φfˆ(ω) = f(ω) = A Thus A is Lambda definable (see Note 2.6.27 (c) for the definition of >). Theorem 2.6.45. The class of strongly Lambda definable functions with argu- ments in ω and values in ω is precisely the class of partial computable functions. 56 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY Proof. (⊆) Suppose that k ≥ 1 and f : ωk → ω is strongly Lambda definable. In other words fˆ = u for some strong Lambda term 0 u =def λn1 ∈ ω . . . λnk ∈ ω.(u ) n1 . . . nk . (2.6.39) Thus W := [[ u ]] is c.e. and, being the canonical extension of f we can effectively compute f from it. Indeed, let Ws be a computable enumeration of W , then nk n1 f(n1, . . . , nk) = π0( µhn, s, n1, . . . , nki { hh... hn, 2 i,...i, 2 i ∈ Ws } ) . (2.6.40) Therefore f is partial computable. (⊇) Proposition 2.6.43. By Theorem 2.6.44 we know that Ce = { [[ u ]] | u ∈ Closed Lambda } . (2.6.41) However, as Scott showed we can easily define a computable enumeration of such sets. We now proceed in a similar way Definition 2.6.46. For any GLambda term u define: Gu := (cond) hhhsuc, pred, cond, K, S, uiii 0 and set G := G0. Proposition 2.6.47 ([Sco75, Sco76]). For any closed Lambda term u there exists a term uG consisting uniquely of a combination of G and such that [[ u ]] = [[ uG ]]. Proof. By Theorem 2.6.23, for any closed Lambda term u there exists a term uC wαβ u such that uC is a combination of the six constants stipulated, i.e. of 0, suc, etc. . . However one can easily show that the denotation (in Pω) of each such constant is the same as the denotation of a closed Lambda term consisting 2.6. ENUMERATION REDUCIBILITY AND LAMBDA 57 uniquely of a combination of G. For example: [[(G)G ]] = [[ 0 ]] [[(G)(G)G ]] = [[ hhhsuc, pred, cond, K, S, 0iii ]] [[( (G)(G)G )(G)G ]] = [[ suc ]] [[( (G)(G)G )(((G)(G)G )(G)G )(G)G ]] = [[ pred ]] and so on. Theorem 2.6.48 ([Sco76]). There exist closed Lambda terms val and apply such that, for all n, m ∈ ω, [[(apply) n m ]] ∈ ω (2.6.42) [[(val) 0 ]] = [[ G ]] (2.6.43) [[(val)(apply) n m ]] = [[( (val) n )(val) m ]] (2.6.44) And so val enumerates all Lambda definable sets in the following sense: Ce = { [[(val) n ]] | n ∈ ω } Proof. Since the pairing function (n, m) 7→ hn, mi is computable, by Propo- sition 2.6.43 we can derive the closed Lambda terms pair, fst and snd such that: [[(pair) n m ]] = hn, mi (2.6.45) [[(fst) n ]] = π1(n) (2.6.46) [[(snd) n ]] = π2(n) (2.6.47) and we can thus also define apply := (suc)(pair) n m (2.6.48) so that [[(apply) n m ]] = hn, mi + 1. 58 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY Now, using Theorem 2.6.25, define the term val such that [[ val ]] = [[ λn ∈ ω. n ⊃ G, ((val)(fst) n−1 ) (val)(snd) n−1 ]] (where n−1 is shorthand for pred n). In other words, set val := (Y) λs.λn ∈ ω. n ⊃ G, ((s)(fst) n−1 ) (s)(snd) n−1 . (2.6.49) Equations 2.6.42, 2.6.43 and 2.6.44 are clearly satisfied by val and apply. 2.6.2 Enumeration Degrees and Lambda We have seen (Theorem 2.6.44) that a set W is c.e. iff W = [[ u ]] for some closed Lambda term u. Also, it is obvious by this result, and by inspection of (2.6.10) in Definition 2.6.12, that application by a closed Lambda term corresponds precisely to an enumeration reduction. Thus, using our convention that for every X ∈ Pω, we can use X as shorthand for any constant X0 ∈ C such that [[ X0 ]] = X, we can write down Scott’s definition [Sco75, Sco76] of enumeration reducibility in terms of Lambda (or more precisely in terms of GLambda). Definition 2.6.49 (Sixth version of ≤e ). For A, B ⊆ ω, A≤e B if there exists a closed Lambda term u such that: A = [[(u) B ]] . As an almost trivial exercise we now show how the basic properties of ≤e are expressed in this context. However, before proceeding we need a substitution property for the denotation of closed GLambda terms. Lemma 2.6.50. For any n ≥ 1, GLambda term t with free variables x1, . . . xn, and closed GLambda terms u1, . . . , un and v1, . . . , vn, n ^ [[ ui ]] = [[ vi ]] ⇒ [[ t[u1/x1, . . . , un/xn] ]] = [[ t[v1/x1, . . . , vn/xn] ]] . i=1 Proof. A straightforward induction on the structure of GLambda terms. Fact 1. ≤e is transitive. 2.6. ENUMERATION REDUCIBILITY AND LAMBDA 59 Proof. Let A, B, C be any sets such that A ≤e B and B ≤e C. Then, by Lemma 2.6.49 there exist closed Lambda terms u and v such that: A =def [[ A ]] = [[(u) B ]] and B =def [[ B ]] = [[(v) C ]] In other words: A = [[(u) B ]] = [[(u)(v) C ]] by Lemma 2.6.50 = [[( λx. (u)(v) x ) C ]] by Theorem 2.6.18 (a) Thus A≤e C since obviously λx. (u)(v) x ∈ Closed Lambda. Fact 2. ≤e is reflexive. Proof. A =def [[ A ]] = [[(λx.x) A ]]. We now show that degrees arise naturally in this context as subclasses of Pω that are downward closed under ≤e . Notation. A class A ⊆ Pω is said to be closed under application if, for any sets A and B: A, B ∈ A implies [[(A)B ]] ∈ A A ⊆ Pω is said to be a subalgebra if Ce ⊆ A and A is closed under application. Definition 2.6.51 ([Sco75, Sco76]). For any set A the downward e-degree of A ↓ (written Dege(A)) is defined to be the class: { [[(u)A ]] | u ∈ Closed Lambda }. Note 2.6.52. The degrees obtained via the above definition are ordered by ↓ inclusion. Note that the resulting degree structure (written De ) is obviously isomorphic to De. 60 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY Theorem 2.6.53 ([Sco75, Sco76]). The downward enumeration degrees are ex- actly the finitely generated subalgebras of Pω. Moreover, every such subalgebra can be generated by a single set. ↓ Proof. Let A be any set and consider Dege(A). Note firstly that, for any closed Lambda term u, the term (K)u is also closed and u wβ (K) u A. In other words: [[ u ]] = [[( (K)u ) A ]] ↓ ↓ Therefore Ce ⊆ Dege(A). Now suppose that B,C ∈ Dege(A). Then, for some closed Lambda terms u and v: B =def [[ B ]] = [[(u) A ]] and C =def [[ C ]] = [[(v) A ]]. Therefore, by Theorem 2.6.18 and Lemma 2.6.50: [[(B)C ]] = [[( (u)A )(v)A ]] = [[(S) u v A ]] ↓ and so (since (S) u v ∈ Closed Lambda): [[(B)C ]] ∈ Dege(A). It follows that ↓ Dege(A) is a subalgebra finitely generated by [[ G ]] and A. On the other hand, suppose that A is a finitely generated subalgebra of Pω with generators A1,...,An. Then define: t := GhhhA1,...,Aniii =def (cond) hhhsuc, pred, cond, K, S, hhhA1,..., Aniiiiii 0 And so, by the same argument as that used to prove Proposition 2.6.47 we can see that [[ t ]] generates A. Now consider any E ∈ A; then it is the denotation of some closed GLambda term made up uniquely of a combination of t. For 2.6. ENUMERATION REDUCIBILITY AND LAMBDA 61 example E might be [[ (((t)t )t )(t)t ]] which would mean that: E = [[ (((t)t )t )(t)t ]] = [[ ( λx.(((x)x )x )(x)x ) t ]] ↓ ↓ Hence, E ∈ Dege([[ t ]]) and, so it follows that A ⊆ Dege([[ t ]]). The opposite ↓ ↓ inclusion (i.e. Dege([[ t ]]) ⊆ A) is obvious, and so A = Dege([[ t ]]). Corollary 2.6.54. Every downward enumeration degree is a model (satisfying α, β, ξ) for the λ-calculus. In particular Ce is a model. ↓ ↓ ↓ Notation. Downward enumeration degrees are denoted by ae, be, ce etc. and the sub/superscripts are dropped when the context is unambiguous. The least, ↓ or zero degree is denoted 0e. Reminder. For any X ⊆ ω,ΦX is the generalised enumeraton operator induced by X (see Definition 2.6.21 on page 47). Remark. Notice how Theorem 2.6.53 tells us that, for any A, X ⊆ ω, if X ≤e A ↓ ↓ (i.e. if X ∈ Dege(A)) then [[(X) A ]] is in Dege(A). In other words, ΦX (A)≤e A. It follows that, for any B ⊆ ω, B≤e A iff (∃X ≤e A)[ B = ΦX (A) ]. As a second easy exercise we demonstrate three basic properties of the (down- ward) enumeration degrees thus giving a glimpse of how structural properties of ≤e are proved in this context. ↓ Fact 3. 0e = Ce. Proof. This follows directly from Theorem 2.6.53. Reminder. hhh , iii is defined in Note 2.6.27(e) on page 51. Fact 4. The downward enumeration degrees form an upper semi-lattice. Proof. Consider any A, B ⊆ ω. We show that ↓ ↓ ↓ Dege(A) ∪ Dege(B) = Dege( [[ hhhA, Biii ]]) . 62 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY Indeed note firstly that [[( hhhA, Biii ) 0 ]] = [[ A ]] =def A and so, by Theorem 2.6.18, [[( λx. (x) 0 ) hhhA, Biii ]] = A. Similarly, [[( λx. (x) 1 ) hhhA, Biii ]] = B. Thus by Defi- nition 2.6.49, both A≤e [[ hhhA, Biii ]] and B≤e [[ hhhA, Biii ]] . Now suppose that A ≤e C and B ≤e C for some C. In other words there exist closed Lambda terms u and v such that A =def [[ A ]] = [[(u) C ]] and B =def [[ B ]] = [[(v) C ]]. However, using Theorem 2.6.18 (a) and Lemma 2.6.50 we see that: [[ hhhA, Biii ]] = [[( λx.λy. hhhx, yiii ) AB ]] = [[( λx.λy. hhhx, yiii )(u)C (v)C ]] = [[( λz. ( λx.λy. hhhx, yiii )(u)z (v)z ) C ]] Therefore [[ hhhA, Biii ]] ≤e [[ C ]] =def C by Definition 2.6.49. Remark. By the proof of Fact 4, for any A, B ⊆ ω, A ⊕ B ≡e [[ hhhA, Biii ]]. Now notice that (by Theorem 2.6.18 (a) and Lemma 2.6.50), ΦA(B) =def [[(A) B ]] = [[( (hhhA, Biii)0 )(hhhA, Biii)1 ]] = [[( λx.λy. ((x)0 )(x)1 ) hhhA, Biii ]] , and similarly, ΦB(A) = [[( λx.λy. ((x)1 )(x)0 ) hhhA, Biii ]]. Thus ΦA(B)≤e A ⊕ B and ΦB(A)≤e A ⊕ B. Fact 5. Any countable set of downward enumeration degrees is bounded. Proof. (From page 190 of [Sco75].) Let { an | n ∈ ω } be a set of degrees and { An | n ∈ ω } the corresponding class in the sense that, for all n ∈ ω, ↓ an = Dege(An). In other words there is a function g : ω → Pω such that g(n) = An for all n. Thus g is the restriction of a distributive functiong ˆ to Pω. However this means thatg ˆ is definable in GLambda as λn ∈ ω. (tA)n say, such that [[(tA) n ]] = [[ An ]] for all n ∈ ω. Now pick any m ∈ ω and any set B in am. Then: B = [[(u)Am ]] 2.6. ENUMERATION REDUCIBILITY AND LAMBDA 63 for some u ∈ Closed Lambda. However [[(u)Am ]] = [[( λx. (u)(x)m ) λn ∈ ω. (tA)n ]] and so ↓ B ∈ Dege( [[ λn ∈ ω. (tA)n ]]). It follows that [[ λn ∈ ω. (tA)n ]] is an upper bound for the set of degrees { an | n ∈ ω }. Remark (The jump). The notion of a jump can easily also be formulated in this context. For example, we can define8, for any set A ⊆ ω, the (complete) set KA = { [[(val) n A ]] 6= ∅ } and (GLambda) e-jump JA = [[ hKA, KAi ]]. Thus, ↓ 0 ↓ as usual, if a = Dege(A) then we define the jump of a to be a = Dege(JA). The interested reader is referred to Appendix A.3 (page 225) where we prove some elementary results concerning such sets. 8The notation given here only applies in this Remark and in Appendix A.3. In all other Chapters, KA, JA etc. correspond to the definition given in Section 2.3.2 (page 27) 64 CHAPTER 2. DEFINING ENUMERATION REDUCIBILITY Chapter 3 Symmetric Enumeration Reducibility 3.1 Overview As mentioned earlier, the original motivation behind the definition of symmet- ric enumeration (se-) reducibility given below—an equivalent definition was given by Alan Selman in [Sel72]—was its role in providing a refinement of the (relativised) Arithmetical Hierarchy compatible with enumeration reducibility. Indeed, we show Secton 3.5 that an appropriate hierarchy can be obtained by replacing the relations “c.e. in” and “Turing reducible to” in the under- lying framework of the Arithmetical Hierarchy by the relations “enumeration reducible to” and “se-reducible to”. Moreover we prove that not only is this hierarchy a refinement of the Arithmetical Hierarchy but also that it is identical with the latter when relativised to sets belonging to embedded Turing degrees (in the sense of Proposition 3.3.8 below). At the same time it emerged from our work that se-reducibility had dis- tinctive properties with regard to other reducibilities. For example we found that the standard deterministic positive reducibilities (and in particular ≤p) 65 66 CHAPTER 3. SYMMETRIC ENUMERATION REDUCIBILITY are sub-relations of se-reducibility. Also it transpired that the embedding of the Turing degrees into the enumeration degrees translates to an embedding into the se-degrees with similar properties. These results are reiterated in the early sections of the present chapter. However, looking beyond the basic theory, our main purpose here is to present an overview of the associated degree struc- ture of this reducibility. We show how a number of structural results can be obtained using both relatively old (Section 3.6) and more recent (Section 3.8) methods that were originally developed in the context of the enumeration de- grees. Underpinning these results in part is an inherent type of local similarity between the se-degrees and the Turing degrees (Section 3.7). It is this phe- nomenom, in conjunction with some of the structural insights already gained that leads to a straightforward appraisal of various definability properties of the se-degree structure and in particular of the complexity of its first order theory (Section 3.9). 3.2 Introduction to Symmetric Enumeration Re- ducibility Enumeration reducibility compares the positive information content of two sets. Symmetric enumeration reducibility, as we will see, compares both positive and negative information content. We will now introduce this reducibility and con- sider how it relates to other standard reducibilities. Firstly, however we draw the reader’s attention to the fact that Alan Selman exhibited some of the basic properties of this reducibility in Section 4 of [Sel72]. In particular Selman noted the inclusion ≤m ⊆≤se ⊆≤T and proved Theorem 3.2.8 (below) relative to the pair (≤tt , ≤se ). Definition 3.2.1. For any sets A and B, A is defined to be symmetric enu- meration reducible to B (A≤se B) if A≤e B and A≤e B. Notation. For any set A, s-Enum(A) denotes the class { E | E≤se A }. 3.2. INTRODUCTION TO SYMMETRIC ENUMERATION REDUCIBILITY67 Lemma 3.2.2. Let A and B be sets such that B/∈ {∅, ω}. Then there exists a computable function f such that A = Φf(i,j)(B) and A = Φf(i,j)(B) whenever A = Φi(B) and A = Φj(B) (i.e. whenever A≤se B via operators i and j). Proof. Choose b ∈ B and b ∈ B. Define f so that, for any i, j ∈ ω, Wf(i,j) = { hx, D ∪ {b}i | hx, Di ∈ Wi } S { hx, D ∪ {b}i | hx, Di ∈ Wj } . It is easily checked that, if A = Φi(B) and A = Φj(B), then A = Φf(i,j)(B) and A = Φf(i,j)(B). Corollary 3.2.3. For any sets A, B such that B/∈ {∅, ω}, A ≤se B iff there exists an enumeration operator Φ such that A = Φ(B) and A = Φ(B). Note 3.2.4. Clearly ≤se inherits reflexivity and transitivity from ≤e . It thus gives rise to a degree structure (Dse). The least upper bound of any two degrees ase, bse (written as usual ase ∪ bse) always exists: it is the degree of A ⊕ B for any A ∈ ase and B ∈ bse . Therefore Dse is an upper semi lattice. The zero element (0se) of Dse is Comp. Each of these properties is easily checked. Lemma 3.2.5. For any sets A and B, if A≤se B then A≤e B and A≤T B. In other words, T ≤se ⊆ ≤e ≤T . Moreover, this inclusion is proper. Proof. Since ≤se is a subrelation of ≤e by definition, in order to prove the inclusion it suffices to note that, for any sets A and B, A ≤e B implies that A c.e. in B. Also, CK ≤r K for r ∈ {e, T} whereas CK se K (since this would imply K≤e K). Thus the inclusion is proper. Theorem 3.2.6. ≤p ⊆ ≤se . 68 CHAPTER 3. SYMMETRIC ENUMERATION REDUCIBILITY + Proof. Let A and B be any sets such that A≤p B and suppose that f : ω → ω is a computable function that witnesses this reduction in the sense that, for all x ≥ 0, x ∈ A ⇔ ∃y(y ∈ Df(x) & Dy ⊆ B). Now define the two c.e. (in fact computable) sets W and Wc as follows: W = { hx, yi | y ∈ Df(x) } Wc = { hx, yi | ∀z(z ∈ Df(x) ⇒ Dz ∩ Dy 6= ∅) } . Then A≤e B via W and A≤e B via Wc. Remark. In fact A ≤p B iff A ≤p B. Indeed ≤p might be thought of as the truth table version of ≤se. Note 3.2.7. Theorem 3.2.6 implies that all conjunctive and disjunctive sub- reducibilities of ≤T are contained in ≤se and, in particular, that ≤1 ⊆ ≤m ⊆ ≤se . Theorem 3.2.8. It is neither the case that ≤wtt ⊆ ≤se nor the case that ≤se ⊆ ≤wtt . Proof. The first inequality is witnessed by K in that K ≤wtt K (and in fact K ≤btt(1) K) whereas K e K. The second inequality is proved by a straight- forward diagonalisation construction that we sketch below. Note that we as- sume { fn | n ∈ ω } to be the enumeration of partial computable functions defined such that fn has partial computable index n and that we also as- sume { ϕn | n ∈ ω } to be the enumeration of deterministic oracle Turing machines stipulated in Section 2.2 (see page 17 and page 19 respectively). We construct sets A and B by finite initial segments {αn}n≥0 and {βn}n≥0, such S + S + that A = { αn | n ≥ 0 } and B = { βn | n ≥ 0 }. In order that A≤se B the construction ensures that, for all x ≥ 0, x ∈ A iff ∃y( h2x, yi ∈ B ) x ∈ A iff ∃y( h2x+1, yi ∈ B ) . 3.2. INTRODUCTION TO SYMMETRIC ENUMERATION REDUCIBILITY69 To enable this to happen, we impose the constraint that, for all s ≥ 0, + + βs+1 − βs = { h2x + 1, yi | |βs| ≤ h2x + 1, yi < |βs+1| } (A-coding) except for the number |βs+1| − 1 (defined to be “ns” below) which is used for the diagonalisation at Stage s + 1. The construction. At each Stage s + 1 we diagonalise against oracle Turing machine ϕe and partial computable function fd, where s = he, di. We define + S Bbs := βs { h2x+1, yi | h2x+1, yi ≥ |βs| } and we define ms to be max {|βs|, fd(s)+1} if fd(s)↓ or to be |βs| otherwise. Bbs If either fd(s) ↑ or it is not the case that ϕe (s)↓ = 1, then we insert s into A, we set ns := h2s, mi with m the least number such that h2s, mi ≥ ms, and we insert ns into B. Otherwise—in the case that both computations converge Bbs 0 0 and ϕe (s) = 1—we put s into A, we set ns := h2s + 1, m i with m the least 0 number such that h2s + 1, m i ≥ ms, and we insert ns into B. αs+1 and βs+1 are defined to be the resulting extensions of αs and βs of length s+1 and ns+1 respectively, and such that βs+1 conforms to the constraint (A-coding) above. Note that, at the end of the construction, if s ∈ A then there is a unique number h2s, mi in B and if s∈ / A then there is no such number in B. Likewise if s ∈ A then there is a unique number h2s + 1, m0i in B and if s∈ / A then there is no such number in B. Also, the choice of ns and ms at each stage (s + 1) ensures that the diagonalisation at this stage is preserved for the resulting sets A and B. Remark. Suppose that { Ak | k ≤ n } and { Bk | k ≤ n } are classes of sets such that Bk ∩ ∪j6=kBj 6= ∅ for all k ≤ n. Then it follows, by a similar proof to that of Lemma 3.2.2, on page 66, that there exists computable f such that, for each k ≤ n, Ak = Φf(i0,...,in)(Bk) whenever it is the case that the operators with indices {i0, . . . , in}, witness the reductions Ak ≤e Bk (i.e. Ak = Φik (Bk)) for all k ≤ n. Notice that Posner’s observation relative to Turing reducibility (mentioned for example in Exercise v.2.18 of [Odi89]) is a special case of this phenomenom. 70 CHAPTER 3. SYMMETRIC ENUMERATION REDUCIBILITY 3.3 Embedding the Turing Degrees The isomorphic embedding ιe of the Turing degrees (DT) into the Enumeration degrees (De) induced by the map X 7→ CX is essentially an embedding into Dse. Moreover the range of this embedding contains gaps similar to those appearing in the range of ιe. These results are presented below. We begin with an easy but useful Lemma. Reminder. For any function f, the notation F is shorthand for Graph(f) (and so CX is shorthand for Graph(cX )). Lemma 3.3.1. For any set A the following equivalences hold: (a) CA ≡se A ⊕ A (b) CA ≡se CA (c) CA ≡se CA. Notation. We say that a set A is characteristic if A = B ⊕ B for some set B. For the sake of simplicity, and in view of Lemma 3.3.1, we sometimes prefer to work with a characteristic set (X ⊕ X) rather than with the corresponding characteristic function graph (CX ). Reminder. An e-degree is said to be total if it contains the graph of a total (or, equivalently, characteristic) function . Definition 3.3.2. An se-degree is said to be characteristic if it contains the graph of a characteristic function (or, equivalently, a characteristic set). Proposition 3.3.3. For any se-degree a the following are equivalent: (a) a is characteristic. (b) For all A in a, A ≡se A. Proof. Apply Lemma 3.3.1 and use the transitivity of ≤se . Note 3.3.4. 0se is characteristic. Lemma 3.3.5. Every total e-degree contains exactly one characteristic se- degree. Proof. Suppose that B,C ∈ ae and that B ≡se B and C ≡se C. This means that CB ≡e CC , and by applying Lemma 3.3.1, it follows that CB ≡se CC . Hence B ≡se C. 3.3. EMBEDDING THE TURING DEGREES 71 The reader will notice that our next result is a restatement of part of Propo- sition 2.4.7. This result and its proof are reformulated here for reasons of clarity. Lemma 3.3.6. For any sets A and B, A c.e. in B iff A≤e CB . B Proof. Suppose that A and B are sets such that A = Wi for some i ≥ 0. Then 0 D + − 0 Wei := { hx, D ⊕ D i | ϕi (x) ↓ & Q (ϕi, x, D) = D & Q (ϕi, x, D) = D } 1 is a c.e. set and A≤e B ⊕ B via Wei . The opposite implication is obvious. Lemma 3.3.7. For any sets A and B, A≤T B iff A≤se CB iff CA ≤se CB . Proof. Apply Lemma 3.3.6 in conjunction with Lemma 3.3.1. Proposition 3.3.8. The embedding ιse of the Turing degrees into the se-degrees induced by the map X 7→ CX is an order embedding that preserves suprema, infima and least element. Proof. Straightforward using Lemma 3.3.7 and and the results listed in Note 3.2.4. Note 3.3.9. It follows from Lemma 3.3.7 that every Turing degree aT contains exactly one characteristic se-degree ase (say). Also it is clear that ase = ιse(aT) by definition. Moreover, as X ≤se CX for any X, ase is the top se-degree in aT (i.e. bse ≤ ase for every bse ⊆ aT). Definition 3.3.10. An se-degree a is said to be quasi-minimal if a > 0 and ∀d( d ≤ a & d characteristic ⇒ d = 0 ). Theorem 3.3.11. For any se-degree b there exists a degree a such that b < a and such that, for any characteristic degree c, if c ≤ a then c ≤ b. 1 The notation Wei indicates that ei can be uniformly computed from i. 72 CHAPTER 3. SYMMETRIC ENUMERATION REDUCIBILITY Proof. The proof is a straightforward modification of the corresponding result relative to De due to Medvedev ([Med55]). Indeed, suppose that B is any set and that { Φe | e ∈ ω } is the computable listing of enumeration operators stipulated in Section 2.3 (on page 22). Then it suffices to construct a set A such that B≤se A and such that A satisfies, for all e ∈ ω, the requirements R3e : A 6= Φe(B) R3e+1 :Φe(A) characteristic ⇒ Φe(A)≤e B R3e+2 :Φe(A) characteristic ⇒ Φe(A)≤e B. We ensure that B≤se A by encoding B into A in the following manner: ∀x( x ∈ B iff 2x ∈ A )(B-coding) Notation. We say that an initial segment σ is B-compatible if, for all x such that 2x < |σ|, x ∈ B iff 2x ∈ σ+. The construction. The set A is constructed by finite initial segments {σn}n≥0, S + such that A = { σn | n ≥ 0 }. Stage s = 0. σ0 = λ Stage s+1. σs has already been defined. • If s = 3e then, letting ns := |σs|, we satisfy R3e by defining σsb( 1 − Φe(B)(ns) ) if ns is odd σs+1 := σsb( B(ns/2) )b( 1 − Φe(B)(ns +1) ) if ns is even. • If s = 3e + 1 then we try to satisfy R3e+1 vacuously by searching for a + B-compatible initial segment σ ⊇ σs such that, for some n : 2n, 2n+1 ∈ Φe(σ ). If this search is successful, choose the least such σ and set σs+1 := σ. Otherwise set σs+1 := σs. • If s = 3e + 2 then we try to satisfy R3e+2 vacuously by searching for a − B-compatible initial segment σ ⊇ σs such that, for some n : 2n, 2n+1 ∈ Φe(σ ). If this search is successful, choose the least such σ and set σs+1 := σ. Otherwise set σs+1 := σs. 3.4. JUMP OPERATORS 73 Analysis of the construction. The construction obviously ensures that the constraint (B-coding) holds, which means that B ≤se A. Also the requirements {R3e}e≥0 prevent A≤se B and hence B Φj(A) = E ⊕ E for some i, j ≥ 0. Now set s := 3i+1 and t := 3j + 2, and define + + Ps := { n | (∃σ ⊇ σs)( n ∈ Φi(σ )&(σ2ω) ⊆ B ⊕ ∅ ) } − − Nt := { n | (∃σ ⊇ σt)( n ∈ Φj(σ )&(σ2ω) ⊆ B ⊕ ∅ ) } . Clearly Ps ≤e B and Nt ≤e B and also Φi(A) ⊆ Ps and Φj(A) ⊆ Nt. So now suppose that Nt * Φj(A). W.l.o.g. choose 2n+1 ∈ Nt − Φj(A). Thus there − − exists β ⊇ σt such that 2n + 1 ∈ Φj(β ) and (β2ω) ⊆ B ⊕ ∅. Also, by hypothesis (that Φj(A) is characteristic), there exists B-compatible α ⊇ σt such − that 2n ∈ Φj(α ). Define initial segment γ of length max{ |α|, |β| } such that, for all m < |γ|, 0 if α(m)↓ = 0 ∨ β(m)↓ = 0 ∨ cB⊕ω(m) = 0 γ(m) = 1 otherwise. − Then γ is a B-compatible extension of σt and 2n, 2n+1 ∈ Φj(γ ). Thus at stage (t+1) the construction would prevent Φj(A) from being characteristic in contradiction with the hypothesis. Ps ⊆ Φi(A) is proved in a similar way. Corollary 3.3.12. There exists a quasi-minimal se-degree. Corollary 3.3.13. For any quasi-minimal se-degree b there exists a quasi- minimal se-degree a such that b < a. 3.4 Jump Operators We now consider the problem of defining the jump operator with respect to se-reducibility. By analogy with the Turing jump we will require that such an operator be derived from a map that sends any set A to a set A0 that 74 CHAPTER 3. SYMMETRIC ENUMERATION REDUCIBILITY is ordered strictly above A by ≤se and that, in addition, possesses certain hardness properties (relative to A). We begin with the observation that an “inverse” function can be defined for Dse, since for any sets X and Y , X ≤se Y iff X ≤se Y . We then proceed with a reminder of some standard results in the study of enumeration reducibility. Definition 3.4.1. inv : Dse → Dse is defined to be the function such that, for any x, y ∈ Dse, inv(x) = y iff y = degse(X) for some (or equivalently all) X ∈ x. For any se-degree a, the notation a is shorthand for inv(a). Note that a ∪ a = degse(A ⊕ A) for any A ∈ a. Reminder. For any set A, KA denotes the set { x | x ∈ Φx(A) } and JA denotes (k) the set KA ⊕ KA. Similarly JA denotes the iterated form of JA defined by: (0) (k+1) JA = A and JA = J (k) . JA Lemma 3.4.2. For any set A, KA is 1-complete for Enum(A). Lemma 3.4.3. For any sets A and B: A≤e B iff A≤1 KB iff KA ≤1 KB. Note 3.4.4. A jump operator on the enumeration degrees is defined by Cooper and McEvoy in [CM85] as the function induced by X 7→ JX . It follows from Lemma 3.4.3 that this function also gives rise to a well defined operator over the se-degrees. We employ the term e-jump to refer to this operator and we use ae to denote the e-jump of ae. Notation. For any set A, HA denotes the set KA ⊕ KA . Lemma 3.4.5. For any sets A and B, if A≤se B then HA ≤1 HB. Proof. Let A and B be any sets such that A≤se B. Then, by definition A≤e B and A≤e B. Now apply Lemma 3.4.3. Lemma 3.4.6. For any set A: A Proof. Let A be any set. Then by Lemma 3.4.2 we know that A≤se HA. Also notice that HA ≤se A would imply KA ≤e A from which we derive a contradic- tion. 3.4. JUMP OPERATORS 75 Note 3.4.7. If the set A has characteristic degree, then A ≡se A by Proposition 3.3.3 and so KA ≡1 KA by Lemma 3.4.3. Thus Lemma 3.4.2 implies that HA ≡1 KA. Lemma 3.4.8. For any set A, HA is 1-hard for Enum(A). Moreover, if degse(A) is characteristic, then HA is 1-complete for Enum(A). Proof. Let A be any set. Then Lemma 3.4.2 implies that HA is 1-hard for Enum(A). Now suppose that degse(A) is characteristic. Then HA is 1-complete for Enum(A) by Note 3.4.7 and Lemma 3.4.2. Definition 3.4.9. Let ase be any se-degree. The weak jump of ase (written ∗ ∗∗ ase) is defined to be degse(HA) for any A in ase. We use ase to denote the double weak jump of ase (i.e. degse(HHA )). Proposition 3.4.10. Suppose that r ∈ {e, T}. Let ase be any se-degree, let ar be the r-degree of which it is a subclass, and let dr be the r-degree that contains ∗∗ ase ; then ar < dr. In other words the double weak jump is strictly increasing relative to the relation induced by ≤r over Dse. Proof. Suppose that ase ⊆ ae, aT and pick any A in ase. Then HA is 1-hard for ∗ Enum(A) by Lemma 3.4.8 and this implies that bse ≤ ase for any se-degree, ∗ ∗∗ ∗∗ bse ⊆ ae. Note that by Lemma 3.4.6, ase < ase and so ase * ae. Now let cse be the (unique) characteristic degree contained in aT. Then dse ≤ cse for any ∗ dse ⊆ aT (see Note 3.3.9). Also A ⊕ A≤1 HA and so cse ≤ ase. Therefore, as ∗∗ above, ase * aT. (k) Notation. For any set A, SA denotes the set HA ⊕ HA. Similarly SA denotes (0) (k+1) the iterated form of SA defined by: SA = A and SA = S (k) . SA Note 3.4.11. It follows from Lemma 3.4.5 and Lemma 3.4.6 that S induces a well defined and strictly increasing operator over the se-degrees. Notice that for any A, JA ≤1 SA ≤1 SA⊕A and if A has characteristic degree SA ≡m JA (and so SX⊕X ≡m JX⊕X for all X). 76 CHAPTER 3. SYMMETRIC ENUMERATION REDUCIBILITY Definition 3.4.12. Let ase be any se-degree. The (strong) jump of ase (written 0 0 ∗ ∗ ase ) is defined to be degse(SA) for any A in ase. Thus ase =def ase ∪ inv(ase ). (k) (0) The iterated jump of ase is written ase and is defined by: ase = ase and (k+1) (k) 0 ase = (ase ) . Note 3.4.13. By Note 3.4.11 the jump is strictly increasing relative to the relation induced by ≤e over Dse. On the other hand the weak and strong jump of any set are clearly contained in the same Turing degree. Notice that both jumps are defined in terms of putative symmetric enumeration operators in the sense of Lemma 3.2.2. Accordingly they both reflect the separation of positive and negative information intrinsic to ≤se . See Section 3.9 and Remark 1 below for further motivation behind the definition of the (strong) jump. Notation. Let ase be any se-degree and A a set in ase. We refer to degse(SA⊕A) † as the embedded Turing jump of ase (written ase). Remark 1. The canonical embedding ιse : DT → Dse (see Proposition 3.3.8) preserves the jump operation. Indeed choose any Turing degree aT and A ∈ aT. 0 Then HA⊕A ∈ aT as KA ≡1 KA⊕A ≡1 HA⊕A . Let ase = degse(A ⊕ A) and note that, by definition, ιse( aT ) = ase. Also, 0 0 ιse( aT ) = ιse( degT(HA⊕A) ) = degse( HA⊕A ⊕ HA⊕A ) = ase . Remark 2. The embedding ςse : De → Dse induced by the map X 7→ KX is ∗ structure preserving, sends 0e to 0se and preserves infima. Remark 3. Define the Generalised Symmetric Enumeration (GSE) Hierarchy GSE,A GSE,A GSE,A GSE,A relative to set A to be { Σn , Πn , ∆n : n ≥ 0 } where Σ0 = GSE,A GSE,A GSE,A (n) Π0 = ∆0 = s-Enum(A) and, for n ≥ 0, Σn+1 = Enum(SA ), GSE,A GSE,A SE,A (n) Πn+1 = co-Σn+1 , and ∆n+1 = s-Enum(SA ). If A = ∅ call this simply the GSE Hierarchy. Now, we know that if degse(A) is characteristic A (n) A (n) then, for all n ≥ 0, Σn+1 = Enum(SA ) and ∆n+1 = s-Enum(SA ) (see Corollary 3.7.2 below). In other words, if degse(A) is characteristic, the GSE Hierarchy and the Arithmetical Hierarch relativised to A are identical. Thus, 3.5. THE SYMMETRIC ENUMERATION HIERARCHY 77 similarly to the SE Hierarchy—described in Section 3.5 below—the relativised GSE Hierarchy is a refinement of the relativised Arithmetical Hierarchy. Remark 4. Let A and B be any sets. A is partial many one reducible ([Ers70]) to B (A ≤pm B) if there exists a partial computable function g(x) such that x ∈ A iff g(x)↓ ∈ B. Let { fn | n ∈ ω } be a computable enumeration of all unary partial computable functions. Define LA to be the set { x | fx(x)↓ ∈ A } and define the weak jump of degm(A) to be the m-degree of the set FA = LA ⊕ LA . Note that the function h(x) = fx(x) witnesses the reduction LA ≤pm A. Using standard methods it can be shown that A≤pm B iff A≤1 LB and also that if A ≤m B, then FA ≤1 FB whereas FA m A. Moreover ∆2 is downward closed under ≤pm ([Ers70]). Thus, as in the proof of [Odi99] Proposition XI.6.13, we can easily show that there is no maximal ∆2 m-degree: if A ∈ ∆2, then FA ∈ ∆2 since FA ≤pm A ⊕ A, whereas A Finally note that TA = FA ⊕ FA is arguably an appropriate definition for the derivation of a (strong) jump over Dm. 3.5 The Symmetric Enumeration Hierarchy We now proceed to formulate a generalised version of the relativised Arithmeti- cal Hierarchy based on ≤e and ≤se (in place of “ c.e. in ” and ≤T ) in such a way that the former is identical to the latter when relativised to any set A whose se-degree is characteristic. Note that this work develops on methods used by Kevin McEvoy in [McE84] Chapter 4 to define a similar hierarchy. We start by presenting an alternative definition of the relativised Arithmetical Hierar- chy. The equivalence of the latter with the standard definition (see for example [Soa87] Chapter 4) is easily checked. Notation 3. For any classes C and D we use C⊕D as shorthand for the class { A ⊕ B | A ∈ C & B ∈ D }. Also, for R ∈ { Ce, Comp, Enum, s-Enum }, 78 CHAPTER 3. SYMMETRIC ENUMERATION REDUCIBILITY R(C) denotes the class S { R(E) | E ∈ C }. Definition 3.5.1. Let A be any set. The Arithmetical Hierarchy relativised to A A A A is defined to be. . . { Σn , Πn , ∆n : n ≥ 0 } A A A where Σ0 = Π0 = ∆0 = Comp(A) and, for n ≥ 0, A A A A A A A A Σn+1 = Ce(Σn ⊕ Πn ), Πn+1 = co-Σn+1 and ∆n+1 = Comp(Σn ⊕ Πn ). The Arithmetical Hierarchy { Σn, Πn, ∆n : n ≥ 0 } is the special case of this definition with A = ∅. A A A Note 3.5.2. Comp(A) = Comp({A} ⊕ {A}), so if we define Σ−1 = Π−1 = ∆−1 A A A to be {A}, we obtain ∆0 = Comp(Σ−1 ⊕ Π−1) in conformity with the definition A of ∆n+1. Proposition 3.5.3 ([McE85]). For any set A, ΣA = Enum(J (n)), for all n+1 CA n ≥ 0. Definition 3.5.4. Let A be any set. The SE-hierarchy relativised to A (written SE,A SE,A SE,A SE(A)-hierarchy) is defined to be. . . { Σn , Πn , ∆n : n ≥ 0 } SE,A SE,A SE,A where Σ0 = Π0 = ∆0 = s-Enum(A) SE,A SE,A SE,A SE,A SE,A and, for n ≥ 0, Σn+1 = Enum(Σn ⊕ Πn ), Πn+1 = co-Σn+1 SE,A SE,A SE,A and ∆n+1 = s-Enum(Σn ⊕ Πn ). SE SE SE The SE-hierarchy { Σn , Πn , ∆n : n ≥ 0 } is the special case of this definition with A = ∅. Note 3.5.5. s-Enum(A) = s-Enum({A} ⊕ {A}) and so in this case also (see SE,A SE,A SE,A Note 3.5.2), if we define Σ−1 = Π−1 = ∆−1 to be {A} we obtain SE,A SE,A SE,A ∆0 = s-Enum(Σ−1 ⊕ Π−1 ). Notice also that obviously, for all n ≥ 0, SE,A S SE,A SE,A SE,A SE,A Σn Πn ⊆ ∆n+1 and that Σn+1 and ∆n are closed under ≤e and ≤se respectively (by transitivity). SE,A (n) Proposition 3.5.6. Let A be any set. Then for all n ≥ 0, Σn+1 = Enum(JA ) SE,A (n) and ∆n+1 = s-Enum(JA ). (n) SE,A Proof. It suffices to show that JA is e-complete for Σn+1 and se-complete for SE,A ∆n+1 (for all n ≥ 0), since the latter are closed under ≤e and ≤se respec- tively. The case (n = 0) is straightforward, so we assume that (n > 0). 3.5. THE SYMMETRIC ENUMERATION HIERARCHY 79 SE,A SE,A SE,A • Suppose that B ∈ Σn+1 . Then there exist sets C ∈ Σn and D ∈ Πn (n−1) such that B ≤e C ⊕ D. By the Induction Hypothesis, C ≤e JA and D ≤e (n−1) JA . Hence by Lemma 3.4.3, C ≤1 K (n−1) and D ≤1 K (n−1) . However this JA JA (n) (n) implies that B ≤e C ⊕ D ≤1 K (n−1) ⊕ K (n−1) =def JA . Thus B ≤e JA . JA JA SE,A Also, by the Induction Hypothesis, and the closure of Σn under ≤e (using (n−1) (n) SE,A SE,A K (n−1) ≤e JA ) we obtain JA =def K (n−1) ⊕ K (n−1) ∈ Σn ⊕ Πn . It JA JA JA (n) SE,A SE,A follows that JA ∈ ∆n+1 ⊆ Σn+1 . SE,A • Suppose that B ∈ ∆n+1 . Then B≤e C ⊕ D and B≤e C ⊕ D ≡1 D ⊕ C, for SE,A SE,A (n) some C ∈ Σn and D ∈ Πn . Thus B, B ≤e JA by the first part of this (n) (n) proof. It follows that B ≤e JA since JA is characteristic (using Lemma 3.3.1); (n) (n) SE,A i.e. B≤se JA . Moreover, JA ∈ ∆n+1 by the first part of this proof. Note 3.5.7. It follows from Lemma 3.4.2 and Proposition 3.5.6 that, for all SE,A n ≥ 0, K (n) is 1-complete for Σn+1 . JA Proposition 3.5.8. Let A be any set such that degse(A) is characteristic. Then, SE,A SE,A T SE,A for all n ≥ 0, ∆n = Σn Πn . Proof. Let A be any set of characteristic se-degree. We argue by cases for n ≥ 0. The case (n = 0) holds by definition. For (n > 0) we use the fact that (n−1) (n−1) JA ≡se JA for all n (by Lemma 3.3.1 for n > 1 and by hypothesis for n = SE,A (n−1) 1). Accordingly, by Proposition 3.5.6, B ∈ ∆n iff B ≤e JA & B ≤e (n−1) (n−1) (n−1) SE,A T SE,A JA iff B≤e JA & B≤e JA iff B ∈ Σn Πn . Note 3.5.9. The proof of Proposition 3.5.8 clearly also implies that, for any SE,A SE,A T SE,A set A, ∆n = Σn Πn for all n 6= 1. Theorem 3.5.10. Suppose that Γ ∈ {Σ, Π, ∆} and let be A be any set. Then, A SE,CA for all n ≥ 0, Γn = Γn . Proof. Let A be any set. We reason by cases for n ≥ 0. (n = 0) An easy application of Proposition 3.3.7. (n−1) (n > 0) ΣA = Enum(J ) = ΣSE,CA by Propositions 3.5.3 and 3.5.6 n CA n and so the case Γ = Σ holds. The case Γ = Π then follows by definition and the case Γ = ∆ follows from the other two cases by applying Proposition 3.5.8. 80 CHAPTER 3. SYMMETRIC ENUMERATION REDUCIBILITY Theorem 3.5.11. For any set A, if degse(A) is characteristic then the Arith- metical Hierarchy relativised to A and the SE(A)-hierarchy are identical. Proof. Suppose that Γ ∈ {Σ, Π, ∆} and let be A be any set with characteristic SE,A SE,CA se-degree. By Theorem 3.5.10, it suffices to show that Γn = Γn for all n ≥ 0. We reason by induction. (n = 0) Since degse(A) is characteristic, A ≡se CA by Proposition 3.3.3 (and SE,A SE,CA Lemma 3.3.1) and so Γ0 = s-Enum(A) = s-Enum(CA) = Γ0 . SE,A SE,CA (n > 0) Note that the identity Σn = Σn is, by definition, equivalent SE,A SE,A SE,CA SE,CA to Enum(Σn−1 ⊕ Πn−1 ) = Enum(Σn−1 ⊕ Πn−1 ) which holds by the SE,A SE,CA Induction Hypothesis (i.e. that Σn−1 = Σn−1 ). This proves the case Γ = Σ. The case Γ = Π then follows by definition and the case Γ = ∆ follows from the other two cases by applying Proposition 3.5.8. Corollary 3.5.12. The Arithmetical Hierarchy is identical to the SE-hierarchy. Note 3.5.13. A≤e A implies that A ≡e CA and so it follows, by application of Lemma 3.3.6, that Ce(A) = Enum(A). Thus by modifying the proof of A SE,A Theorem 3.5.11, it can be shown that Γn = Γn holds for Γ ∈ {Σ, Π} and n ≥ 1, and for Γ = ∆ and n ≥ 2, whenever A≤e A. In addition to the above results it is easy to show (by induction) that, for Γ ∈ {Σ, Π, ∆}, and for any set A SE,A A Γn ⊆ Γn ⊆ Γn . (3.5.1) However, despite the similarities between the hierarchies it should be empha- sised that, for any set A, the SE(A)-hierarchy distinguishes between A and CA whenever A is not of characteristic se-degree (i.e. A ≡/ se A) whereas for the relativised Arithmetical hierarchy, A and CA are equivalent. In particular, if A SE,A A ≡/ se A then CA ∈ ∆n − ∆n for n ≤ 1 and if (the stronger condition) A SE,A Ae A holds, then CA ∈ Σ1 − Σ1 . This leads to the obvious question of whether the difference ever propogates up the hierarchy and if so, what condi- tions have to be fulfilled by A for this to happen. For example, supposing that 3.5. THE SYMMETRIC ENUMERATION HIERARCHY 81 A SE,A Γ ∈ {Σ, Π, ∆}, does Ae A imply that Γn 6= Γn for all n ≥ 0 ? We proceed by giving a partial answer to this question. Note 3.5.14. For any set A, if A ≤e A then KA ≤e KA (since (a) A ≤e A iff A≤1 KA iff A≤1 KA and (b) KA ≤e A). (n) Lemma 3.5.15. For all n ≥ 0, JK ∈ Σn+1. Proof. By induction on n ≥ 0. Note that the Case (n = 0) is just the fact that (1) K ∈ Σ1. Case (n = 1) holds because JK =def KK ⊕ KK ≤e KK ∈ Π1 (which (1) (n+1) (n+1) implies that JK ∈ Σ2). For the Case (n + 2) note that JK ≤e JK since (n+1) (n+2) JK is characteristic, and so JK =def K (n+1) ⊕ K (n+1) ≤e K (n+1) , by JK JK JK (n+1) Note 3.5.14. However JK ∈ Σn+2 by the Induction Hypothesis and hence (n+1) K (n+1) ∈ Σn+2 (since K (n+1) ≤e JK ), which implies that K (n+1) ∈ Πn+2. JK JK JK (n+2) Therefore JK ∈ Σn+3. Proposition 3.5.16. Suppose that Γ ∈ {Σ, Π, ∆}. There exists a set A such SE,A A that Γn 6= Γn for all n ≥ 0. (n+2) K Proof. Let A = K. Note firstly that K and K (n) are 1-complete for Σn+1 JK SE,K K and Σn+1 respectively for all n ≥ 0. Choose any n and suppose that Σn+1 = SE,K (n+2) Σn+1 . This would mean that K ≡1 K (n) . Now, by Lemma 3.5.15, JK (n) (n) (n+2) (n+1) JK ∈ Σn+1 and so K (n) ∈ Σn+1 (since K (n) ≤e JK ). Thus K ≤1 K JK JK (contradiction). This proves the cases Γ ∈ {Σ, Π, ∆} for n ≥ 2 (using Note 3.5.9) K SE,K and Γ ∈ {Σ, Π} for n = 1. Also CK ∈ ∆n − ∆n for n ≤ 1 and so the proof is complete. A further point to be underlined is that the methodology inherent to the SE-hierarchy relates to enumeration reducibility (and indeed symmetric enu- meration reducibility) in much the same way in which that of the Arithmetical Hierarchy relates to Turing reducibility. Our last result (Theorem 3.5.19) is an example of this relationship and of the manner in which the SE-hierarchy might contribute to certain aspects of the theory of enumeration reducibility. 82 CHAPTER 3. SYMMETRIC ENUMERATION REDUCIBILITY (1) (n) (n) Definition 3.5.17. An e-degree ae ≤ 0e is defined to be lown if ae = 0e (n) (n+1) and highn if ae = 0e , for all n ≥ 0 (the case n = 0 being trivial). A set A ≤e J is said to be e-lown (e-highn) if dege(A) is lown (highn). If n = 1 we abbreviate these terms to low, high etc. (n+1) Lemma 3.5.18. For all n ≥ 0, KJ (n) ≡1 K . SE Proof. For all n ≥ 0, Σn+1 = Σn+1 by Corollary 3.5.12. Hence it suffices to note SE (n+1) that KJ (n) is 1-complete for Σn+1 whereas K is 1-complete for Σn+1. Theorem 3.5.19. For any set A≤e J and n ≥ 1: SE,A (a) A is e-lown iff Σn ⊆ Πn+1 , SE,A (n+1) (n) (b) A is e-highn iff Πn+1 ⊆ Σn+1 iff K ≤e JA . Proof. Assume that n ≥ 1 and that A≤e J. (n) (n) SE,A SE A is e-lown iff JA ≤e J (which means that Σn+1 ⊆ Σn+1) iff (n) K (n−1) ≤T K (n−1) by an easy modification of Lemma 3.3.7, iff K (n−1) ≤T K JA J JA SE,A SE,A by Lemma 3.5.18, iff Σn ⊆ ∆n+1 by Note 3.5.7, iff Σn ⊆ Πn+1 SE,A SE,A SE SE since Σn ⊆ Σn+1 ⊆ Σn+1 (see above) and Σn+1 = Σn+1 by Corollary 3.5.12. (n+1) (n) (n+1) (n) (n+1) (n) A is e-highn iff J ≤e JA iff J ≤se JA since J and JA (n) (n+1) (n) are characteristic, iff KJ (n) ≤se JA by Lemma 3.3.7, iff K ≤se JA SE,A SE,A SE,A by Lemma 3.5.18, iff Σn+1 ⊆ ∆n+1 iff Σn+1 ⊆ Πn+1 (as Σn+1 ⊆ Σn+1 SE,A (n+1) (n) (n+1) by Equation 3.5.1) iff Πn+1 ⊆ Σn+1 iff K ≤e JA since K is 1-complete for Πn+1. 3.6 Basic Properties of Dse We know that Dse is an upper semi lattice and that the zero se-degree (0se) is the class of computable sets (see Note 3.2.4). Also, the existence of an isomorphic embedding (ιse) of the Turing degree structure DT into Dse (Proposition 3.3.8) tells us—using results from [Sac63] and [Ler72]—that any countable partial ordering is embeddable in Dse and that, in consequence, the one quantifier theory of Dse is decidable. Of course ιse also preserves infima and suprema so 3.6. BASIC PROPERTIES OF DSE 83 any lattice embedding into DT is also a lattice embedding into Dse. In particular, as both M3 and N5 are embeddable in DT we know that Dse is non distributive. These observations suggest a certain resemblance between Dse on the one side and DT and De on the other. We now consider other basic properties of Dse that further underline the similarities between these structures. Reminder. A degree c is said to be branching if there exist degrees b, a 6= c such that b ∩ a = c. If c = 0 we say that b and a form a minimal pair. Proposition 3.6.1. For any se-degrees b, c such that c < b there exists an se-degree a 6= c such that b ∩ a = c. Thus every se-degree is branching. Remark. The methods in the proof are adapted from those used by Rozinas ([Roz78]) to prove the same result for the e-degrees. Proof. Choose C ∈ c and B ∈ b and let { Φe | e ∈ ω } be the computable listing of enumeration operators stipulated in Section 2.3 (on page 22). We construct a set A satisfying, for all e, i ≥ 0, the requirements R3e : A 6= Φe(C) R3he,ii+1 :Φe(A ⊕ C) = Φi(B) ⇒ Φe(A ⊕ C)≤e C R3he,ii+2 :Φe(A ⊕ C) = Φi(B) ⇒ Φe(A ⊕ C)≤e C. Note that the requirements R3e ensure that C The construction. A is constructed by finite initial segments {αn}n≥0 such S + that A = {αn | n ≥ 0}. Stage s = 0. α0 = λ Stage s + 1. αs has already been defined. There are three cases to consider. Case 1. s = 3e for some e ≥ 0. Let as = |αs|. Then we satisfy R3e by defining 84 CHAPTER 3. SYMMETRIC ENUMERATION REDUCIBILITY αs+1 to be the extension of αs of length as +1 such that: αs+1(as) = 1 − Φe(C)(as) Case 2. s = 3he, ii+1 for some e, i ≥ 0. Then we try to vacuously satisfy R3he,ii+1 by forcing an inequality in its premise. To do this we search for x ≥ 0 and α ⊇ αs such that: + x ∈ Φe(α ⊕ C)& x∈ / Φi(B) If this search is successful we pick the least such α and set αs+1 := α otherwise we set αs+1 := αs. Case 3. s = he, ii+2 for some e, i ≥ 0. Then we try to vacuously satisfy R3he,ii+2 by forcing an inequality in its premise. To do this we search for x ≥ 0 and α ⊇ αs such that: − x ∈ Φe(α ⊕ C)& x∈ / Φi(B) If this search is successful we pick the least such α and set αs+1 := α otherwise we set αs+1 := αs. Analysis of the construction. The construction of A obviously ensures, via Case 1 above, that R3e is satisfied for all e ≥ 0. So we need only to show that R3he,ii+1 and R3he,ii+2 are both satisfied for all e, i ≥ 0. Claim. For all e, i ≥ 0 and 1 ≤ k ≤ 2, R3he,ii+k is satisfied. Proof. Fix e and i. We prove that R3he,ii+2 is satisfied. (The case k = 1 is similar.) Accordingly suppose that Φe(A ⊕ C) = Φi(B). Let s = 3he, ii+2. We show that, for all x ≥ 0, − x ∈ Φe(A ⊕ C) iff (∃α ⊇ αs)( x ∈ Φe(α ⊕ C)) since this implies that Φe(A ⊕ C)≤e C. (⇒) Obvious. − (⇐) Suppose that there is an α ⊇ αs such that x ∈ Φe(α ⊕ C) but that 3.6. BASIC PROPERTIES OF DSE 85 x∈ / Φe(A ⊕ C). Then x∈ / Φi(B) since Φe(A ⊕ C) = Φi(B) by hypothesis. Thus the construction at stage 3he, ii + 2 would ensure that Φe(A ⊕ C) 6= Φi(B), contradicting the hypothesis. 3 This concludes the proof. Corollary 3.6.2. Each non zero se-degree is part of a minimal pair. Definition 3.6.3 ([KP54]). Two degrees a and b form an exact pair for a set of degrees C if the following two conditions hold. (1) Both a and b are above all degrees in C, i.e. ( ∀c ∈ C )( c ≤ a & c ≤ b ) (2) Any degree x that is below a and b is also below some degree in C, i.e. x ≤ a & x ≤ b ⇒ ( ∃c ∈ C )( x ≤ c ). Notation. For any set A and n ∈ ω we define A[n] = { hx, ni | hx, ni ∈ A } and A[≤n] = S { A[m] | m ≤ n } . We combine this notation with that already described for strings in Section 1.2 (page 7). So for example, for any string σ and n ≥ 0 , [≤n] + ( σ ω ) =def { hx, mi | σ(hx, mi) ↓ = 1 & 0 ≤ m ≤ n & 0 ≤ x } . For any countable class of sets {Bk}k≥0 and n ∈ ω, ⊕m≤n Bm denotes the set { hx, mi | m ≤ n & x ∈ Bm } . Theorem 3.6.4. Every countable set of se-degrees in which every pair of ele- ments is bounded has an exact pair. Proof. Suppose that {Bn}n≥0 is a countable class of sets such that, for all 0 n, n ≥ 0 there exists m ≥ 0 such that Bn ⊕ Bn0 ≤se Bm (†). Then we will construct sets A and B such that: (1) Bm ≤se A, B for all m ≥ 0 (2) For any set E : E ≤se A, B ⇒ E ≤se ⊕m≤nBm for some n ≥ 0. 86 CHAPTER 3. SYMMETRIC ENUMERATION REDUCIBILITY 0 Note that, for all n ≥ 0, ⊕m≤nBm ≤se Bn0 for some n ≥ 0 by assumption (†), and so the sets A and B witness the truth of the Theorem. We firstly set: B := { hx, mi | x, m ∈ ω & x ∈ Bm } [n] [≤n] Remark. For any n ∈ ω, B is essentially a copy of Bn, B = ⊕m≤nBm, [≤n] and B = ⊕m≤nBm. Suppose that { Φk | k ∈ ω } is the computable listing of enumeration op- erators stipulated in Section 2.3 (on page 22). Accordingly, it will suffice to construct A, so as to satisfy, for all e, i, j ≥ 0 condition Ce and requirements R2hi,ji and R2hi,ji+1 defined as follows: Ce : Be ≤se A [≤n] R2hi,ji :Φi(A) = Φj(B) ⇒ Φi(A)≤e B for some n ≥ 0, 0 [≤n ] 0 R2hi,ji+1 :Φi(A) = Φj(B) ⇒ Φi(A)≤e B for some n ≥ 0 . Indeed, let E be any set such that E ≤se A, B; then the even requirements imply that E ≤e ⊕m≤nBm and the odd requirements imply that E ≤e ⊕m≤n0 Bm for 0 0 some n, n ≥ 0. Letn ˆ = max{n, n } and choose p such that Bm ≤se Bp for all m ≤ nˆ. Note that this is possible by assumption (†). Then, ⊕m≤nBm ≤e Bp and ⊕m≤n0 Bm ≤e Bp which implies that E≤e Bp and E≤e Bp. Thus E≤se Bp . On the other hand, condition Ce will be satisfied by coding Be directly into the eth column of A. In effect, we ensure that, for all but finitely many z ≥ 0: z ∈ Be iff hz, ei ∈ A Thus Be ≤1 A. The construction. A is constructed by finite initial segments {αn}n≥0 such S + that A = {αn | n ≥ 0} . Stage s = 0. α0 = λ Stage s + 1. αs has already been defined. 3.6. BASIC PROPERTIES OF DSE 87 Notation. We say that an inital segment α ⊇ αs is B-s-compatible if, for all n ≥ 0 and e ≤ s: |αs| ≤ hn, ei < |α| ⇒ α(hn, ei) = B(hn, ei) . There are two cases to consider depending on whether s is even or odd. Case 1. s = 2hi, ji for some i, j ≥ 0. Then we try to vacuously satisfy R2hi,ji by forcing an inequality. To do this we search for x ≥ 0 and B-s-compatible α ⊇ αs such that: + x ∈ Φi(α ) whereas x∈ / Φj(B). If this search is successful we pick the least such α and we set αs+1 := α, otherwise we set αs+1 := αs. Case 2. s = 2hi, ji + 1 for some i, j ≥ 0. Then we try to vacuously satisfy R2hi,ji+1 by searching for x ≥ 0 and B-s-compatible α ⊇ αs such that: − x ∈ Φi(α ) whereas x∈ / Φj(B). If this search is successful we pick the least such α and we set αs+1 := α, otherwise we set αs+1 := αs. Analysis of the construction. Firstly, for any e, it is easy to see that Ce is satisfied since the construction obviously forces A(hz, ei) = Be(z) for all but finitely many z. So we just need to show that both the requirements R2hi,ji and R2hi,ji+1 are satisfied, for all i, j ≥ 0. Claim 1. For all i, j ≥ 0, R2hi,ji is satisfied. Proof. Fix i and j. Suppose that Φi(A) = Φj(B). Let s = 2hi, ji and define the set + [≤s] + [≤s] Ps := { x | (∃α ⊇ αs)( x ∈ Φi(α )&((α−αs) ω ) ⊆ B ) } . [≤s] Clearly Ps ≤e B and so, to show that R2hi,ji is satisfied, it suffices to prove that, for all x ≥ 0: x ∈ Φi(A) ⇔ x ∈ Ps. 88 CHAPTER 3. SYMMETRIC ENUMERATION REDUCIBILITY + (⇒) If x ∈ Φi(A) then x ∈ Φ(α ) for some α ⊆ cA such that α ⊇ αs . Pick t ≥ s+1 large enough so that α ⊆ αt. Then αt is B-s-compatible since, for all r ≥ s, [≤s] + [≤s] αr+1 is B-r-compatible. However this implies that ( (αt−αs) ω ) ⊆ B [≤s] + [≤s] [≤s] + [≤s] + and so ( (α−αs) ω ) ⊆ B , since ( (α−αs) ω ) ⊆ ((αt−αs) ω ) . Thus x ∈ Ps. (⇐) Suppose that x ∈ Ps but that x∈ / Φi(A). Then x∈ / Φj(B) since Φi(A) = Φj(B) by hypothesis. Now, by definition of Ps, we know that x ∈ + [≤s] + [≤s] Φi(α ) for some α ⊇ αs such that: ( (α−αs) ω ) ⊆ B . So defineα ˆ of length |α| such that, for all y < |α|: α (y) if y < |α | s s [≤s] [≤s] αˆ(y) = (B )(y) if y ≥ |αs| and y ∈ ω (3.6.1) α(y) otherwise It is easy to see that α+ ⊆ αˆ+ and thatα ˆ is B-s-compatible. Thereforeα ˆ would bear witness to the fact that Φi(A) 6= Φj(B) at Stage s + 1, contradicting the hypothesis. 3 Claim 2. For all i, j ≥ 0, R2hi,ji+1 is satisfied. Proof. Fix i and j. Suppose that Φi(A) = Φj(B). Let s = 2hi, ji+1 and define the set − [≤s] − [≤s] Ns := { x | (∃α ⊇ αs)( x ∈ Φi(α )&((α−αs) ω ) ⊆ B ) } . [≤s] Clearly Ns ≤e B and so, to show that R2hi,ji+1 is satisfied, it suffices to prove that, for all x ≥ 0: x ∈ Φi(A) ⇔ x ∈ Ns. − (⇒) If x ∈ Φi(A) then x ∈ Φ(α ) for some α ⊆ cA such that α ⊇ αs, by con- struction. Pick t ≥ s+1 large enough so that α ⊆ αt. Then αt is B-s-compatible [≤s] − [≤s] as in Claim (1). However this implies that ( (αt−αs) ω ) ⊆ B and so [≤s] − [≤s] [≤s] − [≤s] − ((α−αs) ω ) ⊆ B , since ( (α−αs) ω ) ⊆ ((αt−αs) ω ) . Thus x ∈ Ns. 3.7. CEA AND CO-CEA SUBSTRUCTURES OF DSE 89 (⇐) Suppose that x ∈ Ns but that x∈ / Φi(A). Then x∈ / Φj(B) since Φi(A) = Φj(B) by hypothesis. Now, by definition of Ns, we know that x ∈ − [≤s] − [≤s] Φi(α ) for some α ⊇ αs such that: ( (α−αs) ω ) ⊆ B . So defineα ˆ of length |α| such that, for all y < |α|: α (y) if y < |α |) s s [≤s] [≤s] αˆ(y) = (B )(y) if y ≥ |αs| and y ∈ ω (3.6.2) α(y) otherwise It is easy to see that α− ⊆ αˆ− and thatα ˆ is B-s-compatible. Thereforeα ˆ would bear witness to the fact that Φi(A) 6= Φj(B) at Stage s + 1, contradicting the hypothesis. 3 This concludes the proof. Proposition 3.6.5. Dse is not a lattice. Proof. Consider any strictly ascending sequence S of se-degrees. Then by The- orem 3.6.4, S has an exact pair a and b. Thus a and b do not have a greatest lower bound. Remark. It is readily seen that if Turing degrees aT and bT do not have an infinum then the images ιse(aT) and ιse(bT) under the canonical embedding of DT in Dse (Proposition 3.3.8) also do not have an infinum. Therefore Proposi- tion 3.6.5 follows from Spector’s (exact pair) Theorem for DT ([KP54, Lac54, Spe56]). Similarly Proposition 3.6.5 may also be seen as a Corollary to or Proposition 3.7.6 below. 3.7 CEA and co-CEA substructures of Dse By Proposition 3.3.8 the substructure of Dse induced by the set of characteristic degrees is an isomorphic copy of DT. In this sense each characteristic se-degree is in effect an embedded Turing degree. We now show that, for any given Turing degree aT, there is a specific substructure of DT local to aT which has two 90 CHAPTER 3. SYMMETRIC ENUMERATION REDUCIBILITY isomorphic copies local to the embedded image of aT (under ιse) in Dse. In consequence, in Sections 3.8-3.9, we will be able to apply results from the litera- ture on DT (via Propostion 3.7.6) to prove structural and definability properties of Dse. Firstly however we show (Corollary 3.7.2) that standard artithmetical notions are well defined relative to the embedded Turing degrees in Dse. We start with a Corollary of Proposition 3.5.3. Lemma 3.7.1 ([McE85]). Suppose that A is a total set (i.e. A ≤e A). Then for A (n) all n ≥ 0, Σn+1 = Enum(JA ). Corollary 3.7.2. Suppose that A is a set of characteristic se-degree (i.e. A ≡se A). Then for all n ≥ 0, A (n) (a) Σn+1 = Enum(SA ), A (n) (b) ∆n+1 = s-Enum(SA ). (n) (n) Proof. By Note 3.4.11 and a simple induction, SA ≡se JA for all n ≥ 0. Thus (0) (a) is immediate by Lemma 3.7.1. To prove (b) note firstly that SA =def A (m+1) (and A ≡se A by hypothesis) and that SA is characteristic for all m ≥ 0. Thus, for all n ≥ 0, A (n) (n) ∆n+1 = { B | B≤e SA & B≤e SA } (n) (n) = { B | B≤e SA & B≤e SA } (n) =def s-Enum(SA ) . Notation. Let Γ ∈ {Σ, Π, ∆}. Suppose that u is a characteristic se-degree. u U Then Γn denotes the class { a | (∃A ∈ a)(∃U ∈ u)[ A ∈ Γn ] } . We will use the u u 0 notation Σn ∪ Πn with obvious meaning and the shorthand Γn for the class Γn. v v If v is a Turing degree we use Σn and ∆n in a similar manner (in the context of DT). Remark. Suppose that u is a characteristic se-degree. Since for any sets X and Y , X ≤se Y iff X ≤se Y it is easily seen that for any n ≥ 0 and Γ ∈ {Σ, Π, ∆}, u U a ∈ Γn iff A ∈ Γn for all A ∈ a and U ∈ u. 3.7. CEA AND CO-CEA SUBSTRUCTURES OF DSE 91 Definition 3.7.3. Let aT be any Turing degree and bse any characteristic se- degree. Then CEAT(aT) is defined to be the substructure of DT generated by the set aT { dT | aT ≤ dT & dT ∈ Σ1 } . Likewise, CEAse(bse) and co-CEAse(bse) are defined to be the substructures of Dse generated by the sets bse { dse | bse ≤ dse & dse ∈ Γ1 } for Γ ∈ {Σ, Π} respectively. We use ET, Ese, and co-Ese as shorthand for the structures CEAT(0T), CEAse(0se) and co-CEAse(0se). Proposition 3.7.4. Let A be any set and let aT = degT(A) and ase = degse(A⊕ A) (i.e. the unique characteristic se-degree contained in aT). Then ∼ ∼ CEAT(aT) = CEAse(ase) = co-CEAse(ase) . ∼ Proof. The isomorphism CEAse(ase) = co-CEAse(ase) is witnessed by the re- striction to CEAse(ase) of the inverse map inv : Dse → Dse (see Definition 3.4.1). ∼ Thus it suffices to prove that CEAT(aT) = CEAse(ase). Consider any sets A A, B, C such that that A ∈ aT, A≤T B,C and B,C ∈ Σ1 . Note that this last condition implies that B,C≤e A ⊕ A. Then, B≤T C iff B ⊕ A≤T C ⊕ A iff (B ⊕ B) ⊕ (A ⊕ A)≤e (C ⊕ C) ⊕ (A ⊕ A) by Lemma 3.3.6, iff B ⊕ (A ⊕ A)≤e C ⊕ (A ⊕ A) as B,C≤e A ⊕ A, iff B ⊕ (A ⊕ A)≤se C ⊕ (A ⊕ A) since B≤e A ⊕ A, iff B ⊕ (A ⊕ A)≤se C ⊕ (A ⊕ A) by symmetry of ≤se , iff B ⊕ (A ⊕ A)≤se C ⊕ (A ⊕ A) as A ⊕ A ≡se A ⊕ A. Moreover, for any set Bb such that A ⊕ A≤se Bb, obviously Bb ≡se Bb ⊕ (A ⊕ A) and A≤T Bb. Thus the map F : degT(X) 7→ degse( X ⊕ (A ⊕ A) ) witnesses the ∼ isomorphism CEAT(aT) = CEAse(ase). 92 CHAPTER 3. SYMMETRIC ENUMERATION REDUCIBILITY ∼ ∼ Corollary 3.7.5. ET = Ese = co-Ese. Proposition 3.7.6. Let u be a characteristic se-degree. Then the two structures CEAse(u) and co-CEAse(u) are non trivial, dense, non distributive upper semi- lattices with bottom element u and top element u∗ and inv(u∗) respectively. Neither structure is a lattice. Proof. Choose U ∈ u and let uT = degT(U). Notice that KU ≡se HU as u ∗ ∗ is characteristic, and hence u and inv(u ) are in CEAse(u) and co-CEAse(u) respectively. Also U ≤1 KU and U ≡se U ≤1 KU whereas KU se U (as KU ≡se ∗ ∗ HU ) and KU se U (as KU e U). Therefore u < u and u < inv(u ). Non triviality is immediate. Note that CEAT(uT) is dense by the relativised version of Sacks density Theorem for ET ([Sac64]). It follows, by Proposition 3.7.4 that both CEAse(uT) and co-CEAse(uT) are dense. Likewise both structures are non distributive since N5 is embeddable into CEAT(uT) ([Lac72]) and neither structure is a lattice since CEAT(uT) contains a pair of degrees without infinum ([Lac66, Yat66]). If any set X is c.e. in U then X ≤1 KU and if X is co-c.e. in U then ∗ ∗ X ≤1 KU . So u and inv(u ) are the top elements of CEAse(u) and co-CEAse(u) respectively. Remark. Every total enumeration degree contains infinitely many se-degrees. Indeed, if ae is a total enumeration degree then ae not only contains a (unique) ∗ characteristic se-degree ase (say) but also its weak jump ase . Thus ae also ∗ contains the set { bse | ase < bse < ase } which we know to be infinite by Proposition 3.7.6. 3.8 Diamond embeddings and minimal covers Kalimullin defined the notion of a U-e-ideal pair in [Kal03] and used it to show that the (enumeration) jump is definable in De. It turns out that Kalimullin’s notion can be symmetrised (Definition 3.8.2) and used as a tool in the context of the the se-degrees. In effect, by defining the notion of a U-se-ideal pair, and 3.8. DIAMOND EMBEDDINGS AND MINIMAL COVERS 93 applying results from [Joc68], we are able to prove a diamond theorem for Dse similar to the result proved for De by Arslanov, Kalimullin and Cooper (see [AKC03] Theorem 6). We also show that every non zero Turing degree contains at least two mimimal se-degrees and we generalise this result. Reminder. For any sets X,Y : X ⊕ Y = X ⊕ Y . Definition 3.8.1 ([Kal03]). (a) A pair of sets A and B is e-ideal if there is a c.e. set W such that A × B ⊆ W and A × B ⊆ W . (b) For any set U, a pair of sets A and B is U-e-ideal if there is a set W ≤e U such that A × B ⊆ W and A × B ⊆ W . Definition 3.8.2. (a) A pair of sets A and B is se-ideal if both (A, B) is e-ideal and (A, B) is e-ideal. (b) For any set U, a pair of sets A and B is U-se-ideal if (A, B) is U-e-ideal and (A, B) is U-e-ideal. Proposition 3.8.3. For any sets A, B and U, if A≤e U and B≤e U, then the pair of sets (A, B) is U-se-ideal. Proof. Suppose that A≤e U and B ≤e U. Define M = A × ω and N = ω × B. Then M ≤e U and N ≤e U. Also, for any sets X,Y , A×X ⊆ M and A×X ⊆ M whereas Y × B ⊆ N and Y × B ⊆ N. Thus A × B ⊆ M, A × B ⊆ M and A × B ⊆ N, A × B ⊆ N. Observe that the notion of a U-se-ideal pair is not ordered. So it would be redundant to add the case A ≤e U and B ≤e U in the formulation of Proposi- tion 3.8.3. Similar considerations apply to the results below. Corollary 3.8.4. If A is a c.e. set and B is a co-ce set then (A, B) is se-ideal. Lemma 3.8.5. If A and U are sets such that A≤se U then, for every set B the pair of sets (A, B) is U-se-ideal. Proof. Similar to the proof of Propostion 3.8.3 but with M = A × ω and N = A × ω. 94 CHAPTER 3. SYMMETRIC ENUMERATION REDUCIBILITY Lemma 3.8.6. For any sets A and U, if the pair (A, A) is U-se-ideal, then A≤se U. Proof. Let M ≤e U and N ≤e U be sets such that A × A ⊆ M and A × A ⊆ M whereas A × A ⊆ N and A × A ⊆ N. Then clearly the function f(x) = hx, xi witnesses both A≤1 M and A≤1 N. Hence A≤e U and A≤e U. Definition 3.8.7 ([Joc68]). A set A is semirecursive if there is a computable function f of two variables such that, for every x and y, (1) f(x, y) ∈ {x, y} (2) {x, y} ∩ A 6= ∅ ⇒ f(x, y) ∈ A. In this case f is called a selector function for A. Remark. A is semirecursive iff A is semirecursive. Lemma 3.8.8. If A is semirecursive the pair (A, A) is se-ideal. Proof. Suppose that f is a selector function for A. Define W = { hx, yi | f(x, y) = x } . Then both W and W are c.e. and A × A ⊆ W and A × A ⊆ W . It follows that (A, A) is e-ideal via W whereas (A, A) is e-ideal via W . Theorem 3.8.9 ([Joc68]). For any computable set A there is a semirecursive set B ≡T A such that neither B nor B is computably enumerable. Lemma 3.8.10. For any sets A, B and U, if the pair A, B forms a U-se-ideal pair, and C≤se A then the pair of sets C,B also forms a U-se-ideal pair. Proof. Suppose that M ≤e U and N ≤e U are sets witnessing the fact that (A, B) is U-se-ideal, i.e. A × B ⊆ M and A × B ⊆ M A × B ⊆ N and A × B ⊆ N. 3.8. DIAMOND EMBEDDINGS AND MINIMAL COVERS 95 Let Φ and Ψ be enumeration operators such that C = Φ(A) and C = Ψ(A). Define M 0 = { hn, mi | ∃D[ n ∈ Φ(D)&(∀z ∈ D)[ hz, mi ∈ M ]] } N 0 = { hn, mi | ∃D[ n ∈ Ψ(D)&(∀z ∈ D)[ hz, mi ∈ N ]] } 0 0 where D (as usual) ranges over finite sets. Notice that M ≤e M and N ≤e N: for example the c.e. set { h hn, mi , {hz, mi | z ∈ D} i | n ∈ Φ(D) } witnesses 0 the reduction M ≤e M. Claim 1. C × B ⊆ M 0 and C × B ⊆ M 0. Claim 2. C × B ⊆ N 0 and C × B ⊆ N 0. Proof. We prove Claim 1. Claim 2 is proved in a similar manner. • Suppose that hn, mi ∈ C × B. Then n ∈ Φ(D) for some finite set D ⊆ A and so, for all z ∈ D, hz, mi ∈ A × B ⊆ M. Hence hn, mi ∈ M 0. • Suppose that hn, mi ∈ C ×B. Consider any finite set D such that n ∈ Φ(D). Then, as C = Φ(A) there exists some z ∈ D such that z ∈ A and so hz, mi ∈ A × B ⊆ M. Hence hn, mi ∈/ M 0. 3 Thus sets C,B form a U-se-ideal pair. Remark. Lemma 3.8.10 is also a corollary of Theorem 3.8.16 below. Corollary 3.8.11. The notion of a U-se-ideal pair is invariant under se-equivalence (for any set U). Definition 3.8.12. We say that a pair of se-degrees a and b is u-se-ideal for an se-degree u if the pair (A, B) is U-se-ideal for some—or equivalently any—sets A ∈ a, B ∈ b and U ∈ u. Lemma 3.8.13. For any se-degrees a and u the set I(u, a) = { b ∈ Dse | (a, b) is u-se-ideal } is an ideal in Dse. 96 CHAPTER 3. SYMMETRIC ENUMERATION REDUCIBILITY Proof. Suppose that (a, b) is u-se-ideal and d ≤ b. Then it follows from Lemma 3.8.10 that (a, d) is u-se-ideal. Now suppose that (a, c) is also u- se-ideal (i.e. both b and c are in I(u, a)). Choose sets A ∈ a, B ∈ b, C ∈ c and U ∈ u. By definition there exist sets Mb,Mc ≤e U and Nb,Nc ≤e U such that A × B ⊆ Mb , A × B ⊆ Mb and A × B ⊆ Nb ,A × B ⊆ Nb A × C ⊆ Mc , A × C ⊆ Mc and A × C ⊆ Nc ,A × C ⊆ Nc . Now define S M = { hn, 2mi | hn, mi ∈ Mb } { hn, 2m + 1i | hn, mi ∈ Mc } S N = { hn, 2mi | hn, mi ∈ Nb } { hn, 2m + 1i | hn, mi ∈ Nc } and notice that M ≤e U and N ≤e U. Also it is straightforward to check that A × (B ⊕ C) ⊆ M and A × (B ⊕ C) ⊆ M A × (B ⊕ C) ⊆ N and A × (B ⊕ C) ⊆ N. Therefore the pair (a, b ∪ c) is u-se-ideal. Theorem 3.8.14 ([Kal03]). Let A, B be a pair of sets that is not U-e-ideal and let {Fx,Ex}x∈ω be a computable enumeration of all pairs of finite sets. Then there exist sets X,Y ≤T A ⊕ B ⊕ KU such that Y = { z | z ∈ X & Fz ⊆ A } = { z | z ∈ X & Ez ⊆ B } (so Y ≤e X ⊕ A and Y ≤e X ⊕ B) and Y e X ⊕ U. Proof. See Theorem 2.5 and its proof in [Kal03]. Corollary 3.8.15. Let A, B be a pair of sets that is not U-se-ideal. Then there exist sets X,Y ≤T A ⊕ B ⊕ HU such that Y ≤se X ⊕ A and Y ≤se X ⊕ B whereas Y se X ⊕ U . Remark. X,Y ≤T A ⊕ B ⊕ HU implies that X,Y ≤se (A ⊕ A) ⊕ (B ⊕ B) ⊕ SU . 3.8. DIAMOND EMBEDDINGS AND MINIMAL COVERS 97 Proof. Since the pair (A, B) is not U-se-ideal we know (by definition) that either (A, B) is not U-e-ideal or (A, B) is not U-e-ideal. We consider both cases. Case 1. (A, B) is not U-e-ideal. Then, by Theorem 3.8.14—and assuming {Fx,Ex}x∈ω to be an enumeration of pairs of finite sets—there exist sets X,Y computable in A ⊕ B ⊕ KU such that Y = { z | z ∈ X & Fz ⊆ A } = { z | z ∈ X & Ez ⊆ B } and Y e X ⊕ U. Now note that the c.e. set W = {hz, {z} ⊕ Fz i | z ∈ ω } witnesses the reduction Y ≤e X ⊕ A and the c.e. set 0 S W = {hz, {z} ⊕ ∅ i | z ∈ ω } {hz, ∅ ⊕ {n} i | n ∈ Fz & z ∈ ω } witnesses the reduction Y ≤e X ⊕ A (since z ∈ Y iff z ∈ X or Fz ∩ A 6= ∅). Therefore Y ≤se X ⊕ A. Also, by a similar argument Y ≤se X ⊕ B. On the other hand, Y e X ⊕ U obviously implies Y se X ⊕ U. Case 2. (A, B) is not U-e-ideal. Then, by the same argument as that applied to Case 1, there exist sets Z,V computable in A ⊕ B ⊕ KU such that V ≤se Z ⊕ A and V ≤se Z ⊕ B but V se Z ⊕ U . However, if we let X = Z and Y = V , then the latter is equivalent to Y ≤se X ⊕ A, Y ≤se X ⊕ B and Y se X ⊕ U (by definition of ≤se ). Theorem 3.8.16. For any sets A, B, U the conditions (a)-(c) are equivalent. (a) The pair (A, B) is U-se-ideal. (b) There exist computable functions f(x, y) and fˆ(x, y) such that, for any set X ⊆ ω and for every x, y ∈ ω, Φx(A ⊕ X) ∩ Φy(B ⊕ X) ⊆ Φf(x,y)(U ⊕ X) ⊆ Φx(A ⊕ X) ∪ Φy(B ⊕ X) and Φx(A ⊕ X) ∩ Φy(B ⊕ X) ⊆ Φfˆ(x,y)(U ⊕ X) ⊆ Φx(A ⊕ X) ∪ Φy(B ⊕ X) . 98 CHAPTER 3. SYMMETRIC ENUMERATION REDUCIBILITY (c) For every set X ⊆ ω the se-degree degse(U ⊕X) is the infinum of degse( A⊕ (U ⊕ X)) and degse( B ⊕ (U ⊕ X)). Remark. This Theorem and its proof are adapted from Theorem 2.6 of [Kal03]. Proof. (a) ⇒ (b) Since (A, B) is U-se-ideal there exist sets M ≤e U and N ≤e U such that A × B ⊆ M and A × B ⊆ M A × B ⊆ N and A × B ⊆ N. Suppose that M = ΦM (U) and N = ΦN (U). Then there exist computable functions f(x, y) and fˆ(x, y) such that 0 00 0 00 Wf(x,y) = { hn, D ⊕ Ei | ∃D ∃D n ∈ Φx(D ⊕ E) ∩ Φy(D ⊕ E)& 0 00 (∀z ∈ D )(∀w ∈ D )[ hz, wi ∈ ΦM (D)] } 0 00 0 00 Wfˆ(x,y) = { hn, D ⊕ Ei | ∃D ∃D n ∈ Φx(D ⊕ E) ∩ Φy(D ⊕ E)& 0 00 (∀z ∈ D )(∀w ∈ D )[ hz, wi ∈ ΦN (D)] } . where D0,D00 (and of course D,E) range over finite sets. We can now check that the associated enumeration operators Φf(x,y) and Φfˆ(x,y) satisfy condition (b). The argument for Φf(x,y) is below, that for Φfˆ(x,y) is similar. 0 • Suppose that n ∈ Φx(A ⊕ X) ∩ Φy(B ⊕ X). Then n ∈ Φx(D ⊕ E) ∩ 00 0 00 Φy(D ⊕ E) for some (finite sets) E ⊆ X, D ⊆ A, D ⊆ B. Thus, for any 0 00 z ∈ D and w ∈ D , hz, wi ∈ A × B ⊆ M = ΦM (U). It easily follows that there exists a finite set D ⊆ U such that hz, wi ∈ ΦM (D) for all such z, w. Thus n ∈ Φf(x,y)(U ⊕ X). 0 00 • Suppose that n ∈ Φf(x,y)(U ⊕X). Then n ∈ Φx(D ⊕X) ∩ Φy(D ⊕X) for 0 00 0 00 some D ,D such that for any z ∈ D and w ∈ D , hz, wi ∈ ΦM (U) = M. Suppose for a contradiction that n∈ / Φx(A ⊕ X) ∪ Φy(B ⊕ X). Then there must exist numbers z0 ∈ D0 and w0 ∈ D00 such that z0 ∈ A and w0 ∈ B and this means that hz0, w0i ∈ M (contradiction). 3.8. DIAMOND EMBEDDINGS AND MINIMAL COVERS 99 (b) ⇒ (c) Let X be any set. It is obvious that U ⊕ X ≤se A ⊕ (U ⊕ X) and U ⊕ X ≤se B ⊕ (U ⊕ X). Consider any set C such that C ≤se A ⊕ (U ⊕ X) and 0 0 C≤se B ⊕ (U ⊕ X). Then there exist numbers x, y, x , y such that C = Φx( A ⊕ (U ⊕ X) ) = Φy( B ⊕ (U ⊕ X)) and C = Φx0 ( A ⊕ (U ⊕ X) ) = Φy0 ( B ⊕ (U ⊕ X)) . Now since condition (b) holds by hypothesis, C = Φf(x,y)( U ⊕ (U ⊕ X)) C = Φfˆ(x0,y0)( U ⊕ (U ⊕ X)) . Thus C≤se U ⊕ X. (c) ⇒ (a) Suppose that the pair (A, B) is not U-se-ideal. Then it follows from Corollary 3.8.15 that there exist sets X,Y such that Y ≤se A ⊕ (U ⊕ X), Y ≤se B ⊕ (U ⊕ X) and Y se U ⊕ X. Therefore degse(U ⊕ X) is not the infinum of degse( A ⊕ (U ⊕ X) ) and degse( B ⊕ (U ⊕ X) ). Note 3.8.17. By Theorem 3.8.16 (a) ⇔ (c) we know that the pair (A, B) is U-se-ideal iff for any set X se≥ U, degse(X) = degse(A ⊕ X) ∩ degse(B ⊕ X) . (3.8.1) Note that if (A, B) is se-ideal then (3.8.1) holds for any X (and so also, if neither A nor B are computable, degse(A) and degse(B) form a minimal pair). Corollary 3.8.18. A pair of se-degrees a,b is u-se-ideal iff (∀z ≥ u)[ (a ∪ z ) ∩ (b ∪ z ) = z ] . Note 3.8.19. Corollary 3.8.18 implies that, for any degree u the relation “(x, y) is a u-se-ideal pair” is first order definable with parameter u in Dse. In particular it implies that the first order predicate ∀z [(x ∪ z ) ∩ (y ∪ z ) = z ] defines “(x, y) is an se-ideal pair” in Dse. 100 CHAPTER 3. SYMMETRIC ENUMERATION REDUCIBILITY Theorem 3.8.20 (Diamond Embeddings). Let a and b be se-degrees such that b is characteristic and a < b. Then the diamond lattice is embeddable in the se-degrees with b as the greatest elment and a as the least element provided that there is a characteristic degree a ≤ c < b. Proof. Choose A ∈ a, C ⊕C ∈ c and B ⊕B ∈ b. By Theorem 3.8.9 there exists a semirecursive set V such that V ≡T B. Equivalently, V ⊕ V ≡se B ⊕ B. Set u = degse(V ⊕ A) and v = degse(V ⊕ A). • Note firstly that u ∪ v = degse(V ⊕ V ⊕ A) = b. • If V ≤se A then V ≤se C ⊕ C and so V ⊕ V ≤se C ⊕ C. Likewise V ≤se A implies V ⊕ V ≤se C ⊕ C. Hence in either case we would have B ⊕ B ≤se C ⊕ C in contradiction with the the hypothesis. Therefore u > a and v > a. Now the pair (V, V ) is se-ideal by Lemma 3.8.8. Thus it follows from Theorem 3.8.16 (see Note 3.8.17) that u ∩ v = a. Corollary 3.8.21. For any non zero characteristic degree a, the diamond lat- tice is embeddable in the se-degrees with a as the greatest element and 0se as the least element. Remark. In addition to Corollary 3.8.21 it follows from the proof of Theo- rem 3.8.20 that for any non computable set B there exists a (semirecursive) set X ≡T B such that degse(X) and degse(X) form a minimal pair in Dse. We now move on to the second topic of this Section: minimal degrees. Theorem 3.8.22. Let a, b and u be se-degrees such that: (1) u is characteristic, u u (2) a ∈ Σ1 and b ∈ Π1 . Then the pair (a, b) is u-se-ideal. Proof. Choose A ∈ a, B ∈ b and U ∈ u. Then A≤e U and B ≤e U ≡e U as u U is characteristic (and the fact that, by Corollary 3.7.2 with n = 0, X ∈ Σ1 iff X ≤e U for any X). Now apply Proposition 3.8.3. 3.8. DIAMOND EMBEDDINGS AND MINIMAL COVERS 101 Theorem 3.8.23 ([Kal03]). If A, B, M are any sets such that A × B ⊆ M and A × B ⊆ M (3.8.2) and such that Be M, then A≤e B ⊕ M. Proof. For each x ∈ ω let Mx = { y | hx, yi ∈ M }. Clearly Mx ≤e M. Now (3.8.2) implies that if x ∈ A then B ⊆ Mx, whereas if x ∈ A then Mx ⊆ B (since B ⊆ Mx). Also, as B e Mx by assumption, each of these inclusions is proper. It therefore follows that