Team Comète

Overall Objectives
Scientific Foundations
Application Domains
New Results
Other Grants and Activities

Section: New Results

Expressiveness of Concurrent formalisms

One of the most pressing questions in Concurrency is how the several languages and models that have been proposed compare to each other, and, in particular, which ones are the most suitable to capture the nature of concurrent and distributed computation. We have investigated the expressive power of various formalisms wrt to some of the key aspects of concurrency.

Synchronous vs Asynchronous Communication

One of the early results about the asynchronous $ \pi$ -calculus which significantly contributed to its popularity is the capability of encoding the output prefix of the (choiceless) $ \pi$ -calculus in a natural and elegant way. Encodings of this kind were proposed by Honda and Tokoro [64] , by Nestmann [75] and (independently) by Boudol [42] . In [18] , [11] , we have investigated whether the above encodings preserve De Nicola and Hennessy's testing semantics. It turns out that, under some general conditions, no encoding of output prefix is able to preserve the must testing. This negative result is due to (a) the non atomicity of the sequences of steps which are necessary in the asynchronous $ \pi$ -calculus to mimic synchronous communication, and (b) testing semantics's sensitivity to divergence.

Replication vs Recursion

Another line of investigation has been represented by the comparison between various forms of recursion and replication in concurrent calculi. We have noted that the expressive power of recursion, and in particular whether or not it can be encoded by replication, depends critically on the notion of scope adopted for channel names. In [30] we have surveyed various definitions of scope proposed in literature, and we have discussed their impact on the expressiveness of recursion.

Linearity vs Persistence

Finally, in [29] we have compared the expressive power of linear and persistent communication. We have consider four fragments of the $ \pi$ -calculus, corresponding to combinations of linearity/persistence also present in other frameworks such as Concurrent Constraint Programming and several calculi for security. The study is presented by providing (or proving the non-existence of) encodings among the fragments, a processes-as-formulae interpretation and a reduction from Minsky machines.

Distributed Agreement

In [28] we have systematized a collection of results on the expressiveness of process calculi obtained by the means of impossibility results in the field of distributed computing. In particular, we have focused on the symmetric leader election problem which allows to classify languages based on their capability of achieving a distributed agreement.


In [17] we have defined fair computations in the $ \pi$ -calculus. We have followed Costa and Stirling's approach for CCS-like languages [53] , [54] but exploited a more natural labeling method of process actions to filter out unfair process executions. The new labeling allowed us to prove all the significant properties of the original one, such as unicity, persistence and disappearance of labels. It also turned out that the labeled $ \pi$ -calculus is a conservative extension of the standard one. We contrasted the existing fair testing [44] , [74] with those that naturally arise by imposing weak and strong fairness. This comparison provides the expressiveness of the various fair testing-based semantics and emphasizes the discriminating power of the one already proposed in the literature.

CCS with Replication and Grammars

In [34] we have explored the expressiveness of CCS with replication (CCSr) w.r.t. the existence of faithful encodings of models of computability strictly less expressive than Turing Machines. Namely, grammars of types 1,2 and 3 in the Chomsky Hierarchy. We have defined the language generated by a process as the set of finite maximal sequences of visible actions the process can perform. We have captured the notion of faithful encoding by restricting the co-domain of the encodings to a sub-class CCSr-w of CCSr processes. This restriction prevents language preserving encodings from adding non-terminating computations which do not correspond to the derivations of the encoded grammar. We have provided a language preserving encoding of type 3 grammars (Regular Languages) into CCSr-w. We then have showed that it is impossible to provide a language preserving encoding of type 2 grammars (Context Free Languages) into CCSr-w. We have showed that CCSr-w can generate languages which are not type 2. We finally have showed that the languages generated by CCSr-w processes are type 1 (Context Sensitive Languages). The impossibility result is rather surprising since it implies that the restriction of CCSr to CCSr-w processes renders an otherwise Turing powerful formalism into one that cannot encode Context-Free grammars.


Logo Inria