Model checking concurrent systems with MSVL

Model checking, proposed by Clarke and Emerson [1] as well as Queille and Sifakis [2], is an automatic verification approach for hardware and software systems. However, as Clarke pointed out [3], model checking suffers from (1) the state explosion problem, which is typically caused by models growing exponentially in the number of parallel components or data elements of an argument system; (2) different notations used to model a system and required properties; (3) the expressive power of most often used temporal logics such as Linear Temporal Logic (LTL) and Computation Tree Logic (CTL) being weak. To conquer these problems, computer scientists have made significant progress to the original model checking. The most significant improvements are compositional, partial order [4], symbolic [5], bounded [6] and abstract model checking [7, 8].

[1]  Zhenhua Duan,et al.  Making CEGAR More Efficient in Software Model Checking , 2014, IEEE Transactions on Software Engineering.

[2]  Thomas A. Henzinger,et al.  Software Verification with BLAST , 2003, SPIN.

[3]  Howard Bowman,et al.  A Decision Procedure and Complete Axiomatization of Finite Interval Temporal Logic with Projection , 2003, J. Log. Comput..

[4]  Joseph Sifakis,et al.  Model checking , 1996, Handbook of Automated Reasoning.

[5]  Helmut Veith,et al.  Counterexample-guided abstraction refinement for symbolic model checking , 2003, JACM.

[6]  J. R. Büchi Symposium on Decision Problems: On a Decision Method in Restricted Second Order Arithmetic , 1966 .

[7]  Ben C. Moszkowski,et al.  Executing temporal logic programs , 1986, Seminar on Concurrency.

[8]  Amir Pnueli,et al.  A Choppy Logic , 1986, LICS.

[9]  Cong Tian,et al.  A practical decision procedure for Propositional Projection Temporal Logic with infinite models , 2014, Theor. Comput. Sci..

[10]  Antti Valmari,et al.  A stubborn attack on state explosion , 1990, Formal Methods Syst. Des..

[11]  Zhenhua Duan,et al.  A Unified Model Checking Approach with Projection Temporal Logic , 2008, ICFEM.

[12]  Edmund M. Clarke,et al.  Design and Synthesis of Synchronization Skeletons Using Branching Time Temporal Logic , 2008, 25 Years of Model Checking.

[13]  Chih-Sung Tang,et al.  Toward a Unified Logic Basis for Programming Languages , 1983, IFIP Congress.

[14]  Daniel Kroening,et al.  CBMC - C Bounded Model Checker - (Competition Contribution) , 2014, TACAS.

[15]  Bart Selman,et al.  Satisfiability Solvers , 2008, Handbook of Knowledge Representation.

[16]  R. A. Jackson What is a mechanism , 2004 .

[17]  Thomas Ball,et al.  SLAM2: Static driver verification with under 4% false alarms , 2010, Formal Methods in Computer Aided Design.

[18]  Armin Biere,et al.  Bounded model checking , 2003, Adv. Comput..

[19]  Edmund M. Clarke,et al.  Symbolic Model Checking: 10^20 States and Beyond , 1990, Inf. Comput..

[20]  Ofer Strichman,et al.  Bounded model checking , 2003, Adv. Comput..

[21]  Edmund M. Clarke,et al.  Design and Synthesis of Synchronization Skeletons Using Branching-Time Temporal Logic , 1981, Logic of Programs.

[22]  Pierre Wolper,et al.  A partial approach to model checking , 1991, [1991] Proceedings Sixth Annual IEEE Symposium on Logic in Computer Science.

[23]  Joseph Sifakis,et al.  Specification and verification of concurrent systems in CESAR , 1982, Symposium on Programming.

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

[25]  Maciej Koutny,et al.  Framed temporal logic programming , 2008, Sci. Comput. Program..

[26]  Zhenhua Duan,et al.  Expressiveness of propositional projection temporal logic with star , 2011, Theor. Comput. Sci..

[27]  Liang Zhao,et al.  Formalizing and Implementing Types in MSVL , 2013, SOFL+MSVL.

[28]  Robert E. Shostak,et al.  A Practical Decision Procedure for Arithmetic with Function Symbols , 1979, JACM.

[29]  Zhenhua Duan,et al.  A mechanism of function calls in MSVL , 2016, Theor. Comput. Sci..

[30]  Cong Tian,et al.  A canonical form based decision procedure and model checking approach for propositional projection temporal logic , 2016, Theor. Comput. Sci..

[31]  Pierre Wolper,et al.  A Partial Approach to Model Checking , 1994, Inf. Comput..