Olasılıklı bir Turing makinesi durma problemini çözebilir mi?


29

Sonsuz bir gerçek rasgele bit akımı veren bir bilgisayar, bir bilgisayarı olmayan bir bilgisayardan daha güçlüdür. Soru şu: durma problemini çözebilecek kadar güçlü mü?

Yani, olasılıksal bir bilgisayar deterministik bir programın durup durmayacağını belirleyebilir mi?

Belirleyici bir şey yapan olasılıklı bir bilgisayar örneği yapamaz: Koligogorov karmaşıklığı ile gigabayttan daha büyük bir dize çıkaran küçük bir program düşünün (uzunluğu bir kilobayttan az). Kolmogorov karmaşıklığıbir dizgenin dizgesi üreten en kısa deterministik programın uzunluğu. Bu nedenle, tanım gereği, deterministik bir program, karmaşıklığı kendi uzunluğundan daha büyük olan bir dize üretemez. Ancak, eğer gerçekten rastgele bitlerin sonsuz bir akışı verilirse, küçük bir program, sadece 10 milyar rastgele bit ekleyerek ve bu bitlerin Kolmogorov karmaşıklığının yeterince yüksek olacağını umarak% 99.99999 ... oranında başarıya ulaşma yeteneğine sahiptir. . Bu nedenle, bir takım Kolmogorov karmaşıklığı dizisi üretmek, olasılıklı programın olasılık ufku dahilindedir, ancak deterministik program için mümkün değildir.

Bununla birlikte, durma probleminde demir testeresi için tesadüfi bit kullanmanın mümkün olup olmadığını merak ediyorum. Örneğin, bir algoritma rastgele teoremler oluşturabilir ve belirli bir deterministik programın durduğunu kanıtlamak / çözmek için yeterli olana kadar bunları ispatlayabilir / disprove edebilir / silebilir.


3
@ downvoter: Bu, yorum yapmadan aşağı oy almamalıydı.
Dave Clarke

3
Deterministik bir TM'nin tüm vakaları sıralamasını engelleyen nedir? Burada, bir tahminin kontrol edilmesi problemdir, kendini tahminde bulunmamaktır. Ayrıca, yalnızca olasılıkla istenen sonucu yaratırsanız, gerçekten daha güçlü olduğunuzu söyleyemeyeceğinizi unutmayın . p<1
Raphael,

1
"deterministik bir program, karmaşıklığı kendi uzunluğundan büyük olan bir dize üretemez." Diğer bazı deterministik makinelerin de aynı çıktıyı vermesi yeterli. Deterministik TM'lerin sadece olasılıksal olanları değil, aynı zamanda klasik olmayan TM'leri de (keyfi sayıda) taklit edebileceğini unutmayın.
Kaveh

Dün söylemek üzereydim - Kaveh ve arkadaşlarına bakmak - bu site için çok temel bir soruydu (NTM için aynı soru her ilk teori dersinde temel bir sonuçtu). “Olasılıkçı TM” yi resmileştirmenin gayret gösterdiği göz önüne alındığında, yapmadığım için mutluyum.
Raphael,

1
Ve daha önceki ilgili TCS sorumun açıklayıcı
Joseph O'Rourke

Yanıtlar:


22

düzenleme: Ben sadece yazdım bazı şeyler tamamen saçma, bunun için üzgünüm olduğunu fark ettim. Şimdi ispatı değiştirdim ve daha hassas kullandığım olasılıksal makinenin tanımını yaptım.

Olasılıklı Turing makinesi tanımınızı doğru alıp almadığımı bilmiyorum: üzerine sonsuz bir sıkıştırılamaz dizginin yazıldığı ek bir bant bulunan bir makine ve bunun yanında deterministik bir makine gibi davranıyor mu? Sıkıştırılamaz dizeyi düzeltirsek, aldığımız sınıf ilginç görünmüyor.

Bence olasılıksal bir Turing makinesini birkaç şekilde tanımlayabiliriz. Oldukça doğal görünen bir tanım kullanacağım (ve bunun için kanıtım işe yarıyor;) Şöyle şöyle bir olasılıksal bir makine tanımlayalım: üzerine sınırsız bir dize yazan ek bir bant alır, bu makinenin için bir dil karar verdiğini söyleriz. her x L olasılıkla durur ve kabul eder > 1LxL olasılık, bu ek rasgele dizgilerin üzerine alındığında ve herxLiçin>1ile durur ve reddeder.>12xL .>12

