Skip to main content
Log in

Delayed theory combination vs. Nelson-Oppen for satisfiability modulo theories: a comparative analysis

  • Published:
Annals of Mathematics and Artificial Intelligence Aims and scope Submit manuscript

Abstract

Most state-of-the-art approaches for Satisfiability Modulo Theories \((SMT(\mathcal{T}))\) rely on the integration between a SAT solver and a decision procedure for sets of literals in the background theory \(\mathcal{T} (\mathcal{T}{\text {-}}solver)\). Often \(\mathcal{T}\) is the combination \(\mathcal{T}_1 \cup \mathcal{T}_2\) of two (or more) simpler theories \((SMT(\mathcal{T}_1 \cup \mathcal{T}_2))\), s.t. the specific \({\mathcal{T}_i}{\text {-}}solvers\) must be combined. Up to a few years ago, the standard approach to \(SMT(\mathcal{T}_1 \cup \mathcal{T}_2)\) was to integrate the SAT solver with one combined \(\mathcal{T}_1 \cup \mathcal{T}_2{\text {-}}solver\), obtained from two distinct \({\mathcal{T}_i}{\text {-}}solvers\) by means of evolutions of Nelson and Oppen’s (NO) combination procedure, in which the \({\mathcal{T}_i}{\text {-}}solvers\) deduce and exchange interface equalities. Nowadays many state-of-the-art SMT solvers use evolutions of a more recent \(SMT(\mathcal{T}_1 \cup \mathcal{T}_2)\) procedure called Delayed Theory Combination (DTC), in which each \({\mathcal{T}_i}{\text {-}}solver\) interacts directly and only with the SAT solver, in such a way that part or all of the (possibly very expensive) reasoning effort on interface equalities is delegated to the SAT solver itself. In this paper we present a comparative analysis of DTC vs. NO for \(SMT(\mathcal{T}_1 \cup \mathcal{T}_2)\). On the one hand, we explain the advantages of DTC in exploiting the power of modern SAT solvers to reduce the search. On the other hand, we show that the extra amount of Boolean search required to the SAT solver can be controlled. In fact, we prove two novel theoretical results, for both convex and non-convex theories and for different deduction capabilities of the \({\mathcal{T}_i}{\text {-}}solvers\), which relate the amount of extra Boolean search required to the SAT solver by DTC with the number of deductions and case-splits required to the \({\mathcal{T}_i}{\text {-}}solvers\) by NO in order to perform the same tasks: (i) under the same hypotheses of deduction capabilities of the \({\mathcal{T}_i}{\text {-}}solvers\) required by NO, DTC causes no extra Boolean search; (ii) using \({\mathcal{T}_i}{\text {-}}solvers\) with limited or no deduction capabilities, the extra Boolean search required can be reduced down to a negligible amount by controlling the quality of the \(\mathcal{T}\)-conflict sets returned by the \({\mathcal{T}_i}{\text {-}}solvers\).

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.

Institutional subscriptions

Similar content being viewed by others

