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 .nlog⁡n


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 ε > 0⋂0<ϵ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 .

nlg⁡n

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(nlog⁡n)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.