Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

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

Ähnliche Präsentationen


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

1 Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/

2 NP vs. PCP Wir wollen NP µ PCP(poly,O(1)) zeigen Wir müssen ein Beweissystem für SAT konstruieren Wir verwenden ein anderes vollständiges Problem stattdessen: –Quadratische Gleichungen über Z 2

3 Hadamard Codes Seien x,y aus Z 2 n x ± y := i x i y i mod 2 = © i x i y i Definition Für ein u 2 {0,1} n =Z 2 n sei die Hadamard Kodierung C(u) die Tabelle der Funktion f(x)=u ± x mit x 2 Z 2 n Hadamard Codeworte sind damit genau die linearen Funktionen über Lemma [lokale Dekodierbarkeit] Angenommen g sei -approximativ zu f=C(u). Es gibt einen Algorithmus, der mit 2 Fragen an g zu jedem x den Wert f(x) mit Ws. 1-2 bestimmt.

4 Hadamard Codes Hadamard Codes haben Distanz 2 n /2, bei Codelänge 2 n. Das bedeutet, dass für u v gilt: –f=C(u) unterscheidet sich von g=C(v) an 50% der Eingaben, [d.h. f(x) g(x) für 50% aller x] –f(x)=u ± x= i u i ^ x i Anders formuliert: –Sei u v –Wenn für eine zufällige Teilmenge I µ {1,…,n} alle u i bzw. alle v i mit i 2 I addiert werden, unterscheidet sich das Ergebnis mit Ws. 1/2

5 Quadratische Gleichungen Eine quadratische Gleichung über Z 2 ist von der Form i,j a ij u i u j =b für Variablen u 1...u n mit Koeffizienten a i,j und b aus Z 2 Eine Instanz von QUADEQ ist eine Menge von Gleichungen über Variablen u 1,…,u n Eine Instanz ist erfüllbar, wenn alle Gleichungen simultan erfüllbar sind [durch eine Belegung von (u 1,…,u n ) aus Z 2 n ] Lemma –QUADEQ ist NP-vollständig

6 Tensorprodukt Das Tensorprodukt u ­ v zweier Vektoren u,v 2 Z 2 n ist ein n 2 langer Vektor w mit w(i,j)=u i v j

7 Das Beweissystem Wir wollen ein Beweissystem für QUADEQ angeben Eingabe ist eine QUADEQ Instanz Wir betrachten die Eingabeinstanz wie folgt –u 1,…, u n seien die Variablen (ein Spaltenvektor) –U sei ein n 2 -dim. Spaltenvektor mit U[i,j]=u i u j –Wir schreiben dann auch U=u ­ u [Tensorprodukt] –b sei ein Vektor der rechten Seiten der k Gleichungen –A sei eine k £ n 2 Matrix, so dass AU=b das Gleichungssystem darstellt –Eine Instanz von QUADEQ ist somit durch A,b gegeben

8 QUADEQ Wir wollen ein Beweissystem für die Erfüllbarkeit quadratischer Gleichungssysteme über Z 2 n angeben Wir erwarten als korrekten Beweis die Hadamard Codes von u und von U=u ­ u zu einer erfüllenden Belegung u g,G seien durch den PCP-Beweis gegeben Unser Verifizierer (grob): 1.Teste, ob g und G approximativ linear sind 2.Teste ob U=u ­ u ist 3.Teste, ob u erfüllend ist ( 2.,3. mit Hilfe von g,G)

9 Schritt 1 Wir haben den Linearitätstest schon angegeben. Mit Ws werden alle g,G verworfen, die nicht approximativ linear sind Wir gehen daher davon aus, das es f,F gibt, die linear sind, und auf einem Anteil ihrer Einträge mit g,G übereinstimmen Weiterhin können wir f(x) und F(x) für jedes x mit Ws bestimmen (durch je 2 Fragen an g bzw. G), wegen lokaler Dekodierbarkeit

10 Bemerkung Der restliche Test stellt nur 17 Fragen an f oder F, wir gehen daher davon aus, dass der Beweis tatsächlich f,F enthält, also Hadamard Codes von strings u,W –Denn: mit guter Ws. ist die Dekodierung von f(x),F(x) für alle 17 Fragen erfolgreich: –Prob(es gibt einen Fehler) · 17 ¢ 0.002<1/20

11 Schritt 2 Wir wollen testen, ob W=u ­ u 1.Wiederhole 5 mal: i.Ziehe r,r uniform aus Z 2 n ii.Teste ob f(r)f(r)=F(r ­ r) 2.Akzeptiere, wenn alle Tests bestanden Korrekte Beweise (W=u ­ u) werden immer akzeptiert, denn

