  We study the time complexity of induced subgraph isomorphism problems where
the pattern graph is fixed. The earliest known example of an improvement over
trivial algorithms is by Itai and Rodeh (1978) who sped up triangle detection
in graphs using fast matrix multiplication. This algorithm was generalized by
Ne\v{s}et\v{r}il and Poljak (1985) to speed up detection of k-cliques.
  Improved algorithms are known for certain small-sized patterns. For example,
a linear-time algorithm is known for detecting length-4 paths. In this paper,
we give the first pattern detection algorithm that improves upon
Ne\v{s}et\v{r}il and Poljak's algorithm for arbitrarily large pattern graphs
(not cliques). The algorithm is obtained by reducing the induced subgraph
isomorphism problem to the problem of detecting multilinear terms in
constant-degree polynomials.
  We show that the same technique can be used to reduce the induced subgraph
isomorphism problem of many pattern graphs to constructing arithmetic circuits
computing homomorphism polynomials of these pattern graphs. Using this, we
obtain faster combinatorial algorithms (algorithms that do not use fast matrix
multiplication) for k-paths and k-cycles. We also obtain faster algorithms for
5-paths and 5-cycles that match the runtime for triangle detection.
  We show that these algorithms are expressible using polynomial families that
we call graph pattern polynomial families. We then define a notion of reduction
among these polynomials that allows us to compare the complexity of various
pattern detection problems within this framework. For example, we show that the
induced subgraph isomorphism polynomial for any pattern that contains a
k-clique is harder than the induced subgraph isomorphism polynomial for
k-clique. An analogue of this theorem is not known with respect to general
algorithmic hardness.
