Results 1  10
of
51
The Fusion Calculus: Expressiveness and Symmetry in Mobile Processes (Extended Abstract)
 LICS'98
, 1998
"... We present the fusion calculus as a significant step towards a canonical calculus of concurrency. It simplifies and extends the πcalculus.
The fusion calculus contains the polyadic πcalculus as a proper subcalculus and thus inherits all its expressive power. The gain is that fusion contains action ..."
Abstract

Cited by 108 (13 self)
 Add to MetaCart
We present the fusion calculus as a significant step towards a canonical calculus of concurrency. It simplifies and extends the πcalculus.
The fusion calculus contains the polyadic πcalculus as a proper subcalculus and thus inherits all its expressive power. The gain is that fusion contains actions akin to updating a shared state, and a scoping construct for bounding their effects. Therefore it is easier to represent computational models such as concurrent constraints formalisms. It is also easy to represent the so called strong reduction strategies in the lambdacalculus, involving reduction under abstraction. In the πcalculus these tasks require elaborate encodings.
The dramatic main point of this paper is that we achieve these improvements by simplifying the πcalculus rather than adding features to it. The fusion calculus has only one binding operator where the πcalculus has two (input and restriction). It has a complete symmetry between input and output actions where the πcalculus has not. There is only one sensible variety of bisimulation congruence where the picalculus has at least three (early, late and open). Proofs about the fusion calculus, for example in complete axiomatizations and full abstraction, therefore are shorter and clearer.
Our results on the fusion calculus in this paper are the following. We give a structured operational semantics in the traditional style. The novelty lies in a new kind of action, fusion actions for emulating updates of a shared state. We prove that the calculus contains the πcalculus as a subcalculus. We define and motivate the bisimulation equivalence and prove a simple characterization of its induced congruence, which is given two versions of a complete axiomatization for finite terms. The expressive power of the calculus is demonstrated by giving a straightforward encoding of the strong lazy lambdacalculus, which admits reduction under lambda abstraction.
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 88 (14 self)
 Add to MetaCart
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.
A Concurrent Object Calculus: Reduction and Typing
 HLCL'98 TO APPEAR
, 1998
"... We obtain a new formalism for concurrent objectoriented languages by extending Abadi and Cardelli's imperative object calculus with operators for concurrency from thecalculus and with operators for synchronisation based on mutexes. Our syntax of terms is extremely expressive; in a precise sense it ..."
Abstract

Cited by 81 (4 self)
 Add to MetaCart
We obtain a new formalism for concurrent objectoriented languages by extending Abadi and Cardelli's imperative object calculus with operators for concurrency from thecalculus and with operators for synchronisation based on mutexes. Our syntax of terms is extremely expressive; in a precise sense it unifies notions of expression, process, store, thread, and configuration. We present a chemicalstyle reduction semantics, and prove it equivalent to a structural operational semantics. We identify a deterministic fragment that is closed under reduction and show that it includes the imperative object calculus. A collection of type systems for objectoriented constructs is at the heart of Abadi and Cardelli's work. We recast one of Abadi and Cardelli's firstorder type systems with object types and subtyping in the setting of our calculus and prove subject reduction. Since our syntax of terms includes both stores and running expressions, we avoid the need to separate store typing from typing of expressions. We translate asynchronous communication channels and the choicefree asynchronouscalculus into our calculus to illustrate its expressiveness; the types of readonly and writeonly channels are supertypes of readwrite channels.
Secure Information Flow as Typed Process Behaviour
, 2000
"... We propose a new type discipline for the calculus in which secure information ow is guaranteed by static type checking. Secrecy levels are assigned to channels and are controlled by subtyping. A behavioural notion of types capturing causality of actions plays an essential role for ensuring safe ..."
Abstract

Cited by 52 (0 self)
 Add to MetaCart
We propose a new type discipline for the calculus in which secure information ow is guaranteed by static type checking. Secrecy levels are assigned to channels and are controlled by subtyping. A behavioural notion of types capturing causality of actions plays an essential role for ensuring safe information ow in diverse interactive behaviours, making the calculus powerful enough to embed known calculi for typebased security. The paper introduces the core part of the calculus, presents its basic syntactic properties, and illustrates its use as a tool for programming language analysis by a sound embedding of a secure multithreaded imperative calculus of Volpano and Smith. The embedding leads to a practically meaningful extension of their original type discipline.
Functional Nets
 IN PROC. EUROPEAN SYMPOSIUM ON PROGRAMMING, NUMBER 1782 IN LNCS
