Skip to main content

Termination of Context-Sensitive Rewriting with Built-In Numbers and Collection Data Structures

  • Conference paper
Functional and Constraint Logic Programming (WFLP 2009)

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

Included in the following conference series:

Abstract

Context-sensitive rewriting is a restriction of rewriting that can be used to elegantly model declarative specification and programming languages such as Maude. Furthermore, it can be used to model lazy evaluation in functional languages such as Haskell. Building upon previous work on constrained equational rewrite systems (CERSs), an expressive and elegant class of rewrite systems that contains built-in numbers and supports the use of collection data structures such as sets or multisets, context-sensitive rewriting with CERSs is investigated in this paper. This integration results in a natural way for specifying algorithms in the rewriting framework. In order to automatically prove termination of this kind of rewriting, a dependency pair framework for context-sensitive rewriting with CERSs is developed, resulting in a flexible termination method that can be automated effectively. Several powerful termination techniques are developed within this framework. An implementation in the termination prover AProVE has been successfully evaluated on a large collection of examples, including several examples obtained from functional Maude modules.

Partially supported by NSF grants CCF-0541315 and CNS-0831462.

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. Alarcón, B., Emmes, F., Fuhs, C., Giesl, J., Gutiérrez, R., Lucas, S., Schneider-Kamp, P., Thiemann, R.: Improving context-sensitive dependency pairs. In: Cervesato, I., Veith, H., Voronkov, A. (eds.) LPAR 2008. LNCS (LNAI), vol. 5330, pp. 636–651. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  2. Alarcón, B., Gutiérrez, R., Lucas, S.: Context-sensitive dependency pairs. In: Arun-Kumar, S., Garg, N. (eds.) FSTTCS 2006. LNCS, vol. 4337, pp. 297–308. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  3. Alarcón, B., Gutiérrez, R., Lucas, S.: Improving the context-sensitive dependency graph. ENTCS 188, 91–103 (2007)

    Google Scholar 

  4. Arts, T., Giesl, J.: Termination of term rewriting using dependency pairs. TCS 236(1-2), 133–178 (2000)

    Article  MATH  MathSciNet  Google Scholar 

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

    Google Scholar 

  6. Bachmair, L., Dershowitz, N.: Completion for rewriting modulo a congruence. TCS 67(2-3), 173–201 (1989)

    Article  MATH  MathSciNet  Google Scholar 

  7. Blanqui, F., Hardin, T., Weis, P.: On the implementation of construction functions for non-free concrete data types. In: De Nicola, R. (ed.) ESOP 2007. LNCS, vol. 4421, pp. 95–109. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  8. Borralleras, C., Lucas, S., Rubio, A.: Recursive path orderings can be context-sensitive. In: Voronkov, A. (ed.) CADE 2002. LNCS (LNAI), vol. 2392, pp. 314–331. Springer, Heidelberg (2002)

    Google Scholar 

  9. Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí-Oliet, N., Meseguer, J., Talcott, C.: All About Maude - A High-Performance Logical Framework. LNCS, vol. 4350. Springer, Heidelberg (2007)

    MATH  Google Scholar 

  10. Falke, S.: Term Rewriting with Built-In Numbers and Collection Data Structures. PhD thesis, University of New Mexico, Albuquerque, NM, USA (2009)

    Google Scholar 

  11. Falke, S., Kapur, D.: Dependency pairs for rewriting with non-free constructors. In: Pfenning, F. (ed.) CADE 2007. LNCS (LNAI), vol. 4603, pp. 426–442. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  12. Falke, S., Kapur, D.: Dependency pairs for rewriting with built-in numbers and semantic data structures. In: Voronkov, A. (ed.) RTA 2008. LNCS, vol. 5117, pp. 94–109. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  13. Falke, S., Kapur, D.: A term rewriting approach to the automated termination analysis of imperative programs. In: Schmidt, R.A. (ed.) Automated Deduction – CADE-22. LNCS, vol. 5663, pp. 277–293. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  14. Falke, S., Kapur, D.: Termination of context-sensitive rewriting with built-in numbers and collection data structures. Technical Report TR-CS-2009-01 (2009)

    Google Scholar 

  15. Ferreira, M.C.F., Ribeiro, A.L.: Context-sensitive AC-rewriting. In: Narendran, P., Rusinowitch, M. (eds.) RTA 1999. LNCS, vol. 1631, pp. 286–300. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  16. Fuhs, C., Giesl, J., Plücker, M., Schneider-Kamp, P., Falke, S.: Proving termination of integer term rewriting. In: Treinen, R. (ed.) Rewriting Techniques and Applications. LNCS, vol. 5595, pp. 32–47. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  17. Giesl, J., Middeldorp, A.: Transformation techniques for context-sensitive rewrite systems. JFP 14(4), 379–427 (2004)

    Article  MATH  MathSciNet  Google Scholar 

  18. 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 

  19. Giesl, J., Thiemann, R., Schneider-Kamp, P.: The dependency pair framework. In: Baader, F., Voronkov, A. (eds.) LPAR 2004. LNCS (LNAI), vol. 3452, pp. 301–331. Springer, Heidelberg (2005)

    Google Scholar 

  20. Gutiérrez, R., Lucas, S., Urbain, X.: Usable rules for context-sensitive rewrite systems. In: Voronkov, A. (ed.) RTA 2008. LNCS, vol. 5117, pp. 126–141. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  21. Hirokawa, N., Middeldorp, A.: Tyrolean termination tool: Techniques and features. IC 205(4), 474–511 (2007)

    MATH  MathSciNet  Google Scholar 

  22. Hong, H., Jakuš, D.: Testing positiveness of polynomials. JAR 21, 23–38 (1998)

    Article  Google Scholar 

  23. Jouannaud, J.-P., Kirchner, H.: Completion of a set of rules modulo a set of equations. SIAM J. Comput. 15(4), 1155–1194 (1986)

    Article  MATH  MathSciNet  Google Scholar 

  24. Kusakari, K., Nakamura, M., Toyama, Y.: Argument filtering transformation. In: Nadathur, G. (ed.) PPDP 1999. LNCS, vol. 1702, pp. 47–61. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  25. Lucas, S.: Context-sensitive computations in functional and functional logic programs. JFLP 1998(1) (1998)

    Google Scholar 

  26. Lucas, S.: Termination of rewriting with strategy annotations. In: Nieuwenhuis, R., Voronkov, A. (eds.) LPAR 2001. LNCS (LNAI), vol. 2250, pp. 669–684. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  27. Lucas, S.: Context-sensitive rewriting strategies. IC 178(1), 294–343 (2002)

    MATH  MathSciNet  Google Scholar 

  28. Lucas, S.: Lazy rewriting and context-sensitive rewriting. ENTCS 64, 234–254 (2002)

    Google Scholar 

  29. Lucas, S.: Polynomials for proving termination of context-sensitive rewriting. In: Walukiewicz, I. (ed.) FOSSACS 2004. LNCS, vol. 2987, pp. 318–332. Springer, Heidelberg (2004)

    Google Scholar 

  30. Lucas, S.: Proving termination of context-sensitive rewriting by transformation. IC 204(12), 1782–1846 (2006)

    MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Falke, S., Kapur, D. (2010). Termination of Context-Sensitive Rewriting with Built-In Numbers and Collection Data Structures. In: Escobar, S. (eds) Functional and Constraint Logic Programming. WFLP 2009. Lecture Notes in Computer Science, vol 5979. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-11999-6_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-11999-6_4

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-11998-9

  • Online ISBN: 978-3-642-11999-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics