fbpx
Wikipedia

P/poly

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.[1][2] These two different definitions make P/poly central to circuit complexity and non-uniform complexity.

For example, the popular Miller–Rabin primality test can be formulated as a P/poly algorithm: the "advice" is a list of candidate values to test. It is possible to precompute a list of values such that every composite -bit number will be certain to have a witness in the list.[3] For example, to correctly determine the primality of 32-bit numbers, it is enough to test .[4][5] The existence of short lists of candidate witnesses follows from the fact that for each composite , three out of four candidate values successfully detect that is composite. From this, a simple counting argument similar to the one in the proof that BPP P/poly below shows that there exists a suitable list of candidate values for every input size, and more strongly that most long-enough lists of candidate values will work correctly, although finding a list that is guaranteed to work may be expensive.[3]

P/poly, unlike other polynomial-time classes such as P or BPP, is not generally considered a practical class for computing. Indeed, it contains every undecidable unary language, none of which can be solved in general by real computers. On the other hand, if the input length is bounded by a relatively small number and the advice strings are short, it can be used to model practical algorithms with a separate expensive preprocessing phase and a fast processing phase, as in the Miller–Rabin example.

Formal definition edit

The complexity class P/poly can be defined in terms of SIZE as follows:

 

where   is the set of decision problems that can be solved by polynomial-sized circuit families.

Alternatively,   can be defined using Turing machines that "take advice". Such a machine has, for each n, an advice string  , which it is allowed to use in its computation whenever the input has size n.

Let   be functions. The class of languages decidable by time-T(n) Turing machines with   advice, denoted  , contains every language L such that there exists a sequence   of strings with   and a TM M satisfying

 

for every  , where on input   the machine M runs for at most   steps.[6]

Importance of P/poly edit

P/poly is an important class for several reasons. For theoretical computer science, there are several important properties that depend on P/poly:

  • If NPP/poly then PH (the polynomial hierarchy) collapses to  . This result is the Karp–Lipton theorem; furthermore, NPP/poly implies AM = MA [7]
  • If PSPACEP/poly then  , even PSPACE = MA.
