The fast intersection transform with applications to counting paths
Abstract
We present an algorithm for evaluating a linear ``intersection transform'' of a function defined on the lattice of subsets of an n-element set. In particular, the algorithm constructs an arithmetic circuit for evaluating the transform in ``down-closure time'' relative to the support of the function and the evaluation domain. As an application, we develop an algorithm that, given as input a digraph with n vertices and bounded integer weights at the edges, counts paths by weight and given length 0≤≤ n-1 in time O*((n· H(/(2n)))), where H(p)=-p p-(1-p)(1-p), and the notation O*(·) suppresses a factor polynomial in n.
0