On-the-Fly Analysis of Systems with Unbounded, Lossy FIFO Channels

We consider symbolic on-the-fly verification methods for systems of finite-state machines that communicate by exchanging messages via unbounded and lossy FIFO queues. We propose a novel representation formalism, called simple regular expressions (SREs), for representing sets of states of protocols with lossy FIFO channels. We show that the class of languages representable by SREs is exactly the class of downward closed languages that arise in the analysis of such protocols. We give methods for (i) computing inclusion between SREs, (ii) an SRE representing the set of states reachable by executing a single transition in a system, and (iii) an SRE representing the set of states reachable by an arbitrary number of executions of a control loop of a program. All these operations are rather simple and can be carried out in polynomial time. With these techniques, one can construct a semi-algorithm which explores the set of reachable states of a protocol, in order to check various safety properties.

[1]  Alain Finkel,et al.  Unreliable Channels are Easier to Verify Than Perfect Channels , 1996, Inf. Comput..

[2]  Parosh Aziz Abdulla,et al.  Verifying Programs with Unreliable Channels , 1996, Inf. Comput..

[3]  Patrice Godefroid,et al.  Symbolic Verification of Communication Protocols with Infinite State Spaces Using QDDs (Extended Abstract) , 1996, CAV.

[4]  A. Prasad Sistla,et al.  Automatic Temporal Verification of Buffer Systems , 1991, CAV.

[5]  Parosh Aziz Abdulla,et al.  Undecidable Verification Problems for Programs with Unreliable Channels , 1996, Inf. Comput..

[6]  Bernard Boigelot,et al.  Symbolic Veri cation with Periodic Sets ? , 1994 .

[7]  Parosh Aziz Abdulla,et al.  Verifying programs with unreliable channels , 1993, [1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science.

[8]  Graham Higman,et al.  Ordering by Divisibility in Abstract Algebras , 1952 .

[9]  Courcoubetis M. Vardi P. Wolper M. Yannakakis Memory-E cient Algorithms for theVeri cationof Temporal PropertiesC , 1992 .

[10]  Pierre Wolper,et al.  Memory-efficient algorithms for the verification of temporal properties , 1990, Formal Methods Syst. Des..

[11]  Patrice Godefroid,et al.  Symbolic Verification of Communication Protocols with Infinite State Spaces using QDDs , 1999, Formal Methods Syst. Des..

[12]  Ahmed Bouajjani,et al.  Symbolic Reachability Analysis of FIFO Channel Systems with Nonregular Sets of Configurations (Extended Abstract) , 1997, ICALP.

[13]  Jan K. Pachl,et al.  Protocol Description and Analysis Based on a State Transition Model with Channel Expressions , 1987, PSTV.

[14]  S. Purushothaman Iyer,et al.  Data flow analysis of communicating finite state machines , 1991, TOPL.

[15]  Daniel Brand,et al.  On Communicating Finite-State Machines , 1983, JACM.

[16]  Gerard J. Holzmann,et al.  Design and validation of computer protocols , 1991 .

[17]  Mohamed G. Gouda,et al.  On deadlock detection in systems of communicating finite state machines , 1987 .

[18]  Pierre Wolper,et al.  Symbolic Verification with Periodic Sets , 1994, CAV.

[19]  Gregor von Bochmann,et al.  Finite State Description of Communication Protocols , 1978, Comput. Networks.

[20]  Pierre Wolper,et al.  An Automata-Theoretic Approach to Automatic Program Verification (Preliminary Report) , 1986, LICS.

[21]  Pierre Wolper,et al.  The Power of QDDs , 1997 .