Изменения

Перейти к: навигация, поиск

Теорема Лаутемана

1684 байта добавлено, 22:27, 9 апреля 2010
Доказательство
<tex>\mathrm{BPP}</tex> можно определить, как множество таких языков <tex>L</tex>, что <tex>x \in L \Leftrightarrow \exists</tex> «много» вероятностных лент <tex>y: R(x,y)</tex>. <tex>\Sigma_2</tex> определяется, как множество <tex>\{ L \mid x \in L \Leftrightarrow \exists y \forall z R(x, y, z)\}</tex>. Таким образом, необходимо уметь записывать «много» с помощью квантора <tex>\forall</tex>.
Рассмотрим язык <tex>G</tex> — всех слов длины <tex>mk</tex> над алфавитом <tex>{0, 1}</tex>, для некоторого <tex>mk</tex>, значение которого будет получено позже. Определим операцию <tex>\oplus</tex> над славами из этого языка, как побитовое исключающее или.
Назовем <tex>X</tex>, содержащееся в <tex>G</tex> большим, если существует набор <tex>g_1, g_2, \dots g_k</tex> (значение <tex>k</tex> тоже будет получено позже) такой, что <tex>\bigcup_{i=1}^{k} g_i \oplus X = G</tex>.
Если <tex>k|X| < |G|</tex>, то <tex>X</tex> точное не является большим. Найдем достаточное условие, при котором <tex>X</tex> большой.
Если <tex>|G|\left(1 - \frac{|X|}{|G|}\right)^k < 1</tex>, то существует набор <tex>\{g_i\}</tex>, что для любого <tex>y</tex> <tex>\bigwedge_{i=1}^{k} y \not \in g_i \oplus X</tex>, а из этого следует, что <tex>X</tex> большой.
Рассмотрим язык <tex>L \in \mathrm{BPP}</tex>. Не уменьшая общности, можем считать, <tex>p(|x|)</tex> шагов и вероятность ошибки не превосходит<tex>\frac{1}{3p(|x|)}</tex>, это следует из того, что если запускать программу несколько раз, то время работы растет линейно, а вероятность ошибкиэкспоненциально уменьшается. Пусть его распознает машина <tex>M</tex>.
Зафиксируем <tex>X_x x</tex>. Возьмем <tex>k = p(|x|)</tex>. Рассмотрим множество начал длины <tex>m</tex> вероятностных лент <tex>X</tex>, на которыхмашина <tex>M</tex> выдает единицу, то есть <tex>X = \{y \in G \mid M(x,y) = 1\}</tex>.
Из того, что вероятность ошибки не превосходит <tex>\frac1{3k}</tex>, следует:* <tex>x \in L \Rightarrow \frac{|X_xX|}{|G|} \geqslant 1 - \varepsilonfrac1{3k}</tex>* <tex>x \not \in L \Rightarrow \frac{|X|}{|G|} \leqslant \frac1{3k}</tex>
Если <tex>x \in L</tex>, то:* <tex>\frac{|X|}{|G|} \geqslant 1 - \frac1{3k}</tex>;* <tex>1 - \frac{|X|}{|G|} \leqslant \frac1{3k}</tex>;* <tex>|G|\left(1 - \frac{|X|}{|G|}\right)^k \leqslant |G| \frac1{3k}^k = \frac2{3k}^k < 1</tex>, что влечет за собой то, что <tex>X</tex> большой. Если <tex>x \not \in L \Rightarrow </tex>, то <tex>\frac{|X_xX|}{|G|} \leqslant \varepsilonfrac1{3k} < \frac1k</tex>, а значит <tex>X</tex> не является большим. Таким образом, <tex>x \in L Leftrightarrow \exists k, g_1, g_2, \dots, g_k \forall y \bigvee_{i=1}^{m} y \in g_i \oplus X</tex>, а значит<tex>L \in \Sigma_2</tex>, <tex>\mathrm{BPP} \subset \Sigma_2</tex> и <tex>\mathrm{BPP} \subset \Sigma_2 \cap \Pi_2</tex>, что и требовалось доказать.
109
правок

Навигация