Skip to main content

Lemma Learning in SMT on Linear Constraints

  • Conference paper
Theory and Applications of Satisfiability Testing - SAT 2006 (SAT 2006)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 4121))

Abstract

The past decade has seen great improvement in Boolean Satisfiability(SAT) solvers. SAT solving is now widely used in different areas, including electronic design automation, software verification and artificial intelligence. However, many applications have non-Boolean constraints, such as linear relations and uninterpreted functions. Converting such constraints into SAT is very hard and sometimes impossible. This has given rise to a recent surge of interest in Satisfiability Modulo Theories (SMT). SMT incorporates predicates in other theories such as linear real arithmetic, into a Boolean formula. Solving an SMT problem entails either finding an assignment for all Boolean and theory specific variables in the formula that evaluates the formula to TRUE or proving that such an assignment does not exist. To solve such an SMT instance, a solver typically combines SAT and theory-specific solving under the Nelson-Oppen procedure framework. Fast SAT and theory-specific solvers and good integration of the two are required for efficient SMT solving.

Efficient learning contributes greatly to the success of the recent SAT solvers. However, the learning technique in SMT is limited in the current literature. In this paper, we propose methods of efficient lemma learning on SMT problems with linear real/integer arithmetic constraints. We describe a static learning technique that analyzes the relationship of the linear constraints. We also discuss a conflict driven learning technique derived from infeasible sets of linear real/integer constraints. The two learning techniques can be expanded to many other theories. Our experimental results show that lemma learning can significantly improve the speed of SMT solvers.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Sofware Design Group, MIT: The Alloy Analyzer (2006) Retrieved on (May 12, 2006), http://alloy.mit.edu/

  2. Detlefs, D., Nelson, G., Saxe, J.B.: Simplify: a theorem prover for program checking. Journal of the ACM 52(3), 365–473 (2005)

    Article  MathSciNet  Google Scholar 

  3. Marques-Silva, J.P., Sakallah, K.A.: GRASP - a search algorithm for propositional satisfiability. IEEE Transactions on Computers 48(5), 506–521 (1999)

    Article  MathSciNet  Google Scholar 

  4. Moskewicz, M.W., Madigan, C.F., Zhao, Y., Zhang, L., Malik, S.: Chaff: Engineering an efficient SAT solver. In: Proc. DAC, pp. 530–535.

    Google Scholar 

  5. Zhang, L., Madigan, C.F., Moskewicz, M.W., Malik, S.: Efficient conflict driven learning in a Boolean satisfiability solver. In: Proc. ICCAD (2001)

    Google Scholar 

  6. Davis, M., Putnam, H.: A computing procedure for quantification theory. Journal of the ACM 7(3), 201–215 (1960)

    Article  MATH  MathSciNet  Google Scholar 

  7. Davis, M., Logemann, G., Loveland, D.: A machine program for theorem proving. Communications of the ACM 5(7), 394 (1962)

    Article  MATH  MathSciNet  Google Scholar 

  8. Nelson, G., Oppen, D.C.: Simplification by cooperating decision procedures. ACM Transactions on Programming Languages and Systems 1, 245–257 (1979)

    Article  MATH  Google Scholar 

  9. Borning, A., Marriott, K., Stuckey, P., Xiao, Y.: Solving linear arithmetic constraints for user interface applications. In: Proc. ACM Symp. on User Interface Software and Technology, pp. 87–96 (1996)

    Google Scholar 

  10. ILog, S.A.: CPLEX Manual, Version 10.0 (2006)

    Google Scholar 

  11. Dash optimization Inc.: Xpress-MP optimization software (2006), http://www.dashoptimization.com/

  12. Mosek ApS: MOSEK optimization software (2006), http://www.mosek.com/

  13. Sheini, H.M., Sakallah, K.A.: A scalable method for solving satisfiability of integer linear arithmetic logic. In: Bacchus, F., Walsh, T. (eds.) SAT 2005. LNCS, vol. 3569, pp. 241–256. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  14. Bozzano, M., Bruttomesso, R., Cimatti, A., Junttila, T., van Rossum, P., Schulz, S., Sebastiani, R.: An incremental and layered procedure for the satisfiability of linear arithmetic logic. In: Halbwachs, N., Zuck, L.D. (eds.) TACAS 2005. LNCS, vol. 3440, pp. 317–333. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  15. Barrett, C., Dill, D.L., Stump, A.: Checking satisfiability of first-order formulas by incremental translation into SAT. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  16. Nieuwenhuis, R., Oliveras, A.: DPLL(T) with Exhaustive Theory Propagation and its Application to Difference Logic. In: Etessami, K., Rajamani, S.K. (eds.) CAV 2005. LNCS, vol. 3576, pp. 321–334. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  17. Rueß, H., Shankar, N.: Solving linear arithmetic constraints. Technical report, SRI International (2004)

    Google Scholar 

  18. Chinneck, J.W.: MINOS(IIS): Infeasibility analysis using MINOS. Computers and Operations Research 21(1), 1–9 (1994)

    Article  MATH  Google Scholar 

  19. Guieu, O., Chinneck, J.W.: Analyzing infeasible mixed-integer and integer linear programs. INFORMS J. of Computing 11(1), 63–77 (1999)

    Article  MATH  MathSciNet  Google Scholar 

  20. Ranise, S., Tinelli, C.: The SMT-LIB standard: Version 1.1 (2005), http://combination.cs.uiowa.edu/smtlib/papers/format-v1.1r05.04.12.pdf

  21. Bjesse, P., Borälv, A.: DAG-aware circuit compression for formal verification. In: Proc. ICCAD, pp. 42–49 (2004)

    Google Scholar 

  22. Dutertre, B., de Moura, L.: Simplics: Tool description (2005) retrieved on May 12, 2006, http://fm.csl.sri.com/simplics/description.pdf

  23. Barrett, C., de Moura, L., Stump, A.: SMT-COMP: Satisfiability modulo theories competition. In: Etessami, K., Rajamani, S.K. (eds.) CAV 2005. LNCS, vol. 3576, pp. 20–23. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Yu, Y., Malik, S. (2006). Lemma Learning in SMT on Linear Constraints. 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_17

Download citation

  • DOI: https://doi.org/10.1007/11814948_17

  • 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)

Publish with us

Policies and ethics