Yorumlarda da belirtildiği gibi, her zaman olduğu gibi tanımlara bağlıdır. Buna cevap verme girişimin çok az tanımlaması gerekiyor, bu yüzden özlü cevaplar veremememin bir başka örneği de bu olacak.
Tanım: bir optimizasyon problemi tuple olduğu ile(X,F,Z,⊙)
- X uygun şekilde kodlanmış (dizeler) örnekler veya girişler kümesi .
- F Her bir örneği eşleştiren bir fonksiyonudur bir dizi arasında uygulanabilir çözümler arasında .x∈XF(x)x
- Z her çift haritalar amaç fonksiyonu , ve , bir reel sayı için olarak adlandırılan bir değer arasında .(x,y)x∈Xy∈F(x)Z(x,y)y
- ⊙ olan optimizasyon yönü ya veya .minmax
Tanım: Bir optimizasyon probleminin örneğinin optimal çözümü , , uygun olan bir çözümdür ; . Optimal bir çözeltinin değeri, ile gösterilir ve optimum olarak adlandırılır .x∈XPOy∈F(x)Z(x,y)=⊙{Z(x,y′)∣y′∈F(x)}Opt(x)
Tanım: değerlendirme sorunu , gösterilen optimizasyon problemine karşı gelen, şudur: bir örneği göz önüne alındığında , işlem eğer , en iyi bir ve çıkış aksi takdirde “optimal bir çözüm” yer alır.PEPOx∈XOpt(x)x
Bunun sadece tüm detaylarıyla birlikte tüm çözüm değil, en uygun çözümün değerini istediğini unutmayın .
Tanım: karar problemi , gösterilen optimizasyon problemi tekabül aşağıdaki gibidir: bir çift göz önüne alındığında , burada ve , karar uygun bir çözüm vardır Öyle ki ise ve böylelikle ise .PDPO(x,k)x∈Xk∈QxyZ(x,y)≤k⊙=minZ(x,y)≥k⊙=max
İlk gözlem şimdi . Kanıt zor değil ve burada atlandı.PO∈NPO⇒PD∈NP
Şimdi sezgisel olarak ve karşılık gelen , kendisinden daha zor değildir . Bu duyguyu resmen ifade etmek (böylece, hangi eşdeğerin ne anlama gelmesi gerektiğini tanımlamak ), indirimler kullanacağız.PEPDPOPO
Bir dil hatırlayın bu başka bir dil için bir polinom zamanlı indirgenebilir bir fonksiyonu olup olmadığını örneğin polinom zamanda hesaplanabilir, bu tüm kelimeleri için , . Bu tür indirgenebilirlik, Karp veya bire bir indirgenebilirlik olarak bilinir ve eğer bu şekilde indirgenebilir ise , bunu yazarak ifade . Bu, NP tamamlama tanımında merkezi bir kavramdır.L1L2fxx∈L1⇔f(x)∈L2L1L2L1≤mL2
Ne yazık ki, birebir yapılan indirimler diller arasında değişmektedir ve optimizasyon problemleri bağlamında nasıl kullanılacağı açık değildir. Bu nedenle, farklı bir indirgenebilirlik türü göz önünde bulundurmamız gerekiyor, Turing indirgenebilirliği . İlk önce buna ihtiyacımız var:
Tanım: Bir torpil bir sorun için örneklerini çözebilecek bir (varsayımsal) altprogram olan sabit zamanda.PP
Tanım: Bir sorun polinom zamanlı Turing-indirgenebilir bir sorun için yazılı, örnekleri ise, için kahin erişimi olan bir algoritma tarafından polinom zamanda çözülebilir .P1P2P1≤TP2P1P2
Gayrı, sadece olduğu gibi , ilişki anlatırken kullanılır, bu fazla zordur . polinom zamanında çözülebildiğini görmek de kolaydır , bu yüzden olabilir . Yine geçişli bir ilişkidir. Aşağıdaki gerçek açıktır:≤mP1≤TP2P1P2P2P1≤T
Let , ardından .PO∈NPOPD≤TPE≤TPO
Çünkü tam çözüm verildiğinde değerini hesaplamak ve sınır karşılayıp karşılamayacağına karar vermek basittir.k
Tanım: ve iki sorunu için her ikisi de , ilişkilerini , ; Bizim kavramı denkliği .P1P2P1≤TP2P2≤P1P1≡TP2
Şimdi, ilgili optimizasyon problemine göre ve tamsayı olduğunu . göstermeliyiz . Biz belirleyebilir , bir ikili şurada Orcale usign arama . Nedir? sağlar bir polinom için , ikili arama aşama sayısı, bu nedenle polinom olarak. PD≡TPEPO∈NPOZPE≤TPD⊙{Z(x,y)∣y∈F(x)}PDNPO|Z(x,y)|≤2q(|x|)q|x|□
Bir optimizasyon problemi için için ilişki az açıktır. Birçok somut durumda, doğrudan . Bunun genel olarak burada verilen çerçevede tutulduğunu kanıtlamak için ek bir varsayıma ihtiyacımız var.POPEPD≡TPE≡TPO
Öncelikle, 'yi dil çiftlerinden ilgili karar problemlerinin çiftlerine genişletmeliyiz . Sonra görmek kolaydır daha geneldir .≤m≤T≤m
Let ve karar problemleri olabilir; sonra . Bu, çoktan bire bir indirimin bir kehaneti çok sınırlı bir şekilde kullanmak olarak yorumlanabileceği için geçerlidir: Kehaneye bir kez, en sonunda bir çağrı yapılır ve sonucu da sonuç olarak döndürülür. PP′P≤mP′⇒P≤TP′□
Şimdi final için hazırız:
Let ve varsayalım tamsayıdır değerli olduğu ve NP-tam, daha sonraÖnceki gözlemlerde gösterilmeye devam edilmiştir . Bunu yapmak için, da . Sonraİkinci ve üçüncü , daha önce kanıtlanmış olan karar ve değerlendirme versiyonunun denkliği nedeniyle . Üçüncü , NP'nin ve daha önce belirtilen iki gerçeğin ;PO∈NPOZPD
PD≡TPE≡TPO.
PO≤TPEP′O∈NPOPO≤TP′EPO≤TP′E≤TP′D≤TPD≤TPE.
≤T≤TPDPO∈NPO⇒PD∈NP ve .
P≤mP′O⇒P≤TP′O
Şimdi detaylar: uygulanabilir çözümlerinin bir toplam sipariş ile donatılmış bir alfabe kullanılarak kodlandığını varsayın . Let gelen kelime ortak uzunluk kelimelerin blok içinde uzunluk ve lexicographic düzeni azalmayan sırasına göre listelenir. (Bu nedenle boş bir kelimedir.) Tüm için izin benzersiz bir tamsayıyı temsil eder öyle ki . Hem hem de polinom süresi içinde hesaplanabilir. , x'teki tüm için olduğu gibi bir polinom olsunPOΣw0,w1,…Σ∗w0y∈Σ∗σ(y)iy=wiσσ−1qx∈Xve Elimizdeki .y∈F(x)σ(y)<2q(|x|)
Şimdi sorun , değiştirilmiş nesnel fonksiyon hariç ile aynıdır . İçin ve aldığımız . polinom zamanında hesaplanabilir, bu nedenle .P′OPOZ′x∈Xy∈F(x)Z′(x,y)=2q(|x|)⋅Z(x,y)+σ(y)Z′P′O∈NPO
Olduğunu göstermek için biz bu gözlemlemek için mümkündür eğer ve onun için mümkün olduğu takdirde . Bunun böyle olduğunu varsayabiliriz, çünkü tam tersi dava ele almak için önemsizdir.PO≤TP′ExPOP′E
Arasında saydırma için anlamda monoton tüm bu , eğer daha sonra . Bu her optimal bir çözüm anlamına gelir in optimal çözüm de . Böylece, bizim görev, en iyi çözüm hesaplama azaltır arasında de .Z′Zy1,y2∈F(x)Z(x,y1)<Z(x,y2)Z′(x,y1)<Z′(x,y2)xP′OxPOyxP′O
kehanetini , değerini alabiliriz . Bu sayı, modülo kalanını oluşturan elde edilir olan polinom bir sürede elde edilebilir.P′EZ′(x,y)=2q(|x|)⋅Z(x,y)+σ(y)2q(|x|)σ(y)y