P, NP ve özel Turing Makineleri


13

Ben biraz yeniyim, ancak bilgi işlem ve karmaşıklık teorisi alanıyla çok ilgileniyorum ve problemlerin nasıl sınıflandırılacağı ve problemlerin bunları çözmek için kullanılan makine ile ne kadar güçlü bir şekilde ilişkili olduğu konusundaki anlayışımı netleştirmek istiyorum.

Anlayışım

  • Standart Turing Makinesi - Sonlu alfabesi, sonlu sayıda durumu ve tek bir sağ sonsuz bandı olan bir Turing Makinesi
  • Turing Eşdeğeri Makine - Standart Turing Makinesi'ni taklit edebilen ve taklit edebilen bir Turing Makinesi (sıklıkla, emülasyon tarafından elde edilen alan ve zaman arasında bir miktar değiş tokuş ile)
  • P - Standart Turing Makinesi (yukarıda tanımlanmıştır) kullanılarak polinom zamanda çözülebilen problem sınıfı
  • NP - Standart Turing Makinesi kullanılarak polinom zamanında doğrulanabilecek problem sınıfı
  • NP-complete- NPtüm NPproblemlerin polinom zamanda dönüştürülebildiği en zor problemler

Benim sorum

(Karmaşıklık sınıfları P, NP, NP-complete, vs) algoritması ya da algoritma ve makine ile ilgili?

Başka bir deyişle, bir Turing Eşdeğer Makinesi oluşturabilirseniz (bu, bir Standart TM'nin yapabileceği tüm sorunları çözebilir, ancak farklı bir süre / alanda) ve bu yeni makine NP-complete, zaman içinde büyüyen bir sorunu çözebilir. girdiye göre polinom, bu ima eder P=NPmi?

Ya da NP-completeproblemin polinom zamanda mümkün olan tüm Turing Makinelerinde çözülmesi gerekir Pmi?

Yoksa yukarıda temel olan bir şeyi yanlış anlıyor muyum?

Bir gözüm vardı (belki doğru arama terimleriyle değil, tüm jargonu bilmiyorum) ama çoğu ders / not vb. Standart makinelere odaklanıyor, ancak özel makinelerin genellikle biraz zaman / uzay hızına sahip olduğunu söylüyor karmaşıklık sınıflarına nasıl katlandığını söylemeden, yer / zaman pahasına. Bunu açıklayan makaleler bulabilmek için henüz bu alandaki jargona yeterince aşina değilim.


Sanırım cevabınız bu gönderi cevabına çok benziyor: Temel olarak P, NP, NP-Complete ve NP-Hard'ın tanımı nedir? Şuna bir göz at.
Reza

Yanıtlar:


9

Algoritmalar ve makineler sorunuzda tanımlanmadı ve ne sormak istediğinizi sormak için gerekli olduklarını sanmıyorum.

Karmaşıklık sınıfları Turing makineleri kullanılarak tanımlanır. Bu onların tanımı. Eğer herhangi bir şeyi kanıtlamak istiyorsanız, bu tanımları kullanmalısınız. Bu model ile Turing makineleri arasında bazı yazışmalar kanıtlamadığınız sürece başka herhangi bir modelle ilgili hiçbir şey ilgisizdir.

Herhangi bir "makul" "makinede" verimli "" hesaplama "nın aynı sayıdaki teorik işlevleri yakalayacağını söyleyen bir hipotez olduğunu da ekleyeyim. Ancak alıntı yapılan terimler tanımlanmadıkça bu kanıtlanabilir bir ifade değildir. Bunu birçok makine için kanıtlayabiliriz, ancak tüm makineler için değil. Turing makinesi eşdeğeri olmak yeterli değildir, bunların güçlü olmasını istiyoruz , yani bu makineleri Turing makineleri ile simüle edebilmeliyiz ve bunun tersi de verimli bir şekilde gerçekleştirilmelidir. hakkında güzel şeyPNPP

BPP

BPP=P

BQPPP


PNPNP


Bu nedenle, özel makineniz sorunları verimli bir şekilde çözebilir, ancak standart bir Turing Makinesi tarafından verimli bir şekilde taklit edilemezse, bu sonuç P? = NP ile ilgili değildir (bu Makineyi gerçek hayatta inşa edebilsem bile)?
Bingo

Evet doğru.
Kaveh

Ve sonra bu genişletilmiş Kilise Turing tezini ihlal eder mi?
Bingo

Şart değil.
Kaveh

6

Bir Turing makinesinin verimli simülasyonunun sadece bir Turing makinesinin hesaplamasını simüle edebileceği anlamına gelmediğinin altını çizmek için önemsiz bir not, tersine verimli bir şekilde (polinom zaman yavaşlaması); aynı zamanda giriş / çıkışının verimli bir şekilde bir modelden diğerine dönüştürülmesi gerekir .

Önemsiz bir örnek: SAT problemini sabit zamanda çözebilen ancak bir mermerler yığını (tekli) girişi olarak kullanan bir Turing eşdeğeri cihaz bulursanız, hiçbir şey sonuçlandıramazsınız. Cihazınız bir ikili giriş kullanıyorsa, ancak bir SAT örneğini kullanılan giriş formatına dönüştürmek için üstel sayıda adım gerektirir.


3

Anlayışınız çok iyi! İlgileniyorsanız, bir metinde daha fazla bilgi bulabilirsiniz, örneğin Sipser'in Hesaplama Teorisine Giriş.

Bir şekilde hesaplanabilecek her şeyin bir Turing Makinesi kullanılarak hesaplanabileceğini söyleyen Kilise Turing Tezi adlı bu fikir var. (Bu kanıtlanabilir değil, sadece doğru olduğunu düşündüğümüz bir fikir ya da bir tür doğa kanunu).

Bundan bahsediyorum, çünkü bir şekilde polinom zamanında hesaplanabilecek her şeyin bir Turing Makinesi kullanılarak polinom zamanında hesaplanabileceğini söyleyen "Genişletilmiş Kilise Turing Tezi" de var.

Bu varsayımdan şüphe etmek için iyi bir neden var, çünkü en iyi bilinen klasik algoritmalar üzerinde polinomdan daha iyi bir hız elde eden kuantum hesaplama algoritmalarını biliyoruz. Ancak bunun dışında, inşa edebileceğiniz herhangi bir klasik makinenin (kesinlikle bir Turing Makinesindeki herhangi bir varyant) bir Turing Makinesinden daha hızlı olamayacağı düşünülmektedir. Eğer "Turing-Eşdeğer Makine" polinom zamanında NP-Complete problemini çözen bir algoritma çalıştırabiliyorsa, o zaman P = NP çünkü bir TM'de aynı problem için bir polinom-zaman algoritmasına dönüştürebilirim.

Ancak bir çeşit Turing-Eşdeğer Makine düşündüyseniz, muhtemelen ilk yapacağınız şeylerden biri klasik bir TM ile nasıl simüle edileceğini bulmaktır ve bu size polinom-zaman dönüşümü olup olmadığını söyler veya değil. Ve cevap neredeyse kesinlikle evet olacaktır, ancak belki üstel olarak daha yavaş olabilirsiniz (ancak daha hızlı değil - kuantum değilse, o zaman belki de düşünüyoruz).

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.