Для (поисковых версий) NP- неполных задач проверить решение явно проще, чем найти его, поскольку проверка может быть выполнена за полиномиальное время, тогда как поиск свидетеля занимает (вероятно) экспоненциальное время.
Однако в P решение также может быть найдено за полиномиальное время, поэтому не представляется очевидным, когда проверка выполняется быстрее, чем поиск решения. На самом деле, разные проблемы ведут себя по-разному с этой точки зрения. Некоторые примеры:
3SUM: учитывая входных чисел, найдите 3 из них, сумма которых равна 0. Насколько мне известно, самый быстрый из известных алгоритмов выполняется за время O ( n 2 - o ( 1 ) ) , и этот порядок считается оптимальным. С другой стороны, проверка решения происходит намного быстрее, так как все, что нам нужно сделать, это просто проверить, что 3 найденных числа действительно суммируют с 0.
Кратчайшие пути для всех пар: с учетом графа с весами ребер вычисляется его матрица расстояний наименьшего пути. После того, как такая матрица задана, можно ли проверить быстрее, что это действительно правильная матрица расстояний, чем пересчитать ее? Я думаю, что ответ, возможно, да, но это, безусловно, менее очевидно, чем для 3SUM.
Линейное программирование. Если дается заявленное оптимальное решение, проверить его легче, чем пересчитать его, когда также предоставляется вспомогательная информация (оптимальное двойное решение). С другой стороны, если доступно только первичное решение, неясно, можно ли его проверить быстрее, чем на самом деле решение ЛП.
Вопрос: что известно об этом предмете? То есть когда легче проверить решение проблемы в P , чем найти решение?
источник
Ответы:
источник
В данной работе показано , что существует алгоритмы для верификации как YES и экземпляры NO 3 для проблем, в том числе Макс потока, 3SUM и ВПДПА, которые быстрее с помощью многочлена фактора , чем известные границ для вычисления самого решения.
Существует класс проблем, а именно те, которые улучшают время выполнения, это SETH-hard, чье время выполнения для проверки NO экземпляров вряд ли будет значительно быстрее, чем время для вычисления решения, в противном случае гипотеза из этой статьи называется недетерминированной Сильная экспоненциальная гипотеза времени потерпит неудачу.
источник
Для некоторых проблем, кажется, нет никакой разницы. В частности, Vassilevska Williams & Williams показывают:
для умножения логической матрицы вычисление матричного произведения и проверка субкубического эквивалента матричного произведения, означающего, что у них либо есть алгоритмы субкубического времени, либо ни один из них не имеет.
То же самое верно для вычисления и проверки матричного произведения для любой «расширенной (min, +) структуры» (определение см. В статье, но это включает в себя множество естественных проблем).
(Теперь, конечно, возможно, что у всех этих проблем есть субкубические алгоритмы, и тогда между вычислением и проверкой может быть полиномиальная разница, но для этих проблем не может быть кубической разницы. И мне кажется вероятным, что в На самом деле все они требуют кубического времени.)
источник
источник
Я думаю, что многие примеры взяты из NP-полных проблем, которые попадают в P, когда мы фиксируем один или несколько параметров .
источник
источник
источник