We present a strategy for finding algebraic correctness proofs for communication systems. It is described in the setting of $mu$CRL (Groote and Ponse 93) which is, roughly, ACP (Baeten and Weijland 90, Bergstra and Klop 84) extended with a formal treatment of the interaction between data and processes. The strategy has already been applied successfully in non-trivial case studies (e.g., Bezem and Groote 94, and Fredlund, Groote, and Korver 95), but was not explicitly identified as such. Moreover, the protocols that were verified in these papers were rather complex, so that the general picture was obscured by the amount of details. In this paper, the proof strategy is materialised in the form of definitions and theorems. These results reduce a large part of protocol verification to a number of trivial facts concerning data parameters occurring in implementation and specification. This greatly simplifies protocol verifications and makes our approach amenable to mechanical assistance; experiments in this direction seem promising. The strategy is illustrated by several small examples and one larger example, the Concurrent Alternating Bit Protocol (CABP). Although simple, this protocol contains a large amount of internal parallelism, so that all relevant issues make their appearance.

, , ,
, , , , , ,
Department of Computer Science [CS]

Groote, J. F., & Springintveld, J. G. (1995). Focus points and convergent process operators. Department of Computer Science [CS]. CWI.