Abstract.
This paper investigates the issue of responsiveness of interoperating components: one not causing the other to deadlock. This is obviously related to the question of whether the two deadlock when put in parallel. However, it is different in that we require that a specific process P is not itself blocked by a plugin Q when it could otherwise have progressed, instead of asking that either process can always proceed (deadlock freedom). The issue becomes yet more subtle when dealing with processes which can nondeterministically block, either through graceful termination or unfortunate deadlock. The relational predicate, that is, binary relation on processes, which we provide is refinement-closed. This is significant as it allows components to be developed independently. In addition, it can be mechanically verified. The contribution of this paper is to identify the issue of responsiveness; to define appropriate properties; to demonstrate the suitability of these properties and consider how they can be mechanically verified. The notation used is CSP with automatic model-checking provided by the FDR tool.
Similar content being viewed by others
Author information
Authors and Affiliations
Corresponding author
Additional information
Supported in part by the US Office of Naval Research.
Received December 2003 Revised July 2004 Accepted July 2004 by D.A. Duce
Rights and permissions
About this article
Cite this article
Reed, J., Sinclair, J. & Roscoe, A. Responsiveness of interoperating components. Formal Aspects of Computing 16, 394–411 (2004). https://doi.org/10.1007/s00165-004-0050-9
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00165-004-0050-9