Şimdi , deterministik makineler için durma problemini çözen böyle bir olasılıksal makine varsa , onu deterministik makineler için durma problemini çözen deterministik bir makine H yapmak için kullanabileceğimizi ve böyle bir makinenin bildiğini göstereceğiz. var olamaz.PH

Böyle bir var olduğunu varsayın . Girdi olarak bazı girdiler x olan olasılıksal bir makine R alan bir deterministik makine M yapabiliriz.PMRx

  • durdurur ve kabul eder ve yalnızca , x'i kabul ederse (yani R , yarı rasgele dizgilerden daha fazlasında x'i durdurur ve kabul eder ).RxRx
  • durur ve reddeder ve eğer sadece x'i reddederse (yani, R, x'i yarı rasgele dizelerde durdurur ve reddeder ).RxRx
  • aksi halde döngüler

Temel olarak, olacak tüm i 1 , 2 , . . . simüle R girişi x ve her ipi ile 0 , 1 i üzerinde bir tel ön ek olarak R, 'in rasgele bir bant. Şimdi:Mi1,2,...R,x0,1benR,

  • eğer uzunlukta önekleriIolan Rdaha fazla okumak için çalışmadan durdurulmuş ve kabuli, rastgele banttan bitiMdurur ve kabul>12i RiM
  • eğer uzunlukta önekleriIolan Rdaha fazla okumak için çalışmadan durdurulmuş ve reddedileni, rastgele banttan bitiMdurur ve ıskarta>12i RiM
  • aksi takdirde simülasyonu i : = i + 1 ile çalıştırır .Mi:=i+1

Şimdi kendimizi ikna etmeliyiz ki, eğer , p > 1 olasılıkla x kabul ederse (reddederse).Rx , sonra bazılarınaikabul edecektir (reddetmek)>1p>12iRastgele dizidenibitindendaha fazla okumaya çalışmadan rastgele dizeniniuzunluğundaki 2 öneki. Teknik, fakat oldukça kolaydır - aksi takdirde varsayalım, kabul etme (reddetme) olasılığıp>1'eyaklaşır.>12ii olarakbenbazıları için dolayısıyla sonsuza giderbenböyle olmak zorunda olacakp>1p>12ii .p>12

Şimdi sadece bizim deterministik makine tanımlamak durdurulması problemi çözmek (yani karar verme, belirli bir belirleyici makinesi K kabul belirli bir kelime x ) bir şekilde , H ( N , x ) = E (HNx. Not, M ( P ( N , x ) ) bizim olasılık makineler tarafından bir dil karar şekilde tanımlanmadığı için, her zaman durur, bu iki biri her zaman oluşur:H(N,x)=M(P(N,x))M(P(N,x))

  • Makine yarıdan fazla rasgele dizgiyi durdurur ve kabul eder
  • Makine yarıdan fazla rasgele dizgiyi durdurur ve reddeder.

"Sadece numaralandır" yorumumu hazırladığın için teşekkürler! ;) İki teknik yorum: Birinci noktada, mi demek istiyorsun ? Sonunda, S demek istiyorsun.>2i1 ? S(Q)
Raphael

1
P'nin durmasını her zaman durdurmak istemiyorsanız, hatta bir inşa etmek önemsiz olduğunu unutmayın. yalnızca verilen deterministik Turing makinesi durursa ve yoksa kabul deterministik bir Turing makinesi P'nin edin.
Tsuyoshi Ito

Senin varsayımın nedir? Sonunda durması garanti edilmediği sürece, olası bir Turing makinesini reddedemezsiniz.
Tsuyoshi Ito

Durma olasılığı ek dize VE giriş sözcükleri üzerinden alınır, ya da ne?
M. Alaggan

1
@Mohammad ALAGGAN: Hayır, bu bölüm yazıldığı gibi doğrudur: olasılık yalnızca ek dizgiden devralınmıştır (yazı turalarının sonuçlarını belirterek). Giriş dizgisinde olasılık dağılımını varsaymadığımız için, girdi dizgisindeki olasılık iyi tanımlanmamıştır. Giriş dizgisinde bir olasılık dağılımı tanımlanmış olsa bile, girdi dizgisi üzerinde yüksek doğru cevap olasılığı, algoritmanın sadece algoritmanın normal gereksinimlerinden farklı olan çoğu girdi için doğru olduğu anlamına gelir.
Tsuyoshi Ito,

