Skip to main content
Log in

SAT Solving for Termination Proofs with Recursive Path Orders and Dependency Pairs

  • Published:
Journal of Automated Reasoning Aims and scope Submit manuscript

Abstract

This paper introduces a propositional encoding for recursive path orders (RPO), in connection with dependency pairs. Hence, we capture in a uniform setting all common instances of RPO, i.e., lexicographic path orders (LPO), multiset path orders (MPO), and lexicographic path orders with status (LPOS). This facilitates the application of SAT solvers for termination analysis of term rewrite systems (TRSs). We address four main inter-related issues and show how to encode them as satisfiability problems of propositional formulas that can be efficiently handled by SAT solving: (A) the lexicographic comparison w.r.t. a permutation of the arguments; (B) the multiset extension of a base order; (C) the combined search for a path order together with an argument filter to orient a set of inequalities; and (D) how the choice of the argument filter influences the set of inequalities that have to be oriented (so-called usable rules). We have implemented our contributions in the termination prover AProVE. Extensive experiments show that by our encoding and the application of SAT solvers one obtains speedups in orders of magnitude as well as increased termination proving power.

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.

Similar content being viewed by others

References

  1. Arts, T., Giesl, J.: Termination of term rewriting using dependency pairs. Theor. Comp. Sci. 236(1–2), 133–178 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  2. Audemard, G., Simon, L.: glucose. http://www.lri.fr/~simon/glucose/

  3. Baader, F., Nipkow, T.: Term Rewriting and All That. Cambridge University Press, Cambridge (1998)

    Google Scholar 

  4. Ben-Amram, A.M., Codish, M.: A SAT-based approach to size change termination with global ranking functions. In: TACAS ’08. LNCS 4963, pp. 218–232 (2007)

  5. Ben Cherifa, A., Lescanne, P.: Termination of rewriting systems by polynomial interpretations and its implementation. Sci. Comput. Program. 9(2), 137–159 (1987)

    Article  MathSciNet  MATH  Google Scholar 

  6. Biere, A.: PrecoSAT. http://fmv.jku.at/precosat/

  7. Bofill, M., Busquets, D., Villaret, M.: A declarative approach to robust weighted max-SAT. In: PPDP ’10, pp. 67–76. ACM (2010)

  8. Borralleras, C., Lucas, S., Navarro-Marset, R., Rodríguez-Carbonell, E., Rubio, A.: Solving non-linear polynomial arithmetic via SAT modulo linear arithmetic. In: CADE ’09. LNAI 5663, pp. 294–305 (2009)

  9. Codish, M., Schneider-Kamp, P., Lagoon, V., Thiemann, R., Giesl, J.: SAT solving for argument filterings. In: LPAR ’06. LNAI 4246, pp. 30–44 (2006)

  10. Codish, M., Lagoon, V., Stuckey, P.J.: Solving partial order constraints for LPO termination. Journal on Satisfiability, Boolean Modeling and Computation 5, 193–215 (2008)

    MathSciNet  Google Scholar 

  11. Codish, M., Genaim, S., Stuckey, P.J.: A declarative encoding of telecommunications feature subscription in SAT. In: PPDP ’09, pp. 255–266. ACM (2009)

  12. Dershowitz, N.: Orderings for term-rewriting systems. Theor. Comp. Sci. 17, 279–301 (1982)

    Article  MathSciNet  MATH  Google Scholar 

  13. Eén, N., Sörensson, N.: MiniSAT. http://minisat.se/

  14. Eén, N., Sörensson, N.: Translating pseudo-Boolean constraints into SAT. Journal on Satifiability, Boolean Modeling and Computation 2(1–4), 1–26 (2006)

    MATH  Google Scholar 

  15. Endrullis, J., Waldmann, J., Zantema, H.: Matrix interpretations for proving termination of term rewriting. J. Autom. Reason. 40(2–3), 195–220 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  16. Feydy, T., Schutt, A., Stuckey, P.J.: Global difference constraint propagation for finite domain solvers. In: PPDP ’08, pp. 226–235. ACM (2008)

  17. Fuhs, C., Giesl, J., Middeldorp, A., Schneider-Kamp, P., Thiemann, R., Zankl, H.: SAT solving for termination analysis with polynomial interpretations. In: SAT ’07. LNCS 4501, pp. 340–354 (2007)

  18. Fuhs, C., Giesl, J., Middeldorp, A., Schneider-Kamp, P., Thiemann, R., Zankl, H.: Maximal termination. In: RTA ’08. LNCS 5117, pp. 110–125 (2008)

  19. Fuhs, C., Navarro-Marset, R., Otto, C., Giesl, J., Lucas, S., Schneider-Kamp, P.: Search techniques for rational polynomial orders. In: AISC ’08. LNAI 5144, pp. 109–124 (2008)

  20. Geser, A.: Relative Termination. PhD Thesis, University of Passau, Germany (1990)

  21. Giesl, J., Thiemann, R., Schneider-Kamp, P.: Proving and disproving termination of higher-order functions. In: FroCoS ’05. LNAI 3717, pp. 216–231 (2005)

  22. Giesl, J., Thiemann, R., Schneider-Kamp, P.: The dependency pair framework: combining techniques for automated termination proofs. In: LPAR ’04. LNAI 3452, pp. 301–331 (2005)

  23. Giesl, J., Schneider-Kamp, P., Thiemann, R.: AProVE 1.2: automatic termination proofs in the dependency pair framework. In: IJCAR ’06. LNAI 4130, pp. 281–286 (2006)

  24. Giesl, J., Thiemann, R., Schneider-Kamp, P., Falke, S.: Mechanizing and improving dependency pairs. J. Autom. Reason. 37(3), 155–203 (2006)

    Article  MathSciNet  MATH  Google Scholar 

  25. Gotlieb, A.: TCAS software verification using constraint programming. Knowl. Eng. Rev. (2010, to appear)

  26. Hirokawa, N., Middeldorp, A.: Automating the dependency pair method. Inf. Comput. 199(1–2), 172–199 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  27. Hirokawa, N., Middeldorp, A.: Tyrolean termination tool: techniques and features. Inf. Comput. 205(4), 474–511 (2007)

    Article  MathSciNet  MATH  Google Scholar 

  28. Jefferson, C., Moore, N.C.A., Nightingale, P., Petrie, K.E.: Implementing logical connectives in constraint programming. Artif. Intell. 174, 1407–1429 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  29. Kamin, S., Lévy, J.J.: Two Generalizations of the Recursive Path Ordering. Technical Report, University of Illinois, IL, USA (1980)

  30. Koprowski, A., Middeldorp, A.: Predictive labeling with dependency pairs using SAT. In: CADE ’07. LNAI 4603, pp. 410–425 (2007)

  31. Krishnamoorthy, M.S., Narendran, P.: On recursive path ordering. Theor. Comp. Sci. 40, 323–328 (1985)

    Article  MathSciNet  MATH  Google Scholar 

  32. Kurihara, M., Kondo, H.: Efficient BDD encodings for partial order constraints with application to expert systems in software verification. In: IEA/AIE ’04. LNCS 3029, pp. 827–837 (2004)

  33. Kusakari, K., Nakamura, M., Toyama, Y.: Argument filtering transformation. In: PPDP ’99. LNCS 1702, pp. 47–61 (1999)

  34. Lankford, D.: On Proving Term Rewriting Systems are Noetherian. Technical Report MTP-3, Louisiana Technical University, Ruston, LA, USA (1979)

  35. Le Berre, D., Parrain, A.: SAT4J. http://www.sat4j.org

  36. Lescanne, P.: Computer experiments with the REVE term rewriting system generator. In: POPL ’83, pp. 99–108. ACM (1983)

  37. Lescuyer, S., Conchon, S.: Improving Coq propositional reasoning using a lazy CNF conversion scheme. In: FroCoS ’09. LNCS 5749, pp. 287–303 (2009)

  38. Manna, Z., Ness, S.: On the termination of Markov algorithms. In: 3rd Hawaii International Conference on System Science, pp. 789–792 (1970)

  39. Mariën, M., Wittocx, J., Denecker, M., Bruynooghe, M.: SAT(ID): Satisfiability of propositional logic extended with inductive definitions. In: SAT ’08. LNCS 4996, pp. 211–224 (2008)

  40. Schneider-Kamp, P., Thiemann, R., Annov, E., Codish, M., Giesl, J.: Proving termination using recursive path orders and SAT solving. In: FroCoS ’07. LNAI 4720, pp. 267–282 (2007)

  41. Tamura, N., Taga, A., Kitagawa, S., Banbara, M.: Compiling finite linear CSP into SAT. Constraints 14(2), 254–272 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  42. Tseitin, G.: On the complexity of derivation in propositional calculus. In: Studies in Constructive Mathematics and Mathematical Logic, pp. 115–125, 1968. Reprinted in J. Siekmann and G. Wrightson (eds.), Automation of Reasoning, 2:466-483 (1983)

  43. Zankl, H., Hirokawa, N., Middeldorp, A.: Constraints for argument filterings. In: SOFSEM ’07. LNCS 4362, pp. 579–590 (2007)

  44. Zankl, H., Hirokawa, N., Middeldorp, A.: KBO orientability. J. Autom. Reason. 43(2), 173–201 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  45. Zankl, H., Middeldorp, A.: Increasing interpretations. Ann. Math. Artif. Intell. 56(1), 87–108 (2009)

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jürgen Giesl.

Additional information

Supported by the G.I.F. under grant 966-116.6 and by the DFG under grant GI 274/5-3.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Codish, M., Giesl, J., Schneider-Kamp, P. et al. SAT Solving for Termination Proofs with Recursive Path Orders and Dependency Pairs. J Autom Reasoning 49, 53–93 (2012). https://doi.org/10.1007/s10817-010-9211-0

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10817-010-9211-0

Keywords

Navigation