A Techniques Oriented Survey of Bounded Queries (original) (raw)

1999, Models and Computability

We use standard notation from recursion theory [22, 25]. We define classes of functions that can be computed with a bound on the number of queries to an oracle. Definition 2.1 [2] FQ(n, A) is the collection of all total functions f such that f is recursive in A via an oracle Turing machine that makes at most n sequential (i.e., adaptive) queries to A. FQ || (n, A) is the collection of all total functions f such that f is recursive in A via an oracle Turing machine that makes at most n parallel (i.e., nonadaptive) queries to A (as in a weak truth-table reduction). FQ X (n, A) and FQ X || (n, A) are similar except that we also allow unlimited queries to X. Correspondingly, we define classes of sets that can be decided with a bound on the number of queries. Definition 2.2 • B ∈ Q(n, A) if χ B ∈ FQ(n, A). • B ∈ Q || (n, A) if χ B ∈ FQ || (n, A). • B ∈ Q X (n, A) if χ B ∈ FQ X (n, A). • B ∈ Q X || (n, A) if χ B ∈ FQ X || (n, A). If the oracle is a function g rather than a set A, complexity classes FQ(n, g), FQ || (n, g), FQ X (n, g), FQ X || (n, g), Q(n, g), Q || (n, g), Q X (n, g), and Q X || (n, g) are defined similarly to FQ(n, A) etc. For a class of sets C, we define FQ(n, C) = A∈C FQ(n, A), and we define FQ || (n, C) etc. similarly. Note that if (say) f ∈ FQ(3, A) then it might be that while trying to compute (say) f (10), and 3 INCORRECT answers are given, the computation might diverge. We now define the class of functions for which this does not happen. Definition 2.3 [2] FQC(n, A) is the collection of all total functions f such that f is recursive in A via an oracle Turing machine M () that has the following property: for all x, for all X, M X (x) makes at most n sequential queries to X and M X (x) ↓. Note 2.4 The classes FQC || (n, A), QC(n, A), and QC || (n, A) can easily be defined. The following notion has important connections to bounded queries which will be made explicit in Theorem 2.6. Definition 2.5 Let n ≥ 1. A function f is n-enumerable (denoted f ∈ EN(n)) if there exists a recursive function g such that, for all x, |W g(x) | ≤ n and f (x) ∈ W g(x). Let n ≥ 1. A function f is strongly n-enumerable (denoted f ∈ SEN(n)) if there exists a recursive function g such that, for all x, |D g(x) | ≤ n and f (x) ∈ D g(x). (This concept first appeared in a recursiontheoretic framework in [1]. The name "enumerable" was coined in [6].) Theorem 2.6 [2] If f is any function then (1) (∃X)[f ∈ FQ(n, X)] ⇐⇒ f ∈ EN(2 n); and (2) (∃X)[f ∈ FQC(n, X)] ⇐⇒ f ∈ SEN(2 n). The following definition introduceds two functions which have been very useful in the study of bounded queries. Definition 2.7 [2] Let n ≥ 1.