Results 1 
4 of
4
Equational term graph rewriting
 FUNDAMENTA INFORMATICAE
, 1996
"... We present an equational framework for term graph rewriting with cycles. The usual notion of homomorphism is phrased in terms of the notion of bisimulation, which is wellknown in process algebra and concurrency theory. Specifically, a homomorphism is a functional bisimulation. We prove that the bis ..."
Abstract

Cited by 71 (8 self)
 Add to MetaCart
We present an equational framework for term graph rewriting with cycles. The usual notion of homomorphism is phrased in terms of the notion of bisimulation, which is wellknown in process algebra and concurrency theory. Specifically, a homomorphism is a functional bisimulation. We prove that the bisimilarity class of a term graph, partially ordered by functional bisimulation, is a complete lattice. It is shown how Equational Logic induces a notion of copying and substitution on term graphs, or systems of recursion equations, and also suggests the introduction of hidden or nameless nodes in a term graph. Hidden nodes can be used only once. The general framework of term graphs with copying is compared with the more restricted copying facilities embodied in the µrule, and translations are given between term graphs and µexpressions. Using these, a proof system is given for µexpressions that is complete for the semantics given by infinite tree unwinding. Next, orthogonal term graph rewrite ...
Lambda Calculus with Explicit Recursion
 Information and Computation
, 1996
"... This paper is concerned with the study of calculus with explicit recursion, namely of cyclic graphs. The starting point is to treat a graph as a system of recursion equations involving terms, and to manipulate such systems in an unrestricted manner, using equational logic, just as is possible fo ..."
Abstract

Cited by 38 (4 self)
 Add to MetaCart
This paper is concerned with the study of calculus with explicit recursion, namely of cyclic graphs. The starting point is to treat a graph as a system of recursion equations involving terms, and to manipulate such systems in an unrestricted manner, using equational logic, just as is possible for firstorder term rewriting. Surprisingly, now the confluence property breaks down in an essential way. Confluence can be restored by introducing a restraining mechanism on the `substitution' operation. This leads to a family of graph calculi, which can be seen as an extension of the family of oecalculi (calculi with explicit substitution). While the oecalculi treat the letconstruct as a firstclass citizen, our calculi support the letrec, a feature that is essential to reason about time and space behavior of functional languages and also about compilation and optimizations of programs. CR Subject Classification (1991): D.1.1, D.3.1, F.1.1, F.4.1, F.4.2 Keywords & Phrases: lambda cal...
Relating Graph and Term Rewriting via Böhm Models
 in Engineering, Communication and Computing 7
, 1993
"... . Dealing properly with sharing is important for expressing some of the common compiler optimizations, such as common subexpressions elimination, lifting of free expressions and removal of invariants from a loop, as sourcetosource transformations. Graph rewriting is a suitable vehicle to accommoda ..."
Abstract

Cited by 8 (4 self)
 Add to MetaCart
. Dealing properly with sharing is important for expressing some of the common compiler optimizations, such as common subexpressions elimination, lifting of free expressions and removal of invariants from a loop, as sourcetosource transformations. Graph rewriting is a suitable vehicle to accommodate these concerns. In [4] we have presented a term model for graph rewriting systems (GRSs) without interfering rules, and shown the partial correctness of the aforementioned optimizations. In this paper we define a different model for GRSs, which allows us to prove total correctness of those optimizations. Differently from [4] we will discard sharing from our observations and introduce more restrictions on the rules. We will introduce the notion of Bohm tree for GRSs, and show that in a system without interfering and nonleft linear rules (orthogonal GRSs), Bohm tree equivalence defines a congruence. Total correctness then follows in a straightforward way from showing that if a program M co...
A Complete Proof System for Nested Term Graphs
 In Proc. HOA '95
, 1995
"... Nested Term Graphs are syntactic representations of cyclic term graphs. Via a simple translation they contain terms as a subset. There exists a characterization of the terms that unwind to the same tree, presented as a complete proof system. This paper gives a similar characterization for Nested T ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
Nested Term Graphs are syntactic representations of cyclic term graphs. Via a simple translation they contain terms as a subset. There exists a characterization of the terms that unwind to the same tree, presented as a complete proof system. This paper gives a similar characterization for Nested Term Graphs. The semantics of tree unwinding is presented via bisimulations. 1