Term graph rewriting
 H. P. Barendregt,
 M. C. J. D. van Eekelen,
 J. R. W. Glauert,
 J. R. Kennaway,
 M. J. Plasmeijer,
 M. R. Sleep
 … show all 6 hide
Abstract
Graph rewriting (also called reduction) as defined in Wadsworth [1971] was introduced in order to be able to give a more efficient implementation of functional programming languages in the form of lambda calculus or term rewrite systems: identical subterms are shared using pointers.
Several other authors, e.g. Ehrig [1979], Staples [1980a,b,c], Raoult [1984] and van den Broek et al. [1986] have given mathematical descriptions of graph rewriting, usually employing concepts from category theory. These papers prove among other things the correctness of graph rewriting in the form of the ChurchRosser property for “wellbehaved” (i.e. regular) rewrite systems. However, only Staples has formally studied the soundness and completeness of graph rewriting with respect to term rewriting.
In this paper we give a direct operational description of graph rewriting that avoids the category theoretic notions. We show that if a term t is interpreted as a graph g(t) and is reduced in the graph world, then the result represents an actual reduct of the original term t(soundness). For weakly regular term rewrite systems, there is also a completeness result: every normal form of a term t can be obtained from the graphical implementation. We also show completeness for all term rewrite systems which possess a so called hypernormalising strategy, and in that case the strategy also gives a normalising strategy for the graphical implementation.
Besides having nice theoretical properties, weakly regular systems offer opportunities for parallelism, since redexes at different places can be executed independently or in parallel, without affecting the final result.
 Barendregt, H.P. [1984] The Lambda Calculus: its Syntax and Semantics (revised edition), NorthHolland, Amsterdam.
 Barendregt, H.P., M.C.J.D. van Eekelen, J.R.W. Glauert, J.R. Kennaway, M.J. Plasmeijer and M.R. Sleep [1986] Term graph rewriting, Report 87, Department of Computer Science, University of Nijmegen, and also as Report SYSC8701, School of Information Systems, University of East Anglia.
 [1987] Towards an intermediate language based on graph rewriting, these proceedings.
 van den Broek, P.M. and G.F. van der Hoeven [1986] Combinatorgraph reduction and the ChurchRosser theorem, preprint INF8615, Department of Informatics, Twente University of Technology.
 Ehrig, H. [1979] Introduction to the algebraic theory of graph grammars, in: Graph grammars and their Applications in Computer Science and Biology, ed. V. Claus, H. Ehrig, and G. Rozenberg. Lecture notes in Computer Science 73, Springer, Berlin, 1–69.
 Glauert, J.R.W., J.R. Kennaway and M.R. Sleep [1987] Category theoretic concepts of graph rewriting and garbage collection, in preparation, School of Information Systems, University of East Anglia.
 Huet, G. and Lévy, J.J. [1979] Callbyneed computations in nonambiguous term rewriting systems, Report 359, IRIALaboria, B.P. 105, 78150 Le Chesney, France.
 Kennaway, J.R. [1984] An outline of some results of Staples on optimal reduction orders in replacement systems, Report CSA/19/1984, School of Information Systems, University of East Anglia, Norwich, England.
 Klop, J.W. [1980] Combinatory Reduction Systems, Mathematical Centre Tracts n.127, Mathematical Centre, Kruislaan 413, 1098 SJ Amsterdam.
 Raoult, J.C. [1984] On graph rewritings, Theor. Comput. Sci. 32, 1–24. CrossRef
 Peyton Jones, S.L. [1987] The Implementation of Functional Languages, PrenticeHall, London, to appear.
 Staples, J. [1980a] Computation on graphlike expressions, Theor. Comput. Sci. 10, 171–185. CrossRef
 [1980b] Optimal evaluations of graphlike expressions, Theor. Comput. Sci. 10, 297–316. CrossRef
 [1980c] Speeding up subtree replacement systems, Theor. Comput. Sci. 11, 39–47. CrossRef
 Turner, D.A. [1979a] A new implementation technique for applicative languages, in: Software: Practice and Experience 9, 31–49.
 [1979b] SASL Language Manual, “combinators” version, University of St. Andrews, U.K.
 [1986] Miranda System Manual, Research Software Ltd., 1986.
 Wadsworth, C.P. [1971] Semantics and Pragmatics of the Lambda Calculus, D.Phil. thesis, Programming Research Group, Oxford University.
 Title
 Term graph rewriting
 Book Title
 PARLE Parallel Architectures and Languages Europe
 Book Subtitle
 Volume II: Parallel Languages Eindhoven, The Netherlands, June 15–19, 1987 Proceedings
 Pages
 pp 141158
 Copyright
 1987
 DOI
 10.1007/3540179453_8
 Print ISBN
 9783540179450
 Online ISBN
 9783540471813
 Series Title
 Lecture Notes in Computer Science
 Series Volume
 259
 Series ISSN
 03029743
 Publisher
 Springer Berlin Heidelberg
 Copyright Holder
 SpringerVerlag
 Additional Links
 Topics
 Industry Sectors
 eBook Packages
 Editors
 Authors

 H. P. Barendregt ^{(1)}
 M. C. J. D. van Eekelen ^{(1)}
 J. R. W. Glauert ^{(2)}
 J. R. Kennaway ^{(2)}
 M. J. Plasmeijer ^{(1)}
 M. R. Sleep ^{(2)}
 Author Affiliations

 1. University of Nijmegen, Nijmegen, The Netherlands
 2. School of Information Systems, University of East Anglia, Norwich, UK
Continue reading...
To view the rest of this content please follow the download PDF link above.