NP-tamamlanmış problemler için subexponential-zaman algoritmaları var mı?


51

Yardımcı olmayan zaman algoritmaları kanıtlanmış NP-komple problemler var mı?

Genel dava girdilerini soruyorum, buradaki izlenebilir özel davalardan bahsetmiyorum.

Üstel üstel olarak, polinomların üzerinde, ancak üstelden daha az, örneğin gibi bir büyüme sırası anlamına gelir .nlogn


10
"Üstel Üstel" ile ne demek istiyorsun? demek istiyorsan , cevap kesinlikle evet. Eğer demek istediğin 2 n o ( 1 ) , ben cevap hayır inanıyoruz. 2o(n)2no(1)
JeffE

Yanıtlar:


57

Subexponential ile ne demek istediğine bağlı. Aşağıda "subexponential" in birkaç anlamını ve her durumda ne olacağını açıklayacağım. Bu sınıfların her biri, altındaki sınıflarda bulunur.


I 2no(1)

Subexpoential ile Şunu ise , daha sonra adı karmaşıklık teorik olarak bir varsayım ETH (Üstel saat Hipotez) ima hayır N P -Sert sorun çalışma zamanı ile bir algoritma olabilir 2 n- o ( 1 ) .2no(1)NP2no(1)

Bu sınıfın polinomlarla kompozisyon altında kapalı olduğuna dikkat edin. Herhangi bir -problem problemi için bir eksensel zaman algoritması varsa , bunu SAT'dan polinom-zaman azalması ile birleştirebiliriz ve 3SAT için ETH'yi ihlal edecek bir subexponential algoritması elde edebiliriz.NP

II. , yani tüm 0 < ϵ için 2 O ( n ϵ )0<ϵ2O(nϵ)2O(nϵ) 0<ϵ

Durum öncekine benzer.

Polinomlar altında kapatıldığı için ETH'yi ihlal etmeden bu zamanda zor problemi çözülemez.NP


III. , yani bazı ϵ < 1 için 2 O ( n ϵ )ϵ<12O(nϵ)2O(nϵ) ϵ<1

Subexponential ile bazı ϵ < 1 için anlamına geliyorsa, o zaman cevap evet, muhtemelen böyle sorunlar var.2O(nϵ)ϵ<1

SAT gibi bir problemi alın . Zamanında O 2 ( n ) ' de çalışan kaba kuvvet algoritmasına sahiptir . Şimdi , girdilere n k boyutunda bir string ekleyerek SAT'ın yastıklı versiyonunu düşünün :NP2O(n)nk

SAT={φ,wφSAT and |w|=|φ|k}

Şimdi bu problem hard ve zaman içinde 2 O'da çözülebilir ( n 1NP.2O(n1k)

IV. 2o(n)

Bu önceki sınıfı içerir, cevap benzerdir.

V. , yani 2 ε n için tüm ε > 00<ϵ2ϵn2ϵn ϵ>0

Bu önceki sınıfı içerir, cevap benzerdir.

VI. , örneğin, 2 ε n için bir ε < 1ϵ<12ϵn2ϵn ϵ<1

Bu önceki sınıfı içerir, cevap benzerdir.


Subexponential ne anlama geliyor?

"Polinomun Üstü", bir üst sınır değil, bir alt sınırdır ve süper polinom olarak adlandırılır .

nlgn

2Θ(n)2nΘ(1)

ΘoϵΘϵϵ>0Θϵϵ<1

Hangisine subexponential denilmesi gerektiği tartışmalıdır. Genellikle insanlar, çalışmalarında ihtiyaç duydukları şeyi kullanırlar ve bunu subexponential olarak adlandırırlar.

Exp2nO(1)

SubExp

III , Pal'in cevabında belirtilenler gibi algoritmik üst sınırlar için kullanılır.

IV de yaygındır.

ETH varsayımını belirtmek için V kullanılır.

Kavşaklar ( II ve V ) algoritmik üst sınırlar için o kadar kullanışlı değildir, ana kullanımları karmaşıklık teorisi gibi görünmektedir. Uygulamada, I ve II arasında veya IV ve V arasında bir fark görmezsiniz . IMHO daha sonraki üç tanım ( IV , V , VI ) çok hassastır, belirli problemler için faydalı olabilirler, ancak sınıf olarak faydalarını azaltan sağlam değillerdir. Sağlamlık ve hoş kapatma özellikleri gibi ünlü karmaşıklık sınıflarının nedeninin bir parçasıdırLPNPPSpaceExp

Yazlık

NP


7
Bu cevap Vikipedi'ye gitmeli.
Erel Segal-Halevi

32

2O(nlogn)nO(1)2O(n)nO(1)


1
2O(nϵ)ϵ<12no(1)
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.