Donc représente les problèmes où nous avons de petits témoins vérifiables pour les instances et pour les petits témoins vérifiables pour les instances . Comment ça marche pour
etc?
la source
Donc représente les problèmes où nous avons de petits témoins vérifiables pour les instances et pour les petits témoins vérifiables pour les instances . Comment ça marche pour
etc?
Il existe une interprétation logique des différents niveaux de la hiérarchie polynomiale, qui étend la caractérisation témoin de et .
Un langage est dans s'il y a un prédicat de polytime et un polynôme tels que
Ici:
Similarly, is in if it can be written in a similar way, only starting with .
As an example, is , and consists of all languages such that
Your third example is , which is . I'm not sure what is the logical characterization.
To sayNP contains problems with "small verifiable witnesses" is conceptually inaccurate at best. The witnesses are only polynomially bounded because we want the verifier to be efficient (i.e., run in polynomial time). In such a setting, only a polynomially long prefix of any witness can be relevant, hence why we insist on polynomially long witnesses. Also, "small" potentially means constant or logarithmic; those are not used, of course, because they can be brute-forced by polynomial-time algorithms (and only give us problems in P ).
The way the proof system notion ofNP generalizes to yield the polynomial hierarchy is much like the logical point of view that Yuval Filmus describes in his answer. Let me introduce the less technical view behind it.
We consider two-party games which are based on QBFs. An instance (or the "board" if you care to imagine it as a board game like chess or checkers) of such a game is a formulaφ(x1,y1,…,xm,ym) , and the two players, say A and B , take turns choosing values for xi and yi , respectively. Each such choice constitutes a move. When no more values are left, the formula (i.e., the game's final position) is evaluated; A wins if it is true, and B wins if it is false.
This game models existential and universal quantifiers in the following way: If the formula is a true QBF, thenA (which plays the role of existential quantifiers) will always have a winning strategy and be able to choose a series of x1,…,xm which cause φ to be true regardless of the values y1,…,ym picked by B (which plays the role of universal quantifiers). The "yes" instances are those in which the QBF is true, that is, A always has a winning strategy, regardless of how B plays.
Note also thatΣ1=NP and Π1=coNP are rather degenerate cases of these games because B and A , respectively, do not get the chance to move at all! For example, for the "yes" instances of Π1=coNP , A gets to win simply by doing nothing (since a "yes" instance is a tautology and is true regardless of what B chooses).
There is also a more generalized version of the above which is based on generic games (and not QBFs specifically). You can find it, for instance, in section 5.4 "PSPACE and Games" of Goldreich's "Computational Complexity: A Conceptual Perspective" (here is a free link to the draft version; see p. 174 as well as pp. 118–121).
la source
Note thatP is a function class in disguide, and that PNP too is a function class in disguise. Let us write PF for the class of polynomial time computable partial functions, i.e. the function class corresponding to P , and PFNP for the function class corresponding to PNP . Including the partial functions allows to use established notation (used in A taxonomy of complexity classes of functions by A. Selman, 1994) that avoids the name clash with the unrelated class FP .
Cook reduction feel more natural for function classes. You probably encountered a Cook reduction (and implicitly also the classPFNP ) at the point where your text book or professor explained why it is OK to only look at decision problems. Typically, something like an algorithm (from PFNP ) to compute the lexicographically last satisfying assignment of a given SAT instance is described. One first asks the oracle whether there is any satisfying assignment at all, and then determines the values of the (binary) variables xk by successively asking the oracle whether there is a satisfying assignment where x1,…,xk−1 are set to the already determined values, and xk is set to 1 . If yes, then one sets xk to 1 , otherwise one sets xk to 0 . (Note that this is a partial function, since the function is undefined in case there is no satisfying assignment.)
Let me try to say some words about Yuval Filmus remark:
There are two difficulties to overcome: (1) the characterization of a function class has a different feel than the logical characterization of a decision class, and (2) at least forPA we have to model the deterministic character of the queries to the oracle A .
If we look at the classUPF of partial functions corresponding to the class UP of decision problems first, then we can ignore (2) for a moment: A partial function pf is in UPFΣPk if there is a polytime partial function p , a polytime predicate f and a polynomial ℓ such that pf(x)=p(x,z) where ∃≤1|z|≤ℓ(|x|)p(x,z)≠⊥∧∃|y1|≤ℓ(|x|)∀|y2|≤ℓ(|x|)⋯Q|yk|≤ℓ(|x|)f(x,y1,…,yk,z).
Here:
One could try to overcome (2) by introducing the operatorsBIT(z,i):=z[i] and TRUNC(z,i):=z∣∣[1,i) . But it would still get ugly, and one can argue whether this would really constitute a logical characterization.
la source