On Composing Communicating Systems

Franco Barbanera
(Dept. of Mathematics and Computer Science, University of Catania (Italy))
Ivan Lanese
(Focus Team, University of Bologna/INRIA (Italy))
Emilio Tuosto
(Gran Sasso Science Institute (Italy))

Communication is an essential element of modern software, yet programming and analysing communicating systems are difficult tasks. A reason for this difficulty is the lack of compositional mechanisms that preserve relevant communication properties.

This problem has been recently addressed for the well-known model of communicating systems, that is sets of components consisting of finite-state machines capable of exchanging messages. The main idea of this approach is to take two systems, select a participant from each of them, and derive from those participants a pair of coupled gateways connecting the two systems. More precisely, a message directed to one of the gateways is forwarded to the gateway in the other system, which sends it to the other system. It has been shown that, under some suitable compatibility conditions between gateways, this composition mechanism preserves deadlock freedom for asynchronous as well as symmetric synchronous communications (where sender and receiver play the same part in determining which message to exchange).

This paper considers the case of asymmetric synchronous communications where senders decide independently which message should be exchanged. We show here that preservation of lock freedom requires sequentiality of gateways, while this is not needed for preservation of either deadlock freedom or strong lock freedom.

In Clément Aubert, Cinzia Di Giusto, Larisa Safina and Alceste Scalas: Proceedings 15th Interaction and Concurrency Experience (ICE 2022), Lucca, Italy, 17th June 2022, Electronic Proceedings in Theoretical Computer Science 365, pp. 53–68.
Published: 9th August 2022.

ArXived at: https://dx.doi.org/10.4204/EPTCS.365.4 bibtex PDF
References in reconstructed bibtex, XML and HTML format (approximated).
Comments and questions to: eptcs@eptcs.org
For website issues: webmaster@eptcs.org