Нормальный алгорифм

Норма́льный алгорифм

Одно из современных уточнений понятия Алгоритма, получившее распространение в исследованиях по конструктивной математике (См. Конструктивная математика). Предложено в 1950 А. А. Марковым, впервые систематически и строго построившим на основе этого уточнения общую алгоритмов теорию (См. Алгоритмов теория). Н. а. эквивалентны частично-рекурсивным функциям (см. Рекурсивные функции), а следовательно, и Тьюринга машинам.

Концепция Н. а. специально приспособлена для реализации алгоритмов, действующих над словами в тех или иных алфавитах. При этом под алфавитом в математике понимается любой конечный набор четко отличимых друг от друга графических символов (букв), а под словом в данном алфавите — произвольная конечная цепочка букв этого алфавита. Цепочка, вовсе не содержащая букв, также считается словом в данном алфавите (пустое слово). Например, цепочки «ииаам», «книга», «гамма» являются словами в русском алфавите, а также в шестибуквенном алфавите {к, н, и, г, а, м}. Элементарным актом преобразования слов в алгоритмических процессах, задаваемых Н. а., является т. н. операция «подстановки вместо первого вхождения». Пусть Р, Q, R — слова в некотором алфавите. Результатом подстановки Q вместо первого вхождения Р в R называется слово ∑ (R, Р, Q), получаемое следующим образом. Если Р входит в R, т.е. R представимо в виде S1PS2, то среди таких представлений отыскивается представление с наиболее коротким словом S1 и полагается ∑ (R, Р, Q) = S1QS2. Если же Р не входит в R, то ∑ (R, Р, Q) = R. Так, ∑ (гамма, а, е) = гемма.

Для задания Н. а. Нормальный алгорифм. Рис. 2 необходимо фиксировать некоторый алфавит А, не содержащий букв «→» и « · », и упорядоченный список слов вида РQ (простая формула подстановки) или Р → · Q (заключит. формула подстановки), где Р и Q — слова в А. Формулы подстановок принято записывать друг под другом в порядке следования, объединяя их слева фигурной скобкой. Получающаяся фигура называется схемой Н. а. Исходными данными и результатами работы Н. а. Нормальный алгорифм. Рис. 2 являются слова в А (сам Н. а. Нормальный алгорифм. Рис. 2 называется Н. а. в алфавите А). Процесс применения к слову R Н. а. Нормальный алгорифм. Рис. 2 со схемой вида

Нормальный алгорифм. Рис. 3

где δi (1 ≤ in) означает «→» или «→ ·», разворачивается следующим образом. Отыскивается наименьшее i, при котором Pi входит в R. Если все Pi не входят в R, то работа Нормальный алгорифм. Рис. 2 заканчивается и её результатом считается R. Если требуемое i найдено, то переходят к слову ∑ (R, Pi, Qi). При этом в случае, если использованная формула подстановки PiδiQi была заключительной (δi = → ), работа Нормальный алгорифм. Рис. 2 заканчивается и результатом считается ∑ (R, Pi, Qi). Если же формула PiδiQi — простая, то описанная процедура повторяется с заменой R на ∑ (R, Ri, Qi).

Пример. Натуральные числа можно рассматривать как слова в алфавите {0, 1} вида 0, 01, 011, .... Н. а. в этом алфавите со схемами {0 → · 01 и {1→ переводят каждое натуральное число n соответственно в n + 1 и в 0.

Множество всех Н. а. замкнуто относительно известных способов комбинирования алгоритмов. Например, по любым двум Н. а. Нормальный алгорифм. Рис. 2 и Нормальный алгорифм можно построить Н. а. Нормальный алгорифм. Рис. 4, являющийся композицией Нормальный алгорифм. Рис. 2 и Нормальный алгорифм, т. е. реализующий следующий интуитивный алгоритм: «сначала выполнить алгоритм Нормальный алгорифм. Рис. 2, затем к результату применять Нормальный алгорифм».

Соотношение между интуитивными алгоритмами и Н. а. описывается выдвинутым А. А. Марковым принципом нормализации: всякий алгоритм, перерабатывающий слова в данном алфавите А в слова в этом же алфавите, может быть реализован посредством Н. а. в некотором расширении А. [Легко указать очень простые алгоритмы в А, не реализуемые Н. а. в A; с другой стороны, всегда можно ограничиться двухбуквенным (и даже однобуквенным) расширением A.] Принцип нормализации эквивалентен тезису Чёрча и, аналогично последнему, не может быть доказан из-за неточности интуитивной концепции алгоритма.

Лит.: Марков А. А., Теория алгорифмов, М. — Л., 1954 (Тр. Математического института АН СССР, т. 42); Мендельсон Э., Введение в математическую логику, пер. с англ., М., 1971.

Б. А. Кушнер.

Источник: Большая советская энциклопедия на Gufo.me


Значения в других словарях

  1. Нормальный Алгорифм — Название, закрепившееся за алгоритмами некоторого точно охарактеризованного типа. Наряду с рекурсивными функциями и Тьюринга машинами Н. Математическая энциклопедия