From KSAT to Delayed Theory Combination: Exploiting DPLL Outside the SAT Domain

  • Roberto Sebastiani
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4720)


In the last two decades we have witnessed an impressive advance in the efficiency of propositional satisfiability techniques (SAT), which has brought large and previously-intractable problems at the reach of state-of-the-art SAT solvers. Most of this success is motivated by the impressive level of efficiency reached by current implementations of the DPLL procedure. Plain propositional logic, however, is not the only application domain for DPLL. In fact, DPLL has also been successfully used as a boolean-reasoning kernel for automated reasoning tools in much more expressive logics.

In this talk I overview a 12-year experience on integrating DPLL with logic-specific decision procedures in various domains. In particular, I present and discuss three main achievements which have been obtained in this context: the DPLL-based procedures for modal and description logics, the lazy approach to Satisfiability Modulo Theories, and Delayed Theory Combination.


Modal Logic Decision Procedure Description Logic Truth Assignment Satisfiability Modulo Theory 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Armando, A., Castellini, C., Giunchiglia, E.: SAT-based procedures for temporal reasoning. In: Jaffar, J. (ed.) Principles and Practice of Constraint Programming – CP 1999. LNCS, vol. 1713, Springer, Heidelberg (1999)Google Scholar
  2. 2.
    Armando, A., Giunchiglia, E.: Embedding Complex Decision Procedures inside an Interactive Theorem Prover. Annals of Mathematics and Artificial Intelligence 8(3–4), 475–502 (1993)zbMATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    Audemard, G., Bertoli, P., Cimatti, A., Korniłowicz, A., Sebastiani, R.: A SAT Based Approach for Solving Formulas over Boolean and Linear Mathematical Propositions. In: Voronkov, A. (ed.) Automated Deduction - CADE-18. LNCS (LNAI), vol. 2392, Springer, Heidelberg (2002)Google Scholar
  4. 4.
    Barrett, C., Dill, D., Stump, A.: Checking Satisfiability of First-Order Formulas by Incremental Translation to SAT. In: 14th International Conference on Computer-Aided Verification (2002)Google Scholar
  5. 5.
    Barrett, C., Nieuwenhuis, R., Oliveras, A., Tinelli, C.: Splitting on Demand in SAT Modulo Theories. In: Hermann, M., Voronkov, A. (eds.) LPAR 2006. LNCS (LNAI), vol. 4246, Springer, Heidelberg (2006)CrossRefGoogle Scholar
  6. 6.
    Bozzano, M., Bruttomesso, R., Cimatti, A., Junttila, T., van Rossum, P., Schulz, S., Sebastiani, R.: MathSAT: A Tight Integration of SAT and Mathematical Decision Procedure. Journal of Automated Reasoning 35(1-3) (2005)Google Scholar
  7. 7.
    Bozzano, M., Bruttomesso, R., Cimatti, A., Junttila, T., van Rossum, P.: Efficient Satisfiability Modulo Theories via Delayed Theory Combination. In: Etessami, K., Rajamani, S.K. (eds.) CAV 2005. LNCS, vol. 3576, Springer, Heidelberg (2005)Google Scholar
  8. 8.
    Bozzano, M., Bruttomesso, R., Cimatti, A., Junttila, T., van Rossum, P., Ranise, S., Sebastiani, R.: Efficient Theory Combination via Boolean Search. Information and Computation 204(10) (2006)Google Scholar
  9. 9.
    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: Hermann, M., Voronkov, A. (eds.) LPAR 2006. LNCS (LNAI), vol. 4246, Springer, Heidelberg (2006)Google Scholar
  10. 10.
    Cotton, S., Maler, O.: Fast and Flexible Difference Logic Propagation for DPLL(T). In: Biere, A., Gomes, C.P. (eds.) SAT 2006. LNCS, vol. 4121, Springer, Heidelberg (2006)CrossRefGoogle Scholar
  11. 11.
    D’Agostino, M., Mondadori, M.: The Taming of the Cut. Journal of Logic and Computation 4(3), 285–319 (1994)zbMATHCrossRefMathSciNetGoogle Scholar
  12. 12.
    Davis, M., Longemann, G., Loveland, D.: A machine program for theorem proving. Journal of the ACM 5(7) (1962)Google Scholar
  13. 13.
    Davis, M., Putnam, H.: A computing procedure for quantification theory. Journal of the ACM 7, 201–215 (1960)zbMATHCrossRefMathSciNetGoogle Scholar
  14. 14.
    de Moura, L., Bjorner, N.: Model-based Theory Combination. In: Proc. 5th workshop on Satisfiability Modulo Theories, SMT 2007 (to appear, 2007)Google Scholar
  15. 15.
    de Moura, L., Rueß, H., Sorea, M.: Lemmas on Demand for Satisfiability Solvers. In: Proc. SAT 2002 (2002)Google Scholar
  16. 16.
    Dutertre, B., de Moura, L.: A Fast Linear-Arithmetic Solver for DPLL(T). In: Ball, T., Jones, R.B. (eds.) CAV 2006. LNCS, vol. 4144, Springer, Heidelberg (2006)CrossRefGoogle Scholar
  17. 17.
    Dutertre, B., de Moura, L.: System Description: Yices 1.0. In: Proc. on 2nd SMT competition, SMT-COMP’06 (2006), Available at
  18. 18.
    Flanagan, C., Joshi, R., Ou, X., Saxe, J.B.: Theorem Proving Using Lazy Proof Explication. In: Hunt Jr., W.A., Somenzi, F. (eds.) CAV 2003. LNCS, vol. 2725, Springer, Heidelberg (2003)Google Scholar
  19. 19.
    Ganzinger, H., Hagen, G., Nieuwenhuis, R., Oliveras, A., Tinelli, C.: DPLL(T): Fast Decision Procedures. In: Alur, R., Peled, D.A. (eds.) CAV 2004. LNCS, vol. 3114, Springer, Heidelberg (2004)Google Scholar
  20. 20.
    Giunchiglia, E., Giunchiglia, F., Sebastiani, R., Tacchella, A.: More evaluation of decision procedures for modal logics. In: Proc. KR 1998, Trento, Italy (1998)Google Scholar
  21. 21.
    Giunchiglia, E., Giunchiglia, F., Sebastiani, R., Tacchella, A.: SAT vs. Translation based decision procedures for modal logics: a comparative evaluation. Journal of Applied Non-Classical Logics 10(2), 145–172 (2000)zbMATHMathSciNetGoogle Scholar
  22. 22.
    Giunchiglia, E., Giunchiglia, F., Tacchella, A.: SAT Based Decision Procedures for Classical Modal Logics. Journal of Automated Reasoning. Special Issue: Satisfiability at the start of the year 2000 (2001)Google Scholar
  23. 23.
    Giunchiglia, F., Sebastiani, R.: Building decision procedures for modal logics from propositional decision procedures - the case study of modal K. In: CADE 1996. LNCS (LNAI), Springer, Heidelberg (1996)Google Scholar
  24. 24.
    Giunchiglia, F., Sebastiani, R.: A SAT-based decision procedure for ALC. In: Proc. KR 1996, Cambridge, MA, USA (November 1996)Google Scholar
  25. 25.
    Giunchiglia, F., Sebastiani, R.: Building decision procedures for modal logics from propositional decision procedures - the case study of modal K(m). Information and Computation 162(1/2) (2000)Google Scholar
  26. 26.
    Haarslev, V., Moeller, R.: RACER System Description. In: Goré, R.P., Leitsch, A., Nipkow, T. (eds.) IJCAR 2001. LNCS (LNAI), vol. 2083, Springer, Heidelberg (2001)Google Scholar
  27. 27.
    Horrocks, I.: Using an expressive description logic: FaCT or fiction? In: 6th International Conference on Principles of Knowledge Representation and Reasoning (KR 1998), pp. 636–647 (1998)Google Scholar
  28. 28.
    Horrocks, I., Patel-Schneider, P.F.: Optimizing Description Logic Subsumption. Journal of Logic and Computation 9(3), 267–293 (1999)zbMATHCrossRefMathSciNetGoogle Scholar
  29. 29.
    Horrocks, I., Patel-Schneider, P.F., Sebastiani, R.: An Analysis of Empirical Testing for Modal Decision Procedures. Logic Journal of the IGPL 8(3), 293–323 (2000)zbMATHCrossRefMathSciNetGoogle Scholar
  30. 30.
    Lahiri, S.K., Musuvathi, M.: An Efficient Decision Procedure for UTVPI Constraints. In: Gramlich, B. (ed.) FroCos 2005. LNCS (LNAI), vol. 3717, Springer, Heidelberg (2005)Google Scholar
  31. 31.
    Nelson, G., Oppen, D.C.: Simplification by Cooperating Decision Procedures. ACM Trans. on Programming Languages and Systems 1(2), 245–257 (1979)zbMATHCrossRefGoogle Scholar
  32. 32.
    Nieuwenhuis, R., Oliveras, A.: Proof-Producing Congruence Closure. In: Giesl, J. (ed.) RTA 2005. LNCS, vol. 3467, Springer, Heidelberg (2005)Google Scholar
  33. 33.
    Nieuwenhuis, R., Oliveras, A., Tinelli, C.: Solving SAT and SAT Modulo Theories: from an Abstract Davis-Putnam-Logemann-Loveland Procedure to DPLL(T). Journal of the ACM 53(6), 937–977 (2006)CrossRefMathSciNetGoogle Scholar
  34. 34.
    Oppen, D.C.: Complexity, convexity and combinations of theories. Theoretical Computer Science 12, 291–302 (1980)zbMATHCrossRefMathSciNetGoogle Scholar
  35. 35.
    Patel-Schneider, P.F.: DLP System Description. In: Proc. Int. Workshop on Description Logics. In: DL 1998 (1998)Google Scholar
  36. 36.
    Sebastiani, R.: Lazy Satisfiability Modulo Theories. Technical Report dtr-07-022, DIT, University of Trento, Italy (April 2007), Available at
  37. 37.
    Sebastiani, R., Villafiorita, A.: SAT-based decision procedures for normal modal logics: a theoretical framework. In: Giunchiglia, F. (ed.) AIMSA 1998. LNCS (LNAI), vol. 1480, Springer, Heidelberg (1998)CrossRefGoogle Scholar
  38. 38.
    Shostak, R.E.: Deciding Combinations of Theories. Journal of the ACM 31, 1–12 (1984)zbMATHCrossRefMathSciNetGoogle Scholar
  39. 39.
    Smullyan, R.M.: First-Order Logic. Springer, Heidelberg (1968)zbMATHGoogle Scholar
  40. 40.
    Tinelli, C.: A DPLL-based Calculus for Ground Satisfiability Modulo Theories. In: Flesca, S., Greco, S., Leone, N., Ianni, G. (eds.) JELIA 2002. LNCS (LNAI), vol. 2424, pp. 308–319. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  41. 41.
    Wolfman, S., Weld, D.: The LPSAT Engine & its Application to Resource Planning. In: Proc. IJCAI (1999)Google Scholar
  42. 42.
    Zhang, L., Madigan, C.F., Moskewicz, M.W., Malik, S.: Efficient conflict driven learning in boolean satisfiability solver. In: ICCAD, pp. 279–285 (2001)Google Scholar
  43. 43.
    Zhang, L., Malik, S.: The quest for efficient boolean satisfiability solvers. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, pp. 17–36. Springer, Heidelberg (2002)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Roberto Sebastiani
    • 1
  1. 1.DIT, Università di Trento, via Sommarive 14, I-38050 Povo, TrentoItaly

Personalised recommendations