Пред.
След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
1.6. ПРОСТЕЙШАЯ МОДЕЛЬ ВЫЧИСЛЕНИЙ: МАШИНА ТЬЮРИНГАДля доказательства того, что для вычисления данной функции требуется какое-то минимальное время, нужна некоторая модель, столь же общая, как те модели, которые у нас были, но более простая. Система команд должна быть ограничена, насколько возможно, хотя эта модель должна быть в состоянии не только вычислить все то, что может вычислить РАМ, но и сделать это "почти" так же быстро. Под словом "почти" мы будем подразумевать "полиномиальную связанность". Определение. Говорят, что неотрицательные функции Пример 1.7. Две функции В настоящее время единственный класс функций, для которых мы можем применить такие общие вычислительные модели, как машины Тьюринга, чтобы получить нижние оценки вычислительной сложности, составляют "быстро растущие" функции. Например, в гл. 11 будет показано, что некоторые задачи требуют экспоненциальные время и память. (Функция Таким образом, это побуждает нас использовать простую модель, для которой временная сложность задач полиномиально связана с их сложностью на РАМ. В частности, модель, которую мы будем применять, а именно многоленточная машина Тьюринга, может потребовать Определение. Многоленточная машина Тьюринга
Рис. 1.19. Многоленточная машина Тьюринга. бесконечно простирающихся вправо. Каждая лента разбита на клетки, каждая из которых содержит один из конечного числа символов на ленте. Одна клетка на каждой ленте обозревается головкой этой ленты; головка может считывать с ленты и записывать на нее. Работа машины Тьюринга определяется простой программой, называемой управляющим устройством. Оно всегда находится в одном из конечного числа состояний, которое можно рассматривать как номер текущей команды в программе. Один шаг вычисления на машине Тьюринга состоит в следующем. В соответствии с текущим состоянием управляющего устройства и символами на лентах, обозреваемыми (т. е. находящимися под) каждой из головок, машина Тьюринга может выполнить некоторые или все из следующих операций: 1) изменить состояние управляющего устройства, 2) напечатать новые символы на лентах вместо старых в каких-нибудь или во всех клетках под головками, 3) сдвинуть какие-нибудь или все головки независимо друг от друга на одну клетку влево Формально
где 1) Q - множество состояний, 2) Т - множество символов на лентах, 3) I — множество входных символов, 4) b — пустой символ, 5) 6) 7) Пусть Машину Тьюринга можно приспособить для распознавания языка. Символы на лентах такой машины включают алфавит рассматриваемого языка (его буквы играют роль входных символов), пустой символ, обозначаемый
Рис. 1.20. Работа машины Тьюринга над цепочкой работу в выделенном начальном состоянии (головки при этом находились на левых концах своих лент), сделает последовательность шагов, которые в конце концов приведут ее в допускающее состояние. Языком, допускаемым данной машиной Тьюринга, называется множество всех слов из входных символов, допускаемых в описанном только что смысле. Пример 1.8. Двухленточная машина Тьюринга на рис. 1.20 распознает палиндромы в алфавите 1) Первая клетка на ленте 2 отмечается специальным знаком х, и вход копируется с ленты 1, где он записан вначале (рис. 1.20, а), на ленту 2 (рис. 1.20, б). 2) Затем головка на ленте 2 сдвигается к х (рис. 1.20, в). 3) Повторяется такая процедура: головка на ленте 2 сдвигается вправо на одну клетку, а на ленте 1 — влево на одну клетку и соответствующие символы сравниваются. Если все символы совпадают, то вход является палиндромом и машина Тьюринга доходит до допускающего состояния Функция переходов соответствующей машины Тьюринга приведена на рис. 1.21. Работу машины Тьюринга формально можно описать с помощью "мгновенных описаний". Мгновенным описанием Если мгновенное описание Данная Пример 1.9. На рис. 1.22 приведена последовательность мгновенных описаний машины Тьюринга, изображенной на рис. 1.21, (см. скан)
Рис. 1.22. Последовательность МО машины Тьюринга. которой подано на вход слово В дополнение к естественной интерпретации машины Тьюринга как устройства, допускающего какой-то язык, ее можно рассматривать как устройство, которое вычисляет некоторую функцию Временная сложность Емкостная сложность Пример 1.10. Временная сложность машины Тьюринга, изображенной на рис. 1.20, равна
|
1 |
Оглавление
|