Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Grete Andra Geändert vor über 10 Jahren
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 sh 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
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.