Model checking and evidence exploration

We present an algebraic framework for evidence exploration: the process of interpreting, manipulating, and navigating the proof structure or evidence produced by a model checker when attempting to verify a system specification for a temporal-logic property. Due to the sheer size of such evidence, single-step traversal is prohibitive and smarter exploration methods are required. Evidence exploration allows users to explore evidence through smaller, manageable views, which are definable in relational graph algebra, a natural extension of relational algebra to graph structures such as model-checking evidence. We illustrate the utility of our approach by applying the Evidence Explorer, our tool implementation of the evidence-exploration framework, to the Java meta-locking algorithm, a highly optimized technique deployed by the Java Virtual Machine to ensure mutually exclusive access to object monitor queues by threads.

[1]  C. R. Ramakrishnan,et al.  Justifying proofs using memo tables , 2000, PPDP '00.

[2]  Y. S. Ramakrishna,et al.  An efficient meta-lock for implementing ubiquitous synchronization , 1999, OOPSLA '99.

[3]  C. R. Ramakrishnan,et al.  Speculative Beats Conservative Justification , 2001, ICLP.

[4]  Dana H. Ballard,et al.  Computer Vision , 1982 .

[5]  Samik Basu,et al.  Model checking the Java meta-locking algorithm , 2000, Proceedings Seventh IEEE International Conference and Workshop on the Engineering of Computer-Based Systems (ECBS 2000).

[6]  Rance Cleaveland,et al.  Tableau-based model checking in the propositional mu-calculus , 1990, Acta Informatica.

[7]  Colin Stirling,et al.  Modal and Temporal Logics for Processes , 1996, Banff Higher Order Workshop.

[8]  Glynn Winskel,et al.  A Note on Model Checking the Modal nu-Calculus , 1991, Theor. Comput. Sci..

[9]  Ilan Beer,et al.  Efficient Detection of Vacuity in Temporal Model Checking , 2001, Formal Methods Syst. Des..

[10]  Kedar S. Namjoshi,et al.  Certifying Model Checkers , 2001, CAV.

[11]  E. Allen Emerson,et al.  An Automata Theoretic Decision Procedure for the Propositional Mu-Calculus , 1989, Inf. Comput..

[12]  Richard E. Ladner,et al.  Propositional Dynamic Logic of Regular Programs , 1979, J. Comput. Syst. Sci..

[13]  Joseph A. Goguen Social and Semiotic Analyses for Theorem Prover User Interface Design 1 , 1999, Formal Aspects of Computing.

[14]  Ganesh S. Oak Information Visualization Introduction , 2022 .

[15]  Rance Cleaveland,et al.  Evidence-Based Model Checking , 2002, CAV.

[16]  Philippe Pucheral,et al.  Database Graph Views: A Practical Model to Manage Persistent Graphs , 1994, VLDB.

[17]  Stéphane Bressan,et al.  Introduction to Database Systems , 2005 .

[18]  D. Kozen Results on the Propositional µ-Calculus , 1982 .

[19]  Alexander Kick,et al.  Generation of Witnesses for Global -calculus Model Checking Category of Submission: a (regular Paper) , 2022 .

[20]  Faron Moller Logics for concurrency: structure versus automata , 1996, CSUR.

[21]  Amir Pnueli,et al.  From Falsification to Verification , 2001, FSTTCS.

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

[23]  David Walker,et al.  Local Model Checking in the Modal mu-Calculus , 1991, Theor. Comput. Sci..

[24]  Georg Gottlob,et al.  On ACTL Formulas Having Linear Counterexamples , 2001, J. Comput. Syst. Sci..

[25]  Helmut Veith,et al.  Tree-like counterexamples in model checking , 2002, Proceedings 17th Annual IEEE Symposium on Logic in Computer Science.

[26]  Girish Bhat,et al.  Efficent Local Model-Checking for Fragments of teh Modal µ-Calculus , 1996, TACAS.

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