
Lower Bounds for Subgraph Isomorphism Benjamin Rossman University of Toronto Outline • Subgraph isomorphism problems • Two grand challenges in Circuit Complexity: P vs NP via the circuit size of k-CLIQUE NC1 vs P via the formula size of k-CYCLE • The average-case setting • Progress in restricted circuit classes Subgraph Isomorphism Problems k-CLIQUE Given a graph X, does it contain a k-clique (complete subgraph of size k)? k-CLIQUE Given a graph X, does it contain a k-clique (complete subgraph of size k)? k-CLIQUE Given a graph X, does it contain a k-clique (complete subgraph of size k)? k is an arbitrary fixed constant n is the size of the input graph X k-CLIQUE Given a graph X, does it contain a or slow-growing function k-clique (complete subgraph of size k(n) = O(log n)k)? k is an arbitrary fixed constant n is the size of the input graph X k-CLIQUE Given a graph X, does it contain a k-clique (complete subgraph of size k)? Time complexity of k-CLIQUE • exhaustive search O(nk) • fastest known algorithm n0.79 k + O(1) k-CLIQUE Given a graph X, does it contain a k-clique (complete subgraph of size k)? Time complexity of k-CLIQUE • exhaustive search O(nk) • fastest known algorithm n0.79 k + O(1) n(ω/3)k + O(1) where 2 ≤ ω < 2.37 is the exponent of matrix multiplication [Nesetril-Poljak ’85] k-CLIQUE Given a graph X, does it contain a k-clique (complete subgraph of size k)? Time complexity of k-CLIQUE • exhaustive search O(nk) • fastest known algorithm n0.79 k + O(1) • conjectured lower bound nΩ(k) (implies P ≠ NP) k-CYCLE (on layered graphs) v0 v1 ⋯ vk–1 v0 k-CYCLE (on layered graphs) v0 v1 ⋯ vk–1 v0 1 1 2 2 3 3 ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ n n k-CYCLE (on layered graphs) v0 v1 ⋯ vk–1 v0 1 1 2 2 3 3 ⋮ ⋮ X ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ n n k-CYCLE (on layered graphs) v0 v1 ⋯ vk–1 v0 1 1 2 2 3 3 ⋮ ⋮ X ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ n n k-CYCLE (on layered graphs) Space complexity of k-CYCLE • best upper bound O(log k · log n) • conjectured lower bound Ω(log k · log n) (implies L ≠ NL) G-SUBGRAPH ISOMORPHISM G G-SUBGRAPH ISOMORPHISM Given a graph X, does it contain a subgraph isomorphic to G? G X COLORED G-SUBGRAPH ISOMORPHISM (SUB(G)) Given a graph X and a vertex-coloring V(X) → V(G), does X contain a properly colored G-subgraph? G X COLORED G-SUBGRAPH ISOMORPHISM (SUB(G)) Given a graph X and a vertex-coloring V(X) → V(G), does X contain a properly colored G-subgraph? • Includes k-CLIQUE and k-CYCLE as special cases COLORED G-SUBGRAPH ISOMORPHISM (SUB(G)) Given a graph X and a vertex-coloring V(X) → V(G), does X contain a properly colored G-subgraph? • Includes k-CLIQUE and k-CYCLE as special cases • Complexity is minor-monotone: if F is a minor of G, then SUB(F) reduces to SUB(G) COLORED G-SUBGRAPH ISOMORPHISM (SUB(G)) Given a graph X and a vertex-coloring V(X) → V(G), does X contain a properly colored G-subgraph? • Includes k-CLIQUE and k-CYCLE as special cases • Complexity is minor-monotone: if F is a minor of G, then SUB(F) reduces to SUB(G) • Conjectured to be hard-on-average for natural input distributions: (G-colored) Erdős-Rényi random graphs at an appropriate threshold COLORED G-SUBGRAPH ISOMORPHISM (SUB(G)) Given a graph X and a vertex-coloring V(X) → V(G), does X contain a properly colored G-subgraph? Understanding the complexity of SUB(G) with respect to different computational resources (time, space, …) leads to separations of important complexity classes (P ≠ NP, L ≠ NL, …) COLORED G-SUBGRAPH ISOMORPHISM (SUB(G)) Given a graph X and a vertex-coloring V(X) → V(G), does X contain a properly colored G-subgraph? Understanding the complexity of SUB(G) with respect to different computational resources (time, space, …) leads to separations of important complexity classes (P ≠ NP, L ≠ NL, …) We focus on complexity measures defined by Boolean circuits Circuit Complexity Circuit Complexity • A concrete, combinatorial approach to the major questions of Complexity Theory including P vs. NP Circuit Complexity • Studies the complexity of specific problems (e.g. k-CLIQUE, MATRIX MULTIPLICATION, etc.) in combinatorial models of computation, most importantly Boolean circuits Circuit Complexity • Studies the complexity of specific problems (e.g. k-CLIQUE, MATRIX MULTIPLICATION, etc.) in combinatorial models of computation, most importantly Boolean circuits • Goal is to prove unconditional lower bounds, which do not rely on any unproven assumptions Circuit Complexity • Studies the complexity of specific problems (e.g. k-CLIQUE, MATRIX MULTIPLICATION, etc.) in combinatorial models of computation, most importantly Boolean circuits • Goal is to prove unconditional lower bounds which a problem (i.e. decision problem) is do not reply on any unproven assumptions represented by a sequence of n boolean functions fn : {0,1} → {0,1} Circuit Complexity • Studies the complexity of specific problems (e.g. k-CLIQUE, MATRIX MULTIPLICATION, etc.) in combinatorial models of computation, most importantly Boolean circuits • Goal is to prove unconditional lower bounds which do not reply on any unproven assumptions represented by a seq. of functions ( )n {0,1} 2 (≈ {n-vertex graphs}) → {0,1} Boolean Circuits ∧ ¬ ∨ ∨ ∧ ¬ ¬ ∨ ∧ ∧ ∧ ¬ ∨ x1 x2 x3 x4 x5 Boolean Circuits • Every n-variable Boolean circuit computes an n- variable Boolean function {0,1}n → {0,1} Boolean Circuits • Every n-variable Boolean circuit computes an n- variable Boolean function {0,1}n → {0,1} • We say that a problem is “solved” by a sequence of Boolean circuits C1, C2, …, Cn, … if Cn computes the appropriate function {0,1}n → {0,1} Boolean Circuits • Every n-variable Boolean circuit computes an n- variable Boolean function {0,1}n → {0,1} • We say that a problem is “solved” by a sequence of Boolean circuits C1, C2, …, Cn, … if Cn computes the appropriate function {0,1}n → {0,1} in contrast to uniform models of computation (e.g. Turing machines) where a single algorithm solves the problem on all instances Circuit Size • The circuit size of a function f : {0,1}n → {0,1} is the minimum number of gates in a circuit computing f Circuit Size • The circuit size of a function f : {0,1}n → {0,1} is the minimum number of gates in a circuit computing f • Theorem [Shannon 1949] Almost all Boolean functions have circuit size Ω(2n/n) Circuit Size • The circuit size of a function f : {0,1}n → {0,1} is the minimum number of gates in a circuit computing f • Theorem [Shannon 1949] Almost all Boolean functions have circuit size Ω(2n/n) • The goal in Circuit Complexity is proving lower bounds for explicit Boolean functions (e.g. k-CLIQUE) Circuit Size • Theorem [Schnorr 1976, Fischer-Pippenger 1979] Turing mach. time T(n) ⟹ circuit size O(T(n)*log T(n)) • Corollary A super-polynomial lower bound on the circuit size of any function in NP implies P ≠ NP Circuit Size • Theorem [Schnorr 1976, Fischer-Pippenger 1979] Turing mach. time T(n) ⟹ circuit size O(T(n)*log T(n)) • Corollary A super-polynomial lower bound on the circuit size of any function in NP implies P ≠ NP Circuit Complexity is widely believed to be the most viable approach to P ≠ NP Circuit Size • Grand challenge (P ≠ NP) Prove a super-polynomial lower bound on the circuit size of any problem in NP Circuit Size • Grand challenge (P ≠ NP) Prove a super-polynomial lower bound on the circuit size of any problem in NP Concretely, show that k-CLIQUE requires circuit size nΩ(k) Circuit Size • Grand challenge (P ≠ NP) Prove a super-polynomial lower bound on the circuit size of any problem in NP • Best known lower bound Circuit Size • Grand challenge (P ≠ NP) Prove a super-polynomial lower bound on the circuit size of any problem in NP • Best known lower bound 3n – O(1) 1976 [Schnorr] 4n – O(1) 1991 [Zwick] 4.5n – o(n) 2001 [Lachish-Raz] 5n – o(n) 2002 - today [Iwama-Morizumi] Boolean Formulas Formulas are circuits with ∧ the structure of a tree ¬ ∨ ∨ ∧ ∧ ¬ ∨ x4 ¬ ¬ ∧ ∧ ∧ ∨ x2 ¬ x3 x4 x3 x1 x2 x4 x5 x1 x5 Formulas lack “memory”: the result of each sub-computation is only used once Boolean Formulas Formulas are circuits with ∧ the structure of a tree ¬ ∨ ∨ ∧ ∧ ¬ ∨ x4 ¬ ¬ ∧ ∧ ∧ ∨ x2 ¬ x3 x4 x3 x1 x2 x4 x5 x1 x5 Formulas lack “memory”: the result of each sub-computation is only used once Boolean Formulas Formulas are circuits with ∧ the structure of a tree ¬ ∨ Open: Are circuits more powerful than formulas? ∨ ∧ ∧ ¬ ∨ x4 ¬ ¬ ∧ ∧ ∧ ∨ x2 ¬ x3 x4 x3 x1 x2 x4 x5 x1 x5 Formulas vs. Circuits • Grand challenge #2 (NC1 ≠ P) Prove that polynomial-size circuits are strictly more powerful than polynomial-size formulas Formulas vs. Circuits • Grand challenge #2 (NC1 ≠ P) Prove that polynomial-size circuits are strictly more powerful than polynomial-size formulas NC1 = the class of problems solvable by polynomial-size formulas Formulas vs. Circuits • Grand challenge #2 (NC1 ≠ P) Prove that polynomial-size circuits are strictly more powerful than polynomial-size formulas Concretely, show that k-CYCLE requires formula size nΩ(log k) Formulas vs. Circuits • Grand challenge #2 (NC1 ≠ P) Prove that polynomial-size circuits are strictly more powerful than polynomial-size formulas • Best known formula size lower bound n1.5 – o(1) 1961 [Subbotovskaya] n2 1971 [Khrapchenko] n2.5 – o(1) 1991 [Andreev] n3 – o(1) 1998 - today [Hastad] Restricted Circuit Classes Restricted Circuit Classes • Most research in Circuit Complexity studies restricted classes of circuits and formulas in the hope of developing stronger techniques Restricted Circuit Classes • Most research in Circuit Complexity studies restricted classes of circuits and formulas in the hope of developing stronger techniques • The two most natural and well-studied
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages160 Page
-
File Size-