| B. HOFFMAN and D. PLUMP, Jungle evaluation for efficient term rewriting, in J. Grabowski, P. Lescanne, and W. Weckler (eds.), Proc. Int. Workshop on Algebraic and Logic Programming, Mathematical Research vol. 49, pp. 191-203 (Akademie-Verlag, 1988) |
....and acyclic graphs. Bar87] extended this by establishing results about normalising strategies. Raoult [Rao84] refined by Kennaway [Ken87] studied the relationship between graph rewriting and term rewriting using a category theoretic description of term graph rewriting. Hoffmann and Plump [Hof88] gave an equivalent description in a different category of graphs. All of the above treatments of the subject considered only acyclic graphs and finitary rewriting. Farmer and Watro [Far89] were the first to consider cyclic graphs and the resulting transfinite reduction sequences. They proved the ....
B. HOFFMAN and D. PLUMP, Jungle evaluation for efficient term rewriting, in J. Grabowski, P. Lescanne, and W. Weckler (eds.), Proc. Int. Workshop on Algebraic and Logic Programming, Mathematical Research vol. 49, pp. 191-203 (Akademie-Verlag, 1988)
....Characteristics of Tree Rewriting and Dag Rewriting Traditionally, many properties of term rewriting systems are discussed on tree representation, such as termination, confluence, ambiguity, etc. Here, we will consider these properties on dag rewriting systems. These properties are discussed in [HP88b] for jungle evaluation , but our system is simpler and our discussion is much simpler. In this section, rewriting system R and term t without any subscripts will be assumed to be represented by trees and their corresponding dag representations are denoted by R dag and t dag respectively. ....
....any t, two rewriting derivations t s 1 and t s 2 imply that there exists a term t 0 such that there are two rewriting derivations s 1 t 0 and s 2 t 0 . Unfortunately, the condition that R is confluent does not guarantee that R dag is confluent. One of courter examples is given by [HP88b]: R = ff(x) g(x; x) f(a) N , g(a; a 0 ) N , a a 0 , a 0 ag. R is confluent for tree representation. For dag representation, term f(a) can be rewritten to N and g(a; a) but the latter can only be rewritten to g(a 0 ; a 0 ) that means g(a; a) cannot be rewritten to N by rule ....
B. Hoffman and D. Plump, "Jungle evaluation for efficient term rewriting," Report No. 4/88, Fachbereich Mathematik und Informatik, Universitat Bremen, 1988.
....is greater than 1. Such graph reduction is the standard technique for implementing lazy languages, see [15, 4] because under lazy evaluation unevaluated subterms naturally occur. For implementing (general) term rewriting systems, graph reduction may lose confluence and weak normalisation, see [8], but rewriting systems in programming languages normally satisfy further properties that make graph reduction a correct implementation. The research reported here was partially supported by SERC grant GR E 78463. While acyclic graphs seem to be a natural choice for the internal ....
....= V G ; R J ; s J ; t J ; is strongly normalising. Result edges of the above form are simply partial, sort preserving functions on vertices, but the above encoding within the hypergraph world preserves the close 3 Example: t is a direct subterm of f(t) but not of f(f(t) 4 According to [8], theorem 5.5, jungle reduction cannot introduce cycles, due to the realisation of rewrite steps chosen there. We do not consider this here, because it violates the Unlimp principle in a different way. cy c l e Fig. 1. Term ....
Berthold Hoffmann and Detlef Plump. Jungle Evaluation for Efficient Term Rewriting. Technical Report 4/88, Universitat Bremen, Studiengang Informatik, 1988. (short version in LNCS 343).
....and acyclic graphs. Bar87] extended this by establishing results about normalising strategies. Raoult [Rao84] refined by Kennaway [Ken87] studied the relationship between graph rewriting and term rewriting using a category theoretic description of term graph rewriting. Hoffmann and Plump [Hof88] gave an equivalent description in a different category of graphs. All of the above treatments of the subject considered only acyclic graphs and finitary rewriting. Farmer and Watro [Far89] were the first to consider cyclic graphs and the resulting transfinite reduction sequences. They proved the ....
B. HOFFMAN and D. PLUMP, Jungle evaluation for efficient term rewriting, in J. Grabowski, P. Lescanne, and W. Weckler (eds.), Proc. Int. Workshop on Algebraic and Logic Programming, Mathematical Research vol. 49, pp. 191--203 (Akademie-Verlag, 1988)
....concurrent rewriting is not an easy task since one has to first design the right implementation model and then to design and implement the right environment, including in particular garbage collection. In our case we have shown that it is correct and complete to use the notion of jungle [HP88] in order to provide the basis for the implementation [KV92] and that in this context a concurrent garbage collector can be designed and implemented [Alo95] In this paper, we furthermore show that our computation model is compatible with the concurrent evaluation of overlapping redexes. This ....
....matching and replacement. A distributed matching algorithm is used [KV92, Vir92] This bottom up algorithm has been designed to be incremental with respect to replacement. Its messagepassing implementation avoids all the locking and synchronisation problems. The term represented as a jungle [HP88] is distributed over the processors and there Root 1 2 3 4 5 Root 1 2 3 4 5 Root 1 2 3 4 5 Root 1 2 3 4 5 A B C D E (1) 2) 3) 4) F Fig. 3. Concurrent Rewriting Steps for Associativity is no need of global state. Jungles are based on ....
B. Hoffmann and D. Plump. Jungle evaluation for efficient term rewriting. In J. Grabowski, P. Lescanne, and W. Wechler, editors, Proceedings 1st International Workshop on Algebraic and Logic Programming, number 343 in Lecture Notes in Computer Science. Springer-Verlag, 1988.
....parallel machines. A successful model should be abstract enough to avoid the implementation details of particular machines, and yet concrete enough to serve as an intermediate target language for compilers. Graph rewriting provides one promising area within which to search for such models [43, 32, 15, 41], and colimits seem to be quite useful here [10, 58, 44] Graph rewriting is also important for the unification grammars that are now popular in linguistics [60, 22] There seem to be many opportunities for further research in these areas. 6.3 Initiality. The simplest possible diagram is the empty ....
Berthold Hoffmann and Detlef Plump. Jungle evaluation for efficient term rewriting. Technical Report 4/88, Fachbereich Mathematik und Informatik, Universitat Bremen, 1988.
....opposite order in the two models of rewriting; and so one question of interest, is whether there is any relationship between the two approaches. Now the algebraic approach has been used to address some of the problems of direct interest to the term graph rewriting community, Habel et al. 1988) Hoffman and Plump (1988), Plump (1993) so one might speculate that the two approaches are not so far apart. 1. Email: rbanach cs.man.ac.uk The aim of this paper is to show that the strategy of the term graph rewriting approach can be used to reformulate the algebraic approach into a construction entirely equivalent ....
Hoffman B., Plump D. (1988); Jungle Evaluation for Efficient Term Rewriting, in: Proc. International Workshop on Algebraic and Logic Programming, Mathematical Research 49, Akademie -Verlag, Berlin.
....concurrent rewriting is not an easy task since one has to first design the right implementation model and then to design and implement the right environment, including in particular garbage collection. In our case we have shown that it is correct and complete to use the notion of jungle [HP88] in order to provide the basis for the implementation [KV92] and that in this context a concurrent GC can be designed and implemented [Alo95] In this context it appears of course much more interesting to use the model and implementation of unconditional concurrent term rewriting (which we ....
B. Hoffmann and D. Plump. Jungle evaluation for efficient term rewriting. In J. Grabowski, P. Lescanne, and W. Wechler, editors, Proceedings 1st International Workshop on Algebraic and Logic Programming, number 343 in Lecture Notes in Computer Science. Springer-Verlag, 1988.
....languages make heavy use of complex data structures to represent lists of objects or tree structures. A common representation of these structures is in terms of records containing pointers to other records. In mathematical terms, such structures are ordered directed graphs, or hypergraphs [Hof88]. These data structures are copied and modified during the course of evaluation. In mathematical terms, evaluation may be seen as a process of transforming graphs according to rules determined by the program text. Hence a program may be seen as specifying a graph rewriting system. In functional ....
....of graph rewriting date back at least to Wadsworth [Wad71] which develops a graph based representation of lambda terms and an associated implementation method for normal order evaluation of lambda calculus expressions. The relation between tree and graph rewriting has been studied in some detail [Sta80a, Sta80b, Bar87, Hof88, Far90]. The main result is that sharing implementations produce the correct semantics at least for orthogonal term rewrite systems. Logic programming languages of the committed choice variety (for example Concurrent Prolog [Sha89] and Parlog [Gre87] may be viewed as specialised graph rewriting ....
[Article contains additional citation context not shown here]
Hoffmann, B., and Plump, D., 1988, Jungle Evaluation for Efficient Term Rewriting, Proc. Joint Workshop on Algebraic and Logic Programming, Mathematical Research, 49, 191-203, Akademie-Verlag, Berlin.
....functional programming languages (see [DJ90] and [Klo90] for overviews) Basically, terms are trees, and rewriting is subtree replacement. This may be very expensive, both in time and space: the application of a rule may copy large subterms, and each copy has to be rewritten anew. In the papers [HP88] and [HP91] D. Plump and the author have proposed jungle evaluation as an improved model for term rewriting with sharing where some sources of inefficiency are avoided: ffl Terms are represented by acyclic (hyper ) graphs so that multiple occurrences of terms can be shared. These graphs are ....
....to define schemes for full and lazy memoization in the sense of [Hug85] These schemes are independent of particular strategies for applying evaluation rules. The paper is organized as follows: We start by defining (hyper ) graphs and jungles in section 2. In section 3 we recall the results of [HP88] and [HP91] which are relevant for this paper. In section 4 we define tabulating and lookup rules and show correctness and completeness. Full and lazy memoization schemes are defined in section 5. Finally, we summarize our results and point out possible directions of future research in section 6. ....
[Article contains additional citation context not shown here]
B. Hoffmann and D. Plump. Jungle Evaluation for Efficient Term Rewriting. In Algebraic and Logic Programming, pages 191--203. Springer, LNCS 343, 1988. Also in: Akademie-Verlag Berlin. Long version in technical report 4/88, Fachbereich 3 -- Informatik, Universitat Bremen.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC