Теорема Карпа — Липтона — различия между версиями
Grechko (обсуждение | вклад) |
Grechko (обсуждение | вклад) |
||
Строка 14: | Строка 14: | ||
Тогда, найдётся и схема полиномиального размера <tex> D_n</tex>, выдающая для <tex>x \in SAT</tex> набор значений, удовлетворяющий формуле.<br/> | Тогда, найдётся и схема полиномиального размера <tex> D_n</tex>, выдающая для <tex>x \in SAT</tex> набор значений, удовлетворяющий формуле.<br/> | ||
Рассмотрим язык <tex>L \in \Pi_2</tex>, <tex>L = \{z:\forall x </tex> <tex>\exists y </tex> <tex> \phi(x, y, z)\}</tex>.<br/> | Рассмотрим язык <tex>L \in \Pi_2</tex>, <tex>L = \{z:\forall x </tex> <tex>\exists y </tex> <tex> \phi(x, y, z)\}</tex>.<br/> | ||
− | Рассмотрим формулу <tex>\exists y</tex> <tex>\phi(x, y, z)</tex> как экземпляр задачи <tex>SAT</tex>.<br/> | + | Рассмотрим формулу <tex>\psi(x, z) = \exists y</tex> <tex>\phi(x, y, z)</tex> как экземпляр задачи <tex>SAT</tex>.<br/> |
− | Тогда определение языка <tex>L</tex> можно переписать так: <tex>L=\{z: \forall x</tex> <tex> \phi(x,D_{|z|}(x, z), z)\}</tex>.<br/> | + | Тогда определение языка <tex>L</tex> можно переписать так: <tex>L=\{z: \forall x</tex> <tex> \phi(x,D_{|\psi(x, z)|}(\psi(x, z)), z)\}</tex>.<br/> |
− | Покажем что <tex>\forall x</tex> <tex> \phi(x,D_{|z|}(x, z), z)</tex> <tex>\Leftrightarrow</tex> <tex>\exists | + | Покажем что <tex>(\forall x</tex> <tex> \phi(x,D_{|\psi(x, z)|}(\psi(x, z)), z)</tex> <tex>)\Leftrightarrow</tex> <tex>(\exists G : </tex> <tex> \forall x</tex> <tex>\phi(x, G(\psi(x, z)), z))</tex>. |
− | Очевидно, из первого следует второе, так как <tex>\exists | + | <br>Очевидно, из первого следует второе, так как <tex>\exists G = D_{|\psi(x, z)|}</tex>. |
− | Если первое ложно, то <tex>\exists x</tex><tex>\forall y</tex> <tex>\phi(x, y, z) = 0</tex>, а значит <tex>\forall | + | Если первое ложно, то <tex>\exists x = x_0 : </tex> <tex>\forall y</tex> <tex>\phi(x, y, z) = 0</tex>, а значит <tex>\forall G </tex> <tex>\exists x = x_0 : \phi (x, G(\psi(x, z)), z)</tex>, то есть второе ложно. |
− | Итого, язык <tex>L=\{z:\exists | + | Итого, язык <tex>L=\{z:\exists G : </tex> <tex>\forall x</tex> <tex>\phi(x, G(\psi(x, z)), z)\}</tex>, значит <tex>L \in \Sigma_2</tex>. |
}} | }} |
Версия 23:30, 9 мая 2012
Лемма: |
Пусть , тогда для любой формулы можно за полиномиальное время вывести набор значений, удовлетворяющий формуле. |
Доказательство: |
Если Иначе, выберем любую переменную не содержит переменных, то есть является тождественной единицей, решение задачи тривиально. из формулы , и выполним подстановку . Получим формулу . Если (по условию теоремы, проверку можно выполнить за полиномиальное время), то мы свели задачу к аналогичной с меньшим числом переменных. В противном случае, сведение выполняется подстановкой . |
Теорема (Карп, Липтон): |
Если , то . |
Доказательство: |
Так как |