Hiç durmayan bir makine her zaman döngüye girer mi?


22

Tam aynı bandın aynı hücresindeki okuma / yazma kafasıyla daha önce karşılaşılan bir duruma geri dönen bir Turing makinesi bir halkada yakalanır. Böyle bir makine durmuyor.

Birisi, dönmeyen ve hiç durmayan bir makineye örnek verebilir mi?


1
Sadece bir Not: bant da farklı olabilir: TM aşaması aynı hücreye giren bir sonsuz bir döngü için yeterli bir (fakat gerekli değildir) durumu ve aşama t 2 > t 1 aynı durumda, en olmasıdır adım t 2 adım arasında kafa tarafından ziyaret bant kısmı t 1 ve basamak t 2 sadece girmeden önce gelen kısmına eşittir t 1 . t1t2>t1t2t1t2t1
Vor

4
Bir TM'nin durmamak için döngü yapması gerektiğinde, TM'ler için durma problemini kolayca kolayca çözebilirsiniz: önceki tüm yapılandırmaları hatırlayın ve her adımda, gördüğünüz bir yapılandırmada olup olmadığına bakın önceden ve eğer öyleyse, olayın durmadığını biliyorsunuzdur (aksi halde, sonsuza dek koşmak için dönmesi gerektiğini varsaydığımızdan, sonsuza dek sürmeyecektir, yani duracaktır, bu durumda sonunda bunu bil).
Patrick87,

@Niel de Beaudrap cevabından ilham alan bir turing makinesi, oeis.org/A014445 sırasını hesaplayabilir ve tek bir sayı elde edince durabilir. Oeis.org/A016742'yi hesaplanan toplam olarak hesaplayabilir ve sayı tuhaf olduğunda durdurabilirdi. Bu hesaplayabilirdi x^2burada xarasındaki döngüleri -100ve 100ve sonuç negatif olduğu zaman bisiklet bir modülo ve durma ile yapılır. x%2X'in sıfırdan pozitif sonsuzluğa kadar değiştiği yeri hesaplayabilir ve sonuç 2'ye eşit olduğunda durabilir.
Leonid,

Sorunun varsayımı yalnızca deterministik makineler için geçerlidir.
Raphael

Yanıtlar:


15

Bant kafasını her zaman sağa hareket ettiren ve her adımda özel bir boş olmayan bant sembolü basan TM'yi düşünün. Bunun anlamı, TM her zaman sağa doğru hareket ettiği ve asla bir durumu tekrarlamadığı için durmaz, çünkü k adımlarından sonra bant kafası makinenin kth hücresinin üzerindedir. Sonuç olarak, makinenin her bir konfigürasyonu diğerlerinden farklıdır ve makine her zaman döngü halindedir.

Ayrıca bu tür makinelerin varlığını yapıcı olmayan bir şekilde gösterebiliriz. Asla durmayan her TM'nin sonunda döngüye girdiğine dair çelişkiler varsayalım. Bu , w dizgisinde TM başlatırsanız , aşağıdakilerden birinin gerçekleşeceği anlamına gelir:Mw

  1. durur veyaM
  2. bir konfigürasyonu tekrarlar.M

Bu durumda, durma sorunu aşağıdaki gibi karar verilebilir. Bir TM ve w dizgisine bakıldığında , her bir noktada bandın içeriğini, geçerli durumu ve geçerli bant konumunu yazan M'yi w üzerinde simüle edin . Bu yapılandırma bir kopya ise, çıktı "durmaz". Aksi takdirde, M w üzerinde durursa , çıkış "durur". Bunlardan birinin sonunda gerçekleşmesi garanti edildiğinden, bu işlem daima sona erer, bu yüzden var olmadığını bildiğimiz durma problemi için bir algoritmaya sahip oluruz.MwMwMw

Bu yardımcı olur umarım!


Hah, seni o düzenlemeye sok. Soru hakkındaki yorumuma bakın. Bu, hiç durmayan bir TM'nin neden döngülenmemesi gerektiğini açıklamaktan hoşlanıyor ... sezgiyi oluşturuyor.
Patrick87,

@ Patrick87- Üzgünüm, yorumu fark etmedim. İşyerimdeki eki düşündüm ve geri döndüğümde girmek için oturdum.
templatetypedef

Sorun değil, dostum ... Bunu eklediğine sevindim, çünkü açıklamanın iyi bir yolu olduğunu düşünüyorum. Beni bir yorum olarak ekledim, cevap olarak değil, beni buna yendikten sonra. : D
Patrick87,

Aslında, durma problemi açısından böyle geri dönüp kaseti değiştiren ad infinitum "gerçek problem" gibi görünüyor. O yürüteçleri tespit edebiliyorsunuz.
Raphael

12

Ondalık basamakların tümünü (veya herhangi bir tabanda sonlandırıcı olmayan herhangi bir fraksiyonu) hesaplayan bir Turing makinesi hiçbir zaman durmaz ve her hücreye yalnızca sınırlı sayıda yazabilir. Elbette, durma durumuna geçiş olmaması gerçeği ölü bir hediye olur, ama en azından doğal bir örnek.

Daha ilginç (ama aynı zamanda belirsiz) bir durum da, Collatz işlevini girişindeki yinelemeli olarak hesaplayan bir Turing makinesi olabilir, sonlandırma ve değeri 1 tamsayısını ünlü elde sadece eğer Collatz tahmin

f(n)={3n+1,if n is odd;n/2,if n is even,
Bu herhangi bir giriş için, bu prosedürün sonunda durmasıdır. Ancak bunun böyle olup olmadığı bilinmemektedir. Ya da (bir tamsayı varlığına karşılık gelen döngüler etrafında bir tamsayı dizisi bulabilirsiniz: Prensipte, iki farklı yolla başarısız olabilir , n , öyle ki , bileşimlerin bir dizi için buradaki n,  l); veya n , f (n) , f (f (n)) tam sayılarının zincirleri olabilir.fff(n)=n, ... asimptotik olarak sonsuzluğa sapar. İkinci türden herhangi bir sekans varsa, bu, bant sürekli olarak daha büyük ve daha büyük sayılara değiştirileceği için yukarıda tarif ettiğim Turing makinesinin tekrarlanmayacağı anlamına gelir.

Rakamlarla oynamayı seviyorum pi. Herhangi bir basamağın karesi pitam olarak 7 olduğunda, bir TM durdurabilir .
Leonid

@Leonid: Bazı girişleri kabul eden ve bu giriş tarafından belirlenen bir koşulda duran bir Turing makinesini kesinlikle düşünebilirsiniz. Girdinin bir bölümünü durdurduğu koşulların özelliklerini bile belirleyebilirsiniz. Ve tarif ettiğiniz gibi, asla karşılanmayan bir sınırlama belirleyerek bir girdi sağlayabilirsiniz.
Niel de Beaudrap

10

Okuma / yazma kafasını asla sola doğru hareket ettirmeyen durmaz Turing makinelerini düşünün.


Bazıları hala döngü. </nitpicking>
Raphael

5

Eğer bu doğru olsaydı, durma problemi çözülebilir olurdu. Sadece Turing makinesini çalıştırırken görülen her bir (bant, durum) çifti kaydedersiniz ve makine durur (bu durumda durur) veya daha önce gördüğünüz bir çifti görürsünüz, bu durumda makine durmuyor.

Durma sorunu belirlenemediğinden, bu doğru olamaz. (Karşı örnekler için diğer örneklere bakınız.)



Sanırım değil. Üzgünüm, benim yazdığımda bu cevabı bir şekilde özledim.
ÖzyinelemeliIronik 19
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.