Abstract
With impressive progress in Boolean Satisfiability (SAT) solving and several extensions to pseudo-Boolean (PB) constraints, many applications that use SAT, such as high-performance formal verification techniques are still restricted to checking satisfiability of certain conditions. However, there is also frequently a need to express a preference for certain solutions. Extending SAT-solving to Boolean optimization allows the use of objective functions to describe a desirable solution. Although recent work in 0–1 Integer Linear Programming (ILP) offers extensions that can optimize a linear objective function, this is often achieved by solving a series of SAT or ILP decision problems. Our work articulates some pitfalls of this approach. An objective function may complicate the use of any symmetry that might be present in the given constraints, even when the constraints are unsatisfiable and the objective function is irrelevant. We propose several new techniques that treat objective functions differently from CNF/PB constraints and accelerate Boolean optimization in many practical cases. We also develop an adaptive flow that analyzes a given Boolean optimization problem and picks the symmetry-breaking technique that is best suited to the problem characteristics. Empirically, we show that for non-trivial objective functions that destroy constraint symmetries, the benefit of static symmetry-breaking is lost but dynamic symmetry-breaking accelerates problem-solving in many cases. We also introduce a new objective function, Localized Bit Selection (LBS), that can be used to specify a preference for bit values in formal verification applications.
Similar content being viewed by others
References
Aloul, F.A., Ramani, A., Markov, I.L., Sakallah, K.A.: Solving difficult sat instances in the presence of symmetry. IEEE Trans. Comput.-Aided Des. Integr. Circuits Syst. (TCAD) 22(9), 1117–1137 (2003)
Aloul, F.A., Ramani, A., Markov, I.L., Sakallah, K.A.: Generic ILP versus specialized 0–1 ILP: an update. In: Proc. Intl. Conf. on Computer-Aided Design (ICCAD), pp. 450–457
Aloul, F.A., Markov, I.L., Sakallah, K.A.: Shatter: efficient symmetry-breaking for Boolean satisfiability. In: Proc. Intl. Joint Conf. on AI, pp. 271–282 (2003)
Aloul, F.A., Ramani, A., Markov, I.L., Sakallah, K.A.: Symmetry-breaking for pseudo-Boolean formulas. In: Proc. Asia-South Pacific Design Automation Conf., pp. 884–887 (2004)
Chai, D., Kuehlmann, A.: A fast pseudo-Boolean constraint solver. In: Proc. Design Automation Conf., pp. 830–835 (2003)
Crawford, J., Ginsberg, M., Luks, E., Roy, A.: Symmetry-breaking predicates for search problems. In: Proc. of the Intl. Conf. on Principles of Knowledge Representation and Reasoning, pp. 148–159 (1996)
Darga, P.: SAUCY: graph automorphism tool. http://vlsicad.eecs.umich.edu/BK/SAUCY
DIMACS SAT benchmarks: ftp://Dimacs.rutgers.EDU/pub/challenge/sat/benchmarks/cnf
Gent, I., Kelsey, T., Linton, S., McDonald, I., Miguel, I., Smith, B.: Conditional symmetry breaking. In: Proc. of Principles and Practice of Constraint Programming (CP), pp. 256–270 (2005)
Goldberg, E., Novikov, Y.: BerkMin: a fast and robust sat-solver. In: Proc. Design Automation and Test In Europe, pp. 142–149 (2002)
Moskewicz, M.W., Madigan, C.F., Zhao, Y., Zhang, L., Malik, S.: Chaff: engineering an efficient sat solver. In: Proc. Design Automation Conf., pp. 530–535 (2001)
Nam, G., Aloul, F., Sakallah, K., Rutenbar, R.: A comparative study of two Boolean formulations of FPGA detailed routing constraints. In: Proc. Intl. Symposium on Physical Design (ISPD), pp. 222–227 (2001)
Petrie, K., Smith, B., Yorke-Smith, N.: Dynamic symmetry breaking in constraint programming and linear programming hybrids. In: Proc. of STAIRS, the 2nd European Starting AI Researchers Symposium, pp. 96–106 (2004)
Silva, J.P.M., Sakallah, K.A.: GRASP: a new search algorithm for satisfiability. IEEE Trans. Comput. 48(5), 506–521 (1999)
Velev, M.N., Bryant, R.E.: Effective use of Boolean sat procedures in the formal verification of superscalar and VLIW microprocessors. In: Proc. Design Automation Conf. (DAC), pp. 226–231 (2001)
Zhang, L., Malik, S.: XOR-chain SAT benchmarks, SAT 2002 competition: http://www.satcompetition.org/
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Aloul, F.A., Ramani, A., Markov, I.L. et al. Dynamic symmetry-breaking for Boolean satisfiability. Ann Math Artif Intell 57, 59–73 (2009). https://doi.org/10.1007/s10472-010-9173-2
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10472-010-9173-2