dan adalah dua kelas kompleksitas probabilistik dasar.
adalah kelas bahasa yang diputuskan oleh algoritma Turing polinomial-waktu probabilistik di mana probabilitas algoritma mengembalikan jawaban yang salah dibatasi, yaitu probabilitas kesalahan paling banyak (untuk instance YA dan TIDAK).
Di sisi lain, algoritma dapat dilihat sebagai orang algoritma probabilistik yang tidak pernah kembali jawaban yang salah, setiap kali mereka kembali jawaban itu benar. Namun waktu berjalan mereka tidak dibatasi oleh polinomial, mereka berjalan dalam polinomial yang diharapkan.
Misalkan menjadi kelas bahasa diputuskan oleh algoritma probabilistik dengan probabilitas nol kesalahan dan diharapkan berjalan-waktu . Ini juga disebut sebagai algoritma Las Vegas dan .
Pertanyaan saya adalah apa yang paling tahu simulasi algoritma menggunakan algoritma Las Vegas? Bisakah kita mensimulasikan mereka dalam waktu yang diharapkan subeksponensial? Apakah ada perbaikan yang diketahui dari simulasi brute-force sepele yang membutuhkan waktu eksponensial?
Lebih formal, apakah kita tahu jika atau untuk beberapa ?
sumber
Jawaban:
Pertama, amati bahwa jika untuk beberapa konstan c , maka B P P ≠ N E X P . (Bukti oleh hierarki waktu nondeterministik.) Jadi membuktikan inklusi semacam itu akan menjadi signifikan, bukan hanya karena ini merupakan simulasi yang ditingkatkan tetapi juga akan menghasilkan kemajuan pertama pada batas waktu acak yang lebih rendah dalam beberapa dekade.BPP⊆ZPTIME[2nc] c BPP≠NEXP
Berikutnya, pertimbangkan kelasPromiseBPP , yang masalah berikut adalah " -hard":PromiseBPP
Hasil Impagliazzo, Kabanets, dan Wigderson 2002 menyiratkan bahwa waktu algoritma nol-kesalahan untuk CAPP (di mana n adalah ukuran C ) akan berarti N E X P ⊄ P / p o l y . Dalam STOC'10, saya memperluas ini untuk menunjukkan: seandainya untuk setiap C dengan bit input k dan ukuran n , seseorang dapat menghitung CAPP nondeterministis (jadi, nol-kesalahan mencukupi) dalam 2 k - ω ( log k ) p o l y (2nε n C NEXP⊄P/poly C k n waktu, lalu N E X P ⊄ P / p o l y . Artinya, tentu saja ada masalah yang dapat dikomputasi dengan keacakan kesalahan dua sisi, di mana algoritma zero-error yang bahkan sedikit mengalahkan pencarian lengkap akan menyiratkan batas bawah sirkuit. Saya percaya ini harus ditafsirkan sebagai metode yang mungkin untuk membuktikan batas bawah; jarak tempuh Anda dapat bervariasi.2k−ω(logk)poly(n) NEXP⊄P/poly
Perhatikan bahwa bahkan membuktikan juga terbuka, dan membuktikan bahwa juga akan berarti batas bawah: oleh Kabanets dan Impagliazzo 2004, jika pengujian identitas polinomial (a c o R P masalah) adalah dalam Z P T I M E [ 2 n ε ] untuk semua ε > 0 , maka kita memiliki batas yang lebih rendah untuk Permanen atau N E X PRP⊆ZPTIME[2nε] coRP ZPTIME[2nε] ε>0 N E X P . Baru-baru ini (mendatang di STOC'13), saya membuktikan tanpa syarat bahwa atau R T I M E [ 2 n ] memiliki sirkuit ukuran n c , membangun metode "saksi mudah" dari Kabanets. Ini menyiratkan dua hal:B P P ⊆ i o Z P T I M E [ 2nε] / nε R T I M E [ 2n] nc
Ada sehingga untuk semua ε > 0 , R P adalah tanpa syarat di i o Z P T I M E [ 2 n ε ] / n c - ini adalah tentang derandomization tanpa syarat terbaik dari R P / B P P di Z P P yang kita kenal selama ini.c ε > 0 R P I o Z P T I M E [ 2nε] / nc R P / B P P Z P P
Untuk mulai mendapatkan simulasi subeksponensial yang menarik dari , Anda "hanya" harus mengasumsikan R T I M E [ 2 n ] tidak memiliki sirkuit ukuran polinomial tetap.BPP RTIME[2n]
sumber
Itu tergantung pada asumsi apa yang ingin Anda buat.
Di bawah asumsi kekerasan tertentu, yaitu , Anda mendapatkan bahwa P = B P P . Ini secara khusus mengimplikasikan bahwa B P P = Z P P , dan oleh karena itu setiap bahasa L ∈ B P P diterima oleh mesin Las Vegas (lihat "P = BPP kecuali E memiliki Sirkuit Sub-Responsif: Melakukan Penguraian Simbol XOR Lemma", oleh Impagliazzo dan Wigderson).E⊈SIZE(2εn) P=BPP BPP=ZPP L∈BPP
Anda juga dapat membuat asumsi lebih ringan kekerasan, yaitu, bahwa , dan mendapatkan bahwa B P P = Z P P (lihat Lemma 46 di "Dalam mencari sebuah saksi mudah: waktu eksponensial vs waktu polinomial probabilistik "oleh Impagliazzo, Kabanets dan Wigderson).ZPE⊈io−DTIME(2εn) BPP=ZPP
sumber
Kecuali ada kemajuan dalam derandomisasi, bagi saya seolah-olah persyaratan bahwa Mesin Las Vegas tidak membuat kesalahan adalah penting, sehingga ada sedikit atau tidak ada manfaat untuk memiliki keacakan sama sekali dalam kasus ini.
Untuk bahasa BPP diputuskan oleh algoritma A yang cocok , yang bekerja pada input x ∈ { 0 , 1 } n dan string acak r ∈ { 0 , 1 } N ( n ) mewakili pilihan acaknya, kriteria zero-error menyiratkan kriteria bahwa mesin Las Vegas harus memastikan dengan pasti mana dari kedua kasus Pr r ( A menerima ( x , r ) ) ⩾ 2L A x∈{0,1}n r∈{0,1}N(n) tahan. Jika kita tidak diberi informasi lebih lanjut tentangA, maka ini pada dasarnya adalah masalah janji oracle: diberi oracleA′komputasiA′(r)=A(x,r), dan diberi janji bahwaA′menghasilkan satu outputa∈{0,1}untuk setidaknya dua kali lebih banyak input dibandingkan dengan output1-a, tentukan output mana yang lebih umum.
Meskipun Mesin Las Vegas dapat menggunakan teknik acak, jika kita memang dipaksa untuk memperlakukan sebagai ramalan, kita dapat melihat bahwa satu-satunya strategi yang tersedia untuk mesin Las Vegas adalah dengan mengambil survei yang relatif menyeluruh (meskipun tidak lengkap) dari string acak r , untuk melihat jawaban apa yang diberikan untuk masing-masing. Ini hanya dapat memastikan jika ia menemukan lebih dari 2 N ( n )A′ r string berbeda r yang semuanya menghasilkan output yang sama; jika tidak, dengan probabilitas kecil (tetapi tidak nol!), mungkin tidak beruntung dan mendapatkan sampel yang tidak representatif dari kemungkinan keluaran. Untuk mendapatkan kesalahan nol, sampel minimal harus 2 N ( n )2N(n)/3 r input r .2N(n)/3 r
Karena mesin Las Vegas harus memeriksa setidaknya sebagian kecil konstan semua kemungkinan string acak , asimtotik kita tidak lebih baik daripada jika kita deterministik menguji semua kemungkinan string acak. Kami tidak mendapatkan keuntungan asimtotik dalam mensimulasikan algoritma BPP secara acak dalam pengaturan zero-error, di luar apa yang dapat kita lakukan secara deterministik dengan brute-force.r
Perhatikan bahwa argumen yang sama ini menimbulkan pemisahan oracle antara BPP dan ZPP , yaitu ada oracle sehingga Z P P A ⫋ B P P A karena ZPP algoritma membutuhkan waktu eksponensial, sementara BPP algoritma dapat memecahkan pertanyaan tentang oracle dalam satu permintaan dan berhasil dengan kesalahan yang dibatasi. Namun, itu tidak memberi tahu Anda lebih dari apa yang Anda duga sebelumnya (bahwa overhead simulasi mungkin lebih buruk daripada polinomial) atau bahwa asimptotik sama buruknya dengan simulasi deterministik naif.A
sumber