Architecture for conditional term rewriting
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.
KeywordsInference Rule Equational Theory Conditional Rule Axis Specification Root Operator
Unable to display preview. Download preview PDF.
- 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
- 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
- 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
- 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
- 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
- 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
- C.B. Jones. Software Development: A Rigorous Approach. Prentice-Hall International, 1980.Google Scholar
- 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
- M. Page-Jones. The Practical Guide to Structured Systems Design. Yourdon Press, New York, 1980.Google Scholar
- 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
- 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