Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/07 6.12.

Ähnliche Präsentationen


Präsentation zum Thema: "Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/07 6.12."—  Präsentation transkript:

1 Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/07 6.12.

2 Multiprover Systeme Wir betrachten nun Beweissysteme mit mehreren Beweisern Dies macht nur Sinn, wenn wir interaktive Beweise betrachten, da sonst die Beweise der verschiedenen Beweiser einfach konkateniert werden könnten und man einen normalen nichtinteraktiven Beweiser erhalten würde

3 Multiprover Systeme Definition 8.1 Seien k Beweiser als unbeschränkt mächtige Maschinen gegeben Der Verifizierer V sei eine probabilistische Polynomialzeitmaschine Vor Beginn des Protokolls dürfen die Beweiser beliebig ihre Strategie abstimmen, zu diesem Zeitpunkt kennen Sie aber die Eingabe noch nicht (die zu beweisende Aussage) Dann erhalten die Beweiser und der Verifizierer die Eingabe und nun dürfen die Beweiser nicht mehr miteinander kommunizieren. Formal sind die Beweiser Funktionen, die die bisher gesehenen Nachrichten, und die Eingabe auf eine neue Nachricht polynomieller Länge abbilden Der Verifizierer ist eine in Polynomialzeit berechenbare Funktion, die die Eingabe und die bisherigen Nachrichten auf eine neue Nachricht und einen Index eines der k Beweiser abbildet, oder akzeptiert/verwirft D.h. Der Verifizierer bestimmt eine neue Nachricht und deren Empfänger, oder akzeptiert/verwirft. Insgesamt darf es polynomiell viele Nachrichten geben.

4 MIP Wir sagen eine Sprache L liegt in MIP, wenn ein solches Beweissystem mit den üblichen Korrektheits/Vollständigkeitsanforderungen existiert MIP(k) sei dieselbe Klasse, wenn es nur k Beweiser gibt

5 MIP Klar: IP=PSPACE µ MIP Wir werden zeigen: MIP=NEXP –NEXP: Klasse der Sprachen, für die ein deterministisches Beweissystem existiert mit einem Verifizierer der in Zeit exp(poly(n)) arbeitet.

6 NEXP NEXP: Klasse der Sprachen, für die ein deterministisches Beweissystem existiert mit einem Verifizierer der in Zeit exp(poly(n)) arbeitet. Alternativ: Sprachen, die durch nichtdeterministische Turingmaschinen mit exponentieller Laufzeit akzeptiert werden können NP ½ NEXP NP NEXP durch nichtdeterministischen Zeithierarchiesatz

7 Sequentielles Boosting Theorem 8.2: –Wenn L 2 MIP, dann gibt es ein MIP Beweissystem mit Vollständigkeit und Korrektheit 1-1/2 n Gegeben ein MIP System mit Vollständigkeit und Korrektheit 2/3. Wiederhole das Protokoll t=O(n) mal und akzeptiere/verwerfe je nach Mehrheit der Ergebnisse Bemerkung: Die t Läufe sind nicht notwendigerweise unabhängig, da der Beweiser abhängig von vorherigen Läufen seine Strategie ändern kann Da aber die Korrektheit und Vollständigkeit für alle Beweiserstrategien gelten, gelten sie auch in jedem Lauf Wir können daher Abschätzungen verwenden, bei denen die Läufe als unabhängig betrachtet werden, wie Chernoff

8 Sequentielles Boosting Genauere Version 8.2: –Wenn L ein MIP System mit Vollständigkeit c, Korrektheit s, ist, und =c-1+s>1/poly(n), dann gibt es ein MIP System für L mit Korrektheit und Vollständigkeit 1-1/2 n Beweis: –Wiederhole t=12n/ 2 mal –Wenn x 2 L, so wird erwartet ct mal akzeptiert –Sonst erwartet (1-s)t mal –Die Wahrscheinlichkeit, dass (fälschlich) mehr als (1-s)t+ t/2 mal akzeptiert wird kann mit Chernoff beschränkt werden –Ebenso die Wahrscheinlichkeit, dass (fälschlich) weniger als ct- t/2 mal akzeptiert wird –Der (neue) Verifizierer wird also akzeptieren, wenn mindestens ct- t/2=(1-s)t+ t/2 mal akzeptiert wird

