Теорема Карпа — Липтона — различия между версиями
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
Теорема (Карп, Липтон): |
Если , то . |
Доказательство: |
Так как |