Skip to main content

Applying Rewriting Techniques to the Verification of Erlang Processes

  • Conference paper
  • First Online:
Computer Science Logic (CSL 1999)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1683))

Included in the following conference series:

Abstract

Erlang is a functional programming language developed by Ericsson Telecom which is particularly well suited for implementing con- current processes. In this paper we show how methods from the area of term rewriting are presently used at Ericsson. To verify properties of processes, such a property is transformed into a termination problem of a conditional term rewriting system (CTRS). Subsequently, this termi- nation proof can be performed automatically using dependency pairs. The paper illustrates how the dependency pair technique can be applied for termination proofs of conditional TRSs. Secondly, we present two refinements of this technique, viz. narrowing and rewriting dependency pairs. These refinements are not only of use in the industrial application sketched in this paper, but they are generally applicable to arbitrary (C)TRSs. Thus, in this way dependency pairs can be used to prove ter- mination of even more (C)TRSs automatically.

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. T. Arts & M. Dam, Verifying a distributed database lookup manager written in Erlang. In Proc. FM’ 99, Toulouse, France, 1999.

    Google Scholar 

  2. T. Arts & J. Giesl, Automatically proving termination where simplification orderings fail. TAPSOFT’ 97, LNCS 1214, pp. 261–273, Lille, France, 1997.

    Google Scholar 

  3. T. Arts & J. Giesl, Proving innermost normalisation automatically. In Proc. RTA-97, LNCS 1232, pp. 157–172, Sitges, Spain, 1997.

    Google Scholar 

  4. T. Arts & J. Giesl, Modularity of termination using dependency pairs. In Proc. RTA-98, LNCS 1232, pp. 226–240, Tsukuba, Japan, 1998.

    Google Scholar 

  5. T. Arts & J. Giesl, Termination of term rewriting using dependency pairs. TCS. To appear. Preliminary version under http://www.inferenzsysteme.informatik.tu-darmstadt.de/~reports/notes/ibn-97–46.ps

  6. F. Baader & T. Nipkow, Term Rewriting and All That. Cambridge University Press, 1998.

    Google Scholar 

  7. J. A. Bergstra & J. W. Klop, Conditional rewrite rules: confluence and termination. JCSS, 32:323–362, 1986.

    MathSciNet  MATH  Google Scholar 

  8. H. Bertling & H. Ganzinger, Completion-time optimization of rewrite-time goal solving. Proc. RTA-89, LNCS 355, pp. 45–58, Chapel Hill, USA, 1989.

    Google Scholar 

  9. N. Dershowitz & D. A. Plaisted, Equational programming. Machine Intelligence, 11:21–56, Oxford University Press, 1987.

    MATH  Google Scholar 

  10. N. Dershowitz, Termination of rewriting. JSC, 3:69–116, 1987.

    MathSciNet  MATH  Google Scholar 

  11. N. Dershowitz, M. Okada, & G. Sivakumar, Canonical conditional rewrite systems. In Proc. CADE-9, LNCS 310, pp. 538–549, Argonne, USA, 1988.

    Google Scholar 

  12. N. Dershowitz & M. Okada, A rationale for conditional equational programming. TCS, 75:111–138, 1990.

    Article  MathSciNet  Google Scholar 

  13. N. Dershowitz & J.-P. Jouannaud, Rewrite Systems. In Handbook of Theoretical Computer Science, Vol. B, pp. 243–320, Elsevier, 1990.

    Google Scholar 

  14. N. Dershowitz & C. Hoot, Natural termination. TCS, 142(2):179–207, 1995.

    Article  MathSciNet  Google Scholar 

  15. M. J. Fay, First-order unification in an equational theory. Proc. 4th Workshop on Automated Deduction, pp. 161–167, Austin, TX, Academic Press, 1979.

    Google Scholar 

  16. E. Giovanetti & C. Moiso, Notes on the eliminations of conditions. In Proc. CTRS’ 87, LNCS 308, pp. 91–97, Orsay, France, 1987.

    Google Scholar 

  17. B. Gramlich, On termination and confluence of conditional rewrite systems. In Proc. CTRS’ 94, LNCS 968, pp. 166–185, Jerusalem, Israel, 1994.

    Google Scholar 

  18. B. Gramlich, Abstract relations between restricted termination and confluence properties of rewrite systems. Fundamenta Informaticae, 24:3–23, 1995.

    Article  MathSciNet  Google Scholar 

  19. B. Gramlich, Termination and confluence properties of structured rewrite systems. PhD Thesis, Universität Kaiserslautern, Germany, 1996.

    MATH  Google Scholar 

  20. B. Gramlich, On termination and confluence properties of disjoint and constructor-sharing conditional rewrite systems. TCS, 165:97–131, 1996.

    Article  MathSciNet  Google Scholar 

  21. M. Hanus, The integration of functions into logic programming: From theory to practice. Journal of Logic Programming, 19,20:583–628, 1994.

    Article  MathSciNet  Google Scholar 

  22. Patent pending, Ericsson Telecom AB, 1999.

    Google Scholar 

  23. S. Kaplan, Conditional rewrite rules. TCS, 33:175–193, 1984.

    Article  MathSciNet  Google Scholar 

  24. M. Marchiori, Unravelings and Ultra-properties, Proc. ALP’ 96, LNCS 1139, pp. 107–121, Aachen, Germany, 1996.

    Google Scholar 

  25. A. Middeldorp, Modular properties of conditional term rewriting systems. Information and Computation, 104:110–158, 1993.

    Article  MathSciNet  Google Scholar 

  26. J. Steinbach, Simplification orderings: history of results. Fundamenta Informaticae, 24:47–87, 1995.

    Article  MathSciNet  Google Scholar 

  27. T. Suzuki, A. Middeldorp, & T. Ida, Level-confluence of conditional rewrite systems with extra variables in right-hand sides. Proc. RTA-95, LNCS 914, pp. 179–193, Kaiserslautern, Germany, 1995.

    Google Scholar 

  28. C.-P. Wirth & B. Gramlich, A constructor-based approach for positive/negative conditional equational specifications. JSC, 17:51–90, 1994.

    MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Arts, T., Giesl, J. (1999). Applying Rewriting Techniques to the Verification of Erlang Processes. In: Flum, J., Rodriguez-Artalejo, M. (eds) Computer Science Logic. CSL 1999. Lecture Notes in Computer Science, vol 1683. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48168-0_8

Download citation

  • DOI: https://doi.org/10.1007/3-540-48168-0_8

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics