Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Hartmut Klauck Universität Frankfurt WS 06/

Ähnliche Präsentationen


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

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

2 Eine Schlussfolgerung
GI={G0,G1: G0 isomorph zu G1} GI2 NP Es ist nicht bekannt, ob GI2 P Ist es möglich, dass GI NP-vollständig ist? Wenn das der Fall wäre, würde 2p=2p folgen Denn: NGI2 AM, NGI ist co-NP-vollständig nach Vorrausetzung, also erhalten wir dieselben Konsequenzen wie aus TAUT 2 AM Damit ist GI wahrscheinlich nicht NP-vollständig, und ein Kandidat für ein Problem das weder in P liegt, noch NP-vollständig ist

3 TAUT und IP Wir wollen ein interaktives Beweissystem für TAUT konstruieren Wir stellen dazu aussagenlogische Formeln als Polynome dar Arithmetisierung Sei F ein endlicher Körper Boolesche Werte werden als 0,12 F repräsentiert

4 TAUT und IP Wir stellen die logischen Verknüpfungen wie folgt dar:
x ^ y ) x¢ y : x ) (1-x) x_ y ) (1-(1-x)(1-y)) Eine gegebene DNF  mit n Termen und n Variablen kann so in ein Polynom P vom Grad · n2 umgewandelt werden Beispiel: _i=1,…,n ^j=1,…,k xi,j  1-i(1-j xi,j) Klar: wenn Boolesche x1,…,xn Formel  erfüllen, dann gilt P(x1,…,xn)=1 Wir können aber auch andere Werte aus F einsetzen!

5 Ansatz Wir betrachten folgendes Problem:
Gegeben eine DNF , bestimme die Anzahl erfüllender Belegungen Wenn  eine Tautologie ist, so gibt es 2n erfüllende Belegungen Was ist die Anzahl erfüllender Belegungen?  x12{0,1}… xn2{0,1} P (x1,…,xn) (*)

6 Das Protokoll/Vorbereitungen
Der Beweiser bestimmt eine Primzahl q zwischen 2n+1 und 22n Alle Berechnungen finden in F=GF(q) statt,d.h. modulo q Da q groß genug ist, „stimmt“ unsere Summe immer noch Der Beweiser behauptet, dass ein Wert K gleich der Summe (*) ist Der Verifizierer testet zuerst, ob q eine Primzahl ist

7 Das Protokoll/Vorbereitungen
Damit haben wir noch das Problem zu lösen, eine gegebene Gleichung über GF(q) zu verifizieren Bemerkung: Verifizierer kann das Polynom P auf jedem Element von (GF(q))n auswerten Das Polynom ist durch die Formel implizit gegeben und kann leicht ausgewertet werden, ohne es auszumultiplizieren Wenn wir alle Variablen von P bis auf x1 festhalten, erhalten wir ein univariates Polynom h(x)= x22{0,1}… xn2{0,1} P (x,x2…,xn) ist damit ebenfalls univariat Beweiser behauptet damit h(0)+h(1)=K

8 Das Protokoll Eingabe: Polynom P, implizit durch Formel gegeben
Beweiser behauptet x12{0,1}… xn2{0,1} P(x1,…,xn)=K Wenn n=1, testet Verifizierer P(0)+ P(1)=K (akzeptiere wenn wahr, sonst verwerfe) Wenn n>1: fordere Polynom h(x) wie oben definiert Beweiser sendet ein univariates Polynom s(x) vom Grad höchstens n2 Dies ist durch n2+1 Körperelemente gegeben als i=0n2 ai xi Verifizierer testet s(0)+s(1)=K (verwirft falls nicht) Verifizierer zieht ein zufälliges a aus GF(q) Rekursiv wird nun getestet, ob s(a)=  x22{0,1}… xn2{0,1} P(a,x2,…,xn) Klar: Ein ehrlicher Beweiser kann den Verifizierer überzeugen (durch Senden von s=h), falls K korrekt

9 Komplexität des Protokolls
Es gibt n Iterationen, in jeder Iteration sprechen Verifizierer und Beweiser je einmal Pro Iteration werden O(n2) Körperelemente aus GF(q) kommuniziert, mit O(n) Bits jeweils Der Verifizierer muss nur Arithmetik auf Polynomen vom Grad n über F rechnen