References

  1. Ball, T., Cook, B., Lahiri, S.K., Zhang, L.: Zapato: automatic theorem proving for predicate abstraction refinement. In: Proc. CAV’04. LNCS, vol. 3114. Springer, New York (2004)

    Google Scholar 

  2. Barrett, C., Berezin, S.: CVC Lite: a new implementation of the cooperating validity checker. In: Proceedings of the 16th International Conference on Computer Aided Verification (CAV ’04). LNCS, vol. 3114. Springer, New York (2004)

    Google Scholar 

  3. Barrett, C., Nieuwenhuis, R., Oliveras, A., Tinelli, C.: Splitting on demand in SAT modulo theories. In: Proc. LPAR’06. LNAI, vol. 4246. Springer, New York (2006)

    Google Scholar 

  4. Barrett, C., Tinelli, C.: Cvc3. In: Proc. CAV’07. LNCS, vol. 4590. Springer, New York (2007)

    Google Scholar 

  5. Barrett, C.W., Dill, D.L., Stump, A.: A generalization of Shostak’s method for combining decision procedures. In: Frontiers of Combining Systems (FROCOS). Lecture Notes in Artificial Intelligence. Springer, Santa Margherita Ligure (2002)

  6. Bonacina, M.P., Ghilardi, S., Nicolini, E., Ranise, S., Zucchelli, D.: Decidability and undecidability results for Nelson-Oppen and rewrite-based decision procedures. In: Proc. of IJCAR’06. LNAI, no. 4130 (2006)

  7. Bozzano, M., Bruttomesso, R., Cimatti, A., Franzen, A., Hanna, Z., Khasidashvili, Z., Palti, A., Sebastiani, R.: Encoding RTL constructs for MathSAT: a preliminary report. In: Proc. PDPAR’05. ENTCS, vol. 144. Elsevier, Amsterdam (2006)

    Google Scholar 

  8. Bozzano, M., Bruttomesso, R., Cimatti, A., Junttila, T., Rossum, P., Schulz, S., Sebastiani, R.: An incremental and layered procedure for the satisfiability of linear arithmetic logic. In: Proc. TACAS’05. LNCS, vol. 3440. Springer, New York (2005)

    Google Scholar 

  9. Bozzano, M., Bruttomesso, R., Cimatti, A., Junttila, T., van Rossum, P., Ranise, S., Sebastiani, R.: Efficient satisfiability modulo theories via delayed theory combination. In: Proc. CAV 2005. LNCS, vol. 3576. Springer, New York (2005)

    Google Scholar 

  10. Bozzano, M., Bruttomesso, R., Cimatti, A., Junttila, T., van Rossum, P., Ranise, S., Sebastiani, R.: Efficient theory combination via boolean search. Inf. Comput. 204(10), 1493–1525 (2006)

    Article  MATH  Google Scholar 

  11. Brinkmann, R., Drechsler, R.: RTL-datapath verification using integer linear programming. In: Proc. ASP-DAC 2002, pp. 741–746. IEEE, Piscataway (2002)

    Google Scholar 

  12. Bruttomesso, R., Cimatti, A., Franzén, A., Griggio, A., Sebastiani, R.: Delayed theory combination vs. Nelson-Oppen for satisfiability modulo theories: a comparative analysis. In: Proc. LPAR’06. LNAI, vol. 4246. Springer, New York (2006)

    Google Scholar 

  13. Bruttomesso, R., Cimatti, A., Franzen, A., Griggio, A., Sebastiani, R.: The MathSAT 4 SMT solver. In: CAV. LNCS, vol. 5123. Springer, New York (2008)

    Google Scholar 

  14. Cotton, S., Maler, O.: Fast and flexible difference logic propagation for DPLL(T). In: Proc. SAT’06. LNCS, vol. 4121. Springer, New York (2006)

    Google Scholar 

  15. de Moura, L., Bjørner, N.: Model-based theory combination. In: Proc. of the 5th Workshop on Satisfiability Modulo Theories SMT’07. http://www.lsi.upc.edu/~oliveras/smt07/ (2007)

  16. de Moura, L., Owre, S., Ruess, H., Rushby, J., Shankar, N.: The ICS decision procedures for embedded deduction. In: Proc. IJCAR’04. LNCS, vol. 3097, pp. 218–222. Springer, New York (2004)

    Google Scholar 

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

    Article  MathSciNet  Google Scholar 

  18. Dutertre, B., de Moura, L.: A fast linear-arithmetic solver for DPLL(T). In: Proc. CAV’06. LNCS, vol. 4144. Springer, New York (2006)

    Google Scholar 

  19. Dutertre, B., de Moura, L.: System description: Yices 1.0. In: Proc. on 2nd SMT competition, SMT-COMP’06. yices.csl.sri.com/yices-smtcomp06.pdf (2006)

  20. Enderton, H.: A Mathematical Introduction to Logic. Academic, London (1972)

    MATH  Google Scholar 

  21. Filliâtre, J.-C., Owre, S., Rueß, H., Shankar, N.: ICS: Integrated Canonizer and Solver. In: Proc. CAV’2001 (2001)

  22. Flanagan, C., Joshi, R., Ou, X., Saxe, J.B.: Theorem proving using lazy proof explication. In: Proc. CAV 2003. LNCS. Springer, New York (2003)

    Google Scholar 

  23. Fontaine, P., Ranise, S., Zarba, C.G.: Combining lists with non-stably infinite theories. In: Proc. LPAR’04. LNCS, vol. 3452. Springer, New York (2004)

    Google Scholar 

  24. Ganzinger, H., Hagen, G., Nieuwenhuis, R., Oliveras, A., Tinelli, C.: DPLL(T): fast decision procedures. In: Proc. CAV’04. LNCS, vol. 3114, pp. 175–188. Springer, New York (2004)

    Google Scholar 

  25. Ghilardi, S.: Model theoretic methods in combined constraint satisfiability. J. Autom. Reason. 33(3), 221–249 (2004)

    Article  MATH  MathSciNet  Google Scholar 

  26. Ghilardi, S., Nicolini, E., Zucchelli, D.: A comprehensive framework for combined decision procedures. In: Proc. FroCos’05. LNCS, vol. 3717. Springer, New York (2005)

    Google Scholar 

  27. Krstic, S., Goel, A.: Architecting solvers for SAT modulo theories: Nelson-Oppen with DPLL. In: Proc. Frontiers of Combining Systems, 6th International Symposium, FroCoS 2007. LNAI, vol. 4720. Springer, New York (2007)

    Google Scholar 

  28. Krstić, S., Goel, A., Grundy, J., Tinelli, C.: Combined satisfiability modulo parametric theories. In: TACAS’07. LNCS, vol. 4424. Springer, New York (2007)

    Google Scholar 

  29. Lahiri, S.K., Musuvathi, M.: An efficient decision procedure for UTVPI constraints. In: Proc. of 5th International Workshop on Frontiers of Combining Systems (FroCos ’05). LNCS, vol. 3717. Springer, New York (2005)

    Chapter  Google Scholar 

  30. Nelson, C.G., Oppen, D.C.: Simplification by cooperating decision procedures. TOPLAS 1(2), 245–257 (1979)

    Article  MATH  Google Scholar 

  31. Nieuwenhuis, R., Oliveras, A.: Congruence closure with integer offsets. In: Proc. 10th LPAR. LNAI, no. 2850, pp. 77–89. Springer, New York (2003)

    Google Scholar 

  32. Nieuwenhuis, R., Oliveras, A.: DPLL(T) with exhaustive theory propagation and its application to difference logic. In: Proc. CAV’05. LNCS, vol. 3576. Springer, New York (2005)

    Google Scholar 

  33. Oppen, D.C.: Complexity, convexity and combinations of theories. Theor. Comp. Sci. 12, 291–302 (1980)

    Article  MATH  MathSciNet  Google Scholar 

  34. Ranise, S., Ringeissen, C., Zarba, C.G.: Combining data structures with nonstably infinite theories using many-sorted logic. In: Proc FroCos’05. LNCS, vol. 3717. Springer, New York (2005)

    Google Scholar 

  35. Rueß, H., Shankar, N.: Deconstructing Shostak. In: Proc. LICS ’01. IEEE Computer Society, Piscataway (2001)

    Google Scholar 

  36. Sebastiani, R.: Lazy satisfiability modulo theories. Journal on Satisfiability, Boolean Modeling and Computation, JSAT. 3, 141–224 (2007)

    MATH  MathSciNet  Google Scholar 

  37. Shankar, N., Rueß, H.: Combining Shostak theories. Invited paper for Floc’02/RTA’02 (2002)

  38. Shostak, R.: A pratical decision procedure for arithmetic with function symbols. J. ACM 26(2), 51–360 (1979)

    Article  MathSciNet  Google Scholar 

  39. Shostak, R.: Deciding combinations of theories. J. ACM 31, 1–12 (1984)

    Article  MATH  MathSciNet  Google Scholar 

  40. Tinelli, C., Harandi, M.T.: A new correctness proof of the Nelson–Oppen combination procedure. In: Proc. Frontiers of Combining Systems, FroCoS’06. Applied Logic. Kluwer, Dordrecht (1996)

    Google Scholar 

  41. Tinelli, C., Ringeissen, C.: Unions of non-disjoint theories and combinations of satisfiability procedures. Theor. Comp. Sci. 290(1), 291–353 (2003)

    Article  MATH  MathSciNet  Google Scholar 

  42. Tinelli, C., Zarba, C.: Combining nonstably infinite theories. J. Autom. Reason. 34(3), 209–238 (2005)

    Article  MATH  MathSciNet  Google Scholar 

  43. Zarba, C.G.: A tableau calculus for combining non-disjoint theories. In: Proc. Tableaux’02. Lecture Notes in Computer Science, vol. 2381, pp. 315–329. Springer, New York (2002)

    Google Scholar 

  44. Zarba, C.G.: Combining sets with integers. In: FroCos’02. Lecture Notes in Computer Science, vol. 2309, pp. 103–116. Springer, New York (2002)

    Google Scholar 

  45. Zhang, L., Madigan, C.F., Moskewicz, M.H., Malik, S.: Efficient conflict driven learning in a boolean satisfiability solver. In: Proc. ICCAD ’01. IEEE, Piscataway (2001)

    Google Scholar 

  46. Zhang, L., Malik, S.: The quest for efficient boolean satisfiability solvers. In: Proc. CAV’02. LNCS, no. 2404, pp. 17–36. Springer, New York (2002)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Roberto Bruttomesso.

Additional information

This research was supported in part by the grant SFU/PRG 06-3. The second author is partly supported by the European Commission under project FP7-2007-IST-1-217069 COCONUT. The last author is partly supported by SRC under GRC Custom Research Project 2009-TJ-1880 WOLFLING, and by MIUR under PRIN project 20079E5KM8_002.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Bruttomesso, R., Cimatti, A., Franzen, A. et al. Delayed theory combination vs. Nelson-Oppen for satisfiability modulo theories: a comparative analysis. Ann Math Artif Intell 55, 63–99 (2009). https://doi.org/10.1007/s10472-009-9152-7

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10472-009-9152-7

Keywords

Mathematics Subject Classification (2000)

Navigation