Avoiding Diamonds in Desynchronisation
2014 (English)In: Science of Computer Programming, ISSN 0167-6423, Vol. 91, no PART A, 45-69 p.Article in journal (Refereed) Published
The design of concurrent systems often assumes synchronous communication between different parts of a system. When system components are physically apart, this assumption becomes inappropriate. Desynchronisation is a technique that aims to implement a synchronous design in an asynchronous manner by placing buffers between the components of the synchronous design. When queues are used as buffers, the so-called 'diamond property' (among others) ensures correct operation of the desynchronised design. However, this property is difficult to establish in practice. In this paper, we give sufficient and necessary conditions under which a concrete synchronous design (i.e., without the unobservable action) is equivalent to an asynchronous design and formally prove that the diamond property is no longer needed for desynchronisation when half-duplex queues are used as a communication buffer. Furthermore, we discuss how the half-duplex condition can be further relaxed when the diamond property can be partially guaranteed. To illustrate how this theory may be applied, we desynchronise the synchronous systems that are synthesised using supervisory control theory. © 2013 Elsevier B.V.
Place, publisher, year, edition, pages
Amsterdam: Elsevier, 2014. Vol. 91, no PART A, 45-69 p.
Synchrony to asynchrony, Desynchronisation, Branching bisimulation, Equivalence checking of infinite state systems
IdentifiersURN: urn:nbn:se:hh:diva-24984DOI: 10.1016/j.scico.2013.12.002ISI: 000338401300003ScopusID: 2-s2.0-84901613572OAI: oai:DiVA.org:hh-24984DiVA: diva2:710254
9th International Symposium on Formal Aspects of Component Software (FACS), Mountain View, CA, USA, September 12-14, 2012
Projects“Integrated Multi-formalism Tool Support for the Design of Networked Embedded Control Systems” (MULTIFORM) project
FunderEU, FP7, Seventh Framework Programme, INFSO-ICT-224249