A fast pseudo-Boolean constraint solver

Linear pseudo-Boolean (LPB) constraints denote inequalities between arithmetic sums of weighted Boolean functions and provide a significant extension of the modeling power of purely propositional constraints. They can be used to compactly describe many discrete electronic design automation problems with constraints on linearly combined, weighted Boolean variables, yet also offer efficient search strategies for proving or disproving whether a satisfying solution exists. Furthermore, corresponding decision procedures can easily be extended for minimizing or maximizing an LPB objective function, thus providing a core optimization method for many problems in logic and physical synthesis. In this paper, we review how recent advances in satisfiability search can be extended for pseudo-Boolean constraints and describe a new LPB solver that is based on generalized constraint propagation and conflict-based learning. We present a comparison with other, state-of-the-art LPB solvers which demonstrates the overall efficiency of our method.

[1]  Slawomir Pilarski,et al.  SAT with partial clauses and back-leaps , 2002, DAC '02.

[2]  Donald W. Loveland,et al.  A machine program for theorem-proving , 2011, CACM.

[3]  Hilary Putnam,et al.  A Computing Procedure for Quantification Theory , 1960, JACM.

[4]  Sharad Malik,et al.  Chaff: engineering an efficient SAT solver , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[5]  P. Barth A Davis-Putnam based enumeration algorithm for linear pseudo-Boolean optimization , 1995 .

[6]  Giovanni Rinaldi,et al.  0/1 optimization and 0/1 primal separation are equivalent , 2002, SODA '02.

[7]  Armin Biere,et al.  Symbolic Model Checking without BDDs , 1999, TACAS.

[8]  V. Chandru,et al.  Optimization Methods for Logical Inference , 1999 .

[9]  Egon Balas,et al.  A lift-and-project cutting plane algorithm for mixed 0–1 programs , 1993, Math. Program..

[10]  Sharad Malik,et al.  Efficient conflict driven learning in a Boolean satisfiability solver , 2001, IEEE/ACM International Conference on Computer Aided Design. ICCAD 2001. IEEE/ACM Digest of Technical Papers (Cat. No.01CH37281).

[11]  John N. Hooker,et al.  Logic-Based Methods for Optimization , 1994, PPCP.

[12]  Malgorzata Marek-Sadowska,et al.  Single-pass redundancy addition and removal , 2001, ICCAD.

[13]  Janak H. Patel,et al.  HITEC: a test generation package for sequential circuits , 1991, Proceedings of the European Conference on Design Automation..

[14]  J. P. Marques,et al.  GRASP : A Search Algorithm for Propositional Satisfiability , 1999 .

[15]  Ralph E. Gomory,et al.  An algorithm for integer solutions to linear programs , 1958 .

[16]  John N. Hooker,et al.  Generalized resolution for 0–1 linear inequalities , 1992, Annals of Mathematics and Artificial Intelligence.

[17]  Gerald J. Sussman,et al.  Forward Reasoning and Dependency-Directed Backtracking in a System for Computer-Aided Circuit Analysis , 1976, Artif. Intell..

[18]  Vasek Chvátal,et al.  Edmonds polytopes and a hierarchy of combinatorial problems , 1973, Discret. Math..

[19]  Jacques F. Benders,et al.  Partitioning procedures for solving mixed-variables programming problems , 2005, Comput. Manag. Sci..

[20]  Matthew L. Ginsberg,et al.  Inference methods for a pseudo-boolean satisfiability solver , 2002, AAAI/IAAI.

[21]  Peter Barth Linear 0-1 Inequalities and Extended Clauses , 1993, LPAR.

[22]  Vijay Chandru,et al.  Optimization Methods for Logical Inference: Chandru/Optimization , 1999 .

[23]  Srinivas Devadas,et al.  Optimal layout via Boolean satisfiability , 1989, 1989 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[24]  K. Sakallah,et al.  Generic ILP versus specialized 0-1 ILP: an update , 2002, ICCAD 2002.

[25]  Laurence A. Wolsey,et al.  Integer and Combinatorial Optimization , 1988 .

[26]  Matthew L. Ginsberg,et al.  Combining satisfiability techniques from AI and OR , 2000, The Knowledge Engineering Review.

[27]  G. S. Tseitin On the Complexity of Derivation in Propositional Calculus , 1983 .

[28]  Donald Loveland A Machine Program for Theorem-Provingt , 2000 .

[29]  Armin Haken,et al.  The Intractability of Resolution , 1985, Theor. Comput. Sci..

[30]  B. D. Bunday Logic-Based 0-1 Constraint Programming , 1996 .

[31]  Kurt Keutzer,et al.  Estimation of average switching activity in combinational logic circuits using symbolic simulation , 1997, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[32]  Rob A. Rutenbar,et al.  FPGA routing and routability estimation via Boolean satisfiability , 1998, IEEE Trans. Very Large Scale Integr. Syst..