Теорема Валианта-Вазирани — различия между версиями
Ulyantsev (обсуждение | вклад) |
Ulyantsev (обсуждение | вклад) |
||
Строка 5: | Строка 5: | ||
Если язык '''[[USAT]]''' принадлежит классу '''[[P]]''', то классы языков '''[[NP]]''' и '''[[RP]]''' совпадают. | Если язык '''[[USAT]]''' принадлежит классу '''[[P]]''', то классы языков '''[[NP]]''' и '''[[RP]]''' совпадают. | ||
− | + | ==Доказательство теоремы== | |
Для доказательства этого факта покажем, что по заданной в КНФ формуле <tex>\phi</tex> можно за полиномиальное время построить набор формул <tex>\phi_1 \ldots \phi_m</tex> такой, что: | Для доказательства этого факта покажем, что по заданной в КНФ формуле <tex>\phi</tex> можно за полиномиальное время построить набор формул <tex>\phi_1 \ldots \phi_m</tex> такой, что: | ||
Строка 11: | Строка 11: | ||
* если формула <tex>\phi</tex> удовлетворима, то с вероятностью большей ½ в наборе найдется формула <tex>\phi_i</tex> ∈ '''USAT'''. | * если формула <tex>\phi</tex> удовлетворима, то с вероятностью большей ½ в наборе найдется формула <tex>\phi_i</tex> ∈ '''USAT'''. | ||
− | Таким образом задача принадлежности формулы языку '''SAT''' будет разрешаться за полиномиальное с вероятностью большей ½, то есть '''SAT''' ∈ '''RP''', следовательно, '''NP'''='''RP'''. | + | Таким образом задача принадлежности формулы языку '''SAT''' будет разрешаться за полиномиальное время с вероятностью большей ½, то есть '''SAT''' ∈ '''RP''', следовательно, '''NP'''='''RP'''. |
− | + | ||
+ | ===Построение набора формул=== | ||
+ | |||
+ | Пусть формуле <tex>\phi(x_1 \ldots x_n)</tex> с ''n'' переменными соответствует ''n''-битное число <tex>x</tex>, которое кодирует значения переменных. | ||
+ | |||
+ | Выберем равновероятно случайным образом целое число <tex>i</tex> из отрезка [0..''n'']. | ||
+ | Определим число <tex>b_i = 2^{i + 2}n^2</tex>. | ||
+ | |||
+ | Выберем равновероятно случайным образом целые числа <tex>p_i</tex> из отрезка [1..<tex>b_i</tex>] и <tex>r_i</tex> из отрезка [0..<tex>b_i</tex>]. | ||
+ | |||
+ | Добавим в набор формулу <tex>\phi_k = \phi \wedge (x \mod p_i = r_i)</tex>. | ||
+ | |||
==Внешние ссылки== | ==Внешние ссылки== | ||
Версия 13:51, 3 мая 2010
Теорема Валианта-Вазирани (Valiant–Vazirani theorem) является клевым современным результатом в теории сложности.
Содержание
Формулировка теоремы
Если язык USAT принадлежит классу P, то классы языков NP и RP совпадают.
Доказательство теоремы
Для доказательства этого факта покажем, что по заданной в КНФ формуле
можно за полиномиальное время построить набор формул такой, что:- если формула SAT), то все формулы также неудовлетворимы; неудовлетворима (то есть не принадлежит
- если формула удовлетворима, то с вероятностью большей ½ в наборе найдется формула ∈ USAT.
Таким образом задача принадлежности формулы языку SAT будет разрешаться за полиномиальное время с вероятностью большей ½, то есть SAT ∈ RP, следовательно, NP=RP.
Построение набора формул
Пусть формуле
с n переменными соответствует n-битное число , которое кодирует значения переменных.Выберем равновероятно случайным образом целое число
из отрезка [0..n]. Определим число .Выберем равновероятно случайным образом целые числа
из отрезка [1.. ] и из отрезка [0.. ].Добавим в набор формулу
.