Lower Bounds for Subgraph Isomorphism

Lower Bounds for Subgraph Isomorphism

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

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    160 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us