10 Korrektheit Vollständigkeit 1 war bereits direkt am Protokoll ersichtlich Wir zeigen nun Korrektheit: Lemma 6.1: Wenn K   x12{0,1}… xn2{0,1} P (x1,…,xn) dann gilt (d sei der Grad von P): Prob(Verifizierer verwirft)¸ (1-d/q)n Bemerkung: (1-d/q)n ¸ 1-nd/q ¸ 1-nd/2n Es gilt d· n2 für DNF Formeln mit n Termen, und n Variablen, wir erhalten also eine Schranke von 1-n3/2n

11 Beweis des Lemmas K   x12{0,1}… xn2{0,1} P(x1,…,xn)
Induktion über n n=1 trivial n>1: IV: Für alle Polynome P vom Grad d auf n-1 Variablen und alle K wird mit Ws. (1-d/q)n-1 verworfen Wenn der Beweiser in Runde 1 mit h(x) antwortet, wird mit Ws. 1 verworfen Also gilt sh Wenn s Grad grösser als d hat kann ebenfalls verworfen werden Betrachte s(x)-h(x). Dieses Polynom hat Grad · d und daher · d Nullstellen. Das Element a wird aber zufällig gezogen, und daher ist a mit Wahrscheinlichkeit (1-d/q) keine Nullstelle von s-h Wenn s(a)h(a), dann muss der Beweiser nun also in der Rekursion eine falsche Aussage beweisen, per IV geht das nur mit Ws. (1-d/q)n-1 und damit folgt das Lemma.

12 Bemerkungen In jeder Runde erhalten wir Fehlerwahrscheinlichkeit (d/2n) höchstens Korrektheit folgt aus der Eigenschaft von Polynomen vom Grad d, höchstens d Nullstellen zu haben Wir haben O(n) Runden, und O(n3) Bits Kommunikation Es gibt keinen privaten Zufall Wir erhalten co-NPµ IP=IP(poly(n)) Damit folgt auch PH µ IP

13 Bemerkungen Tatsächlich erhalten wir ein Beweissystem für die Klasse #P #P ist die Menge aller Funktionen {0,1}* N, für die es eine nichtdeterministische Turingmaschine M mit polynomieller Laufzeit gibt, so dass M auf x genau f(x) akzeptierende Berechnungen hat #SAT ist das Problem, zu einer aussagenlogischen Formel die Anzahl erfüllender Belegungen zu berechnen #SAT ist #P vollständig Sprachversion: {,K: Formel  hat K erfüllende Belegungen der Variablen} Wir haben gezeigt, dass die Sprachversion von #SAT 2 IP

14 IP und PSPACE Wir zeigen zunächst, dass IPµ PSPACE.
IP=IP(poly(n))=AM(poly(n)) Wenn L2 IP, dann können wir ein AM-Beweissystem mit poly(n) Runden angeben, das Vollständigkeit 1 und Korrektheit 2/3 hat. x2 L: 9 m1, 8 m29 m3…: V(m1,…,ml, x) akzeptiert x nicht 2 L:8 m1 9 m28 m3…: V(m1,…,ml, x) akzeptiert nicht V ist eine deterministische Maschine mit polynomieller Laufzeit Auf polynomiellem Platz können wir alle Belegungen von m1,…,ml durchlaufen, und dann V simulieren.

15 IP und PSPACE QBF ist PSPACE vollständig Theorem 6.2: IP=PSPACE
Es reicht aus, QBF2 IP zu zeigen

16 Arithmetisierung von QBF
Gegeben ist eine QBF F=9 x18 x2 …9 xn (x1,…,xn)  ist eine aussagenlogische Formel Wir arithmetisieren F  ist wahr, gdw.  x12{0,1}  x22{0,1}  x32{0,1} … xn2{0,1} P (x1,…,xn) > 0


Herunterladen ppt "Hartmut Klauck Universität Frankfurt WS 06/"

Ähnliche Präsentationen


Google-Anzeigen