Главная » Просмотр файлов » В.И. Игошин - Задачи и упражнения по математической логике и теории алгоритмов - 2007

В.И. Игошин - Задачи и упражнения по математической логике и теории алгоритмов - 2007 (1019105), страница 46

Файл №1019105 В.И. Игошин - Задачи и упражнения по математической логике и теории алгоритмов - 2007 (В.И. Игошин - Задачи и упражнения по математической логике и теории алгоритмов - 2007) 46 страницаВ.И. Игошин - Задачи и упражнения по математической логике и теории алгоритмов - 2007 (1019105) страница 462017-07-08СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 46)

Имеют смысл лишь конечные конфигурации, т.е. такие, в которых все ячейки ленты, за исключением, быть может, конечного числа их, пусты. Будем говорить, что непустое слово в в алфавите А'1(а» = = (ап ..., а„» воспринимается машиной в стандартном положении, еслй это слово записано в последовательных ячейках ленты, все другие ячейки пусты и машина обозревает крайнюю справа ячейку из тех, в которых записано слово в.

Стандартное положение называется начальным (заключительным), если машина, воспринимающая слово в стандартном положении, находится в начальном состоянии а, (соответственно в состоянии остановки аь). Далее будем говорить, что слово ю перерабатывается машиной в слово о, если от слова ю, воспринимаемого в начальном стандартном положении, машина после выполнения конечного числа команд приходит к слову о, воспринимаемому в положении остановки. Пусть на некотором множестве слов алфавита (а„..., а,» задана к-местная функция, значениями которой являются слова в том же алфавите. Предположим, что имеется машина Тьюринга с алфавитом А = (а, а„..., а„» (и > 1), которая любой набор из /с слов, входящий в область определения функции, записанный на ленту последовательно с промежутками в одну ячейку между словами, перерабатывает в слово, являющееся значением функции на этом наборе, а на любом наборе из к слов, не входящем в область определения функции, машина работает бесконечно.

Тогда про такую машину Тьюринга говорят, что она вычисляет данную функцию, а сама функция называется вычислимой по 2'ьюрингу или (короче) вычислимой. Применение машин Тьюринга к словам. Решить задачи 12.1— 12.11. 12.1. Имеется машина Тьюринга с внешним алфавитом А = = (а, 1», алфавитом внутренних состояний Д = (ды а,» и функциональной схемой (программой). В столбце дь ничего не написано, потому что а, — заключительное состояние машины„т.е.

такое состояние, оказавшись в котором машина останавливается. Функциональную схему или 222 программу кратко можно записать в виде последовательности из двух команд: ч!ао -+ д01, й1 -+ д~1П. Определите, в какое слово перерабатывает машина каждое из следующих слов, если она находится в начальном состоянии д, и обозревает указанную ячейку: а) 1а011ааа011 (обозревается ячейка 4, считая слева); б) 11аа111а01 (обозревается ячейка 2); в) 1а0аа111 (обозревается ячейка 3); г) 1111ц,11 (обозревается ячейка 4); д) 1!ар!111 (обозревается ячейка 3); е) 1111111 (обозревается ячейка 4); ж) 11111 (обозревается ячейка 5); з) 111...1 (к единиц, обозревается к-я ячейка). Изобразите схематически последовательность конфигураций, возникающих на ленте на каждом такте работы машины.

Р е ш е н и е. а) Изобразим схематически начальную конфигурацию (начальное положение машины): ! а 1 ! а а, 1 1 Схема означает, что машина находится в состоянии д, и обозревает ячейку, в которой записана буква 1, в соседней слева ячейке записана та же буква, а в соседней справа ячейке записана буква аа (т.е. согласно нашему соглашению ничего не записано) и т.д. Ничего не записано и во всех непоказанных ячейках ленты. На первом такте работы согласно команде д,! -+ д,1П машина остается в прежнем состоянии 1, в обозреваемую ячейку вписывает букву 1 (т.е.

фактически оставляет уже вписанную в эту ячейку букву 1 неизменной) и переходит к обозрению следующей правой ячейки (т.е. ячейки 5). Изобразим схематически положение, в котором оказалась машина: ! а 1 ! а а ! ! На втором такте работы согласно команде д,а0 -э д01 машина вписывает в обозреваемую ячейку 5 букву 1, продолжает обозревать туже ячейку и переходит в состояние 0„ т.е. останавливается. Создавшаяся конфигурация имеет вид: чо ! а ! ! ! а ! ! Таким образом, из данного начального положения слово 1ар11а0а,11 перерабатывается машиной в слово 1а0111аа11. 223 12.2. Дана машина Тьюринга с внешним алфавитом А = (ое, Ц, алфавитом внутренних состояний 0 = (дм дь дн 93 Д4 45 46 97) и со следующей функциональной схемой (программой): Изображая на каждом такте работы машины получающуюся конфигурацию, определите, в какое слово перерабатывает машина каждое из следующих слов, исходя из начального стандартного положения: а) 11111; б) 111111; в) 1111; г) 1111111; д) 111; е) 1аю111аоаю1111; ж) 11аеао111111; з) 11ае111.

Р е ш е н и е. д) Выписываем последовательность конфигураций машины при переработке ею слова 111 из начального стандартного положения: 7) 8) 2) 9) 3) 10) 4) 5) 6) 12) Итак, слово 111 из начального стандартного положения перерабатывается машиной в слово 1. 12.3. Запишите программу (функциональную схему) машины Тьюринга из задачи 17.2: а) в виде последовательности команд; б) в виде сокращенной таблицы; в) в виде сокращенной последовательности команд. Р е ш е н и е. б) Сокращение достигается за счет следующих соглашений: если состояние машины после выполнения команды не меняется, то мы его второй раз не пишем в команде„аналогично, если команда вписывает в ячейку ту же самую букву, что и была записана там, то эту букву второй раз в команде не пишем.

224 Сокращенная таблица, представляющая собой программу машины из предыдущей задачи, имеет тогда следующий вид: 12.4. Машина Тьюринга задается следующей функциональной схемой: Определите, в какое слово перерабатывает машина каждое из следующих слов, исходя из начального стандартного состояния. После этого постарайтесь усмотреть общую закономерность в работе машины: а) 111ю111; б) 1111*11; в) 111ю1; г) 1ю11; д) 11*111; е) 11111ю; ж) *1111. Р е ш е н и е. г) Запишем последовательность конфигураций: 1*1д~1 =' 1юдз1юзо =' 1дз*1аю =' дз1*1аю =' дзао1*1ао ~ 1дз1*1аю ~ 11дзю1ао =' 11юдз1ао ~ 11ю1дзао 11юд11ао ~ 11дз*аоао =' ~ 1дз1«аоао =' дзН .аоао => дзао11юаоао =' 1дз11юаоаа ~ 11дз1*ааззо ~ =' 111дз*юзоао =' 111юдзаоюзо ~ 111й*аоззо =' 111до«огзоао.

Проделайте самостоятельно преобразования остальных слов. Мы видим, что каждое из них перерабатывается в слово, состоящее из такого количества единиц, записанных подряд, сколько их было в исходном слове записано вместе по обе стороны от разделительной звездочки. Таким образом, машина фактически осуществляет сложение единиц. Каков же алгоритм этого сложения? Машина стирает первую единицу, обозреваемую в начальном положении д„и ее головка движется по ленте влево до первой пустой ячейки, в которую машина помещает единицу. (Машина как бы берет самую правую единицу и переносит ее в левый конец слова.) В нашем случае имеем 1ю1д,1 ~ 11юд,а„т.е. за один этот цика машина вернулась в свое исходное положение, но для другого начального слова: 11ю1. Затем машина проделывает второй цикл: берет крайнюю правую единицу, относит ее на левый край и возвращается в исходное положение 111д,*, при котором теперь в обозреваемой ячейке содержится не 1, аю. Машина стирает ее и останавливается.

