2016-03-27 18 views
2

ben bu dil tanınabilir olup olmadığını kanıtlamak için gereken ε dizesini kabul etmeyen bir Turing makinesi:Mw dize kabul eder ve

{& langle; w & rangle M, ;: M Turing makinası olduğunu dize w kabul eder ve hiç A TM üzerinde bir azalma yok benim, ama nasıl boş bir dize hallediyorsunuz dize £ değenni}

kabul etmiyor?

+0

[cs.stackexchange.com] (http://cs.stackexchange.com/) –

+0

ile ilgili bu soru için daha uygun bir sonuç bulacağınızdan kesinlikle emin olabilirsiniz. İpucu: Bu dil tanınmıyor. – templatetypedef

+0

Teşekkürler! Bu, Atm'ın tamamlayıcısını kendi dilimle eşleştiren bir işlev olduğu anlamına gelmelidir. ~ Atm için bir tanıyıcı alabiliyordum ve bunun tersini verebiliyordum, ancak yine de boş dizgeyi önemsemiyor. –

cevap

0

Burada, dilinize A TM tamamlayıcısından indirim yapmanın bir yolu vardır. Mw kabul etmediğini varsayalım

M' = "On input x: 
     If x = "iheartquokkas", accept. 
     Otherwise: 
      Run M on w. 
      If M accepts, accept; 
      If M rejects, reject; 
      (Implicitly: if M loops, loop.)" 
w' = "iheartquokkas" 

İlk:

bir TM M ve bu TM/dize çifti inşa w bir dize göz önüne alındığında. Daha sonra makine M 'aslında w' dizesini kabul eder, çünkü bunu yapmak için programlanmıştır. Ayrıca, M 'on & epsilon'u çalıştırdığınızda, M'yi w üzerinde çalıştıracak ve M'yi kabul etmeyeceği için asla kabul etmeyeceksiniz. Böylece M 'w'yi kabul eder, ama & epsilon ;, & langle; M', w '& rangle; kendi dilinizde. İkinci olarak, M'nin w kabul ettiğini varsayalım. Daha sonra M 've epsilon'u çalıştırdığınızda kabul edersiniz, bu yüzden M' nin w'yi kabul ettiği, fakat epsilon olmadığı durumlar söz konusu değildir. Bu nedenle & langle; M ', w' & rangle; sizin dilinizde değil.

Artık diliniz anlaşılamayacak şekilde A TM'un kendi dilinize göre bir eşleme azaltma yöntemine sahipsiniz.

Şimdi, bunun eşdeğer olmadığını kanıtlayabilir misiniz?

İlgili konular