Машина Тьюринга

Автор работы: Пользователь скрыл имя, 08 Апреля 2013 в 23:39, реферат

Описание работы

Лента предполагается потенциально бесконечной, разбитой на ячейки (равные клетки). При необходимости к первой или последней клетке, в которой находятся символы пристраивается пустая клетка. Машина работает во времени, которое считается дискретным, и его моменты занумерованы 1, 2, 3, … . В каждый момент лента содержит конечное число клеток. В клетки в дискретный момент времени может быть записан только один символ (буква) из внешнего алфавита A = {L, a1, a2 ,..., an-1 }, n ³ 2 . Пустая ячейка обозначается символом L, а сам символ L называется пустым, при этом остальные символы называются непустыми

Содержание работы

1. Математическая модель машины Тьюринга 3

2. Работа машины Тьюринга 6

3. Примеры машин Тьюринга, работающих в алфавите {a, b} 7

4. Способы задания машин Тьюринга, операции над ними 11

5. Список используемой литературы 14

Файлы: 1 файл

махорин.docx

— 90.61 Кб (Скачать файл)

Московский  Авиационный Институт

(Государственный  Технический Университет)

Кафедра Прикладной Информатики

 

 

 

 

 

 

Реферат по курсу

Математическая  логика и теория алгоритмов

 

Тема:

«Машина Тьюринга»

 

 

 

 

Выполнил:

  студент группы 06-421

Иванников Н.Д.

 

 

Проверил:

Преподаватель каф. 609

Махорин А. О.

 

 

 

 

 

 

Москва, 2013 г.

 

СОДЕРЖАНИЕ

 

 

 

1. Математическая модель машины Тьюринга 3

 

2. Работа машины Тьюринга 6

 

3. Примеры машин Тьюринга, работающих в алфавите {a, b} 7

 

4. Способы задания машин Тьюринга, операции над ними 11

 

5. Список используемой литературы 14

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

1. Математическая  модель машины Тьюринга

 

Идея создания машины Тьюринга, предложенная английским математиком А. Тьюрингом в тридцатых годах XX века, связана с его попыткой дать точное математическое определение понятия алгоритма.

 

Машина Тьюринга (МТ) – это математическая модель идеализированной цифровой вычислительной машины.

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

 

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

 

1. Лента предполагается потенциально бесконечной, разбитой на ячейки (равные клетки). При необходимости к первой или последней клетке, в которой находятся символы пристраивается пустая клетка. Машина работает во времени, которое считается дискретным, и его моменты занумерованы 1, 2, 3, … . В каждый момент лента содержит конечное число клеток. В клетки в дискретный момент времени может быть записан только один символ (буква) из внешнего алфавита A = {L, a1, a2 ,..., an-1 }, n ³ 2 . Пустая ячейка обозначается символом L, а сам символ L называется пустым, при этом остальные символы называются непустыми. В этом алфавите A в виде слова (конечного упорядоченного набора символов) кодируется та информация, которая подается в МТ. Машина «перерабатывает» информацию, поданную в виде слова, в новое слово.

 

2. Считывающая головка (некоторый считывающий элемент) пере-мещается вдоль ленты так, что в каждый момент времени она обозревает

3

 

ровно одну ячейку ленты. Головка может считывать содержимое ячейки и записывать в нее новый символ из алфавита А. В одном такте работы она может сдвигаться только на одну ячейку вправо (П), влево (Л) или оста-ваться на месте (Н). Обозначим множество перемещений (сдвига) головки D = {П, Л, Н}. Если в данный момент времени t головка находится в крайней клетке и сдвигается в отсутствующую клетку, то пристраивается новая пустая клетка, над которой окажется головка в момент t + 1.

 

3. Внутренняя память машины представляет собой некоторое конеч-ное множество внутренних состояний Q = { q0 , q1, q2 , ..., qm }, m ³ 1. Будем считать, что мощность |Q | ³ 2. Два состояния машины имеют особое значение: q1 – начальное внутреннее состояние (начальных внутренних состояний может быть несколько), q0 – заключительное состояние или стоп-состояние (заключительное состояние всегда одно). В каждый момент времени МТ характеризуется положением головки и внутренним состоя-нием. Например, под ячейкой, над которой находится головка, указывается внутреннее состояние машины.

 

 

¯

 

 

a2

a1

L

a2

a3

 
             
 

q1

         

 

 

4. Устройство управления в каждый момент t в зависимости от счи-тываемого в этот момент символа на ленте и внутреннего состояния ма-шины выполняет следующие действия: 1) изменяет считываемый в момент t символ ai на новый символ a j (в частности оставляет его без изменений,

 

т. е. ai = a j ); 2) передвигает головку в одном из следующих направлений:

 

Н, Л, П; 3) изменяет имеющееся в момент t внутреннее состояние машины

 

4

 

qi  на новое q j , в котором будет машина в момент времени t +1 (может

 

быть, что qi  = q j ).

 

Такие действия устройства управления называют командой, которую можно записать в виде:

 

qi ai ® a j  D q j ,

(1)


где qi – внутреннее состояние машины в данный момент; ai – считываемый в этот момент символ; a j – символ, на который изменяется символ ai (может быть ai = a j ); символ D есть или Н, или Л, или П и указывает направление движения головки; q j – внутреннее состояние машины в следующий момент (может быть qi = q j ). Выражения qi ai и a j D q j называются левой и правой частями этой команды соответственно. Число команд, в которых левые части попарно различ-ны, является конечным числом, так как множества Q \ {q0 } и A конечны.

 

Не существует команд с одинаковыми левыми частями, т. е. если про-грамма машины T содержит выражения qi ai ® a j D q j и qt at ® ak D qk ,

 

