Results 1 
9 of
9
On Asynchrony in NamePassing Calculi
 In
, 1998
"... The asynchronous picalculus is considered the basis of experimental programming languages (or proposal of programming languages) like Pict, Join, and Blue calculus. However, at a closer inspection, these languages are based on an even simpler calculus, called Local (L), where: (a) only the output c ..."
Abstract

Cited by 97 (15 self)
 Add to MetaCart
(Show Context)
The asynchronous picalculus is considered the basis of experimental programming languages (or proposal of programming languages) like Pict, Join, and Blue calculus. However, at a closer inspection, these languages are based on an even simpler calculus, called Local (L), where: (a) only the output capability of names may be transmitted; (b) there is no matching or similar constructs for testing equality between names. We study the basic operational and algebraic theory of Lpi. We focus on bisimulationbased behavioural equivalences, precisely on barbed congruence. We prove two coinductive characterisations of barbed congruence in Lpi, and some basic algebraic laws. We then show applications of this theory, including: the derivability of delayed input; the correctness of an optimisation of the encoding of callbyname lambdacalculus; the validity of some laws for Join.
Asynchronous process calculi: the firstorder and higherorder paradigms (Tutorial)
, 1999
"... ..."
A Distributed PiCalculus with Local Areas of Communication
 in: High Level Concurrent Languages
, 2001
"... This paper introduces a process calculus designed to capture the phenomenon of names which are known universally but always refer to local information. Our system extends the picalculus so that a channel name can have within its scope several disjoint local areas. Such a channel name may be used fo ..."
Abstract

Cited by 6 (0 self)
 Add to MetaCart
This paper introduces a process calculus designed to capture the phenomenon of names which are known universally but always refer to local information. Our system extends the picalculus so that a channel name can have within its scope several disjoint local areas. Such a channel name may be used for communication within an area, it may be sent between areas, but it cannot itself be used to transmit information from one area to another. Areas are arranged in a hierarchy of levels, distinguishing for example between a single application, a machine, or a whole network. We give an operational semantics for the calculus, and develop a type system that guarantees the proper use of channels within their local areas. We illustrate with models of an internet service protocol and a pair of distributed agents.
Locality and Polyadicity in Asynchronous NamePassing Calculi
 LNCS 1784 (2000
, 2000
"... We give a divergencefree encoding of polyadic Local π into its monadic variant. Local π is a subcalculus of asynchronous πcalculus where the recipients of a channel are local to the process that has created the channel. We prove the encoding fullyabstract with respect to bar ..."
Abstract

Cited by 5 (1 self)
 Add to MetaCart
We give a divergencefree encoding of polyadic Local &pi; into its monadic variant. Local &pi; is a subcalculus of asynchronous &pi;calculus where the recipients of a channel are local to the process that has created the channel. We prove the encoding fullyabstract with respect to barbed congruence. This implies that in Local &pi; (i) polyadicity does not add extra expressive power, and (ii) when studying the theory of polyadic Local &pi; we can focus on the simpler monadic variant. Then, we show how the idea of our encoding can be adapted to namepassing calculi with nonbinding input prefix, such as Chi, Fusion and &pi;F calculi .
Typed πcalculus at work: a proof of Jones's parallelisation transformation on concurrent objects
 IN FOURTH WORKSHOP ON FOUNDATIONS OF OBJECTORIENTED LANGUAGES (FOOL
, 1996
"... Cliff Jones [Jon93a] has raised the challenge of how to prove the validity of a certain transformation that increases the concurrent activity in a system of concurrent objects. We present a proof of this transformation that uses a typed πcalculus and typed behavioural equivalences. Our type syst ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
Cliff Jones [Jon93a] has raised the challenge of how to prove the validity of a certain transformation that increases the concurrent activity in a system of concurrent objects. We present a proof of this transformation that uses a typed πcalculus and typed behavioural equivalences. Our type system is that for receptiveness; it guarantees that the inputend of certain channels is always ready to receive messages (at least as long as there are processes that could send such messages), and that all messages will be processed using the same continuation. This work is also intended as an example of the usefulness of πcalculus types for reasoning.
An Algebraic Framework for Optimizing Parallel Programs
 Proceedings of Symposium on Software Engineering for Parallel and Distributed Systems, pp.28–38, IEEE
, 1998
"... This paper proposes a theoretical framework for verifying and deriving code optimizations for programs written in parallel programming languages. The key idea of this framework is to formalize code optimizations as compositional transformation rules for programs presented as terms of an enriched pro ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
(Show Context)
This paper proposes a theoretical framework for verifying and deriving code optimizations for programs written in parallel programming languages. The key idea of this framework is to formalize code optimizations as compositional transformation rules for programs presented as terms of an enriched process calculus. The rules are formulated on the basis of an algebraic order relation between two programs which states that they are behaviorally equivalent and one of them is faster than the other. The correctness and e#ectiveness of optimized programs derived from the rules can be ensured in all circumstances. The framework is unique among other existing works in being able to quantitatively analyze the temporal costs of synchronizations among parallel programs. This paper presents basic ideas and definitions of the framework with several examples. 1. Introduction Parallel computation will play an increasingly important role in many areas of computer systems. As it becomes popular, custome...
Interpreting functions as πcalculus processes: a tutorial
, 1999
"... This paper is concerned with the relationship betweencalculus and ��calculus. Thecalculus talks about functions and their applicative behaviour. This contrasts with the ��calculus, that talks about processes and their interactive behaviour. Application is a special form of interaction, and there ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
This paper is concerned with the relationship betweencalculus and ��calculus. Thecalculus talks about functions and their applicative behaviour. This contrasts with the ��calculus, that talks about processes and their interactive behaviour. Application is a special form of interaction, and therefore functions can be seen as a special form of processes. We study how the functions of thecalculus (the computable functions) can be represented as ��calculus processes. The ��calculus semantics of a language induces a notion of equality on the terms of that language. We therefore also analyse the equality among functions that is induced by their representation as ��calculus processes. This paper is intended as a tutorial. It however contains some original contributions. The main ones are: the use of wellknown Continuation Passing Style transforms to derive the encodings into ��calculus and prove their correctness; the encoding of typedcalculi.
A Virtual Machine for a Process Calculus
"... Despite extensive theoretical work on processcalculi, virtual machine specications and implementations of actual computational models are still scarce. ..."
Abstract
 Add to MetaCart
Despite extensive theoretical work on processcalculi, virtual machine specications and implementations of actual computational models are still scarce.
On Confluence in the nCalculus
"... Abstract. An account of the basic theory of confluence in the 1rcalculus is presented, techniques for showing confluence of mobile systems are given, and the utility of some of the theory presented is illustrated via an analysis of a distributed algorithm. 1 In t roduct ion Confluence arises in a v ..."
Abstract
 Add to MetaCart
Abstract. An account of the basic theory of confluence in the 1rcalculus is presented, techniques for showing confluence of mobile systems are given, and the utility of some of the theory presented is illustrated via an analysis of a distributed algorithm. 1 In t roduct ion Confluence arises in a variety of forms in computation theory. It was first studied in the context of concurrent systems by Milner in [6]. Its essence, to quote [7], is that "of any two possible actions, the occurrence of one will never preclude the other". As shown in the works cited, for pure CCS agents confluence implies detern'linacy and semantieinvariance under silent actions, and is preserved by several important systembuilding operations. These facts make it possible to guarantee by construction that certain systems are confluent and to exploit his fact fruitfully when analysing their behaviours. A more general study was made in [1] which in particular clarified the relationships among various notions of confluence and semanticinvariance under silent actions, and illustrated the utility