Results 1  10
of
33
Algebraic laws for nondeterminism and concurrency
 Journal of the ACM
, 1985
"... Abstract. Since a nondeterministic and concurrent program may, in general, communicate repeatedly with its environment, its meaning cannot be presented naturally as an input/output function (as is often done in the denotational approach to semantics). In this paper, an alternative is put forth. Firs ..."
Abstract

Cited by 491 (12 self)
 Add to MetaCart
Abstract. Since a nondeterministic and concurrent program may, in general, communicate repeatedly with its environment, its meaning cannot be presented naturally as an input/output function (as is often done in the denotational approach to semantics). In this paper, an alternative is put forth. First, a definition is given of what it is for two programs or program parts to be equivalent for all observers; then two program parts are said to be observation congruent iff they are, in all program contexts, equivalent. The behavior of a program part, that is, its meaning, is defined to be its observation congruence class. The paper demonstrates, for a sequence of simple languages expressing finite (terminating) behaviors, that in each case observation congruence can be axiomatized algebraically. Moreover, with the addition of recursion and another simple extension, the algebraic language described here becomes a calculus for writing and specifying concurrent programs and for proving their properties.
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.
Symmetry Breaking In Distributed Networks
 Information and Computation
, 1981
"... Given a ring of n processors it is required to design the processors such that they will be able to choose a leader (a uniquely designated processor) by sending messages along the ring. If the processors are indistinguishable then there exists no deterministic algorithm to solve the problem. To over ..."
Abstract

Cited by 70 (0 self)
 Add to MetaCart
