Глава 3

Тезис Чёрча—Тьюринга

[22/41%]
Показать
LaTeX
§
Задача 3.1

В этом упражнении речь идёт о МТ M2M_{2}, описание и диаграмма состояний которой приведены в примере 3.7. В каждом пункте приведите последовательность конфигураций, через которые проходит M2M_{2}, будучи запущенной на указанной входной строке.

?
(a)
(b)
(c)
(d)
Задача 3.2

В этом упражнении речь идёт о МТ M1M_{1}, описание и диаграмма состояний которой приведены в примере 3.9. В каждом пункте приведите последовательность конфигураций, через которые проходит M1M_{1}, будучи запущенной на указанной входной строке.

?
(a)
(b)
(c)
(d)
(e)
Задача 3.3

Измените доказательство теоремы 3.16, чтобы получить следствие 3.19, показывающее, что язык разрешим тогда и только тогда, когда его разрешает некоторая недетерминированная машина Тьюринга. (Вы можете использовать следующую теорему о деревьях. Если у каждого узла дерева конечное число потомков, и каждая ветвь дерева содержит конечное число узлов, то само дерево содержит конечное число узлов.)

?
Задача 3.4

Дайте формальное определение перечислителя. Считайте его разновидностью двухленточной машины Тьюринга, использующей свою вторую ленту как принтер. Включите в определение понятие перечисляемого языка.

?
Задача 3.5

Изучите формальное определение машины Тьюринга, чтобы ответить на следующие вопросы, и обоснуйте свои рассуждения.

?
(a)

Может ли машина Тьюринга когда-либо записать пустой символ ⊔\sqcup на свою ленту?

(b)

Может ли ленточный алфавит Γ\Gamma совпадать с входным алфавитом Σ\Sigma?

(c)

Может ли головка машины Тьюринга находиться в одном и том же месте на двух последовательных шагах?

(d)

Может ли машина Тьюринга содержать всего одно состояние?

Задача 3.6

В теореме 3.21 мы показали, что язык распознаётся машиной Тьюринга тогда и только тогда, когда его перечисляет некоторый перечислитель. Почему мы не использовали следующий более простой алгоритм для прямого направления доказательства? Как и раньше, s1,s2,…s_{1}, s_{2}, \ldots — список всех строк из Σ∗\Sigma^{*}. E=E= «Игнорировать вход.

  1. Повторять следующее для i=1,2,3,…i=1,2,3, \ldots. 2. Запустить MM на sis_{i}. 3. Если она допускает, вывести sis_{i}.»
?
Задача 3.7

Объясните, почему следующее не является описанием корректной машины Тьюринга. Mbad =M_{\text{bad }}= «На входе ⟨p⟩\langle p\rangle — многочлене от переменных x1,…,xkx_{1}, \ldots , x_{k}:

  1. Перебрать все возможные наборы целочисленных значений x1,…,xkx_{1}, \ldots , x_{k}. 2. Вычислить pp на всех этих наборах. 3. Если хотя бы на одном из этих наборов значение равно 0, допустить; иначе отвергнуть.»
?
Задача 3.8

Приведите описания машин Тьюринга на уровне реализации, разрешающих следующие языки над алфавитом 0,1.

?
(a)

{w∣w содержит поровну нулей и единиц}\left\{ w \mid w\text{ содержит поровну нулей и единиц}\right\}

(b)

{w∣w содержит вдвое больше нулей, чем единиц}\left\{ w \mid w\text{ содержит вдвое больше нулей, чем единиц}\right\}

(c)

{w∣w не содержит вдвое больше нулей, чем единиц}\left\{ w \mid w\text{ не содержит вдвое больше нулей, чем единиц}\right\}

§
Задача 3.9

Назовём kk-МП-автоматом автомат с магазинной памятью, у которого kk стеков. Таким образом, 0-МП-автомат — это НКА, а 1-МП-автомат — это обычный МП-автомат. Вы уже знаете, что 1-МП-автоматы мощнее (распознают более широкий класс языков), чем 0-МП-автоматы.

?
(a)

Покажите, что 2-МП-автоматы мощнее, чем 1-МП-автоматы.

(b)

Покажите, что 3-МП-автоматы не мощнее, чем 2-МП-автоматы. (Подсказка: смоделируйте ленту машины Тьюринга с помощью двух стеков.)

Задача 3.10

Назовём однократно записывающей машиной Тьюринга однoленточную МТ, которая может изменить каждую клетку ленты не более одного раза (включая ту часть ленты, где записан вход). Покажите, что эта разновидность машины Тьюринга эквивалентна обычной модели машины Тьюринга. (Подсказка: в качестве первого шага рассмотрите случай, когда машина Тьюринга может изменять каждую клетку ленты не более двух раз. Используйте побольше ленты.)

?
Задача 3.11

