Протокол Голдвассер-Сипсера для оценки размера множества — различия между версиями
Rost (обсуждение | вклад)  (→Доказательство)  | 
				м (rollbackEdits.php mass rollback)  | 
				||
| (не показано 17 промежуточных версий 4 участников) | |||
| Строка 1: | Строка 1: | ||
| − | ==  | + | ==Описание протокола==  | 
| − | Рассмотрим множество <tex>S \subseteq \left\{ 0, 1 \right\} ^m</tex>, для которого существует сертификат проверки на принадлежность. Протоколом   | + | Рассмотрим множество <tex>S \subseteq \left\{ 0, 1 \right\} ^m</tex>, для которого существует сертификат проверки на принадлежность. Протоколом Голдвассер-Сипсера является двухуровневый [[Интерактивные протоколы. Класс IP. Класс AM| интерактивный протокол]], в котором <tex>V</tex> старается принять множество <tex>S</tex>, если <tex>|S| \ge K</tex>, и отвергнуть, если <tex>|S| \le \frac{K}{2}</tex>.  | 
| − | + | Выберем <tex>k</tex> так, чтобы <tex>2^{k - 2} \le K \le 2^{k - 1}</tex>. Тогда протокол устроен следующим образом:  | |
| − | + | <tex>V:</tex> Отправляет <tex>P</tex> случайным образом выбранные <tex>h : \left\{ 0, 1 \right\} ^ m \rightarrow \left\{ 0, 1 \right\} ^ k</tex> из [[Семейство универсальных попарно независимых хеш-функций| семейства универсальных попарно независимых хеш-функций]] <tex>H_{m, k}</tex> и <tex>y</tex> из <tex>\left\{ 0, 1 \right\} ^ k</tex>.  | |
| − | + | <tex>P:</tex> Пытается найти <tex>x \in S</tex>, такой что <tex>h(x) = y</tex>. Отправляет <tex>V</tex> найденный <tex>x</tex> и сертификат <tex>c</tex>, подтверждающий принадлежность <tex>x</tex> множеству <tex>S</tex>.  | |
| − | |||
| − | <tex>P:</tex> Пытается <tex>x \in S</tex>, такой что <tex>h(x) = y</tex>. Отправляет <tex>V</tex> найденный <tex>x</tex> и сертификат <tex>c</tex>   | ||
<tex>V:</tex> Если верно, что <tex>x \in S</tex> и <tex>h(x) = y</tex>, то множество <tex>S</tex> принимается. В противном случае <tex>V</tex> отвергает множество <tex>S</tex>.  | <tex>V:</tex> Если верно, что <tex>x \in S</tex> и <tex>h(x) = y</tex>, то множество <tex>S</tex> принимается. В противном случае <tex>V</tex> отвергает множество <tex>S</tex>.  | ||
==Оценки вероятностей==  | ==Оценки вероятностей==  | ||
| − | Пусть <tex>p = \frac{K}{2^k}</tex>. Если <tex>|S| \le \frac{K}{2}</tex>, тогда <tex>|h(S)| \le \frac{  | + | Пусть <tex>p = \frac{K}{2^k}</tex>. Если <tex>|S| \le \frac{K}{2}</tex>, тогда <tex>|h(S)| \le \frac{p\cdot2^k}{2}</tex>. Отсюда получаем, что <tex>P[y \in h(S)] \le \frac{p}{2}</tex>. Необходимо показать, что в случае <tex>|S| \ge K</tex>, <tex>V</tex> будет принимать <tex>S</tex> с вероятностью различимо большей <tex>\frac{p}{2}</tex>.  | 
{{Утверждение  | {{Утверждение  | ||
|statement=  | |statement=  | ||
| − | Если <tex>K \le |S| \le 2^{k - 1}</tex>, то <tex>P[\exists x \in S \bigm| h(x) = y] \ge \frac{3}{4}\frac{|S|}{2^k}</tex>, где <tex>h</tex> случайным образом выбрано из <tex>H_{m, k}</tex>, а <tex>y~-</tex> из <tex>\left\{0,1\right\}^k</tex>.  | + | Если <tex>K \le |S| \le 2^{k - 1}</tex>, то <tex>P[\exists x \in S \bigm| h(x) = y] \ge \frac{3}{4}\cdot\frac{|S|}{2^k}</tex>, где <tex>h</tex> случайным образом выбрано из <tex>H_{m, k}</tex>, а <tex>y~-</tex> из <tex>\left\{0,1\right\}^k</tex>.  | 
|proof=  | |proof=  | ||
Покажем, что для каждого <tex>y \in \left\{0,1\right\}^k</tex> и случайно выбранной функции <tex>h \in H_{m,k}</tex> справедливо <tex>P[\exists x \in S \bigm| h(x) = y] \ge \frac{3}{4} p</tex>.  | Покажем, что для каждого <tex>y \in \left\{0,1\right\}^k</tex> и случайно выбранной функции <tex>h \in H_{m,k}</tex> справедливо <tex>P[\exists x \in S \bigm| h(x) = y] \ge \frac{3}{4} p</tex>.  | ||
| − | Для каждого <tex>x \in S</tex> определим [[Вероятностное пространство, элементарный исход, событие|событие]] <tex>E_x = \left\{h \in H_{m, k} \bigm| h(x) = y\right\}</tex>. Тогда <tex>P[\exists x \in S \bigm| h(x) = y] = P[\bigcup \limits_{x \in S}E_x]</tex>, что [[Формула включения-исключения | формуле включения-исключения]] не   | + | Для каждого <tex>x \in S</tex> определим [[Вероятностное пространство, элементарный исход, событие|событие]] <tex>E_x = \left\{h \in H_{m, k} \bigm| h(x) = y\right\}</tex>. Тогда <tex>P[\exists x \in S \bigm| h(x) = y] = P[\bigcup \limits_{x \in S}E_x]</tex>, что [[Формула включения-исключения | формуле включения-исключения]] не меньше, чем <tex>\sum \limits_{x \in S}P[E_x] - \sum\limits_{x_1 \ne x_2 \in S}P[E_{x_1} \cap E_{x_2}]</tex>. Поскольку выбирались <tex>h \in H_{m, k}</tex>, то <tex>P[E_x] = \frac{1}{2^k}</tex> и <tex>P[E_{x_1} \cap E_{x_2}] = \frac{1}{2^{2k}}</tex>. Тогда <tex>P[\bigcup \limits_{x \in S}E_x] \ge \frac{|S|}{2^k} - \frac{1}{2}\cdot\frac{|S|^2}{2^{2k}} \ge \frac{3}{4}\cdot\frac{|S|}{2^k} \ge \frac{3}{4}p</tex>.  | 
}}  | }}  | ||
| − | Стоит отметить, что если <tex>|S| > 2^{k - 1}</tex>, то <tex>P</tex> может выбрать <tex>C \subseteq S</tex> так, чтобы <tex>K \le C \le 2^{k - 1}</tex>. А значит, в качестве оценки   | + | Стоит отметить, что если <tex>|S| > 2^{k - 1}</tex>, то <tex>P</tex> может выбрать <tex>C \subseteq S</tex> так, чтобы <tex>K \le |C| \le 2^{k - 1}</tex>. А значит, в качестве нижней оценки <tex>P[\exists x \in S \bigm| h(x) = y]</tex>  в этом случае можно использовать <tex>\frac{3}{4}p</tex>.  | 
| + | |||
Итого:  | Итого:  | ||
| − | # если <tex>|S| \le \frac{K}{2}</tex>, то <tex>P[|S| \ge K] \le \frac{p}{2}</tex>.  | + | # если <tex>|S| \le \frac{K}{2}</tex>, то <tex>P[V(|S| \ge K) = 1] \le \frac{p}{2}</tex>.  | 
| − | # если <tex>|S| \ge K</tex>, то <tex>P[|S| \ge K] \ge \frac{3}{4}p</tex>.  | + | # если <tex>|S| \ge K</tex>, то <tex>P[V(|S| \ge K) = 1] \ge \frac{3}{4}p</tex>.  | 
==Источники==  | ==Источники==  | ||
Текущая версия на 19:29, 4 сентября 2022
Описание протокола
Рассмотрим множество , для которого существует сертификат проверки на принадлежность. Протоколом Голдвассер-Сипсера является двухуровневый интерактивный протокол, в котором старается принять множество , если , и отвергнуть, если .
Выберем так, чтобы . Тогда протокол устроен следующим образом:
Отправляет случайным образом выбранные из семейства универсальных попарно независимых хеш-функций и из .
Пытается найти , такой что . Отправляет найденный и сертификат , подтверждающий принадлежность множеству .
Если верно, что и , то множество принимается. В противном случае отвергает множество .
Оценки вероятностей
Пусть . Если , тогда . Отсюда получаем, что . Необходимо показать, что в случае , будет принимать с вероятностью различимо большей .
| Утверждение: | 
Если , то , где  случайным образом выбрано из , а  из .  | 
|  
 Покажем, что для каждого и случайно выбранной функции справедливо . Для каждого определим событие . Тогда , что формуле включения-исключения не меньше, чем . Поскольку выбирались , то и . Тогда . | 
Стоит отметить, что если , то может выбрать так, чтобы . А значит, в качестве нижней оценки в этом случае можно использовать .
Итого:
- если , то .
 - если , то .
 
Источники
- Sanjeev Arora, Boaz Barak. Computational Complexity: A Modern Approach