8 игоанн 225 Нетрудно подсчитать количество шагов (тактов), которое проделывает машина при решении задачи по данному алгоритму. Если слева от звездочки записано и единиц, а справа — и, то на каждый цикл машина затрачивает 2(т+ и+ 1) тактов. Чтобы перенести п единиц, нужно проделать и циклов и, значит, совершить 2л(т+ л+ 1) тактов работы. В связи с этим возникает проблема разработки более быстрого алгоритма, решающего ту же задачу сложения единиц, разделенных звездочкой на ленте машины Тьюринга.

Такой алгоритм мог бы дейсз вовать, например, следующим образом. Начав из стандартного начального положения, сразу же стереть единицу и двинуться влево. Дойдя до звездочки, заменить ее на единицу. Все. Если же в начальном стандартном положении обозревается звездочка, то просто стереть ее и остановиться. Проверьте, что этот алгоритм для слов указанного вида реализует машина Тьюринга со следующей программой: д~ — ~ дза0Л, др -+ 40аа, др1 -+ д,1Л, дз~ -+ да1. Количество тактов здесь для выполнения сложения фактически равно числу п единиц в правом слагаемом.

Придумайте свой алгоритм, решающий эту задачу (см. задачу 12.34, а). 12.5. Машина Тьюринга определяется следующей функциональной схемой: Определите, в какое слово перерабатывает машина каждое из следующих слов, исходя из стандартного начального состояния: а) 111*11; б) 11е11; в) 1111*1; г) 11111~111; д) 11111*1111. Постарайтесь выявить общую закономерность в работе машины.

Р е ш е н и е. Выписав последовательности конфигураций, получаемых при переработке машиной слов а), б), в), мы придем соответственно к следующим результатам: 1, а,, 111. Создается впечатление, что программа осуществляет вычитание числа и единиц, стоящих правее звездочки, из числа т единиц, стоящих левее звездочки, когда е > и. При этом алгоритм работает следующим образом. Машина стирает первую (самую правую) единицу, обозреваемую в начальном состоянии дь и ее головка движется по ленте влево, достигает звездочки, переходит через нее и упирается в первую единицу.

Стирает ее и возвращается к правому концу слова, на котором стирает следующую крайнюю единицу и 22б снова движется влево, до ближайшей единицы левее звездочки, стирает ее, и т.д. Идея данного алгоритма хороша, но она не реализуется в полном объеме рассматриваемой машиной Тьюринга. В самом деле, посмотрим, как перерабатывается данной машиной слово г) (некоторые очевидные шаги пропущены): 11111«11Ч!1 11111*14721110 11111Ч2»11120 11114731'"11120 =' 1111аоЧ4«11ао ~ 1111ао»47411ао ~ 1111ао«116400 ~ 1111ао»1%1ао ~ ~ 1111ао«д21аоао ~ 1111а0472«1аоао ~ 1111471ао«1аоао => 111412141о«1аоао ~ 1 1 1аоч4ао«1120120 1 421ао 0«1410120 1 1 1аоаоч1«1 0120 ~ 111 аоао47оао1аоао.

Машина остановилась, но на ленте осталась «недосчитанной» разность 3 — 1. Если применить данную машину к слову д) 11111»1111, то получим в итоге слово 111аоаоао11аоао, т.е. «недосчитанной» остается разность 3 — 2. Анализируя работу данной программы, приходим к выводу. Если т > л > 3, то программа будет стирать по 2 единицы справа из каждого массива единиц, разделенных звездочкой; будет стерта и сама звездочка. Таким образом, на ленте останется записано слева т — 2 единицы, справа и — 2 единицы, разделенных тремя пустыми ячейками.

Характеристики

Тип файла
DJVU-файл
Размер
4,29 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6552
Авторов
на СтудИзбе
299
Средний доход
с одного платного файла
Обучение Подробнее