Cite

This course has no released version yet: the text at this address may change. Cite a released version when one exists.

/courses/ce-degrees/sacks-splitting
@misc{ce-degrees-sacks-splitting,
  title = {{The Sacks splitting theorem}},
  howpublished = {Lesson 4 of \emph{Post's problem and the priority method}, Computability Theory course notes},
  url = {/courses/ce-degrees/sacks-splitting},
  note = {Unreleased working version}
}

To cite a single statement, use the # link that appears next to its heading.

Lesson 4 of 4

The Sacks splitting theorem

Splitting a c.e. set into two c.e. sets that avoid the cone above a non-computable c.e. set; the length of agreement and Sacks' preservation strategy; consequences for the c.e. degrees.

45 min3 questions
Before this lesson:A low simple set
Post's problem and the priority method · lesson 4 of 4
  1. Simple sets and Post's problem
  2. The Friedberg–Muchnik theorem
  3. A low simple set
  4. The Sacks splitting theorem

The requirements met so far were either diagonalization requirements, which act once, or preservation requirements for a single computation. To ensure that a set AiA_i does not compute a given non-computable set BB, neither suffices: there are infinitely many potential reductions Φe\Phi_e, and for each of them the construction cannot know whether ΦeAi=B\Phi^{A_i}_e = B will hold. Sacks found a strategy that turns the hypothesis ”BB is not computable” into a tool: preserve the agreement between ΦeAi\Phi^{A_i}_e and BB as far as it goes. If the agreement were total, the preserved computations would compute BB. So it is not, and the restraints needed stay finite. This lesson applies the strategy to split a c.e. set into two parts that both avoid the cone above BB.

Theorem 4.1 (Sacks splitting theorem).#

Let AA and BB be c.e. sets, with BB not computable. There are disjoint c.e. sets A0A_0 and A1A_1 with A0∪A1=AA_0 \cup A_1 = A, A0,A1≤TAA_0, A_1 \leq_T A, and B̸≤TA0B \not\leq_T A_0, B̸≤TA1B \not\leq_T A_1.

4.1 Length of agreement

If AA is finite, take A0=AA_0 = A and A1=∅A_1 = \emptyset, which are computable, so that neither computes BB. Assume from now on that AA is infinite, and fix a computable injective enumeration a0,a1,a2,…a_0, a_1, a_2, \dots of AA (Proposition 4.4 of “Computably enumerable sets”) and a c.e. approximation (Bs)(B_s) of BB. We build A0A_0 and A1A_1 by putting each asa_s into one of them at stage s+1s + 1; so Ai,sA_{i,s} is the part of AiA_i built at the end of stage ss, with A0,0=A1,0=∅A_{0,0} = A_{1,0} = \emptyset, and A0∪A1=AA_0 \cup A_1 = A, A0∩A1=∅A_0 \cap A_1 = \emptyset. The requirements are, for every ee and i∈{0,1}i \in \{0, 1\},

Re,i:ΦeAi≠B,\mathcal R_{e,i} : \Phi^{A_i}_e \neq B,

ordered by priority according to the code ⟨e,i⟩\langle e, i \rangle: the smaller the code, the higher the priority.

Definition 4.2.#

For ee, ii and ss:

  1. the length of agreement l(e,i,s)l(e, i, s) is the largest y≤sy \leq s such that ΦeAi,s(x)[s] ⁣ ⁣↓=Bs(x)\Phi^{A_{i,s}}_e(x)[s]\converge = B_s(x) for every x<yx < y;
  2. the restraint r(e,i,s)r(e, i, s) is the largest use use⁡eAi,s(x)\use^{A_{i,s}}_e(x) of a computation ΦeAi,s(x)[s]\Phi^{A_{i,s}}_e(x)[s] that converges, for x≤l(e,i,s)x \leq l(e, i, s); it is 00 if there is none.

The restraint protects the computations below the length of agreement, and the computation at the length of agreement itself, if it converges. At that point a convergent computation disagrees with BsB_s, typically because an element has just entered BB there. Protecting it is what makes the strategy work, as the proof of the main lemma shows.

4.2 The construction

Stage s+1s + 1. If there is a pair ⟨e,i⟩≤s\langle e, i \rangle \leq s with as≤r(e,i,s)a_s \leq r(e, i, s), take the one with the smallest code, and put asa_s into A1−iA_{1-i}. Otherwise, put asa_s into A0A_0.

In words: the new element is put on the side opposite to the most important restraint it would violate. We say that Re,i\mathcal R_{e,i} is injured at stage s+1s + 1 if as≤r(e,i,s)a_s \leq r(e, i, s) and asa_s is put into AiA_i.

The construction is computable, so A0A_0 and A1A_1 are c.e., disjoint, with union AA. Each is computable in AA: to decide whether x∈Aix \in A_i, decide whether x∈Ax \in A; if so, find the ss with as=xa_s = x, and run the construction up to stage s+1s + 1.

4.3 Verification

Lemma 4.3.#

For every ee and ii, writing k=⟨e,i⟩k = \langle e, i \rangle:

  1. Re,i\mathcal R_{e,i} is injured only finitely often;
  2. ΦeAi≠B\Phi^{A_i}_e \neq B;
  3. the restraint r(e,i,s)r(e, i, s) is bounded, and in fact eventually constant.
Proof of Lemma 4.3.

By induction on kk. Suppose the three statements hold for all codes smaller than kk, and let RR bound the restraints of all requirements of higher priority, at all stages.

Item 1. Suppose Re,i\mathcal R_{e,i} is injured at stage s+1s + 1, with s≥ks \geq k (there are finitely many earlier stages). Then as≤r(e,i,s)a_s \leq r(e, i, s) and k≤sk \leq s, so the pair of smallest code at most ss whose restraint is at least asa_s has code at most kk; since asa_s goes into AiA_i, this pair is some ⟨e′,1−i⟩\langle e', 1 - i \rangle, of code smaller than kk. So as≤r(e′,1−i,s)≤Ra_s \leq r(e', 1 - i, s) \leq R. Since the enumeration is injective, this happens for finitely many ss. Let s0s_0 be a stage after the last injury, and after the last enumeration of a number at most RR.

Preservation. For s≥s0s \geq s_0, no number at most r(e,i,s)r(e, i, s) enters AiA_i at stage s+1s + 1. So every computation ΦeAi,s(x)[s]\Phi^{A_{i,s}}_e(x)[s] with x≤l(e,i,s)x \leq l(e, i, s) that converges also converges at stage s+1s + 1, with the same value and use.

Item 2. Suppose, towards a contradiction, that ΦeAi=B\Phi^{A_i}_e = B. Then l(e,i,s)→∞l(e, i, s) \to \infty: for each yy, once AiA_i has settled below the uses of the computations ΦeAi(x)\Phi^{A_i}_e(x) for x<yx < y, and BB has settled below yy, these computations converge with the correct values at all large stages. We show that BB is computable, by the following procedure: to compute B(p)B(p), find a stage s≥s0s \geq s_0 with l(e,i,s)>pl(e, i, s) > p, and output Bs(p)B_s(p).

Suppose the output is wrong for some pp. Since BB is c.e., Bs(p)=0B_s(p) = 0 and pp enters BB after stage ss. Let q≤pq \leq p be the least number that enters BB after stage ss. We claim that for all t≥st \geq s, the computations ΦeAi,t(x)[t]\Phi^{A_{i,t}}_e(x)[t] for x≤qx \leq q are the ones found at stage ss, and l(e,i,t)≥ql(e, i, t) \geq q. This holds at t=st = s. If it holds at tt, then q≤l(e,i,t)q \leq l(e, i, t), so the restraint r(e,i,t)r(e, i, t) covers the uses of these computations, which are preserved at stage t+1t + 1. Their values at x<qx < q equal Bs(x)=Bt+1(x)B_s(x) = B_{t+1}(x), since no x<qx < q enters BB after stage ss, so l(e,i,t+1)≥ql(e, i, t + 1) \geq q. Hence ΦeAi(q)=ΦeAi,s(q)[s]=Bs(q)=0\Phi^{A_i}_e(q) = \Phi^{A_{i,s}}_e(q)[s] = B_s(q) = 0, while q∈Bq \in B: this contradicts ΦeAi=B\Phi^{A_i}_e = B. So the procedure computes BB, contradicting the hypothesis on BB.

Item 3. By item 2, let pp be the least number with ΦeAi(p)≠B(p)\Phi^{A_i}_e(p) \neq B(p), either because ΦeAi(p)\Phi^{A_i}_e(p) diverges or because it converges to another value. For x<px < p, the computation ΦeAi(x)\Phi^{A_i}_e(x) converges to B(x)B(x); once AiA_i has settled below its use and BB has settled below p+1p + 1, the computation found at each large stage is this one, with a fixed use. So l(e,i,s)≥pl(e, i, s) \geq p for all large ss.

We show that l(e,i,s)≤pl(e, i, s) \leq p for all large ss. If ΦeAi(p)\Phi^{A_i}_e(p) converges to a value different from B(p)B(p), then at large stages the computation at pp is the true one and disagrees with Bs(p)=B(p)B_s(p) = B(p). If ΦeAi(p)\Phi^{A_i}_e(p) diverges, suppose l(e,i,s)>pl(e, i, s) > p for some s≥s0s \geq s_0 at which BB has settled below p+1p + 1. Then the computations at x≤px \leq p converge at stage ss; by preservation and since BB no longer changes below p+1p + 1, they converge at every later stage with l(e,i,t)>pl(e, i, t) > p, so ΦeAi(p)\Phi^{A_i}_e(p) converges, a contradiction.

So l(e,i,s)=pl(e, i, s) = p for all large ss. The restraint is then the maximum of the uses of the computations at x<px < p, which are eventually fixed, and of the use of the computation at pp, if it converges. In the first case, the latter is eventually the true computation, with a fixed use. In the second case, a computation at pp converging at a stage s≥s0s \geq s_0 with l(e,i,s)=pl(e, i, s) = p would be preserved forever, so that ΦeAi(p)\Phi^{A_i}_e(p) would converge; hence the computation at pp eventually diverges at every stage. In both cases r(e,i,s)r(e, i, s) is eventually constant.

Proof of Theorem 4.1.

The sets A0A_0 and A1A_1 are c.e., disjoint, with union AA, and computable in AA. By Lemma 4.3, ΦeAi≠B\Phi^{A_i}_e \neq B for every ee and ii, so neither A0A_0 nor A1A_1 computes BB.

The procedure in item 2 is the heart of Sacks’ preservation strategy. The requirement does not try to make ΦeAi\Phi^{A_i}_e differ from BB. It preserves the agreement as far as it goes, and lets the non-computability of BB guarantee that the agreement cannot be total. If it were, the preserved computations would compute BB, since an element entering BB below the length of agreement would create a permanent disagreement.

4.4 Consequences

Corollary 4.4.#
  1. The halting set ∅′\emptyset' is the disjoint union of two c.e. sets, neither of which is computable or Turing complete. This gives a third solution to Post’s problem.
  2. Every non-computable c.e. set AA is the disjoint union of two c.e. sets A0A_0 and A1A_1 with ∅<TAi<TA\emptyset <_T A_i <_T A and A0̸≤TA1A_0 \not\leq_T A_1, A1̸≤TA0A_1 \not\leq_T A_0.
Proof of Corollary 4.4.

We prove item 2 first. Apply Theorem 4.1 with B=AB = A. Then Ai≤TAA_i \leq_T A and A̸≤TAiA \not\leq_T A_i. Since x∈Ax \in A if and only if x∈A0x \in A_0 or x∈A1x \in A_1, we have A≤TA0⊕A1A \leq_T A_0 \oplus A_1. If A0≤TA1A_0 \leq_T A_1, then A≤TA0⊕A1≤TA1A \leq_T A_0 \oplus A_1 \leq_T A_1, a contradiction; so A0̸≤TA1A_0 \not\leq_T A_1, symmetrically A1̸≤TA0A_1 \not\leq_T A_0, and in particular neither AiA_i is computable.

Item 1 is item 2 with A=∅′A = \emptyset'.

Corollary 4.5.#

There is no minimal non-computable c.e. degree: below every non-computable c.e. degree a\abf there is a c.e. degree b\bbf with 0<b<a\obf < \bbf < \abf. Moreover, every non-computable c.e. degree is the join of two incomparable c.e. degrees below it.

Proof of Corollary 4.5.

Let A∈aA \in \abf be c.e., and A0,A1A_0, A_1 as in Corollary 4.4. Then deg⁡T(A0)\deg_T(A_0) is strictly between 0\obf and a\abf. Moreover A0⊕A1≡TAA_0 \oplus A_1 \equiv_T A: one direction was shown above, and A0,A1≤TAA_0, A_1 \leq_T A gives the other.

By contrast, Spector showed that there are minimal degrees, that is, non-zero degrees with only 0\obf below them, but none of them is c.e., by the corollary. The structure of the c.e. degrees is much richer than these results show. Sacks proved in 1964 that the c.e. degrees are dense: between any two c.e. degrees a<b\abf < \bbf there is a third. Lachlan and Yates proved independently in 1966 that there are minimal pairs: non-computable c.e. degrees a\abf and b\bbf whose only common lower bound is 0\obf. Both are proved by the infinite injury method, in which some requirements act infinitely often; in modern presentations the construction is organized along a tree of strategies. We admit these results here; minimal pairs are constructed in Minimal pairs and the preservation of agreement.

4.5 Exercises

Exercise 4.6 ★.

Let BB be a non-computable c.e. set. Show that there is a c.e. set CC that is neither computable nor computes BB.

Solution

Apply Theorem 4.1 to A=∅′A = \emptyset' and BB: ∅′=A0⊔A1\emptyset' = A_0 \sqcup A_1 with B̸≤TAiB \not\leq_T A_i. If both AiA_i were computable, so would be ∅′≤TA0⊕A1\emptyset' \leq_T A_0 \oplus A_1. So one of them, CC, is not computable, and B̸≤TCB \not\leq_T C. In fact both are non-computable: if A0A_0 were computable, then B≤T∅′≤TA0⊕A1≤TA1B \leq_T \emptyset' \leq_T A_0 \oplus A_1 \leq_T A_1.

Exercise 4.7 ★★.

In the construction, replace the restraint by the largest use of the computations at x<l(e,i,s)x < l(e, i, s) only. Identify the step of the proof of Lemma 4.3 that fails.

Solution

Item 2 fails. When the least number qq entering BB after stage ss enters, the length of agreement becomes at most qq, and the computation at qq is no longer protected. A later element below its use may enter AiA_i and destroy it, after which ΦeAi(q)\Phi^{A_i}_e(q) may converge to 1=B(q)1 = B(q), and the agreement may be restored. The claim that ΦeAi(q)=Bs(q)\Phi^{A_i}_e(q) = B_s(q) no longer follows, so the procedure is not shown to compute BB.

4.6 Notes and references

The splitting theorem is due to Sacks (1963), who also introduced the preservation strategy. The density theorem is due to Sacks (1964); minimal pairs of c.e. degrees are due to Lachlan (1966) and Yates (1966); minimal degrees to Spector (1956). Soare’s book of 1987 presents all these results, and the tree method for infinite injury arguments.

  • C. Spector, On degrees of recursive unsolvability, Annals of Mathematics 64 (1956), 581–592.
  • G. E. Sacks, On the degrees less than 0′, Annals of Mathematics 77 (1963), 211–231.
  • G. E. Sacks, The recursively enumerable degrees are dense, Annals of Mathematics 80 (1964), 300–312.
  • A. H. Lachlan, Lower bounds for pairs of recursively enumerable degrees, Proceedings of the London Mathematical Society (3) 16 (1966), 537–569.
  • C. E. M. Yates, A minimal pair of recursively enumerable degrees, Journal of Symbolic Logic 31 (1966), 159–168.
  • R. I. Soare, Recursively Enumerable Sets and Degrees, Springer, 1987.