fbpx
Wikipedia

Turing reduction

In computability theory, a Turing reduction from a decision problem to a decision problem is an oracle machine that decides problem given an oracle for (Rogers 1967, Soare 1987). It can be understood as an algorithm that could be used to solve if it had available to it a subroutine for solving . The concept can be analogously applied to function problems.

If a Turing reduction from to exists, then every algorithm for [a] can be used to produce an algorithm for , by inserting the algorithm for at each place where the oracle machine computing queries the oracle for . However, because the oracle machine may query the oracle a large number of times, the resulting algorithm may require more time asymptotically than either the algorithm for or the oracle machine computing . A Turing reduction in which the oracle machine runs in polynomial time is known as a Cook reduction.

The first formal definition of relative computability, then called relative reducibility, was given by Alan Turing in 1939 in terms of oracle machines. Later in 1943 and 1952 Stephen Kleene defined an equivalent concept in terms of recursive functions. In 1944 Emil Post used the term "Turing reducibility" to refer to the concept.

Definition edit

Given two sets   of natural numbers, we say   is Turing reducible to   and write

 

if and only if there is an oracle machine that computes the characteristic function of A when run with oracle B. In this case, we also say A is B-recursive and B-computable.

If there is an oracle machine that, when run with oracle B, computes a partial function with domain A, then A is said to be B-recursively enumerable and B-computably enumerable.

We say   is Turing equivalent to   and write   if both   and   The equivalence classes of Turing equivalent sets are called Turing degrees. The Turing degree of a set   is written  .

Given a set  , a set   is called Turing hard for   if   for all  . If additionally   then   is called Turing complete for  .

Relation of Turing completeness to computational universality edit

Turing completeness, as just defined above, corresponds only partially to Turing completeness in the sense of computational universality. Specifically, a Turing machine is a universal Turing machine if its halting problem (i.e., the set of inputs for which it eventually halts) is many-one complete for the set   of recursively enumerable sets. Thus, a necessary but insufficient condition for a machine to be computationally universal, is that the machine's halting problem be Turing-complete for  . Insufficient because it may still be the case that, the language accepted by the machine is not itself recursively enumerable.

Example edit

Let   denote the set of input values for which the Turing machine with index e halts. Then the sets   and   are Turing equivalent (here   denotes an effective pairing function). A reduction showing   can be constructed using the fact that  . Given a pair  , a new index   can be constructed using the smn theorem such that the program coded by   ignores its input and merely simulates the computation of the machine with index e on input n. In particular, the machine with index   either halts on every input or halts on no input. Thus   holds for all e and n. Because the function i is computable, this shows  . The reductions presented here are not only Turing reductions but many-one reductions, discussed below.

Properties edit

  • Every set is Turing equivalent to its complement.
  • Every computable set is Turing reducible to every other set. Because any computable set can be computed with no oracle, it can be computed by an oracle machine that ignores the given oracle.
  • The relation   is transitive: if   and   then  . Moreover,   holds for every set A, and thus the relation   is a preorder (it is not a partial order because   and   does not necessarily imply  ).
  • There are pairs of sets   such that A is not Turing reducible to B and B is not Turing reducible to A. Thus   is not a total order.
  • There are infinite decreasing sequences of sets under  . Thus this relation is not well-founded.
  • Every set is Turing reducible to its own Turing jump, but the Turing jump of a set is never Turing reducible to the original set.

The use of a reduction edit

Since every reduction from a set   to a set   has to determine whether a single element is in   in only finitely many steps, it can only make finitely many queries of membership in the set  . When the amount of information about the set   used to compute a single bit of   is discussed, this is made precise by the use function. Formally, the use of a reduction is the function that sends each natural number   to the largest natural number   whose membership in the set   was queried by the reduction while determining the membership of   in  .

Stronger reductions edit

There are two common ways of producing reductions stronger than Turing reducibility. The first way is to limit the number and manner of oracle queries.

  • Set   is many-one reducible to   if there is a total computable function   such that an element   is in   if and only if   is in  . Such a function can be used to generate a Turing reduction (by computing  , querying the oracle, and then interpreting the result).
  • A truth table reduction or a weak truth table reduction must present all of its oracle queries at the same time. In a truth table reduction, the reduction also gives a boolean function (a truth table) that, when given the answers to the queries, will produce the final answer of the reduction. In a weak truth table reduction, the reduction uses the oracle answers as a basis for further computation depending on the given answers (but not using the oracle). Equivalently, a weak truth table reduction is one for which the use of the reduction is bounded by a computable function. For this reason, weak truth table reductions are sometimes called "bounded Turing" reductions.

