Теорема Карпа-Липтона — различия между версиями
Строка 76: | Строка 76: | ||
Рассмотрим минимальную неправильную схему. Тогда на той формуле, на которой эта схема неправильна, по предположению, что все более короткие формулы правильны,эта формула распознается схемами с меньшим числом входов. Поэтому обе скобки будут 0 и мы не узнаем набор схем. Развернем формулу до конца. | Рассмотрим минимальную неправильную схему. Тогда на той формуле, на которой эта схема неправильна, по предположению, что все более короткие формулы правильны,эта формула распознается схемами с меньшим числом входов. Поэтому обе скобки будут 0 и мы не узнаем набор схем. Развернем формулу до конца. | ||
− | <tex> \forall{\varphi{}}: |\varphi{}|=m \forall{x_1}..\forall{x_m} | + | <tex> \forall{\varphi{}}: |\varphi{}|=m \forall{x_1}..\forall{x_m} </tex><tex> C_m(\varphi{})=0 \Rightarrow \varphi{(x_1)}=0</tex> |
− | + | иначе <tex> C_{m-1}(\varphi|_{x_1=0})=0 \Rightarrow \varphi|_{x_1=0}(x_2)=0</tex> | |
<tex>C_{m-1}(\varphi{}|_{x_1=1})=0 \Rightarrow \varphi{}|_{x_1=0}(x_2)=0</tex> | <tex>C_{m-1}(\varphi{}|_{x_1=1})=0 \Rightarrow \varphi{}|_{x_1=0}(x_2)=0</tex> | ||
− | |||
<tex>C_{m-1}(\varphi{}|{x_1=0}) \vee{} C_{m-1}(\varphi{}|_{x_1=1})</tex> | <tex>C_{m-1}(\varphi{}|{x_1=0}) \vee{} C_{m-1}(\varphi{}|_{x_1=1})</tex> | ||
И рекурсивно вызываемся от того из них которое равно 1. Ту же самую формулу но записываем от того из них которое равно 1 (это же предикат но для того из них фи при х1= для которого труе) | И рекурсивно вызываемся от того из них которое равно 1. Ту же самую формулу но записываем от того из них которое равно 1 (это же предикат но для того из них фи при х1= для которого труе) |
Версия 10:17, 4 июня 2010
Формулировка
Теорема Карпа-Липтона
то
Доказательство
Пусть есть логические схемы для
(для любой задачи из NP). Зафиксируем любую задачу из . Например пусть разрешается логическими схемами ( с одним битом разрешается логической схемой , с двумя переменными логической схемой и т.д.).
Что значит "разрешается логической схемой"?
Это значит что если на вход логической схеме подать каким-то логичным образом закодированную формулу, то на выходе получется логичным образом в виде 0 и 1 закодированный ответ - имеется разложение или нет. И причем размер этой логической схемы
, где - какой-то полином.Здесь не утверждается, что эти логические схемы можно как-то конструктивно построить. Если бы их было возможно построить за полином, то это бы означало, что
и значит .Итак, получается, что если зафиксировать
, то для этого фиксированного будет, где - вход длины
Рассмотрим язык
. Это означает, что
Что такое ?
Обозначим пары
, для которых такой существует как какой нибудь язык .
.
Заметим что
по определениюТаким образом получается, что
Требуется доказать, что
Если
то с помощью , т.е.
Что такое " "?
для некоторого набора логических схем это означает выполнимость всего этого набора. Если предположить, что набор этих схем известен, то получится, что
,
где
- длина входа .Требуется откуда то взять этот набор. Его можно угадать, используя квантор "
" снаружи.существует по предположению, что т.е.
решает и
Что такое Cn Решает SAT?
Запишем это используя квантор "
".решает если
Воспользуемся самосведением
:
,
где -
набор логических схем для .Внутри будем проверять используемый набор
Вот когда подставим x1=0 нужно будет использовать(получится более короткая формула) и используем для проверки логическую схему более короткую . Если она выдает 1 то мы опять подставляем либо 0 либо 1 и так далее. Это правильная проверка причем за полином
Если
решает то все хорошо. Если нет, то зафиксируем формулу , которую он не решает. Если на этой формуле выдаст 0, а должна выдать 1, то получается что не удовлетворяет первую часть предыдущего выражения и, значит, не будет работать. Если наоборот выдаст 1 а на самом деле формула не удавлетворима то обе скобки не выполнятся и опять формула работать не будет.Рассмотрим минимальную неправильную схему. Тогда на той формуле, на которой эта схема неправильна, по предположению, что все более короткие формулы правильны,эта формула распознается схемами с меньшим числом входов. Поэтому обе скобки будут 0 и мы не узнаем набор схем. Развернем формулу до конца.
иначе
И рекурсивно вызываемся от того из них которое равно 1. Ту же самую формулу но записываем от того из них которое равно 1 (это же предикат но для того из них фи при х1= для которого труе) Второй вариант был угадать не только будевы схемы для сат но и те которые выдают нам правильные значения
Получаем что
Теорема доказана