Класс UP определяется так:
Класс решения задач, решаемых машиной NP, такой, что
Если ответ «да», принимается ровно один путь вычислений.
Если ответ «нет», все пути вычислений отклоняются.
Я пытаюсь развить интуицию для этого определения.
Можно ли сказать, что проблемы UP - это проблемы с уникальными решениями (например, первичная факторизация)?
Это кажется мне близким к истине; но я не могу не думать , что это означало бы, так как UP содержит Р и содержится в NP, что в случае , если P = NP
мы получим , что P = UP = NP
, таким образом , все проблемы NP
имеют уникальные решения , как хорошо, что кажется , как - то доказуемо не так: P != NP
по сокращение до абсурда. Я надеюсь, что в этом параграфе не слишком много догадок и взмахов рук на ваш вкус.
Ответы:
Ваша путаница, по-видимому, связана с тем, что проблемы имеют более одного способа определения «решения» (или свидетеля). Тип решения не является частью определения проблемы. Например, для раскраски графа очевидным типом решения является назначение одного цвета для каждой вершины (используя самое большее необходимое количество цветов); однако по теореме Галлая – Хассе – Роя – ВитавераNP Другой тип решения, который одинаково хорошо работает, - это присвоение ориентации каждому ребру (создание направленных путей не более необходимого количества вершин). Эти два типа решений могут быть проверены за полиномиальное время, но с помощью разных алгоритмов, и они также имеют разные комбинаторные свойства. Например, для типичного экземпляра задачи количество назначений цвета вершины будет отличаться от количества ориентаций ребер. Многие исследования по ускорению экспоненциальных алгоритмов для задач типа NP могут быть истолкованы как поиск нового семейства решений той же проблемы, которое имеет меньше возможностей для проверки.
Каждая проблема в имеет «решение», состоящее только из пустой строки. Чтобы убедиться, что это решение, просто убедитесь, что строка решения пуста, а затем запустите алгоритм полиномиального времени для экземпляра задачи. При таком типе решения каждый экземпляр yes имеет ровно одно действительное решение, а каждый экземпляр no имеет ноль, что соответствует определению и показывает, что . Если то такое же решение с пустой строкой также будет работать для каждой задачи в , показывая, чтоP NP UP P⊂UP P=NP NP NP=UP , Таким образом, нет никакого противоречия между фактом, что решение с пустой строкой является уникальным, и фактом, что некоторый другой тип решения для той же самой проблемы не является уникальным.
источник
Я согласен с комментарием Шолля, что интуиция наличия уникального свидетеля верна, но неуловима. Аргумент в вашем последнем абзаце может быть сделан технически точным и подчеркивает тонкость против . В частности, проблема в вашем последнем абзаце, по сути, заключается в том, :UP NP NPMV⊆cNPSV
Интуитивно понятно, что ваш последний абзац говорит о том, всегда ли вы можете выбрать из числа свидетелей для данного верификатора какой-либо проблемы одного свидетеля. Это вопрос о том, является ли каждый имеет функцию к уточнение (обозначается ). Если это так, то полиномиальная иерархия разрушается (см. Hemaspaandra, Naik, Ogihara и Selman «Вычисление решений однозначно разрушает полиномиальную иерархию » ).NP NPMV NPSV NPMV⊆cNPSV
В отличие от , не известно, что такое следствие следует из . По сути, потому что, учитывая язык , (свидетели a) машины для не должны иметь ничего общего с (свидетелями любого) другого компьютера (ов) ) для .UP NP=UP L∈NP UP L NP L
источник