Skip to main content

Advertisement

Log in

A branch and bound algorithm for extracting smallest minimal unsatisfiable subformulas

  • Published:
Constraints Aims and scope Submit manuscript

Abstract

Explaining the causes of infeasibility of Boolean formulas has practical applications in numerous fields, such as artificial intelligence (repairing inconsistent knowledge bases), formal verification (abstraction refinement and unbounded model checking), and electronic design (diagnosing and correcting infeasibility). Minimal unsatisfiable subformulas (MUSes) provide useful insights into the causes of infeasibility. An unsatisfiable formula often has many MUSes. Based on the application domain, however, MUSes with specific properties might be of interest. In this paper, we tackle the problem of finding a smallest-cardinality MUS (SMUS) of a given formula. An SMUS provides a succinct explanation of infeasibility and is valuable for applications that are heavily affected by the size of the explanation. We present (1) a baseline algorithm for finding an SMUS, founded on earlier work for finding all MUSes, and (2) a new branch-and-bound algorithm called Digger that computes a strong lower bound on the size of an SMUS and splits the problem into more tractable subformulas in a recursive search tree. Using two benchmark suites, we experimentally compare Digger to the baseline algorithm and to an existing incomplete genetic algorithm approach. Digger is shown to be faster in nearly all cases. It is also able to solve far more instances within a given runtime limit than either of the other approaches.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Aharoni, R., & Linial, N. (1986). Minimal non-two-colorable hypergraphs and minimal unsatisfiable formulas. Journal of Combinatorial Theory Series A, 43(2), 196–204.

    Article  MATH  MathSciNet  Google Scholar 

  2. Andraus, Z. S., Liffiton, M. H., & Sakallah, K. A. (2006). Refinement strategies for verification methods based on datapath abstraction. In Proceedings of the 2006 conference on Asia South Pacific design automation (ASP-DAC’06) (pp. 19–24).

  3. Andraus, Z. S., Liffiton, M. H., & Sakallah, K. A. (2007). CEGAR-based formal hardware verification: A case study. Technical Report CSE-TR-531-07, University of Michigan.

  4. Bailey, J., & Stuckey, P. J. (2005). Discovery of minimal unsatisfiable subsets of constraints using hitting set dualization. In Proceedings of the 7th international symposium on practical aspects of declarative languages (PADL’05), LNCS (Vol. 3350, pp. 174–186).

  5. Birnbaum, E., & Lozinskii, E. L. (2003). Consistent subsets of inconsistent systems: Structure and behaviour. Journal of Experimental and Theoretical Artificial Intelligence, 15, 25–46.

    Article  MATH  Google Scholar 

  6. Bruni, R., & Sassano, A. (2001). Restoring satisfiability or maintaining unsatisfiability by finding small unsatisfiable subformulae. In LICS 2001 workshop on theory and applications of satisfiability testing (SAT-2001), Electronic Notes in Discrete Mathematics (Vol. 9, pp. 162–173).

  7. Büning, H. K. (2000). On subclasses of minimal unsatisfiable formulas. Discrete Applied Mathematics, 107(1–3), 83–98.

    Article  MATH  MathSciNet  Google Scholar 

  8. Büning, H. K., & Zhao, X. (2001). Minimal falsity for QBF with deficiency one. Workshop on Theory and Applications of Quantified Boolean Formulas.

  9. Dasgupta, S., & Chandru, V. (2004). Minimal unsatisfiable sets: Classification and bounds. In M. J. Maher (Ed.), Advances in computer science—ASIAN 2004, LNCS (Vol. 3321, pp. 330–342). Springer.

  10. Davydov, G., Davydova, I., & Büning, H. K. (1998). An efficient algorithm for the minimal unsatisfiability problem for a subclass of CNF. Annals of Mathematics and Artificial Intelligence, 23(3–4), 229–245.

    Article  MATH  MathSciNet  Google Scholar 

  11. Eén, N., & Sörensson, N. (2003). An extensible SAT-solver. In Proceedings of the 6th international conference on theory and applications of satisfiability testing (SAT-2003), LNCS (Vol. 2919, pp. 502–518).

  12. Fleischner, H., Kullmann, O., & Szeider, S. (2002). Polynomial-time recognition of minimal unsatisfiable formulas with fixed clause-variable difference. Theoretical Computer Science, 289(1), 503–516.

    Article  MATH  MathSciNet  Google Scholar 

  13. Gershman, R., Koifman, M., & Strichman, O. (2006). Deriving small unsatisfiable cores with dominators. In Proceedings of the 18th international conference on computer aided verification (CAV’06) (pp. 109–122).

  14. Goldberg, E., & Novikov, Y. (2003). Verification of proofs of unsatisfiability for CNF formulas. In Proceedings of the conference on design, automation, and test in Europe (DATE’03) (pp. 10886–10891).

  15. Grégoire, É., Mazure, B., & Piette, C. (2007). Local-search extraction of MUSes. Constraints, 12(3), 325–344.

    Article  MATH  MathSciNet  Google Scholar 

  16. Hachtel, G. D., & Somenzi, F. (1996). Logic synthesis and verification algorithms. Kluwer Academic.

  17. Han, B., & Lee, S.-J. (1999). Deriving minimal conflict sets by CS-trees with mark set in diagnosis from first principles. IEEE Transactions on Systems, Man, and Cybernetics, Part B, 29(2), 281–286, April.

    Google Scholar 

  18. Huang, J. (2005). MUP: A minimal unsatisfiability prover. In Proceedings of the 10th Asia and South Pacific design automation conference (ASP-DAC’05) (pp. 432–437).

  19. Jain, H., Kroening, D., Sharygina, N., & Clarke, E. (2005). Word level predicate abstraction and refinement for verifying RTL verilog. In Proceedings of the 42nd annual conference on design automation (DAC’05) (pp. 445–450).

  20. Kullmann, O. (2000). An application of matroid theory to the SAT problem. In 15th annual IEEE conference on computational complexity (pp. 116–124), July.

  21. Kurshan, R. P. (1994). Computer aided verification of coordinating processes. Princeton University Press, Princeton, NJ.

    Google Scholar 

  22. Liffiton, M. H., & Sakallah, K. A. (2005). On finding all minimally unsatisfiable subformulas. In Proceedings of the 8th international conference on theory and applications of satisfiability testing (SAT-2005), LNCS (Vol. 3569, pp. 173–186).

  23. Liffiton, M. H., & Sakallah, K. A. (2008). Algorithms for computing minimal unsatisfiable subsets of constraints. Journal of Automated Reasoning, 40(1), 1–33, January.

    Article  MATH  MathSciNet  Google Scholar 

  24. Lynce, I., & Marques-Silva, J. (2004). On computing minimum unsatisfiable cores. In The 7th international conference on theory and applications of satisfiability testing (SAT-2004).

  25. Mneimneh, M. N., Lynce, I., Andraus, Z. S., Silva, J. P. M., & Sakallah, K. A. (2005). A branch-and-bound algorithm for extracting smallest minimal unsatisfiable formulas. In Proceedings of the 8th international conference on theory and applications of satisfiability testing (SAT-2005), LNCS (Vol. 3569, pp. 467–474).

  26. Nam, G.-J., Aloul, F. A., Sakallah, K. A., & Rutenbar, R. A. (2004). A comparative study of two Boolean formulations of FPGA detailed routing constraints. IEEE Transactions on Computers, 53(6), 688–696.

    Article  Google Scholar 

  27. Oh, Y., Mneimneh, M. N., Andraus, Z. S., Sakallah, K. A., & Markov, I. L. (2004). AMUSE: A minimally-unsatisfiable subformula extractor. In Proceedings of the 41st annual conference on design automation (DAC’04) (pp. 518–523).

  28. Papadimitriou, C. H., & Wolfe, D. (1988). The complexity of facets resolved. Journal of Computer and System Sciences, 37(1), 2–13.

    Article  MATH  MathSciNet  Google Scholar 

  29. Sinz, C. (2003). SAT benchmarks from automotive product configuration. Website. http://www-sr.informatik.uni-tuebingen.de/∼sinz/DC/.

  30. Sinz, C., Kaiser, A., & Küchlin, W. (2003). Formal methods for the validation of automotive product configuration data. Artificial Intelligence for Engineering Design, Analysis and Manufacturing, 17(1), 75–97.

    Article  Google Scholar 

  31. Szeider, S. (2004). Minimal unsatisfiable formulas with bounded clause-variable difference are fixed-parameter tractable. Journal of Computer and System Sciences, 69(4), 656–674, December.

    Article  MATH  MathSciNet  Google Scholar 

  32. Zhang, J., Li, S., & Shen, S. (2006). Extracting minimum unsatisfiable cores with a greedy genetic algorithm. In AI 2006: Advances in artificial intelligence, LNCS (Vol. 4304, pp. 847–856).

  33. Zhang, L., & Malik, S. (2003). Extracting small unsatisfiable cores from unsatisfiable Boolean formula. In The 6th international conference on theory and applications of satisfiability testing (SAT-2003).

  34. Zhang, L., & Malik, S. (2003). Validating SAT solvers using an independent resolution-based checker: Practical implementations and other applications. In Proceedings of the conference on design, automation, and test in Europe (DATE’03) (pp. 10880–10885).

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mark Liffiton.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Liffiton, M., Mneimneh, M., Lynce, I. et al. A branch and bound algorithm for extracting smallest minimal unsatisfiable subformulas. Constraints 14, 415–442 (2009). https://doi.org/10.1007/s10601-008-9058-8

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10601-008-9058-8

Keywords

Navigation