Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

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

Ähnliche Präsentationen


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

1 Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/

2 Eine Schlussfolgerung GI={G 0,G 1 : G 0 isomorph zu G 1 } GI 2 NP Es ist nicht bekannt, ob GI 2 P Ist es möglich, dass GI NP-vollständig ist? Wenn das der Fall wäre, würde 2 p = 2 p folgen –Denn: NGI 2 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,1 2 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 · n 2 umgewandelt werden Beispiel: _ i=1,…,n ^ j=1,…,k x i,j 1- i (1- j x i,j ) Klar: wenn Boolesche x 1,…,x n Formel erfüllen, dann gilt P (x 1,…,x n )=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 2 n erfüllende Belegungen Was ist die Anzahl erfüllender Belegungen? x 1 2 {0,1} … x n 2 {0,1} P (x 1,…,x n ) (*)

6 Das Protokoll/Vorbereitungen Der Beweiser bestimmt eine Primzahl q zwischen 2 n +1 und 2 2n 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 x 1 festhalten, erhalten wir ein univariates Polynom h(x)= x 2 2 {0,1} … x n 2 {0,1} P (x,x 2 …,x n ) ist damit ebenfalls univariat Beweiser behauptet damit h(0)+h(1)=K

8 Das Protokoll 1.Eingabe: Polynom P, implizit durch Formel gegeben 2.Beweiser behauptet x 1 2 {0,1} … x n 2 {0,1} P(x 1,…,x n )=K 3.Wenn n=1, testet Verifizierer P(0)+ P(1)=K (akzeptiere wenn wahr, sonst verwerfe) 4.Wenn n>1: fordere Polynom h(x) wie oben definiert 5.Beweiser sendet ein univariates Polynom s(x) vom Grad höchstens n 2 Dies ist durch n 2 +1 Körperelemente gegeben als i=0 n 2 a i x i 6.Verifizierer testet s(0)+s(1)=K (verwirft falls nicht) 7.Verifizierer zieht ein zufälliges a aus GF(q) 8.Rekursiv wird nun getestet, ob s(a)= x 2 2 {0,1} … x n 2 {0,1} P(a,x 2,…,x n ) 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(n 2 ) 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 x 1 2 {0,1} … x n 2 {0,1} P (x 1,…,x n ) 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/2 n Es gilt d · n 2 für DNF Formeln mit n Termen, und n Variablen, wir erhalten also eine Schranke von 1-n 3 /2 n

11 Beweis des Lemmas K x 1 2 {0,1} … x n 2 {0,1} P(x 1,…,x n ) 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/2 n ) 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(n 3 ) 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 L 2 IP, dann können wir ein AM-Beweissystem mit poly(n) Runden angeben, das Vollständigkeit 1 und Korrektheit 2/3 hat. x 2 L: 9 m 1, 8 m 2 9 m 3 …: V(m 1,…,m l, x) akzeptiert x nicht 2 L: 8 m 1 9 m 2 8 m 3 …: V(m 1,…,m l, x) akzeptiert nicht V ist eine deterministische Maschine mit polynomieller Laufzeit Auf polynomiellem Platz können wir alle Belegungen von m 1,…,m l durchlaufen, und dann V simulieren.

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

16 Arithmetisierung von QBF Gegeben ist eine QBF F= 9 x 1 8 x 2 … 9 x n (x 1,…,x n ) ist eine aussagenlogische Formel Wir arithmetisieren F ist wahr, gdw. x 1 2 {0,1} x 2 2 {0,1} x 3 2 {0,1} … x n 2 {0,1} P (x 1,…,x n ) > 0


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

Ähnliche Präsentationen


Google-Anzeigen