Cite

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

/courses/k-trivials/cost-functions
@misc{k-trivials-cost-functions,
  title = {{Cost functions and Solovay's construction}},
  howpublished = {Lesson 2 of \emph{K-trivial sets}, Computability Theory course notes},
  url = {/courses/k-trivials/cost-functions},
  note = {Unreleased working version}
}

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

Lesson 2 of 3

Cost functions and Solovay's construction

The standard cost function; a set with a computable approximation obeying it is K-trivial; Solovay's construction of a simple K-trivial set.

35 min4 questions
Before this lesson:K-trivial sets · The KC theorem and the coding theorem (Kolmogorov complexity) · Simple sets and Post's problem (Post's problem and the priority method)
K-trivial sets · lesson 2 of 3
  1. K-trivial sets
  2. Cost functions and Solovay's construction
  3. Lowness for randomness

A K-trivial set is described by a prefix-free machine that, for each nn, outputs A ⁣↾nA \uh n on an input of length about K(n)K(n). If AA is given by a computable approximation, such a machine can be built with the KC theorem: whenever a shorter description of nn appears, or the approximation of A ⁣↾nA \uh n changes, request a new description of the current A ⁣↾nA \uh n. The descriptions requested for prefixes that later change are wasted. The cost function measures this waste, and a set whose approximation wastes a finite total weight is K-trivial. Solovay used this idea to build a non-computable K-trivial set.

2.1 The standard cost function

Let Ks(n)K_s(n) be the length of the shortest τ\tau with U(τ)[s] ⁣ ⁣↓=nU(\tau)[s]\converge = n, and Ks(n)=∞K_s(n) = \infty if there is none, with the convention 2−∞=02^{-\infty} = 0. Then Ks(n)K_s(n) is computable in (s,n)(s, n), non-increasing in ss, with limit K(n)K(n).

Definition 2.1.#

The standard cost function is

cK(x,s)=∑x<n≤s2−Ks(n).c_K(x, s) = \sum_{x < n \leq s} 2^{-K_s(n)}.

Let (As)(A_s) be a computable approximation of a Δ20\Delta^0_2 set AA (Definition 4.1 of “Limit computability”). For each ss with As+1≠AsA_{s+1} \neq A_s, let xsx_s be the least xx with As+1(x)≠As(x)A_{s+1}(x) \neq A_s(x). The approximation obeys cKc_K if

∑s : As+1≠AscK(xs,s+1)<∞.\sum_{s \,:\, A_{s+1} \neq A_s} c_K(x_s, s+1) < \infty.

The cost cK(xs,s+1)c_K(x_s, s+1) is the weight of the current descriptions of the numbers nn whose prefixes A ⁣↾nA \uh n have just changed. It has two monotonicity properties used below: cK(x,s)c_K(x, s) is non-decreasing in ss, since terms are added and KsK_s decreases, and non-increasing in xx. Moreover cK(x,s)≤∑n>x2−K(n)c_K(x, s) \leq \sum_{n > x} 2^{-K(n)}, since Ks≥KK_s \geq K; this tail tends to 00 as xx tends to infinity, by the Kraft inequality for KK.

2.2 Obeying the cost function implies K-triviality

Theorem 2.2.#

If a set AA has a computable approximation that obeys cKc_K, then AA is K-trivial.

Proof of Theorem 2.2.

Let (As)(A_s) be such an approximation, SS the total cost, and d≥2d \geq 2 such that 21−d+2−dS≤12^{1-d} + 2^{-d} S \leq 1. We enumerate a request set RR. At stage s≥1s \geq 1, for each n≤sn \leq s with Ks(n)<∞K_s(n) < \infty such that

As ⁣↾n≠As−1 ⁣↾norKs(n)<Ks−1(n),A_s \uh n \neq A_{s-1} \uh n \quad \text{or} \quad K_s(n) < K_{s-1}(n),

enumerate the request (As ⁣↾n,Ks(n)+d)(A_s \uh n, K_s(n) + d); for n=sn = s, which was not considered before, the second condition is replaced by Ks(n)<∞K_s(n) < \infty. RR is c.e.

Weight. Split the requests into two kinds. A request at stage ss for nn with As ⁣↾n=As−1 ⁣↾nA_s \uh n = A_{s-1} \uh n is caused by a new value of Ks(n)K_s(n). The values Ks(n)K_s(n), for fixed nn, are pairwise distinct at these stages and at least K(n)K(n), so these requests weigh at most ∑n∑k≥K(n)2−k−d=21−d∑n2−K(n)≤21−d\sum_n \sum_{k \geq K(n)} 2^{-k-d} = 2^{1-d} \sum_n 2^{-K(n)} \leq 2^{1-d}. A request at stage ss for nn with As ⁣↾n≠As−1 ⁣↾nA_s \uh n \neq A_{s-1} \uh n has xs−1<n≤sx_{s-1} < n \leq s; the requests of this kind at stage ss weigh at most 2−dcK(xs−1,s)2^{-d} c_K(x_{s-1}, s), and in total at most 2−dS2^{-d} S. So RR is a bounded request set.

Descriptions. Fix nn, and let s≥ns \geq n be the last stage with s=ns = n, or As ⁣↾n≠As−1 ⁣↾nA_s \uh n \neq A_{s-1} \uh n, or Ks(n)<Ks−1(n)K_s(n) < K_{s-1}(n); it exists since A ⁣↾nA \uh n and Ks(n)K_s(n) change finitely often. At this stage, As ⁣↾n=A ⁣↾nA_s \uh n = A \uh n and Ks(n)=K(n)<∞K_s(n) = K(n) < \infty, since neither changes after ss. Moreover s≥1s \geq 1, since K0(n)=∞K_0(n) = \infty: no computation halts at stage 00. So the request (A ⁣↾n,K(n)+d)(A \uh n, K(n) + d) is enumerated at stage ss. By the KC theorem (KC theorem; Levin, Schnorr, Chaitin), K(A ⁣↾n)≤K(n)+d+O(1)K(A \uh n) \leq K(n) + d + O(1).

A request is enumerated for the current prefix whenever the information about nn or about A ⁣↾nA \uh n improves. The first kind of request costs at most what UU itself spends on describing numbers. The second kind is the price of changes of AA, which is what the cost function bounds.

2.3 Solovay’s theorem

To build a non-computable K-trivial set, it suffices to make a c.e. set non-computable while keeping the total cost of its enumeration finite. Simplicity (Definition 1.2 of “Simple sets and Post's problem”) is a convenient way to obtain non-computability: a simple set AA is not computable, since its complement is infinite and meets no infinite c.e. set, so it is not c.e.

Theorem 2.3 (Solovay).#

There is a simple K-trivial set. In particular, there is a non-computable c.e. K-trivial set.

Proof of Theorem 2.3.

We enumerate AA in stages, A0=∅A_0 = \emptyset. At stage s+1s + 1, for each e≤se \leq s such that no element has yet been enumerated for ee, if there is x∈We,sx \in W_{e,s} with

x>2eandcK(x,s+1)<2−e,x > 2e \quad \text{and} \quad c_K(x, s+1) < 2^{-e},

enumerate the least such xx into AA and declare that ee has acted. Let As+1A_{s+1} be the result. The approximation (As)(A_s) is computable, and A=⋃sAsA = \bigcup_s A_s is c.e.

The cost is finite. If As+1≠AsA_{s+1} \neq A_s, then xsx_s is the least element enumerated at stage s+1s+1, enumerated for some ee that acts at this stage, and cK(xs,s+1)<2−ec_K(x_s, s+1) < 2^{-e}. Each ee acts at most once, so the total cost is less than ∑e2−e=2\sum_e 2^{-e} = 2. By Theorem 2.2, AA is K-trivial.

The complement is infinite. Each ee contributes at most one element, larger than 2e2e. So the elements of AA smaller than 2k2k are contributed by some e<ke < k, and there are at most kk of them: at least kk of the numbers below 2k2k are outside AA.

AA meets every infinite c.e. set. Let WeW_e be infinite. Choose x0x_0 with ∑n>x02−K(n)<2−e\sum_{n > x_0} 2^{-K(n)} < 2^{-e}; then cK(x,s)<2−ec_K(x, s) < 2^{-e} for all x≥x0x \geq x_0 and all ss. Let x∈Wex \in W_e with x>max⁡(x0,2e)x > \max(x_0, 2e), and s≥es \geq e with x∈We,sx \in W_{e,s}. If ee has not acted before stage s+1s+1, it acts at stage s+1s+1, since xx qualifies. In both cases some element of WeW_e has been enumerated into AA.

The construction is a priority-free version of Post’s construction of a simple set (Post), with one extra condition: an element may enter AA only if it is cheap. The tail estimate guarantees that cheap elements are available in every infinite c.e. set. The construction has no injury: requirements do not interact.

Nies proved the converse of Theorem 2.2: every K-trivial set has a computable approximation that obeys cKc_K. The proof is part of the “golden run” analysis mentioned in the last lesson, and is admitted here (Nies, Computability and Randomness, Chapter 5). Cost functions are now a general tool: many classes of Δ20\Delta^0_2 sets are characterized by the cost functions their approximations obey.

2.4 Exercises

Exercise 2.4 ★.

Show that there is a K-trivial set that is neither c.e. nor co-c.e.

Solution

Let AA be a non-computable c.e. K-trivial set. By Proposition 1.2 and Proposition 1.5, B=A⊕A‾B = A \oplus \overline{A} is K-trivial. If BB were c.e., then A‾={n:2n+1∈B}\overline{A} = \{ n : 2n + 1 \in B \} would be c.e., and AA would be computable. If BB were co-c.e., then A={n:2n∈B}A = \{ n : 2n \in B \} would be co-c.e., hence computable since it is c.e.

Exercise 2.5 ★★.

Let (As)(A_s) be a computable approximation obeying cKc_K, and ff a computable strictly increasing function. Show that (Af(s))s(A_{f(s)})_s obeys cKc_K.

Solution

Let Bs=Af(s)B_s = A_{f(s)}. If Bs+1≠BsB_{s+1} \neq B_s, then AA changes at some stages tt with f(s)≤t<f(s+1)f(s) \leq t < f(s+1), and the least position ysy_s at which BsB_s and Bs+1B_{s+1} differ is at least the least xtx_t over these stages tt: a position where Af(s)A_{f(s)} and Af(s+1)A_{f(s+1)} differ has changed at some intermediate stage. Let tt be such a stage with xt≤ysx_t \leq y_s. Since cKc_K is non-increasing in xx and non-decreasing in its second argument, and s+1≤f(s)+1≤t+1s + 1 \leq f(s) + 1 \leq t + 1,

cK(ys,s+1)≤cK(xt,s+1)≤cK(xt,t+1).c_K(y_s, s+1) \leq c_K(x_t, s + 1) \leq c_K(x_t, t+1).

Distinct ss give distinct tt, since the intervals [f(s),f(s+1))[f(s), f(s+1)) are disjoint. So the total cost of (Bs)(B_s) is at most that of (As)(A_s).

2.5 Notes and references

Solovay’s construction appears in his unpublished manuscript (1975). The cost function formulation is due to Nies, who developed the general theory of cost functions; Downey, Hirschfeldt, Nies and Stephan (2003) gave a published account of the construction.

  • R. M. Solovay, Draft of a paper (or series of papers) on Chaitin’s work, unpublished manuscript, IBM Thomas J. Watson Research Center, 1975.
  • A. Nies, Lowness properties and randomness, Advances in Mathematics 197 (2005), 274–305.
  • A. Nies, Computability and Randomness, Oxford University Press, 2009, Chapter 5.