Characterisations and closure properties of PP #
PP (Cslib.Complexity.PP) is defined by a strict majority of accepted random strings
Gill. This file proves that a non-strict majority defines the same class, that PP
is closed under polynomial-time reductions, and the characterisations of PP through #P and
GapP Fenner, Fortnow and Kurtz.
- Non-strict majority. A verifier decides
Aby strict majority exactly when its negation decides the complementAᶜby non-strict majority (Cslib.Complexity.decidesByMajority_iff_decidesByNonstrictMajority_compl). SincePPis closed under complement (Cslib.Complexity.compl_mem_PP), the two majority conditions give the same class (Cslib.Complexity.mem_PP_iff_decidesByNonstrictMajority). - Reductions. For a reduction
ffromAtoBand a verifierWforBreadingq(m)random bits on an instance of lengthm, the verifier forArunsWonf aand the firstq (|f a|)random bits. Since|f a|is polynomial in|a|, the random string is padded to a polynomialr(|a|); the ignored bits multiply the counts on both sides of the majority condition by the same power of two. #P.A ∈ PPexactly whena ∈ A ↔ 2 ^ q(n) < 2 f(a)for somef ∈ #Pand some polynomialq, not necessarily the length of the certificates counted byf, wherenis the length of the encoded instance (Cslib.Complexity.mem_PP_iff_exists_SharpP). Forfcounting the certificates of lengthk = p(n)thatVaccepts andj = q(n), the verifier on random strings of lengthk + j + 2lets the first bit choose: ontrueit accepts the2 f(a)strings formed by a certificate accepted byV, a free bit, andjbitsfalse; onfalseit accepts the2 ^ (k + j + 1) - 2 ^ jstrings whose firstk + 1bits are not allfalse. More than half of the strings are accepted exactly when2 ^ j < 2 f(a).GapP.A ∈ PPexactly whenA = {a | 0 < g a}for someg ∈ GapP(Cslib.Complexity.mem_PP_iff_exists_GapP).
Main definitions #
Cslib.Complexity.DecidesByNonstrictMajority: the non-strict majority condition.
Main results #
Cslib.Complexity.mem_PP_iff_decidesByNonstrictMajority: non-strict majority definesPP.Cslib.Complexity.PolyTimeReducible.mem_PP:PPis closed under polynomial-time reductions.Cslib.Complexity.mem_PP_iff_exists_SharpP,Cslib.Complexity.mem_PP_iff_exists_GapP.
References #
Non-strict majority #
V decides A by non-strict majority, using random strings whose length is p evaluated at
the length of the encoded instance: a ∈ A exactly when at least half of the random strings r
give V (a, r) = true.
Instances For
Non-strict majority defines PP: a problem is in PP exactly when a polynomial-time
verifier accepts the members of the problem, and only them, on at least half of the random
strings.
Reductions #
PP is closed under polynomial-time reductions. The verifier runs the verifier for the
target problem on the reduced instance; the random string is padded to a polynomial in the length
of the encoded instance, and the ignored bits multiply both sides of the majority condition by
the same power of two.
PP through #P and GapP #
PP through #P: a problem is in PP exactly when, for a function f in #P and a
polynomial q, its members are the instances a with 2 ^ q(n) < 2 f(a), where n is the
length of the encoded instance. The polynomial q need not be the length of the certificates
counted by f.
PP through GapP Fenner, Fortnow and Kurtz: a problem is in
PP exactly when its members are the instances where some function in GapP is positive.