9 MIP Chernoff: Wenn x 1,…,x t unabhängige Boolesche Zufallsvariablen mit Prob(x i =1) ¸ c sind, so gilt Prob( x i · ct- ct) · exp(- 2 ct/2) Wenn x 1,…,x t unabhängige Boolesche Zufallsvariablen mit Prob(x i =1) · c sind, so gilt Prob( x i ¸ ct+ ct) · exp(- 2 ct/3) für 0 · · 1 Für uns: = /(2c) Damit ist der Fehler · 2exp(- 2 /(12c)t) · exp(-n). Chernoff gilt auch, wenn statt Unabhängigkeit gilt, dass Prob(x i =1) ¸ c, wenn alle x j für j i beliebig festgelegt sind.

10 Paralleles Boosting Was, wenn wir k Berechnungen des MIP Systems parallel ausführen? Nehmen wir an L habe ein MIP System mit einer Runde Betrachte folgendes System: Verifizierer sendet jeweils k Nachrichten zusammen an die Beweiser, welche mit k Nachrichten antworten Die Beweiser können versuchen, die k parallelen Abläufe zu korrelieren, d.h. Unabhängigkeit ist nicht gegeben. Tatsächlich kann man aber zeigen, das paralleles Boosting auch funktioniert, aber Beweis ist extrem technisch Die Wahrscheinlichkeit, eine Eingabe falsch zu akzeptieren kann deutlich größer als 2 - (k) sein

11 Eine Charakterisierung von MIP Wir wollen MIP nun einfacher charakterisieren Dazu brauchen wir den Begriff eines PCP Probabilistically checkable proof Ein PCP ist ein langer, nichtinteraktiver Beweis, von dem wir zufällig kleine Teile lesen, um auf die Korrektheit des ganzen zu testen

12 PCP Definition 8.3 –Ein PCP Beweissystem besteht aus einem randomisierten Verifizierer mit polynomieller Laufzeit –Der Beweis p ist eine Funktion der Eingabe x, d.h. nicht interaktiv –Der Verifizierer kann auf den Beweis durch ein Orakel zugreifen, d.h. kann Fragen nach Bit/Zeichen i des Beweises stellen. –Ein PCP für eine Sprache L mit Vollständigkeit c und Korrektheit s erfüllt: Wenn x 2 L dann gibt es einen Beweis, der mit Ws c akzeptiert wird Wenn x nicht 2 L, dann gilt für alle Beweise, dass mit Ws s nicht akzeptiert wird –Eine Sprache L liegt in PCP(r(n),q(n)), wenn es ein PCP für L gibt, so dass auf Eingaben der Länge n der Verifizierer r(n) Zufallsbits verwendet, und q(n) Bits des Beweises inspiziert, und in Zeit poly(n+q(n)+r(n)) arbeitet Bemerkung: –Der Verifizierer wird i.A. nur einen kleinen Teil des Beweises ansehen!

13 PCP Bemerkung: –Wenn L 2 PCP(r(n), q(n)), dann gibt es 2 r(n) verschiedene Berechnungen des Verifizierers (auf fester Eingabe/festem Beweis) –In jeder der Berechnungen liest der Verifizierer nur q(n) Bits –Daher ist der Beweis O.B.d.A. in der Länge durch 2 r(n) q(n) beschränkt

14 Beispiel für ein PCP Graph-Nichtisomorphismus GNI 2 PCP(poly(n),1) –G 0,G 1 seien Eingabegraphen mit n Knoten –Der Beweis enthält für jeden Graphen H mit n Knoten ein Bit p(H) –p(H)=i wenn H isomorph zu G i –Wenn H nicht isomorph zu einem G i, ist p(h) beliebig –Der Verifizierer zieht ein zufälliges Bit b und eine zufällige Permutation der Knoten und fragt nach p( (G b )) –Verifizierer akzeptiert, wenn p( (G b ))=b

