200 likes | 260 Views
Graph Automorphism & Circuit Size. Joint work with Joshua A. Grochow and Cristopher Moore (SFI). Simons Workshop, September 29, 2015. The Context. The Minimum Circuit Size Problem (MCSP) = {(f,i) : f is the truth-table of a function that has a circuit of size ≤ i}.
E N D
Graph Automorphism & Circuit Size Joint work with Joshua A. Grochow and Cristopher Moore (SFI) Simons Workshop, September 29, 2015
The Context • The Minimum Circuit Size Problem (MCSP) = {(f,i) : f is the truth-table of a function that has a circuit of size ≤ i}. • In NP, but not known (or widely believed) to be NP-complete. [Kabanets, Cai], [Murray, Williams], [A, Holden, Kabanets] • Lots of reasons to believe it’s not in P.
More Context • Factoring is in ZPPMCSP. • Graph Isomorphism is in RPMCSP. • Every promise problem in SZK is in (Promise) BPPMCSP. • A motivating question: Is Graph Isomorphism in ZPPMCSP?
More Context • Factoring is in ZPPMCSP. • Graph Isomorphism is in RPMCSP. • Every promise problem in SZK is in (Promise) BPPMCSP. • An obstacle: EACH of these reductions follows the same route….
Yet More Context • The well-trodden path: • MCSP is a wonderful test to distinguish random from pseudorandom distributions. • Thus, via [HILL], MCSP is an oracle that allows a probabilistic algorithm to invert poly-time functions with high probability. • Note that this approach can’t show a result like “A is in ZPPMCSP” unless we already know that A is in NP∩coNP.
Context, Context, Context • MCSP is more like a family of problems, than a single problem. • For instance “size” could mean “# of wires” or “# of gates”, or “# of bits to describe the circuit”, etc. • None of these is known to be reducible to any other – but all can stand in for “MCSP”. • One more such variant: MKTP = {(x,i) : KT(x) ≤ i}
What Can We Show? • Graph Automorphism is in ZPPMKTP. • As observed on an earlier slide, this involves a different type of reduction than all earlier reductions to MKTP or MCSP (since Graph Automorphism is not known to be in NP∩coNP). • We are unable to extend this, to show Graph Automorphism is in ZPPMCSP. • This is a new phenomenon; all other reductions to MKTP carried over to MCSP.
What Can We Show? • Graph Automorphism is in ZPPMKTP. • We are also unable to extend this, to ZPP-reduce Graph Isomorphism to MKTP. • …although we can adapt our framework to show that Graph Isomorphism is in BPPMKTP. • …which is weaker than the previously-known result: Graph Isomorphism is in RPMKTP– but it may be useful to build up some tools for providing reductions to MKTP and MCSP.
The Proof (1) • Theorem: Graph Automorphism is in ZPPMKTP. • It suffices to solve the Graph Isomorphism problem, restricted to rigid graphs. [KST] • That is: Consider the promise problem with • YES Instances: {(G0,G1) : G0 ≡ G1}. • NO Instances: {(G0,G1) : G0 and G1 are rigid and are not isomorphic} • Might seem odd to impose rigidity only on the NO instances – but this stronger result holds with the same proof.
The Proof (1) • Theorem: Graph Automorphism is in ZPPMKTP. • It suffices to solve the Graph Isomorphism problem, restricted to rigid graphs. [KST] • That is: Consider the promise problem with • YES Instances: {(G0,G1) : G0 ≡ G1}. • NO Instances: {(G0,G1) : G0 and G1 are rigid and are not isomorphic} • We already have GI in RPMKTP. Thus we need to solve this promise problem in coRPMKTP.
The Proof (2) • On input (G0,G1) • Randomly pick a bit string w=w1w2…wt. • Pick random permutations π1…πt. • Let z= π1(Gw1)π2(Gw2)…πt(Gwt) • If G0 and G1 are not isomorphic, then z allows us to reconstruct w and π1…πt, so that z has (non-time-bounded) K-complexity around t+ts (where s = log n!), whp. Hence KT(z) > t+ts. • Otherwise, KT(z) is around n2+ts.
The Proof (2) • On input (G0,G1) • Randomly pick a bit string w=w1w2…wt. • Pick random permutations π1…πt. • Let z= π1(Gw1)π2(Gw2)…πt(Gwt) • If G0 and G1 are not isomorphic, then z allows us to reconstruct w and π1…πt, so that z has (non-time-bounded) K-complexity around t+ts (where s = log n!), whp. Hence KT(z) > t+ts. • Otherwise, KT(z) is around n2+ts. QED
Why does this break for MCSP? • The easiest way to answer this, is to present a version of MCSP where the proof does go through (and also to explain a bit about how KT complexity is defined). • KT(x) = min{|d|+t : U can construct x from description d in time t}
Why does this break for MCSP? • The easiest way to answer this, is to present a version of MCSP where the proof does go through (and also to explain a bit about how KT complexity is defined). • KT(x) = min{|d|+t : Ud(i) = the ith bit of x, and runs in time t} • A multiplexer circuit has AND, OR and NOT gates, and also INDEX gates (of fan-in log m) that access a (fixed) array of size m. • They can simulate U efficiently. [Store d in the array.]
Why does this break for MCSP? • The easiest way to answer this, is to present a version of MCSP where the proof does go through (and also to explain a bit about how KT complexity is defined). • KT(x) = min{|d|+t : Ud(i) = the ith bit of x, and runs in time t} • In contrast, implementing a multiplexer using AND and OR requires size O(m) = O(|d|) for each query that U makes to d. • …which kills the argument!
Gap amplification • The way to modify this approach, to make it work for MCSP, would be to “amplify” the gap between KT ≥ t(s+1) and KT ≤ ts, to something like KT ≥ b and KT ≤ bε for some ε > 0. • This would pay other dividends. It would give a way to reduce some of the different variants of MCSP to each other. • This would provide a notion of “robustness” for MCSP – which is currently lacking. (Different versions of the problem might have different complexity.)
Different versions of MCSP • For instance, is it possible that one version of MCSP is NP-complete, while another version is in P?
Open Questions • Is Graph Automorphism in ZPPMCSP? • How about Graph Isomorphism? • …or all of SZK? • Is there some way to relate the complexities of MKTP and (the many versions of) MCSP? • …through Gap Amplification, or via some other means? • And there are tons of other important questions about MCSP.