IP=PSPACE, Circuit Lower Bounds




CS254

Chris Pollett

May 8, 2017

Outline

IP=PSPACE (Sketch)

Arithmetization of Formulas

Arithmetization Check Protocol

P: Sends prime p∈(2n, 23n], 
   a number A0 purported to be the value of pψ:=p0 mod p,
   and coefficients of p1(x1).
V: Checks `p` of right size and prime. (Could use AKS 2002). Since outer quantifier in 
   example was ∀, checks that A0=p1(0)∙p1(1) mod p
   Sends a random value r1 mod p.
P: Optimal prover then computes A1 = p1(r1), the coefficients of 
   the polynomial p2(r1, x2), and sends them to V.
V: Since next quantifier in example was ∃, checks that A1=p2(r1,0) + p2(r1,1) mod p
   Sends a random value r2 mod p.
...
P: Optimal prover then computes An-1 = pn-1(r1,...,rn-1) sends it to V.
V: In this case, pφ = pn, and the verifier can directly substitute 
   in values for the non-multiplied out version of pφ.
   Since the last quantifier in example was ∃, the verifier checks that
   An-1=pn(r1,...,rn-1,0) + pn(r1,...,rn-1, 1) mod p.

Proof Protocol Works

Let `n` be the number of variables in the TQBF formula. Let `d = O(n^c)` be the max degree of any polynomial `p_i` that needs to be evaluated in the protocol.

Claim. The odds that the prover can cheat the above protocol are less than `(1 - d/p)^n`.

Proof.

Quiz

Which of the following statements is true?

  1. Our private coin protocol for graph non-isomorphism might say two graphs are isomorphic even if they aren't.
  2. In `AM[k]`, Arthur's messages consist of his random coin flips.
  3. The set lower bound protocol was used to show `IP[k]` is not a subset of `AM[k+2]`.

The Importance of Circuit Lower Bounds

Reworking Shannon's Argument

Theorem. There is a language in `\Sigma_3`-TIME(`2^{O(n)}`) that requires circuits of size `2^n/{2n}`.

Proof. Our machine operates as follows: On input `x`, let `n =|x|`, guess a string `w` of length `2^n`, the bits of this string correspond to the values output on each row of a truth table. We then universally, guess a circuit `C` of size `2^n/{2n}`, then we cycle over each truth assignment, `y`, on `n` variables and evaluate `C` and compare its output to `w`. If `C` agrees with `w` on all such assignments `y` then we output 0 and halt. We know by Shannon 1949 that there exists boolean functions of `n` inputs that require circuits of `2^n/{2n}`, so some `w` will let us go through this first stage. Next we universally guess another truth table `w'`. If `w'` is not lexicographically smaller than `w`, we output 1 and halt. We assume `w` is not the all `0` truth table as there are circuits of size `2^n/{2n}` computing the `0` truth table. So there exists `w'`, that won't cause us to halt. Next we existentially guess a circuits `C'` of size `2^n/{2n}` and in exponential time check that its truth table has the same outputs as `w'`. If not, we halt and output 0. At this point, we have computed `w`, the lexicographically smallest truth table not computed by a circuit of size `2^n/{2n}`. We then check if `x` for this truth table has value 1. If so, output 1, otherwise, we output 0. Q.E.D.

Circuit Lower Bounds in `PH`

Theorem (Kannan 1982). For any `k > 0`, there is an `L in Sigma_4^p` that does not have circuits of size `O(n^k)`.

Proof.

Circuit Lower Bounds in `PH\quad` continued

Theorem 2 (Kannan 1982). For any `k > 0`, there is an `L in Sigma_2^p \cap Pi_2^p` that does not have circuits of size `O(n^k)`.

Proof. We first observe either `NP` is contained in `P`/`poly` or `NP` is not contained in `P`/`poly`. In the latter case, we are done as we could pick `L` to be a language showing `NP` is not in `P`/`poly`. On the other hand, if `NP` is contained in `P`/`poly`, then we known from Sipser-Gacs-Lauteman that `Sigma_2^p = Pi_2^p = PH`, and so our `\Sigma_4^p` predicate of the previous theorem will in `Sigma_2^p \cap Pi_2^p`.

Circuit Lower Bounds in `P` and `NP`

p-time languages that need `2n-3` size circuits I

p-time languages that need `2n-3` size circuits II

Theorem. A `Q_{2,3}^n`-function requires circuits of size `2n-3` even if we allow all 2-input gate types.

The proof is by input on `n`. The first interesting (i.e., nonnegative) base case is when `n=2`. For this case we need to show that a `Q_{2,3}^2`-function `g` requires as least 1 gate (including input gates). This is trivial as by property (1), `g` depends on both of its inputs.

Assume any `Q_{2,3}^{n-1}`-function requires circuits of size `2(n-1)-3`. Let `g` be a `Q_{2,3}^{n}`-function and let `C` be a minimal circuit for it. There must be some gate in this circuit that receives as inputs, two input lines `x_i` and `x_j`. This gate has at most two possible output values, and so by property (2), either `x_i` or `x_j` must occur elsewhere in the circuit.

Without loss of generality, assume `x_i` occurs elsewhere. By property (3), setting `x_i = 1` or `x_i =0` should give a `Q_{2,3}^{n-1}`-function. Once `x_i` has its value set though, we can remove the at least two gates in which it occurs. By the induction hypothesis, these `Q_{2,3}^{n-1}`-functions have size at least `2(n-1)-3` and they don't have the two gates in `g`. So the size of `g` is at least `2(n-1)-3 +2 = 2n-3`. Q.E.D.