  Compared with constraint satisfaction problems, counting problems have
received less attention. In this paper, we survey research works on the
problems of counting the number of solutions to constraints. The constraints
may take various forms, including, formulas in the propositional logic, linear
inequalities over the reals or integers, Boolean combination of linear
constraints. We describe some techniques and tools for solving the counting
problems, as well as some applications (e.g., applications to automated
reasoning, program analysis, formal verification and information security).
