Я столкнулся с некоторыми вполне естественными NP-полными проблемами, которые, казалось бы, требуют длинных свидетелей. Проблемы, параметризованные целыми числами и D , следующие:CD
Входные данные: одноленточный TM Вопрос: существует ли n ∈ N , такой, что M делает больше, чем C n + D шагов на некотором входе длины n ?M
n∈NMCn+Dn
Иногда дополнения к проблеме легче сформулировать: выполняется ли данный однотонный TM во время C n + D , т.е. он делает не более C n + D шагов на всех входах размера n , для всех n ?MCn+DCn+Dnn
Полный результат представлен здесь . По сути, показано, что если мы хотим проверить, работает ли однотонная ТМ во время , нам нужно проверить это только на входах длины, ограниченной q O ( C ) , где q - количество состояний ввода ТМ. Таким образом, свидетелем будет ввод длины q O ( C ), для которой ограничение по времени нарушается. В ссылке также показано, что эти задачи NP-полны для всех C ≥ 2 и D ≥ 1 .Cn+DqO(C)qqO(C)C≥2D≥1
Теперь, если свидетель является входом, который нарушает время выполнения, он должен иметь длину в целом. И вход имеет длину O ( q 2 ) .qΩ(C)O(q2)