У цій відповіді передбачається, що машини Тьюрінга мають нескінченні стрічки в обидві сторони. Претензії не стосуються однобічних нескінченних стрічок.
Дозвольте спершу визначити клас мов C′3як клас усіх мов, який можна вирішити односмуговими машинами Тьюрінга з 3 станами (C3визначався як клас мов, розпізнаваний односмуговими машинами Тьюрінга з 3 станами). Я представив класC′3 бо у своїй оригінальній відповіді я несвідомо поміняв місцями заняття C3 і C′3 (Я вважав лише клас C′3).
Ця відповідь є доповненням до відповідей @MarzioDeBiasi. Він показав, що заняттяC3 і C′3не містяться в CFL і тому містять досить цікаві мови. Однак, як я покажу в цій публікації, кожна моваL в C′3 має властивість, що множина {1n;n∈N∖{0}} є або в L або в його доповнення LC. Таким чиномC′3також є дуже обмежуючим, наприклад. він містить лише тривіальні одинарні мови{}, {ε}, {1n;n∈N} і {1n;n∈N∖{0}}. КласC3містить трохи більше одинарних мов. Однак він вважає, що якщоL∈C3 і 1n∈L для n≥1, тоді 1m∈L для усіх m≥n. Простий наслідок полягає в тому, що не всі звичайні мови єC3 ні в C′3. Також мова{1} не в C3 ні в C′3.
За позовом (жирним шрифтом) о C′3, достатньо довести, що односмугова машина Тюрінга M з 3 станами, які завжди зупиняють або приймає, або відхиляє всі рядки з {1n;n∈N∖{0}}. Припустимо, що рядок форми1n, n∈N∖{0}, надається M. Є три випадки:
1) КолиM читає 1, він приймає або відхиляє.
2) КолиMчитає 1, він рухає головою вліво. Якщо ми хочемоMщоб зупинити цей вхід, він повинен прийняти, відхилити або переміститися праворуч на порожньому символі. Отже, він ніколи не відвідує клітинку праворуч від початкової комірки стрічки. Якби це було, він би працював назавжди на вході 1.
3) КолиMчитає 1, він рухає головою вправо. Звідси випливає, що післяn кроки, вміст стрічки є An де A є деяким символом із стрічки алфавіту та голови M знаходиться в крайньому лівому порожньому символі праворуч від останнього A. Якщо ми хочемоMщоб зупинити цей вхід, він повинен прийняти, відхилити або перейти ліворуч на порожній символ. Як і у випадку 2), голова оM тепер ніколи не відвідуватиме келію прямо зліва направо A. Якщо так, тоM працюватиме назавжди на вході 1.
Зрозуміло, що у всіх трьох випадках M приймає всі рядки з набору {1n;n∈N∖{0}} або він відкидає їх усіх.
Доказом позову (жирним шрифтом) о C3слідує тій же лінії, що і вище. Беремо односмугову 3-державну машину ТюрінгаM що приймає рядок 1n для деяких n≥1. ПрипустимоM дається вхід 1m для m≥n. Ми повинні це довестиMприймає цей вхід. У нас є 3 випадки:
1) КолиM читає 1, він приймає.
2) КолиM reads 1, it moves the head to the left. Because M accepts the input 1n, it has to accept or move to the right on the blank symbol. Hence, it never visits the nth cell to the right of the initial cell. If it would, it would run forever on input 1n.
3) When M reads 1, it moves the head to the right. It follows that after m steps, the content of the tape is Am where A is some symbol from the tape alphabet and the head of M is on the leftmost blank symbol to the right of the last A. Because M accepts the input 1n, it must accept or move to the left on the blank symbol. As in case 2), the head of M will now never visit the nth cell to the left of the rightmost A. This is because on the input 1n, M does not visit the cell directly left of the initial cell, because it contains the blank symbol and if it would read it, it would run forever.
It is clear that in all three cases M accepts all strings from the set {1m;m≥n}.