Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

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

Ähnliche Präsentationen


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

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

2 Skalierung Man kann das Ergebnis NEXP=PCP(poly,poly) herunterskalieren um zu erhalten: –NP=PCP(polylog(n), polylog(n)) Tatsächlich gilt sogar: Theorem 12.1 (PCP-Theorem) –NP=PCP(O(log n), O(1)) Dies impliziert auch Theorem 12.2 –PCP(0,exp(poly(n)))=NEXP= PCP(poly(n),O(1))

3 Ein schwaches PCP Ergebnis Wir wollen nur folgendes zeigen: Lemma 12.3 –NP µ PCP(poly(n),O(1)) Damit erhalten wir Beweise exponentieller Länge für SAT, die nur an konstant vielen Stellen geprüft werden müssen

4 Hadamard Codes Wir brauchen spezielle fehlerkorrigierende Codes Seien x,y aus Z 2 n x ± y := i x i y i mod 2 = © i x i y i Definition 12.4 –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 Der Hadamard Code hat damit eine Länge von 2 n

5 Hadamard Codes Wichtigste Eigenschaft von Codes: Distanz Codes haben Distanz k, wenn für zwei verschiedene u,v gilt: C(u) und C(v) haben mind. k unterschiedliche Bits Hadamard Codes haben Distanz 2 n /2: –Wenn u v, dann gilt für 2 n /2 strings x: –u ± x v ± x (Übung)

6 Hadamard Codes Hadamard Codeworte sind genau die linearen Funktionen Z 2 n ! Z 2 In unserem Beweissystem werden wir vermeintliche Hadamard Codeworte testen müssen D.h. wir brauchen einen Linearitätstest Sei f(x) das Codewort von u (als Funktion) Dazu könnten wir für alle x,y testen, ob f(x © y)=f(x) © f(y) Effizient können wir wieder nur testen, ob f entfernt von einer linearen Funktion ist.

7 Linearität Gegeben sei eine Funktion f(x) : Z 2 n ! Z 2 Wir wollen entscheiden, ob f linear ist, oder nur - approximativ linear ist (d.h. auf höchstens einem 1- Anteil aller Eingaben mit einer linearen Funktion übereinstimmt) Theorem 12.5 –Sei f eine Funktion mit Prob x,y (f(x © y)=f(y) © f(y)) ¸ für >0.5. Dann ist f (1- )-approximativ linear Beweis (lassen wir weg): basiert auf Fourier Transformation über Z 2 n ; approximativ lineare Funktionen haben einen großen Fourier Koeffizienten

8 Ein Linearitätstest 1.Wiederhole 5/ mal unabhängig: a)Wähle x,y zufällig b)Teste ob f(x © y)=f(x) © f(y) 2.Akzeptiere, wenn jeder Test bestanden Lemma 12.5 –Obiger Test akzeptiert jede lineare Funktion, und verwirft jede Funktion, die nur -approximativ linear ist, mit Ws. 0.99

9 Beweis Wenn f linear ist, wird offensichtlich akzeptiert Wenn f nur ¸ -approximativ linear ist wird, wird jeder der Tests in 1. mit Ws. · 1- akzeptieren nach 12.4. Die Wahrscheinlichkeit, alle Tests zu bestehen ist damit höchstens (1- ) 5/ · 0.01

10 Lokale Dekodierung Wir können noch mehr erreichen: –Sei f ein Codewort mit Fehlern –Gegeben ein x, wollen wir f(x) bestimmen, mit möglichst wenig Fragen an f –D.h. ein Bit des Codeworts f(x) bestimmen unter Inspizierung weniger f(x) Wenn f(x) korrekt ist, bedeutet dies eine Frage Was wenn f(x) nur 1- -approximativ zu einem Codewort f(x) ist? Mit Ws. über die Wahl von x können wir f(x) bestimmen Können wir auch für andere x f(x) bestimmen?

11 Lokale Dekodierung 1.Wähle y 2 Z 2 n zufällig 2.Setze z=x © y 3.Frage f(y) und f(z) 4.Ausgabe f(y) © f(z) Lemma 12.6 –Obiger Test bestimmt f(x) mit Ws. 1-2 für jede Funktion f die -approximativ zu f ist, für alle x

