Applying Rewriting Techniques to the Verification of Erlang Processes

  • Authors:
  • Thomas Arts;Jürgen Giesl

  • Affiliations:
  • -;-

  • Venue:
  • CSL '99 Proceedings of the 13th International Workshop and 8th Annual Conference of the EACSL on Computer Science Logic
  • Year:
  • 1999

Quantified Score

Hi-index 0.00

Visualization

Abstract

Erlang is a functional programming language developed by Ericsson Telecom which is particularly well suited for implementing concurrent 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 termination 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 termination of even more (C)TRSs automatically.