Apakah non-determinisme dalam mesin turing non-deterministik berbeda dari yang ada pada automata terbatas dan push down automata?

9

Biarkan string input diberikan sebagai . Kemudian jika NFA saat ini dalam keadaan r (dan telah membaca input hingga alfabet w i ) maka sebelum membaca simbol input berikutnya NFA terbagi menjadi dua NFA, satu berada di keadaan r dan yang lainnya di s , jika ada transisi dari tipe r ϵ s . Jika ada siklus tipe r ϵ s ϵ q 1 . . . . ϵ qw1w2...wnrwirsrϵs , di mana q i adalah beberapa status NFA, maka tidak ada gunanya mengingat NFA lain dalam status r hingga titik di mana input telah dibaca hingga alfabet w i . Jika PDA (non-deterministik) dalam keadaan r (dan input dibaca hingga w i ) dan terdapat siklus r ϵ , ϵ a s ϵ , ϵ a q 1 . . . . ϵ , ϵ arϵsϵq1....ϵqkϵrqirwi

rwi(di mana transisiϵ,ϵaberarti bahwa tidak ada setelahwidibaca dari input, tidak ada yang muncul atau dibaca dari stack dan alfabetadidorong ke stack) kemudian sebelum membaca input berikutnya alfabetwi+1akan ada PDA terbatas di negara-negarar,s,q1,. . . qkrϵ,ϵasϵ,ϵaq1....ϵ,ϵaqkϵ,ϵarϵ,ϵawiawi+1r,s,q1,...qk karena berbeda dengan NFA walaupun pada kondisi stack isinya terbatas bisa berbeda (kemungkinan tak terbatas), kalau saya tidak salah.

Seperti halnya NFA dan PDA, kekuatan non-determinisme berasal dari transisi . Jadi saya berasumsi bahwa mesin Turing non-deterministik juga mendapatkan non-determinisme dari transisi ϵ seperti NFA dan PDA (lebih seperti PDA). Saya tahu bahwa mesin Turing deterministik dapat mensimulasikan yang non-deterministik (saya tahu bukti yang menggunakan pencarian pertama-roti). Tapi sekarang saya ragu bagaimana itu mungkin. Karena jika siklus dari tipe dalam PDA di atas, ada dalam diagram keadaan mesin Turing non-deterministik maka sebelum membaca simbol selanjutnya w i + 1ϵϵwi+1mesin Turing deterministik bahkan ketika mensimulasikan konfigurasi di beberapa cabang mesin Turing non-deterministik (sementara bfs) harus melacak mesin Turing infinite (sekali lagi keadaannya terbatas tetapi simbol pada rekaman memiliki kemungkinan tak terbatas).
Lantas bagaimana tepatnya non-determinisme di definisikan dalam kasus mesin Turing? Apakah saya salah memahami sesuatu yang sepele? Apakah mesin Turing non-deterministik menggunakan transisi ?ϵ


Saya minta maaf atas keraguan sepele saya. Jika ada yang salah saya dapat memperbarui pertanyaan saya.

sashas
sumber
2
Mengenai pertanyaan judul, tidak ada banyak perbedaan dalam definisi formal. Adapun kekuatan yang muncul, ya itu memiliki implikasi yang jauh berbeda di setiap model mesin. Sedangkan untuk sisa pertanyaan, sulit untuk diuraikan. :(
vzn
1
Sudahkah Anda memeriksa Wikipedia? en.wikipedia.org/wiki/Non-deterministic_Turing_machine
Yuval Filmus
epsilon
Aku merasa begitu. Aku sungguh minta maaf. Saya buruk dalam mengedepankan keraguan saya. Tapi saya bisa meningkatkan jika Anda memberikan saran.
sashas

Jawaban:

8

Non-determinisme adalah konsep yang sama dalam semua konteks - mesin diperbolehkan beberapa opsi untuk melanjutkan pada titik tertentu. Namun, semantiknya sedikit berbeda karena DFA / NFA dan PDA selalu mendefinisikan fungsi total , sementara mesin Turing (deterministik atau non-deterministik) secara umum mendefinisikan fungsi parsial .

fxf(x)=fMMxM(x)MxM(x)=.

MxM(x)=1M(x)=0M(x)=ML={x:M(x)=1}

Mesin Turing non-deterministik (yang selalu merupakan penentu) diizinkan untuk "bercabang" (memiliki beberapa opsi yang memungkinkan pada titik waktu tertentu), dan memiliki semantik berikut:

  • M(x)=1xM
  • M(x)=0xM
  • M(x)=xM

Dengan definisi ini, mudah-mudahan jelas bagaimana mensimulasikan mesin Turing non-deterministik menggunakan penentu mesin Turing deterministik: Anda mencoba semua cabang, memeriksa apakah ada di antara mereka yang mengarah ke keadaan berhenti menerima. Setelah semua cabang berhenti, Anda dapat memutuskan apakah akan pergi ke negara penerima atau ke negara penerima. Jika mesin Turing non-deterministik tidak berhenti di beberapa cabang, maka mesin Turing yang deterministik juga akan berhenti.


ϵϵ

ϵ

Yuval Filmus
sumber
rb,casrbbcaϵacϵ
@sasha Execution "splits" setiap kali ada lebih dari satu opsi untuk melanjutkan.
Yuval Filmus
ϵ
1
ϵ
1
AaB1B2BnAaAB1BnϵAa