Характеристики сложности вычислений

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

В качестве модели вычислительного устройства выберем МТ.  Пусть МТ вычисляет функцию f(x). Определим функцию tT(x), равную числу шагов машины Т, выполненному при вычислении f(x), если f(x) определено. Если f(x) не определено, то значение tT(x) считается неопределенным. Функция tT(x) называется временной сложностью.

Активной зоной при работе машины Т на слове х называется множество всех ячеек ленты, которые либо содержат непустые символы, либо посещались в процессе вычисления f(x) устройством машины Т. Определим функцию sT(x), равную длине активной зоны при работе машины Т на слове х, если f(x) определено. Если f(x) не определено, то значение ST(x) считается неопределенным. Функция ST(x) называется емкостной (ленточной) сложностью.

Введенные функции ST(x) и tT(x) являются словарными.

Удобно ввести для рассмотрения функции натурального аргумента

 

Они также называются функциями временной и емкостной

сложности (по худшему случаю).

 

Логика - доступно для всех