Машина Тьюринга с двусторонне бесконечной лентой похожа на обычную машину Тьюринга, но её лента бесконечна как влево, так и вправо. Изначально лента заполнена пустыми символами, за исключением той части, где записан вход. Вычисление определяется как обычно, за исключением того, что головка никогда не встречает конец ленты, двигаясь влево. Покажите, что этот тип машины Тьюринга распознаёт класс языков, распознаваемых машиной Тьюринга.

?
Задача 3.12

Машина Тьюринга со сбросом влево похожа на обычную машину Тьюринга, но функция переходов имеет вид

δ:Q×Γ⟶Q×Γ×{R, RESET }. \delta : Q \times \Gamma \longrightarrow Q \times \Gamma \times \left\{ \mathrm{R}, \text{ RESET }\right\} .

Если δ(q,a)=(r,b\delta (q, a)=(r, b, RESET )), то когда машина находится в состоянии qq и читает aa, головка машины перепрыгивает в левый конец ленты после того, как машина запишет bb на ленту и перейдёт в состояние rr. Заметим, что у таких машин нет обычной возможности сдвинуть головку на один символ влево. Покажите, что машины Тьюринга со сбросом влево распознают класс языков, распознаваемых машиной Тьюринга.

?
Задача 3.13

Машина Тьюринга с «остаться на месте» вместо «влево» похожа на обычную машину Тьюринга, но функция переходов имеет вид

δ:Q×Γ⟶Q×Γ×{R, S}. \delta : Q \times \Gamma \longrightarrow Q \times \Gamma \times \left\{ \mathrm{R}, \mathrm{~ S}\right\} .

В каждый момент машина может сдвинуть головку вправо либо оставить её на том же месте. Покажите, что этот вариант машины Тьюринга не эквивалентен обычной версии. Какой класс языков распознают такие машины?

?
Задача 3.14

Автомат с очередью похож на автомат с магазинной памятью, за исключением того, что стек заменён очередью. Очередь — это лента, позволяющая записывать символы только на левом конце и читать только на правом конце. Каждая операция записи (назовём её «push») добавляет символ на левый конец очереди, а каждая операция чтения (назовём её «pull») читает и удаляет символ на правом конце. Как и в МП-автомате, вход помещается на отдельную ленту только для чтения, и головка на входной ленте может двигаться только слева направо. Входная лента содержит клетку с пустым символом сразу после входа, чтобы можно было обнаружить конец входа. Автомат с очередью допускает свой вход, переходя в любой момент в специальное допускающее состояние. Покажите, что язык распознаётся детерминированным автоматом с очередью тогда и только тогда, когда он распознаётся машиной Тьюринга.

?
Задача 3.15

Покажите, что совокупность разрешимых языков замкнута относительно операции

?
(a)

объединения.

(b)

конкатенации.

(c)

звезды.

(d)

дополнения.

(e)

пересечения.

Задача 3.16

Покажите, что совокупность языков, распознаваемых машиной Тьюринга, замкнута относительно операции

?
(a)

объединения.

(b)

конкатенации.

(c)

звезды.

(d)

пересечения.

(e)

гомоморфизма.

Задача 3.17
  • Пусть B={⟨M1⟩,⟨M2⟩,…}B=\left\{ \left\langle M_{1}\right\rangle ,\left\langle M_{2}\right\rangle , \ldots \right\} — распознаваемый машиной Тьюринга язык, состоящий из описаний МТ. Покажите, что существует разрешимый язык CC, состоящий из описаний МТ, такой, что для каждой машины, описанной в BB, найдётся эквивалентная машина в CC, и наоборот.
?
Задача 3.18
  • Покажите, что язык разрешим тогда и только тогда, когда некоторый перечислитель перечисляет его в стандартном строковом порядке.
?
Задача 3.19
  • Покажите, что у каждого бесконечного языка, распознаваемого машиной Тьюринга, есть бесконечное разрешимое подмножество.
?
Задача 3.20
  • Покажите, что однoленточные МТ, которые не могут писать на той части ленты, где содержится входная строка, распознают только регулярные языки.
?
Задача 3.21

Пусть c1xn+c2xn−1+⋯+cnx+cn+1c_{1} x^{n}+c_{2} x^{n-1}+\cdots +c_{n} x+c_{n+1} — многочлен с корнем при x=x0x=x_{0}. Пусть cmax c_{\text{max }} — наибольшее по модулю значение среди cic_{i}. Покажите, что

∣x0∣<(n+1)cmax⁡∣c1∣. \left|x_{0}\right|<(n+1) \frac{c_{\max }}{\left|c_{1}\right|}.
?
Задача 3.22

Пусть AA — язык, содержащий единственную строку ss, где

s={0 если жизнь никогда не будет найдена на Марсе. 1 если жизнь будет найдена на Марсе когда-нибудь. s= \begin{cases} 0 & \text{ если жизнь никогда не будет найдена на Марсе. } \\ 1 & \text{ если жизнь будет найдена на Марсе когда-нибудь.}\end{cases}

Разрешим ли AA? Почему да или почему нет? Для целей этого упражнения считайте, что вопрос о том, будет ли найдена жизнь на Марсе, имеет однозначный ответ Да или Нет.

?