Modelling and Verification of Communicating Processes in the Event of Interface Difference

We extend our investigation of the notion that a system built of communicating processes is an acceptable implementation of another base or target system, in the case that respective specification and implementation processes have different interfaces and we combine into a single scheme implementation relations previously presented. We also relax significantly the restrictions placed upon target processes. Using this implementation relation scheme, two basic kinds of results are obtained: realisability and compositionality. The former ensures that implementations may be put to good use; in practice, this means that plugging an implementation into an appropriate environment should yield a conventional implementation of the target. The latter requires that a target composed of several connected systems may be implemented by connecting their respective implementations. We then give graph-based representations of the formal structures which we use, develop graph theoretic statements of the implementation relations and finally present algorithms for their automatic verification.

[1]  Cecília M. F. Rubira,et al.  Fault tolerance in concurrent object-oriented software through coordinated error recovery , 1995, Twenty-Fifth International Symposium on Fault-Tolerant Computing. Digest of Papers.

[2]  Giuseppe Pappalardo Specification and verification issues in a process language , 1996 .

[3]  Luigi V. Mancini,et al.  Formalising replicated distributed processing , 1991, [1991] Proceedings Tenth Symposium on Reliable Distributed Systems.

[4]  Luigi V. Mancini,et al.  Two Implementation Relations and the Correctness of Communicated Replicated Processing. Formal Aspects of Computing 9 , 1997 .

[5]  Andrew William Roscoe,et al.  The Theory and Practice of Concurrency , 1997 .

[6]  Luigi V. Mancini,et al.  Towards a Theory of Replicated Processing , 1988, FTRTFT.

[7]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[8]  Fred B. Schneider,et al.  Implementing fault-tolerant services using the state machine approach: a tutorial , 1990, CSUR.

[9]  Maciej Koutny,et al.  A Model of Behaviour Abstraction for Communicating Processes , 1999, STACS.

[10]  C. A. R. Hoare,et al.  A Theory of Communicating Sequential Processes , 1984, JACM.

[11]  A. W. Roscoe,et al.  An Improved Failures Model for Communicating Processes , 1984, Seminar on Concurrency.

[12]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[13]  Maciej Koutny,et al.  The ERT Model of Fault-Tolerant Computing and Its Application to a Formalisation of Coordinated Atomic Actions , 1998 .

[14]  Gilles Kahn,et al.  Coroutines and Networks of Parallel Processes , 1977, IFIP Congress.

[15]  Robert Sedgewick,et al.  Algorithms in C , 1990 .