, 2000
"... Functional nets combine key ideas of functional programming and Petri nets to yield a simple and general programming notation. They ..."
Abstract

Cited by 34 (5 self)
 Add to MetaCart
Functional nets combine key ideas of functional programming and Petri nets to yield a simple and general programming notation. They
Strong Normalisation in the πCalculus
, 2001
"... We introduce a typed πcalculus where strong normalisation is ensured by typability. Strong normalisation is a useful property in many computational contexts, including distributed systems. In spite of its simplicity, our type discipline captures a wide class of converging namepassing interactive b ..."
Abstract

Cited by 30 (15 self)
 Add to MetaCart
We introduce a typed πcalculus where strong normalisation is ensured by typability. Strong normalisation is a useful property in many computational contexts, including distributed systems. In spite of its simplicity, our type discipline captures a wide class of converging namepassing interactive behaviour. The proof of strong normalisability combines methods from typed lcalculi and linear logic with processtheoretic reasoning. It is adaptable to systems involving state and other extensions. Strong normalisation is shown to have significant consequences, including finite axiomatisation of weak bisimilarity, a fully abstract embedding of the simplytyped lcalculus with products and sums and basic liveness in interaction.
Sequentiality and the πCalculus
, 2001
"... We present a simple type discipline for the πcalculus which precisely captures the notion of sequential functional computation as a specific class of name passing interactive behaviour. The typed calculus allows direct interpretation of both callbyname and callbyvalue sequential functions. T ..."
Abstract

Cited by 29 (15 self)
 Add to MetaCart
We present a simple type discipline for the πcalculus which precisely captures the notion of sequential functional computation as a specific class of name passing interactive behaviour. The typed calculus allows direct interpretation of both callbyname and callbyvalue sequential functions. The precision of the representation is demonstrated by way of a fully abstract encoding of PCF.
A Concurrent Lambda Calculus with Futures
 THEORETICAL COMPUTER SCIENCE
, 2006
"... We introduce a new lambda calculus with futures, λ(fut), to model the operational semantics of concurrent extensions of ML. λ(fut) can safely express a variety of highlevel concurrency constructs, including channels, semaphores, or ports. Safe implementations of these constructs in (fut) cannot be ..."
Abstract

Cited by 22 (4 self)
 Add to MetaCart
We introduce a new lambda calculus with futures, λ(fut), to model the operational semantics of concurrent extensions of ML. λ(fut) can safely express a variety of highlevel concurrency constructs, including channels, semaphores, or ports. Safe implementations of these constructs in (fut) cannot be corrupted in any welltyped context. We prove safety on basis of a linear type system.
Safe Compositional Network Sketches: The Formal Framework
, 2009
"... NetSketch is a tool for the specification of constrainedflow applications and the certification of desirable safety properties imposed thereon. NetSketch is conceived to assist system integrators in two types of activities: modeling and design. As a modeling tool, it enables the abstraction of an e ..."
Abstract

Cited by 18 (17 self)
 Add to MetaCart
NetSketch is a tool for the specification of constrainedflow applications and the certification of desirable safety properties imposed thereon. NetSketch is conceived to assist system integrators in two types of activities: modeling and design. As a modeling tool, it enables the abstraction of an existing system while retaining sufficient information about it to carry out future analysis of safety properties. As a design tool, NetSketch enables the exploration of alternative safe designs as well as the identification of minimal requirements for outsourced subsystems. NetSketch embodies a lightweight formal verification philosophy, whereby the power (but not the heavy machinery) of a rigorous formalism is made accessible to users via a friendly interface. NetSketch does so by exposing tradeoffs between exactness of analysis and scalability, and by combining traditional wholesystem analysis with a more flexible compositional analysis. The compositional analysis is based on a stronglytyped DomainSpecific Language (DSL) for describing and reasoning about constrainedflow networks at various levels of sketchiness along with invariants that need to be enforced thereupon. In this paper, we define the formal system underlying the operation of NetSketch, in particular the DSL behind NetSketch’s userinterface when used in “sketch mode”, and prove its soundness relative to appropriatelydefined notions of validity. In a companion paper [6], we overview NetSketch, highlight its salient features, and illustrate how it could be used in two applications: the management/shaping of traffic flows in a vehicular network (as a proxy for CPS applications) and in a streaming media network (as a proxy for Internet applications). 1