WikiSort.ru - Не сортированное

ПОИСК ПО САЙТУ | о проекте

Операторный алгоритм — последовательность приказов, каждый из которых имеет определённый номер и содержит указания: какую операцию выполнить над заданным объектом и приказ с каким номером следует далее выполнять над результатом данной операции[1]. Понятие ввёл в науку Ван Хао[2].

Приказ

Обычно в качестве объектов используются натуральные числа и для них используются приказы вида:

где: - номер приказа, - символ фиксированной одноместной частичной функции, - номера некоторых приказов. Выполнить данный приказ над числом - значит найти число и далее перейти к выполнению над приказа с номером ; если же не определено, то перейти к выполнению над числом приказа с номером . Результат выполнения приказа над числом обычно изображают парой , где - полученное число, - номер приказа, который должен выполняться далее над .

Программа операторного алгоритма

Программой операторного алгоритма называется последовательность приказов вида:

где - заданные частичные функции, - какие-то натуральные числа из последовательности .

Обработка произвольного числа согласно указанной программе состоит из следующих шагов:

  • Шаг 1. Вычисляем . Если определено, то результатом первого шага будет пара чисел . Если не определено, то результатом первого шага будет пара чисел .

....

  • Шаг . Пусть пара есть результат предыдущего шага. Выполняем над приказ с номером , то есть вычисляем . Если определено, то результатом -го шага будет пара чисел . Если не определено, то результатом -го шага будет пара чисел .

....

Если на -м шаге получится пара вида , то по определению на этом процесс обрывается и число называется результатом переработки числа согласно программе. Если же пара вида ни на каком шаге не возникает, то результатом переработки будет "неопределенное значение".

Свойства

  • Для того, чтобы частичная функция была вычислима с помощью операторного алгоритма, программа которого содержит лишь частично рекурсивные функции с рекурсивной областью определения, необходимо и достаточно, чтобы была частично рекурсивной[1].
  • Для каждой частично рекурсивные функции существует операторный алгоритм, программа которого состоит из приказов вида:

где , для любого перерабатывающий в [1].

Обобщения

Имеются многочисленные обобщения понятия операторного алгоритма. Простейшее обобщение состоит в том, что рассматриваются приказы вида . Обрабатывая заданное число , следует найти . Если определено, то перейти к выполнению над числом приказа с номером , если нет, то перейти к выполнению над числом x приказа с номером . Известно обобщение операторного алгоритма, перерабатывающее графы[3]. При всех подобных обобщениях класс вычислимых функций совпадает с классом частично рекурсивных функций.

См. также

Примечания

  1. 1 2 3 Мальцев А. И. Алгоритмы и рекурсивные функции. — М., Наука, 1986. — с. 291-301
  2. Wamg Hao A variant to Turing's theory of computing machines. — J. Assoc. Comp. Mach., 1957, 4, № 1, p. 63-92
  3. Колмогоров А. Н., Успенский В. А. К определению алгоритма. - УМН, 1958, 13, № 4, с. 3-28

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2025
WikiSort.ru - проект по пересортировке и дополнению контента Википедии