Results 1  10
of
15
Process algebra for synchronous communication
 Inform. and Control
, 1984
"... Within the context of an algebraic theory of processes, an equational specification of process cooperation is provided. Four cases are considered: free merge or interleaving, merging with communication, merging with mutual exclusion of tight regions, and synchronous process cooperation. The rewrite ..."
Abstract

Cited by 360 (51 self)
 Add to MetaCart
Within the context of an algebraic theory of processes, an equational specification of process cooperation is provided. Four cases are considered: free merge or interleaving, merging with communication, merging with mutual exclusion of tight regions, and synchronous process cooperation. The rewrite system behind the communication algebra is shown to be confluent and terminating (modulo its permutative reductions). Further, some relationships are shown to hold between the four concepts of merging. © 1984 Academic Press, Inc.
Relations in Concurrency
"... The theme of this paper is profunctors, and their centrality and ubiquity in understanding concurrent computation. Profunctors (a.k.a. distributors, or bimodules) are a generalisation of relations to categories. Here they are first presented and motivated via spans of event structures, and the seman ..."
Abstract

Cited by 262 (33 self)
 Add to MetaCart
The theme of this paper is profunctors, and their centrality and ubiquity in understanding concurrent computation. Profunctors (a.k.a. distributors, or bimodules) are a generalisation of relations to categories. Here they are first presented and motivated via spans of event structures, and the semantics of nondeterministic dataflow. Profunctors are shown to play a key role in relating models for concurrency and to support an interpretation as higherorder processes (where input and output may be processes). Two recent directions of research are described. One is concerned with a language and computational interpretation for profunctors. This addresses the duality between input and output in profunctors. The other is to investigate general spans of event structures (the spans can be viewed as special profunctors) to give causal semantics to higherorder processes. For this it is useful to generalise event structures to allow events which “persist.”
Compositional Reachability Analysis Using Process Algebra
 IN PROCEEDINGS OF THE SYMPOSIUM ON TESTING, ANALYSIS, AND VERIFICATION (TAV4
, 1991
"... State explosion is the primary obstacle to practical application of reachability analysis techniques for concurrent systems. State explosion can be substantially controlled by using process algebra to achieve compositional (divideandconquer) analysis. A prototype tool incorporating process algebra ..."
Abstract

Cited by 59 (3 self)
 Add to MetaCart
State explosion is the primary obstacle to practical application of reachability analysis techniques for concurrent systems. State explosion can be substantially controlled by using process algebra to achieve compositional (divideandconquer) analysis. A prototype tool incorporating process algebra is described. The promise and problems of the approach are illustrated by applying the tool to an example that incorporates the alternating bit protocol as a module.
Bisimulation can't be traced: preliminary report
 Department of Computer Science, Cornell University
, 1988
"... Abstract. Bisimulation is the primitive notion of equivalence between concurrent processes in Milner’s Calculus of Communicating Systems (CCS); there is a nontrivial gamelike protocol for distinguishing nonbisimular processes. In contrast, process distinguishability in Hoare’s theory of Commun ..."
Abstract

Cited by 53 (7 self)
 Add to MetaCart
Abstract. Bisimulation is the primitive notion of equivalence between concurrent processes in Milner’s Calculus of Communicating Systems (CCS); there is a nontrivial gamelike protocol for distinguishing nonbisimular processes. In contrast, process distinguishability in Hoare’s theory of Communicating Sequential Processes (CSP) is determined solely on the basis of traces of visible actions. We examine what additional operations are needed to explain bisimulation similarlyspecifically in the case of finitely branching processes without silent moves. We formulate a general notion of Structured Operational Semantics for processes with Guarded recursion (GSOS), and demonstrate that bisimulation does not agree with trace congruence with respect to any set of GSOSdefinable contexts. In justifying the generality and significance of GSOS’s, we work out some of the basic proof theoretic facts which justify the SOS discipline.
Concurrent Transition Systems
 Theoretical Computer Science
, 1989
"... : Concurrent transition systems (CTS's), are ordinary nondeterministic transition systems that have been equipped with additional concurrency information, specified in terms of a binary residual operation on transitions. Each CTS C freely generates a complete CTS or computation category C , whose ..."
Abstract

Cited by 40 (5 self)
 Add to MetaCart
: Concurrent transition systems (CTS's), are ordinary nondeterministic transition systems that have been equipped with additional concurrency information, specified in terms of a binary residual operation on transitions. Each CTS C freely generates a complete CTS or computation category C , whose arrows are equivalence classes of finite computation sequences, modulo a congruence induced by the concurrency information. The categorical composition on C induces a "prefix" partial order on its arrows, and the computations of C are conveniently defined to be the ideals of this partial order. The definition of computations as ideals has some pleasant properties, one of which is that the notion of a maximal ideal in certain circumstances can serve as a replacement for the more troublesome notion of a fair computation sequence. To illustrate the utility of CTS's, we use them to define and investigate a dataflowlike model of concurrent computation. The model consists of machines, which ...
Ready Simulation, Bisimulation, and the Semantics of CCSLike Languages
, 1993
"... The questions of program comparison  asking when two programs are equal, or when one is a suitable substitute for another  are central in the semantics and verification of programs. It is not obvious what the definitions of comparison should be for parallel programs, even in the relatively sim ..."
Abstract

Cited by 21 (3 self)
 Add to MetaCart
The questions of program comparison  asking when two programs are equal, or when one is a suitable substitute for another  are central in the semantics and verification of programs. It is not obvious what the definitions of comparison should be for parallel programs, even in the relatively simple case of core languages for concurrency, such as the kernel language of Milner's CCS. We introduce some criteria for judging notions of program comparison. Our basic notion is that of a congruence: two programs are equivalent with respect to a language L and a set of observations O iff they cannot be distinguished by any observation in O in any context of L. Bisimulation, the notion of program equivalence ordinarily used with CCS, is finer than CCS congruence: there are two programs which are not bisimilar, but cannot be told apart by CCS contexts. We explore the possibility of making bisimulation into a congruence. We CCS is defined by a set of structured operational rules. We introduc...
Computations, residuals and the power of indeterminacy
 In Timo Lepisto and Arto Salomaa, editors, Proceedings of the Fifteenth ICALP
, 1988
"... We investigate the power of Katmstyle datattow networks, with processes that may exhibit indeterminate behavior. Our main result is a theorem about networks of "monotone " processes, which shows: (1) that the input/output relation of such a network is a total and monotone relation; and (2) every re ..."
Abstract

Cited by 20 (10 self)
 Add to MetaCart
We investigate the power of Katmstyle datattow networks, with processes that may exhibit indeterminate behavior. Our main result is a theorem about networks of "monotone " processes, which shows: (1) that the input/output relation of such a network is a total and monotone relation; and (2) every relation that is total, monotone, and continuous in a certain sense, is the input/output relation of such a network. Now, the class of monotone networks includes networks that compute arbitrary continuous inpu*~/output functions, an "angelic merge " network, and an "ilffinityfair merge " network that exhibits countably indeterminate branching. Since the "fair merge " relation is neither monotone nor continuous, a corollary of our main result is the impossibility of implementing fair merge in terms of continuous functions, angelic merge, and infinityfair merge. Our results are established by applying the powerftll technique of "residuals " to the computations of a network. Residuals, which have previously been used to investigate optimal reduction strategies for the Acalculus, have recently been demonstrated by one of the authors (Stark) "also to be of use in reasoning about concurrent systems. Here, we define the general notion of a "residual operation " on an automaton, and show how residual operations defined on the components of a network induce a certain preorder E on the set of computations of the network. For networks of "monotone port automata, " we show that the "fair " computations coincide with Xmaximal computations. Our results follow from this extremely convenient property. 1
The Specification and Verified Decomposition of System Requirements Using CSP
 IEEE Transactions on Software Engineering
, 1990
"... An important principle of building trustworthy systems is to rigorously analyze the critical requirements early in the development process, even before starting system design. Existing proof methods for systems of communicating processes focus on the bottomup composition of componentlevel specific ..."
Abstract

Cited by 11 (3 self)
 Add to MetaCart
An important principle of building trustworthy systems is to rigorously analyze the critical requirements early in the development process, even before starting system design. Existing proof methods for systems of communicating processes focus on the bottomup composition of componentlevel specifications into systemlevel specifications. Trustworthy system development requires, instead, the topdown derivation of component requirements from the critical system requirements. This paper describes a formal method for decomposing the requirements of a system into requirements of its component processes and a minimal, possibly empty, set of synchronization requirements. The Trace Model of Hoare's Communicating Sequential Processes (CSP) is the basis for the formal method. We apply the method to an abstract voice transmitter and describe the role that the EHDM verification system plays in the transmitter's decomposition. In combination with other verification techniques, we expect that the ...
A Generic Model of Contracts for Embedded Systems ∗
"... apport de recherche ISSN 02496399 ISRN INRIA/RR6214FR+ENG ..."
Abstract

Cited by 10 (2 self)
 Add to MetaCart
apport de recherche ISSN 02496399 ISRN INRIA/RR6214FR+ENG
Traces, pomsets, fairness and full abstraction for communicating processes
 Proc. CONCUR 2002, Brno. Springer LNCS
, 2002
"... Abstract. We provide a denotational trace semantics for processes with synchronous communication and a form of weakly fair parallelism. The semantics is fully abstract: processes have the same trace sets if and only if their communication behaviors are identical in all contexts. The model can easily ..."
Abstract

Cited by 7 (4 self)
 Add to MetaCart
Abstract. We provide a denotational trace semantics for processes with synchronous communication and a form of weakly fair parallelism. The semantics is fully abstract: processes have the same trace sets if and only if their communication behaviors are identical in all contexts. The model can easily be adapted for asynchronously communicating processes, or for sharedmemory parallel programs. We also provide a partialorder semantics, using pomsets adapted for synchronization and our form of fairness. The pomset semantics can also be adjusted to model alternative paradigms. The traces of a process can be recovered from the pomset semantics by taking all fair interleavings consistent with the partial order. 1