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.

Network Protocols (acm C.2.2), Software/Program Verification (acm D.2.4), Modes of Computation (acm F.1.2), Specifying and Verifying and Reasoning about Programs (acm F.3.1)
Network design and communication (msc 68M10), Modes of computation (nondeterministic, parallel, interactive, probabilistic, etc.) (msc 68Q10), Theory of computing (msc 68Qxx), Specification and verification (program logics, model checking, etc.) (msc 68Q60), Abstract data types; algebraic specification (msc 68Q65), Algebraic theory of languages and automata (msc 68Q70), Theory of computing (msc 68Qxx)
CWI
Department of Computer Science [CS]

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