Warum impliziert P = NP nicht P = AP (dh P = PSPACE)?

18

Es ist gut bekannt , dass , wenn P=NP dann das Polynom Hierarchie kollabiert und P=PH .

Dies kann mit Orakelmaschinen leicht induktiv verstanden werden. Die Frage ist - warum können wir nicht den induktiven Prozess über einen konstanten Wert von Abwechslungen fortsetzen und beweisen , P=AltTime(nO(1)) (auch bekannt als AP=PSPACE )?

Ich suche eine intuitive Antwort.

Joseph
quelle
4
Es ist bekannt, dass aber es wird vermutet, dass A L (dh P ) nicht gleich N L ist . NL=coNLALPNL
SDCVVC

Antworten:

32

Der Beweis für ( = P H ) ist eine Induktion P = N P . Die Induktions zeigen , dass für jede natürliche Zahl k , P = A l t T i m e ( k ) (und A l t T i m e ( O (P=AltTime(O(1))=PHP=NP kP=AltTime(k)AltTime(O(1)) ist nur ihre Vereinigung).

Die Induktion funktioniert nicht, wenn sich die Anzahl der Wechsel mit der Eingangsgröße ändern kann (dh wenn die Anzahl der möglichen Wechsel der Maschine nicht a ist Zahl, sondern eine Funktion ist) der Eingabegröße ist, dh wir zeigen nicht, dass eine Ausführung der Maschine erfolgt Wir zeigen, dass die Ausführung der Maschine an allen Eingängen "gleichmäßig" auf "keine Änderung" reduziert werden kann.

Schauen wir uns eine ähnliche, aber einfachere Aussage an. Wir wollen zeigen, dass die Identitätsfunktion letztendlich alle konstanten Funktionen dominiert ( f g iff für alle bis auf endlich viele n f ( n ) g ( n ) ). Dies kann durch Induktion nachgewiesen werden. Für alle k gilt k n (dh f ki d mit f k ( n ) = kid(n)=nfgn f(n)g(n)kknfkidfk(n)=k), aber wir haben dies nicht für nicht konstante Funktionen wie , n 2̸ n .n2n2≪̸n

Kaveh
quelle
22

Vergleichen Sie die Polynomhierarchie mit der Hierarchie für interaktive Beweise. Wenn aus irgendeinem festen k , Sie haben k Abwechslungen in einem interaktiven Beweis - IP ( k ) - die resultierende Komplexität Klasse keine Leistung mehr als das, was man mit zwei Abwechslungen bekommen - das heißt, IP ( k ) = IP (2 ) = AM (unter der Annahme von k ≥ 2). Wenn Sie jedoch eine polynomielle Anzahl von Abwechslungen zulassen, erhalten Sie die Komplexitätsklasse IP = PSPACE, von der angenommen wird, dass sie viel größer als AM ist. Eine Klasse ist in Π enthalten 2 P auf der zweiten Ebene der Polynomhierarchie enthalten. Dieses Phänomen tritt also tatsächlich auf (obwohl, soweit wir wissen, mit der Polynomhierarchie).

Dies geschieht, weil die Reduktion, die ein Problem der Größe n in IP ( k ) annimmt und es in ein Problem in IP (2) umwandelt, die Problemgröße in die Luft sprengt, so dass das Problem für eine bestimmte IP ( k ) polynomisch bleibt Wenn Sie k variieren lassen, gibt die resultierende Reduktion keine Probleme, die in k polynomial sind .

Peter Shor
quelle
11

Hier ist eine kleine Intuition bezüglich der Lücke zwischen konstanten und unbegrenzten Abwechslungen: Eine Polynomoperation, die eine konstante Anzahl von Malen wiederholt wird, ist polynomiell, aber eine Polynomanzahl von Malen wiederholt, kann exponentiell sein. Nehmen wir zum Beispiel die Multiplikation wiederholt auf sich selbst:

v = 2
for(i=1 to n)
  v = v*v

Die Anzahl der Iterationen ist linear und die Ausgabe ist exponentiell. Wenn Sie jedoch n festlegen, ist es in Bezug auf die Größe des Anfangswerts polynomisch.

Ludovic Patey
quelle
4

Im Folgenden werde ich ein wenig auf den Punkt in Peters Antwort eingehen, indem ich versuche, die Quantifiziererentfernung für mehr als eine konstante Anzahl von Schritten durchzuführen, um zu sehen, wo dies fehlschlägt und ob aus einem solchen Versuch etwas geborgen werden kann.

Versuchen wir, P = N P zu verstärkenP=NP mehr als konstant .

Es sei angenommen , dass P=NP . Daher gibt es eine Polynom-Zeitmaschine, die Ext-Circuit-SAT löst (gibt es eine zufriedenstellende Erweiterung für eine gegebene Schaltung und eine teilweise Zuordnung zu ihren Eingängen?).

Formal haben wir einen polytime Algorithmus A mit Polynom Laufzeit p(n)poly(n) st

Bei einer Booleschen Schaltung φ und einer teilweisen Zuordnung τ zu den Eingängen gibt
A "Ja" zurück, wenn es eine Erweiterung von τ , die φ erfüllt , und andernfalls "Nein".

To go over constant times, we need to do the quantifier removal effectively. We can do this because the Cook-Levin theorem is a constructive theorem, in fact it gives a polynomial time algorithm Cook s.t.

Given a DTM M receiving two inputs, and three unary numbers n, m, and t,
Cook(M,n,m,t) returns a Boolean circuit of size O(t2) that simulates M on inputs of length (n,m) for t steps.

Let's try to use these to extend the argument for P=PH to obtain an algorithm solving TQBF (actually TQBCircuit, i.e. Totally Quantified Boolean Circuit problem).

The idea of the algorithm is as follows: we repeatedly use Cook on A to remove the quantifiers from a given quantified circuit. There are linear number of quantifiers so we hope to get a polynomial time algorithm (we have an algorithm with polynomially many steps using the polynomial time subroutine Cook). At the end of this process of quantifier elimination we will have a quantifier-free circuit which can be evaluated in polynomial time (Circuit Value problem is in P, let CV be a polynomial time algorithm for computing the circuit value of a given circuit).

However we will see that this idea does not work (for the same reason pointed out by Peter).

  • Let φ be a quantified circuit, (initialized to the given quantified formula).
  • Let k the number of quantifiers in φ.
  • For i from k to 1 do

    • Let ψ = Qxkσ(x1,...,xk) be the last quantifier and the quantifier-free part.
    • If Q="",

      1. Compute C=Cook(A,|σ|,|x1|+...+|xk1|,p),
      2. Substitute the input bits with σ in the circuit C,
      3. Replace ψ with C in φ.
    • If Q="",

      1. Consider ψ as ¬xk¬σ,
      2. Compute C=Cook(A,|¬σ|,|x1|+...+|xk1|,p),
      3. Substitute the input bits with ¬σ in the circuit C,
      4. Replace ψ with the ¬C in φ.
  • Compute and return CV(φ).

The resulting algorithm looks polynomial time: we have polynomial many steps, each step is polynomial time computable. However this is not correct, the algorithm is not polynomial time.

Using polynomial time subroutines in a polynomial time algorithm is polynomial time. The problem is that in general this does not need to be true if the values returned by the subroutines are not of polynomial size in the original input and we assume that we do assignments about the values returning from the subroutines. (In the TM model we have to read the output of any polynomial time subroutine bit by bit.) Here the size of the returned value from algorithm Cook is increasing (can be a power of the size of the input given to it, the exact power depends on the running time of A and is around p2(|input|), so since we know that A cannot be less than linear time, |output| is at least |input|2).

The problem is similar to the simple code below:

  • Given x,
  • Let n=|x|,
  • Let y=x,
  • For i from 1 to n do
    • Let y=y|y|, (i.e. concatenation of |y| copies of y)
  • Return y

Each time we execute y=y|y| we square the size of y. After n executions we will have a y which is x2n and has size n2n, obviously not a polynomial in the size of the input.

Let's assume that we only consider quantified formulas with k(n) quantifier alternations (where n is the total size of the quantified formula).

Assume that A runs in time p (e.g. linear time which is not ruled out so far), and have maybe a more efficient Cook algorithm outputting a smaller circuit of size l(t) in place of t2, then we get an algorithm for ExtCircuitSat that runs in time (lp)O(k)(n)=l(p(l(p((l(p(n)))))))O(k) compositions. Even in the case that both l and p were linear (but with total coefficient a2) we would get an algorithm which runs in time Ω(n2k(n)) and if k(n)=Θ(n) it would be Ω(n2n) similar to the brute-force algorithm (and even this was based on assuming Cook-Levin can be performed on algorithms resulting circuits of linear size in the running time of the algorithm).

Kaveh
quelle
I really like this answer!!
Tayfun Pay
@kaveh What if p(n)=2Ω(n) while l(t)=O(t) then do we need at least double exponential time for NPNPNP? Your argument seems to suggest that possibility while we know PSPACE is in EXP and so how to get the single exponential back?
T....
3

I think this is because at each level of the PH, the number of alternations is a constant (i.e. independent of the input size), while in AP, the number of alternations can be unbounded (yet polynomial in the size of the input).

M.S. Dousti
quelle