Programming Research Group
Research Report RR-03-13
Andrei A. Bulatov
and Victor Dalmau
July 2003, 37pp.
Abstract
The Counting Constraint Satisfaction Problem (#CSP) over a finite
domain can be expressed as follows: given a first-order formula
consisting of a conjunction of predicates, determine the number of
satisfying assignments to the formula. It provides
a general framework for numerous counting combinatorial problems
including counting satisfying assignments to a propositional formula,
graph homomorphisms, graph reliability and many others. #CSP can be
parametrized by the set of allowed constraint predicates.
In this paper we start a systematic study of subclasses of
#CSP restricted in this way.
The ultimate goal of this investigation is to distinguish those
restricted subclasses of #CSP which are solvable in
polynomial time from those which are not. We show that the complexity
of any restricted #CSP class on a finite domain can be deduced from
the properties of polymorphisms of the allowed constraints, similar to
that for the decision constraint satisfaction problem.
Then we prove that if a subclass of the
#CSP is solvable in polynomial time, then constraints allowed by the
class satisfy some very restrictive condition: it has to have a
Mal'tsev polymorphism, that is a ternary operation m(x,y,z) such that
m(x,y,y)=m(y,y,x)=x. This condition uniformly explains all existing
complexity results for particular cases of #CSP, and allows us to
obtain new results and to conjecture a criterion distinguishing
counting constraint satisfaction problems solvable in polynomial
time. We also apply these results to obtain a dichotomy
theorem for the complexity of #CSP with a 3-element domain and give a
new simpler proofs of the dichotomy results for the problem of counting
graph homomorphisms.
This paper is available as a 212544 bytes gzipped PostScript file.
|