Математическая логика
Вид материала | Документы |
СодержаниеМашина Тьюринга Т – название, закрепившееся за вычислительными абстрактными машинами некоторого точно охарактеризованного типа. |
- Рабочая программа по дисциплине в 2-Математическая логика и теория алгоритмов шифр, 316.78kb.
- Программы кандидатского экзамена по специальности 01. 01. 06 "Математическая логика,, 50.44kb.
- Рабочая учебная программа по дисциплине математическая логика, 72.41kb.
- Рабочей программы учебной дисциплины дв2 Математическая логика и теория алгоритмов, 50.1kb.
- Рабочая учебная программа по дисциплине «Математическая логика и теория алгоритмов», 69.99kb.
- Н. В. Папуловская Математическая логика Методическое пособие, 786.38kb.
- Уакиев Валериан Савирович рекомендуемая литература, 334.04kb.
- Аннотация программы учебной дисциплины «Дискретная математика и математическая логика, 55.65kb.
- Логика компьютера, 210.22kb.
- Вопросы по курсу: Математическая логика и теория алгоритмов (2 курс), 30.21kb.
Машина Тьюринга Т – название, закрепившееся за вычислительными абстрактными машинами некоторого точно охарактеризованного типа.
Содержательное понятие машины.
Машину Тьюринга Т=0, qz, > удобно представлять в виде автоматически функционирующего устройства, способного находиться в конечном числе внутренних состояний Q=q1…qn-2, qz и снабженного бесконечной внешней памятью – лентой. Среди состояний Q имеются два выделенных – начальное q1 и заключительное qz. Лента разделена на ячейки и потенциально бесконечна в обе стороны. В каждой ячейке ленты может быть записана любая из букв внешнего алфавита А=a0, a1…am (a0 – пустая буква, то есть считается, что в пустой ячейке записана a0). Функционирование машины обуславливает программа =qj ai qk aL dt.
Схема такого устройства как совокупность стуктурно-связанных внутренней и внешней памяти, блока управления и управляемой головки
a0 | a2 | a5 | ai | a9 | a3 | a5 | a0 |
дает возможность имитировать алгоритмические процессы распознавания и порождения цепочек языка произвольного типа (по Хомскому).
На схеме:
а) Блок управления производит преобразование пары (цепочки из двух символов) qj aiQ*A в тройку qk aL dt Q*A*D. Это означает, что если машина находится в состоянии qj (то есть вычисляет инструкцию qj), а управляемая головка считывает символ ai из обозреваемой ячейки внешней памяти, то блок управления вырабатывает команду qk aL dt, согласно которой:
- машина переходит в состояние qk (допускается k=j);
- в обозреваемую ячейку ленты вместо символа ai записывается символ aL (допускается i =L);
- управляющая головка (лента) перемещается на один шаг или остается на прежнем месте (dЛ – перемещение на один шаг влево, dп – перемещение на один шаг вправо, dн – оставаться на месте; dЛ, dп, dнD).
Итак, если блок управления осуществляет функциональное отображение:
Гf: Q*A Q*A*D,
где qj aiQ*A, qk aL dt Q*A*D, ai, aLА, qj, qkQ, dt D= dЛ, dп, dн, то машину Тьюринга будем называть детерминированной и всюду определенной.
б) Данные (исходные, промежуточные и окончательные) машины есть цепочки символов (слова) в алфавите А, которые записываются на бесконечной ленте внешней памяти (каждый символ слова в отдельной ячейке) (А=Аисх АпромАрез, а0Аисх, а0Арез).
в) Элементарные шаги в рассматриваемой машине следующие:
- изменение состояния машины и содержимого ячейки, обозреваемой управляемой головкой;
- перемещение управляемой головки на один шаг влево ( вправо);
г) Детерминированность работы машины обуславливается программой ее работы , то есть совокупностью выражений (j, i) (j=0,n; i= 0,n), каждое из которых имеет один из следующих видов:
qj ai qk aL dн
qj ai qk aL dЛ
qj ai qk aL dп,
где 0 k n, 0 L m.
В дальнейшем программу будем записывать в табличном виде:
A \ Q | q0 | q1 | … | qj | … | qz |
a0 | | | | | | |
a1 | | | | | | |
… | | | | | | |
ai | | | | qk aL dt | | |
… | | | | | | |
am | | | | | | |
или диаграммой переходов вида:
д) Начальная атрибуция (конфигурация машины) характеризуется следующим образом:
- на ленте записано слово А*;
- управляемая головка указывает на ячейку ленты, в которой записан самый левый символ цепочки (слова),
- машина находится в начальном состоянии q0 Q;
Пример начальной конфигурации машины:
a0 | a0 | a2 | a4 | a7 | a3 | a9 | a0 | a0 | a0 |
Символически эта конфигурация записывается как машинное слово q0= q0 a2 a4 a7 a3 a9= k0.
e) Текущая (промежуточная) ситуация (конфигурация) kp есть машинное слова вида 1 qj ai 2, где 1 и 2 – цепочки символов алфавита А.
ж) Заключительная ситуация (конфигурация) kz имеет вид qz, где qz – заключительное состояние машины, qzQ, - результат работы машины из исходной ситуации по заданной программе, А*.
Очевидно, что последовательность конфигураций k0 k1 k2… однозначно определяется исходной конфигурацией k0 и полностью описывает работу машины Тьюринга Т= =0, qz, >, начиная с k0= q0 (А*исх, АисхА). Эта последовательность конечна, если в ней встретится заключительная конфигурация kz= qz, и бесконечна в противном случае.
Пример: