Abstract
This paper addresses the problem of counting models in integer linear programming (ILP) using Boolean Satisfiability (SAT) techniques, and proposes two approaches to solve this problem. The first approach consists of encoding ILP instances into pseudo-Boolean (PB) instances. Moreover, the paper introduces a model counter for PB constraints, which can be used for counting models in PB as well as in ILP. A second alternative approach consists of encoding instances of ILP into instances of SAT. A two-step procedure is proposed, consisting of first mapping the ILP instance into PB constraints and then encoding the PB constraints into SAT. One key observation is that not all existing PB to SAT encodings can be used for counting models. The paper provides conditions for PB to SAT encodings that can be safely used for model counting, and proves that some of the existing encodings are safe for model counting while others are not. Finally, the paper provides experimental results, comparing the PB and SAT approaches, as well as existing alternative solutions.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Aloul, F., Ramani, A., Markov, I., Sakallah, K.: Generic ILP versus specialized 0-1 ILP: An update. In: International Conference on Computer-Aided Design, November 2002, pp. 450–457 (2002)
Bacchus, F., Dalmao, S., Pitassi, T.: Algorithms and complexity results for #SAT and bayesian inference. In: Symposium on Foundations of Computer Science, pp. 340–351 (2003)
Bailleux, O., Boufkhad, Y.: Full CNF encoding: The counting constraints case. In: Seventh International Conference on Theory and Applications of Satisfiability Testing (2004)
Bailleux, O., Boufkhad, Y., Roussel, O.: A translation of pseudo Boolean constraints to SAT. Journal on Satisfiability, Boolean Modeling and Computation 2 (March 2006)
Barvinok, A., Pommersheim, J.: An algorithmic theory of lattice points in polyhedra. In: New Perspectives in Algebraic Combinatorics, vol. 38, pp. 91–147. MSRI Publications, Cambridge University Press (1999)
Bayardo, R.J., Pehoushek, J.D.: Counting models using connected components. In: National Conference on Artificial Intelligence (2000)
Boigelot, B., Latour, L.: Counting the solutions of presburger equations without enumerating them. Theoretical Computer Science 313(1), 17–29 (2004)
Chai, D., Kuehlmann, A.: A Fast Pseudo-Boolean Constraint Solver. In: Proceedings of the Design Automation Conference, pp. 830–835 (2003)
Eén, N., Sörensson, N.: Translating pseudo-Boolean constraints into SAT. Journal on Satisfiability, Boolean Modeling and Computation 2 (March 2006)
Johnson, D.S., Trick, M.A.: Second DIMACS Implementation Challenge. DIMACS Series in Discrete Mathematics and Theoretical Computer Science (1994)
Loera, J.A.D., Hemmecke, R., Tauzer, J., Yoshida, R.: Effective lattice point counting in rational convex polytopes. J. Symb. Comput. 38(4), 1273–1302 (2004)
McMillan, K.L.: Applying SAT methods in unbounded symbolic model checking. In: International Conference on Computer-Aided Verification (2002)
Morgado, A., Matos, P., Manquinho, V., Marques-Silva, J.: Counting models in integer domains. Technical Report 05/2006, INESC-ID (March 2006)
Nemhauser, G.L., Wolsey, L.A.: Integer and Combinatorial Optimization. John Wiley & Sons, Chichester (1988)
Pizzuti, C.: Computing Prime Implicants by Integer Programming. In: Proceedings of the International Conference on Tools with Artificial Intelligence, November 1996, pp. 332–336 (1996)
Pugh, W.: Counting solutions to presburger formulas: How and why. In: Conference on Programming Language Design and Implementation, June 1994, pp. 121–134 (1994)
Ravi, K., Somenzi, F.: Minimal satisfying assignments for conjunctive normal formulae. In: International Conference on Tools and Algorithms for the Construction and Analysis of Systems (2004)
Sang, T., Bacchus, F., Beame, P., Kautz, H.A., Pitassi, T.: Combining component caching and clause learning for effective model counting. In: International Conference on Theory and Applications of Satisfiability Testing (May 2004)
Warners, J.P.: A linear-time transformation of linear inequalities into conjunctive normal form. Information Processing Letters 68(2), 63–69 (1998)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Morgado, A., Matos, P., Manquinho, V., Marques-Silva, J. (2006). Counting Models in Integer Domains. In: Biere, A., Gomes, C.P. (eds) Theory and Applications of Satisfiability Testing - SAT 2006. SAT 2006. Lecture Notes in Computer Science, vol 4121. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11814948_37
Download citation
DOI: https://doi.org/10.1007/11814948_37
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-37206-6
Online ISBN: 978-3-540-37207-3
eBook Packages: Computer ScienceComputer Science (R0)