Results 1  10
of
19
A Framework for Comparing Models of Computation
 IEEE Transactions on ComputerAided Design of Integrated Circuits and Systems
, 1998
"... Abstract—We give a denotational framework (a “meta model”) within which certain properties of models of computation can be compared. It describes concurrent processes in general terms as sets of possible behaviors. A process is determinate if, given the constraints imposed by the inputs, there are e ..."
Abstract

Cited by 245 (54 self)
 Add to MetaCart
Abstract—We give a denotational framework (a “meta model”) within which certain properties of models of computation can be compared. It describes concurrent processes in general terms as sets of possible behaviors. A process is determinate if, given the constraints imposed by the inputs, there are exactly one or exactly zero behaviors. Compositions of processes are processes with behaviors in the intersection of the behaviors of the component processes. The interaction between processes is through signals, which are collections of events. Each event is a valuetag pair, where the tags can come from a partially ordered or totally ordered set. Timed models are where the set of tags is totally ordered. Synchronous events share the same tag, and synchronous signals contain events with the same set of tags. Synchronous processes have only synchronous signals as behaviors. Strict causality (in timed tag systems) and continuity (in untimed tag systems) ensure determinacy under certain technical conditions. The framework is used to compare certain essential features of various models of computation, including Kahn process networks, dataflow, sequential processes, concurrent sequential processes with rendezvous, Petri nets, and discreteevent systems. I.
Detecting Causal Relationships in Distributed Computations: In Search of the Holy Grail
 In search of the holy grail. Distributed Computing
, 1994
"... : The paper shows that characterizing the causal relationship between significant events is an important but nontrivial aspect for understanding the behavior of distributed programs. An introduction to the notion of causality and its relation to logical time is given; some fundamental results conce ..."
Abstract

Cited by 203 (4 self)
 Add to MetaCart
: The paper shows that characterizing the causal relationship between significant events is an important but nontrivial aspect for understanding the behavior of distributed programs. An introduction to the notion of causality and its relation to logical time is given; some fundamental results concerning the characterization of causality are presented. Recent work on the detection of causal relationships in distributed computations is surveyed. The issue of observing distributed computations in a causally consistent way and the basic problems of detecting global predicates are discussed. To illustrate the major difficulties, some typical monitoring and debugging approaches are assessed, and it is demonstrated how their feasibility is severely limited by the fundamental problem to master the complexity of causal relationships. Keywords: Distributed Computation, Causality, Distributed System, Causal Ordering, Logical Time, Vector Time, Global Predicate Detection, Distributed Debugging, ...
Associative Broadcast And The Communication Semantics Of Naming In Concurrent Systems
, 1993
"... ..."
On Interprocess Communication and the Implementation of MultiWriter Atomic Registers
, 1995
"... Two protocols for implementing nwriter mreader atomic registers with 1writer mreader atomic registers are described. In order to give complete proofs, a theory of interprocess communication is presented rst. The correctness of a protocol that implements an atomic register is proved here in t ..."
Abstract

Cited by 17 (7 self)
 Add to MetaCart
Two protocols for implementing nwriter mreader atomic registers with 1writer mreader atomic registers are described. In order to give complete proofs, a theory of interprocess communication is presented rst. The correctness of a protocol that implements an atomic register is proved here in two stages: (1) A formulation of higherlevel speci cations and a proof that the protocol satises these specications.
Embedded Software  An Agenda for Research
, 1999
"... ions that can be used include the eventbased model of Java Beans, semaphores based on Dijkstra's P/V systems [21], guarded communication [40], rendezvous, synchronous message passing, active messages [84], asynchronous message passing, streams (as in Kahn process networks [45]), dataflow (comm ..."
Abstract

Cited by 12 (1 self)
 Add to MetaCart
ions that can be used include the eventbased model of Java Beans, semaphores based on Dijkstra's P/V systems [21], guarded communication [40], rendezvous, synchronous message passing, active messages [84], asynchronous message passing, streams (as in Kahn process networks [45]), dataflow (commonly used in signal and image processing), synchronous/reactive systems [10], Linda [18], and many others. These abstractions partially or completely define a model of computation, the modular organizational and operational principles of a system. Applications are built on a model of computation, whether the designer is aware of this or not. Each possibility has strengths and weaknesses. Some guarantee determinacy, some can execute in bounded memory, and some are provably free from deadlock. Different styles of concurrency are often dictated by the application, and the 6 choice of model of computation can subtly affect the choice of algorithms. While dataflow is a good match for signal processi...
Towards synthesis of petri nets from scenarios
 of Lecture Notes in Computer Science
