Теорема Карпа — Липтона — различия между версиями
Grechko (обсуждение | вклад) (Новая страница: «{{Теорема |author=Карп — Липтон |statement= Если <tex>NP \subset P/poly</tex>, то <tex>\Sigma_2 = \Pi_2</tex> |proof= Так как <tex>...») |
Kirelagin (обсуждение | вклад) (Оформление и мелочи) |
||
| Строка 1: | Строка 1: | ||
{{Теорема | {{Теорема | ||
| − | |author=Карп | + | |author=Карп, Липтон |
|statement= | |statement= | ||
| − | Если <tex>NP \subset P/poly</tex>, то <tex>\Sigma_2 = \Pi_2</tex> | + | Если <tex>NP \subset P/poly</tex>, то <tex>\Sigma_2 = \Pi_2</tex>. |
|proof= | |proof= | ||
| − | Так как <tex>NP \subset P/poly</tex>, то <tex> | + | Так как <tex>NP \subset P/poly</tex>, то для любого <tex>n</tex> найдётся схема полиномиального размера <tex> C_n</tex>, такая что <tex>C_{|x|}(x) = \left[x \in SAT\right]</tex>. |
| − | Рассмотрим язык <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>. Тогда определение языка <tex>L</tex> можно переписать так: <tex>L=\{z: \forall x</tex> <tex> \phi(x,D_{|x|}(x, z), z)\}</tex>. <br> Покажем что <tex>\forall x</tex> <tex> \phi(x,D_{|x|}(x, z), z)</tex> <tex>\Leftrightarrow</tex> <tex>\exists D</tex> <tex> \forall x</tex> <tex>\phi(x, D(x, z), z)</tex>. Очевидно из первого следует второе, так как <tex>\exists D = D_{|z|}</tex>. | + | Тогда, найдётся и схема полиномиального размера <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>\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_{|x|}(x, z), z)\}</tex>.<br/> | ||
| + | Покажем что <tex>\forall x</tex> <tex> \phi(x,D_{|x|}(x, z), z)</tex> <tex>\Leftrightarrow</tex> <tex>\exists D</tex> <tex> \forall x</tex> <tex>\phi(x, D(x, z), z)</tex>. | ||
| + | Очевидно, из первого следует второе, так как <tex>\exists D = D_{|z|}</tex>. | ||
| + | Если первое ложно, то <tex>\exists x</tex><tex>\forall y</tex> <tex>\phi(x, y, z) = 0</tex>, а значит <tex>\forall D \phi (x, D_{|z|}(x, z), z)</tex>, то есть второе ложно. | ||
| + | Итого, язык <tex>L=\{z:\exists D</tex> <tex>\forall x</tex> <tex>\phi(x, D(x, z), z)\}</tex>, значит <tex>L \in \Sigma_2</tex>. | ||
}} | }} | ||
Версия 23:52, 29 апреля 2012
| Теорема (Карп, Липтон): |
Если , то . |
| Доказательство: |
|
Так как , то для любого найдётся схема полиномиального размера , такая что .
Тогда, найдётся и схема полиномиального размера , выдающая для набор значений, удовлетворяющий формуле. |