Теорема Валианта-Вазирани — различия между версиями
Ulyantsev (обсуждение | вклад) (→Доказательство теоремы) |
Ulyantsev (обсуждение | вклад) (→Доказательство теоремы) |
||
Строка 36: | Строка 36: | ||
*Для некоторых <tex>x^{(j)}</tex> и <tex>x^{(h)}</tex> при условии несовпадения <tex>j</tex> и <tex>h</tex> имеется не более <tex>n</tex> простых делителей разности <tex>x^{(j)} - x^{(h)}</tex>, так как <tex>x^{(j)}</tex> и <tex>x^{(h)}</tex> не превосходят 2<sup>''n''</sup>. | *Для некоторых <tex>x^{(j)}</tex> и <tex>x^{(h)}</tex> при условии несовпадения <tex>j</tex> и <tex>h</tex> имеется не более <tex>n</tex> простых делителей разности <tex>x^{(j)} - x^{(h)}</tex>, так как <tex>x^{(j)}</tex> и <tex>x^{(h)}</tex> не превосходят 2<sup>''n''</sup>. | ||
+ | |||
+ | *Из курса теории чисел известно, что для достаточно больших <tex>n</tex> имеется не менее <tex>b_i / \log_2 b_i = 2^{i + 2}n^2 / (i + 2 + 2 \log_2 n) \ge 2^{i+1}n</tex> простых чисел, не превосходящих <tex>b_i</tex>. | ||
+ | |||
+ | Из двух предыдущих рассуждений следует, что существует по крайней мере <tex>2^{i+1}n - 2^{i}n = 2^{i}n</tex> чисел <tex>p</tex> таких, что они не превосходят <tex>b_i</tex> и остаток от деления <tex>x^{(j)}</tex> на <tex>p</tex> не совпадает с остатком от деления любого <tex>x^{(h)}</tex> на <tex>p</tex>. | ||
==Внешние ссылки== | ==Внешние ссылки== |
Версия 17:05, 3 мая 2010
Теорема Валианта-Вазирани (Valiant–Vazirani theorem) является клевым современным результатом в теории сложности.
Содержание
Формулировка теоремы
Если язык USAT принадлежит классу P, то классы языков NP и RP совпадают.
Доказательство теоремы
Для доказательства этого факта покажем, что по заданной в КНФ формуле
можно за полиномиальное время построить набор формул такой, что:- если формула SAT), то все формулы также неудовлетворимы; неудовлетворима (то есть не принадлежит
- если формула удовлетворима, то с вероятностью большей ½ в наборе найдется формула ∈ USAT.
Таким образом задача принадлежности формулы
языку SAT будет разрешаться за полиномиальное время с вероятностью односторонней ошибки меньшей ½, то есть SAT ∈ RP, следовательно, NP=RP.Построение набора формул
Пусть формуле
с переменными соответствует -битное число , которое кодирует набор переменных.- Выберем равновероятно случайным образом целое число из отрезка [0.. ]. Определим число .
- Выберем равновероятно случайным образом целые числа из отрезка [1.. ] и из отрезка [0.. ].
- Добавим в набор формулу , где выражение в данном случае обозначает булеву запись в КНФ, зависящую от переменных и соответствующую данному сравнению.
Данное построение работает за полиномиальное время и если формула
невыполнима, то любая формула невыполнима.Вероятность существования единственного удовлетворяющего набора
Осталось доказать, что с необходимой нам вероятностью при условии выполнимости
построенная формула имеет единственный набор, ее удовлетворяющий.Дальнейшие рассуждения рекомендуется читать медленно и внимательно:
- Обозначим за все выполняющие наборы формулы . Заметим, что их число, обозначенное как , нам неизвестно (но не превосходит 2n).
- Равенство выполняется с вероятностью 1/( +1), так как было выбрано из [0.. ]. Предположим, что это соотношение верно.
- Для некоторых и при условии несовпадения и имеется не более простых делителей разности , так как и не превосходят 2n.
- Из курса теории чисел известно, что для достаточно больших имеется не менее простых чисел, не превосходящих .
Из двух предыдущих рассуждений следует, что существует по крайней мере
чисел таких, что они не превосходят и остаток от деления на не совпадает с остатком от деления любого на .