15 Beispiel für ein PCP Der Verifizierer zieht ein zufälliges Bit b und eine zufällige Permutation der Knoten und fragt nach p( (G b )) Der Verifizierer akzeptiert, wenn p( (G b ))=b Wenn G 0 nicht isomorph zu G 1 ist, dann gibt es einen Beweis, mit dem der Verifizierer immer akzeptiert. Wenn G 0 isomorph zu G 1, dann wird der Verifizierer unabhängig von b dieselben Stellen jedes Beweises inspizieren, und mit Ws. höchstens 1/2 gilt p( (G b ))=b Anzahl der Zufallsbits: 1+log(n!)=O(n log n) Anzahl der Fragen: 1

16 Beispiele PCP(poly(n),0): Klasse aller Sprachen, die durch randomisierte Algorithmen entschieden werden können PCP(0, poly(n)) = NP PCP(0, exp(poly(n))) = NEXP PCP(O(1),O(1)) = P PCP(log log n, O(1)) = P PCP(O(log n), poly(n)) = NP PCP(poly(n), poly(n)) = NEXP

17 PCP vs. Nichtdeterminismus NTIME(t(n)): Klasse der Sprachen, die in Zeit t(n) von nichtdeterministischen TM berechnet werden können DTIME(t(n)): Klasse der Sprachen, die in Zeit t(n) von deterministischen TM berechnet werden können Theorem 8.4 PCP(r(n),q(n)) µ NTIME(2 r(n) poly(q(n)+r(n)+n)) PCP(r(n),q(n)) µ DTIME(exp(2 r(n) (q(n)+1)) ¢ poly(q(n)+r(n)+n))) Z.B. PCP(log log n, O(1))= P

18 PCP vs. Nichtdeterminismus Beweis: Sei L 2 PCP(r(n),q(n)) Wir müssen ein deterministisches Beweissystem mit Laufzeit 2 r(n) poly(q(n)+r(n)+n) für den Verifizierer konstruieren. O.B.d.A. ist der PCP-Beweis von der Länge 2 r(n) q(n) Dieser Beweis bleibt so wie er ist. Der deterministische Verifizierer durchläuft alle 2 r(n) Werte der Zufallsbits des PCP Verifizierers und simuliert diesen. Dabei wird die Anzahl der akzeptierenden Berechnungen bestimmt. Die Laufzeit ist damit 2 r(n) poly(q(n)+ r(n)+ n) Wenn x 2 L, dann gibt es einen Beweis p, der mit Ws. 2/3 akz wird Wenn x nicht in L, dann gilt für alle Beweise, dass diese mit Ws. 2/3 verworfen werden Diese Wahrscheinlichkeit wird für einen gegebenen Beweis durch den Verifizierer ermittelt. Daher erhalten wir L 2 NTIME(2 r(n) poly(q(n)+ r(n)+ n)) Für die Aussage über DTIME durchlaufen wir ausserdem alle Beweise der Länge 2 r(n) q(n) und bestimmen, ob einer mit hoher Ws. akzeptiert wird.

19 Boosting Theorem 8.5 –Wenn L ein PCP System mit Vollständigkeit und Korrektheit 2/3, q(n) Fragen und r(n) Zufallsbits hat, dann gibt es ein PCP für L mit Korrektheit und Vollständigkeit 1-1/2 k und O(k q(n)) Fragen/ O(kr(n)) Zufall

20 MIP vs. PCP Wir zeigen: Theorem 8.6 –A) MIP µ PCP(poly(n), poly(n)) –B) PCP(poly(n),poly(n)) µ MIP(2) Damit folgt auch MIP=MIP(2)