12 Beweis y und z sind uniform zufällig Daher sind f(y)=f(y) und f(z)=f(z) jeweils mit Ws. 1- Beide sind korrekt mit Ws. mind. 1-2 Es gilt f(x)=f(y © z)=f(y) © f(z) D.h. mit Ws. 1-2 gilt f(x)=f(y) © f(z) Die Wahrscheinlichkeit hängt nur von der Wahl von y ab, nicht von x! Wir erhalten eine Prozedur, die für alle x, f(x) bestimmt, mit Wahrscheinlichkeit 1-2

13 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

14 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 Gleichung ü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 12.6 –QUADEQ ist NP-vollständig

15 Beweis Enthaltensein in NP ist trivial Die Reduktion von 3-SAT in 2 Schritten: –Reduktion auf NAE-3-SAT –Reduktion auf QUADEQ NAE-3-SAT [Not-All-Equal-3-SAT] –Gegeben ist eine Menge von 3-Klauseln –Eine Klausel ist erfüllt von einer Belegung der Variablen, wenn nicht alle der Literale in der Klausel den gleichen Wert haben –Eine Menge von Klauseln liegt in NAE-3-SAT, wenn alle Klauseln obige Bedingung erfüllen Beispiel: –Klausel (x,y,z), wird erfüllt von x=1,y=0,z=0, aber nicht von x=y=z=0 und nicht von x=y=z=1

16 Beweis NAE-3-SAT ist NP-vollständig –Reduktion von 3-SAT –Es gebe n Variablen und m Klauseln –Wir bilden jede Klausel einer 3-SAT Formel ab auf eine NAE-3-SAT Formel –Wir verwenden 2m+1 neue Variablen: für jede Klausel Variablen a,b und eine (globale) Variable w –Klausel (x _ y _ z) wird auf (x, : a,b) ^ (y,z, : b) ^ (a,w) abgebildet –Das Komplement einer erfüllenden Belegung für NAE- Formeln ist ebenfalls erfüllend –Daher nehmen wir an, dass w=0 gilt. –Dann sind alle a Variablen =1 in erf. Belegungen –Jetzt ist leicht zu sehen, dass (x,0,b) ^ (y,z, : b) genau dann erfüllt werden kann (durch Setzen von b), wenn (x _ y _ z) gilt

17 Beweis Reduktion auf QUADEQ: Literal x wird dabei zu –x, wenn x Variable –1-, wenn x= : negierte Variable Für eine NAE-Klausel (x,y,z) verwenden wir eine Gleichung x+y+z+xy+xz+yz=1 Für eine NAE-Klausel (x,y) verwenden wir eine Gleichung x+y=1 Klar: Wenn (für 3-er Klauseln) genau eines der x,y,z wahr ist, dann ist die Gleichung wahr, ebenso, wenn zwei der Literale x,y,z wahr 1 sind aber nicht, wenn 3 oder 0 der Literale 1 sind Analog für 2-Klauseln

18 Das Beweissystem Wir wollen ein Beweissystem für QUADEQ angeben Eingabe ist eine QUADEQ Instanz Wir betrachten die Eingabeinstansz wie folgt –u 1,…, u n seien die Variablen (ein Spaltenvektor) –U sei ein n 2 -dim. Vektor 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

19 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 f von u und F von U=u ­ u einer erfüllenden Belegung u f,F seien durch den Beweiser gegeben Unser Verifizierer: 1.Teste, ob f und F 0.01-approximativ linear sind 2.Teste ob U=u ­ u ist 3.Teste, ob u erfüllend ist ( 2.,3. mit Hilfe von f,F) Bemerkung: –Weil nach bestandenem Schritt 1. f,F fast linear sind, können wir jedes f(x),F(x) mit hoher Wahrscheinlichkeit bestimmen wegen lokaler Dekodierbarkeit


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

Ähnliche Präsentationen


Google-Anzeigen