Dalam jawaban ini diasumsikan bahwa mesin Turing memiliki kaset infinite dua arah. Klaim tidak berlaku untuk rekaman tak terbatas satu arah.
Pertama-tama, saya mendefinisikan kelas bahasa sebagai kelas semua bahasa yang dapat dipilih oleh mesin Turing satu-pita dengan 3 status ( C 3 didefinisikan sebagai kelas bahasa yang dikenali oleh mesin Turing satu-tape dengan 3 negara). Saya memperkenalkan kelas C ′ 3 karena dalam jawaban asli saya, saya secara tidak sadar menukar kelas C 3 dan C ′ 3 (saya hanya mempertimbangkan kelas C ′ 3 ).C′3C3C′3C3C′3C′3
Jawaban ini lebih melengkapi jawaban @MarzioDeBiasi. Dia menunjukkan bahwa kelas dan C ' 3 tidak terkandung dalam CFL dan dengan demikian mengandung bahasa cukup menarik. Namun, seperti yang akan saya tunjukkan dalam posting ini, setiap bahasa L dalam C ′ 3 memiliki properti yang diset { 1 n ; n ∈ N ∖ { 0 } } adalah baik dalam L atau yang pelengkap L C . Jadi C ′ 3C3C′3LC′3{1n;n∈N∖{0}}LLCC′3juga sangat membatasi, misalnya. itu hanya berisi bahasa unary sepele , { ε } , { 1 n ; n ∈ N } dan { 1 n ; n ∈ N ∖ { 0 } } . Kelas C 3 berisi sedikit lebih banyak bahasa unary. Namun, ia berpendapat bahwa jika L ∈ C 3 dan 1 n ∈ L untuk n ≥ 1 , maka 1{}{ε}{1n;n∈N}{1n;n∈N∖{0}}C3L∈C31n∈Ln≥1 untuk semua m ≥ n . 1m∈Lm≥nAkibat wajar sederhana adalah bahwa tidak semua bahasa reguler berada di atau di C ′ 3 . Juga bahasa{1}tidak dalam C 3 atau dalam C ′ 3 .C3C′3{1}C3C′3
Untuk klaim (dalam huruf tebal) tentang , cukup membuktikan bahwa mesin Turing satu-pita M dengan 3 status yang selalu berhenti menerima atau menolak semua string dari { 1 n ; n ∈ N ∖ { 0 } } . Misalkan string dari bentuk 1 n , n ∈ N ∖ { 0 } , diberikan kepada M . Ada tiga kasus:C′3M{1n;n∈N∖{0}}1nn∈N∖{0}M
1) Ketika membaca 1, ia menerima atau menolak.M
2) Ketika membaca 1, ia menggerakkan kepala ke kiri. MJika kita ingin menghentikan input ini, ia harus menerima, menolak atau bergerak ke kanan pada simbol kosong. Karenanya, ia tidak pernah mengunjungi sel di sebelah kanan sel awal rekaman itu. Jika mau, itu akan berjalan selamanya pada input 1.M
3) Ketika membaca 1, ia menggerakkan kepala ke kanan. MMaka setelah langkah, isi rekaman adalah A n di mana A adalah beberapa simbol dari alfabet tape dan kepala M adalah pada simbol paling kiri kosong di sebelah kanan A terakhir . Jika kita ingin M menghentikan input ini, ia harus menerima, menolak atau bergerak ke kiri pada simbol kosong. Seperti dalam kasus 2), kepala M sekarang tidak akan pernah mengunjungi sel langsung di sebelah kiri paling kanan A . Jika ya, maka M akan berjalan selamanya pada input 1.nAnAMAMMAM
Jelas bahwa dalam ketiga kasus menerima semua string dari set { 1 n ; n ∈ N ∖ { 0 } } atau menolak semuanya.M{1n;n∈N∖{0}}
Bukti klaim (dicetak tebal) tentang mengikuti baris yang sama seperti di atas. Kami mengambil mesin Turing satu-pita 3-negara M yang menerima string 1 n untuk beberapa n ≥ 1 . Misalkan M diberi input 1 m untuk m ≥ n . Kita harus membuktikan bahwa M menerima input ini. Kami memiliki 3 kasus:C3M1nn≥1M1mm≥nM
1) Ketika membaca 1, ia menerima.M
2) Ketika membaca 1, ia menggerakkan kepala ke kiri. MKarena menerima input 1 n , ia harus menerima atau bergerak ke kanan pada simbol kosong. Oleh karena itu, tidak pernah kunjungan yang n th sel di sebelah kanan sel awal. Jika mau, itu akan berjalan selamanya pada input 1 n .M1nn1n
3) Ketika membaca 1, ia menggerakkan kepala ke kanan. MOleh karena itu setelah langkah , isi rekaman adalah A m di mana A adalah beberapa simbol dari alfabet tape dan kepala M adalah pada simbol paling kiri kosong di sebelah kanan A terakhir . Karena M menerima input 1 n , ia harus menerima atau bergerak ke kiri pada simbol kosong. Seperti dalam kasus 2), kepala M sekarang tidak akan pernah mengunjungi sel ke- n di sebelah kiri A paling kanan . Ini karena pada input 1 n , MmAmAMAM1nMnA1nM tidak mengunjungi sel langsung di sebelah kiri sel awal, karena mengandung simbol kosong dan jika akan membacanya, itu akan berjalan selamanya.
Jelas bahwa dalam ketiga kasus menerima semua string dari set { 1 m ; m ≥ n } .M{1m;m≥n}