PP (complexity)

Last updated
PP algorithm
Answer
produced
Correct
answer
YesNo
Yes> 1/2< 1/2
No< 1/2> 1/2


PP in relation to other probabilistic complexity classes (ZPP, RP, co-RP, BPP, BQP), which generalise P within PSPACE. It is unknown if any of these inclusions are strict. Randomised Complexity Classes 2.svg
PP in relation to other probabilistic complexity classes (ZPP, RP, co-RP, BPP, BQP), which generalise P within PSPACE. It is unknown if any of these inclusions are strict.

In complexity theory, PP is the class of decision problems solvable by a probabilistic Turing machine in polynomial time, with an error probability of less than 1/2 for all instances. The abbreviation PP refers to probabilistic polynomial time. The complexity class was defined [1] by Gill in 1977.

Contents

If a decision problem is in PP, then there is an algorithm for it that is allowed to flip coins and make random decisions. It is guaranteed to run in polynomial time. If the answer is YES, the algorithm will answer YES with probability more than 1/2. If the answer is NO, the algorithm will answer YES with probability less than 1/2. In more practical terms, it is the class of problems that can be solved to any fixed degree of accuracy by running a randomized, polynomial-time algorithm a sufficient (but bounded) number of times.

Turing machines that are polynomially-bound and probabilistic are characterized as PPT, which stands for probabilistic polynomial-time machines. [2] This characterization of Turing machines does not require a bounded error probability. Hence, PP is the complexity class containing all problems solvable by a PPT machine with an error probability of less than 1/2.

An alternative characterization of PP is the set of problems that can be solved by a nondeterministic Turing machine in polynomial time where the acceptance condition is that a majority (more than half) of computation paths accept. Because of this some authors have suggested the alternative name Majority-P. [3]

Definition

A language L is in PP if and only if there exists a probabilistic Turing machine M, such that

Alternatively, PP can be defined using only deterministic Turing machines. A language L is in PP if and only if there exists a polynomial p and deterministic Turing machine M, such that

In both definitions, "less than" can be changed to "less than or equal to" (see below), and the threshold 1/2 can be replaced by any fixed rational number in (0,1), without changing the class.

PP vs BPP

BPP is a subset of PP; it can be seen as the subset for which there are efficient probabilistic algorithms. The distinction is in the error probability that is allowed: in BPP, an algorithm must give correct answer (YES or NO) with probability exceeding some fixed constant c > 1/2, such as 2/3 or 501/1000. If this is the case, then we can run the algorithm a number of times and take a majority vote to achieve any desired probability of correctness less than 1, using the Chernoff bound. This number of repeats increases if c becomes closer to 1/2, but it does not depend on the input size n.

More generally, if c can depend on the input size polynomially, as , then we can rerun the algorithm for and take the majority vote. By Hoeffding's inequality, this gives us a BPP algorithm.

The important thing is that this constant c is not allowed to depend on the input. On the other hand, a PP algorithm is permitted to do something like the following:

Because these two probabilities are exponentially close together, even if we run it for a polynomial number of times it is very difficult to tell whether we are operating on a YES instance or a NO instance. Attempting to achieve a fixed desired probability level using a majority vote and the Chernoff bound requires a number of repetitions that is exponential in n.

PP compared to other complexity classes

PP includes BPP, since probabilistic algorithms described in the definition of BPP form a subset of those in the definition of PP.

PP also includes NP . To prove this, we show that the NP-complete satisfiability problem belongs to PP. Consider a probabilistic algorithm that, given a formula F(x1, x2, ..., xn) chooses an assignment x1, x2, ..., xn uniformly at random. Then, the algorithm checks if the assignment makes the formula F true. If yes, it outputs YES. Otherwise, it outputs YES with probability and NO with probability .

If the formula is unsatisfiable, the algorithm will always output YES with probability . If there exists a satisfying assignment, it will output YES with probability at least (exactly 1/2 if it picked an unsatisfying assignment and 1 if it picked a satisfying assignment, averaging to some number greater than 1/2). Thus, this algorithm puts satisfiability in PP. As SAT is NP-complete, and we can prefix any deterministic polynomial-time many-one reduction onto the PP algorithm, NP is included in PP. Because PP is closed under complement, it also includes co-NP.

Furthermore, PP includes MA , [4] which subsumes the previous two inclusions.

