Welten, auf denen es keine „unverwundbaren Generatoren“ gibt

10

Unverwundbare Generatoren sind wie folgt definiert:

Sei eine NP-Beziehung und eine Maschine, die akzeptiert . Informell ist ein Programm ein unverwundbarer Generator, wenn es bei Eingabe Instanz-Zeugen-Paare mit , gemäß einer Verteilung, unter der jeder Gegner mit Polynomzeit, dem gegeben wird , keinen Zeugen findet, dass mit erkennbarer Wahrscheinlichkeit für unendlich viele Längen .RML(R)1n(x,w)R|x|=nxxSn

Unverwundbare Generatoren, zuerst definiert von Abadi et al. fand viele Anwendungen in der Kryptographie.

Die Existenz der unverwundbaren Generatoren basiert auf der Annahme, dass , dies ist jedoch möglicherweise nicht ausreichend (siehe auch das verwandte Thema ).PNP

Satz 3 von Abadi et al. Das oben zitierte Papier zeigt, dass ein Beweis für die Existenz unverwundbarer Generatoren nicht relativiert:

Satz 3. Es gibt ein Orakel so dass und unverwundbare Generatoren relativ zu B nicht existieren.BPBNPB

Ich verstehe keinen Teil des Beweises dieses Satzes. Lassen bezeichnen die disjunkte Vereinigung Betrieb. Sei die PSPACE-vollständige Sprache zufriedenstellbarer quantifizierter Boolescher Formeln und sei eine äußerst spärliche Menge von Strings mit maximaler Kolmogorov-Komplexität. Insbesondere enthält eine Zeichenfolge jeder Länge , wobei die Folge definiert ist durch: , ist in dreifach exponentiell , für ; wenn und , dannQBFKKnin1,n2,n1=2n i - 1 i > 1 x K | x | = n x nnini1i>1xK|x|=nxhat Kolmogorov Komplexität .n

Die Papierzustände , die relativ zu gilt, dass . Können Sie erklären? (Bitte klären Sie auch, ob rekursiv ist.)PN P BB=QBFKPNPB

MS Dousti
quelle

Antworten:

7

Wenn sie nur über (nicht ressourcengebundene) Kolmogorov-Komplexität sprechen würden, wäre nicht berechenbar (andernfalls könnten Sie einen Maschinenrechner , um kurze Beschreibungen der Zeichenfolgen , da Sie nur beschreiben müssen die Maschine und die Länge von , und wir haben aber ), daher wäre auch nicht berechenbar.K x K N x K ( x ) = n K ( n ) log n BKKxKnxK(x)=nK(n)lognB

Das Papier Abadi et al. Die Referenz ( Hartmanis. Verallgemeinerte Kolmogorov-Komplexität und die Struktur realisierbarer Berechnungen. FOCS 1983. ) verwendet eine ressourcengebundene Version der Kolmogorov-Komplexität. Sei eine effiziente universelle Turingmaschine. Definieren Sie als die Mengen von Zeichenfolgen so dass es eine Zeichenfolge der Länge so dass und die Berechnung von höchstens Zeit benötigt. Oben in der zweiten Spalte auf S. In 444 dieses Papiers beschreibt Hartmanis, wie man dieses Konzept verwendet, um ein (berechenbares) Orakel zu konstruieren, relativ zu demK U [ f ( n ) , g ( n ) ] x d | d | f ( | x | ) x = U ( d ) U ( d ) g ( | x | ) P N P.UKU[f(n),g(n)]xd|d|f(|x|)x=U(d)U(d)g(|x|)PNP.

Hier ist Hartmanis 'Idee, angepasst an Abadi et al. Ergebnis. Sei und (was meiner Meinung nach die von Ihnen beschriebene Funktion ist). Konstruieren Sie durch Standarddiagonalisierung (z. B. wie im Zeithierarchiesatz) eine Strichmenge so, dass und . Platzieren Sie nun die erste Zeichenfolge der Länge von in iff . Da , haben wir .tow3(1)=2tow3(n+1)=222nCC{1tow3(n):n1}CTIME[nlogn]Ptow3(n)K[logn,nlogn]K[logn,nloglogn]K1tow3(n)CC={1n:(x)[|x|=n and xK]}CNPK

Wir haben auch , also . Nehmen wir im Widerspruch an, dass . Dann gibt es eine Polyzeit-Orakelmaschine so dass . Ich behaupte, dass dies impliziert (ohne das Orakel!), Was der Konstruktion von widerspricht . Hier ist der Poly-Time-Algorithmus: bei Eingabe :CPKPKNPKCPKMC=L(MK)CPCx=1tow3(n0)

  1. Berechnen Sie alle Zeichenfolgen in einer Länge von weniger als. Dies kann in Polynomzeit erfolgen, da alle diese Zeichenfolgen höchstensund wir müssen nur die Berechnung von an noch kleineren Strings für Zeiträume testen, die im Vergleich zu noch sehr klein sind .K|x|logloglog|x|U(d)d|x|

  2. Führen Sie und simulieren Sie Orakelabfragen für kleinere Zeichenfolgen mit den Ergebnissen von (1). Wenn jemals eine Zeichenfolge der Länge abfragt , simulieren Sie diese Abfrage mit einer "NEIN" -Antwort.M(x)M(x)|x|

Der Grundschritt (2) funktioniert so, dass bei ausreichend großen Eingabelängen, wenn es eine Zeichenfolge dieser Länge gibt, nicht abfragen kann , so dass wir alle derartigen Abfragen mit einer NEIN-Antwort simulieren können. Wenn es abfragen würde, hätten wir (wobei die Laufzeit von ), was der Tatsache widerspricht, dass wir , um nicht in .M K y y y K [ log n , n k ] n k M y K [ log n , n log log n ]yKMK yyyK[logn,nk]nkMy K[logn,nloglogn]

Joshua Grochow
quelle
Sehr detailliert und gut geschrieben. Danke Joshua!
MS Dousti