NP (karmaşıklık)

NP, belirsiz Turing Makinesi ile çokterimli (polinomsal) zamanda çözülebilen karar problemlerini içeren karmaşıklık sınıfıdır.

Bu sınıftaki problemler belirli Turing Makinesi ile çokterimli zamanda doğrulanabilirler ve bu şekilde doğrulanabilen her problem NP sınıfındadır. Bu nedenle NP, (belirli Turing Makinesi ile) çokterimli zaman da doğrulanabilen problemlerin sınıfı olarak da tanımlanabilir.

Belirli Turing makinesi aynı zamanda belirsiz Turing makinesi olduğundan, P sınıfındaki bütün problemler aynı zamanda NP'dedir. ---

NP-ZorDüzenle

En az her bir NP problem kadar zor olan problemlerin bulunduğu sınıfa NP-Zor (NP-hard) denir. Daha resmi bir şekilde,

 

Burada  , L probleminin, H problemine çokterimli zamanda indirgenebildiği anlamına gelir.

Bir başka deyişle, NP-Zor sınıfındaki herhangi bir problem çok terimli zamanda çözülebilirse, NP sınıfındaki bütün problemler çok terimli zamanda çözülebilir.

NP-TamDüzenle

NP-Tam (NP-complete), hem NP olup hem NP-Zor olan problemlerin sınıfıdır. Dolayısıyla bu sınıftaki problemler NP sınıfının en zor problemleridir. Yukarıdaki tanımdan yola çıkarak, herhangi biri çokterimli zamanda çözülebilirse, bütün hepsi çok terimli zamanda çözülebilir.

NP-Tam örnekleriDüzenle

Bunlardan CNF-SAT ya da kısaca SAT, tarihsel olarak NP-Tam olduğu ispatlanan ilk problemdir.

İlgili bağlantılarDüzenle