The second way to produce a stronger reducibility notion is to limit the computational resources that the program implementing the Turing reduction may use. These limits on the computational complexity of the reduction are important when studying subrecursive classes such as P. A set A is polynomial-time reducible to a set   if there is a Turing reduction of   to   that runs in polynomial time. The concept of log-space reduction is similar.

These reductions are stronger in the sense that they provide a finer distinction into equivalence classes, and satisfy more restrictive requirements than Turing reductions. Consequently, such reductions are harder to find. There may be no way to build a many-one reduction from one set to another even when a Turing reduction for the same sets exists.

Weaker reductions edit

According to the Church–Turing thesis, a Turing reduction is the most general form of an effectively calculable reduction. Nevertheless, weaker reductions are also considered. Set   is said to be arithmetical in   if   is definable by a formula of Peano arithmetic with   as a parameter. The set   is hyperarithmetical in   if there is a recursive ordinal   such that   is computable from  , the α-iterated Turing jump of  . The notion of relative constructibility is an important reducibility notion in set theory.

See also edit

Notes edit

  1. ^ It is possible that B is an undecidable problem for which no algorithm exists.

References edit

  • M. Davis, ed., 1965. The Undecidable—Basic Papers on Undecidable Propositions, Unsolvable Problems and Computable Functions, Raven, New York. Reprint, Dover, 2004. ISBN 0-486-43228-9.
  • S. C. Kleene, 1952. Introduction to Metamathematics. Amsterdam: North-Holland.
  • S. C. Kleene and E. L. Post, 1954. "The upper semi-lattice of degrees of recursive unsolvability". Annals of Mathematics v. 2 n. 59, 379–407.
  • Post, E. L. (1944). "Recursively enumerable sets of positive integers and their decision problems" (PDF). Bulletin of the American Mathematical Society. 50 (5): 284–316. doi:10.1090/s0002-9904-1944-08111-1. Retrieved 2015-12-17.
  • A. Turing, 1939. "Systems of logic based on ordinals." Proceedings of the London Mathematical Society, ser. 2 v. 45, pp. 161–228. Reprinted in "The Undecidable", M. Davis ed., 1965.
  • H. Rogers, 1967. Theory of recursive functions and effective computability. McGraw-Hill.
  • R. Soare, 1987. Recursively enumerable sets and degrees, Springer.
  • Davis, Martin (November 2006). "What is...Turing Reducibility?" (PDF). Notices of the American Mathematical Society. 53 (10): 1218–1219. Retrieved 2008-01-16.

External links edit

  • NIST Dictionary of Algorithms and Data Structures: Turing reduction
  • University of Cambridge, Andrew Pitts, Tobias Kohn: Computation Theory
  • Prof. Jean Gallier’s Homepage

