Машина Тьюринга КТО? А́лан Ма́тисон Тью́ринг математик, логик, криптограф. — английский В 1937 году предложил уточнение понятия алгоритма как процесса, который может совершаться специальной машиной, названной в дальнейшем машиной Тьюринга. Понятие «машина Тьюринга» было сформулировано за 9 лет до появления первой ЭВМ. ЧТО? Машина Тьюринга – математическая (воображаемая) машина, а не машина физическая. Она такой же математический объект, как функция, производная, интеграл и т.д. Устройство машины Тьюринга Считываемый символ Лента Читающая головка Внутреннее состояние Лента: Потенциально бесконечная; В одной ячейке – один символ; Пустая ячейка заполнена символом a0. Головка: В каждый момент времени находится только в одном внутреннем состоянии; Начальное состояние – q1; Конечное состояние – q0. Действия машины Тьюринга За один такт своей работы машина Тьюринга может: 1) Изменить / не изменить символ, записанный на ленте 2) Изменить / не изменить своё внутреннее состояние 3) Переместить головку по ленте влево / вправо / не перемещать головку Ещё немного определений Программа – совокупность всех команд машины. Машина: Конфигурация: Пример машины Тьюринга Рассмотрим работы машины Тьюринга, имеющую следующую программу: 1111q110 1111q11 Q 1111q200 111q210 q1 q2 q3 A 111q2100 111q210 0 q 10 L q 31 R q 10 L … 11q2110 1 q 20 L q 21 L q 31 R q2111100 1q21110 q 00 q 2 L q 3 R q20111100 q211110 T f(a,b) = a + b q2011110 1q3111100 1q311110 … … 1111q3100 1111q310 11111q300 1111q310 11111q300 11111q30 11111q100 11111q0000 Зачем? Тезис Тьюринга: Для нахождения значений функции тогда и только тогда существует какой-нибудь алгоритм когда существует машина Тьюринга, вычисляющая данную функцию. Данный тезис не может быть строго доказан методами математики, однако до сих пор не удалось придумать вычислимую функцию, которую нельзя было бы запрограммировать в виде машины Тьюринга. Выводы: Машина Тьюринга – математически строгий аналог понятия «алгоритм». Принцип работы машины Тьюринга лежит в основе всех современных ЭВМ.