21 Beweis A) Wir zeigen zunächst, dass MIP 2 PCP(poly(n), poly(n)) Sei also L 2 MIP Es gibt ein MIP Beweissystem für L mit höchstens t=an k Beweisern, Runden, Kommunikation pro Runde. Wir konstruieren nun den PCP-Beweis. Der Beweis wird indiziert durch (i,j,l, i,1,…, i,j ): –i: Nummer des Beweisers –j: Nummer der Nachricht – : k-te Nachricht an Beweiser i An Stelle (i,j,l, i,1,…, i,j ) steht das l-te Bit der j+1-ten Nachricht von Beweiser i an den Verifizierer Da die gesamte Kommunikation per Runde nur höchstens t ist, hat der Beweis eine Länge von t 3 2 t 2 Der PCP Verifizierer simuliert den MIP Verifizierer, und fragt anstelle der Beweiser die entsprechenden Positionen im PCP- Beweis

22 Beweis Wenn x 2 L so gibt es Funktionen für die Beweiser, so dass mit Ws. 2/3 akzeptiert werden kann. Damit gilt dies auch für den PCP-Beweis Sei x nicht 2 L. Angenommen, der PCP- Verifizierer akzeptiert einen PCP-Beweis p mit Wahrscheinlichkeit q. Die Beweiser im MIP Protokoll können einfach anhand von p auch im MIP System eine Akzeptanzws. q erreichen, daher ist q · 1/3.

23 Beweis B) PCP(poly,poly) µ MIP(2) Wir benutzen den ersten Beweiser wie den PCP-Beweiser, und den zweiten, um die Geschichte zu prüfen Sei also L 2 PCP(poly, poly). Wir nehmen Korrektheit und Vollständigkeit 1-1/2 n an Für x 2 L gibt es einen PCP-Beweis p. Ehrliche Beweiser P 1,P 2 antworten auf Fragen nach Position i mit p(i) Der MIP-Verifizierer simuliert den PCP-Verifizierer. Dabei stellt er die Fragen an P 1 P 1 kann nun mogeln, indem er adaptiv antwortet! Angenommen der PCP-Verifizierer stellt t=an k Fragen an den PCP-Beweis Der MIP-Beweiser stellt nun eine Frage an P 2, und zwar eine zufällige der t Fragen Der MIP-Verifizierer verwirft, wenn –der PCP-Verifizierer verwerfen würde –P 1 und P 2 nicht übereinstimmen Sonst wird akzeptiert

24 Beweis Wenn x 2 L, dann können P 1,P 2 einfach wie der PCP-Beweis antworten und der Verifizierer wird mit Ws. 1-1/2 n überzeugt. Wenn x nicht in L, so gibt es zwei Möglichkeiten: –P 1 arbeitet mit einem festen Beweis p (d.h. seine Antworten hängen nicht von vorherigen Fragen ab, auf die Frage i wird er immer mit p(i) antworten). In diesem Fall wird wie vom PCP-Verifizierer mit Ws. 1-1/2 n verworfen –P 1 antwortet abhängig von den vorherigen Fragen auf mindestens eine Frage unterschiedlich, d.h. für vorherige Fragen i 1,…,i k antwortet er auf Frage i k+1 mit u, für vorherige Fragen j 1,…,j k mit v. Die Antworten von P 2 auf alle Fragen ergeben zusammen einen Beweisstring p (da P 2 nur jeweils eine Frage erhält und auf dieser eine feste Antwort gibt) p wird vom PCP-Verifizierer mit Ws. 1-1/2 n verworfen Angenommen es gilt mit Wahrscheinlichkeit · 1/3, dass P 1 auf einer der Fragen von p abweicht (wobei die Wahrscheinlichkeit über die Randomisierung des Verifizierers läuft). –Dann wird wird mit Ws. ¸ 2/3 ¢ (1-1/2 n ) >1/2 verworfen. Anderenfalls gilt mit Wahrscheinlichkeit 1/t, dass diese Frage an P 2 gestellt und dann verworfen wird, insgesamt also mit Ws. mind. 1/(3t) Es wird also immer mit Ws. 1/(3t) verworfen Wir erhalten also Korrektheit 1/(3t)=1/poly(n) und Vollständigkeit 1-1/2 n Der gap zwischen 1-(1/3t) und 1-1/2 n ist groß genug um zu boosten nach 8.2.


Herunterladen ppt "Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/07 6.12."

Ähnliche Präsentationen


Google-Anzeigen