XIII. Turing Reducibility
Yuxi Fu
BASICS, Shanghai Jiao Tong University The problem with m-reduction is that it imposes too strong a restriction on the use of a result obtained by revoking a subroutine.
Computability Theory, by Y. Fu XIII. Turing Reducibility 1 / 44 Synopsis
1. Relative Computability
3. Jump Operator
4. Use Principle
5. Modulus Lemma and Limit Lemma
Computability Theory, by Y. Fu XIII. Turing Reducibility 2 / 44 1. Relative Computability
Computability Theory, by Y. Fu XIII. Turing Reducibility 3 / 44 Computation with Oracle
Suppose O is a total unary function.
Informally a function f is computable relative to O, or O-computable, if f can be computed by an algorithm that is effective in the usual sense, except from time to time during computation f is allowed to consult the oracle function O.
If f is computable in O, the degree of undecidability of f is no more than that of O.
Computability Theory, by Y. Fu XIII. Turing Reducibility 4 / 44 Partial Recursive Function with Oracle
Formally an O-partial recursive function f is constructed from the initial functions and O by substitution, primitive recursion and minimization.
Computability Theory, by Y. Fu XIII. Turing Reducibility 5 / 44 URM with Oracle
A URM with Oracle, URMO for short, can recognize a fifth kind of instruction, O(n), for every n ≥ 1.
If O is the oracle function, then the effect of O(n) is to replace the content rn of Rn by O(rn).
Computability Theory, by Y. Fu XIII. Turing Reducibility 6 / 44 Turing Machine with Oracle
A Turing Machine with Oracle, TMO for short, has an additional read only oracle tape.
If O is the oracle function, then the oracle tape is preloaded with the string of 0’s and 1’s that represents O.
In the above definition it is convenient to restrict to those oracles that are characteristic functions.
Computability Theory, by Y. Fu XIII. Turing Reducibility 7 / 44 Numbering URMO Programs
We fix an effective enumeration of all URMO programs
O O O P0 , P1 , P2 ,....
It is important to notice that the G¨odelnumber of an oracle machine is independent of any specific oracle function.
Computability Theory, by Y. Fu XIII. Turing Reducibility 8 / 44 Notation and Terminology
O Pe is the e-th URMO.
O,n O φe is the n-ary function O-computed by Pe . O,1 O φe is simplified to φe .
O O We is dom(φe ). O O Ee is rng(φe ).
CO is the set of all O-computable functions.
Computability Theory, by Y. Fu XIII. Turing Reducibility 9 / 44 Relative Computability
Fact. (i) O ∈ CO. (ii) C ⊆ CO. (iii) If O is computable, then C = CO. (iv) CO is closed under substitution, recursion and minimalisation. (v) If ψ is a total function that is O-computable, then Cψ ⊆ CO.
Computability Theory, by Y. Fu XIII. Turing Reducibility 10 / 44 Relative S-m-n Theorem
Relative S-m-n Theorem. For all m, n ≥ 1 there is an injective m primitive recursive (m+1)-ary function sn (e, ex) such that for each oracle O the following holds:
O,m+n O,n φe (x, y) ' φ m (y). e e sn (e,ex) e
m Notice that sn (e, ex) does not refer to O.
Computability Theory, by Y. Fu XIII. Turing Reducibility 11 / 44 Relative Enumeration Theorem
Relative Enumeration Theorem. For each n, the universal O,n function ψU for n-ary O-computable functions given by
O,n O,n ψU (e, ex) ' φe (ex) is O-computable.
Computability Theory, by Y. Fu XIII. Turing Reducibility 12 / 44 Relative Recursion Theorem
Relative Recursion Theorem. Suppose f (y, z) is a total O-computable function. There is a primitive recursive function n(z) such that for all z
O,n O,n φf (n(z),z)(ex) ' φn(z)(ex).
Computability Theory, by Y. Fu XIII. Turing Reducibility 13 / 44 Relative Theory
Once we have the three foundational theorems, we can do the recursion theory relative to an oracle function.
A proof of a proposition relativizes if essentially it is also a proof of the relativized proposition.
Computability Theory, by Y. Fu XIII. Turing Reducibility 14 / 44 O-Recursive Set and O-r.e. Set
A is O-recursive if its characteristic function cA is O-computable.
A is O-r.e. if its partial characteristic function χA is O-computable.
Computability Theory, by Y. Fu XIII. Turing Reducibility 15 / 44 O-Recursive Set and O-r.e. Set
Theorem. The following hold. (i) A is O-recursive iff A and A are O-r.e. (ii) The following are equivalent.
I A is O-r.e. O I A = We for some e. O I A = Ee for some e. I A = ∅ or A is the range of a total O-computable function.
I For some O-decidable predicate R(x, y), x ∈ A iff ∃y.R(x, y).
O def O (iii) K = {x | x ∈ Wx } is O-r.e. but not O-recursive.
Computability Theory, by Y. Fu XIII. Turing Reducibility 16 / 44 Computability Relative to Set
Computability relative to a set A means computability relative to its characteristic function cA.
A cA We write φe for φe . We say A-computability rather than cA-computability.
We write f ≤T A to indicate that f is A-computable.
Computability Theory, by Y. Fu XIII. Turing Reducibility 17 / 44 2. Turing Reduction
Computability Theory, by Y. Fu XIII. Turing Reducibility 18 / 44 Turing Reducibility
A set A is Turing reducible to B, or is recursive in B, notation A ≤T B, if cA ≤T B.
The sets A, B are Turing equivalent, notation A ≡T B, if A ≤T B and B ≤T A.
A Computability Theory, by Y. Fu XIII. Turing Reducibility 19 / 44 Turing Completeness An r.e. set C is (Turing) complete if A ≤T C for every r.e. set A. Computability Theory, by Y. Fu XIII. Turing Reducibility 20 / 44 Property of Turing Reducibility Fact. (i) ≤T is reflexive and transitive. (ii) ≡T is an equivalence relation. (iii) If A ≤m B then A ≤T B. (iv) A ≡T A for all A. (v) If A is recursive, then A ≤T B for all B. (vi) If B is recursive and A ≤T B, then A is recursive. (vii) If A is r.e. then A ≤T K. Computability Theory, by Y. Fu XIII. Turing Reducibility 21 / 44 Turing Degree, or Degree of Unsolvability The equivalence class dT (A) = {B | B ≡T A} is called the (Turing) degree of A. Let D be the set of all Turing degrees. D is an upper semi-lattice. Computability Theory, by Y. Fu XIII. Turing Reducibility 22 / 44 Turing Degree The set of Turing degrees is ranged over by a, b, c,.... a ≤ b iff A ≤T B for some A ∈ a and B ∈ b. a < b iff a ≤ b and a 6= b. Computability Theory, by Y. Fu XIII. Turing Reducibility 23 / 44 Turing Degree Theorem. Every pair a, b have a unique least upper bound. Computability Theory, by Y. Fu XIII. Turing Reducibility 24 / 44 Recursive Degree and Recursively Enumerable Degree A degree containing a recursive set is called a recursive degree. A degree containing an r.e. set is called an r.e. degree. Theorem. (i) There is precisely one recursive degree 0, which consists of all the recursive sets and is the unique minimal degree. (ii) Let 00 be the degree of K. Then 0 < 00 and 00 is the maximum of all r.e. degrees. Computability Theory, by Y. Fu XIII. Turing Reducibility 25 / 44 Post’s Question In his 1944 paper, Post raised the following question: ∃a. 0 < a < 00 ? Computability Theory, by Y. Fu XIII. Turing Reducibility 26 / 44 3. Jump Operator Computability Theory, by Y. Fu XIII. Turing Reducibility 27 / 44 Relative Recursive Enumerability A set A is recursively enumerable in B if χA ≤T B. Lemma. A is r.e. in B iff A is r.e. in B. Lemma. A ≤T B iff both A and A are r.e. in B. Lemma. Suppose B is recursively enumerable in C. If C ≤T D, then B is recursively enumerable in D. We say that a is recursively enumerable in b if some A ∈ a is recursively enumerable in some B ∈ b. Computability Theory, by Y. Fu XIII. Turing Reducibility 28 / 44 Jump Operator The jump K A of A, notation A0, is defined by 0 A A = {x | x ∈ Wx }. The n-th jump: A(0) = A, A(n+1) = (A(n))0. Computability Theory, by Y. Fu XIII. Turing Reducibility 29 / 44 Jump Theorem. The following hold: (i) A0 is r.e. in A. 0 0 (ii) A ≤T A 6≤T A. (in fact A, A ≤1 A ) Proof. A A (i) Given x calculate φx (x). If φx (x) ↓ then output 1. (ii) Using the Relative S-m-n Theorem one constructs an injective primitive recursive function s(x) such that y, if x ∈ A(or x ∈/ A); φA (y) = (1) s(x) ↑, otherwise. 0 0 Clearly x ∈ A iff s(x) ∈ A . Hence A, A ≤1 A . 0 Had A ≤T A, one would be able to construct an A-recursive function that is different from any A-recursive function, which is a contradiction. Computability Theory, by Y. Fu XIII. Turing Reducibility 30 / 44 Jump Theorem. The following hold: 0 (iii) A is r.e. in B iff A ≤1 B . 0 0 0 0 (iv) A ≤T B iff A ≤1 B . Consequently A ≡T B iff A ≡1 B . Proof. (iii) Suppose A is r.e. in B. Using the Relative S-m-n Theorem, one gets an injective recursive function s(x) such that B φs(x)(y) ' if x ∈ A then y else ↑ . 0 0 Clearly x ∈ A iff s(x) ∈ B . Hence A ≤1 B . 0 Conversely if d : A ≤1 B then χA(x) can be B-computed by B “if φd(x)(d(x)) ↓ then 1 else ↑”. (iv) This follows from (i,ii,iii) immediately. Computability Theory, by Y. Fu XIII. Turing Reducibility 31 / 44 Beyond R.E. Degree 0 0 The jump of a, notation a , is defined by dT (A ) for some A ∈ a. By definition 00 is the jump of 0. Hence the infinite hierarchy 0 < 00 < 000 < 0000 < . . . < 0(n) < . . . . (n) (n) Notice that 0 = dT (∅) and 0 = dT (∅ ). Computability Theory, by Y. Fu XIII. Turing Reducibility 32 / 44 4. Use Principle Computability Theory, by Y. Fu XIII. Turing Reducibility 33 / 44 String as Subset A finite string σ of 0’s and 1’s can be seen as an initial segment of a characteristic function. We write σ ⊂ A if σ ⊂ cA when both are treated as graphs. Let |σ| denote the length of σ. Let Ax be {y ∈ A | y < x}. Similarly one defines σx. Computability Theory, by Y. Fu XIII. Turing Reducibility 34 / 44 Use Function A We write φe,s (x) = y if I e, x, y < s; A I Ps (x) outputs y in < s steps; I only numbers < s are tested for membership of A. The use function u(A; e, x, s) is “1 + the maximum number tested A for membership of A during the computation of φe,s (x)” if A A φe,s (x) ↓; and u(A; e, x, s) is 0 if φe,s (x) ↑. The use function u(A; e, x) is u(A; e, x, s) for some s such that u(A; e, x, s) ↓. Computability Theory, by Y. Fu XIII. Turing Reducibility 35 / 44 Use Function σ Au φe,s (x) and φe,s (x) are defined accordingly. σ σ φe (x) = y if ∃s.φe,s (x) = y. A σ σ We shall also use notations like We,s , We,s , We . Computability Theory, by Y. Fu XIII. Turing Reducibility 36 / 44 Use Principle Theorem. The following hold: A σ (i) φe (x) = y implies ∃s.∃σ ⊂ A.φe,s (x) = y. σ τ (ii) φe,s (x) = y implies ∀t ≥ s.∀τ ⊇ σ.φe,t (x) = y. σ A (iii) φe (x) = y implies ∀A ⊇ σ.φe (x) = y. The Use Principle implies the following A B (φe,s (x) = y ∧ Au = Bu) ⇒ φe,s (x) = y, where u = u(A; e, x, s). Computability Theory, by Y. Fu XIII. Turing Reducibility 37 / 44 5. Modulus Lemma and Limit Lemma Computability Theory, by Y. Fu XIII. Turing Reducibility 38 / 44 0 Degrees ≤T 0 0 We are mainly interested in degrees ≤T 0 , and particularly in the r.e. degrees. We provide some alternative characterizations of such degrees. Computability Theory, by Y. Fu XIII. Turing Reducibility 39 / 44 Modulus of Convergence 1. A sequence {fs (x)}s∈ω of total functions is recursive if there is a recursive function bf (s, x) such that fs (x) = bf (s, x) for all s, x. 2. The sequence {fs (x)}s∈ω converges pointwise to f (x), notation f = lims fs , if for each x, fs (x) = f (x) for all but finitely many s. 3. A modulus of convergence for the sequence {fs (x)}s∈ω is a function m(x) such that fs (x) = f (x) for all s ≥ m(x). Computability Theory, by Y. Fu XIII. Turing Reducibility 40 / 44 Modulus Lemma. Suppose A is r.e. and f ≤T A. Then there are (1) a recursive sequence {fs }s∈ω such that (2) f = lims fs and (3) a modulus m of {fs }s∈ω that is recursive in A. Proof. A Suppose A is r.e. and f = φe . Let As = Wi,s for some Wi = A. Define a converging family {fs }sω by φAs (x), if φAs (x) ↓, f (x) = e,s e,s e 0, otherwise. Clearly {fs }s∈ω is a recursive sequence. Define m by As z m(x) = µs.∃z ≤ s.(φe,s (x) ↓ ∧ As z = Az). Now m is A-recursive, and by Use Principle is a modulus since As z Az A φe,s (x) = φe,s (x) = φe (x) = f (x) for s ≥ m(x). Computability Theory, by Y. Fu XIII. Turing Reducibility 41 / 44 0 Limit Lemma. f ≤T A iff there is an A-recursive sequence {fs }s∈ω such that f = lims fs . Proof. 0 0 Suppose f ≤T A . Since A is r.e. in A, the A-recursive sequence {fs }s∈ω exists by Relative Modulus Lemma. Suppose f = lims fs for an A-recursive sequence {fs }s∈ω. Define Ax = {s | ∃t.(s ≤ t ∧ ft (x) 6= ft+1(x))}, which is finite. Now m(x) = µs.(s ∈/ Ax ) is Turing equivalent to B = {hs, xi | s ∈ Ax }, 0 which is r.e. in A. Hence m ≡T B ≤T A . 0 Conclude that f ≤T A since f (x) = fm(x)(x). Computability Theory, by Y. Fu XIII. Turing Reducibility 42 / 44 Constructing Degrees below 00 0 0 Corollary. A function f has degree ≤ 0 (meaning f ≤T ∅ ) iff f = lims fs for some recursive sequence {fs }s∈ω. Computability Theory, by Y. Fu XIII. Turing Reducibility 43 / 44 Constructing R.E. Degrees Corollary. A function f has r.e. degree iff f is the limit of a recursive sequence {fs }s∈ω that has a modulus m ≤T f . Proof. If f ≡T A for some r.e. set A, then by Modulus Lemma m ≤T A ≡T f . Suppose f = lims fs with modulus m ≤T f . As in the proof of the Limit Lemma, f ≤T m. Computability Theory, by Y. Fu XIII. Turing Reducibility 44 / 44