Inklusi terbalik jelas, karena fakta bahwa setiap bahasa NP yang dapat direduksi sendiri dalam BPP juga dalam RP. Apakah ini juga diketahui berlaku untuk bahasa NP yang tidak dapat direduksi sendiri?
cc.complexity-theory
derandomization
pseudorandomness
bppcapnpvsrp
sumber
sumber
Jawaban:
Seperti kebanyakan pertanyaan dalam kompleksitas, saya tidak yakin akan ada jawaban lengkap untuk waktu yang sangat lama. Tetapi setidaknya kita dapat menunjukkan bahwa jawabannya adalah non-relativizing: ada nubuat relatif yang memegang ketidaksetaraan dan satu relatif yang dimiliki kesetaraan. Ini cukup mudah untuk memberikan oracle relatif yang kelasnya sama: setiap oracle yang memiliki B P P = R P akan bekerja (misalnya setiap oracle relatif yang "keacakan tidak banyak membantu"), seperti halnya oracle yang memiliki N P ⊆ B P P (misalnya oracle relatif yang "keacakan banyak membantu"). Ada banyak ini, jadi saya tidak akan repot dengan spesifik.B P P = R P N P ⊆ B P P
Ini agak lebih menantang, meskipun masih cukup mudah, untuk merancang sebuah oracle relatif terhadap mana kita mendapatkan R P ⊊ B P P ∩ N P . Konstruksi di bawah ini sebenarnya sedikit lebih baik: untuk konstanta c , ada oracle relatif yang ada bahasa di c o R P ∩ U P yang tidak dalam R P T I M E [ 2 n c ] . Saya akan uraikan di bawah ini.R P ⊊ B P P ∩ N P c c o R P ∩ U P R P T I M E [ 2nc]
Kami akan merancang oracle A yang berisi string dari bentuk ( x , b , z ) , di mana x adalah string n- bit, b adalah bit tunggal, dan z adalah string bit dengan panjang 2 n c . Kami juga akan memberikan bahasa L A yang akan diputuskan oleh mesin c o R P dan mesin U P sebagai berikut:SEBUAH (x,b,z) x n b z 2nc LA coRP UP
Untuk membuat mesin yang ditentukan di atas benar-benar memenuhi janjinya, kita perlu A untuk memenuhi beberapa properti. Untuk setiap x , salah satu dari dua opsi ini harus menjadi kasus:A x
Tujuan kami adalah untuk menentukan A memuaskan janji-janji ini sehingga L A mendiagonalisasi terhadap setiap R P T I M E [ 2 n c ] mesin. Untuk mencoba membuat jawaban yang sudah lama ini singkat, saya akan menjatuhkan mesin konstruksi oracle dan banyak detail yang tidak penting, dan menjelaskan cara mendiagonalisasi terhadap mesin tertentu. Perbaiki M sebagai mesin Turing acak, dan biarkan x menjadi input sehingga kita memiliki kontrol penuh atas pemilihan b dan z sehingga ( x , b , zA LA RPTIME[2nc] M x b z ) ∈ A . Kami akan memecah M pada x .(x,b,z)∈A M x
Kasus 1: Misalkan ada cara untuk memilih z sehingga A memenuhi opsi pertama dari janjinya, dan M memiliki pilihan keacakan yang menerimanya. Maka kita akan komit A untuk seleksi ini. Kemudian M tidak dapat secara bersamaan memenuhi R P janji dan menolak x . Namun demikian, x ∉ L A . Jadi kita telah didiagonalkan terhadap M .z A M A M RP x x∉LA M
Kasus 2: Selanjutnya, asumsikan bahwa kasus sebelumnya tidak berhasil. Sekarang kita akan menunjukkan bahwa kemudian M dapat dipaksa baik untuk memecahkan R P janji atau menolak pada beberapa pilihan A memuaskan pilihan kedua dari janjinya. Ini mendiagonalisasi terhadap M . Kami akan melakukan ini dalam dua langkah:M RP A M
Memang, jika kita mulai dengan A dari langkah 1, probabilitas penerimaan M adalah nol. A tidak cukup memuaskan pilihan kedua dari janjinya, tetapi kita kemudian dapat membalik sedikit seperti pada langkah 2 dan itu akan. Sejak membalik bit menyebabkan M 's penerimaan probabilitas untuk tinggal mendekati nol, maka bahwa M tidak dapat secara bersamaan menerima x dan memenuhi R P janji.A M A M M x RP
Masih memperdebatkan dua langkah dalam Kasus 2:
Perbaiki pilihan acak bit r untuk M . Sekarang mensimulasikan M menggunakan r sebagai keacakan dan menjawab pertanyaan sehingga ( x , 0 , z ) ∈ A dan ( x , 1 , z ) ∉ A . Perhatikan bahwa M membuat paling 2 n c queries. Karena ada 2 2 n c pilihan z , kita dapat memperbaiki pilihan unqueried dari z untuk memiliki ( xr M M r (x,0,z)∈A (x,1,z)∉A M 2nc 22nc z z , 0 , z ) ∉ A , dan punya A masih memenuhi opsi pertama dari janjinya. Karena kami tidak dapat membuat Kasus 2 berfungsi untuk M , ini berarti M harus menolak semua pilihan keacakannya relatif terhadap A , dan khususnya pada r . Oleh karena itu jika kita memilih A untuk memiliki ( x , 0 , z ) ∈ A dan ( x , 1 , z ) ∉ A untuk setiap pilihan z(x,0,z)∉A A , Maka untuk setiap pilihan acak bit r , M menolak relatif terhadap A .
Misalkan untuk setiap z , fraksi bit acak yang M query ( x , 1 , z ) setidaknya 1 / 2 . Maka jumlah total kueri setidaknya 2 2 n c 2 2 n c / 2 . Di sisi lain, M membuat paling banyak 2 2 n c 2 n c query di semua cabangnya, sebuah kontradiksi. Oleh karena itu ada pilihan z sehingga fraksi bit acak untuk yang Mkueri ( x , 1 , z ) kurang dari 1/2. Membalik nilai A pada string ini karena mempengaruhi peluang diterima M oleh kurang dari 1 / 2 .
sumber
Tidak, tidak diketahui. Ini mungkin bukan bukti yang paling meyakinkan, tetapi lihat pencarian Google ini .
sumber