The Complexity of Counting Self-Avoiding Walks in Two-Dimensional Grid Graphs and in Hypercube Graphs

Valiant (SIAM Journal on Computing 8, pages 410{421) showed that the problem of computing the number of simple s-t paths in graphs is #P-complete both in the case of directed graphs and in the case of undirected graphs. Valiant then asked whether the self-avoiding walk problem on the two-dimensional grid, the problem of computing the number of self-avoiding walks of a given length in the two-dimensional grid is complete for #P 1 , the tally-version of #P. This paper ooers a partial answer to the question of Valiant. It is shown that computing the number of self-avoiding walks of a given length in the two-dimensional grid graph is #P-complete. The paper also studies several variations of the prolem and shows that all of them are #P-complete. This paper also studies the problem of computing the number of self-avoiding walks in graphs embedded in a hypercube. Similar completeness results are shown for hypercube graphs. By scaling the computation time to exponential, it is shown that computing the number fo self-avoiding walks in the hypercubes is complete for #EXP in the case when a hypercube graph is speciied by its dimension and a boolean circuit that accepts the nodes. Finally, this paper studies the complexity of testing whether a given word over the four letter alphabet fU; D; L; Rg is a self-avoiding walk. A linear-space lower bound is shown for nondeterministic Turing machines with a one-way input head to recognize self-avoiding walks.