12 Schritt 2 Angenommen, W U=u ­ u Behauptung 13.1: Jeder der 5 Tests in Schritt 2 verwirft mit Ws. mindestens 1/4 Dann ist die Gesamtwahrscheinlichkeit, zu verwerfen mindestens 1-(3/4) 5 >3/4

13 Beweis der Behauptung Wir betrachten jetzt W als eine n £ n Matrix, ebenso U U=u ¢ u T ; U[i,j]=u i u j r sei ein Zeilenvektor, r ein Spaltenvektor

14 Beweis der Behauptung Dann gilt

15 Beweis der Behauptung Der Verifizierer verwirft also, wenn (für mind. ein gewähltes r,r) gilt: rWr rUr Mindestens 1/2 aller r erfüllen rW rU wegen der Distanzeigenschaft von Hadamard Codes: –U W ) es gibt i,j mit U[i,j] W[i,j] –) rW[j] = t=1...n r t W[t,j] t r t U[t,j] =rU[j] mit Wahrscheinlichkeit 1/2 Für jedes r mit rW rU gilt ebenso: –Mindestens 1/2 aller r erfüllen rWr rUr Damit folgt die Behauptung, dass rWr rUr mit Ws ¸ 1/4.

16 Zusammenfassung 1 und 2 Wir erhalten somit, dass der PCP- Beweis aus Hadamard Codes für u und für u ­ u besteht, wenn Schritte 1 und 2 mit hoher Wahrscheinlichkeit bestanden wurden.

17 Schritt 3 Wir müssen nun noch testen, ob u eine erfüllende Belegung ist Zuerst betrachten wir den Fall, dass es nur eine Gleichung gibt (die t-te Gleichung). Setze z t =A t,( ¢, ¢ ) mit 1 · i,j · n Die linke Seite der Gleichung ist einfach F(z t )=U ± z t, wir wollen testen,ob F(z t )=b t Da der Verifizierer sowohl z t als auch b t kennt, kann er die Gleichung durch 1 Frage nach F(z t ) testen Tatsächlich enthält der Beweis in F=C(u ­ u) den Wert aller möglichen linken Seiten von Gleichungen

18 Schritt 3 Testen aller Gleichungen: Wir können natürlich nicht einfach alle i von 1 … k durchlaufen Idee: der Verifizierer wählt eine zufällige Teilmenge der Gleichungen, summiert diese modulo 2 und testet die erhaltene Gleichung Formal: wähle d 1,..,d k zufällig Neue Gleichung: Diese Gleichung kann durch 1 Frage an F getestet werden

19 Schritt 3 Wenn es ein t gibt, so dass u die Gleichung t nicht erfüllt, so ist der Vektor ungleich dem Vektor Damit gilt mit Ws. 1/2 über die Wahl der d, dass Der Test wird zwei mal wiederholt, um Fehlerwahrscheinlichkeit 1/4 zu erzielen

20 Analyse Vollständigkeit ist 1, da ein ehrlicher Beweis alle Tests besteht Korrektheit : –Falls g,G nicht approximativ linear, wird mit Ws verworfen –Wenn g,G approximativ linear sind, ist die Wahrscheinlichkeit eines Fehlers bei der lokalen Dekodierung höchstens 1/20 –Falls g,G 0.01-approximativ linear, aber zugehörige f,F,u,W nicht W=u ­ u erfüllen, wird mit Ws. 2/3 verworfen –Falls g,G 0.01-approximativ, zugehörige f,G erfüllen f=C(u),F=C(u ­ u), aber u ist nicht erfüllend, dann wird mit Ws. 3/4 verworfen. Insgesamt ist die Korrektheit damit mindestens 1-1/4-1/20>2/3

21 Zusammenfassung Insgesamt ist die Vollständigkeit 1, die Korrektheit 2/3 Zahl der Fragen: –Schritt 1: O(1) –Schritt 2: 15 –Schritt 3: 2 Zufall: In Schritten 2 und 3 ziehen wir insgesamt O(1) Zufallstrings der Länge n, d.h. wir verwenden O(n) Zufallsbits; Der Test in Schritt 1 für U benötigt allerdings O(n 2 ) Zufallsbits Damit ist NP µ PCP(O(n 2 ), O(1))

22 PCPs und Approximation Wir wollen die wichtigste Anwendung des PCP Theorems betrachten Theorem: –NP=PCP(O(log n),O(1)) Diese besteht darin, zu zeigen, dass es für bestimmte Optimierungsprobleme schwierig ist, diese gut zu approximieren

