A model for distributed systems based on graph rewriting
- 1 April 1987
- journal article
- Published by Association for Computing Machinery (ACM) in Journal of the ACM
- Vol. 34 (2) , 411-449
- https://doi.org/10.1145/23005.24038
Abstract
In our model, a graph describes a net of processes communicating through ports and, at the same time, its computation history consisting of a partial ordering of events. Stand-alone evolution of processes is specified by context-free productions. From productions and a basic synchronization mechanism, a set of context-sensitive rewriting rules that models the evolution of processes connected to the same ports can be derived. A computation is a sequence of graphs obtained by successive rewritings. The result of a finite computation is its last graph, whereas the result of an infinite computation is the limit, infinite graph defined through a completion technique based on metric spaces. A result characterizes a concurrent computation, since it abstracts from any particular interleaving of concurrent events, while in the meantime providing information about termination, partial or complete deadlocks, and fairness. Not every result is acceptable, however, but only the computations that produce a result no longer rewritable are successful. Infinite successful computations are shown to coincide with weakly fair computations, and a scheduler yielding all and only such computations is defined.Keywords
This publication has 15 references indexed in Scilit:
- Concurrent histories: A basis for observing distributed systemsJournal of Computer and System Sciences, 1987
- Amalgamation of graph transformations: A synchronization mechanismJournal of Computer and System Sciences, 1987
- A Theory of Communicating Sequential ProcessesJournal of the ACM, 1984
- Calculi for synchrony and asynchronyTheoretical Computer Science, 1983
- Processes and the denotational semantics of concurrencyInformation and Control, 1982
- Behaviors of Processes and Synchronized Systems of ProcessesPublished by Springer Nature ,1982
- Event structure semantics for CCS and related languagesPublished by Springer Nature ,1982
- Behaviours of concurrent systemsTheoretical Computer Science, 1980
- Flowgraphs and Flow AlgebrasJournal of the ACM, 1979
- Communicating sequential processesCommunications of the ACM, 1978