Wednesday, April 15, 2009

Easy Witnesses

While doing the proof of IKW theorem in class, we came across the easy witness method introduced by Kabanets. The original usage of this method in Kabanets'00 paper was to show that any randomized algorithm in RP can be simulated by a zero-error probabilistic algorithm in expected 2nɛ-time for some ɛ>0, such that no expected sub-exponential time algorithm can refute the simulation infinitely often (io). In other words, there is no algorithm of the form R(1n){0,1}n in this time class such that simulation makes a mistake on input R(1n) for almost all n.

Before going to prove this result, we look at something simpler first, which also introduces the easy witness method:

Theorem 1: At least one of the following holds:
  1. For every ɛ>0, any language in RP can be simulated in DTIME(2nɛ) such that no language in ZPP can refute the simulation io.
  2. BPP=ZPP.
Proof: Consider the set S of easy witness strings. A string αS is an easy witness iff it has a concise description (ie. it is the truth table of some circuit with low complexity). For an algorithm A and input x in RP we can test A against all such strings and accept iff there is one that makes A accept. The crucial insight is that if this algorithm makes frequent mistakes, then the set of random strings that makes A accept have high circuit complexity. Thus if fix the input x, A is a good hardness test for strings r, accepting only if r has no small description. Notice that a significant fraction of strings have this property. Therefore using this as a source for Impagliazzo - Wigderson generator, we can derandomize BPP.

More formally, for given randomized algorithm A(x,r) on input x,x=n and random bits r,r=m=na for some constant a, let Sδ_ be the set of truth tables of all logm-variable Boolean functions with low circuit complexity (at most mδ). Hence Sδ_ contains strings of length m, and it can be enumerated in DTIME(2n2δ). Therefore checking for all αSδ_ if R(x,α) accepts takes time at most (2nɛ) for δ=ɛ/(2a). Let this algorithm be Bɛ_A.

If this algorithm Bɛ_A works for every ARP and ɛ>0, then (1) holds and we are done. Otherwise, there exists A,ɛ>0 and an expected polynomial time refuter R(1n){0,1}n such that, for almost all n, Bɛ_A does not accept whereas A(R(1n),r) accepts for some r. Therefore A(R(1n),r) can be viewed as a Boolean circuit Chard(r) which accepts almost all m-bit strings and all accepted strings are truth tables of a logm-variable Boolean function with the smallest circuit size at least mɛ/(2a). Since R(1n) halts in polynomial time with high probability, we have an algorithm in ZPP which can construct such circuits Chard.

Given such a circuit Chard, we can guess a string uniformly at random β{0,1}m which Chard accepts. Reminding ourselves of IW result:


Impagliazzo-Wigderson Generator: Given r{0,1}nc, truth table of a circuit on clogn-Boolean variables with circuit complexity at least nɛc, there exists c,d and a polynomial time computable generator Gr(s):{0,1}dlogn{0,1}n with hardness H(Gr)>n.

If we use this β to construct the generator Gβ of IW mapping {0,1}dlogk to {0,1}k, we get a generator Gβ with hardness greater than k for sufficiently large k. Constructing these takes expected polynomial time, and last step takes deterministic polynomial time, therefore for every LBPP, we have LZPP. QED

Instead of IW generator, we can use Babai-Fortnow-Nisan-Wigderson generator, to arrive at the following result.

Theorem 2: At least one of the following holds:
  1. Any language in RP can be simulated in DTIME(2(logn)loglogn) such that no language in ZPP can refute the simulation io.
  2. BPPZPSUBEXP where ZPSUBEXP denotes the class of languages with an expected sub exponential time algorithm.

Instead of fiddling with the generator, we can increase the power of refuter. In Theorem 1, when first condition fails, we can allow the refuter to take expected sub exponential time. After changing the circuit size and parameters appropriately, we have the following result:

Theorem 3: At least one of the following holds:
  1. For every ɛ>0, any language in RP can be simulated in DTIME(2nɛ) such that no language in ZPSUBEXP can refute the simulation io.
  2. BPPZPSUBEXP.
Noting that DTIME(2nɛ) and ZPSUBEXP are in ZPTIME(2nɛ), and RPBPP, we can replace the above with an unconditional result:

Corollary 1: For every ɛ>0, any language in RP can be simulated in ZPTIME(2nɛ) such that no language in ZPSUBEXP can refute the simulation io.

Notice that above results imply that we can get analogous results to the ones obtained in IW paper:

In IW, assuming BPPEXP, deterministic subexponential time bound was shown for BPP. Using the machinery developed above, we can answer a weaker question: What happens when ZPPEXP?

Theorem 4: If ZPPEXP, then any language in RP can be simulated in DTIME(2nɛ) for all ɛ>0 such that no language in ZPP can refute the simulation io.

Proof: Assume otherwise. Then by Theorem 1, BPP=ZPP. But for some ɛ>0, BPP is a proper subset of DTIME(2nɛ) for BPP refuters (by Time Hierarchy Theorem). Using IW theorem, this implies
BPP=EXP=ZPP. QED

The gap theorem of IW (either no derandomization of BPP is possible, or BPP can be simulated in deterministic 2nɛ time for every ɛ>0) can be shown for ZPP as follows:

Theorem 5: Either ZPP=EXP or for every ɛ>0, any language in RP can be simulated in DTIME(2nɛ) for all ɛ>0 such that no language in ZPP can refute the simulation io.

Proof: Assume ZPP=EXP=RP. By Time Hierarchy Theorem, for every ɛ>0, EXP is not in DTIME(2nɛ) with ZPP refuters. Thus at most one of the conditions holds. By Theorem 4, at least one of the conditions holds. The result follows. QED

Notice that "easy witness'' method applies even when the refuters are allowed to be non-deterministic Turing machines, and by essentially using the same proof structure, we can obtain the following result:

Theorem 6: At least one of the following holds:
  1. For every ɛ>0, any language in NP can be simulated in DTIME(2nɛ) such that no language in NP can refute the simulation io.
  2. BPPNP.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.