Model exploration with temporal logic query checking

A temporal logic query is a temporal logic formula with placeholders. Given a model, a solution to a query is a set of assignments of propositional formulas to placeholders, such that replacing the placeholders with any of these assignments results in a temporal logic formula that holds in the model. Query checking, first introduced by William Chan [2], is an automated technique for finding solutions to temporal logic queries. It allows discovery of the temporal properties of the system and as such may be a useful tool for model exploration and reverse engineering.This paper describes an implementation of a temporal logic query checker. It then suggests some applications of this tool, ranging from invariant computation to test case generation, and illustrates them using a Cruise Control System.

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

[2]  Constance L. Heitmeyer,et al.  Automated consistency checking of requirements specifications , 1996, TSEM.

[3]  Loe M. G. Feijs,et al.  Test Generation for Intelligent Networks Using Model Checking , 1997, TACAS.

[4]  Marsha Chechik,et al.  SCR3: towards usability of formal methods , 1998, CASCON.

[5]  Constance L. Heitmeyer,et al.  Automatic generation of state invariants from requirements specifications , 1998, SIGSOFT '98/FSE-6.

[6]  Angelo Gargantini,et al.  Using model checking to generate tests from requirements specifications , 1999, ESEC/FSE-7.

[7]  Pierre Wolper,et al.  An automata-theoretic approach to branching-time model checking , 2000, JACM.

[8]  William Chan Temporal-logic queries , 2000 .

[9]  Stephan Merz,et al.  Model Checking , 2000 .

[10]  Sanjai Rayadurgam,et al.  Coverage based test-case generation using model checkers , 2001, Proceedings. Eighth Annual IEEE International Conference and Workshop On the Engineering of Computer-Based Systems-ECBS 2001.

[11]  Constance L. Heitmeyer,et al.  An algorithm for strengthening state invariants generated from requirements specifications , 2001, Proceedings Fifth IEEE International Symposium on Requirements Engineering.

[12]  Patrice Godefroid,et al.  Temporal logic query checking , 2001, Proceedings 16th Annual IEEE Symposium on Logic in Computer Science.

[13]  Marsha Chechik,et al.  Model-Checking over Multi-valued Logics , 2001, FME.

[14]  Sungdeok Cha Automatic Test Generation from Statecharts Using Model Checking , 2001 .

[15]  Marsha Chechik,et al.  A framework for multi-valued reasoning over inconsistent viewpoints , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.

[16]  Marsha Chechik,et al.  XChek: A multi-valued model-checker , 2002 .

[17]  Marsha Chechik,et al.  chi-Chek: A Multi-valued Model-Checker , 2002, CAV.