Bounded Queries in Recursion Theory

by William I. Gasarch and Georgia A. Martin

Progress in Computer Science and Applied Logic: Vol. 16
Birkhäuser Boston c/o Springer-Verlag New York, 1999, 353 pages
ISBN 0-8176-3966-7


In recursion theory one considers functions which can be computed by an algorithm. Computational complexity theory is dedicated to the study of the difficulty of computations based on the notion of a measure of computational complexity in terms of the amount of some resources a program uses in a specific computation. An important measure of the complexity of a computable function is the time needed to compute it. Other resources, such as space, have also been considered.

The object of the book is to classify functions which are not calculable from the point of view of their difficulty, in a quantitative way. For this, a new notion of complexity that is quantitative is introduced such that it expresses the level of difficulty of a function (such as the Turing degree). This work is a reflection of the contribution of the authors to the foundation and the development of a new direction of research in computational complexity theory.

An oracle Turing machine is defined as a Turing machine together with an extra tape, an extra head to be used for reading that tape, and a mechanism to move the extra head and to overwrite characters on the extra tape. This notion is considered as a model of computation which extends the usual model of Turing machine to the power of asking questions - called queries - about membership in some fixed set X of natural numbers – called an oracle – and getting back correct answers.

The extra tape is used to register queries made by the machine in the course of computation, and to replace the queries by their answers. For a set X, MX denotes an oracle Turing machine together with oracle X. On input x, MX(x) is computed by running the oracle Turing machine using queries. A query to X is a question of the form "y Î X ?". Whenever a number y is written on the extra tape and the QUERY state is entered, y is erased and the value of X(y) - the query answer - fills its place.

Let ¦ be a function which can be computed on an oracle Turing machine. Then the basic notion of complexity introduced by the authors is the number of queries to X required to compute ¦. The aim of the book is to classify different functions in terms of this new notion of complexity and to compare some classes of functions.

Two kinds of theorems are presented in this work. Those expressed by "¦ can be computed with n queries to X but not with n – 1". Other theorems are expressed by "there are functions in class F that are not in class G" and are meant to find out when more queries can be used to compute more functions.

The book is divided into four Parts having ten Chapters. A list of references and an index to notions and symbols are also included.

Part A: Getting Your Feet Wet

Chapter 1: Basic Concepts

Chapter 2: Bounded Queries and the Halting Set

Chapter 3: Definitions and Questions

Part B: The Complexity of Functions

Chapter 4: The Complexity of 

Chapter 5:and Other Functions

Part C: The Complexity of Sets

Chapter 6: The Complexity of  and 

Chapter 7: Q versus QC

Chapter 8: Separating and Collapsing Classes

Part D: Miscellaneous

Chapter 9: Nondeterministic Complexity

Chapter 10: The Literature on Bounded Queries

In Part A basic notions and results from recursion theory and bounded queries are introduced together with some notations used in the book.

In Part B the functions are classified in terms of the number of queries needed to compute them. The query and enumeration complexities of some functions are investigated: in Chapter 4 the complexity of  for various n and A is discussed; in Chapter 5 one proves that if  is n-enumerable then A is recursive using a Ramsey-type theorem for trees; a strong class separation is also presented.

In Part C certain kinds of sets are classified from the point of view of complexity using new notions and latest techniques developed for this purpose.

In Part D other important areas of bounded query research are presented: query complexity of functions computed on non-deterministic Turing machines (Chapter 9) and an annotated bibliography of papers on the topic of bounded-query classes in recursion theory (Chapter 10).

The presentation of the material is very accessible because it is based on intuitive description and discussion before mathematical expression. The book is useful to all the categories of readers interested in computational complexity including graduate students or advanced undergraduate students in mathematics or computer science.

Dr. Mircea Sularia