Dynamic symmetry-breaking for Boolean satisfiability

  • Fadi A. Aloul
  • Arathi Ramani
  • Igor L. Markov
  • Karem A. Sakallah


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.


Dynamic symmetry breaking Boolean satisfiability Search Optimization Formal verification 

Mathematics Subject Classifications (2000)

05–06 30–06 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    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)CrossRefGoogle Scholar
  2. 2.
    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–457Google Scholar
  3. 3.
    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)Google Scholar
  4. 4.
    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)Google Scholar
  5. 5.
    Chai, D., Kuehlmann, A.: A fast pseudo-Boolean constraint solver. In: Proc. Design Automation Conf., pp. 830–835 (2003)Google Scholar
  6. 6.
    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)Google Scholar
  7. 7.
    Darga, P.: SAUCY: graph automorphism tool. http://vlsicad.eecs.umich.edu/BK/SAUCY
  8. 8.
  9. 9.
    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)Google Scholar
  10. 10.
    Goldberg, E., Novikov, Y.: BerkMin: a fast and robust sat-solver. In: Proc. Design Automation and Test In Europe, pp. 142–149 (2002)Google Scholar
  11. 11.
    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)Google Scholar
  12. 12.
    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)Google Scholar
  13. 13.
    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)Google Scholar
  14. 14.
    Silva, J.P.M., Sakallah, K.A.: GRASP: a new search algorithm for satisfiability. IEEE Trans. Comput. 48(5), 506–521 (1999)CrossRefMathSciNetGoogle Scholar
  15. 15.
    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)Google Scholar
  16. 16.
    Zhang, L., Malik, S.: XOR-chain SAT benchmarks, SAT 2002 competition: http://www.satcompetition.org/

Copyright information

© Springer Science+Business Media B.V. 2010

Authors and Affiliations

  • Fadi A. Aloul
    • 1
  • Arathi Ramani
    • 2
  • Igor L. Markov
    • 3
  • Karem A. Sakallah
    • 3
  1. 1.Department of Computer EngineeringAmerican University of SharjahSharjahUnited Arab Emirates
  2. 2.Microsoft Corp., RedmondWashingtonUSA
  3. 3.Department of EECSUniversity of MichiganAnn ArborUSA

Personalised recommendations