Die umgekehrte Einbeziehung ist offensichtlich, ebenso wie die Tatsache, dass jede selbstreduzierbare NP-Sprache in BPP auch in RP enthalten ist. Ist dies auch für nicht selbstreduzierbare NP-Sprachen bekannt?
cc.complexity-theory
derandomization
pseudorandomness
bppcapnpvsrp
quelle
quelle
Antworten:
Wie bei den meisten Fragen der Komplexität bin ich mir nicht sicher, ob es für eine sehr lange Zeit eine vollständige Antwort geben wird. Aber wir können zumindest zeigen, dass die Antwort nicht relativierend ist: Es gibt ein Orakel, für das Ungleichheit gilt, und eines, für das Gleichheit gilt. Es ist ziemlich einfach, ein Orakel zu geben, bei dem die Klassen gleich sind: Jedes Orakel mit funktioniert (z. B. jedes Orakel, bei dem "Zufälligkeit nicht viel hilft") wird jedes Orakel, das (z. B. jedes Orakel, bei dem "Zufälligkeit viel hilft"). Es gibt viele davon, daher werde ich mich nicht um die Einzelheiten kümmern.N P ⊆ B P P.BPP=RP NP⊆BPP
Es ist etwas schwieriger, wenn auch noch recht einfach, ein Orakel zu entwerfen, für das wir . Die folgende Konstruktion ist tatsächlich etwas besser: Für jede Konstante gibt es ein Orakel, zu dem es eine Sprache in die nicht in . Ich werde es unten skizzieren. c c o R P ∩ U P R P T I M E [ 2 n c ]RP⊊BPP∩NP c coRP∩UP RPTIME[2nc]
Wir werden ein Orakel entwerfen , das Zeichenfolgen der Form , wobei eine Bit-Zeichenfolge ist, ein einzelnes Bit ist und eine Bitzeichenfolge der Länge . Wir werden auch eine Sprache , die von einer -Maschine und einer -Maschine wie folgt entschieden wird:( x , b , z ) x n b z 2 n c L A c o R P U P.A (x,b,z) x n b z 2nc LA coRP UP
Damit die oben genannten Maschinen tatsächlich ihre Versprechen erfüllen, benötigen wir , um einige Eigenschaften zu erfüllen. Für jedes muss eine dieser beiden Optionen der Fall sein:xA x
Unser Ziel wird es sein, zu spezifizieren , das diese Versprechen erfüllt, so dass gegen jede Maschine diagonalisiert . Um zu versuchen, diese bereits lange Antwort kurz zu halten, werde ich die Orakelbaumaschinen und viele unwichtige Details fallen lassen und erklären, wie man gegen eine bestimmte Maschine diagonalisiert. Fix eine randomisierte Turing Maschine, und lassen ein Eingang sein , so dass wir die volle Kontrolle über die Auswahl haben 's und ist so , dass . Wir werden auf brechen .L A R P T I M E [ 2 n c ] M x b z ( x , b , z ) ∈ A M xA LA RPTIME[2nc] M x b z (x,b,z)∈A M x
Fall 1: Angenommen, es gibt eine Möglichkeit, die so auszuwählen , dass die erste Option seines Versprechens erfüllt und eine Zufallsauswahl hat, die akzeptiert. Dann werden wir für diese Auswahl festlegen. Dann kann das Versprechen nicht gleichzeitig erfüllen und ablehnen . Dennoch . Wir haben also gegen diagonalisiert .A M A M R P x x ∉ L A M.z A M A M RP x x∉LA M
Fall 2: Nehmen Sie als nächstes an, dass der vorherige Fall nicht geklappt hat. Wir werden nun zeigen, dass dann gezwungen werden kann, entweder das Versprechen zu brechen oder eine Auswahl von abzulehnen, die die zweite Option seines Versprechens erfüllt. Diese diagonalisiert gegen . Wir werden dies in zwei Schritten tun:R P A M.M RP A M
Wenn wir ab Schritt 1 mit beginnen , ist die Akzeptanzwahrscheinlichkeit von tatsächlich Null. erfüllt die zweite Option seines Versprechens nicht ganz, aber wir können dann ein einzelnes Bit wie in Schritt 2 umdrehen und es wird. Da das Umdrehen des Bits dazu führt , dass die Akzeptanzwahrscheinlichkeit von nahe Null bleibt, kann nicht gleichzeitig akzeptieren und das Versprechen erfüllen .M A M M x R P.A M A M M x RP
Es bleiben die beiden Schritte in Fall 2 zu argumentieren:
Fix eine Auswahl von zufälligen Bits für . Nun Simulieren unter Verwendung als die Zufälligkeit und die Beantwortung der Anfragen , so dass und . Beachten Sie, dass höchstens Abfragen macht. Da es Auswahlmöglichkeiten von , können wir die nicht erfassten Auswahlmöglichkeiten von festlegen , dass sie haben und immer noch die erste Option von erfüllt sein Versprechen. Da Fall 2 für nicht funktionieren konnte , bedeutet diesM M r ( x , 0 , z ) ∈ A ( x , 1 , Z ) ∉ A M 2 n c 2 2 n c z z ( x , 0 , z ) ∉ A A M M A R A ( x , 0 , z ) ∈ A ( x , 1 ,r M M r (x,0,z)∈A (x,1,z)∉A M 2nc 22nc z z (x,0,z)∉A A M M muss bei all seinen Zufallsentscheidungen in Bezug auf und insbesondere bei ablehnen . Daraus folgt, dass wenn wir auswählen , um und für jede Wahl von , dann für jede Wahl von Zufallsbit , verwirft zum relativen .A r A (x,0,z)∈A z r M A.(x,1,z)∉A z r M A
Angenommen, für jedes der Bruchteil der Zufallsbits, für die Abfragen mindestens . Dann beträgt die Gesamtzahl der Abfragen mindestens . Andererseits macht höchstens Abfragen über alle seine Zweige hinweg, ein Widerspruch. Daher gibt es eine Wahl von so dass der Bruchteil der Zufallsbits, für die Abfragen kleiner als 1/2 ist. Das Umdrehen des Wertes von in dieser Zeichenfolge beeinflusst daher die Akzeptanzwahrscheinlichkeit von um weniger als .M ( x , 1 , Z ) 1 / 2 2 2 n c 2 2 n c / 2 M 2 2 n c 2 n c z M ( x , 1 , Z ) A M 1 / 2z M (x,1,z) 1/2 22nc22nc/2 M 22nc2nc z M (x,1,z) A M 1/2
quelle
Nein, es ist nicht bekannt. Dies ist möglicherweise nicht der überzeugendste Beweis, aber werfen Sie einen Blick auf diese Google-Suche .
quelle