Content deleted Content added
No edit summary |
Link suggestions feature: 1 link added. |
||
(32 intermediate revisions by 25 users not shown) | |||
Line 1:
{{other uses|Reduction (disambiguation)}}
In [[computability theory]], many '''reducibility relations''' (also called '''reductions''', '''reducibilities''', and '''notions of reducibility''') are studied. They are motivated by the question: given sets
The study of reducibility notions is motivated by the study of [[decision problems]]. For many notions of reducibility, if any [[computable set|noncomputable]] set is reducible to a set <math>A</math> then <math>A</math> must also be noncomputable. This gives a powerful technique for proving that many sets are noncomputable.
== Reducibility relations==
A '''reducibility relation''' is a [[binary relation]] on sets of natural numbers that is
* [[Reflexive relation|Reflexive]]: Every set is reducible to itself.
* [[transitive relation|Transitive]]: If a set
▲Mids sinaly recont prudenti gets afforian inger iberious. The notions studied in computability theory have the informal property that ''A'' is reducible to ''B'' if and only if any (possibly noneffective) decision procedure for ''B'' can be effectively converted to a decision procedure for ''A''.
=== Degrees of a reducibility relation ===
Every reducibility relation (in fact, every preorder) induces an equivalence relation on the powerset of the natural numbers in which two sets are equivalent if and only if each one is reducible to the other. In computability theory, these equivalence classes are called the '''degrees''' of the reducibility relation. For example, the Turing degrees are the equivalence classes of sets of naturals induced by Turing reducibility.
The degrees of any reducibility relation are [[partial order|partially ordered]] by the relation in the following manner. Let <math>\leq</math> be a reducibility relation and let <math>C</math> and <math>D</math> be two of its degrees. Then <math>C\leq D</math> if and only if there is a set <math>A</math> in <math>C</math> and a set <math>B</math> in <math>D</math> such that <math>A\leq B</math>. This is equivalent to the property that for every set <math>A</math> in <math>C</math> and every set <math>B</math> in <math>D</math>, <math>A\leq B</math>, because any two sets in ''C'' are equivalent and any two sets in <math>D</math> are equivalent. It is common, as shown here, to use boldface notation to denote degrees.
== Turing reducibility ==
{{main|Turing reduction}}
The most fundamental reducibility notion is [[Turing reducibility]]. A set <math>A</math> of natural numbers is '''''Turing reducible''''' to a set <math>B</math> if and only if there is an [[oracle Turing machine]] that, when run with <math>B</math> as its oracle set, will compute the [[indicator function]] (characteristic function) of <math>A</math>. Equivalently, <math>A</math> is Turing reducible to <math>B</math> if and only if there is an algorithm for computing the indicator function for <math>A</math> provided that the algorithm is provided with a means to correctly answer questions of the form "Is <math>n</math> in <math>B</math>?".
Turing reducibility serves as a dividing line for other reducibility notions because, according to the [[Church-Turing thesis]], it is the most general reducibility relation that is effective. Reducibility relations that imply Turing reducibility have come to be known as '''strong reducibilities''', while those that are implied by Turing reducibility are '''weak reducibilities.''' Equivalently, a strong reducibility relation is one whose degrees form a finer equivalence relation than the Turing degrees, while a weak reducibility relation is one whose degrees form a coarser equivalence relation than Turing equivalence.
== Reductions stronger than Turing reducibility ==
The strong reducibilities include
*[[many-one reduction|One-one reducibility]]:
*[[many-one reduction|Many-one reducibility]]:
*[[Truth table reduction|Truth-table reducible]]:
*[[Truth table
*[[Enumeration reducibility]]: Similar to positive reducibility, relating to the effective procedure of [[enumerability]] from <math>A</math> to <math>B</math>''.''
*Disjunctive reducible: Similar to positive reducible with the additional constraint that only or's are permitted.
*Conjunctive reducibility: Similar to positive reducibility with the additional constraint that only and's are permitted.
*Linear reducibility: Similar to positive reducibility but with the constraint that all atoms of the form
Many of these were introduced by Post (1944). Post was searching for a non-[[Computable set|computable]], [[computably enumerable]] set which the [[halting problem]] could not be Turing reduced to. As he could not construct such a set in 1944, he instead worked on the analogous problems for the various reducibilities that he introduced. These reducibilities have since been the subject of much research, and many relationships between them are known.
=== Bounded reducibilities ===
A '''bounded''' form of each of the above strong reducibilities can be defined. The most famous of these is bounded truth-table reduction, but there are also bounded Turing, bounded weak truth-table, and others. These first three are the most common ones and they are based on the number of queries. For example, a set <math>A</math> is bounded truth-table reducible to <math>B</math> if and only if the Turing machine <math>M</math> computing <math>A</math> relative to <math>B</math> computes a list of up to <math>n</math> numbers, queries <math>B</math> on these numbers and then terminates for all possible oracle answers; the value <math>n</math> is a constant independent of <math>x</math>. The difference between bounded weak truth-table and bounded Turing reduction is that in the first case, the up to <math>n</math> queries have to be made at the same time while in the second case, the queries can be made one after the other. For that reason, there are cases where <math>A</math> is bounded Turing reducible to <math>B</math> but not weak truth-table reducible to <math>B</math>.
=== Strong reductions in computational complexity ===
{{main|Reduction (complexity)}}
The strong reductions listed above restrict the manner in which oracle information can be accessed by a decision procedure but do not otherwise limit the computational resources available. Thus if a set <math>A</math> is [[computable set|decidable]] then <math>A</math> is reducible to any set <math>B</math> under any of the strong reducibility relations listed above, even if <math>A</math> is not polynomial-time or exponential-time decidable. This is acceptable in the study of computability theory, which is interested in theoretical computability, but it is not reasonable for [[computational complexity theory]], which studies which sets can be decided under certain asymptotical resource bounds.
The most common reducibility in computational complexity theory is [[Polynomial-time reduction|polynomial-time reducibility]]; a set ''A'' is polynomial-time reducible to a set
== Reductions weaker than Turing reducibility ==
Although Turing reducibility is the most general reducibility that is effective, weaker reducibility relations are commonly studied. These reducibilities are related to the relative definability of sets over arithmetic or set theory. They include:
* [[Arithmetical reducibility]]: A set <math>A</math> is arithmetical in a set <math>B</math> if <math>A</math> is definable over the standard model of [[Peano arithmetic]] with an extra predicate for <math>B</math>. Equivalently, according to [[Post's theorem]], ''A'' is arithmetical in <math>B</math> if and only if <math>A</math> is Turing reducible to <math>B^{(n)}</math>, the <math>n</math>th [[Turing jump]] of <math>B</math>, for some natural number <math>n</math>. The [[arithmetical hierarchy]] gives a finer classification of arithmetical reducibility.
* [[Hyperarithmetical reducibility]]: A set
*[[Constructible universe#Relative constructibility|Relative constructibility]]: A set
▲* [[Hyperarithmetical reducibility]]: A set ''A'' is hyperarithmetical in a set ''B'' if ''A'' is <math>\Delta^1_1</math> definable (see [[analytical hierarchy]]) over the standard model of Peano arithmetic with a predicate for ''B''.
▲*[[Constructible universe#Relative constructibility|Relative constructibility]]: A set ''A'' is relatively constructible from a set ''B'' if ''A'' is in ''L''(''B''), the smallest transitive model of [[ZFC set theory]] containing ''B'' and all the ordinals.
== References ==
{{refbegin}}
* P. Odifreddi, 1989. ''Classical Recursion Theory'', North-Holland. {{isbn|0-444-87295-7}}
* P. Odifreddi, 1999. ''Classical Recursion Theory, Volume II'', Elsevier. {{isbn|0-444-50205-X}}▼
▲Puppene cold laborigin ness rewrap atest achus. "[http://www.cs.umb.edu/~fejer/articles/History_of_Degrees.pdf Degrees of Unsolvability]." Unpublished preprint.
*E. Post, 1944, "Recursively enumerable sets of positive integers and their decision problems", ''Bulletin of the American Mathematical Society'', volume 50, pages 284–316.▼
* G. Sacks, 1990. ''
{{refend}}
== External links ==
▲''Classical Recursion Theory, Volume II'', Elsevier.
▲Post, 1944, "Recursively enumerable sets of positive integers and their decision problems", ''Bulletin of the American Mathematical Society'', volume 50, pages 284–316.
▲Betros subsc strati bated irreggio protector skicio provers ist. ''The Theory of Recursive Functions and Effective Computability'', second edition 1987, MIT Press.
*[https://plato.stanford.edu/entries/recursive-functions/ Stanford Encyclopedia of Philosophy: Recursive Functions]
[[Category:Reduction (complexity)| ]]
|