In
computational complexity theory
In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other. A computational problem is a task solved ...
, a
language
Language is a structured system of communication. The structure of a language is its grammar and the free components are its vocabulary. Languages are the primary means by which humans communicate, and may be conveyed through a variety of ...
''B'' (or a
complexity class
In computational complexity theory, a complexity class is a set (mathematics), set of computational problems of related resource-based computational complexity, complexity. The two most commonly analyzed resources are time complexity, time and spa ...
''B'') is said to be low for a complexity class ''A'' (with some reasonable relativized version of ''A'') if ''A''
''B'' = ''A''; that is, ''A'' with an
oracle for ''B'' is equal to ''A''.
Such a statement implies that an
abstract machine
An abstract machine is a computer science theoretical model that allows for a detailed and precise analysis of how a computer system functions. It is analogous to a mathematical function in that it receives inputs and produces outputs based on pr ...
which solves problems in ''A'' achieves no additional power if it is given the ability to solve problems in ''B'' at unit cost. In particular, this means that if ''B'' is low for ''A'' then ''B'' is contained in ''A''. Informally, lowness means that problems in ''B'' are not only solvable by machines which can solve problems in ''A'', but are “easy to solve”. An ''A'' machine can simulate many oracle queries to ''B'' without exceeding its resource bounds.
Results and relationships that establish one class as low for another are often called lowness results. The set of languages low for a complexity class ''A'' is denoted ''Low(A)''.
Classes that are low for themselves
Several natural complexity classes are known to be low for themselves. Such a class is sometimes called ''self-low''.
Scott Aaronson
Scott Joel Aaronson (born May 21, 1981) is an American theoretical computer scientist and David J. Bruton Jr. Centennial Professor of Computer Science at the University of Texas at Austin. His primary areas of research are quantum computing a ...
calls such a class a ''physical complexity class''.
Note that being self-low is a stronger condition than being
closed under complement. Informally, a class being low for itself means a problem can use other problems in the class as unit-cost subroutines without exceeding the power of the complexity class.
The following classes are known to be self-low:
*
P is self-low (that is, P
P = P) because polynomial-time algorithms are closed under composition: a polynomial-time algorithm can make polynomially many queries to other polynomial-time algorithms, while retaining a polynomial running time.
*
PSPACE
In computational complexity theory, PSPACE is the set of all decision problems that can be solved by a Turing machine using a polynomial amount of space.
Formal definition
If we denote by SPACE(''t''(''n'')), the set of all problems that can b ...
(with restricted oracle access mechanism) is also self-low, and this can be established by exactly the same argument.
*
L is self-low because it can simulate log space oracle queries in log space, reusing the same space for each query.
*
NC is also self-low for the same reason.
*
BPP
BPP may refer to:
Education
* BPP Holdings, a holding company based in the United Kingdom
* BPP Law School, a law school based in the United Kingdom and a constituent school of BPP University
* BPP University, a private university based in the ...
is also low for itself and the same arguments almost work for BPP, but one has to account for errors, making it slightly harder to show that BPP is low for itself.
* Similarly, the argument for BPP almost goes through for
BQP, but we have to additionally show that quantum queries can be performed in coherent superposition.
[Bernstein and Vazirani, Quantum complexity theory, ]SIAM Journal on Computing
The ''SIAM Journal on Computing'' is a scientific journal focusing on the mathematical and formal aspects of computer science. It is published by the Society for Industrial and Applied Mathematics (SIAM).
Although its official ISO abbreviation is ...
, 26(5):1411-1473, 1997
* Both
Parity P In computational complexity theory, the complexity class ⊕P (pronounced "parity P") is the class of decision problems solvable by a nondeterministic Turing machine in polynomial time, where the acceptance condition is that the number of accepting ...
(
) and
BPP
BPP may refer to:
Education
* BPP Holdings, a holding company based in the United Kingdom
* BPP Law School, a law school based in the United Kingdom and a constituent school of BPP University
* BPP University, a private university based in the ...
are low for themselves. These were important in showing
Toda's theorem
Toda's theorem is a result in computational complexity theory that was proven by Seinosuke Toda in his paper "PP is as Hard as the Polynomial-Time Hierarchy" and was given the 1998 Gödel Prize.
Statement
The theorem states that the entire polyno ...
.
* NP ∩ coNP is low for itself.
Every class which is low for itself is closed under
complement
A complement is something that completes something else.
Complement may refer specifically to:
The arts
* Complement (music), an interval that, when added to another, spans an octave
** Aggregate complementation, the separation of pitch-clas ...
, provided that it is powerful enough to negate the boolean result. This implies that
NP isn't low for itself unless NP =
co-NP
In computational complexity theory, co-NP is a complexity class. A decision problem X is a member of co-NP if and only if its complement is in the complexity class NP. The class can be defined as follows: a decision problem is in co-NP precisely ...
, which is considered unlikely because it implies that the
polynomial hierarchy
In computational complexity theory, the polynomial hierarchy (sometimes called the polynomial-time hierarchy) is a hierarchy of complexity classes that generalize the classes NP and co-NP. Each class in the hierarchy is contained within PSPACE. ...
collapses to the first level, whereas it is widely believed that the hierarchy is infinite. The converse to this statement is not true. If a class is closed under complement, it does not mean that the class is low for itself. An example of such a class is
EXP Exp may stand for:
* Exponential function
The exponential function is a mathematical function denoted by f(x)=\exp(x) or e^x (where the argument is written as an exponent). Unless otherwise specified, the term generally refers to the pos ...
, which is closed under complement, but is not low for itself.
Classes that are low for other complexity classes
Some of the more complex and famous results regarding lowness of classes include:
*
BQP is low for
PP In other words, a program based around taking the majority decision of an unbounded number of iterations of a poly-time
randomized algorithm can easily solve all the problems that a
quantum computer can solve efficiently.
* The
graph isomorphism problem
The graph isomorphism problem is the computational problem of determining whether two finite graphs are isomorphic.
The problem is not known to be solvable in polynomial time nor to be NP-complete, and therefore may be in the computational compl ...
is low for
Parity P In computational complexity theory, the complexity class ⊕P (pronounced "parity P") is the class of decision problems solvable by a nondeterministic Turing machine in polynomial time, where the acceptance condition is that the number of accepting ...
(
). This means that if we can determine whether an NP machine has an even or odd number of accepting paths, we can easily solve graph isomorphism. In fact, it was later shown that graph isomorphism is low for
ZPPNP.
*
Amplified PP
Amplification or Amplified or Amplify may refer to:
Science and technology
* Amplification, the operation of an amplifier, a natural or artificial device intended to make a signal stronger
* Amplification (molecular biology), a mechanism leading t ...
is low for
PP.
[L. Li. On the Counting Functions. PhD thesis, University of Chicago. 1993.]
* NP ∩ coNP is equal to the set of languages low for NP, i.e., Low(NP) = NP ∩ coNP.
* AM ∩ coAM is low for ZPP
NP.
Applications
Lowness is particularly valuable in relativization arguments, where it can be used to establish that the power of a class does not change in the "relativized universe" where a particular oracle machine is available for free. This allows us to reason about it in the same manner we normally would. For example, in the relativized universe of BQP, PP is still closed under union and intersection. It's also useful when seeking to expand the power of a machine with oracles, because lowness results determine when the machine's power remains the same.
See also
*
Low (computability) In computability theory, a Turing degree 'X''is low if the Turing jump 'X''′is 0′. A set is low if it has low degree. Since every set is computable from its jump, any low set is computable in 0′, but the jump of sets computable ...
References
Computational complexity theory