Combining Interaction and Automation in Process Algebra Verification

Most existing verification tools for process algebras allow the correctness of specifications to be checked in a fully automatic fashion. These systems have the obvious advantage of being easy to use, but unfortunately they also have some drawbacks. In particular, they do not always succeed in completing the verification analysis, due to the problem of state explosion, and they do not provide any insight into the meaning of the intended specifications. In this paper we consider an alternative approach in which both interactive and automatic techniques are combined in the hope that the advantages of automation are retained, and that some of its disadvantages are overcome. To achieve our goal, we use the interactive theorem prover hol as a framework for supporting the theory of observational congruence of ccs, and provide a set of automatic proof tools, based on the algebraic axiomatization of the language, which can be used interactively. To illustrate how interaction and automation can be intermixed, we describe two verification strategies which exhibit different degrees of user interaction.

[1]  Paola Inverardi,et al.  A Rewriting Strategy to Verify Observational Congruence , 1990, Inf. Process. Lett..

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

[3]  Jean-Claude Fernandez ALDEBARAN : un système de vérification par réduction de processus communicants. (Aldebaran : a system of verification of communicating processes by using reduction) , 1988 .

[4]  Alonzo Church,et al.  A formulation of the simple theory of types , 1940, Journal of Symbolic Logic.

[5]  Rocco De Nicola,et al.  Testing Equivalence for Processes , 1983, ICALP.

[6]  A. Camilleri,et al.  A Higher Order Logic Mechanization of the CSP Failure-Divergence Semantics , 1991 .

[7]  Rocco De Nicola,et al.  Testing Equivalences for Processes , 1984, Theor. Comput. Sci..

[8]  Paola Inverardi,et al.  Using the Axiomatic Presentation of Behavioural Equivalences for Manipulating CCS Specifications , 1989, Automatic Verification Methods for Finite State Systems.

[9]  T. Melham Automating recursive type definitions in higher order logic , 1989 .

[10]  Michael J. C. Gordon,et al.  Mechanizing programming logics in higher order logic , 1989 .

[11]  Albert John Camilleri Mechanizing CSP Trace Theory in Higher Order Logic , 1990, IEEE Trans. Software Eng..

[12]  Lawrence C. Paulson,et al.  Logic and computation - interactive proof with Cambridge LCF , 1987, Cambridge tracts in theoretical computer science.

[13]  M. Gordon HOL: A Proof Generating System for Higher-Order Logic , 1988 .

[14]  Tommaso Bolognesi,et al.  Squiggles - A Tool for the Analysis of LOTOS Specifications , 1988, FORTE.