, 2006
"... Abstract. Given a set of scenarios, we answer the question whether this set equals the set of all executions of a Petri net. Formally, scenarios are expressed by (isomorphism classes of) labelled partial orders (LPOs), also known as pomsets or partial words. An LPO is an execution of a Petri net if ..."
Abstract

Cited by 8 (4 self)
 Add to MetaCart
Abstract. Given a set of scenarios, we answer the question whether this set equals the set of all executions of a Petri net. Formally, scenarios are expressed by (isomorphism classes of) labelled partial orders (LPOs), also known as pomsets or partial words. An LPO is an execution of a Petri net if it is a sequentialization of an LPO generated by a process of the net. We propose a definition of regions for a set of LPOs, i.e for a partial language. Given a partial language of scenarios, we prove a necessary and sufficient condition (based on regions) for the partial language of scenarios to be the partial language of executions of a place/transition Petri net. Finally, we prove our notion of regions to be consistent with the notion of regions of trace languages. 1
The tagged signal model  a preliminary version of a denotational framework for comparing models of computation
 University of California, Berkeley, CA
, 1996
"... We give a denotational framework that describes concurrent processes in very general terms as sets of possible behaviors. Compositions of processes are given as intersections of their behaviors. The interaction between processes is through signals, which are collections of events. A system is determ ..."
Abstract

Cited by 6 (3 self)
 Add to MetaCart
We give a denotational framework that describes concurrent processes in very general terms as sets of possible behaviors. Compositions of processes are given as intersections of their behaviors. The interaction between processes is through signals, which are collections of events. A system is determinate if given the constraints imposed by the inputs there are exactly one or exactly zero behaviors. Each event is a valuetag pair, where the tags can come from a partially ordered or totally ordered set. Timed models are where the set of tags is totally ordered. Synchronous events share the same tag, and synchronous signals contain events with the same set of tags. Synchronous systems contain synchronous signals. Strict causality (in timed systems) and continuity (in untimed systems) ensure determinacy under certain technical conditions. The framework is used to compare certain essential features of various models of computation, including Kahn process networks, dataflow, sequential processes, concurrent sequential processes with rendezvous, and discreteevent systems. 1.
Reducing ksafe Petri Nets to Pomsetequivalent 1safe Petri Nets
 Proc. ATPN, Aarhus
, 2000
"... It is a wellknown fact that for every ksafe Petri net, i.e. a Petri net in which no place contains more than k $\in$ N tokens under any reachable marking, there is a 1safe Petri net with the same interleaving behaviour. Indeed these types of Petri nets generate regular languages. In this paper, w ..."
Abstract

Cited by 5 (0 self)
 Add to MetaCart
It is a wellknown fact that for every ksafe Petri net, i.e. a Petri net in which no place contains more than k $\in$ N tokens under any reachable marking, there is a 1safe Petri net with the same interleaving behaviour. Indeed these types of Petri nets generate regular languages. In this paper, we show that this equivalence of ksafe and 1safe Petri nets holds also for their pomset languages, a trueconcurrency semantics. Keywords: Causality / partial order theory of concurrency, Petri nets, Pomsets.
An Analytical Taxonomy of Naming Systems
 Univ. of Texas Dept. of CS
, 1992
"... A naming system consists of the mechanisms that govern the definition, binding, and access to the names upon which communication among active objects in a parallel or distributed system depends. A concurrent algorithm may require certain patterns of communication among objects. Naming systems differ ..."
Abstract

Cited by 5 (2 self)
 Add to MetaCart
A naming system consists of the mechanisms that govern the definition, binding, and access to the names upon which communication among active objects in a parallel or distributed system depends. A concurrent algorithm may require certain patterns of communication among objects. Naming systems differ significantly in the patterns of communication that they support, and this diversity suggests the existence of efficiency tradeoffs and specialization among the various approaches. To enable the impact of these differences upon the structure of concurrent computations to be examined systematically, we present a taxonomy of naming systems that isolates a small set of fundamental naming system properties, and ranks naming systems in (partial) order of the expressiveness they derive from their properties. We compare the properties of the naming systems that underlie several representative concurrent programming systems, and give examples of algorithms that require specific naming system proper...
OntheFly Analysis of Distributed Computations
, 1995
"... At some abstraction level a distributed computation can be modeled as a partial order on a set of observable events. This paper presents an analysis technique which can be superimposed on distributed computations to analyze the structure of control flows terminating at observable events. A general ..."
Abstract

Cited by 3 (2 self)
 Add to MetaCart
At some abstraction level a distributed computation can be modeled as a partial order on a set of observable events. This paper presents an analysis technique which can be superimposed on distributed computations to analyze the structure of control flows terminating at observable events. A general algorithm working on the longest control flows of distributed computations is introduced. Moreover it is shown how this algorithm can be simplified according to the distribution of observable events or to the kind of property we want to recognize.