Advertisement

Applied Categorical Structures

, Volume 7, Issue 4, pp 299–331 | Cite as

An Algebraic Presentation of Term Graphs, via GS-Monoidal Categories

  • Andrea Corradini
  • Fabio Gadducci
Article

Abstract

We present a categorical characterization of term graphs (i.e., finite, directed acyclic graphs labeled over a signature) that parallels the well-known characterization of terms as arrows of the algebraic theory of a given signature (i.e., the free Cartesian category generated by it). In particular, we show that term graphs over a signature Σ are one-to-one with the arrows of the free gs-monoidal category generated by Σ. Such a category satisfies all the axioms for Cartesian categories but for the naturality of two transformations (the discharger ! and the duplicator ∇), providing in this way an abstract and clear relationship between terms and term graphs. In particular, the absence of the naturality of ∇ and ! has a precise interpretation in terms of explicit sharing and of loss of implicit garbage collection, respectively.

term graphs symmetric monoidal categories algebraic theories directed acyclic graphs gs-monoidal categories 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Ariola, Z. M. and Klop, J. W.: Equational term graph rewriting, Fund. Inform. 26 (1996), 207-240.Google Scholar
  2. 2.
    Bainbridge, E. S.: Feedback and generalized logic, Inform. and Control 31 (1976), 75-96.Google Scholar
  3. 3.
    Barber, A., Gardner, P., Hasegawa, M. and Plotkin, G.: From action calculi to linear logic, in M. Nielsen and W. Thomas (eds.), Computer Science Logic, Lecture Notes in Comput. Sci. 1414, Springer-Verlag, 1998, pp. 78-97.Google Scholar
  4. 4.
    Barendregt, H. P., van Eekelen, M. C. J. D., Glauert, J. R. W., Kennaway, J. R., Plasmeijer, M. J. and Sleep, M. R.: Term graph reduction, in J. W. de Bakker, A. J. Nijman and P. C. Treleaven (eds.), Parallel Architectures are Languages Europe, Lecture Notes in Comput. Sci. 259, Springer-Verlag, 1987, pp. 141-158.Google Scholar
  5. 5.
    Bauderon, M. and Courcelle, B.: Graph expressions and graph rewritings, Math. Systems Theory 20 (1987), 83-127.Google Scholar
  6. 6.
    Bloom, S. L. and Wagner, E. G.: Many-sorted theories and their algebras with some applications to data types, in M. Nivat and J. C. Reynolds (eds.), Algebraic Methods in Semantics, Cambridge University Press, 1985, pp. 133-168.Google Scholar
  7. 7.
    Boudol, G.: Computational semantics of term rewriting systems, in M. Nivat and J. C. Reynolds (eds.), Algebraic Methods in Semantics, Cambridge University Press, 1985, pp. 170-235.Google Scholar
  8. 8.
    Budach, L. and Hoenke, H.-J.: Automaten und Functoren, Akademie-Verlag, 1975.Google Scholar
  9. 9.
    Căzănescu, V. E. and Ştefănescu, G.: Towards a new algebraic foundation of flowchart scheme theory, Fund. Inform. 13 (1990), 171-210.Google Scholar
  10. 10.
    Corradini, A. and Drewes, F.: (Cyclic) term graph rewriting is adequate for rational parallel term rewriting, Technical Report TR-97-14, Dipartimento di Informatica, Pisa, 1997.Google Scholar
  11. 11.
    Corradini, A. and Gadducci, F.: A 2-categorical presentation of term graph rewriting, in E. Moggi and G. Rosolini (eds.), Category Theory and Computer Science, Lecture Notes in Comput. Sci. 1290, Springer-Verlag, 1997, pp. 87-105.Google Scholar
  12. 12.
    Corradini, A. and Gadducci, F.: Rational term rewriting, in M. Nivat (ed.), Foundations of Software Science and Computation Structures, Lecture Notes in Comput. Sci. 1378, Springer-Verlag, 1998, pp. 156-171.Google Scholar
  13. 13.
    Corradini, A. and Gadducci, F.: Rewriting on cyclic structures, Technical Report TR-98-05, Dipartimento di Informatica, Pisa, 1998. To appear in Informatique Théorique et Applications/Theoret. Inform. Appl. Google Scholar
  14. 14.
    Corradini, A. and Gadducci, F.: Functorial Semantics for multi-algebras, in J. L. Fiadeiro (ed.), Recent Trends in Algebraic Development Techniques, Lecture Notes in Comput. Sci. 1589, Springer-Verlag, 1999, pp. 78-90.Google Scholar
  15. 15.
    Corradini, A., Gadducci, F. and Montanari, U.: Relating two categorical models of term rewriting, in J. Hsiang (ed.), Rewriting Techniques and Applications, Lecture Notes in Comput. Sci. 914, Springer-Verlag, 1995, pp. 225-240.Google Scholar
  16. 16.
    Corradini, A., Montanari, U., Rossi, F., Ehrig, H. and Löwe, M.: Logic programming and graph grammars, in H. Ehrig, H.-J. Kreowski and G. Rozenberg (eds.), Graph-Grammars and Their Application to Computer Science, Lecture Notes in Comput. Sci. 532, Springer-Verlag, 1991, pp. 221-237.Google Scholar
  17. 17.
    Corradini, A. and Rossi, F.: Hyperedge replacement jungle rewriting for term rewriting systems and logic programming, Theoret. Comput. Sci. 109 (1993), 7-48.Google Scholar
  18. 18.
    Ferrari, G. and Montanari, U.: Tiles for concurrent and located calculi, in C. Palamidessi and J. Parrow (eds.), Expressiveness in Concurrency, Electron. Notes Theor. Comput. Sci. 7, Elsevier Science, 1997.Google Scholar
  19. 19.
    Gadducci, F.: On the algebraic approach to concurrent term rewriting, Ph.D. Thesis, Department of Computer Science, University of Pisa, 1996.Google Scholar
  20. 20.
    Gadducci, F. and Montanari, U.: The tile model, in G. Plotkin, C. Stirling and M. Tofte (eds), Proof, Language and Interaction: Essays in Honour of Robin Milner, MIT Press, 1999. To appear.Google Scholar
  21. 21.
    Goguen, J. A., Tatcher, J. W., Wagner, E. G. and Wright, J. R.: Some fundamentals of order-algebraic semantics, in A. Mazurkiewicz (ed.), Mathematical Foundations of Computer Science, Lecture Notes in Comput. Sci. 45, Springer-Verlag, 1976, pp. 153-168.Google Scholar
  22. 22.
    Goguen, J. A., Tatcher, J. W., Wagner, E. G. and Wright, J. R.: Initial algebra semantics and continuous algebras, J. ACM 24 (1997), 68-95.Google Scholar
  23. 23.
    Habel, A.: Hyperedge Replacement: Grammars and Languages, Lecture Notes in Comput. Sci. 643, Springer-Verlag, 1992.Google Scholar
  24. 24.
    Hasegawa, M.: Models of sharing graphs, Ph.D. Thesis, Department of Computer Science University of Edinburgh, 1997.Google Scholar
  25. 25.
    Hasegawa, M.: Recursion from cyclic sharing: Traced monoidal categories and models of cyclic lambda-calculus, in Ph. de Groste and R. Hindly (eds.), Typed Lambda Calculi and Applications, Lecture Notes in Comput. Sci. 1210, Springer-Verlag, 1997, pp. 196-213.Google Scholar
  26. 26.
    Hensel, U. and Spooner, D.: A view on implementing processes: Categories of circuits, in M. Haveraaen, O. Owe and O. Dahl (eds.), Recent Trends in Data Types Specification, Lecture Notes in Comput. Sci. 1130, Springer-Verlag, 1995, pp. 237-255.Google Scholar
  27. 27.
    Hilken, B. P.: Towards a proof theory of rewriting: The simply typed 2-λ-calculus, Theoret. Comput. Sci. 170 (1996), 407-444.Google Scholar
  28. 28.
    Hoenke, H.-J: On partial algebras, in B. Csákány, E. Fried and E. T. Schmidt (eds.), Universal Algebra, Colloq. Math. Soc. János Bolyai 29, 1977, pp. 373-412.Google Scholar
  29. 29.
    Hoenke, H.-J: On partial recursive definitions and programs, in M. Karpinski (ed.), Fundamentals of Computation Theory, Lecture Notes in Comput. Sci. 56, Springer-Verlag, 1977, pp. 260-274.Google Scholar
  30. 30.
    Hoffmann, B. and Plump, D.: Implementing term rewriting by jungle evaluation, Informatique Théorique et Applications/Theoret. Inform. Appl. 25 (1991), 445-472.Google Scholar
  31. 31.
    Jacobs, B.: Semantics of weakening and contraction, Ann. Pure Appl. Logic 69 (1994), 73-106.Google Scholar
  32. 32.
    Jeffrey, A.: Premonoidal categories and a graphical view of programs, On-line Report, COGS, University of Sussex, 1997.Google Scholar
  33. 33.
    Joyal, A., Street, R. and Verity, D.: Traced monoidal categories, Math. Proc. Cambridge Philos. Soc. 119 (1996), 425-446.Google Scholar
  34. 34.
    Katis, P., Sabadini, N. and Walters, R. F. C.: Bicategories of processes, J. Pure Appl. Algebra 115 (1997), 141-178.Google Scholar
  35. 35.
    Katis, P., Sabadini, N. and Walters, R. F. C.: SPAN(Graph): A categorical algebra of transition systems, in M. Johnson (ed.), Algebraic Methodology and Software Technology, Lecture Notes in Comput. Sci. 1349, Springer-Verlag, 1997, pp. 307-321.Google Scholar
  36. 36.
    Kennaway, J. R., Klop, J. W., Sleep, M. R. and de Vries, F. J.: On the adequacy of graph rewriting for simulating term rewriting, ACM Trans. Program. Lang. Syst. 16 (1994), 493-523.Google Scholar
  37. 37.
    Klop, J. W.: Term rewriting systems, in S. Abramsky, D. Gabbay and T. Maibaum (eds.), Handbook of Logic in Computer Science, Vol. 1, Oxford University Press, 1992, pp. 1-116.Google Scholar
  38. 38.
    Kock, A. and Reyes G. E.: Doctrines in categorical logic, in J. Bairwise (ed.), Handbook of Mathematical Logic, North-Holland, 1977, pp. 283-313.Google Scholar
  39. 39.
    Lafont, Y.: Equational reasoning with 2-dimensional diagrams, in H. Comon and J.-P. Jouannaund (eds.), Term Rewriting, Lecture Notes in Comput. Sci. 909, Springer-Verlag, 1995, pp. 170-195.Google Scholar
  40. 40.
    Laneve, C. and Montanari, U.: Axiomatizing permutation equivalence in the λ-calculus, Math. Struct. Comput. Sci. 6 (1996), 219-249.Google Scholar
  41. 41.
    Lawvere, F. W.: Functorial semantics of algebraic theories, Proc. Nat. Acad. Sci. 50 (1963), 869-872.Google Scholar
  42. 42.
    Mac Lane, S.: Categories for the Working Mathematician, Springer-Verlag, 1971.Google Scholar
  43. 43.
    Mac Lane, S.: Natural associativity and commutativity, Rice University Studies 49 (1963), 28-46.Google Scholar
  44. 44.
    Martí-Oliet, N. and Meseguer, J.: From Petri nets to linear logic through categories: A survey, Internat. J. Found. of Comput. Sci. 4 (1991), 297-399.Google Scholar
  45. 45.
    Martí-Oliet, N. and Meseguer, J.: Rewriting logic as a logical and semantical framework, in J. Meseguer (ed.), Rewriting Logic and Applications, Electron. Notes Theor. Comput. Sci. 4, Elsevier, 1997.Google Scholar
  46. 46.
    Meseguer, J.: Conditional rewriting logic as a unified model of concurrency, Theoret. Comput. Sci. 96 (1992), 73-155.Google Scholar
  47. 47.
    Miyoshi, H.: Rewriting logic for cyclic sharing structures, in T. Sato and A. Middeldorp (eds.), Fuji International Symposium on Functional and Logic Programming, World Scientific, 1998, pp. 167-186.Google Scholar
  48. 48.
    Pavlovic, D.: Categorical logic of names and abstraction in action calculi, Math. Struct. Comput. Sci. 7 (1997), 619-637.Google Scholar
  49. 49.
    Pfender, M.: Universal algebra in s-monoidal categories, Technical Report 95-22, Department of Mathematics, University of Munich, 1974.Google Scholar
  50. 50.
    Plasmeijer, M. J. and van Eekelen, M. C. J. D.: Functional Programming and Parallel Graph Rewriting, Addison Wesley, 1993.Google Scholar
  51. 51.
    Power, A. J.: An abstract formulation for rewrite systems, in D. H. Pitt, D. E. Rydehard, P. Dybjer, A. M. Pitts and A. Poigné (eds.), Category Theory and Computer Science, Lecture Notes in Comput. Sci. 389, Springer-Verlag, 1989, pp. 300-312.Google Scholar
  52. 52.
    Power, J. and Robinson, E.: Premonoidal categories and notions of computation, Math. Struct. Comput. Sci. 7 (1998), 453-468.Google Scholar
  53. 53.
    Rensik, A.: Bisimilarity of open terms, in C. Palamidessi and J. Parrow (eds.), Expressiveness in Concurrency, Electron. Notes Theor. Comput. Sci. 7, Elsevier Science, 1997.Google Scholar
  54. 54.
    Robinson, E. and Rosolini, G.: Categories of partial maps, Inform. and Comput. 79 (1988), 95-130.Google Scholar
  55. 55.
    Rydehard, D. E. and Stell, J. G.: Foundations of equational deductions: A categorical treatment of equational proofs and unification algorithms, in D. H. Pitt, A. Poigné and D. E. Rydehard (eds.), Category Theory in Computer Science, Lecture Notes in Comput. Sci. 283, Springer-Verlag, 1987, pp. 114-139.Google Scholar
  56. 56.
    Sleep, M. R., Plasmeijer, M. J. and van Eekelen, M. C. (eds): Term Graph Rewriting: Theory and Practice, Wiley, 1993.Google Scholar
  57. 57.
    Ştefănescu, G.: On flowchart theories: Part II. The nondeterministic case, Theoret. Comput. Sci. 52 (1987), 307-340.Google Scholar
  58. 58.
    Ştefănescu, G.: Algebra of flownomials, Technical Report SFB-Bericht 342/16/94 A, Institut für Informatik, Technical University of Munich, 1994.Google Scholar
  59. 59.
    Stell, J. G.: Categorical aspects of unification and rewriting, Ph.D. Thesis, University of Manchester, 1992.Google Scholar
  60. 60.
    Turner, D. A.: A new implementation technique for applicative languages, Software: Practice and Experience 9 (1979), 31-49.Google Scholar
  61. 61.
    Walicki, M. and Meldal, S.: Algebraic approaches to nondeterminism: An overview, ACM Computing Survey 29 (1997), 30-81.Google Scholar

Copyright information

© Kluwer Academic Publishers 1999

Authors and Affiliations

  • Andrea Corradini
    • 1
  • Fabio Gadducci
    • 2
  1. 1.Dipartimento di InformaticaUniversity of PisaPisaItaly. e-mail
  2. 2.Fachbereich 13 InformatikTechnical University of BerlinBerlinGermany. e-mail

Personalised recommendations