Proof: Consider a language L from PSPACE. It is known that there exists an interactive proof system for L, where actions of the prover can be carried out by a PSPACE machine. By assumption, the prover can be replaced by a polynomial-size circuit. Therefore, L has a MA protocol: Merlin sends the circuit as proof, and Arthur can simulate the IP protocol himself without any additional help.
  • If P#PP/poly then P#P = MA.[8] The proof is similar to above, based on an interactive protocol for permanent and #P-completeness of permanent.
  • If EXPTIMEP/poly then   (Meyer's theorem), even EXPTIME = MA.
  • If NEXPTIMEP/poly then NEXPTIME = EXPTIME, even NEXPTIME = MA. Conversely, NEXPTIME = MA implies NEXPTIMEP/poly[9]
  • If EXPNPP/poly then   (Buhrman, Homer) [10]
  • It is known that MAEXP, an exponential version of MA, is not contained in P/poly.
Proof: If MAEXPP/poly then PSPACE = MA (see above). By padding, EXPSPACE = MAEXP, therefore EXPSPACEP/poly but this can be proven false with diagonalization.

One of the most interesting reasons that P/poly is important is the property that if NP is not a subset of P/poly, then PNP. This observation was the center of many attempts to prove PNP. It is known that for a random oracle A, NPA is not a subset of PA/poly with probability 1.[1]

P/poly is also used in the field of cryptography. Security is often defined 'against' P/poly adversaries. Besides including most practical models of computation like BPP, this also admits the possibility that adversaries can do heavy precomputation for inputs up to a certain length, as in the construction of rainbow tables.

Although not all languages in P/poly are sparse languages, there is a polynomial-time Turing reduction from any language in P/poly to a sparse language.[11]

Bounded-error probabilistic polynomial is contained in P/poly edit

Adleman's theorem states that BPPP/poly, where BPP is the set of problems solvable with randomized algorithms with two-sided error in polynomial time. A weaker result was initially proven by Leonard Adleman, namely, that RPP/poly;[12] and this result was generalized to BPPP/poly by Bennett and Gill.[13] Variants of the theorem show that BPL is contained in L/poly and AM is contained in NP/poly.

Proof edit

Let L be a language in BPP, and let M(x,r) be a polynomial-time algorithm that decides L with error ≤ 1/3 (where x is the input string and r is a set of random bits).

Construct a new machine M'(x,R), which runs M 48n times and takes a majority vote of the results (where n is the input length and R is a sequence of 48n independently random rs). Thus, M' is also polynomial-time, and has an error probability ≤ 1/en by the Chernoff bound (see BPP). If we can fix R then we obtain an algorithm that is deterministic.

If   is defined as  , we have:

 

The input size is n, so there are 2n possible inputs. Thus, by the union bound, the probability that a random R is bad for at least one input x is

 

In words, the probability that R is bad for some x is less than 1, therefore there must be an R that is good for all x. Take such an R to be the advice string in our P/poly algorithm.

References edit

  1. ^ a b Lutz, Jack H.; Schmidt, William J. (1993), "Circuit size relative to pseudorandom oracles", Theoretical Computer Science, 107 (1): 95–119, doi:10.1016/0304-3975(93)90256-S, MR 1201167
  2. ^ (PDF), archived from the original (PDF) on 2012-02-23, retrieved 2009-12-25
  3. ^ a b Goldreich, Oded; Wigderson, Avi (2002), "Derandomization that is rarely wrong from short advice that is typically good", in Rolim, José D. P.; Vadhan, Salil P. (eds.), Randomization and Approximation Techniques, 6th International Workshop, RANDOM 2002, Cambridge, MA, USA, September 13-15, 2002, Proceedings, Lecture Notes in Computer Science, vol. 2483, Springer, pp. 209–223, doi:10.1007/3-540-45726-7_17, ECCC TR02-39
  4. ^ Caldwell, Chris, "2.3: Strong probable-primality and a practical test", Finding primes & proving primality
  5. ^ Jaeschke, Gerhard (1993), "On strong pseudoprimes to several bases", Mathematics of Computation, 61 (204): 915–926, doi:10.2307/2153262, MR 1192971; see p. 926.
  6. ^ Arora, Sanjeev; Barak, Boaz (2009), Computational complexity. A modern approach, Cambridge University Press, ISBN 978-0-521-42426-4, Zbl 1193.68112
  7. ^ Arvind, Vikraman; Köbler, Johannes; Schöning, Uwe; Schuler, Rainer (1995), "If NP has polynomial-size circuits, then MA = AM", Theoretical Computer Science, 137 (2): 279–282, doi:10.1016/0304-3975(95)91133-B, MR 1311226
  8. ^ Babai, László; Fortnow, Lance; Lund, Carsten (1991), , Computational Complexity, 1 (1): 3–40, doi:10.1007/BF01200056, MR 1113533, archived from the original on 2012-03-31, retrieved 2011-10-02
  9. ^ Impagliazzo, Russell; Kabanets, Valentine; Wigderson, Avi (2002), "In search of an easy witness: exponential time vs. probabilistic polynomial time" (PDF), Journal of Computer and System Sciences, 65 (4): 672–694, doi:10.1016/S0022-0000(02)00024-7, MR 1964649
  10. ^ A Note on the Karp-Lipton Collapse for the Exponential Hierarchy
  11. ^ Jin-Yi Cai. Lecture 11: P/poly, Sparse Sets, and Mahaney's Theorem. CS 810: Introduction to Complexity Theory. The University of Wisconsin–Madison. September 18, 2003.
  12. ^ Adleman, L. M. (1978), "Two theorems on random polynomial time", Proceedings of the Nineteenth Annual IEEE Symposium on Foundations of Computer Science, pp. 75–83, doi:10.1109/SFCS.1978.37
  13. ^ Charles H. Bennett, John Gill. Relative to a Random Oracle A, PA ≠ NPA ≠ co-NPA with probability 1. [1] 

poly, computational, complexity, theory, complexity, class, representing, problems, that, solved, small, circuits, more, precisely, formal, languages, that, have, polynomial, size, circuit, families, also, defined, equivalently, terms, turing, machines, with, . 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 1 2 These two different definitions make P poly central to circuit complexity and non uniform complexity For example the popular Miller Rabin primality test can be formulated as a P poly algorithm the advice is a list of candidate values to test It is possible to precompute a list of O n displaystyle O n values such that every composite n displaystyle n bit number will be certain to have a witness a displaystyle a in the list 3 For example to correctly determine the primality of 32 bit numbers it is enough to test a 2 7 61 displaystyle a in 2 7 61 4 5 The existence of short lists of candidate witnesses follows from the fact that for each composite n displaystyle n three out of four candidate values successfully detect that n displaystyle n is composite From this a simple counting argument similar to the one in the proof that BPP displaystyle subset P poly below shows that there exists a suitable list of candidate values for every input size and more strongly that most long enough lists of candidate values will work correctly although finding a list that is guaranteed to work may be expensive 3 P poly unlike other polynomial time classes such as P or BPP is not generally considered a practical class for computing Indeed it contains every undecidable unary language none of which can be solved in general by real computers On the other hand if the input length is bounded by a relatively small number and the advice strings are short it can be used to model practical algorithms with a separate expensive preprocessing phase and a fast processing phase as in the Miller Rabin example Contents 1 Formal definition 2 Importance of P poly 3 Bounded error probabilistic polynomial is contained in P poly 3 1 Proof 4 ReferencesFormal definition editThe complexity class P poly can be defined in terms of SIZE as follows P p o l y c N S I Z E n c displaystyle mathsf P poly cup c in mathbb N mathsf SIZE n c nbsp where S I Z E n c displaystyle mathsf SIZE n c nbsp is the set of decision problems that can be solved by polynomial sized circuit families Alternatively P p o l y displaystyle mathsf P poly nbsp can be defined using Turing machines that take advice Such a machine has for each n an advice string a n displaystyle alpha n nbsp which it is allowed to use in its computation whenever the input has size n Let T a N N displaystyle T a mathbb N rightarrow mathbb N nbsp be functions The class of languages decidable by time T n Turing machines with a n displaystyle a n nbsp advice denoted D T I M E T n a n displaystyle mathsf DTIME T n a n nbsp contains every language L such that there exists a sequence a n n N displaystyle alpha n n in mathbb N nbsp of strings with a n 0 1 a n displaystyle alpha n in 0 1 a n nbsp and a TM M satisfying M x a n 1 x L displaystyle M x alpha n 1 Leftrightarrow x in L nbsp for every x 0 1 n displaystyle x in 0 1 n nbsp where on input x a n displaystyle x alpha n nbsp the machine M runs for at most O T n displaystyle O T n nbsp steps 6 Importance of P poly editP poly is an important class for several reasons For theoretical computer science there are several important properties that depend on P poly If NP P poly then PH the polynomial hierarchy collapses to S 2 P displaystyle Sigma 2 mathsf P nbsp This result is the Karp Lipton theorem furthermore NP P poly implies AM MA 7 If PSPACE P poly then P S P A C E S 2 P P 2 P displaystyle mathsf PSPACE Sigma 2 mathsf P cap Pi 2 mathsf P nbsp even PSPACE MA Proof Consider a language L from PSPACE It is known that there exists an interactive proof system for L where actions of the prover can be carried out by a PSPACE machine By assumption the prover can be replaced by a polynomial size circuit Therefore L has a MA protocol Merlin sends the circuit as proof and Arthur can simulate the IP protocol himself without any additional help If P P P poly then P P MA 8 The proof is similar to above based on an interactive protocol for permanent and P completeness of permanent If EXPTIME P poly then E X P T I M E S 2 P P 2 P displaystyle mathsf EXPTIME Sigma 2 mathsf P cap Pi 2 mathsf P nbsp Meyer s theorem even EXPTIME MA If NEXPTIME P poly then NEXPTIME EXPTIME even NEXPTIME MA Conversely NEXPTIME MA implies NEXPTIME P poly 9 If EXPNP P poly then E X P N P S 2 P P 2 P displaystyle mathsf EXP NP Sigma 2 mathsf P cap Pi 2 mathsf P nbsp Buhrman Homer 10 It is known that MAEXP an exponential version of MA is not contained in P poly Proof If MAEXP P poly then PSPACE MA see above By padding EXPSPACE MAEXP therefore EXPSPACE P poly but this can be proven false with diagonalization One of the most interesting reasons that P poly is important is the property that if NP is not a subset of P poly then P NP This observation was the center of many attempts to prove P NP It is known that for a random oracle A NPA is not a subset of PA poly with probability 1 1 P poly is also used in the field of cryptography Security is often defined against P poly adversaries Besides including most practical models of computation like BPP this also admits the possibility that adversaries can do heavy precomputation for inputs up to a certain length as in the construction of rainbow tables Although not all languages in P poly are sparse languages there is a polynomial time Turing reduction from any language in P poly to a sparse language 11 Bounded error probabilistic polynomial is contained in P poly editAdleman s theorem states that BPP P poly where BPP is the set of problems solvable with randomized algorithms with two sided error in polynomial time A weaker result was initially proven by Leonard Adleman namely that RP P poly 12 and this result was generalized to BPP P poly by Bennett and Gill 13 Variants of the theorem show that BPL is contained in L poly and AM is contained in NP poly Proof edit Let L be a language in BPP and let M x r be a polynomial time algorithm that decides L with error 1 3 where x is the input string and r is a set of random bits Construct a new machine M x R which runs M 48n times and takes a majority vote of the results where n is the input length and R is a sequence of 48n independently random rs Thus M is also polynomial time and has an error probability 1 en by the Chernoff bound see BPP If we can fix R then we obtain an algorithm that is deterministic If Bad x displaystyle mbox Bad x nbsp is defined as R M x R is incorrect displaystyle R M x R text is incorrect nbsp we have x Prob R R Bad x 1 e n displaystyle forall x mbox Prob R R in mbox Bad x leq frac 1 e n nbsp The input size is n so there are 2n possible inputs Thus by the union bound the probability that a random R is bad for at least one input x is Prob R x R Bad x 2 n e n lt 1 displaystyle mbox Prob R exists x R in mbox Bad x leq frac 2 n e n lt 1 nbsp In words the probability that R is bad for some x is less than 1 therefore there must be an R that is good for all x Take such an R to be the advice string in our P poly algorithm References edit a b Lutz Jack H Schmidt William J 1993 Circuit size relative to pseudorandom oracles Theoretical Computer Science 107 1 95 119 doi 10 1016 0304 3975 93 90256 S MR 1201167 Lecture notes on computational complexity by Peter Bro Miltersen PDF archived from the original PDF on 2012 02 23 retrieved 2009 12 25 a b Goldreich Oded Wigderson Avi 2002 Derandomization that is rarely wrong from short advice that is typically good in Rolim Jose D P Vadhan Salil P eds Randomization and Approximation Techniques 6th International Workshop RANDOM 2002 Cambridge MA USA September 13 15 2002 Proceedings Lecture Notes in Computer Science vol 2483 Springer pp 209 223 doi 10 1007 3 540 45726 7 17 ECCC TR02 39 Caldwell Chris 2 3 Strong probable primality and a practical test Finding primes amp proving primality Jaeschke Gerhard 1993 On strong pseudoprimes to several bases Mathematics of Computation 61 204 915 926 doi 10 2307 2153262 MR 1192971 see p 926 Arora Sanjeev Barak Boaz 2009 Computational complexity A modern approach Cambridge University Press ISBN 978 0 521 42426 4 Zbl 1193 68112 Arvind Vikraman Kobler Johannes Schoning Uwe Schuler Rainer 1995 If NP has polynomial size circuits then MA AM Theoretical Computer Science 137 2 279 282 doi 10 1016 0304 3975 95 91133 B MR 1311226 Babai Laszlo Fortnow Lance Lund Carsten 1991 Nondeterministic exponential time has two prover interactive protocols Computational Complexity 1 1 3 40 doi 10 1007 BF01200056 MR 1113533 archived from the original on 2012 03 31 retrieved 2011 10 02 Impagliazzo Russell Kabanets Valentine Wigderson Avi 2002 In search of an easy witness exponential time vs probabilistic polynomial time PDF Journal of Computer and System Sciences 65 4 672 694 doi 10 1016 S0022 0000 02 00024 7 MR 1964649 A Note on the Karp Lipton Collapse for the Exponential Hierarchy Jin Yi Cai Lecture 11 P poly Sparse Sets and Mahaney s Theorem CS 810 Introduction to Complexity Theory The University of Wisconsin Madison September 18 2003 Adleman L M 1978 Two theorems on random polynomial time Proceedings of the Nineteenth Annual IEEE Symposium on Foundations of Computer Science pp 75 83 doi 10 1109 SFCS 1978 37 Charles H Bennett John Gill Relative to a Random Oracle A PA NPA co NPA with probability 1 1 nbsp Retrieved from https en wikipedia org w index php title P poly amp oldid 1186337541, 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.