Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
matem_gotovaya.docx
Скачиваний:
385
Добавлен:
19.03.2016
Размер:
473.27 Кб
Скачать

40 Неформальное понятие алгоритма и пути его формализации.

Формальные исполнители, то есть те, которые не понимают смысла алгоритма, а лишь выполняют указанные шаги и не могут их редактировать: собака, не понимающая смысл команд, телевизор, в общем - любые неодушевлённые исполнители. Неформальные - те, что понимают смысл алгоритма и могут вносить в него коррективы - скажем, человек.

Каждый алгоритм предполагает наличие некоторых начальных, или исходных, данных, а в результате применения приводит к получению определенного искомого результата. Например, в алгоритме с проявителем начальные данные — содержимое большого и малого пакетов, вода. Искомый результат — готовый к употреблению проявитель для пленки. При вычислении ранга матрицы начальными данными служит прямоугольная таблица, составленная из рациональных чисел, результат — натуральное число, являющееся рангом данной матрицы.

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

Среди допустимых начальных данных для алгоритма могут быть такие, к которым он применим, т.е. отправляясь от которых можно получить искомый результат, а могут быть и такие, к которым данный алгоритм неприменим, т. е. отправляясь от которых искомого результата получить нельзя. Неприменимость алгоритма к допустимым начальным данным может заключаться либо в том, что алгоритмический процесс никогда не оканчивается (в этом случае говорят, что он бесконечен), либо в том, что его выполнение во время одного из шагов наталкивается на препятствие, заходит в тупик (в этом случае говорят, что он безрезультатно обрывается)

41 .

Формальный аналог машины Тьюринга.

Машина Тьюринга (МТ) состоит из счетной ленты (разделенной на ячейки и ограниченной слева, но не справа), читающей и пишущей головки, лентопротяжного механизма и операционного исполнительного устройства, которое может находиться в одном из дискретных состояний qo, q1,..., qs, принадлежащих некоторой конечной совокупности (алфавиту внутренних состояний). При этом qо называется начальным состоянием.

Читающая и пишущая головка может читать буквы рабочего алфавита А = [а0, a1,..., аt}, стирать их и печатать. Каждая ячейка ленты в каждый момент времени занята буквой из множества А. Чаще всего встречается буква a0 - «пробел». Головка находится в каждый момент времени над некоторой ячейкой ленты - текущей рабочей ячейкой. Лентопротяжный механизм может перемещать ленту так, что головка оказывается над соседней ячейкой ленты. При этом возможна ситуация выхода за левый край ленты (ЛК), которая является аварийной (недопустимой), или машинного останова (МО), когда машина выполняет предписание об остановке.

Порядок работы МТ (с рабочим алфавитом a0, a1,..., аt и состояниями q0, q1,..., qs) описывается таблицей машины Тьюринга. Эта таблица является матрицей с четырьмя столбцами и (s + 1) (t + 1) строками. Каждая строка имеет вид

42.

Функции, вычислимые по Тьюрингу. Тезис Тьюринга.

Тезис Тьюринга: абстрактная машина Тьюринга способна выполнять любые операции, которые подчиняются некоторым правилам и в этом смысле являются чисто механическими.

Машина работает по программе следующим образом.

В начальный момент времени на ленте записывается некоторая цепочка из множества V*, все остальные клетки ленты заполнены символом #. Управление в начальный момент находится в состоянии q0, считывающая – записывающая головка обозревает крайний слева символ записанной цепочки. Работа машины состоит в повторе следующего цикла элементарных действий:

1. Чтение головкой символа из ячейки напротив неё.

2. Поиск применимой команды, а именно команды qa → q’a’d, где q-некоторое состояние управления, a-считываемый символ.

3. Выполнение найденной команды, которая состоит в следующем. В обозреваемую головкой ячейку записывается символ a’, символ a-стирается, управление переходит в состояние q’ и головка смещается относительно d. Если d=r головка смещается на одну ячейку вправо, если l - смещается на одну ячейку влево, p – перемещение не производится. Остановка производится в том случае, если на очередном шаге ни одна команда программы не является применимой. Результатом работы машины Тьюринга является цепочка, записанная на ленте.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]