BPP and the Polynomial Hierarchy, Interactive Proofs




CS254

Chris Pollett

Nov. 28, 2011

Outline

`BPP subseteq Sigma_2^p cap Pi_p^2`

Theorem. `BPP subseteq Sigma_2^p cap Pi_p^2`.

Proof. It suffices to show `BPP subseteq Sigma_2^p` as `BPP` is closed under complement.

Suppose `L in BPP`. Then there is a TM `M` for `L` that on inputs of length `n` use `m = poly(n)` random bits and satisfies:
`x in L => Pr_r[M(x,r) mbox( accepts )] ge 1 - 2^(-n)`
`x !in L => Pr_r[M(x,r) mbox( accepts )] le 2^(-n)`
For `x in {0, 1}^n`, let `S_x` denote the set of `r`'s for which `M` accepts the input pair `langle x,r rangle`. Then either `|S_x| ge (1-2^(-n))2^m` or `|S_x| le 2^(-n)2^m` depending on whether `x` is in the language or not.

For set `S subseteq {0,1}^m` and a string `u in {0,1}^m` we denote by `S + u` the "shift" of the set `S` by `u`: `S + u = {x+u | x in S}` where `+` denote vector addition mod 2. Let `k = |~ m / n~|+1

Claim. For every set `S subseteq {0,1}^m` with `|S| le 2^(m-n)` and `k` vectors `u_1, ... u_k`, `cup_(i=1)^k(S+u_i) ne {0,1}^m`.

Proof. Since `|S + u_i| = |S|`, by the union bound we have `|cup_(i=1)^k(S+u_i)| le k |S| < 2^m` asymptotically. The last inequality is because `m = poly(n)` so is bounded by `n^j` for some `j` and so
`k|S| = (|~ m / n~|+1)|S| < (n^(j-1) + 1)2^(n^j - n) = 2^(n^j + log(n^(j-1) + 1) - n) < 2^(n^j)=2^m`
As polylog in `n` is asymptotically small in `n`.

`BPP subseteq Sigma_2^p cap Pi_p^2` proof cont'd

Claim. For every set `S subseteq {0, 1}^m` with `|S| ge (1 - 2^(-n))2^m`, there exist `u_1, ..., u_k` such that `|cup_(i=1)^k(S+u_i)| = {0,1}^m`.

Proof. We claim if `u_1, ... u_k` are chosen uniformly at random `Pr[cup_(i=1)^k(S+u_i) = {0, 1}^m] > 0`. So some choice of `u_i`'s must work. For `r in {0, 1}^m`, let `B_r` denote the "bad event" that `r` is not in `cup_(i=1)^k(S+u_i)`. It suffices to prove that `Pr[exists_(r in {0,1}^m)B_r] < 1`, which will follow from the union bound if we can show for every `r` that `Pr[B_r] < 2^(-m)`. Notice `B_r = cap_(i in [k]) B_r^i` where `B_r^i` is the event that `r !in S +u _i`, or equivalently, that `r + u_i !in S`. Yet, `r + u_i` is a uniform element in `{0,1}^m`, and so it will be in `S` with probability at least `1-2^(-n)`. Furthermore, the events `B_r^i` are independent for different `i`'s implying:
`Pr[B_r] = Pr[B_r^i]^k le 2^(-nk) < 2^(-m)`.

`BPP subseteq Sigma_2^p cap Pi_p^2` proof conclusion

Together the two claims show that `x in L` iff the following statements is true:
`exists u_1, ... u_k in {0,1}^m forall r in {0,1}^m r in cup_(i=1)^k(S_x+u_i)`
or, equivalently,
`exists u_1, ... u_k in {0,1}^m forall r in {0,1}^m vv_(i=1)^k M(x, r oplus u_i) mbox( accepts)`.
Notice this is a `Sigma_2^p` check.

Quiz

Which of the following is known to be true?

  1. We gave a coRP algorithm for 3SAT last week.
  2. We proved Markov's Inequality using Chernoff Bounds.
  3. The proof that BPP is in `P``/poly` implicitly uses Chernoff Bounds.

Interactive Proofs

Example Deterministic Verifiers

Probabilistic Verifiers

Interactive Proof System

Definition. Let `f, g : {0,1}^star -> {0,1}^star` be function and `k ge 0` be an integer and let `r` be a random `m` bit string. A `k`-round interaction of `f` and `g` on input `x in {0,1}^star`, denote by `langle f, g rangle(x)`, is the sequence of `a_1, ..., a_k in {0,1}^star` defined as follows:

`a_1 = f(x, r)`
`a_2 = g(x, a_1)`
...
`a_(2i+1) = f(x, r, a_1, ... a_(2i))` for `2i < k`
`a_(2i+2) = g(x, a_1, ..., a_(2i+1))` for `2i +1 < k`
Notice only `f` (the verifier) has access to the random string (private coins). The output of `f` at the end of the computation is denoted by `out_f` `langle f, g rangle(x)` is defined to be `f(x, r, a_1, ... a_k)`. We assume this is from `{0, 1}`.

The class IP

Definition For an integer `k ge 1`, we say that `L` is in `IP[k]` if there is a probabilistic-time TM `V` that can have a `k`-round interaction with a function `P:{0,1}^star -> {0,1}^star` such that:
(Completeness) `x in L => exists P Pr[out_V langle V, P rangle(x) = 1] ge 2/3`
(Soundness) `x !in L => forall P Pr[out_V langle V, P rangle(x) = 1] le 1/3`
where all probabilities are over the choice of `r`.

We define `IP = cup_(c ge 1) IP[n^c]`.