logo
кр одмита

6.2. Три типа алгоритмических моделей

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

Еще в 30-е годы были предприняты попытки формализовать это понятие и были предложены различные модели алгоритмов:

Первый тип связывает понятие алгоритма с вычислениями и числовыми функциями. Наиболее развитая и изученная модель этого типа – рекурсивные функции – первый способ формализации понятия алгоритма.

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

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

Тезис Чёрга: Класс задач, решаемых в любой из этих формальных моделей, и есть класс всех задач, которые могут быть решены интуитивно алгоритмическими методами.

Одна из причин, побудивших заняться теорией алгоритмов, – это подозрительность математиков в связи с накоплением упорно не поддающихся решению задач на нахождение алгоритмов.

Например:

Задача о квадратуре круга. Требуется найти алгоритм построения с помощью циркуля и линейки квадрата, равновеликого данному кругу.

Задача трисекции угла. Требуется найти алгоритм деления произвольного угла с помощью циркуля и линейки на три равные части.

Задача удвоения куба. Найти алгоритм, позволяющий на стороне любого куба с помощью циркуля и линейки построить сторону куба, объем которого вдвое больше объема заданного куба.

Доказать алгоритмическую неразрешимость задач на основе интуитивного представления алгоритма невозможно.

Невозможность решения этих задач строго доказана. Появилась необходимость выявления неразрешимых проблем. В теории алгоритмов есть раздел – разработка методов доказательства не существований алгоритмов.

Вторая причина разработки теории алгоритмов – необходимость обоснования математики, поскольку появления антиномий привели к тому, что все в математике стало казаться неустойчивым. Многие математики стали искать выход или пути преодоления противоречий. Среди них выделялись те, кто усмотрел причину кризиса математики в том, что ряд математических объектов и методов является неконструктивным. Пример, актуально бесконечное множество. Расходуя ограниченное количество ресурсов на каждом шаге, имеющим фиксированную длительность, построить такое множество ни реально, ни потенциально нельзя; нельзя проверить обладает ли все элементы такого множества каким либо свойством из-за ограниченной скорости проверки.