Learning to verify safety properties
By
We present a novel approach for verifying safety properties of finite state machines communicating over unbounded FIFO channels that is based on applying machine learning techniques. We assume that we are given a model of the system and learn the set of reachable states from a sample set of executions of the system, instead of attempting to iteratively compute the reachable states. The learnt set of reachable states is then used to either prove that the system is safe or to produce a valid execution of the system leading to an unsafe state ( i.e. a counterexample). We have implemented this method for verifying FIFO automata in a tool called Lever that uses a regular language learning algorithm called RPNI. We apply our tool to a few case studies and report our experience with this method. We also demonstrate how this method can be generalized and applied to the verification of other infinite state systems.
BibTeX
@inproceedings{conf/icfem/VardhanSVA04, author = "Vardhan, Abhay and Sen, Koushik and Viswanathan, Mahesh and Agha, Gul", editor = "Davies, Jim and Schulte, Wolfram and Barnett, Michael", title = "Learning to Verify Safety Properties", booktitle = "ICFEM", crossref = "conf/icfem/2004", ee = "http://dx.doi.org/10.1007/978-3-540-30482-1_26", keywords = "formal methods", pages = "274-289", year = "2004", } @proceedings{conf/icfem/2004, editor = "Davies, Jim and Schulte, Wolfram and Barnett, Michael", title = "Formal Methods and Software Engineering, 6th International Conference on Formal Engineering Methods, ICFEM 2004, Seattle, WA, USA, November 8-12, 2004, Proceedings", isbn = "3-540-23841-7", publisher = "Springer", series = "Lecture Notes in Computer Science", volume = "3308", year = "2004", }