3.1

Упражнения

[8/100%]
Показать
LaTeX
Задача 3.1

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

?
(a)
(b)

ᴬ 00.

(c)
(d)
Задача 3.2

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

?
(a)

ᴬ 11.

(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\}