23 NP-Optimierungsprobleme Definition 13.2 [NPO-Probleme] –Ein NP-Optimierungsproblem P ist gegeben durch eine Menge I von Instanzen (Eingaben), eine Menge L von Lösungen, und zwei Funktionen, die in polynomieller Zeit berechenbar sind: feas P : I £ L ! {0,1} entscheidet auf x,y, ob y eine zulässige Lösung zu x ist cost P : I £ L ! R gibt die Kosten von y als Lösung zu x an Es gibt Maximierungs- und Minimierungsprobleme Beispiel: Clique –Instanzen sind alle ungerichteten Graphen –Lösungen sind Mengen von Knoten –feas P ist wahr, wenn Knotenmenge y eine Clique in Graph x ist –cost P gibt die Größe von y an Ein Algorithmus löst ein NP-Optimierungsproblem exakt, wenn er eine optimale Lösung zu jeder Eingabe bestimmt

24 Approximationsalgorithmen Die Entscheidungsversionen vieler NP- Optimierungsprobleme sind NP-vollständig –Clique, MaxCut, VertexCover, SetCover Was, wenn wir nicht die beste, sondern nur eine gute Lösung suchen? Definition 13.3 –Sei P ein NP-Optimierungsproblem –opt P (x) sei eine optimale Lösung von P auf x –Eine Lösung y habe Verlustfaktor, wenn cost P (x,y) · cost P (x,opt p (x)) für Minimierungsprobleme –Eine Lösung y habe Verlustfaktor, wenn cost P (x,y) ¸ cost P (x,opt p (x))/ für Maximierungsprobleme

25 Approximation Definition 13.4 –Ein Algorithmus, der in polynomieller Zeit zu einem NP-Optimierungsproblem für beliebige Eingaben x Lösungen mit Verlustfaktor berechnet, heißt -Approximationsalgorithmus für P

26 Ein Beispiel Das Problem Max-3-SAT ist wie folgt gegeben: –Instanzen sind Boolesche Formeln in 3-KNF Form Alle Klauseln haben genau 3 Literale –Zulässige Lösungen sind alle Belegungen der n Variablen –Die Kosten einer Lösung sind die Anzahl erfüllter Klauseln –Wir suchen Lösungen, die eine maximale Anzahl von Klauseln erfüllen Das Problem ist also ein NPO-Problem und NP- schwierig

27 Approximation durch Zufall Approximative Lösung für Max 3-SAT: –Ziehe alle n Variablen zufällig Es gebe m Klauseln Jede Klausel wird mit Wahrscheinlichkeit 1-1/8=7/8 erfüllt Die erwartete Anzahl erfüllter Klauseln ist somit: –Sei z i eine Indikatorzufallsvariable, die 1 ist wenn Klausel i erfüllt ist –Erwartete Anzahl erfüllter Klauseln ist E[ z i ]= E[z i ]=m ¢ 7/8 Wir erhalten somit erwartet eine 8/7 Approximation, denn das Optimum ist höchstens m

28 Bemerkung Dies zeigt, dass in jeder 3-KNF Formel mit m Klauseln (und genau 3 Literalen per Klausel) mindestens 7/8 m Klauseln simultan erfüllbar sind.

29 Methode des bedingten Erwartungswerts Wir wollen den obigen Algorithmus derandomisieren, d.h. einen deterministischen Algorithmus erhalten Betrachte die n Zufallswahlen als einen Baum, dessen Blätter mit den strings der Länge n markiert sind Der Erwartungswert E x [ i z i (x)] geht über alle Blätter x 1,…,x n Wir fixieren x 1 usw. nacheinander greedy. Dazu betrachten wir die bedingten Erwartungswerte E x [ z i (x)|x 1 =1] und E x [ z i (x)|x 1 =0] Da 7/8 ¢ m · E x [ i z i (x)]= 1/2( E x [ z i (x)|x 1 =1] + E x [ z i (x)|x 1 =0]) muss einer von beiden Termen größer als 7/8 m sein

30 Methode des bedingten Erwartungswerts Fixiere x 1 so, dass der Erwartungswert über die restlichen Variablen maximal ist und iteriere Am Ende erhalten wir eine Lösung mit Kosten mind. 7/8 m Allerdings: wie können wir die bedingten Erwartungswerte bestimmen? –Die bedingten Erwartungswerte sind leicht zu berechnen aufgrund der Linearität des Erwartungswertes: Nach Substitution der Variablen x 1,…,x i bleibt eine 3-KNF. 1-Klauseln haben eine Ws. von 1/2, erfüllt zu werden, 2- Klauseln 3/4, 3-Klauseln 7/8.


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

Ähnliche Präsentationen


Google-Anzeigen