Model Checking Temporal Logics of Knowledge Via OBDDs

Model checking is a promising approach to automatic verification, which has concentrated on specification expressed in temporal logics. Comparatively little attention has been given to temporal logics of knowledge, although such logics have been proven to be very useful in the specifications of protocols for distributed systems. In this paper, we addressed the model checking problem for a temporal logic of knowledge (Halpern and Vardi's logic of CKLn). Based on the semantics of interpreted systems with local propositions, we developed an approach to symbolic CKLn model checking via Ordered Binary decision diagrams and implemented the corresponding symbolic model checker MCTK. In our approach to model checking specifications involving agents' knowledge, the knowledge modalities are eliminated via quantifiers over agents' non-observable variables. We then modelled the Dining Cryptographers protocol and the five-hands protocol for Russian Cards problem in MCTK. Via these two examples, we compare MCTK's empirical performance with two different state-of-the-art epistemic model checkers, MCK and MCMAS.

[1]  Fausto Giunchiglia,et al.  Model Checking Security Protocols Using a Logic of Belief , 2000, TACAS.

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

[3]  Ronald Fagin,et al.  Reasoning about knowledge , 1995 .

[4]  Ron van der Meyden,et al.  MCK: Model Checking the Logic of Knowledge , 2004, CAV.

[5]  Wiebe van der Hoek,et al.  Model Checking Russian Cards , 2006, Electron. Notes Theor. Comput. Sci..

[6]  Gerard J. Holzmann,et al.  The Model Checker SPIN , 1997, IEEE Trans. Software Eng..

[7]  Anand S. Rao,et al.  A Model-Theoretic Approach to the Verification of Situated Reasoning Systems , 1993, IJCAI.

[8]  David Chaum,et al.  The dining cryptographers problem: Unconditional sender and recipient untraceability , 1988, Journal of Cryptology.

[9]  Joseph Y. Halpern,et al.  The Complexity of Reasoning about Knowledge and Time. I. Lower Bounds , 1989, J. Comput. Syst. Sci..

[10]  Moshe Y. Vardi Branching vs. Linear Time: Final Showdown , 2001, TACAS.

[11]  Hans van Ditmarsch,et al.  The Russian Cards Problem , 2003, Stud Logica.

[12]  Yoram Moses,et al.  Knowledge and the Logic of Local Propositions , 1998, TARK.

[13]  Alessio Lomuscio,et al.  Verification of multiagent systems via ordered binary decision diagrams: an algorithm and its implementation , 2004, Proceedings of the Third International Joint Conference on Autonomous Agents and Multiagent Systems, 2004. AAMAS 2004..

[14]  Kaile Su,et al.  Modal Logics with a Linear Hierarchy of Local Propositional Quantifiers , 2002, Advances in Modal Logic.

[15]  Ron van der Meyden,et al.  Common Knowledge and Update in Finite Environments , 1998, Inf. Comput..

[16]  Joseph Y. Halpern,et al.  Model Checking vs. Theorem Proving: A Manifesto , 1991, KR.

[17]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

[18]  Alessio Lomuscio,et al.  MCMAS: A Model Checker for Multi-agent Systems , 2006, TACAS.

[19]  C. Q. Lee,et al.  The Computer Journal , 1958, Nature.

[20]  A. Tarski A LATTICE-THEORETICAL FIXPOINT THEOREM AND ITS APPLICATIONS , 1955 .

[21]  Amir Pnueli,et al.  Checking that finite state concurrent programs satisfy their linear specification , 1985, POPL.

[22]  Y. Shoham Proceedings of the 6th conference on Theoretical aspects of rationality and knowledge , 1996 .

[23]  Kaile Su,et al.  Symbolic model checking the knowledge of the dining cryptographers , 2004, Proceedings. 17th IEEE Computer Security Foundations Workshop, 2004..

[24]  Michael Wooldridge,et al.  Model Checking Knowledge and Time , 2002, SPIN.

[25]  Dragan Bošnački,et al.  Proceedings of the 9th International SPIN Workshop on Model Checking of Software , 2002 .

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

[27]  Marco Pistore,et al.  NuSMV 2: An OpenSource Tool for Symbolic Model Checking , 2002, CAV.

[28]  Gerard J. Holzmann,et al.  The SPIN Model Checker , 2003 .

[29]  Zohar Manna,et al.  Temporal Verification of Reactive Systems , 1995, Springer New York.

[30]  Kaile Su,et al.  Model Checking Temporal Logics of Knowledge in Distributed Systems , 2004, AAAI.

[31]  Fred Kröger,et al.  Temporal Logic of Programs , 1987, EATCS Monographs on Theoretical Computer Science.

[32]  Wu Li A Model Checking Algorithm for Temporal Logics of Knowledge in Multi-Agent Systems , 2004 .