Skip to main content

Proving Termination with (Boolean) Satisfaction

  • Conference paper
Logic-Based Program Synthesis and Transformation (LOPSTR 2007)

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

Abstract

At some point there was the Davis-Putnam-Logemann-Loveland (DPLL) algorithm [6]. Forty five years later, research on Boolean satisfiability (SAT) is still ceaselessly generating even better SAT solvers capable of handling even larger SAT instances. Remarkably, the majority of these tools still bear the hallmark of the DPLL algorithm. In sync with the availability of progressively stronger SAT solvers is an accumulating number of applications which demonstrate that real world problems can often be solved by encoding them into SAT. When successful, this circumvents the need to redevelop complex search algorithms from scratch.

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. Arts, T., Giesl, J.: Termination of term rewriting using dependency pairs. Theoretical Computer Science 236(1-2), 133–178 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  2. Codish, M., Lagoon, V., Schachte, P., Stuckey, P.J.: Size-Change Termination Analysis in k-Bits. In: Sestoft, P. (ed.) ESOP 2006 and ETAPS 2006. LNCS, vol. 3924, pp. 230–245. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  3. Stuckey, P.J., Codish, M., Lagoon, V.: Solving Partial Order Constraints for LPO Termination. In: Pfenning, F. (ed.) RTA 2006. LNCS, vol. 4098, pp. 4–18. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  4. Codish, M., Lagoon, V., Stuckey, P.J.: Logic programming with satisfiability. The Journal of Theory and Practice of Logic Programming 8(1) (2008), http://arxiv.org/pdf/cs.PL/0702072

  5. Codish, M., Schneider-Kamp, P., Lagoon, V., Thiemann, R., Giesl, J.: SAT Solving for Argument Filterings. In: Hermann, M., Voronkov, A. (eds.) LPAR 2006. LNCS (LNAI), vol. 4246, pp. 30–44. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  6. Davis, M., Logemann, G., Loveland, D.W.: A machine program for theorem-proving. Commun. ACM 5(7), 394–397 (1962)

    Article  MathSciNet  MATH  Google Scholar 

  7. Dershowitz, N.: Orderings for term-rewriting systems. Theoretical Computer Science 17, 279–301 (1982)

    Article  MathSciNet  MATH  Google Scholar 

  8. Dershowitz, N.: Termination of rewriting. Journal of Symbolic Computation 3(1/2), 69–116 (1987)

    Article  MathSciNet  MATH  Google Scholar 

  9. Waldmann, J., Zantema, H., Endrullis, J.: Matrix Interpretations for Proving Termination of Term Rewriting. In: Furbach, U., Shankar, N. (eds.) IJCAR 2006. LNCS (LNAI), vol. 4130, pp. 574–588. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  10. Fuhs, C., Giesl, J., Middeldorp, A., Schneider-Kamp, P., Thiemann, R., Zankl, H.: SAT solving for termination analysis with polynomial interpretations. In: Marques-Silva, J., Sakallah, K.A. (eds.) SAT 2007. LNCS, vol. 4501, pp. 340–354. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  11. Giesl, J., Schneider-Kamp, P., Thiemann, R.: AProVE 1.2. In: Furbach, U., Shankar, N. (eds.) IJCAR 2006. LNCS (LNAI), vol. 4130, pp. 281–286. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  12. Giesl, J., Thiemann, R., Schneider-Kamp, P., Falke, S.: Automated Termination Proofs with AProVE. In: van Oostrom, V. (ed.) RTA 2004. LNCS, vol. 3091, pp. 210–220. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  13. Middeldorp, A., Hirokawa, N.: Tyrolean Termination Tool. In: Giesl, J. (ed.) RTA 2005. LNCS, vol. 3467, pp. 175–184. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  14. Waldmann, J., Hofbauer, D.: Termination of String Rewriting with Matrix Interpretations. In: Pfenning, F. (ed.) RTA 2006. LNCS, vol. 4098, pp. 328–342. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  15. Kamin, S., Levy, J.-J.: Two generalizations of the recursive path ordering. In: Department of Computer Science, University of Illinois, Urbana, IL (viewed December 2005) (1980), http://www.ens-lyon.fr/LIP/REWRITING/OLD_PUBLICATIONS_ON_TERMINATION

  16. Krishnamoorthy, M., Narendran, P.: On recursive path ordering. Theoretical Computer Science 40, 323–328 (1985)

    Article  MathSciNet  MATH  Google Scholar 

  17. Kurihara, M., Kondo, H.: Efficient BDD Encodings for Partial Order Constraints with Application to Expert Systems in Software Verification. In: Orchard, B., Yang, C., Ali, M. (eds.) IEA/AIE 2004. LNCS (LNAI), vol. 3029, pp. 827–837. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  18. Lee, C.S., Jones, N.D., Ben-Amram, A.M.: The size-change principle for program termination. ACM SIGPLAN Notices, Proceedings of POPL 2001 36(3), 81–92 (2001)

    MATH  Google Scholar 

  19. Marché, C., Zantema, H.: The Termination Competition. In: Baader, F. (ed.) RTA 2007. LNCS, vol. 4533, pp. 303–313. Springer, Heidelberg (2007) (To appear)

    Chapter  Google Scholar 

  20. MiniSAT solver (viewed December 2005), http://www.cs.chalmers.se/Cs/Research/FormalMethods/MiniSat .

  21. SAT4J satisfiability library for Java, http://www.sat4j.org

  22. Schneider-Kamp, P., Thiemann, R., Annov, E., Codish, M., Giesl, J.: Proving Termination Using Recursive Path Orders and SAT Solving. In: Konev, B., Wolter, F. (eds.) FroCos 2007. LNCS (LNAI), vol. 4720, pp. 267–282. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  23. Talupur, M., Sinha, N., Strichman, O., Pnueli, A.: Range allocation for separation logic. In: Alur, R., Peled, D.A. (eds.) CAV 2004, vol. 3114, pp. 148–161. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  24. The termination problem data base, http://www.lri.fr/~marche/tpdb/

  25. Wielemaker, J.: An overview of the SWI-Prolog programming environment. In: Mesnard, F., Serebenik, A. (eds.) Proceedings of the 13th International Workshop on Logic Programming Environments, Katholieke Universiteit Leuven. CW 371, (December 2003) pp. 1–16. (2003)

    Google Scholar 

  26. Zankl, H., Middeldorp, A.: Satisfying KBO constraints. In: Baader, F. (ed.) RTA 2007. LNCS, vol. 4533, pp. 389–403. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Codish, M. (2008). Proving Termination with (Boolean) Satisfaction. In: King, A. (eds) Logic-Based Program Synthesis and Transformation. LOPSTR 2007. Lecture Notes in Computer Science, vol 4915. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-78769-3_1

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-78769-3_1

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-78768-6

  • Online ISBN: 978-3-540-78769-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics