Abstract
The graph rewriting calculus is an extension of the ρ-calculus, handling graph like structures, with explicit sharing and cycles, rather than simple terms. We study a reduction strategy for the graph rewriting calculus which is intended to maintain the sharing in the terms as long as possible. We show that the corresponding reduction relation is adequate w.r.t. the original semantics of the graph rewriting calculus, formalising the intuition that the strategy avoids useless unsharing.
Keywords
- Normal Form
- Reduction Strategy
- Garbage Collection
- Recursion Equation
- Matching Rule
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
Supported by the projects SisteR (MIUR) and AVIAMO (University of Padova).
This is a preview of subscription content, access via your institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Ariola, Z.M., Klop, J.W.: Equational term graph rewriting. Fundamenta Informaticae 26(3-4), 207–240 (1996)
Ariola, Z.M., Klop, J.W.: Lambda calculus with explicit recursion. Information and Computation 139(2), 154–233 (1997)
Baader, F., Nipkow, T.: Term rewriting and all that. Cambridge University Press, New York (1998)
Baldan, P., Bertolissi, C., Cirstea, H., Kirchner, C.: A rewriting calculus for cyclic higher-order term graphs. Mathematical Structures in Computer Science 17(3), 363–406 (2007)
Baldan, P., Bertolissi, C., Cirstea, H., Kirchner, C.: Towards a sharing strategy for the graph rewriting calculus. In: Proceedings of WRS 2007. Electr. Notes Theor. Comput. Sci., vol. 204, pp. 111–127. Elsevier (2008)
Barendregt, H.: The Lambda-Calculus, its syntax and semantics, 2nd edn. Studies in Logic and the Foundation of Mathematics. North Holland, Amsterdam (1984)
Barendregt, H.P., van Eekelen, M.C.J.D., Glauert, J.R.W., Kennaway, J.R., Plasmeijer, M.J., Sleep, M.R.: Term Graph Rewriting. In: de Bakker, J.W., Nijman, A.J., Treleaven, P.C. (eds.) PARLE 1987. LNCS, vol. 259, pp. 141–158. Springer, Heidelberg (1987)
Bertolissi, C.: The graph rewriting calculus: properties and expressive capabilities. Thèse de Doctorat d’Université, INPL, Nancy, France (2005)
Bertolissi, C., Kirchner, C.: The Rewriting Calculus as a Combinatory Reduction System. In: Seidl, H. (ed.) FOSSACS 2007. LNCS, vol. 4423, pp. 78–92. Springer, Heidelberg (2007)
Borovansky, P., Kirchner, C., Kirchner, H., Moreau, P.E., Ringeissen, C.: An overview of ELAN. In: Kirchner, C., Kirchner, H. (eds.) Proc. of the WRLA 1998. Electr. Notes Theor. Comput. Sci., vol. 15, pp. 55–70 (1998)
Cirstea, H., Kirchner, C.: The rewriting calculus — Part I and II. Logic Journal of the Interest Group in Pure and Applied Logics 9(3), 427–498 (2001)
Corradini, A.: Term rewriting in CT Σ. In: Gaudel, M.-C., Jouannaud, J.-P. (eds.) TAPSOFT 1993. LNCS, vol. 668, pp. 468–484. Springer, Heidelberg (1993)
Corradini, A., Drewes, F.: (Cyclic) term graph rewriting is adequate for rational parallel term rewriting. Tech. Rep. TR-97-14, Dipartimento di Informatica, Pisa (1997)
Corradini, A., Gadducci, F.: Rewriting on cyclic structures: Equivalence of operational and categorical descriptions. Theoretical Informatics and Applications 33, 467–493 (1999)
Kennaway, J.R., Klop, J.W., Sleep, M.R., de Vries, F.J.: On the adequacy of graph rewriting for simulating term rewriting. ACM Transactions on Programming Languages and Systems 16(3), 493–523 (1994)
Kirchner, C., Qian, Z., Singh, P.K., Stuber, J.: Xemantics: a rewriting calculus-based semantics of XSLT. Tech. Rep. A01-R-386, Loria Inria (2002)
Klop, J.W., van Oostrom, V., de Vrijer, R.: Lambda calculus with patterns. Theor. Comput. Sci. 398(1-3), 16–31 (2008)
Lamping, J.: An algorithm for optimal lambda calculus reduction. In: Proc. of POPL 1990, pp. 16–30. ACM (1990)
Peyton-Jones, S.: The implementation of functional programming languages. Prentice Hall, Inc. (1987)
Plump, D.: Term graph rewriting. In: Handbook of Graph Grammars and Computing by Graph Transformation, vol. 2, pp. 3–61 (1999)
Sleep, M.R., Plasmeijer, M.J., van Eekelen, M.C.J.D. (eds.): Term graph rewriting: theory and practice. Wiley, London (1993)
Van Eekelen, M., Plasmeijer, R.: Functional Programming and Parallel Graph Rewriting. Addison-Wesley (1993)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 IFIP International Federation for Information Processing
About this paper
Cite this paper
Baldan, P., Bertolissi, C. (2012). Sharing in the Graph Rewriting Calculus. In: Mossakowski, T., Kreowski, HJ. (eds) Recent Trends in Algebraic Development Techniques. WADT 2010. Lecture Notes in Computer Science, vol 7137. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-28412-0_4
Download citation
DOI: https://doi.org/10.1007/978-3-642-28412-0_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-28411-3
Online ISBN: 978-3-642-28412-0
eBook Packages: Computer ScienceComputer Science (R0)
