Определение задачи 
Рассмотрим задачу

следующего вида.
Число

из

разрядов в виде последовательность из

нулей и единиц хранится в памяти автомата

.
На входе автомату

можно подавать любое двоичное число

разрядности

, т.е. любую последовательность из

нулей и единиц. Работа автомата

заключается в побитном сравнении числа

с числом

.
Автомат

отвечает на вопрос, равны или нет числа

и

. На выходе автомат

выдает

Задача

заключается в том, чтобы найти число

по известной длине

двоичной записи

.
Можно обращаться к автомату

неограниченное количество раз с разными входными данными

длины

.
Решение задачи 
Автомат

можно представить в виде программы машины Тьюринга

.
Тогда задачу

можно решить двумя способами:
1) полный перебор

вариантов входных данных

с таким же количеством (в худшем случае) запусков машины Тьюринга

,
2) анализ программы машины Тьюринга

для извлечения из самой программы зашитого в программу числа

.
Тезис 1 Сложность решения задачи

способом 1 является экспоненциальной по

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

может потребоваться перебрать

возможных вариантов входных данных

.
Тезис 2 Сложность решения задачи

способом 2 не является экспоненциальной по

.
Доказательство.Сложность будет зависеть от размера и качества программы

, которые зависят от

не экспоненциально.
Тезис 3 Любая задача класса

может быть представлена в виде задачи

.
Доказательство.Рассмотрим NP-полную задачу "куб-змейка".
https://doi.org/10.2197/ipsjjip.21.368http://strana-igr.ru/index.php?productID=488Змейка состоит из 64 или, в облегченном варианте, 27 атомарных кубиков. Каждый атомарный кубик имеет либо прямое, либо угловое сквозное отверстие, через которое протянута нить, плотно соединяющая все атомарные кубики в змейку.
Головоломка заключается в том, чтобы собрать змейку в куб 4х4х4 или, в облегченном варианте, в куб 3х3х3, имея возможность вращать части змейки по сочленениям атомарных кубиков.
Последовательность поворотов атомарных кубиков для правильной сборки головоломки может быть закодирована в виде бинарного числа

,
которое помещается в автомат

.
Любая попытка сборки головоломки в виде определенной последовательности поворотов атомарных кубиков может быть закодирована числом

.
Решение соответствующей задачи

будет решением головоломки "куб-змейка".