Parameterized Verification of a Cache Coherence Protocol: Safety and Liveness

In a previous paper we presented a method which allows to compute abstractions for parameterized systems modeled in the decidable logic WS1S. These WS1S systems provide an intuitive way to describe parameterized systems of finite state processes. The abstractions can be used to establish properties of the parameterized network. To be able to prove liveness properties, an algorithm is used which enriches the abstract system with fairness constraints. We summarize this verification method and present its application by the verification of both safety and liveness properties of a non-trivial example of a cache coherence protocol, provided by Steve German.

[1]  Karsten Stahl,et al.  Verifying Universal Properties of Parameterized Networks , 2000, FTRTFT.

[2]  Karsten Stahl,et al.  Abstracting WS1S Systems to Verify Parameterized Networks , 2000, TACAS.

[3]  Nicolas Halbwachs,et al.  Automatic verification of parameterized linear networks of processes , 1997, POPL '97.

[4]  Pierre Wolper,et al.  Verifying Properties of Large Sets of Processes with Network Invariants , 1990, Automatic Verification Methods for Finite State Systems.

[5]  Amir Pnueli,et al.  Automatic Deductive Verification with Invisible Invariants , 2001, TACAS.

[6]  Krzysztof R. Apt,et al.  Limits for Automatic Verification of Finite-State Concurrent Systems , 1986, Inf. Process. Lett..

[7]  Vineet Kahlon,et al.  Reducing Model Checking of the Many to the Few , 2000, CADE.

[8]  Edmund M. Clarke,et al.  Reasoning about Networks with Many Identical Finite State Processes , 1989, Inf. Comput..

[9]  Kedar S. Namjoshi,et al.  Reasoning about rings , 1995, POPL '95.

[10]  Robert P. Kurshan,et al.  A structural induction theorem for processes , 1989, PODC.

[11]  Orna Grumberg,et al.  Network Grammars, Communication Behaviors and Automatic Verification , 1989, Automatic Verification Methods for Finite State Systems.

[12]  Joseph Sifakis,et al.  Property preserving abstractions for the verification of concurrent systems , 1995, Formal Methods Syst. Des..

[13]  J. Büchi Weak Second‐Order Arithmetic and Finite Automata , 1960 .

[14]  A. Prasad Sistla,et al.  Reasoning about systems with many processes , 1992, JACM.

[15]  Marcus Nilsson,et al.  Transitive Closures of Regular Relations for Verifying Infinite-State Systems , 2000, TACAS.

[16]  Edmund M. Clarke,et al.  Model checking and abstraction , 1994, TOPL.

[17]  C. C. Elgot Decision problems of finite automata design and related arithmetics , 1961 .

[18]  Wolfgang Thomas,et al.  Automata on Infinite Objects , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[19]  Amir Pnueli,et al.  Symbolic Model Checking with Rich ssertional Languages , 1997, CAV.

[20]  Nils Klarlund,et al.  Mona: Monadic Second-Order Logic in Practice , 1995, TACAS.

[21]  Parosh Aziz Abdulla,et al.  Handling Global Conditions in Parameterized System Verification , 1999, CAV.

[22]  Orna Grumberg,et al.  Abstract interpretation of reactive systems , 1997, TOPL.

[23]  Kedar S. Namjoshi,et al.  Automatic Verification of Parameterized Synchronous Systems (Extended Abstract) , 1996, CAV.