An abstract concurrent machine for rewriting

  • Nachum Dershowitz
  • Naomi Lindenstrauss
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 463)


Term rewriting corresponds to reduction in applicative languages; narrowing of terms corresponds to goal reduction in logic languages. An abstract machine is described for rewriting and narrowing. It has been implemented in Flat Concurrent Prolog, but could be coded in any system in which processes are capable of creating other processes and communicating with each other.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [DerJou 90]
    N. Dershowitz and J.-P. Jouannaud, “Rewrite systems”, Chap. 6 in J. van Leeuwen, ed., Handbook of Theoretical Computer Science, Vol. 2, North-Holland, 1990.Google Scholar
  2. [DerLin 89]
    N. Dershowitz and N. Lindenstrauss, “Average time analyses related to logic programming”, Logic Programming: Proceedings of the 6th International Conference, MIT Press, pp. 369–381, 1989.Google Scholar
  3. [DerLin 90]
    N. Dershowitz and N. Lindenstrauss, “A parallel implementation of equational programming”, Proceedings of the 5th Jerusalem Conference on Information Technology, Oct. 1990, to appear.Google Scholar
  4. [DerPl 88]
    N. Dershowitz and D. A. Plaisted, “Equational programming”, in J. E. Hayes, D. Michie, and J. Richards, eds., Machine Intelligence 11, pp. 21–56, 1988.Google Scholar
  5. [GoKiMe 86]
    J. Goguen, C. Kirchner, and J. Meseguer, “Concurrent term rewriting as a model of computation”, Proceedings of a Workshop on Graph Reduction, Santa Fé, NM, Lecture Notes in Computer Science 279, Springer, Berlin, pp. 53–93, 1986.Google Scholar
  6. [JoDer 89]
    N. A. Josephson and N. Dershowitz, “An implementation of narrowing”, Journal of Logic Programming 6(1&2), pp. 57–77, 1989.Google Scholar
  7. [Küch 82]
    W. Küchlin, “Some reduction strategies for algebraic term rewriting”, ACM SIGSAM Bull. 16(4), pp. 13–23, 1982.Google Scholar
  8. [Jon 89]
    D. W. Jones, “Concurrent operations on priority queues”, Communications of the ACM 32, pp. 132–137, 1989.Google Scholar
  9. [LiPal 89]
    K. Li, “Complexity of Term Rewriting”, Technical Report 464, Department of Computer Science, Courant Institute of Mathematical Sciences, New York University, New York, NY, November 1989.Google Scholar
  10. [Shap 87]
    Shapiro, E., “Systolic programming: A paradigm of parallel processing”, in E. Shapiro, ed., Concurrent Prolog Collected Papers, Vol. 1, pp. 207–242, 1987.Google Scholar
  11. [SePaRa 89]
    R. C. Sekar, S. Pagawi, and I. V. Ramakrishnan, “Transforming strongly sequential rewrite systems with constructors for efficient parallel execution”, Rewriting Techniques and Applications: 3rd International Conference, Lecture Notes in Computer Science 355, pp. 404–418, 1989.Google Scholar
  12. [SleTar 86]
    D. D. Sleator and R. E. Tarjan, “Self-adjusting heaps”, SIAM J. Comput. 15, pp. 52–69, 1986.Google Scholar
  13. [Stick 83]
    M. E. Stickel, “A note on leftmost innermost term reduction”, ACM SIGSAM Bull. 17(3&4), pp. 19–20, 1983.Google Scholar
  14. [TamSa 83]
    H. Tamaki and T. Sato, “Program Transformation Through Meta-shifting”, New Generation Computing 1, pp. 93–98, 1983.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1990

Authors and Affiliations

  • Nachum Dershowitz
    • 1
  • Naomi Lindenstrauss
    • 2
  1. 1.University of IllinoisUrbanaU.S.A.
  2. 2.The Hebrew UniversityJerusalemIsrael

Personalised recommendations