Nasıl bir sorun NP tam olduğunu kanıtlamak için mi?
Zamanlama ile ilgili sorun var. Sorun NP tam olduğunu kanıtlamaya ihtiyacım var. Bu NP tam ispat yöntemleri ne olabilir?
CEVAP
Bir sorun NP tam olduğunu göstermek için:
NP kullanılmaktadır
Diğer bir deyişle, belirli bazı bilgiler C
oluşturabilirsiniz bir polinom zaman algoritması V
olacak doğrulamak için mümkün olan her giriş X
olup X
etki alanınızdaki veya değil.
Örnek
Bu kanıtlamakköşe sorunu kapsar(bu, bazı grafik için ** 4,G
her kenar kapak kümesinde en az bir köşe olan Boyutu k
köşe kapağı da var?) NP:
bizim giriş
X
8 ** bazı grafik ve bazı sayık
(Bu sorun değil tanım)Bizim bilgi
C
"grafiğinde tepe noktaları Olası alt boyutuG
k
"O zaman yazabiliriz bir algoritma
V
verilenG
,k
C
, döndürür olup olmadığını bu set ile köşe bir köşe kapağıG
veya değil, içindepolinom zaman.
Sonra her grafik G
, eğer orada var bazı "olası alt köşe G
k
" olan bir köşe kapağı, daha sonra G
NP
.
Notbiz bunu yapıyoruzdeğilpolinom zamanında C
bulmalıyız. Eğer yapabilseydik, sorun olur `P.
NotV
iş için gereken algoritmaherG
, C
bazıları için. Her giriş içinvarbize giriş sorunu olup olmadığını doğrulamak yardımcı olabilecek bilgi ya da etki alanı değil. Bu, bilgi yok, bir giriş olmamalıdır.
NP Zor olduğunu kanıtlamak
Bu SAT, şeklinde boolean ifadeler kümesi gibi NP-tam bilinen bir sorun elde içerir:
(A veya B veya C) (D veya E veya F) ve ve ...
ifade yerdirkarşılanabilirbu ifade yapan bu Boolean değerleri için bazı ayar vardoğru.
Sonrapolinom zaman senin problemin NP-tam sorunu azaltmak.
Yani, belirli bazı girdi X
SAT
(ya da her neyse NP-tam problem kullanıyorsunuz) oluşturmak bazı giriş Y
senin sorunun gibi X
OTURDU ve Y
senin sorunun. 32 ** işlevi çalıştırmak gerekirpolinom zaman.
Yukarıdaki örnekte, 33* *giriş G
köşe boy k
kapak grafiği olacaktır.
Bir içintam bir kanıtı... hem de kanıtlamak zorunda:
X
SAT
=>Y
senin sorununve senin sorunun
Y
=>SAT
40*.
marcogcevap sorununuzu azaltabilir NP-tam çeşitli diğer sorunları ile bir bağlantısı vardır.
Nasıl bir özel durum olduğunu doğrulam...
Nasıl bir Dize Java sayısal bir tip ol...
Nasıl eğer bir sayı 2 Bir güç olduğunu...
Nasıl github üzerinde mevcut bir sorun...
Nasıl bir yöntem Adedi olarak DEĞİL, "...