turing, reduction, computability, theory, from, decision, problem, displaystyle, decision, problem, displaystyle, oracle, machine, that, decides, problem, displaystyle, given, oracle, displaystyle, rogers, 1967, soare, 1987, understood, algorithm, that, could,. In computability theory a Turing reduction from a decision problem A displaystyle A to a decision problem B displaystyle B is an oracle machine that decides problem A displaystyle A given an oracle for B displaystyle B Rogers 1967 Soare 1987 It can be understood as an algorithm that could be used to solve A displaystyle A if it had available to it a subroutine for solving B displaystyle B The concept can be analogously applied to function problems If a Turing reduction from A displaystyle A to B displaystyle B exists then every algorithm for B displaystyle B a can be used to produce an algorithm for A displaystyle A by inserting the algorithm for B displaystyle B at each place where the oracle machine computing A displaystyle A queries the oracle for B displaystyle B However because the oracle machine may query the oracle a large number of times the resulting algorithm may require more time asymptotically than either the algorithm for B displaystyle B or the oracle machine computing A displaystyle A A Turing reduction in which the oracle machine runs in polynomial time is known as a Cook reduction The first formal definition of relative computability then called relative reducibility was given by Alan Turing in 1939 in terms of oracle machines Later in 1943 and 1952 Stephen Kleene defined an equivalent concept in terms of recursive functions In 1944 Emil Post used the term Turing reducibility to refer to the concept Contents 1 Definition 1 1 Relation of Turing completeness to computational universality 2 Example 3 Properties 4 The use of a reduction 5 Stronger reductions 6 Weaker reductions 7 See also 8 Notes 9 References 10 External linksDefinition editGiven two sets A B N displaystyle A B subseteq mathbb N nbsp of natural numbers we say A displaystyle A nbsp is Turing reducible to B displaystyle B nbsp and write A T B displaystyle A leq T B nbsp if and only if there is an oracle machine that computes the characteristic function of A when run with oracle B In this case we also say A is B recursive and B computable If there is an oracle machine that when run with oracle B computes a partial function with domain A then A is said to be B recursively enumerable and B computably enumerable We say A displaystyle A nbsp is Turing equivalent to B displaystyle B nbsp and write A T B displaystyle A equiv T B nbsp if both A T B displaystyle A leq T B nbsp and B T A displaystyle B leq T A nbsp The equivalence classes of Turing equivalent sets are called Turing degrees The Turing degree of a set X displaystyle X nbsp is written deg X displaystyle textbf deg X nbsp Given a set X P N displaystyle mathcal X subseteq mathcal P mathbb N nbsp a set A N displaystyle A subseteq mathbb N nbsp is called Turing hard for X displaystyle mathcal X nbsp if X T A displaystyle X leq T A nbsp for all X X displaystyle X in mathcal X nbsp If additionally A X displaystyle A in mathcal X nbsp then A displaystyle A nbsp is called Turing complete for X displaystyle mathcal X nbsp Relation of Turing completeness to computational universality edit Turing completeness as just defined above corresponds only partially to Turing completeness in the sense of computational universality Specifically a Turing machine is a universal Turing machine if its halting problem i e the set of inputs for which it eventually halts is many one complete for the set X displaystyle mathcal X nbsp of recursively enumerable sets Thus a necessary but insufficient condition for a machine to be computationally universal is that the machine s halting problem be Turing complete for X displaystyle mathcal X nbsp Insufficient because it may still be the case that the language accepted by the machine is not itself recursively enumerable Example editLet W e displaystyle W e nbsp denote the set of input values for which the Turing machine with index e halts Then the sets A e e W e displaystyle A e mid e in W e nbsp and B e n n W e displaystyle B e n mid n in W e nbsp are Turing equivalent here displaystyle nbsp denotes an effective pairing function A reduction showing A T B displaystyle A leq T B nbsp can be constructed using the fact that e A e e B displaystyle e in A Leftrightarrow e e in B nbsp Given a pair e n displaystyle e n nbsp a new index i e n displaystyle i e n nbsp can be constructed using the smn theorem such that the program coded by i e n displaystyle i e n nbsp ignores its input and merely simulates the computation of the machine with index e on input n In particular the machine with index i e n displaystyle i e n nbsp either halts on every input or halts on no input Thus i e n A e n B displaystyle i e n in A Leftrightarrow e n in B nbsp holds for all e and n Because the function i is computable this shows B T A displaystyle B leq T A nbsp The reductions presented here are not only Turing reductions but many one reductions discussed below Properties editEvery set is Turing equivalent to its complement Every computable set is Turing reducible to every other set Because any computable set can be computed with no oracle it can be computed by an oracle machine that ignores the given oracle The relation T displaystyle leq T nbsp is transitive if A T B displaystyle A leq T B nbsp and B T C displaystyle B leq T C nbsp then A T C displaystyle A leq T C nbsp Moreover A T A displaystyle A leq T A nbsp holds for every set A and thus the relation T displaystyle leq T nbsp is a preorder it is not a partial order because A T B displaystyle A leq T B nbsp and B T A displaystyle B leq T A nbsp does not necessarily imply A B displaystyle A B nbsp There are pairs of sets A B displaystyle A B nbsp such that A is not Turing reducible to B and B is not Turing reducible to A Thus T displaystyle leq T nbsp is not a total order There are infinite decreasing sequences of sets under T displaystyle leq T nbsp Thus this relation is not well founded Every set is Turing reducible to its own Turing jump but the Turing jump of a set is never Turing reducible to the original set The use of a reduction editSince every reduction from a set A displaystyle A nbsp to a set B displaystyle B nbsp has to determine whether a single element is in A displaystyle A nbsp in only finitely many steps it can only make finitely many queries of membership in the set B displaystyle B nbsp When the amount of information about the set B displaystyle B nbsp used to compute a single bit of A displaystyle A nbsp is discussed this is made precise by the use function Formally the use of a reduction is the function that sends each natural number n displaystyle n nbsp to the largest natural number m displaystyle m nbsp whose membership in the set B displaystyle B nbsp was queried by the reduction while determining the membership of n displaystyle n nbsp in A displaystyle A nbsp Stronger reductions editThere are two common ways of producing reductions stronger than Turing reducibility The first way is to limit the number and manner of oracle queries Set A displaystyle A nbsp is many one reducible to B displaystyle B nbsp if there is a total computable function f displaystyle f nbsp such that an element n displaystyle n nbsp is in A displaystyle A nbsp if and only if f n displaystyle f n nbsp is in B displaystyle B nbsp Such a function can be used to generate a Turing reduction by computing f n displaystyle f n nbsp querying the oracle and then interpreting the result A truth table reduction or a weak truth table reduction must present all of its oracle queries at the same time In a truth table reduction the reduction also gives a boolean function a truth table that when given the answers to the queries will produce the final answer of the reduction In a weak truth table reduction the reduction uses the oracle answers as a basis for further computation depending on the given answers but not using the oracle Equivalently a weak truth table reduction is one for which the use of the reduction is bounded by a computable function For this reason weak truth table reductions are sometimes called bounded Turing reductions The second way to produce a stronger reducibility notion is to limit the computational resources that the program implementing the Turing reduction may use These limits on the computational complexity of the reduction are important when studying subrecursive classes such as P A set A is polynomial time reducible to a set B displaystyle B nbsp if there is a Turing reduction of A displaystyle A nbsp to B displaystyle B nbsp that runs in polynomial time The concept of log space reduction is similar These reductions are stronger in the sense that they provide a finer distinction into equivalence classes and satisfy more restrictive requirements than Turing reductions Consequently such reductions are harder to find There may be no way to build a many one reduction from one set to another even when a Turing reduction for the same sets exists Weaker reductions editAccording to the Church Turing thesis a Turing reduction is the most general form of an effectively calculable reduction Nevertheless weaker reductions are also considered Set A displaystyle A nbsp is said to be arithmetical in B displaystyle B nbsp if A displaystyle A nbsp is definable by a formula of Peano arithmetic with B displaystyle B nbsp as a parameter The set A displaystyle A nbsp is hyperarithmetical in B displaystyle B nbsp if there is a recursive ordinal a displaystyle alpha nbsp such that A displaystyle A nbsp is computable from B a displaystyle B alpha nbsp the a iterated Turing jump of B displaystyle B nbsp The notion of relative constructibility is an important reducibility notion in set theory See also editKarp reductionNotes edit It is possible that B is an undecidable problem for which no algorithm exists References editM Davis ed 1965 The Undecidable Basic Papers on Undecidable Propositions Unsolvable Problems and Computable Functions Raven New York Reprint Dover 2004 ISBN 0 486 43228 9 S C Kleene 1952 Introduction to Metamathematics Amsterdam North Holland S C Kleene and E L Post 1954 The upper semi lattice of degrees of recursive unsolvability Annals of Mathematics v 2 n 59 379 407 Post E L 1944 Recursively enumerable sets of positive integers and their decision problems PDF Bulletin of the American Mathematical Society 50 5 284 316 doi 10 1090 s0002 9904 1944 08111 1 Retrieved 2015 12 17 A Turing 1939 Systems of logic based on ordinals Proceedings of the London Mathematical Society ser 2 v 45 pp 161 228 Reprinted in The Undecidable M Davis ed 1965 H Rogers 1967 Theory of recursive functions and effective computability McGraw Hill R Soare 1987 Recursively enumerable sets and degrees Springer Davis Martin November 2006 What is Turing Reducibility PDF Notices of the American Mathematical Society 53 10 1218 1219 Retrieved 2008 01 16 External links editNIST Dictionary of Algorithms and Data Structures Turing reduction University of Cambridge Andrew Pitts Tobias Kohn Computation Theory Prof Jean Gallier s Homepage Retrieved from https en wikipedia org w index php title Turing reduction amp oldid 1216858520, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.