Sharp SAT — различия между версиями
SVKazakov (обсуждение | вклад) |
|||
Строка 1: | Строка 1: | ||
+ | {| class="wikitable" align="center" style="color: red; background-color: black; font-size: 56px; width: 800px;" | ||
+ | |+ | ||
+ | |-align="center" | ||
+ | |'''НЕТ ВОЙНЕ''' | ||
+ | |-style="font-size: 16px;" | ||
+ | | | ||
+ | 24 февраля 2022 года российское руководство во главе с Владимиром Путиным развязало агрессивную войну против Украины. В глазах всего мира это военное преступление совершено от лица всей страны, всех россиян. | ||
+ | |||
+ | Будучи гражданами Российской Федерации, мы против своей воли оказались ответственными за нарушение международного права, военное вторжение и массовую гибель людей. Чудовищность совершенного преступления не оставляет возможности промолчать или ограничиться пассивным несогласием. | ||
+ | |||
+ | Мы убеждены в абсолютной ценности человеческой жизни, в незыблемости прав и свобод личности. Режим Путина — угроза этим ценностям. Наша задача — обьединить все силы для сопротивления ей. | ||
+ | |||
+ | Эту войну начали не россияне, а обезумевший диктатор. И наш гражданский долг — сделать всё, чтобы её остановить. | ||
+ | |||
+ | ''Антивоенный комитет России'' | ||
+ | |-style="font-size: 16px;" | ||
+ | |Распространяйте правду о текущих событиях, оберегайте от пропаганды своих друзей и близких. Изменение общественного восприятия войны - ключ к её завершению. | ||
+ | |-style="font-size: 16px;" | ||
+ | |[https://meduza.io/ meduza.io], [https://www.youtube.com/c/popularpolitics/videos Популярная политика], [https://novayagazeta.ru/ Новая газета], [https://zona.media/ zona.media], [https://www.youtube.com/c/MackNack/videos Майкл Наки]. | ||
+ | |} | ||
+ | |||
== Определение == | == Определение == | ||
Версия 08:23, 1 сентября 2022
НЕТ ВОЙНЕ |
24 февраля 2022 года российское руководство во главе с Владимиром Путиным развязало агрессивную войну против Украины. В глазах всего мира это военное преступление совершено от лица всей страны, всех россиян. Будучи гражданами Российской Федерации, мы против своей воли оказались ответственными за нарушение международного права, военное вторжение и массовую гибель людей. Чудовищность совершенного преступления не оставляет возможности промолчать или ограничиться пассивным несогласием. Мы убеждены в абсолютной ценности человеческой жизни, в незыблемости прав и свобод личности. Режим Путина — угроза этим ценностям. Наша задача — обьединить все силы для сопротивления ей. Эту войну начали не россияне, а обезумевший диктатор. И наш гражданский долг — сделать всё, чтобы её остановить. Антивоенный комитет России |
Распространяйте правду о текущих событиях, оберегайте от пропаганды своих друзей и близких. Изменение общественного восприятия войны - ключ к её завершению. |
meduza.io, Популярная политика, Новая газета, zona.media, Майкл Наки. |
Определение
имеет удовлетворяющих наборов
Утверждение
Доказательство
Для доказательства будем строить вероятностную программу Verifier, которая хочет проверить, верно ли, что заданная формула
имеет ровно удовлетворяющих наборов. Программа Verifier может совершить не больше полинома от длины входа действий, а также может обращаться к программе Prover, которая пытается любым возможным способом убедить Verifier в верности рассматриваемого утверждения.Далее в программе Verifier будем писать "проверим ...", что означает проверку соответствующего условия, и, при ложности, Verifier будет сразу завершаться и возвращать false, т.к. Prover её обманывает, а значит, нет правильного доказательства проверяемого утверждения.
Verifier будет выполнять следующие шаги.
Шаг 0.
Пусть формула
каким-либо образом записана. Пусть формула имеет переменных. Сделаем следующие замены и получим формулу :Заметим, что длина формулы возрастет не больше, чем в константу раз.
Пусть полином
имеет степень .Итак, надо проверить следующее уравнение:
.Попросим Prover 'а прислать Verifier 'у такое простое число
, что , и сертификат о его простоте. Проверим простоту по сертификату и условие . Константу определим позднее.Далее будем вычислять значения и проверять равенства по модулю
.Пусть
.Попросим Prover 'а прислать Verifier 'у формулу
. Проверим следующее утверждение: .Заметим, что размер формулы
будет полином от длины входа Verifier 'а. Этот факт следует из того, что формула имеет степень меньшую либо равную , и она от одной переменной. Поэтому её можно представить так: , и попросить Prover 'а прислать только сами коэффициенты по модулю .Шаг 1.
Пусть
. Отправим программе Prover.Пусть
.Попросим Prover 'а прислать Verifier 'у формулу
. Проверим следующее утверждение: .Шаг 2.
...
Шаг
.Пусть
. Отправим программе Prover.Пусть
.Попросим программу Prover прислать Verifier 'у значение
. Проверим следующее утверждение: . А также сами подставим в и проверим правильность присланного значения .Возвращаем true.
Итак, остается доказать, что написанный Verifier - корректный Verifier для языка . Таким образом, нужно доказать:
- Построенный Verifier - вероятностная машина Тьюринга, совершающая не более полинома от длины входа действий.
- .
- .
Доказательство:
- Из программы Verifier видно, что она работает за .
- Если
- Присылает, например, первое простое число, большее , и сертификат.
- Считает сумму и присылает формулу.
- Получает .
- Считает сумму и присылает формулу.
- ...
имеет ровно удовлетворяющих наборов, то существует такая программа Prover, что . Такая программа:
- Пусть имеет не удовлетворяющих наборов. Тогда для того, что бы Verifier вернул true, необходимо Prover 'у посылать такие , чтобы выполнялись все проверяемые условия. Посмотрим на то, что он может послать:
Шаг 0.
Так как
имеет не удовлетворяющих наборов, то Prover не может послать правильное – не выполнится условие . Поэтому он посылает не , а некое .Шаг 1.
Во первых, отметим, что ситуация леммы Шварца-Зиппеля. Таким образом, с вероятностью большей либо равной и, ввиду того, что должно выполняться условие , получаем, что тоже будет неправильное, т.е. некоторое .
происходит с вероятностью меньшей либо равной для некоторого случайно выбранного , что следует изШаг 2.
...
Шаг
.С вероятностью
, и потому Verifier получит не , а .Из этого процесса заметим, что с вероятностью большей либо равной
мы дойдем до последнего шага и будем имееть вместо . Так как на шаге Verifier вычисляет и проверяет значение, то Verifier вернет false.Так как мы хотим сделать вероятность возврата false большую либо равную
, то выберем так, чтобы . Возьмем . Заметим, что длина есть . Из разложения функции по Тейлору получаем: . Так как - целое неотрицательное число, то: .Утверждение доказано.