An Abstract Concurrent Machine for Rewriting

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.

[1]  Mark E. Stickel A note on leftmost innermost term reduction , 1983, SIGS.

[2]  Robert E. Tarjan,et al.  Self-Adjusting Heaps , 1986, SIAM J. Comput..

[3]  Ehud Shapiro,et al.  Concurrent PROLOG: Collected Papers , 1987 .

[4]  Douglas W. Jones,et al.  Concurrent operations on priority queues , 1989, CACM.

[5]  Nachum Dershowitz,et al.  A parallel implementation of equational programming , 1990, Proceedings of the 5th Jerusalem Conference on Information Technology, 1990. 'Next Decade in Information Technology'.

[6]  Nachum Dershowitz,et al.  Average Time Analyses Related to Logic Programming , 1989, ICLP.

[7]  I. V. Ramakrishnan,et al.  Transforming Strongly Sequential Rewrite Systems with Constructors for Efficient parallel Execution , 1989, RTA.

[8]  Wolfgang Küchlin Some reduction strategies for algebraic term rewriting , 1982, SIGS.

[9]  Donald Michie,et al.  Machine intelligence 11 , 1988 .

[10]  Jean-Pierre Jouannaud,et al.  Rewrite Systems , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[11]  Nachum Dershowitz,et al.  Equational programming , 1988 .

[12]  J. Van Leeuwen,et al.  Handbook of theoretical computer science - Part A: Algorithms and complexity; Part B: Formal models and semantics , 1990 .

[13]  Ehud Shapiro Systolic Programming: A Paradigm of Parallel Processing , 1984, FGCS.

[14]  Nachum Dershowitz,et al.  An Implementation of Narrowing , 1989, J. Log. Program..

[15]  José Meseguer,et al.  Concurrent term rewriting as a model of computation , 1986, Graph Reduction.