Skip to main content

Engineering DPLL(T) + Saturation

  • Conference paper
Automated Reasoning (IJCAR 2008)

Part of the book series: Lecture Notes in Computer Science ((LNAI,volume 5195))

Included in the following conference series:

Abstract

Satisfiability Modulo Theories (SMT) solvers have proven highly scalable, efficient and suitable for integrated theory reasoning. The most efficient SMT solvers rely on refutationally incomplete methods for incorporating quantifier reasoning. We describe a calculus and a system that tightly integrates Superposition and DPLL(T). In the calculus, all non-unit ground clauses are delegated to the DPLL(T) core. The integration is tight, dependencies on case splits are tracked as hypotheses in the saturation engine. The hypotheses are discharged during backtracking. The combination is refutationally complete for first-order logic, and its implementation is competitive in performance with E-matching based SMT solvers on problems they are good at.

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. Nieuwenhuis, R., Oliveras, A., Tinelli, C.: Solving SAT and SAT Modulo Theories: From an abstract Davis–Putnam–Logemann–Loveland procedure to DPLL(T). J. ACM 53, 937–977 (2006)

    Article  MathSciNet  Google Scholar 

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

    Article  MathSciNet  Google Scholar 

  3. Ge, Y., Barrett, C., Tinelli, C.: Solving quantified verification conditions using satisfiability modulo theories. In: Pfenning, F. (ed.) CADE 2007. LNCS (LNAI), vol. 4603. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  4. Moskal, M., Lopuszanski, J., Kiniry, J.R.: E-matching for fun and profit. In: Satisfiability Modulo Theories Workshop (2007)

    Google Scholar 

  5. 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, pp. 81–94. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  6. de Moura, L., Bjørner, N.: Z3: An Efficient SMT Solver. In: TACAS 2008 (2008)

    Google Scholar 

  7. Denney, E., Fischer, B., Schumann, J.: Using automated theorem provers to certify auto-generated aerospace software. In: Basin, D., Rusinowitch, M. (eds.) IJCAR 2004. LNCS (LNAI), vol. 3097. Springer, Heidelberg (2004)

    Google Scholar 

  8. Prevosto, V., Waldmann, U.: SPASS+T. In: ESCoR Workshop (2006)

    Google Scholar 

  9. Deharbe, D., Ranise, S.: Satisfiability solving for software verification. International Journal on Software Tools Technology Transfer (to appear, 2008)

    Google Scholar 

  10. Bachmair, L., Ganzinger, H.: Resolution theorem proving. In: Handbook of Automated Reasoning, pp. 19–99. MIT Press, Cambridge (2001)

    Chapter  Google Scholar 

  11. Nieuwenhuis, R., Rubio, A.: Paramodulation-based theorem proving. In: Robinson, A., Voronkov, A. (eds.) Handbook of Automated Reasoning. MIT Press, Cambridge (2001)

    Google Scholar 

  12. de Moura, L., Bjørner, N.: Relevancy Propagation. Technical Report MSR-TR-2007-140, Microsoft Research (2007)

    Google Scholar 

  13. Graf, P.: Substitution tree indexing. In: Hsiang, J. (ed.) RTA 1995. LNCS, vol. 914. Springer, Heidelberg (1995)

    Google Scholar 

  14. Schulz, S.: Simple and Efficient Clause Subsumption with Feature Vector Indexing. In: ESFOR Workshop (2004)

    Google Scholar 

  15. Baumgartner, P., Fuchs, A., Tinelli, C.: Darwin: A theorem prover for the model evolution calculus. In: ESFOR Workshop (2004)

    Google Scholar 

  16. Gallier, J., Narendran, P., Plaisted, D., Raatz, S., Snyder, W.: An algorithm for finding canonical sets of ground rewrite rules in polynomial time. J. ACM 40 (1993)

    Google Scholar 

  17. Barnett, M., Leino, K.R.M., Schulte, W.: The Spec\(\sharp\) programming system: An overview. In: Barthe, G., Burdy, L., Huisman, M., Lanet, J.-L., Muntean, T. (eds.) CASSIS 2004. LNCS, vol. 3362, pp. 49–69. Springer, Heidelberg (2005)

    Google Scholar 

  18. Schulz, S.: E - a brainiac theorem prover. AI Commun 15, 111–126 (2002)

    MATH  Google Scholar 

  19. Weidenbach, C., Brahm, U., Hillenbrand, T., Keen, E., Theobalt, C., Topic, D.: SPASS version 2.0. In: Voronkov, A. (ed.) CADE 2002. LNCS (LNAI), vol. 2392, Springer, Heidelberg (2002)

    Google Scholar 

  20. Lynch, C.: SMELS: Satisfiability Modulo Equality with Lazy Superposition. The Dagsthul Seminar on Deduction and Decision Procedures (2007)

    Google Scholar 

  21. Korovin, K., Voronkov, A.: Integrating linear arithmetic into superposition calculus. In: Duparc, J., Henzinger, T.A. (eds.) CSL 2007. LNCS, vol. 4646, pp. 223–237. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  22. Fietzke, A.: Labelled splitting. Master’s thesis, Saarland University (2007)

    Google Scholar 

  23. Riazanov, A., Voronkov, A.: Splitting without backtracking. In: IJCAI (2001)

    Google Scholar 

  24. Armando, A., Bonacina, M.P., Ranise, S., Schulz, S.: New results on rewrite-based satisfiability procedures. ACM Transactions on Computational Logic (to appear)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Alessandro Armando Peter Baumgartner Gilles Dowek

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

de Moura, L., Bjørner, N. (2008). Engineering DPLL(T) + Saturation. In: Armando, A., Baumgartner, P., Dowek, G. (eds) Automated Reasoning. IJCAR 2008. Lecture Notes in Computer Science(), vol 5195. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-71070-7_40

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-71070-7_40

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-71069-1

  • Online ISBN: 978-3-540-71070-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics