Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб8.Машина Тьюринга.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
83.93 Кб
Скачать

Основы информатики. Лаб. 8. Машина Тьюринга 19 февраля 2013

Содержание

План лабораторной работы 1

Литература 2

Структура машины Тьюринга 2

Такт работы машины Тьюринга 3

Программа для машины Тьюринга 3

Правила выполнения программы 3

Примеры на составление программ для МТ 5

Пример 1 (перемещение автомата, замена символов) 5

Задачи для решения 6

План лабораторной работы

  1. Прочитать раздел Структура машины Тьюринга.

  2. Открыть эмулятор1 машины Тьюринга http://cmcmsu.no-ip.info/1course/alg.schema.mt.htm. Изучить примеры.

  3. Инсталлировать эмулятор emt_setup.exe и ознакомиться с его возможностями по Руководству (в файле .pdf). Выполнить ранее изученные примеры (см. п. 2).

  4. Изучить и выполнить пример 1 стр. 4.

  5. Решать задачи стр.5.

Самостоятельная работа.

  • Необходимость и способы уточнения понятия алгоритма (символы и слова ) [1, стр.27 – 36]

  • Машина Тьюринга (структура, такт работы, запись программы, правила выполнения программы, применимость и неприменимость алгоритма к слову, соглашения для сокращения записи программы). Возможности МТ (композиция, разветвление и повторение МТ) Тезис Тьюринга. [2]

  • Изучить примеры [2] стр. 7 – 15

  • Решить задачи [2] стр. 15 – 18. Тема «Программирование для МТ» войдет в состав контрольной работы.

Литература

  1. Кнут Д. Искусство программирования для ЭВМ. Основные алгоритмы: т.1; М.:Мир,2000..

  2. Пильщиков В.Н., Абрамов В.Г., Вылиток А.А., Горячая И.В. Машина Тьюринга и алгоритмы Маркова. Решение задач. (Учебно-методическое пособие) - М.: МГУ, 2006. – 47 с.

Структура машины Тьюринга

Машина Тьюринга (МТ) состоит из двух частей – ленты и автомата (головки чтения/записи):

Лента используется для хранения информации. Она бесконечна в обе стороны и разбита на клетки, которые никак не нумеруются и не именуются. В каждой клетке может быть записан один символ или ничего не записано. Содержимое клетки может меняться – в неё можно записать другой символ или стереть находящийся там символ.

Договоримся пустое содержимое клетки называть символом «пусто» и обозначать знаком Λ («лямбда»). В связи с этим изображение ленты, показанное на рисунке справа, такое же, как и на рисунке слева. Данное соглашение удобно тем, что операцию стирания символа в некоторой клетке можно рассматривать как запись в эту клетку символа Λ, поэтому вместо длинной фразы «записать символ в клетку или стереть находящийся там символ» можно говорить просто «записать символ в клетку».

Автомат – это активная часть МТ. В каждый момент он размещается под одной из клеток ленты и видит её содержимое; это видимая клетка, а находящийся в ней символ – видимый символ; содержимое соседних и других клеток автомат не видит. Кроме того, в каждый момент автомат находится в одном из состояний, которые будем обозначать буквой q с номерами: q1, q2 и так далее. Находясь в некотором состоянии, автомат выполняет какую-то определённую операцию (например, перемещается направо по ленте, заменяя все символы b на a), находясь в другом состоянии – другую операцию.

Пару из видимого символа (S) и текущего состояния автомата (q) будем называть конфигурацией, и обозначать <S, q>.

Автомат может выполнять три элементарных действия:

  • записывать в видимую клетку новый символ (менять содержимое других клеток автомат не может);

  • сдвигаться на одну клетку влево или вправо («перепрыгивать» сразу через несколько клеток автомат не может);

  • переходить в новое состояние.

Ничего другого делать автомат не умеет, поэтому все более сложные операции так или иначе должны быть сведены к этим трём элементарным действиям.