2.6. Заключение
Отметим, что
несуществование алгоритма того или
иного класса задач не означает
неразрешимости вообще; это означает
лишь, что рассматриваемый класс задач
настолько широк, что единного эффективного
метода для решения всех задач данного
класса не существует.
Для некоторых
проблем мы располагаем сравнительно
простыми и короткими алгоритмами, однако
фактически их применение требует очень
больших вычислений, связанных с перебором
астрономического числа вариантов. С
другой стороны, встречаются довольно
громоздкие инструкции в алгоритмах,
которые сравнительно быстро приводят
к цели.
Исчисление —
определенный набор операций над
совокупностью математически однородных
объектов; с другой стороны, исчисление
- это процедуры преобразования этих
объектов с использованием данных
операций.
Примером исчисления,
которым широко пользуются в процессе
синтеза логических схем, является
преобразования выражений алгебры
логики. Набор правил (аксиом, законов,
тождеств) говорит лишь о том, как можно
преобразовать исходное булево выражение,
но ничего не говорит о том, как надо
его преобразовать, (в какой последовательности
и что делать на каждом шаге
последовательности), чтобы, например,
на заданном логическом базисе получить
минимальную задержку схемы. Таким
образом, исчисление, в отличие от
алгоритма, не содержит указаний, куда
нужно идти, чтобы получить результат.
2.7. Контрольные вопросы. Упражнения
1. Определить
примитивно-рекурсивные функции y,
x), заданные
своими схемами вычислений и начальными
значениями:
а) x)=x)x,
(0)=1;
б) (y,
x)=(y,
x)+x, (0,
x)=0;
в)(y,
x)=(y,
x)+x, (0,
x)=x;
г) (y,
x)=(y,
x)x, (0,
x)=1;
д) (y,
x)=(y,
x)x, (0,
x)=x;
е) (y,
x)=(y,
x)x, (0,
x)=x;
ж) (y,
x)=(y,
x)+x, (0,
x)=0;
з) (y,
x)=((y,
x)+x),
(0,
x)=x;
и) (y,
x)=(y,
x)+x), (0,
x)=0.