Лемма о соотношении coNP и IP — различия между версиями
м |
м |
||
Строка 4: | Строка 4: | ||
}} | }} | ||
− | Введём понятие | + | Введём понятие арифметизации булевых формул. Пусть нам дана формула <tex>\phi(x_1 \ldots x_n)</tex>. Сделаем следующие преобразования и получим формулу <tex>A_\phi(x_1, x_2, \ldots, x_n)</tex>: |
# <tex> x_i \to x_i</tex>; | # <tex> x_i \to x_i</tex>; | ||
# <tex> \lnot x \to 1 - x</tex>; | # <tex> \lnot x \to 1 - x</tex>; | ||
# <tex>\Phi \land \Psi \to A_\Phi \cdot A_\Psi</tex>; | # <tex>\Phi \land \Psi \to A_\Phi \cdot A_\Psi</tex>; | ||
# <tex>\Phi \lor \Psi \to 1 - (1 - A_\Phi) \cdot (1 - A_\Psi)</tex>. | # <tex>\Phi \lor \Psi \to 1 - (1 - A_\Phi) \cdot (1 - A_\Psi)</tex>. | ||
+ | Заметим, что длина формулы при этом возрастёт не более, чем в константу раз. | ||
{{Лемма | {{Лемма | ||
Строка 18: | Строка 19: | ||
{{Лемма | {{Лемма | ||
|about=2 | |about=2 | ||
− | |statement=<tex>\sum\limits_{x_1 | + | |statement=<tex>\sum\limits_{x_1 = 0}^1 \ldots \sum\limits_{x_n = 0}^1 A_\phi(x_1, \ldots, x_n)=k \iff \langle\phi,k\rangle \in \#SAT</tex>. |
|proof=Следует из леммы (1). | |proof=Следует из леммы (1). | ||
}} | }} | ||
Строка 27: | Строка 28: | ||
|statement=<tex>\#SAT \in \mathrm{IP}</tex>. | |statement=<tex>\#SAT \in \mathrm{IP}</tex>. | ||
|proof= | |proof= | ||
+ | Для доказательства леммы построим программы ''Verifier'' и ''Prover'' из определения класса <tex>\mathrm{IP}</tex>. | ||
+ | |||
+ | Сперва арифметизуем формулу <tex>\phi</tex>. Пусть полученный полином <tex>A(x_1, x_2, ..., x_n)</tex> имеет степень <tex>d</tex>. | ||
}} | }} | ||
Версия 15:03, 1 июня 2012
Определение: |
имеет ровно удовлетворяющих наборов . |
Введём понятие арифметизации булевых формул. Пусть нам дана формула . Сделаем следующие преобразования и получим формулу :
- ;
- ;
- ;
- .
Заметим, что длина формулы при этом возрастёт не более, чем в константу раз.
Лемма (1): |
. |
Лемма (2): |
. |
Доказательство: |
Следует из леммы (1). |
Лемма (3): |
. |
Доказательство: |
Для доказательства леммы построим программы Verifier и Prover из определения класса Сперва арифметизуем формулу . . Пусть полученный полином имеет степень . |
Лемма (4): |
. |
Доказательство: |
Сведём язык к языку следующим образом: , где — количество различных переменных в формуле .Очевидно, что По лемме (3) . . Тогда . Так как , то . |