Abstract
This paper gives a truly concurrent semantics with sharing of resources for the \(\mathbb{K}\) semantic framework, an executable (term-)rewriting-based formalism for defining programming languages and calculi. Akin to graph rewriting rules, the \(\mathbb{K}\) (rewrite) rules explicitly state what can be concurrently shared with other rules. The desired true concurrency is obtained by translating the \(\mathbb{K}\) rules into a novel instance of term-graph rewriting with explicit sharing, and then using classical concurrency results from the double-pushout (DPO) approach to graph rewriting. The resulting parallel term-rewriting relation is proved sound, complete, and serializable with respect to the jungle rewriting flavor of term-graph rewriting, and, therefore, also to term rewriting.
This work is supported by Contract 161/15.06.2010, SMISCSNR 602-12516 (DAK).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Baader, F., Nipkow, T.: Term rewriting and all that. Cambridge University Press, New York (1998)
Baldan, P., Gadducci, F., Montanari, U.: Modelling calculi with name mobility using graphs with equivalences. In: TERMGRAPH. ENTCS, vol. 176(1), pp. 85–97 (2007)
Berry, G., Boudol, G.: The chemical abstract machine. J. of Theoretical Computer Science 96(1), 217–248 (1992)
Corradini, A., Montanari, U., Rossi, F., Ehrig, H., Heckel, R., Löwe, M.: Algebraic approaches to graph transformation: Basic concepts and double pushout approach. In: Handbook of Graph Grammars, vol. 1, pp. 163–246. World Sci. (1997)
Ehrig, H., Kreowski, H.-J.: Parallelism of Manipulations in Multidimensional Information Structures. In: Mazurkiewicz, A. (ed.) MFCS 1976. LNCS, vol. 45, pp. 284–293. Springer, Heidelberg (1976)
Ehrig, H., Pfender, M., Schneider, H.J.: Graph-grammars: An algebraic approach. In: SWAT (FOCS), pp. 167–180 (1973)
Ellison, C., Roşu, G.: An executable formal semantics of C with applications. In: POPL, pp. 533–544 (2012)
Felleisen, M., Friedman, D.P.: Control operators, the SECD-machine, and the lambda-calculus. In: 3rd Working Conference on the Formal Description of Programming Concepts, Ebberup, Denmark, pp. 193–219 (August 1986)
Habel, A., Kreowski, H.-J., Plump, D.: Jungle Evaluation. In: Sannella, D., Tarlecki, A. (eds.) Abstract Data Types 1987. LNCS, vol. 332, pp. 92–112. Springer, Heidelberg (1988)
Habel, A., Müller, J., Plump, D.: Double-pushout graph transformation revisited. Mathematical Structures in Computer Science 11(5), 637–688 (2001)
Hoffmann, B., Plump, D.: Implementing term rewriting by jungle evaluation. RAIRO—Theoretical Informatics and Applications 25, 445–472 (1991)
Kastenberg, H., Kleppe, A., Rensink, A.: Defining Object-Oriented Execution Semantics Using Graph Transformations. In: Gorrieri, R., Wehrheim, H. (eds.) FMOODS 2006. LNCS, vol. 4037, pp. 186–201. Springer, Heidelberg (2006)
Kreowski, H.-J.: Transformations of Derivation Sequences in Graph Grammars. In: Karpinski, M. (ed.) FCT 1977. LNCS, vol. 56, pp. 275–286. Springer, Heidelberg (1977)
Meredith, P., Hills, M., Roşu, G.: An executable rewriting logic semantics of K-Scheme. In: SCHEME, Tech. Rep. DIUL-RT-0701, pp. 91–103. U. Laval (2007)
Meseguer, J.: Conditional rewriting logic as a unified model of concurrency. J. of Theoretical Computer Science 96(1), 73–155 (1992)
Meseguer, J.: Rewriting Logic as a Semantic Framework for Concurrency. In: Sassone, V., Montanari, U. (eds.) CONCUR 1996. LNCS, vol. 1119, pp. 331–372. Springer, Heidelberg (1996)
Montanari, U.: True Concurrency: Theory and Practice. In: Bird, R.S., Wing, J.M., Morgan, C.C. (eds.) MPC 1992. LNCS, vol. 669, pp. 14–17. Springer, Heidelberg (1993)
Montanari, U., Pistore, M., Rossi, F.: Modeling concurrent, mobile and coordinated systems via graph transformations. In: Handbook of Graph Grammars, vol. 3, pp. 189–268. World Sci. (1999)
Plump, D.: Term graph rewriting. In: Handbook of Graph Grammars, vol. 2, pp. 3–61. World Sci. (1999)
Roşu, G., Şerbănuţă, T.F.: An overview of the K semantic framework. J. of Logic and Algebraic Programming 79(6), 397–434 (2010)
Şerbănuţă, T.F., Roşu, G.: KRAM—extended report. Technical Report, UIUC (September 2010), http://hdl.handle.net/2142/17337
Wright, A.K., Felleisen, M.: A syntactic approach to type soundness. Information and Computation 115(1), 38–94 (1994)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Şerbănuţă, T.F., Roşu, G. (2012). A Truly Concurrent Semantics for the \(\mathbb{K}\) Framework Based on Graph Transformations. In: Ehrig, H., Engels, G., Kreowski, HJ., Rozenberg, G. (eds) Graph Transformations. ICGT 2012. Lecture Notes in Computer Science, vol 7562. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-33654-6_20
Download citation
DOI: https://doi.org/10.1007/978-3-642-33654-6_20
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-33653-9
Online ISBN: 978-3-642-33654-6
eBook Packages: Computer ScienceComputer Science (R0)