Architecture for conditional term rewriting

  • Tony Rush
  • Derek Coleman
Part 2 System Presentations
Part of the Lecture Notes in Computer Science book series (LNCS, volume 308)


An architecture is presented for conditional term rewriting systems, which has been used to implement an interpreter for the Axis algebraic specification language — developed at the above laboratories. The design has been specified in Axis itself. The interpreter admits commutative, associative and associative-commutative operators in addition to those whose theories are defined by rewrite rules. The pattern matching algorithm is partitioned by equational theories, and additional theories may be added with no change to existing ones.

A method has been developed for incorporating ‘built-in’ sorts and operations, which is completely transparent to the user of the system. This gives a significant increase in efficiency for sorts such as the natural numbers, and it has also allowed inclusion of a built-in sort identifier in the Axis language.


Inference Rule Equational Theory Conditional Rule Axis Specification Root Operator 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    R.M. Burstall and J.A. Goguen. The semantics of CLEAR, a specification language. In D. Bjørner, editor, Proc. 1979 Copenhagen Winter School on Abstract Software Specification,, Springer-Verlag, Berlin, 1980. LNCS 86.Google Scholar
  2. [2]
    D. Coleman and R.M. Gallimore. A Framework for Program Development. Technical Report HPL-BRC-TM-87-014, Software Engineering Dept, Hewlett-Packard Laboratories, Bristol U.K., 1987.Google Scholar
  3. [3]
    D. Coleman, R.M. Gallimore, and V.S. Stavridou. The design of a rewrite rule interpreter from algebraic specifications. Software Engineering Journal, July 1987.Google Scholar
  4. [4]
    K. Futatsugi, J. Goguen, J-P. Jouannaud, and J. Meseguer. Principles of OBJ2. In Symposium on Principles of Programming Languages, pages 52–66, ACM, 1985.Google Scholar
  5. [5]
    R.M. Gallimore, D. Coleman, and C.J. Dollin. The AXIS Specification Language. Technical Report, Software Engineering Dept, Hewlett-Packard Laboratories, Bristol U.K., 1987.Google Scholar
  6. [6]
    G. Huet and D. Oppen. Equations and rewrite rules: a survey. In R. Book, editor, Formal Languages: Perspectives and Open Problems., Academic Press, 1980.Google Scholar
  7. [7]
    C.B. Jones. Software Development: A Rigorous Approach. Prentice-Hall International, 1980.Google Scholar
  8. [8]
    S. Kaplan. A compiler for conditional term rewriting systems. In P. Lescanne, editor, Rewriting Techniques and Applications, Bordeaux, May 1987, Springer-Verlag, Berlin, 1987. LNCS 256.Google Scholar
  9. [9]
    M. Page-Jones. The Practical Guide to Structured Systems Design. Yourdon Press, New York, 1980.Google Scholar
  10. [10]
    T. Rush and D. Coleman. Combining Pattern-Matching Algorithms. Technical Report HPL-BRC-TR-86-036, Hewlett-Packard Laboratories, Bristol, U.K., December 1986.Google Scholar
  11. [11]
    K. Yelick. Combining unification algorithms for confined regular equational theories. In J-P. Jouannaud, editor, Rewriting Techniques and Applications, Dijon, May 1985, Springer-Verlag, Berlin, 1985. LNCS 202.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1988

Authors and Affiliations

  • Tony Rush
    • 1
  • Derek Coleman
    • 1
  1. 1.Hewlett-Packard LaboratoriesBristolU.K.

Personalised recommendations