Bounded Rational Search for On-the-Fly Model Checking of LTL Properties

Model checking is considered as a promising approach for assuring the reliability of concurrent systems. Besides its strength it suffers from the state explosion problem, which reduces its applicability especially when systems grow larger. In this paper we propose a bounded rational verification approach for on-the-fly model checking of LTL properties. We optimize memory usage by increasing the probability of finding counter-examples. Since in on-the-fly model checking we do not have complete knowledge about the model, we use a machine learning method based on interaction and reward receiving. Based on the concept of fairness we propose a heuristic for defining rewards. We also exploit the ideas of probabilistic model checking in order to find a measure of correctness of the system in the case where no violations are found after generating a certain number of runs of the system. The experimental results show that this approach easily outperforms classic model checking approaches.

[1]  A. Prasad Sistla,et al.  Symmetry and model checking , 1996, Formal Methods Syst. Des..

[2]  Edmund M. Clarke,et al.  Formal Methods: State of the Art and Future Directions Working Group Members , 1996 .

[3]  E. Allen Emerson,et al.  Temporal and Modal Logic , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[4]  Mohammad Mahdi Jaghoori,et al.  Modere: the model-checking engine of Rebeca , 2006, SAC.

[5]  Richard M. Karp,et al.  An optimal algorithm for Monte Carlo estimation , 1995, Proceedings of IEEE 36th Annual Foundations of Computer Science.

[6]  Richard S. Sutton,et al.  Introduction to Reinforcement Learning , 1998 .

[7]  Alexander Moshe Rabinovich,et al.  A Logic of Probability with Decidable Model-Checking , 2002, CSL.

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

[9]  Richard S. Sutton,et al.  Reinforcement Learning: An Introduction , 1998, IEEE Trans. Neural Networks.

[10]  Kousha Etessami,et al.  Analysis of Recursive Game Graphs Using Data Flow Equations , 2004, VMCAI.

[11]  Ulrich Herzog,et al.  Formal Methods for Performance Evaluation , 2002, European Educational Forum: School on Formal Methods and Performance Analysis.

[12]  Ganesh Gopalakrishnan,et al.  Random Walk Based Heuristic Algorithms for Distributed Memory Model Checking , 2003, PDMC@CAV.

[13]  Frank S. de Boer,et al.  Modeling and Verification of Reactive Systems using Rebeca , 2004, Fundam. Informaticae.

[14]  Radu Grosu,et al.  Quantitative Model checking , 2004, ISoLA.

[15]  A. Prasad Sistla,et al.  On-the-Fly Model Checking Under Fairness That Exploits Symmetry , 1997, CAV.

[16]  Alex K. Simpson,et al.  Computational Adequacy in an Elementary Topos , 1998, CSL.

[17]  Amir Pnueli The Temporal Semantics of Concurrent Programs , 1981, Theor. Comput. Sci..

[18]  Rajeev Alur,et al.  A Temporal Logic of Nested Calls and Returns , 2004, TACAS.

[19]  Somesh Jha,et al.  Exploiting symmetry in temporal logic model checking , 1993, Formal Methods Syst. Des..

[20]  Enrico Tronci,et al.  A probabilistic approach to automatic verification of concurrent systems , 2001, Proceedings Eighth Asia-Pacific Software Engineering Conference.

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

[22]  Kenneth L. McMillan,et al.  Symbolic model checking , 1992 .

[23]  Marta Z. Kwiatkowska,et al.  Stochastic Model Checking , 2007, SFM.

[24]  Thomas Hérault,et al.  Approximate Probabilistic Model Checking , 2004, VMCAI.

[25]  Richard M. Karp,et al.  Monte-Carlo Approximation Algorithms for Enumeration Problems , 1989, J. Algorithms.

[26]  Patrik Haslum Model Checking by Random Walk , 1999 .

[27]  Stefan Edelkamp,et al.  Model Checking and Artificial Intelligence, 4th Workshop, MoChArt IV, Riva del Garda, Italy, August 29, 2006, Revised Selected and Invited Papers , 2007, MoChArt.

[28]  Kousha Etessami,et al.  Multi-objective Model Checking of Markov Decision Processes , 2007, TACAS.

[29]  Radu Grosu,et al.  Monte Carlo Model Checking , 2005, TACAS.

[30]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[31]  Tadashi Araragi,et al.  Checking Liveness Properties of Concurrent Systems by Reinforcement Learning , 2007, MoChArt.

[32]  Antti Valmari A stubborn attack on state explosion , 1992, Formal Methods Syst. Des..

[33]  Armin Biere,et al.  Symbolic Model Checking without BDDs , 1999, TACAS.

[34]  Patrice Godefroid Using Partial Orders to Improve Automatic Verification Methods , 1990, CAV.