Apakah ada kandidat untuk masalah alami di ?

27

Saya ingin tahu apakah ketidakseragaman membantu fungsi komputasi dalam praktik. Mudah untuk menunjukkan bahwa ada fungsi dalam , mengambil fungsi yang tidak dapat dihitung dan mempertimbangkan bahasa { }, yang jelas memiliki sirkuit sederhana yang tidak seragam , tetapi tidak dapat dihitung secara seragam sama sekali, tetapi ini bukan jenis fungsi yang saya minati.P/polyPf0f(n):nω

Apakah ada fungsi yang kita tahu dapat dihitung secara tidak seragam tetapi kita tidak tahu apakah itu dapat dihitung secara seragam (atau setidaknya membuktikan bahwa itu tidak dapat dihitung secara seragam tidak jelas)?

Bagaimana non-keseragaman sirkuit dapat digunakan untuk fungsi komputasi yang tidak diketahui dapat dihitung secara seragam (dengan jumlah sumber daya yang hampir sama)?

Harap dicatat bahwa saya tidak ingin fungsi patologis seperti yang tidak dapat dihitung yang disebutkan di atas, saya ingin fungsi alami yang orang benar-benar tertarik pada komputasi dan masuk akal yang dapat atau dapat dihitung secara seragam.

Sunting: Saya tahu . Jadi jawaban yang bukan hasil derandomisasi lebih menarik bagi saya.BPPP/poly

Sunting 2: Seperti yang dikatakan András Salamon dan Tsuyoshi Ito dalam jawaban mereka, , dan ada masalah menarik di yang tidak diketahui berada di , jadi secara resmi mereka telah menjawab apa yang saya tanyakan, tetapi itu tidak membantu dengan apa yang saya benar-benar tertarik karena alasan mereka di adalah kemungkinan pengodean bahasa yang jarang ke dalam rangkaian. Bahasa yang tidak jarang akan lebih menarik.SparseP/polySparsePP/poly

Kaveh
sumber
@ András Salamon, @Tsuyoshi Ito: Terima kasih. Tetapi yang saya tertarik adalah untuk memahami bagaimana ketidakseragaman dapat membantu dalam fungsi komputasi. Fakta bahwa bahasa yang jarang ada di tidak membantu dengan itu, mereka berada di hanya karena kita bisa "kode keras" mereka ke dalam rangkaian. Saya seharusnya menambahkan persyaratan pada pertanyaan saya bahwa "bahasa tidak sepele dalam ". P/polyP/polyP/poly
Kaveh

Jawaban:

13

Saya tidak tahu apakah memenuhi ini kebutuhan Anda, tapi posting blog Bill Gasarch ini pada bulan Juli 2010 bertanya tentang bahasa di jarang ∩NP yang tidak diduga berada di P, memberikan contoh dari Teori Ramsey. Bahasa seperti apa pun milik (P / poly) ∩NP.

Terkait dengan ini, Untuk bahasa apa pun L ∈NP, bahasa T L = {1 n : L berisi beberapa string dengan panjang n } dalam TALLY ∩NP ⊆ SPARSE∩NP ⊆ (P / poly) ∩NP. Bergantung pada pilihan bahasa L , T L mungkin tidak memiliki alasan yang jelas untuk menjadi bagian dari P.

Tsuyoshi Ito
sumber
8

Ungkapan jarang Tsuyoshi Ito yang elegan dalam jawaban lain tidak secara eksplisit mengatakannya, tapi mungkin itu layak untuk ditunjukkan: bahasa apa pun yang jarang ada dalam P / poly. Kemudian juga setiap bahasa penghitungan ada di P / poly (karena setiap bahasa penghitungan jarang).

Jadi salah satu cara untuk menemukan bahasa "alami" dalam P / poli tetapi tidak dalam P, adalah dengan mencari bahasa "sulit" yang jarang. Seperti yang Anda tunjukkan, yang "paling sulit" adalah yang tidak dapat diputuskan ketika dikodekan dengan cara yang jarang, misalnya dalam unary. Secara lebih umum, versi penyandian unary dari bahasa apa pun di luar EXP kemudian akan berada di luar P. (Jika tidak, maka pertimbangkan mesin Turing waktu eksponensial yang menghasilkan penyandian unary, disusun dengan mesin yang memecahkan bahasa yang disandikan dalam waktu yang disandikan dalam waktu yang polinomial dalam pengkodean unary. Ini adalah eksponensial dalam ukuran instance asli. Mesin keseluruhan kemudian berjalan dalam waktu eksponensial.) Beberapa bahasa lengkap 2-EXP berguna kemudian mungkin sesuai dengan selera Anda sebagai masalah "alami".

