Emergent Mind

Faster Algorithms for Finding and Counting Subgraphs

(0912.2371)
Published Dec 11, 2009 in cs.DS and cs.DM

Abstract

In this paper we study a natural generalization of both {\sc $k$-Path} and {\sc $k$-Tree} problems, namely, the {\sc Subgraph Isomorphism} problem. In the {\sc Subgraph Isomorphism} problem we are given two graphs $F$ and $G$ on $k$ and $n$ vertices respectively as an input, and the question is whether there exists a subgraph of $G$ isomorphic to $F$. We show that if the treewidth of $F$ is at most $t$, then there is a randomized algorithm for the {\sc Subgraph Isomorphism} problem running in time $\cO*(2k n{2t})$. To do so, we associate a new multivariate {Homomorphism polynomial} of degree at most $k$ with the {\sc Subgraph Isomorphism} problem and construct an arithmetic circuit of size at most $n{\cO(t)}$ for this polynomial. Using this polynomial, we also give a deterministic algorithm to count the number of homomorphisms from $F$ to $G$ that takes $n{\cO(t)}$ time and uses polynomial space. For the counting version of the {\sc Subgraph Isomorphism} problem, where the objective is to count the number of distinct subgraphs of $G$ that are isomorphic to $F$, we give a deterministic algorithm running in time and space $\cO*({n \choose k/2}n{2p})$ or ${n\choose k/2}n{\cO(t \log k)}$. We also give an algorithm running in time $\cO{*}(2{k}{n \choose k/2}n{5p})$ and taking space polynomial in $n$. Here $p$ and $t$ denote the pathwidth and the treewidth of $F$, respectively. Thus our work not only improves on known results on {\sc Subgraph Isomorphism} but it also extends and generalize most of the known results on {\sc $k$-Path} and {\sc $k$-Tree}.

We're not able to analyze this paper right now due to high demand.

Please check back later (sorry!).

Generate a summary of this paper on our Pro plan:

We ran into a problem analyzing this paper.

Newsletter

Get summaries of trending comp sci papers delivered straight to your inbox:

Unsubscribe anytime.