DeepAI AI Chat
Log In Sign Up

Fast counting with tensor networks

by   Stefanos Kourtis, et al.

We introduce tensor network contraction algorithms for the counting of satisfying assignments in constraint satisfaction problems (#CSP). We represent each arbitrary #CSP instance as a tensor network whose full contraction yields the number of satisfying assignments for that instance. We then use methods of graph theory and computational complexity theory to develop fast tensor contraction protocols. In particular, we employ the tools of multilevel graph partitioning and community structure detection to determine favorable orders of contraction of arbitrary tensor networks. We first prove analytically that full tensor contraction can be performed in subexponential time for #CSP instances defined on graphs with sublinear separators. We then implement numerical heuristics for the solution of general #P-hard counting boolean satisfiability (#SAT) problems, focusing on random instances of #Cubic-Vertex-Cover as a concrete example, and show that they outperform state-of-the-art #SAT solvers by a significant margin. Our results promote tensor network contraction algorithms as a powerful practical tool for fast solution of some #CSPs.


page 1

page 2

page 3

page 4


Parameterization of tensor network contraction

We present a conceptually clear and algorithmically useful framework for...

Efficient Contraction of Large Tensor Networks for Weighted Model Counting through Graph Decompositions

Constrained counting is a fundamental problem in artificial intelligence...

Parallel Weighted Model Counting with Tensor Networks

A promising new algebraic approach to weighted model counting makes use ...

Tensor Network Rewriting Strategies for Satisfiability and Counting

We provide a graphical treatment of SAT and #SAT on equal footing. Insta...

Hiding solutions in model RB: Forced instances are almost as hard as unforced ones

In this paper we study the forced instance spaces of model RB, where one...

Carving-width and contraction trees for tensor networks

We study the problem of finding contraction orderings on tensor networks...

Algorithms for Tensor Network Contraction Ordering

Contracting tensor networks is often computationally demanding. Well-des...