Di kelas apa algoritma acak yang sesat dengan peluang 25%?

17

Misalkan saya mempertimbangkan varian BPP berikut, yang kami sebut E (xact) BPP: Suatu bahasa ada di EBPP jika ada waktu polinomial acak TG yang menerima setiap kata dalam bahasa dengan probabilitas 3/4 tepat dan setiap kata tidak dalam bahasa dengan tepat 1/4 probabilitas. Jelas EBPP terkandung dalam BPP tetapi apakah mereka sama? Apakah ini sudah dipelajari? Bagaimana dengan ERP yang dapat didefinisikan serupa?

Motivasi. Motivasi utama saya adalah bahwa saya ingin tahu apa analogi kompleksitas teori dari `` dalam nilai yang diharapkan '' algoritma acak Faenza et al. (lihat http://arxiv.org/abs/1105.4127 ) adalah. Pertama saya ingin memahami masalah keputusan apa yang dapat diselesaikan oleh algoritma semacam itu (dengan waktu polinomial terburuk). Mari kita menunjukkan kelas ini dengan E (xpected) V (alue) PP. Sangat mudah untuk melihat bahwa USAT EVPP. Juga mudah untuk melihat EBPP EVPP. Jadi ini motivasi saya. Umpan balik tentang EVPP juga diterima.

Bahkan, algoritma mereka selalu menghasilkan angka yang tidak asli. Jika kami menunjukkan masalah keputusan yang dapat dikenali oleh algoritma semacam itu oleh EVP (ositive) PP, maka kami masih memiliki USAT EVPPP. Meskipun EBPP mungkin bukan subset dari EVPPP, kami memiliki ERP EVPPP. Mungkin dengan menggunakan ini kita dapat mendefinisikan peringkat (tidak negatif) untuk masalah keputusan.

domotorp
sumber
10
Saya kira Anda sudah menyadari hal ini, tetapi jika Anda rileks kendala untuk kata-kata menerima dalam bahasa dengan probabilitas 3/4±ε untuk ε1/poly(n) maka kelas harus sama.
Huck Bennett
3
@domotorp Apa motivasi di balik pertanyaan ini? Apa yang ingin Anda lakukan dengan kelas kompleksitas semantik ini? Apakah Anda melihat cara menggunakan EBPP di suatu tempat untuk membuktikan teorema? Bisakah Anda menguraikan?
Tayfun Bayar
1
Lihatlah koran "Probabilistic Complexity Classes and Lowness" oleh Uwe Schoning, 1989.
Tayfun Pay
1
@ Tayfun: Saya memeriksanya tetapi tidak dapat menemukan yang relevan. Bisakah kamu lebih spesifik?
domotorp
2
@HuckBennett: atau bahkan 3/4±ϵ untuk ϵexp(poly(n)) .
Colin McQuillan

Jawaban:

10

Di samping catatan, tidak jelas bahwa EBPP adalah kelas yang kuat. Misalnya, jika alih-alih membiarkan algoritma membalikkan koin yang tidak bias, jika diberi koin 3 sisi yang tidak bias, atau dadu 6 sisi, tidak jelas bahwa Anda mendapatkan kelas yang sama. BPP tetap sama jika Anda mengubah detail ini.

Bagaimanapun, pertanyaan utama Anda adalah apakah EBPP sama dengan BPP atau tidak. Menurut saya EBPP lebih dekat ke P daripada BPP. Pertimbangkan kompleksitas kueri atau versi oracle dari kelas-kelas ini di mana mereka memiliki akses ke string input besar dan harus membuat kueri untuk mempelajari bit dari string ini. Jika Anda memiliki algoritma P yang menghitung fungsi dengan QfQ permintaan, maka ada sebuah tepat mewakili polinomial derajat untuk f lebih R . (Ini adalah argumen metode polinomial biasa.) Di sisi lain, jika Anda memiliki algoritma BPP, maka Anda mendapatkan derajat Q polinomial lebih dari R yang mendekati fQfRQRfdalam arti bahwa nilainya dekat dengan nilai pada setiap masukan.f

Diberi algoritma EBPP untuk fungsi , kita dapat membuat polinomial yang menghasilkan 1/4 ketika jawabannya TIDAK dan 3/4 ketika jawabannya adalah YA. Dengan mengurangi 1/2 dan mengalikan dengan 2, Anda bisa mendapatkan polinomial mewakili yang tepat, seperti dalam kasus P. Ini menunjukkan kepada saya bahwa EBPP lebih dekat ke P.f

Pengamatan ini juga dapat digunakan untuk menunjukkan pemisahan oracle antara EBPP dan BPP. Pertimbangkan masalah Mayoritas Janji di mana Anda dijanjikan bahwa input memiliki lebih dari 2N / 3 1s atau kurang dari N / 3 1s dan Anda harus memutuskan yang mana yang menjadi masalah. Ini jelas di BPP. Menggunakan argumen polinomial yang diuraikan di atas dapat ditunjukkan bahwa fungsi ini membutuhkan kueri untuk mesin EBPP. Tetapi perhatikan bahwa Anda juga dapat membuktikan pemisahan oracle dengan cara lain, antara P dan EBPP. Jadi, mungkin hasil ramalan tidak banyak bicara untuk masalah ini? Atau mungkin apa yang mereka katakan adalah bahwa akan sulit untuk menunjukkan kesetaraan di kedua arah.Ω(N)

Robin Kothari
sumber
1
Ya, pemisahan oracle tampaknya cukup mudah dalam kedua kasus.
domotorp
1

Mengenai pemisahan oracle, ada oracle dengan EBPP = BPP = EXP NP , dan oracle dengan P = ⊕P (dan karenanya EBPP = P) dan BPP = EXP NP .

Salah satu konstruksi BPP = EXP NP oracle (termasuk yang ada dalam artikel wikipedia BPP ) adalah untuk memilih masalah lengkap EXP NP lengkap, dan melanjutkan secara rekursif pada ukuran input (untuk masalah itu), memperbaiki hasil untuk contoh masalah ukuran itu, dan kemudian berikan jawaban untuk masalah itu jika ditanya dengan input dan pengisi (dengan panjang yang sesuai) yang belum diperbaiki. Untuk EBPP = EXP NP , alih-alih hampir selalu memberikan jawaban yang benar, kami dapat memberikan cukup jawaban yang salah untuk membuat penghitungan tepat. Ada juga sebuah oracle di mana analog nol kesalahan EBPP (persis 1/2 probabilitas kegagalan pelaporan) sama dengan EXP (dan oracle dengan P = ⊕P tetapi ZPP = EXP).

P = ⊕P dan BPP = EXP NP oracle tercantum di sini .

Selain berada di BPP dan di C = P, EBPP berada di ⊕P karena kita dapat mengurangi probabilitas jumlah saksi dan kemudian mengubah jumlah itu.

Di dunia yang tidak terkait, BPP mungkin sama dengan P, tetapi bukti lebih kuat untuk EBPP. EBPP tergantung pada jumlah persis jalur dengan cara yang, kecuali pembatalan tak terduga terjadi, pada dasarnya tidak mungkin untuk memanfaatkan.

Dmytro Taranovsky
sumber
0

Ini adalah jawaban parsial; mungkin itu akan menginspirasi orang lain untuk memberikan yang lebih baik.

Kelas Anda adalah kasus khusus dari C = P . Saya pikir salah satu cara mendefinisikan C = P adalah sebagai berikut (lihat Bagian 2 dari makalah ini ). Bahasa L adalah dalam C = P jika ada verifier waktu polinomial V sedemikian rupa sehinggaEBPPC=PC=PLC=PV

  • jika ada di L , maka Pr w [ V ( x , w )  menerima ] = 3xLPrw[V(x,w) accepts]=34 , dan
  • jika tidak dalam L , maka Pr w [ V ( x , w )  menerima ] 3xLPrw[V(x,w) accepts]34 .

(Probabilitas kelengkapan pada dasarnya dapat berupa pecahan tetap; Saya memilih 34 sehingga cocok dengan probabilitas yang diberikan dalam pertanyaan Anda.)

Salah satu cara mendefinisikan adalah sebagai berikut. Bahasa L adalah dalam E B P P jika ada verifier waktu polinomial VEBPPLEBPPV sedemikian rupa

  • jika ada di L , maka Pr w [ V ( x , w )  menerima ] = 3xLPrw[V(x,w) accepts]=34 , dan
  • jika tidak dalam L , maka Pr w [ V ( x , w )  menerima ] = 1xL .Prw[V(x,w) accepts]=14
argentpepper
sumber
3
Ini juga merupakan kasus khusus BPP.
Peter Shor
@argentpepper Apa yang Anda yakini sebagai kasus khusus tampaknya tidak benar. Semua mesin C = P perlu menerima ATAU menolak untuk semua input. Apa yang Anda gambarkan adalah mesin kategori - kelas kompleksitas semantik. Itu tidak menerima atau menolak jika probabilitasnya 1/2? Itu tidak bisa menjadi C = P mesin. C=PC=PC=P
Tayfun Bayar
@PeterShor Tepat
Tayfun Bayar
1
@TayfunPay Saya rasa komentar Anda tidak masuk akal. adalah seperangkat bahasa, bukan mesin, sehingga tidak ada hal seperti itu sebagai C = P mesin. argentpepper benar bahwa EBPP sebenarnya subset dari C = P . hanya saja tidak jelas apakah inklusi ini bermanfaat, terutama karena C = P adalah kelas yang kuatC=PC=PC=PC=P
Sasho Nikolov
Hanya menyediakan cara lain dalam memandang masalah ...
argentpepper