14

Olasılıksal bir algoritma ile ne demek istediğine bağlı olarak bazı yüklemleri belirler.

Önemsiz bir olasılık algoritması mevcuttur P , öyle ki belirleyici bir Turing makinesi için M ,

  • P ( M ), M durduğunda sıfır olasılığını kabul eder ,
  • P ( M ) M durmazsa asla kabul etmez ve
  • P ( M ) her M için 1 olasılıkla durur .

Bu nedenle, olasılıksal algoritma P , bu anlamda deterministik Turing makinelerinin durma problemini çözer. (Burada “ M durur” terimi “ M boş giriş ile durur.”)

Bununla birlikte, gereksinimi makul bir şekilde güçlendirirseniz, deterministik Turing makineleri için durma problemini artık çözmeniz pek mümkün değildir. Örneğin,

  • Eğer gerekiyorsa P ( M durma noktasına) daima yerine sadece olasılık 1 , o zaman açıktır P deterministik algoritma ile simüle edilebilir. ( “Her zaman” ve “1. olasılık ile” arasındaki farkın açıklaması için Wikipedia'ya bakınız. )
  • Eğer P ( M ) 'nin durmasını ve her M için kesinlikle 1/2' den büyük olasılıkla doğru cevabı vermesini isteyerek hata sınırlarını kesinleştirirseniz (yani, P ( M) 'nin umrunda değil )' nin durmaması veya durmaması önemli değildir. vakaların geri kalanında yanlış cevap verin), o zaman P , Karolina Sołtys'in cevabında belirtilen argüman kullanılarak bir deterministik algoritma ile simüle edilebilir .

Bu nedenle, olasılıksal bir algoritma deterministic Turing makinelerinin durma problemini bu anlamda çözemez.


Cehaletimi affet, ama '' her zaman '' 'ile' 'olasılık 1' 'ile' 'durma' 'arasındaki fark nedir?
Rob Simmons,

1
@Rob: Bunun zor bir nokta olduğunu düşünüyorum. Sonuç kafalar olana kadar tekrar tekrar para basan basit bir olasılıklı Turing makinesi düşünün. Bu Turing makinesi, tüm madeni para atışlarının kuyruklara neden olduğu durumlar dışında durur. Bu nedenle, olasılık 1 ile durur, ancak her zaman durmaz.
Tsuyoshi Ito,


P (M) 'nin durmayarak başarısız olmasına izin verirseniz, deterministik bir simülasyonu nasıl yapabileceğinizi bilmiyorum. Örneğin, deterministik simülasyonunuzu bazı uzunluk-N önek dizeleri üzerinde çalıştırdığınızı ve bir süre sonra öneklerin <% 50'sinin durup cevap verdiğini varsayalım. Kalan önek dizelerinin bir cevap döndürmek için daha fazla zamana ihtiyaç duyup duymadığını ya da hepsinin başarısızlık durumunun bir parçası olarak sonsuz bir döngüye takılıp takılmadığını nasıl biliyorsunuz? Eski ise, beklemeye devam edersiniz. İkincisi ise, geçerli raundu sonlandırır ve tüm uzunluk-N + 1 öneklerinde tekrar çalıştırılır.
Mike Battaglia

Çünkü Ama bu, tespit etmek imkansızdır olduğunu durdurulması problemi! Turing makinesinin bu girdilerde durup durmayacağını bilemeyiz.
Mike Battaglia,

12

Bir olasılık Turing makinası varsa Genelde, bazı karar problem çözme, her zaman çalıştırarak deterministically taklit olabilir P rastgelelik mümkün olan her değeri için ve çoğunluğu cevabı çıkışı P . Bu nedenle, hiçbir olasılıklı Turing makinesi kararsız bir karar sorununu çözemez.PPP

Bunun Raphael'in yorumunun anlamı olduğunu düşünüyorum.


7

ANA

de Leeuw, K., Moore, EF, Shannon, CE ve Shapiro, N. Olasılık makinelerinde hesaplanabilirlik, Otomatlar çalışmaları, s. 183-212. Matematik çalışmalarının yıllıkları, no. 34. Princeton Üniversitesi Yayınları, Princeton, NJ, 1956.

G. Çuvallar, Çözülemezlik Dereceleri, Princeton University Press, 1963.

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.