( GÜNCELLEME : Daha iyi bir oluşmuş bir soru çıkmaktadır burada bu soruyu iyi tanımlanmış olmadığını göstermek altında kabul cevap yorumlar)
Durma probleminin imkansızlığının klasik kanıtı, durma algılama algoritmasını girdi olarak uygulamaya çalışırken bir çelişki göstermeye bağlıdır. Daha fazla bilgi için aşağıdaki arka plana bakın.
Gösterilen çelişki, öz-referans paradoksundan dolayı geçerlidir ("Bu cümle doğru değildir" cümlesi gibi). Ancak, bu tür öz referansları kesinlikle yasaklamış olsaydık (yani, söz konusu öz referansların durmak için karar verilemez olduğu gerçeğini kabul ettiysek), sonuç ne kaldı? Kendini referans almayan makinelerin geri kalan setinin durdurma sorunu durdurulabilir mi, değil mi?
Sorular:
Kendi kendine referanslamayan (yani kendiliğinden girdi olarak almayan) olası tüm Turing makinelerinin bir alt kümesini düşünürsek, bu alt kümenin durdurma problemi hakkında ne biliyoruz?
GÜNCELLEME
Belki de peşimde olduğum şeyin daha iyi bir şekilde yeniden düzenlenmesi, kararlı bir seti neyin tanımladığını daha iyi anlamaktır. Kendisini HALT çalıştırdığınız durumlar dışında, kararsızlık hakkında herhangi bir bilgi eklemediği için klasik kararsızlık kanıtını izole etmeye çalışıyordum.
Arka plan: Turing makinesi olduğu bir çelişki doğru varsayıldığında giriş karar verebilir M Turing makinesi ve bir kodlama X olsun ya da olmasın, M ( X ) durur. Daha sonra, bir Turing makinesi dikkate K alır M ve X ve kullanan Q olmadığına karar vermek için M ( x ) karşısında durmasının veya olmayan, ve daha sonra yapar, yani K ise durur M ( X ) durdurmak değildir ve eğer durdurmaz M ( X )durur. Sonra bir çelişki gösterir, çünkü K durmazsa durur ve durduğunda durmaz.
Motivasyon: Bir meslektaşım yazılım sistemlerinin resmi doğrulaması üzerinde çalışıyor (özellikle sistem kaynak kodu düzeyinde kanıtlanmışsa ve derlenmiş sürümü için derlemek, derleyici sorunlarını etkisiz hale getirmek için) ve onun durumunda bir kendilerine referans vermeyeceklerinden emin olduğumuz özel gömülü kontrol programları seti. Gerçekleştirmek istediği doğrulamanın bir yönü, giriş kaynak kodunun sona erdiği kanıtlanmışsa, derlenmiş programın durup durmayacağının garanti edilip edilmeyeceğidir.
GÜNCELLEME
Aşağıdaki yorumlara dayanarak, kendinden referans göstermeyen Turing makinelerinin anlamını açıklığa kavuşturuyorum.
Amaç, bunu kanıtta belirtilen çelişkiye yol açmayan küme olarak tanımlamaktır (bkz. Yukarıdaki "Arkaplan"). Aşağıdaki gibi tanımlanabilir:
Turing makinesi olduğu varsayılarak Turing makinesi bir dizi için durdurulması problemi karar S , daha sonra S -olmayan kendinden referans alınmak sureti ile Q bu çağırır tüm makineleri hariç olmadığını Q üzerindeki S (doğrudan ya da dolaylı olarak). (Bu açıkça Q'nun S üyesi olamayacağı anlamına gelir .)
Çağırarak neyin kastedildiğini açıklamak için üzerinde S dolaylı:
Çağırma ile S Turing makinesi ile gösterilir Q (herhangi bir elemanına karşılık gelen bant üzerine durumları ve belirli bir Başlangıçtaki girişler kümesi ile S o giriş başında ilk kafa ile,). Bir makine B başlatır Q üzerindeki S "dolaylı" bu adımlar (sonlu) sırası varsa B ilk yapılandırmasına yapılandırma "yapılı bir" neden olacak Q ( S ) .
GÜNCELLEME 2
Aşağıdaki aynı cevabı yapan sonsuz sayıda Turing makinesinin olduğunu ve bu nedenle benzersiz olmadığını iddia eden bir cevaptan , Q'nun tek bir Turing makinesi değil, tüm bilgisayarların (sonsuz) setini söyleyerek yukarıdaki tanımı değiştiriyoruz aynı işlev (HALT), burada HALT, bir Turing makinesinin belirli bir girişte durduğuna karar veren işlevdir.
GÜNCELLEME 3
Turing Machine homomorfizmasının tanımı:
A geçiş grafik olarak, B edilene homomorfik ise bir TM TM B homomorfik olan standart etiketli düğümleri ve kenarlara sahip grafikler homomorfizması anlamında kullanılmaktadır. Bir TM'nin geçiş grafiği (V, E), V = durumları, E = durumlar arasındaki geçiş yaylarıdır. Her yay (S, W, D), S = sembol bandı okur ve W = üzerine yazılacak sembol ve D = kafanın gösterdiği yön ile etiketlenir.