PP also includes BQP , the class of decision problems solvable by efficient polynomial time quantum computers. In fact, BQP is low for PP, meaning that a PP machine achieves no benefit from being able to solve BQP problems instantly. The class of polynomial time on quantum computers with postselection, PostBQP , is equal to PP [5] (see #PostBQP below).

Furthermore, PP includes QMA , which subsumes inclusions of MA and BQP.

A polynomial time Turing machine with a PP oracle (PPP) can solve all problems in PH , the entire polynomial hierarchy. This result was shown by Seinosuke Toda in 1989 and is known as Toda's theorem. This is evidence of how hard it is to solve problems in PP. The class #P is in some sense about as hard, since P#P = PPP[ citation needed ] and therefore P#P includes PH as well.

PP strictly includes uniform TC0 , the class of constant-depth, unbounded-fan-in boolean circuits with majority gates that are uniform (generated by a polynomial-time algorithm). (Allender 1996, as cited in Burtschick 1999).

PP is included in PSPACE . This can be easily shown by exhibiting a polynomial-space algorithm for MAJSAT, defined below; simply try all assignments and count the number of satisfying ones.

PP is not included in SIZE(nk) for any k (proof).

Complete problems and other properties

Unlike BPP, PP is a syntactic rather than semantic class. Any polynomial-time probabilistic machine recognizes some language in PP. In contrast, given a description of a polynomial-time probabilistic machine, it is undecidable in general to determine if it recognizes a language in BPP.

PP has natural complete problems, for example, MAJSAT[ citation needed ]. MAJSAT is a decision problem in which one is given a Boolean formula F. The answer must be YES if more than half of all assignments x1, x2, ..., xn make F true and NO otherwise.

Proof that PP is closed under complement

Let L be a language in PP. Let denote the complement of L. By the definition of PP there is a polynomial-time probabilistic algorithm A with the property that

We claim that without loss of generality, the latter inequality is always strict; the theorem can be deduced from this claim: let denote the machine which is the same as A except that accepts when A would reject, and vice versa. Then

which implies that is in PP.

Now we justify our without loss of generality assumption. Let be the polynomial upper bound on the running time of A on input x. Thus A makes at most random coin flips during its execution. In particular the probability of acceptance is an integer multiple of and we have:

Define a machine A′ as follows: on input x, A′ runs A as a subroutine, and rejects if A would reject; otherwise, if A would accept, A′ flips coins and rejects if they are all heads, and accepts otherwise. Then

This justifies the assumption (since A′ is still a polynomial-time probabilistic algorithm) and completes the proof.

David Russo proved in his 1985 Ph.D. thesis [6] that PP is closed under symmetric difference. It was an open problem for 14 years whether PP was closed under union and intersection; this was settled in the affirmative by Beigel, Reingold, and Spielman. [7] Alternate proofs were later given by Li [8] and Aaronson (see #PostBQP below).

Other equivalent complexity classes

PostBQP

The quantum complexity class BQP is the class of problems solvable in polynomial time on a quantum Turing machine. By adding postselection, a larger class called PostBQP is obtained. Informally, postselection gives the computer the following power: whenever some event (such as measuring a qubit in a certain state) has nonzero probability, you are allowed to assume that it takes place. [9] Scott Aaronson showed in 2004 that PostBQP is equal to PP. [5] [10] This reformulation of PP makes it easier to show certain results, such as that PP is closed under intersection (and hence, under union), that BQP is low for PP, and that QMA is included in PP.

PQP

PP is also equal to another quantum complexity class known as PQP, which is the unbounded error analog of BQP. It denotes the class of decision problems solvable by a quantum computer in polynomial time, with an error probability of less than 1/2 for all instances. Even if all amplitudes used for PQP-computation are drawn from algebraic numbers, still PQP coincides with PP. [11]

Notes

  1. Gill, John (1977). "Computational Complexity of Probabilistic Turing Machines". SIAM Journal on Computing. 6 (4): 675–695. doi:10.1137/0206049.
  2. Lindell, Yehuda; Katz, Jonathan (2015). Introduction to Modern Cryptography (2 ed.). Chapman and Hall/CRC. p. 46. ISBN   978-1-4665-7027-6.
  3. Lance Fortnow. Computational Complexity: Wednesday, September 4, 2002: Complexity Class of the Week: PP. http://weblog.fortnow.com/2002/09/complexity-class-of-week-pp.html
  4. N.K. Vereshchagin, "On the Power of PP"
  5. 1 2 Aaronson, Scott (2005). "Quantum computing, postselection, and probabilistic polynomial-time". Proceedings of the Royal Society A. 461 (2063): 3473–3482. arXiv: quant-ph/0412187 . Bibcode:2005RSPSA.461.3473A. doi:10.1098/rspa.2005.1546. S2CID   1770389.
  6. David Russo (1985). Structural Properties of Complexity Classes (Ph.D Thesis). University of California, Santa Barbara.
  7. R. Beigel, N. Reingold, and D. A. Spielman, "PP is closed under intersection", Proceedings of ACM Symposium on Theory of Computing 1991, pp. 1–9, 1991.
  8. Lide Li (1993). On the Counting Functions (Ph.D Thesis). University of Chicago.
  9. Aaronson, Scott. "The Amazing Power of Postselection" . Retrieved 2009-07-27.
  10. Aaronson, Scott (2004-01-11). "Complexity Class of the Week: PP". Computational Complexity Weblog. Retrieved 2008-05-02.
  11. Yamakami, Tomoyuki (1999). "Analysis of Quantum Functions". Int. J. Found. Comput. Sci. 14 (5): 815–852. arXiv: quant-ph/9909012 . Bibcode:1999quant.ph..9012Y. doi:10.1142/S0129054103002047. S2CID   3265603.

Related Research Articles

In computational complexity theory, a branch of computer science, bounded-error probabilistic polynomial time (BPP) is the class of decision problems solvable by a probabilistic Turing machine in polynomial time with an error probability bounded by 1/3 for all instances. BPP is one of the largest practical classes of problems, meaning most problems of interest in BPP have efficient probabilistic algorithms that can be run quickly on real modern machines. BPP also contains P, the class of problems solvable in polynomial time with a deterministic machine, since a deterministic machine is a special case of a probabilistic machine.

<span class="mw-page-title-main">BQP</span> Computational complexity class of problems

In computational complexity theory, bounded-error quantum polynomial time (BQP) is the class of decision problems solvable by a quantum computer in polynomial time, with an error probability of at most 1/3 for all instances. It is the quantum analogue to the complexity class BPP.

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 by a computer. A computation problem is solvable by mechanical application of mathematical steps, such as an algorithm.

<span class="mw-page-title-main">NP (complexity)</span> Complexity class used to classify decision problems

In computational complexity theory, NP is a complexity class used to classify decision problems. NP is the set of decision problems for which the problem instances, where the answer is "yes", have proofs verifiable in polynomial time by a deterministic Turing machine, or alternatively the set of problems that can be solved in polynomial time by a nondeterministic Turing machine.

In computational complexity theory, randomized polynomial time (RP) is the complexity class of problems for which a probabilistic Turing machine exists with these properties:

<span class="mw-page-title-main">ZPP (complexity)</span> Concept in computer science

In complexity theory, ZPP is the complexity class of problems for which a probabilistic Turing machine exists with these properties:

In theoretical computer science, a probabilistic Turing machine is a non-deterministic Turing machine that chooses between the available transitions at each point according to some probability distribution. As a consequence, a probabilistic Turing machine can—unlike a deterministic Turing Machine—have stochastic results; that is, on a given input and instruction state machine, it may have different run times, or it may not halt at all; furthermore, it may accept an input in one execution and reject the same input in another execution.

A randomized algorithm is an algorithm that employs a degree of randomness as part of its logic or procedure. The algorithm typically uses uniformly random bits as an auxiliary input to guide its behavior, in the hope of achieving good performance in the "average case" over all possible choices of random determined by the random bits; thus either the running time, or the output are random variables.

<span class="mw-page-title-main">Complexity class</span> Set of problems in computational complexity theory

In computational complexity theory, a complexity class is a set of computational problems "of related resource-based complexity". The two most commonly analyzed resources are time and memory.

In computational complexity theory, P, also known as PTIME or DTIME(nO(1)), is a fundamental complexity class. It contains all decision problems that can be solved by a deterministic Turing machine using a polynomial amount of computation time, or polynomial time.

<span class="mw-page-title-main">PH (complexity)</span> Class in computational complexity theory

In computational complexity theory, the complexity class PH is the union of all complexity classes in the polynomial hierarchy:

In computational complexity theory, an Arthur–Merlin protocol, introduced by Babai (1985), is an interactive proof system in which the verifier's coin tosses are constrained to be public. Goldwasser & Sipser (1986) proved that all (formal) languages with interactive proofs of arbitrary length with private coins also have interactive proofs with public coins.

In computational complexity theory, the complexity class NEXPTIME is the set of decision problems that can be solved by a non-deterministic Turing machine using time .

In computational complexity theory, NL is the complexity class containing decision problems that can be solved by a nondeterministic Turing machine using a logarithmic amount of memory space.

In computational complexity theory, P/poly is a complexity class representing problems that can be solved by small circuits. More precisely, it is the set of formal languages that have polynomial-size circuit families. It can also be defined equivalently in terms of Turing machines with advice, extra information supplied to the Turing machine along with its input, that may depend on the input length but not on the input itself. In this formulation, P/poly is the class of decision problems that can be solved by a polynomial-time Turing machine with advice strings of length polynomial in the input size. These two different definitions make P/poly central to circuit complexity and non-uniform complexity.

In computational complexity theory, PostBQP is a complexity class consisting of all of the computational problems solvable in polynomial time on a quantum Turing machine with postselection and bounded error.

In computational complexity theory, BPL, sometimes called BPLP, is the complexity class of problems solvable in logarithmic space and polynomial time with probabilistic Turing machines with two-sided error. It is named in analogy with BPP, which is similar but has no logarithmic space restriction.

In probability theory, to postselect is to condition a probability space upon the occurrence of a given event. In symbols, once we postselect for an event , the probability of some other event changes from to the conditional probability .

Quantum complexity theory is the subfield of computational complexity theory that deals with complexity classes defined using quantum computers, a computational model based on quantum mechanics. It studies the hardness of computational problems in relation to these complexity classes, as well as the relationship between quantum complexity classes and classical complexity classes.

The One Clean Qubit model of computation is performed an qubit system with one pure state and maximally mixed states. This model was motivated by highly mixed states that are prevalent in Nuclear magnetic resonance quantum computers. It's described by the density matrix , where I is the identity matrix. In computational complexity theory, DQC1; also known as the Deterministic quantum computation with one clean qubit is the class of decision problems solvable by a one clean qubit machine in polynomial time, upon measuring the first qubit, with an error probability of at most 1/poly(n) for all instances.

References