Apakah ada contoh sulit 3-SAT ketika klausa hanya dapat menggunakan literal yang "berdekatan" satu sama lain?

22

Biarkan variabel menjadi . Jarak antara dua variabel didefinisikan sebagai. Jarak antara dua literal adalah jarak antara dua variabel yang sesuai.x1,x2,x3...xnd(xa,xb)=|ab|

Misalkan saya memiliki instance 3-SAT sehingga untuk setiap klausa kita memiliki untuk beberapa nilai tetap .(xa,xb,xc)d(xa,xb)Nd(xa,xc)Nd(xb,xc)NN

Secara konseptual Anda dapat membayangkan ini karena semua literal secara fisik berada pada satu garis dan semua klausa tidak mampu menjangkau melampaui batas tertentu karena alasan fisik.

Mengingat kendala ini, adakah contoh keras 3-SAT? Seberapa kecil saya bisa membuat lingkungan dan masih menemukan contoh sulit? Bagaimana jika saya membiarkan beberapa klausul melanggar batasan?

Dengan keras saya maksudkan pemecah heuristik akan jatuh kembali pada kasus terburuk.

IIAOPSW
sumber
2
"Maksudku, pemecah heuristik akan jatuh pada kasus terburuk." tidak terdengar jelas bagi saya. Bisakah kami menafsirkan pertanyaan Anda sebagai bertanya apakah ada algoritma waktu polinomial yang memecahkan semua instance 3-SAT seperti itu? Atau bertanya tentang kompleksitas / kekerasan masalah ini?
DW
"Bisakah kami menafsirkan pertanyaan Anda sebagai bertanya apakah ada algoritma waktu polinomial yang memecahkan semua instance 3-SAT seperti itu?" Saya pikir itulah yang saya cari.
IIAOPSW
1
Persyaratan lokalitas yang Anda gunakan juga dikenal sebagai 1D "lokal geometris" dan merupakan arti utama "lokalitas" bagi fisikawan. Sekarang, jika seseorang menggeneralisasikan pertanyaan Anda ke kasus kuantum dan dari bit (2 status) ke partikel dengan 8 status, versi kuantum masalah Anda memang QMA-complete ("quantum-NP") di 1D: Lihat arxiv.org/ abs / 1312.1469 Untuk qubit masalahnya adalah QMA-complete dalam 2D. arxiv.org/abs/quant-ph/0504050
Martin Schwarz
4
Ah, jadi benar seorang fisikawan tidak bisa bersembunyi di antara para ilmuwan komputer. Kau menangkapku. Mengapa Anda membutuhkan 8 negara? Cukup gunakan qubit, lipat tiga ukuran lingkungan, dan gunakan setiap 3 qubit untuk menyandikan partikel 8-negara.
IIAOPSW
1
Tentu, tetapi kemudian Anda memiliki lokalitas yang cukup tinggi, yaitu operator lokal Anda menjangkau banyak qubit. Lini penelitian ini juga berfokus pada meminimalkan lokalitas (idealnya 2-lokal) dengan mengorbankan partikel bermuatan lebih tinggi dan pengorbanan yang terlibat.
Martin Schwarz

Jawaban:

30

Tidak. Jika instance 3-SAT memiliki klausa , maka Anda dapat menguji kepuasan dalam O ( m 2 N )mO(m2N) . Karena adalah konstanta tetap, ini adalah algoritma waktu polinomial yang memecahkan semua contoh masalah Anda.N

Algoritma ini bekerja dalam tahap . Biarkan φ i menunjukkan rumus yang terdiri dari klausa yang hanya menggunakan variabel dari x 1 , ... , x i . Misalkan S i{ 0 , 1 } n menunjukkan set penugasan ke x i - N , x i - N + 1 , ... , x i yang dapat diperluas ke penugasan yang memuaskan untuk φ i . Perhatikan bahwa diberikan Smφix1,,xiSi{0,1}nxiN,xiN+1,,xiφi , kita dapat menghitungSi1 dalam O ( 2 N ) waktu: untuk setiap ( x i - N - 1 , , x i - 1 ) S i - 1 , kami mencoba kedua kemungkinan untuk x i dan memeriksa apakah itu memenuhi semua klausa dari φ i yang berisi variabel x i ; jika demikian, kami menambahkan ( x i - N , ...SiO(2N)(xiN1,,xi1)Si1xiφixi ke S i . Di i(xiN,,xi)Sii tahap ke- , kita menghitung . Setelah kami menyelesaikan semua tahap m , instance 3-SAT memuaskan jika dan hanya jika S m . Setiap tahap membutuhkan waktu O ( 2 N ) , dan ada tahap m , sehingga total waktu berjalan adalah O ( m 2 N ) . Ini jumlahnya banyak dalam ukuran input, dan dengan demikian merupakan algoritma waktu-polinomial.SimSmO(2N)mO(m2N)

Bahkan jika Anda mengizinkan sejumlah klausa untuk melanggar batasan, masalahnya masih dapat diselesaikan dalam waktu polinomial. Secara khusus, jika menghitung jumlah klausa yang melanggar batasan, Anda dapat menyelesaikan masalah dalam waktu O ( m 2 ( t + 1 ) N ) , dengan terlebih dahulu menghitung semua nilai yang mungkin untuk variabel dalam klausa tersebut, kemudian melanjutkan dengan algoritma di atas. Ketika t adalah konstanta tetap, ini adalah waktu polinomial. Mungkin ada algoritma yang lebih efisien.tO(m2(t+1)N)t

DW
sumber
16

Grafik insiden rumus SAT adalah grafik bipartit yang memiliki titik untuk setiap klausa dan setiap variabel. Kami menambahkan tepi antara klausa dan semua variabelnya. Jika grafik insiden telah membatasi treewidth maka kita dapat memutuskan rumus SAT dalam P, sebenarnya kita dapat melakukan lebih banyak lagi. Grafik insiden Anda sangat terbatas. Misalnya itu adalah grafik jalur terbatas, jadi itu adalah waktu polinomial yang dapat dipecahkan. Untuk hasil struktural yang diketahui di atas misalnya lihat di: https://www.sciencedirect.com/science/article/pii/S0166218X07004106 .

Saeed
sumber
1
Sebenarnya, bahkan grafik primal (satu sisi antara dua simpul jika mereka muncul dalam klausa yang sama) telah membatasi jalur lebar dalam kasus ini. Lihat juga (1) yang mungkin lebih mudah diakses atau jawaban @DW yang kira-kira sama dengan algoritma ini. (1) Algoritma untuk penghitungan model proposisional , Marko Samer, Stefan Szeider, J. Discrete Algorithms, volume 8, nomor 1, halaman 50-64, 2010.
holf