
6 Билет
Формализация понятия алгоритма. Машина Тьюринга. Определение. Простейшие машины Тьюринга. Тезис Тьюринга. Основная гипотеза теории алгоритмов в форме Тьюринга. Операции на машинах Тьюринга (операция композиции, операция ветвления, операция зацикливания). Базис элементарных машин Тьюринга. Универсальная машина Тьюринга. Недетерминированные машины Тьюринга.
МТ – автомат, имеющий бесконечную в обе стороны ленту, разделённую на ячейки, считывающую головку и управляющее устройство с конечным числом состояний. Была предложена Аланом Тьюрингом в 1936 году для формализации понятия алгоритма.
МТ способна имитировать (при наличии соответствующей программы) любую машину, действие которой заключается в переходе от одного дискретного состояния к другому.
Управляющее устройство может перемещаться влево и вправо по ленте, читать и записывать в ячейки символы некоторого конечного алфавита. В управляющем устройстве содержится таблица переходов, которая представляет алгоритм, реализуемый данной МТ.
Универсальной МТ называют МТ, которая может заменить собой любую МТ. Получив на вход программу и входные данные, она вычисляет ответ, который вычислила бы по входным данным МТ, чья программа была дана на вход.
Тезис Тьюринга. Для нахождения значений функции, заданной в некотором алфавите, тогда и только тогда существует какой-нибудь алгоритм, когда функция является вычислимой по Тьюрингу, т.е. когда она может вычисляться на подходящей машине Тьюринга.
Основная гипотеза теории алгоритмов в форме Тьюринга. Любой алгоритм в неформальном смысле может быть реализован на некоторой машине Тьюринга. Эту гипотезу невозможно доказать, потому что она оперирует неформальным понятием алгоритма. Однако обоснование гипотезы есть: все алгоритмы придуманные в течение столетий могут быть реализованы на машине Тьюринга; эквивалентность всех формальных определений алгоритма неслучайна и говорит в пользу гипотезы. Чтобы опровергнуть основную гипотезу необходимо придумать такой алгоритм, который невозможно было бы реализовать на машине Тьюринга, пока такого алгоритма нет. В силу этой гипотезы: алгоритм в формальном смысле - есть машина Тьюринга. Машина Тьюринга - это математическая модель идеализированного вычислительного устройства.
МТ называется недетерминированной, если каждой комбинации состояния и ленточного символа в таблице соответствует более одного правила.
Операции на машинах Тьюринга
1. Операция композиции
Пусть M1 и M2 - МТ, имеющие одинаковый внешний алфавит A={a0,a1,...,ap}. Обозначим множества их состояний соответственно Q1={q0,q1,...,qn} и Q2={q0',q1',...,qm'}.
Композицией машин M1 и M2 называют машину, обозначаемую M=M1×M2, программа которой имеет алфавит A, множество состояний Q={q0,q1,...,qn,qn+1,...,qn+m} и получается из программ машин M1 и M2 следующим образом: везде в программе машины M1, где встречаются "тройки" с символом q1 (заключительное состояние машины M1), он заменяется на символ q0' (начальное состояние машины M2); все остальные символы в программах машин M1 и M2 остаются неизменными (в завершение остаётся перенумеровать все состояния машины M: {q0,q1',q2,...,qn,q0',q2',...,qm'}).
Композиция начинает "работать" как машина M1, но в тех случаях, когда машина M1 должна остановиться, происходит переключение на программу машины M2, вследствие замены q1 на q0'. Очевидно, что операция композиции ассоциативна, но не коммутативна.