Memory-Ecient Algorithms for the Verication of Temporal Properties

This paper addresses the problem of designing memory-ecient algo- rithms for the verication of temporal properties of nite-state programs. Both the programs and their desired temporal properties are modeled as automata on innite words (Buchi automata). Verication is then reduced to checking the emptiness of the automaton resulting from the product of the program and the property. This problem is usually solved by com- puting the strongly connected components of the graph representing the product automaton. Here, we present algorithms which solve the empti- ness problem without explicitly constructing the strongly connected com- ponents of the product graph. By allowing the algorithms to err with some probability, we can implement them with a randomly accessed memory of size O(n) bits, where n is the number of states of the graph, instead of O(n logn) bits that the presently known algorithms require.

[1]  Alfred V. Aho,et al.  The Design and Analysis of Computer Algorithms , 1974 .

[2]  C. H. West,et al.  Automated validation of a communications protocol: the CCITT X.21 recommendation , 1978 .

[3]  Harry Rudin,et al.  A Validation Technique for Tightly Coupled Protocols , 1982, IEEE Transactions on Computers.

[4]  Carl A. Sunshine Experience with automated Protocol Verification , 1983, Protocol Specification, Testing, and Verification.

[5]  Alfred V. Aho,et al.  Data Structures and Algorithms , 1983 .

[6]  B. Hailpern,et al.  Tools for Verifying Network Protocols , 1989, Logics and Models of Concurrent Systems.

[7]  G. J. Holzmann,et al.  Tracing protocols , 1985, AT&T Technical Journal.

[8]  A. P. Sistla,et al.  Automatic verification of finite-state concurrent systems using temporal logic specifications , 1986, TOPL.

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

[10]  Pierre Wolper,et al.  On the Relation of Programs and Computations to Models of Temporal Logic , 1987, Temporal Logic in Specification.

[11]  Harry Rudin Network Protocols and Tools to Help Produce Them , 1987 .

[12]  Gerard J. Holzmann,et al.  An improved protocol reachability analysis technique , 1988, Softw. Pract. Exp..

[13]  Pierre Wolper,et al.  Adding liveness properties to coupled finite-state machines , 1990, TOPL.

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

[15]  Gerard J. Holzmann,et al.  State-space caching revisited , 1992, Formal Methods Syst. Des..