Given a ring of n processors it is required to design the processors such that they will be able to choose a leader (a uniquely designated processor) by sending messages along the ring. If the processors are indistinguishable then there exists no deterministic algorithm to solve the problem. To overcome this difficulty, probabilistic algorithms are proposed. The algorithms may run forever but they terminate within finite time on the average. For the synchronous case several algorithms are presented: The simplest requires, on the average, the transmission of no more than 2.442n bits and O (n) time. More sophisticated algorithms trade time for communication complexity. If the processors work asynchronously then on the average O (nlogn) bits are transmitted. In the above cases the size of the ring was assumed to be known to all the processors. If the size is not known then finding it may be done only with high probability: any algorithm may yield incorrect results (with nonzero probabilit...
A brief history of process algebra
 Theor. Comput. Sci
, 2004
"... Abstract. This note addresses the history of process algebra as an area of research in concurrency theory, the theory of parallel and distributed systems in computer science. Origins are traced back to the early seventies of the twentieth century, and developments since that time are sketched. The a ..."
Abstract

Cited by 56 (1 self)
 Add to MetaCart
Abstract. This note addresses the history of process algebra as an area of research in concurrency theory, the theory of parallel and distributed systems in computer science. Origins are traced back to the early seventies of the twentieth century, and developments since that time are sketched. The author gives his personal views on these matters. He also considers the present situation, and states some challenges for the future.
On Describing the Behavior and Implementation of Distributed Systems
, 1981
"... A simple, basic and general model for describing both the (inputoutput) behavior and the implementation of distributed systems is presented. An important feature of the model is the separation of the machinery used to describe the implementation and the behavior. This feature makes the model potent ..."
Abstract

Cited by 48 (14 self)
 Add to MetaCart
A simple, basic and general model for describing both the (inputoutput) behavior and the implementation of distributed systems is presented. An important feature of the model is the separation of the machinery used to describe the implementation and the behavior. This feature makes the model potentially useful for design specification of systems and of subsystems.
Hope: An Experimental Applicative Language
, 1980
"... An applicative language called HOPE is described and discussed. The underlying goal of the design and implementation effort was to produce a very simple programming language which encourages the construction of clear and manipulable programs. HOPE does not include an assignment statement; this is fe ..."
Abstract

Cited by 39 (3 self)
 Add to MetaCart
An applicative language called HOPE is described and discussed. The underlying goal of the design and implementation effort was to produce a very simple programming language which encourages the construction of clear and manipulable programs. HOPE does not include an assignment statement; this is felt to be an important simplification. The user may freely define his own data types, without the need to devise a complicated encoding in terms of lowlevel types. The language is very strongly typed, and as implemented it incorporates a typechecker which handles polymorphic types and overloaded operators. Functions are defined by a set of recursion equations; the lefthand side of each equation includes a pattern used to determine which equation to use for a given argument. The availability of arbitrary higherorder types allows functions to be defined which 'package' recursion. Lazilyevaluated lists are provided, allowing the use of infinite lists which could be used to provide interactive input/output and concurrency.
Symmetry Breaking in Anonymous Networks: Characterizations
, 1996
"... We characterize exactly the cases in which it is possible to elect a leader in an anonymous network of processors by a deterministic algorithm, and we show that for every network there is a weak election algorithm (i.e., if election is impossible all processors detect this fact in a distributed way) ..."
Abstract

Cited by 35 (10 self)
 Add to MetaCart
We characterize exactly the cases in which it is possible to elect a leader in an anonymous network of processors by a deterministic algorithm, and we show that for every network there is a weak election algorithm (i.e., if election is impossible all processors detect this fact in a distributed way). 1 Introduction We consider the problem of electing a leader in an anonymous network of processors. More precisely our model is that of a directed graph, with vertices corresponding to processors, and arcs to communication links (we freely interchange symmetric digraphs and undirected graphs). We make no assumption on the structure of the network: selfloops and parallel arcs are allowed. In particular, processors are anonymous: they do not have unique identifiers. We consider both synchronous and asynchronous processor activation models, and models with and without "port awareness" (local names for outgoing and/or for incoming arcs). We consider both unidirectional and bidirectional links. ...
The SL Synchronous Language
 IEEE Trans. on Software Engineering
, 1996
"... : We present a new synchronous programming language named SL based on Esterel, in which hypothesis about signal presences or absences are not allowed. Thus, one can decide that a signal was absent during one instant only at the end of this instant, and so reaction to this absence is delayed. Esterel ..."
Abstract

Cited by 27 (6 self)
 Add to MetaCart
: We present a new synchronous programming language named SL based on Esterel, in which hypothesis about signal presences or absences are not allowed. Thus, one can decide that a signal was absent during one instant only at the end of this instant, and so reaction to this absence is delayed. Esterel "causality problems" are avoided at the price of replacing strong preemptions by weak ones. An operational semantics based on rewriting rules is given and an implementation is described which allows either to directly execute programs, or to produce automata. Keywords: Parallelism, concurrency, synchronous programming languages, automata, reactive systems. (R'esum'e : tsvp) Unite de recherche INRIA SophiaAntipolis 2004 route des Lucioles, BP 93, 06902 SOPHIAANTIPOLIS Cedex (France) Telephone : (33) 93 65 77 77  Telecopie : (33) 93 65 77 65 Le langage synchrone SL R'esum'e : On pr'esente le langage de programmation SL qui est un nouveau langage synchrone construit `a partir d'Estere...
A term model for CCS
 9 th Symposium on Mathematical Foundations of Computer Science
, 1980
"... In a series of papers [Hen2, Mill, Mi147] Milner and his colleagues have studied a model of parallelism in which concurrent systems communicate by sending and receiving values along lines. Communication is synchronised in that the exchange of values takes place only when the sender and receiver are ..."
Abstract

Cited by 21 (3 self)
 Add to MetaCart
In a series of papers [Hen2, Mill, Mi147] Milner and his colleagues have studied a model of parallelism in which concurrent systems communicate by sending and receiving values along lines. Communication is synchronised in that the exchange of values takes place only when the sender and receiver are both ready, and the exchange
A Semantic Theory for ValuePassing Processes Late Approach  Part I: A Denotational Model and Its Complete Axiomatization
, 1995
"... A general class of languages and denotational models for valuepassing calculi based on the late semantic approach is defined. A concrete instantiation of the general syntax is given. This is a modification of the standard CCS according to the late approach. A denotational model for the concrete ..."
Abstract

Cited by 11 (4 self)
 Add to MetaCart
A general class of languages and denotational models for valuepassing calculi based on the late semantic approach is defined. A concrete instantiation of the general syntax is given. This is a modification of the standard CCS according to the late approach. A denotational model for the concrete language is given, an instantiation of the general class. An equationally based proof system is defined and shown to be sound and complete with respect to the model.