Teknik untuk menunjukkan masalah itu dalam kekerasan "limbo"

36

Diberikan masalah baru di yang kompleksitas sebenarnya ada di antara dan NP-complete, ada dua metode yang saya tahu yang mungkin digunakan untuk membuktikan bahwa menyelesaikan ini sulit:PNPP

  1. Tunjukkan bahwa masalahnya adalah GI-complete (GI = Graph Isomorphism)
  2. Tunjukkan bahwa masalahnya ada di . Dengan hasil yang diketahui, hasil seperti itu menyiratkan bahwa jika masalahnya adalah NP-lengkap, maka PH runtuh ke tingkat kedua. Sebagai contoh, protokol terkenal untuk Graph Nonisomorphism melakukan hal ini.coAM

Apakah ada metode lain (mungkin dengan "kekuatan keyakinan" yang berbeda) yang telah digunakan? Untuk jawaban apa pun, diperlukan contoh tempat penggunaannya: jelas ada banyak cara yang bisa dilakukan untuk menunjukkan ini, tetapi contoh membuat argumen lebih meyakinkan.

Suresh Venkat
sumber
12
Jika masalah tampaknya cukup sulit, tetapi Anda tidak dapat membuktikan bahwa itu adalah NPC, pemeriksaan cepat adalah untuk menghitung jumlah string panjang n dalam bahasa: jika set jarang, itu tidak mungkin menjadi NPC (jika tidak, P = NP oleh teorema Mahaney) ... jadi lebih baik mengarahkan usaha untuk membuktikan bahwa itu ada di P :-) :-) Contoh dari blog Fortnow & Gasarch : {(n, k): ada cara untuk mempartisi { 1, ..., n} ke dalam maksimal k kotak sehingga tidak ada kotak yang memiliki x, y, z dengan x + y = z}
Marzio De Biasi
5
@MarzioDeBiasi terdengar seperti jawaban untuk saya.
Sasho Nikolov
2
Ada dua bagian demonstrasi seperti itu: menunjukkan kesulitan menempatkan masalah di BPP, dan menunjukkan kesulitan menempatkan masalah di kelas NP-complete. (Ingat bahwa kelengkapan-GI hanya berarti "ada di GI dan sulit-GI".)
1
+1 untuk Ricky Demer; kami mungkin ingin memiliki daftar metode untuk bagian pertama.
Pteromys
2
Untuk masalah dalam FNP tanpa versi keputusan yang jelas dalam NP, PPAD adalah kelas yang berguna (dan terus bertambah) untuk dipertimbangkan. Masalah lengkap PPAD mencakup banyak masalah tentang menemukan titik tetap, misalnya Nash equilibria. Daftar Shiva bermanfaat: cs.princeton.edu/ ~kintali
András Salamon

Jawaban:

47

Menunjukkan bahwa masalah Anda ada dalam coAM (atau SZK) memang merupakan salah satu cara utama untuk mengemukakan bukti "kekerasan limbo." Tapi selain itu, ada beberapa yang lain:

  • Tunjukkan bahwa masalah Anda ada di NP ∩ coNP. (Contoh: Anjak piutang.)
  • Tunjukkan bahwa masalah Anda dapat diselesaikan dalam waktu yang seminimal mungkin. (Contoh: Dimensi VC, mendekati game gratis.)
  • Tunjukkan bahwa masalah Anda tidak lebih sulit daripada membalikkan fungsi satu arah atau menyelesaikan NP rata-rata. (Contoh: Banyak masalah dalam kriptografi.)
  • Tunjukkan bahwa masalah Anda berkurang menjadi (misalnya) Permainan Unik atau Ekspansi Set Kecil.
  • Tunjukkan bahwa masalah Anda ada di BQP. (Contoh: Anjak piutang, meskipun tentu saja itu juga dalam NP ∩ coNP.)
  • Singkirkan kelas besar pengurangan kelengkapan NP. (Contoh: Masalah Minimisasi Sirkuit, dipelajari oleh Kabanets dan Cai.)

Saya yakin ada orang lain yang saya lupa.

Scott Aaronson
sumber
2
Itu daftar yang sangat bagus, Scott!
Suresh Venkat
1
Hanya ingin tahu ... teknik mana dari yang menunjukkan bahwa masalahnya tidak mungkin dipecahkan dalam waktu polinomial (atau RP, atau BPP)? Saya tidak melihat ada yang tampaknya melakukan ini.
Philip White
2
Philip: Anda benar, mereka tidak. Untuk menambahkan bukti bahwa masalah NP tertentu tidak dalam P, semuanya bermuara pada (1) mencoba memasukkannya ke dalam P dan gagal, dan / atau (2) mengurangi masalah lain yang orang gagal masukkan ke P untuk masalah itu.
Scott Aaronson
23

n

Contohnya adalah masalah mempartisi angka menjadi k-box (dari blog Fortnow & Gasarch, sumber asli: Doctor Ecco's Cyberpuzzles ):

{(n,k) there exists a way to partition  {1,...,n} into at most k boxes so that no box has x,y,z with x+y=z}

Marzio De Biasi
sumber
23

Berikut adalah tiga tambahan pada daftar Scott:

  • Tunjukkan masalah Anda dalam beberapa P. Ini berarti bahwa jumlah solusi dibatasi oleh beberapa polinomial. (Contoh: Masalah Turnpike). Tidak ada masalah NP-complete yang diketahui dalam beberapa P. (tidak mungkin kecuali beberapa P = NP).
  • LOGNPNP[log2n]
  • 2nϵNPϵ>0n02nϵn

coNPNP/poly

Mohammad Al-Turkistany
sumber
1
Atau bahkan dalam UP (bukan hanya FewP)!
Joshua Grochow