On the asynchronous nature of the asynchronous π-calculus
Résumé
We address the question of what kind of asynchronous com- munication is exactly modeled by the asynchronous pi-calculus (pi_a). To this purpose we define a calculus pi_B where channels are represented explicitly as special buffer processes. The base language for pi_B is the (synchronous) pi-calculus, except that ordinary processes communicate only via buffers. Then we compare this calculus with pi_a. It turns out that there is a strong correspondence between pi_a and pi_B in the case that buffers are bags: we can indeed encode each pi_a process into a strongly asynchronous bisimilar pi_B process, and each pi_B process into a weakly asynchronous bisimilar pi_a process. In case the buffers are queues or stacks, on the contrary, the correspondence does not hold. We show indeed that it is not possible to translate a stack or a queue into a weakly asynchronous bisimilar pi_a process. Actually, for stacks we show an even stronger result, namely that they cannot be encoded into weakly (asynchronous) bisimilar processes in a pi-calculus without mixed choice.
Domaines
Logique en informatique [cs.LO]Origine | Fichiers produits par l'(les) auteur(s) |
---|