Perhatikan bahwa bahasa teoretis Ramsey-jarang karya Bill Gasarch tampaknya masuk dalam kategori bahasa yang dikonstruksi oleh sparsifikasi bahasa yang keras. Jika seseorang mengkodekan instance sebagai triple dari angka biner alih-alih dua unary dan satu binary, maka pewarnaan tidak lagi dari ukuran polinomial, sehingga bahasa tidak jelas dalam NP.

András Salamon
sumber
6

Ini lebih seperti komentar dalam menanggapi pertanyaan yang direvisi (revisi 3) daripada jawaban, tetapi terlalu lama untuk komentar.

Hanya mengecualikan bahasa jarang tidak cukup untuk mengecualikan bahasa seperti { x ∈ {0,1} * : | x | ∈ S } bukan {1 n : nS }, di mana S adalah himpunan bagian tak terhingga dari {0, 1, 2, ...}. Saya ingin menunjukkan bahwa mungkin sulit untuk membedakan antara kasus di mana bahasa milik P / poly karena "dasarnya jarang" (seperti {1 n : nS } dan { x : | x | ∈ S}) dan kasus di mana bahasa milik P / poli karena alasan lain. Yang bermasalah di sini adalah, jelasnya, bagaimana mendefinisikan istilah "pada dasarnya jarang."

Anda mungkin ingin mendefinisikan "esensial sparseness" sebagai berikut: bahasa pada dasarnya jarang jika direduksi menjadi bahasa jarang. Namun, perhatian harus diambil karena jika Anda menggunakan reduksibilitas Turing polinomial-waktu dalam definisi ini, definisi tersebut setara dengan keanggotaan P / poli!

Jadi, hal yang jelas untuk dicoba adalah menggunakan reduksiibilitas polinomial-waktu-satu. Saya tidak tahu apakah ini setara dengan keanggotaan P / poli, apalagi apakah P / poli mengandung bahasa alami yang pada dasarnya tidak jarang dalam pengertian ini.

Tsuyoshi Ito
sumber
Sebenarnya saya memikirkan hal ini ketika saya melihat jawaban sebelum memodifikasi pertanyaan, karena itu wajar untuk memikirkan kombinasi boolean dari bahasa yang jarang. Saya berpikir bahwa mengecualikan bahasa yang dapat direduksi menjadi bahasa yang jarang (atau mungkin sedikit lebih) seharusnya sudah cukup untuk pertanyaan saya, tetapi tampaknya ini lebih melibatkan daripada yang saya kira. AC0
Kaveh
@ Kaveh: Itu mungkin definisi lain yang bagus untuk “dasarnya jarang.” Membaca komentar Anda, saya bertanya-tanya apakah P / poli = P∪ (AC0 / poli) (saya kira tidak), karena ada masalah dalam (P / poli) ∖ ( P∪ (AC0 / poli)) bisa dibilang bisa dikatakan "dapat dihitung dengan menggunakan keluarga nonuniform dari sirkuit ukuran polinomial dengan benar-benar menggabungkan kekuatan sirkuit ukuran polinomial dan kekuatan ketidakmerataan."
Tsuyoshi Ito
Masalah mungkin dengan definisi saya berdasarkan salah satu contoh Anda adalah apakah bahasa berikut adalah dasarnya jarang : cek jika jumlah yang di masukan dalam bahasa jarang . (Lebih umum, biarkan menjadi masalah fungsi lengkap untuk kelas kompleksitas dan biarkan menjadi bahasa yang jarang. Anggap memiliki rentang besar yang mirip dengan fungsi NumOnes. Misalkan adalah himpunan s st )f C S f L x f ( x ) SSfCSfLxf(x)S
Kaveh
[lanjutan] Kelas bahasa lain: ambil bahasa yang jarang dan bahasa lengkap untuk kelas kompleksitas dan kemudian pertimbangkan penggabungan ( adalah mana setiap simbol diganti dengan dua salinannya , mis. 010 menjadi 001100). Seseorang mungkin juga mensyaratkan bahwa panjang bagian kedua dalam rangkaian tersebut kurang dari panjang bagian pertama. Bahasa-bahasa ini memenuhi semua kondisi kecuali menjadi masalah alami yang orang benar-benar tertarik untuk menyelesaikannya. A C L = A .01 . S A ASACL=A.01.SAA
Kaveh
@ Kaveh: Hmm, begitu. Terima kasih telah berbagi contoh. Saya menarik gagasan menonton (P / poly) ∖ (P∪ (AC0 / poly)) sebagai "P / poly untuk alasan nontrivial." bahasa yang jarang, jadi masih ada beberapa harapan bahwa definisi "kekurangan penting" yang saya sarankan dalam jawaban mungkin cocok.
Tsuyoshi Ito