Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Fakten über AM[k] AM[i] µ AM[i+1] Lemma 4.1: Wenn es ein AM[k] Protokoll für L gibt, in dem Korrektheit und Vollständigkeit 2/3 sind, dann gibt es ein AM[k] für L mit Korrektheit und Vollständigkeit 1-1/2 p(n) für Polynome p(n) –Beweis Übung, Idee: Wiederhole das Protokoll O(p(n)) mal parallel Theorem 4.2: AM[k]=AM[2] für alle k=O(1) Wir nennen AM[2] daher auch einfach AM Theorem 4.3: Wenn L 2 AM, dann gibt es ein AM Protokoll mit Vollständigkeit 1 und Korrektheit 2/3. Dasselbe gilt für MA. Korollar 4.4: –AM liegt in 2 p –MA liegt in 2 p \ 2 p
Beweis des Korollars 4.4 Wenn L in AM liegt, dann gilt nach 4.3: –Für alle x 2 L: 9 y: x#y wird vom Verifizierer mit Wahrscheinlichkeit 1 akzeptiert D.h. 9 y 8 Wahlen der Zufallsbits r für V: V akzeptiert (x,r) –Für alle x nicht 2 L: 8 y: x#y wird vom Verifizierer mit Wahrscheinlichkeit 2/3 nicht akzeptiert D.h. es existiert kein y: so dass V für alle r akzeptiert. –Damit liegt L in 2 p Analog für L in MA und 2 p Ausserdem gilt MA µ AM µ 2 p nach 4.2
Schlußfolgerung Wir hatten zuvor gesehen, dass TAUT beweisbar gdw NP=co-NP Theorem 4.5: Wenn TAUT in AM liegt, dann gilt AM=co-AM –Beweis: Sei L aus co-AM –Damit liegt L in 2 p –Es gibt eine Polynomialzeitmaschine M: Für alle x 2 L: 9 y 8 z: M(x#y#z) akzeptiert Für alle x nicht 2 L: 8 y 9 z: M(x#y#z) akzeptiert nicht –Sei B={(x#y): 8 z: M(x#y#z)} –B 2 co-NP –TAUT ist co-NP vollständig, TAUT in AM nach Voraussetzung, daher folgt B 2 AM –Damit liegt aber auch L in AM, da L={x: 9 y: (x#y) 2 B} und damit L 2 AM[3]=AM
Schlußfolgerung Korollar 4.6: –Wenn TAUT 2 AM, dann gilt PH=AM und 2 p = 2 p. Damit gilt wahrscheinlich, dass TAUT nicht in AM liegt.
Beweis des Korollars 4.6 Wenn TAUT in AM, dann folgt co-NP µ AM Wir zeigen: 2 p 2 AM –L 2 2 p : Es gibt eine Polynomialzeitmaschine M: –Für alle x 2 L: 9 y 8 z: M(x#y#z) akzeptiert –Für alle x nicht 2 L: 8 y 9 z: M(x#y#z) akzeptiert nicht Sei B={(x#y): 8 z: M(x#y#z)} B liegt in co-AM, und somit nach Voraussetzung auch in AM Damit liegt L in AM[3]=AM nach 4.2 Analog können wir 2 p µ coAM=AM zeigen Damit gilt 2 p = 2 p Per Induktion zeigt man nun PH=AM
Zusammenfassung Wenn es ein interaktives Beweissystem für TAUT ohne privaten Zufall und mit konstant vielen Runden gäbe, würde die polynomielle Hierarchie kollabieren, was unwahrscheinlich ist Auswege: –Erlaube geheimen Zufall Wir werden zeigen, dass das nicht hilft –Erlaube mehr Interaktion
Beweis Theorem 4.2 Wir betrachten zunächst die Inklusion MAM=AM[3] µ AM Sei V der Verfizierer Wenn x 2 L, dann gibt es a, so dass: Prob r ( 9 b: V(x,a,r,b) akz) ¸ 2/3. Wir wollen diese Wahrscheinlichkeit verbessern Sei s=|a| und |a| sei für alle Eingaben x gleich (O.B.d.A) Wir definieren einen Verifizierer V, der die Rechnung von V unabhängig 100s+200 mal mit jeweils neuem r und b wiederholt. V bekommt x,a, und 100s+200 strings r 1,…,r 100s+200,b 1,…,b 100s+200 V rechnet wie V, 100s+200 mal und akzeptiert, wenn die Mehrheit der 100s+200 Berechnungen akzeptiert. Wie verhält sich die Fehlerwahrscheinlichkeit?
Chernoff Schranke Es gebe m unabhängige Zufallsvariablen mit Wertebereich {0,1} z i =1 mit Ws. p E[ z i ]= E[z i ]=pm Chernoff Schranke: –Prob( z i · (1- ) pm) · e - 2 /2 ¢ pm Für uns ist Experiment i, wenn r i gezogen wird. Es gilt z i =1, wenn es ein b i gibt, so dass V(x,a,r i,b i ) akzeptiert Da die r i unabhängig gezogen werden, sind die z i unabhängig E[z i ] ¸ 2/3 wenn x 2 L und E[1-z i ] ¸ 2/3, wenn x nicht 2 L Damit gilt für 100s+200 Versuche mit Ausgang z 1,...,z 100s+200 und p ¸ 2/3 Prob( z i · 50s+100) · e -t für t=(1/6) 2 /2 ¢ (2/3)(100s+200) ¸ 0.9 s+1.8 Daher ist die Ws <2 -s /5, dass V verwirft, wenn V mit Ws 2/3 akzeptiert, und umgekehrt die Ws <2 -s /5, dass V akzeptiert, wenn V mit Ws 2/3 verwirft
Beweis Theorem 4.2 Um zu zeigen, dass L 2 AM, ziehen wir nun einfach die Bestimmung der Zufallsstrings vor und erhalten einen Verifizierer V D.h. Der Verifizierer zieht r 1,…,r 100s+200 zufällig und der Beweiser antwortet mit a und mit b 1,…,b 100s+200 –Vollständigkeit: Wenn x 2 L, dann gibt es einen MAM Beweis, und V akzeptiert diesen. Der Beweiser kann genauso wie im MAM Beweis arbeiten [Tatsächlich gewinnt der Beweiser die Möglichkeit, a von den r i abhängen zu lassen] –Korrektheit: für x nicht aus L gilt: Prob(V akzeptiert) =Prob r[1],…r[100s+200] ( 9 a 9 b 1,...,b 100s+200 : V(x, a,r 1,…,r 100s+200,b 1,…,b 100s+200 ) akz ) · a Prob r[1],…r[100s+200] ( 9 b 1,..,b 100s+200 : V(x, a,r 1,…,r 100s+200,b 1,…,b 100s+200 ) akz ) · 2 |a| ¢ 2 -|a| /5 · 1/5 –Denn es gibt nur 2 |a| viele strings a
Beweis Theorem 4.2 Damit erhalten wir ein AM Beweissystem für jede Sprache in MAM=AM[3] Analog können wir konstant viele Runden entfernen, d.h. AM[k] µ AM[2] für alle k=O(1) Jedesmal steigt die Beweislänge polynomiell (sowie die Laufzeit des Verifizierers)
Generelle Interaktive Beweise Wir entfernen nun die Restriktion von AM Protokollen, dass der Verifizierer keinen privaten Zufall hat. Definition 4.7: –Ein interaktives Beweissystem für eine Sprache L besteht aus einem Beweiser und einem Verifizierer. –Beweiser und Verifizierer bekommen eine Eingabe x –Der Verifizierer ist eine randomisierte Maschine mit polynomieller Laufzeit in |x| –Verifizierer und Beweiser kommunizieren beliebig gemäß eines Protokolls Beweiser und Verifizierer berechnen jeweils aus den bisher ausgetauschten Nachrichten eine neue Nachricht –Die Nachrichten des Beweisers haben polynomielle Länge in |x| –Es gelten dieselben Anforderungen and Vollständigkeit und Korrektheit wie bei AM Protokollen –Alle Sprachen, die in Protokollen mit k Runden bewiesen werden können bilden die Klasse IP[k] Generell beginnt für gerades k der Verifizierer das Protokoll, für ungerades der Beweiser IP[1]=MA AM µ IP[2]
IP versus AM Theorem 4.8 –IP[k]=AM[k] für alle k (auch nichtkonstante k) Es ist klar, dass AM[k] µ IP[k] Es reicht zu zeigen, dass IP[k] µ AM[k+2], da AM[k+2] µ AM[k]