то qi ¹ qt или ai ¹ at и D Î{П, Л , Н}.

 

Совокупность  всех команд называется программой машины Тьюринга. Максимальное число команд в программе равно (n + 1) × m , где n + 1 = A и m + 1 = Q . Считается, что заключительное состояние команды


q0 может стоять только в правой части команды, начальное состояние q1

 

может стоять как  в левой так и в правой части команды.

 

Выполнение одной  команды называется шагом. Вычисление (или работа) машины Тьюринга является последовательностью шагов одного за другим без пропусков, начиная с первого.

 

Итак, МТ задана, если известны четыре конечных множества: внешний алфавит A , внутренний алфавит Q , множество D перемещений головки и программа машины, представляющая собой конечное множество команд.

 

5

 

2. Работа машины  Тьюринга

 

 

Работа машины полностью определяется заданием в  первый (на-чальный) момент: 1) слова на ленте, т. е. последовательности символов, записанных в клетках ленты (слово получается чтением этих символов по клеткам ленты слева направо); 2) положения головки; 3) внутреннего со-стояния машины. Совокупность этих трех условий (в данный момент) на-зывается конфигурацией (в данный момент). Обычно в начальный момент внутренним состоянием машины является q1, а головка находится либо над первой слева, либо над первой справа клеткой ленты.

 

Заданное слово  на ленте с начальным состоянием q1 и положение головки над первым словом называется начальной конфигурацией. В противном случае говорят, что машина Тьюринга не применима к слову начальной конфигурации.

 

Другими словами, в начальный момент конфигурация представима в следующем виде: на ленте, состоящей из некоторого числа клеток, в каждой клетке записан один из символов внешнего алфавита A , головка находится над первой слева или первой справа клеткой ленты и внутренним состоянием машины является q1. Получившееся в результате реализации этой команды слово на ленте и положение головки называется заключи-тельной конфигурацией.

 

Например, если в начальный момент на ленте записано слово a1La2 a1a1 , то начальная конфигурация будет иметь вид:

 

 

a1

a2

L

a1

a1

 
 

q1

         

 

(под клеткой, над которой находится головка, указывается внутреннее со-стояние машины).

 

6

 

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

 

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

 

Если в работе машины Тьюринга в некоторый момент t выполняется команда, правая часть которой содержит q0 , то в такой момент работа маши-

ны считается  законченной, и говорят, что машина применима к слову на лен-те в начальной конфигурации. В самом деле, q0 не встречается в левой части ни одной команды – этим и объясняется название q0 «заключительное со-

 

стояние». Результатом работы машины в таком случае считается слово, кото-рое будет записано на ленте в заключительной конфигурации, т. е. в конфи-гурации, в которой внутреннее состояние машины есть q0 . Если же в работе

 

машины ни в  один из моментов не реализуется команда  с заключительным состоянием, то процесс вычисления будет бесконечным. В этом случае гово-рят, что машина не применима к слову на ленте в начальной конфигурации.

 

3. Примеры машин  Тьюринга , работающих в алфавите {a, b}

 

Проиллюстрируем работу машину Тьюринга на следующем  примере.

 

Пример 1. Построить  машину Тьюринга T1, которая применима ко всем словам с внешним алфавитом {a,b} и делает следующее: любое слово x1x2...xn , где xi = a или xi = b (i =1,2,...n) преобразует в слово x2...xn x1,

 

т. е., начиная работать при слове x1x2...xn  на ленте в начальной конфигу-

 

рации, машина остановится, и в заключительной конфигурации на некото-ром участке ленты будет записано слово x2...xn x1, а все остальные клетки ленты (если такие будут) окажутся пустыми.

 

7

 

Решение. За внешний алфавит машины T1 возьмем множество A = {L,a,b}, а за внутренний – Q = {q0 ,q1,q2 ,q3}. Команды определим сле-дующим образом: q1a ® LПq2 , q1b ® LПq3 , qi y ® yППi , где y Î{a,b}, i = 2,3 ; q2 L ® aHq0 , q3 L ® bHq0 .

 

Рассмотрим работу машины T1 над словом ba . В работе машины над словом ba начальная конфигурация имеет следующий вид:

 

¯

 

(1)

 

b

a

 
         

q1

 

На первом шаге действует команда: q1b ® LПq3 . В результате создается следующая конфигурация:

 

     

¯

       

(2)

               
 

L

 

a

       
                 
       

q3

       

На втором шаге действует команда

q3 a ® aПП3 , и на машине создается

 

конфигурация

               
         

¯

     

(3)

               
 

L

 

a

L

   
                 
         

q3

 

 

Наконец, третий шаг обусловлен командой q3L ® bHq0 . В результате чего создается конфигурация:

 

¯

 

(4)

 

L

a

b

 
           

q0

 

 

8

 

Эта конфигурация является заключительной, так как машина оказалась в состоянии остановки q0 .

 

Таким образом, слово ba переработано в слово ab .

 

Полученную последовательность конфигураций можно записать более  коротким способом. Конфигурация (1) записывается в виде следующего слова в алфавите A È Q : q1ba (содержимое обозреваемой ячейки записано справа от состояния, в котором находится данный момент машина). Далее, конфигура-ция (2) записывается так: q3a , конфигурация (3) – aq3L , и наконец, (4) – abq0 .

 

Вся последовательность записывается так: q1ba Þ Lq3a Þ aq3L Þ abq0 .

 

Пример 2. Применить  машину Тьюринга T1 из примера 1 к слову bbabb, исходя из начального положения, при котором в состоянии q1 обо-

 

зревается крайняя  левая ячейка, в котором содержится символ этого слова.

Информация о работе Машина Тьюринга