Roy's identity: Difference between revisions

From formulasearchengine
Jump to navigation Jump to search
No edit summary
 
en>ChrisGualtieri
m References: Remove stub template(s). Page is start class or higher. Also check for and do General Fixes + Checkwiki fixes using AWB
Line 1: Line 1:
The name of the author is Figures but it's not the most masucline name out there. My working day job is a meter reader. California is our birth location. Doing ceramics is what love performing.<br><br>Visit my website - [http://www.videoworld.com/user/SMaloney over the counter std test]
In [[computational complexity theory]], the '''Sipser–Lautemann theorem''' or '''Sipser–Gács–Lautemann theorem''' states that [[Bounded-error probabilistic polynomial|Bounded-error Probabilistic Polynomial]] (BPP) time, is contained in the [[Polynomial hierarchy|polynomial time hierarchy]], and more specifically Σ<sub>2</sub> ∩ Π<sub>2</sub>.
 
In 1983, [[Michael Sipser]] showed that BPP is contained in the [[Polynomial hierarchy|polynomial time hierarchy]]. [[Péter Gács]] showed that BPP is actually contained in Σ<sub>2</sub> ∩ Π<sub>2</sub>. [[Clemens Lautemann]] contributed by giving a simple proof of BPP’s membership in Σ<sub>2</sub> ∩ Π<sub>2</sub>, also in 1983. It is conjectured that in fact BPP=[[P (complexity)|P]], which is a much stronger statement than the Sipser–Lautemann theorem.
 
== Proof ==
[[Michael Sipser|Michael Sipser's]] version of the proof works as follows.  Without loss of generality, a machine ''M'' ∈ BPP with error ≤ 2<sup>-|''x''|</sup> can be chosen.  (All BPP problems can be amplified to reduce the error probability exponentially.)  The basic idea of the proof is to define a Σ<sub>2</sub> ∩ Π<sub>2</sub> sentence that is equivalent to stating that ''x'' is in the language, ''L'', defined by ''M'' by using a set of transforms of the random variable inputs.
 
Since the output of ''M'' depends on random input, as well as the input ''x'', it is useful to define which random strings produce the correct output as ''A''(''x'') = {''r'' | ''M''(''x'',''r'') accepts}.  The key to the proof is to note that when ''x'' ∈ ''L'', ''A''(''x'') is very large and when ''x'' ∉ ''L'', ''A''(''x'') is very small.  By using [[Exclusive disjunction|bitwise parity]], ⊕, a set of transforms can be defined as ''A''(''x'') ⊕ ''t''={''r'' ⊕ ''t'' | ''r'' ∈ ''A''(''x'')}.  The first main lemma of the proof shows that the union of a small finite number of these transforms will contain the entire space of random input strings.  Using this fact, a Σ<sub>2</sub> sentence and a Π<sub>2</sub> sentence can be generated that is true if and only if ''x'' ∈ ''L'' (see corollary).
 
=== Lemma 1 ===
The general idea of lemma one is to prove that if ''A''(''x'') covers a large part of the random space <math>R= \{ 1,0 \} ^ {|r|} </math> then there exists a small set of translations that will cover the entire random space.  In more mathematical language:
 
:''If'' <math>\frac{|A(x)|}{|R|} > 1 - \frac{1}{2^{|x|}}</math>, ''then'' <math>\exists  t_1,t_2,\ldots,t_{|r|}</math>, ''where'' <math>t_i \in \{ 1,0 \} ^{|r|} \ </math> ''such that'' <math> \bigcup_i A(x) \oplus t_i = R.</math>
 
'''Proof.''' Randomly pick ''t''<sub>1</sub>, ''t''<sub>2</sub>, ..., ''t''<sub>|''r''|</sub>. Let <math>S=\bigcup_i A(x)\oplus t_i</math> (the union of all transforms of ''A''(''x'')).
 
So, for all ''r'' in ''R'',
:<math>\Pr [r \notin S] = \Pr [r \notin A(x) \oplus t_1] \cdot \Pr [r \notin A(x) \oplus t_2] \cdots \Pr [r \notin A(x) \oplus t_{|r|}] \le { \frac{1}{2^{|x| \cdot |r|}} }.</math>
 
The probability that there will exist at least one element in ''R'' not in ''S'' is
 
:<math>\Pr \Bigl[ \bigvee_i (r_i \notin S)\Bigr] \le \sum_i \frac{1}{2^{|x| \cdot |r|}} = \frac{1}{2^{|x|}} < 1.</math>
 
Therefore
 
:<math>\Pr [S = R] \ge 1 - \frac{1}{2^{|x|}}.</math>
 
Thus there is a selection for each <math>t_1,t_2,\ldots,t_{|r|}</math> such that
 
:<math> \bigcup_i A(x) \oplus t_i = R.</math>
 
=== Lemma 2 ===
The previous lemma shows that ''A''(''x'') can cover every possible point in the space using a small set of translations.  Complementary to this, for ''x'' ∉ ''L'' only a small fraction of the space is covered by ''A''(''x'').  Therefore the set of random strings causing ''M''(''x'',''r'') to accept cannot be generated by a small set of vectors ''t<sub>i</sub>''.
 
:<math>R = \bigcup_i A(x) \oplus t_i</math>
 
''R'' is the set of all accepting random strings, exclusive-or'd with vectors ''t<sub>i</sub>''.
 
:<math>\frac{|A(x)|}{|R|} \le  \frac{1}{2^{|k|}} \implies \neg \exists t_1,t_2,\dots,t_{r}</math>
 
=== Corollary ===
An important corollary of the lemmas shows that the result of the proof can be expressed as a Σ<sub>2</sub> expression, as follows.
 
:<math>x \in L \iff \exists t_1,t_2,\dots,t_{|r|}\, \forall r \in R \bigvee_{ 1 \le i \le |r|} (M(r \oplus t_i) \text{ accepts}).</math>
 
That is, ''x'' is in language ''L'' if and only if there exist |''r''| binary vectors, where for all random bit vectors ''r'', TM ''M'' accepts at least one random vector ⊕ ''t<sub>i</sub>''.
 
The above expression is in [[Polynomial hierarchy|&Sigma;<sub>2</sub>]] in that it is first existentially then universally quantified.  Therefore BPP ⊆ Σ<sub>2</sub>.  Because BPP is closed under [[Complement (complexity)|complement]], this proves BPP ⊆ Σ<sub>2</sub> ∩ Π<sub>2</sub>
 
== Lautemann's proof ==
Here we present the proof (due to Lautemann) that BPP ⊆ Σ<sub>2</sub>.  See Trevisan's notes for more information.
 
=== Lemma 3 ===
Based on the definition of BPP we show the following:
 
If ''L'' is in BPP then there is an algorithm ''A'' such that for every ''x'',
 
:<math>{\rm Pr}_r(A(x,r) = \mbox{right answer}) \ge 1 - \frac{1}{3m},</math>
 
where ''m'' is the number of random bits <math>|r| = m = |x|^{O(1)}</math> and ''A'' runs in time <math>|x|^{O(1)}</math>.
 
'''Proof:''' Let ''A{{'}}'' be a BPP algorithm for ''L''.  For every ''x'', <math>\Pr_r(A'(x,r) = \mbox{wrong answer}) \le 1/3</math>.  ''A{{'}}'' uses ''m{{'}}''(''n'') random bits where ''n'' = |''x''|.
Do ''k''(''n'') repetitions of ''A{{'}}'' and accept if and only if at least ''k''(''n'')/2 executions of ''A{{'}}'' accept.  Define this new algorithm as ''A''.  So ''A'' uses ''k''(''n'')''m{{'}}''(''n'') random bits and
:<math>{\rm Pr}_r(A(x,r) = \mbox{wrong answer}) \le 2^{-ck(n)}.</math>
We can then find ''k''(''n'') with <math>k(n)=\Theta (\log m'(n))</math> such that
:<math>\frac{1}{2^{ck(n)}} \le \frac{1}{3k(n)m'(n)}.</math>
 
=== Theorem 1 ===
'''Proof:''' Let ''L'' be in BPP and ''A'' as in Lemma 3. We want to show
 
:<math>x \in L \iff \exists y_1,\dots,y_m \in \{0,1\}^m\, \forall z \in \{0,1\}^m \bigvee_{i=1}^mA(x,y_i \oplus z)=1.</math>
 
where ''m'' is the number of random bits used by ''A'' on input ''x''. Given <math>x \in L</math>, then
 
:<math>\begin{align}
  {\rm Pr}_{y_1,\dots,y_m}(\exists z& A(x,y_1 \oplus z)=\dots=A(x,y_m \oplus z)=0)\\
      &\le \sum_{z \in \{0,1\}^m} {\rm Pr}_{y_1,\dots,y_m}(A(x,y_1 \oplus z) = \dots = A( x, y_m \oplus z) = 0)\\
      &\le 2^m \frac{1}{(3m)^m}\\
      &< 1.
\end{align}</math>
 
Thus
 
:<math>{\rm Pr}_{y_1,\dots,y_m}\Bigl( \forall z \bigvee_i A(x,y_i \oplus z)\Bigr)=1 - {\rm Pr}_{y_1,...,y_m}(\exists z A(x,y_1 \oplus z)=\dots=A(x,y_m \oplus z)=0).</math>
 
Thus <math>(y_1,\dots,y_m)</math> exists.
 
Conversely, suppose <math>x \notin L</math>. Then
 
<math>{\rm Pr}_z \Bigl( \bigvee_i A(x,y_i \oplus z) \Bigr) \le \sum_i {\rm Pr}_z (A(x,y_i \oplus z)=1)\le m \frac{1}{3m}= \frac{1}{3}.</math>
 
Thus
 
:<math>{\rm Pr}_z(A(x,y_1 \oplus z)=\dots=A(x,y_m \oplus z)=0)= 1 - {\rm Pr}_z \Bigl( \bigvee_i A(x,y_i \oplus z) \Bigr)\ge \frac{2}{3} > 0.</math>
 
Thus there is a ''z'' such that <math> \bigvee_i A(x,y_i \oplus z)=0</math> for all <math>y_1,...,y_m \in \{0,1\}^m.</math>
 
== Stronger version ==
The theorem can be strengthened to <math>\mathsf{BPP} \subseteq \mathsf{MA} \subseteq \mathsf{S}_2^P \subseteq \Sigma_2 \cap \Pi_2</math> (see [[MA (complexity)|MA]], [[S2P (complexity)|S{{su|p=P|b=2}}]]).
 
== References ==
* [[Michael Sipser|M. Sipser]]. ''A complexity theoretic approach to randomness'' In Proceedings of the 15th ACM Symposium on Theory of Computing, 330–335. ACM Press, 1983.
* C. Lautemann, ''[http://www.sciencedirect.com/science/article/pii/0020019083900443 BPP and the polynomial hierarchy]'' Inf. Proc. Lett. 17 (4) 215–217, 1983.
* [[Luca Trevisan]]'s [http://www.cs.berkeley.edu/~luca/notes/ Lecture Notes], University of California, Berkeley
 
{{DEFAULTSORT:Sipser-Lautemann theorem}}
[[Category:Structural complexity theory]]
[[Category:Probabilistic complexity theory]]
[[Category:Theorems in computational complexity theory]]
[[Category:Articles containing proofs]]

Revision as of 03:47, 13 December 2013

In computational complexity theory, the Sipser–Lautemann theorem or Sipser–Gács–Lautemann theorem states that Bounded-error Probabilistic Polynomial (BPP) time, is contained in the polynomial time hierarchy, and more specifically Σ2 ∩ Π2.

In 1983, Michael Sipser showed that BPP is contained in the polynomial time hierarchy. Péter Gács showed that BPP is actually contained in Σ2 ∩ Π2. Clemens Lautemann contributed by giving a simple proof of BPP’s membership in Σ2 ∩ Π2, also in 1983. It is conjectured that in fact BPP=P, which is a much stronger statement than the Sipser–Lautemann theorem.

Proof

Michael Sipser's version of the proof works as follows. Without loss of generality, a machine M ∈ BPP with error ≤ 2-|x| can be chosen. (All BPP problems can be amplified to reduce the error probability exponentially.) The basic idea of the proof is to define a Σ2 ∩ Π2 sentence that is equivalent to stating that x is in the language, L, defined by M by using a set of transforms of the random variable inputs.

Since the output of M depends on random input, as well as the input x, it is useful to define which random strings produce the correct output as A(x) = {r | M(x,r) accepts}. The key to the proof is to note that when xL, A(x) is very large and when xL, A(x) is very small. By using bitwise parity, ⊕, a set of transforms can be defined as A(x) ⊕ t={rt | rA(x)}. The first main lemma of the proof shows that the union of a small finite number of these transforms will contain the entire space of random input strings. Using this fact, a Σ2 sentence and a Π2 sentence can be generated that is true if and only if xL (see corollary).

Lemma 1

The general idea of lemma one is to prove that if A(x) covers a large part of the random space R={1,0}|r| then there exists a small set of translations that will cover the entire random space. In more mathematical language:

If |A(x)||R|>112|x|, then t1,t2,,t|r|, where ti{1,0}|r| such that iA(x)ti=R.

Proof. Randomly pick t1, t2, ..., t|r|. Let S=iA(x)ti (the union of all transforms of A(x)).

So, for all r in R,

Pr[rS]=Pr[rA(x)t1]Pr[rA(x)t2]Pr[rA(x)t|r|]12|x||r|.

The probability that there will exist at least one element in R not in S is

Pr[i(riS)]i12|x||r|=12|x|<1.

Therefore

Pr[S=R]112|x|.

Thus there is a selection for each t1,t2,,t|r| such that

iA(x)ti=R.

Lemma 2

The previous lemma shows that A(x) can cover every possible point in the space using a small set of translations. Complementary to this, for xL only a small fraction of the space is covered by A(x). Therefore the set of random strings causing M(x,r) to accept cannot be generated by a small set of vectors ti.

R=iA(x)ti

R is the set of all accepting random strings, exclusive-or'd with vectors ti.

|A(x)||R|12|k|¬t1,t2,,tr

Corollary

An important corollary of the lemmas shows that the result of the proof can be expressed as a Σ2 expression, as follows.

xLt1,t2,,t|r|rR1i|r|(M(rti) accepts).

That is, x is in language L if and only if there exist |r| binary vectors, where for all random bit vectors r, TM M accepts at least one random vector ⊕ ti.

The above expression is in Σ2 in that it is first existentially then universally quantified. Therefore BPP ⊆ Σ2. Because BPP is closed under complement, this proves BPP ⊆ Σ2 ∩ Π2

Lautemann's proof

Here we present the proof (due to Lautemann) that BPP ⊆ Σ2. See Trevisan's notes for more information.

Lemma 3

Based on the definition of BPP we show the following:

If L is in BPP then there is an algorithm A such that for every x,

Prr(A(x,r)=right answer)113m,

where m is the number of random bits |r|=m=|x|O(1) and A runs in time |x|O(1).

Proof: Let ATemplate:' be a BPP algorithm for L. For every x, Prr(A(x,r)=wrong answer)1/3. ATemplate:' uses mTemplate:'(n) random bits where n = |x|. Do k(n) repetitions of ATemplate:' and accept if and only if at least k(n)/2 executions of ATemplate:' accept. Define this new algorithm as A. So A uses k(n)mTemplate:'(n) random bits and

Prr(A(x,r)=wrong answer)2ck(n).

We can then find k(n) with k(n)=Θ(logm(n)) such that

12ck(n)13k(n)m(n).

Theorem 1

Proof: Let L be in BPP and A as in Lemma 3. We want to show

xLy1,,ym{0,1}mz{0,1}mi=1mA(x,yiz)=1.

where m is the number of random bits used by A on input x. Given xL, then

Pry1,,ym(zA(x,y1z)==A(x,ymz)=0)z{0,1}mPry1,,ym(A(x,y1z)==A(x,ymz)=0)2m1(3m)m<1.

Thus

Pry1,,ym(ziA(x,yiz))=1Pry1,...,ym(zA(x,y1z)==A(x,ymz)=0).

Thus (y1,,ym) exists.

Conversely, suppose xL. Then

Prz(iA(x,yiz))iPrz(A(x,yiz)=1)m13m=13.

Thus

Prz(A(x,y1z)==A(x,ymz)=0)=1Prz(iA(x,yiz))23>0.

Thus there is a z such that iA(x,yiz)=0 for all y1,...,ym{0,1}m.

Stronger version

The theorem can be strengthened to BPPMAS2PΣ2Π2 (see MA, [[S2P (complexity)|STemplate:Su]]).

References