Теорема Валианта-Вазирани
Теорема Валианта-Вазирани (Valiant–Vazirani theorem) является важным современным (1986 год) результатом об отношении между сложностными классами.
Содержание
Формулировка теоремы
Если язык USAT принадлежит классу P, то классы языков NP и RP совпадают.
Доказательство теоремы
Для доказательства этого факта покажем, что по заданной в КНФ формуле
можно за полиномиальное время построить набор формул { } такой, что:- если формула SAT), то все формулы также неудовлетворимы; неудовлетворима (то есть не принадлежит
- если формула удовлетворима, то с вероятностью большей ½ в наборе найдется формула ∈ USAT.
Таким образом (учитывая, что по условию теоремы включение
∈ USAT определяется за полиномиальное время), задача принадлежности формулы языку SAT будет разрешаться за полиномиальное время с вероятностью односторонней ошибки меньшей ½, то есть SAT ∈ RP, следовательно, NP=RP.Построение набора формул
Пусть формуле
с переменными соответствует -битное число , которое кодирует набор переменных.- Выберем равновероятно случайным образом целое число из отрезка [0.. ]. Определим число .
- Выберем равновероятно случайным образом целые числа из отрезка [1.. ] и из отрезка [0.. ].
- Добавим в набор формулу , где выражение в данном случае обозначает булеву запись в КНФ, зависящую от переменных и соответствующую данному сравнению.
Данное построение работает за полиномиальное время, и если формула
невыполнима, то любая формула невыполнима.Вероятность существования единственного удовлетворяющего набора
Осталось доказать, что с необходимой нам вероятностью при условии выполнимости
каждая построенная формула имеет единственный набор, ее удовлетворяющий.Дальнейшие рассуждения рекомендуется читать медленно и внимательно:
- Обозначим за все выполняющие наборы формулы . Заметим, что их число, обозначенное как , нам неизвестно (но не превосходит 2n).
- Равенство выполняется с вероятностью , так как было выбрано из [0.. ]. Предположим, что это соотношение верно.
- Для некоторых и при условии несовпадения и имеется не более простых делителей разности , так как и не превосходят 2n.
- Из курса теории чисел известно, что для достаточно больших имеется не менее простых чисел, не превосходящих .
- Из двух предыдущих рассуждений следует, что существует по крайней мере чисел таких, что они не превосходят и остаток от деления на не совпадает с остатком от деления любого на .
- Таким образом по крайней мере пар чисел отличают набор от всех остальных. Заметим, что при этом множества пар отличающих чисел ( , ) для каждого выполняющего набора переменных дизъюнктны.
- Следовательно, всего имеется не менее искомых отличающих пар. В данной оценке мы использовали равенство из второго пункта.
- Таким образом, вероятность выбрать отличающую пару чисел ( , ) составляет не менее .
- Домножая полученную вероятность на вероятность выбрать подходящее (см. второй пункт), получим, что вероятность верного построения формулы составляет .
Составив набор {
} из O(n4) формул, каждый раз выбирая тройку ( , , ) чисел случайным образом, получим константную вероятность ошибки. Таким образом необходимый набор формул построен, а теорема доказана.