A Lazy Approach to Temporal Epistemic Logic Model Checking

Temporal Epistemic Logic is used to reason about the evolution of knowledge over time. A notable example is the temporal epistemic logic KL1, which is used to model what a reasoner can infer about the state of a dynamic system by using available observations. Applications of KL1 span from security (verification of cryptography protocols and information flow) to diagnostic systems (fault detection and diagnosability). In this paper, we tackle the verification of KL1 properties under observational semantics, by proposing an effective approach that is able to deal with both finite and infinite state systems. The denotation of the epistemic atoms is computed in a lazy way, driven by the counter-examples obtained from model checking an abstraction of the property. We analyze the approach on a comprehensive set of finite- and infinite-state benchmarks from the literature, evaluate the effectiveness of various optimizations, and demonstrate that our approach outperforms existing approaches.

[1]  Bruno Dutertre,et al.  A Fast Linear-Arithmetic Solver for DPLL(T) , 2006, CAV.

[2]  Michael D. Ernst,et al.  Computer Aided Verification , 2016, Lecture Notes in Computer Science.

[3]  Marco Roveri,et al.  The nuXmv Symbolic Model Checker , 2014, CAV.

[4]  Marco Bozzano,et al.  Formal Design of Asynchronous Fault Detection and Identification Components using Temporal Epistemic Logic , 2015, Log. Methods Comput. Sci..

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

[6]  Edmund M. Clarke,et al.  Counterexample-guided abstraction refinement , 2003, 10th International Symposium on Temporal Representation and Reasoning, 2003 and Fourth International Conference on Temporal Logic. Proceedings..

[7]  Ashish Tiwari,et al.  Sal 2 , 2004, CAV.

[8]  M. Bozzano Formal Specification and Synthesis of FDI through an Example , 2014 .

[9]  Wojciech Penczek,et al.  Bounded model checking for knowledge and real time , 2005, AAMAS '05.

[10]  Alessio Lomuscio,et al.  Model Checking Temporal-Epistemic Logic Using Alternating Tree Automata , 2011, Fundam. Informaticae.

[11]  Amir Pnueli,et al.  The Glory of the Past , 1985, Logic of Programs.

[12]  Alberto Griggio,et al.  IC3 Modulo Theories via Implicit Predicate Abstraction , 2013, TACAS.

[13]  Alessio Lomuscio,et al.  MCMAS: A Model Checker for the Verification of Multi-Agent Systems , 2009, CAV.

[14]  Joseph Y. Halpern,et al.  The complexity of reasoning about knowledge and time , 1986, STOC '86.

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

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

[17]  Sofia Cassel,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 2012 .

[18]  Hector Geffner,et al.  Beliefs In Multiagent Planning: From One Agent to Many , 2015, ICAPS.

[19]  Mads Dam,et al.  Epistemic temporal logic for information flow security , 2011, PLAS '11.

[20]  Marco Bozzano,et al.  Towards Pareto-optimal parameter synthesis for monotonie cost functions , 2014, 2014 Formal Methods in Computer-Aided Design (FMCAD).

[21]  Alessio Lomuscio,et al.  Parallel Model Checking for Temporal Epistemic Logic , 2010, ECAI.

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

[23]  M. Wooldridge,et al.  Model Checking Knowledge and Time via Local Propositions: Cooperative and Adversarial Systems , 2004 .

[24]  Koen Claessen,et al.  SAT-Based Assistance in Abstraction Refinement for Symbolic Trajectory Evaluation , 2006, CAV.

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

[26]  Alessio Lomuscio,et al.  Automatic verification of temporal-epistemic properties of cryptographic protocols , 2009, J. Appl. Non Class. Logics.

[27]  Aaron R. Bradley,et al.  SAT-Based Model Checking without Unrolling , 2011, VMCAI.

[28]  Wang Yi,et al.  UPPAAL - a Tool Suite for Automatic Verification of Real-Time Systems , 1996, Hybrid Systems.

[29]  Alessio Lomuscio,et al.  Finite Abstractions for the Verification of Epistemic Properties in Open Multi-Agent Systems , 2015, IJCAI.

[30]  Cesare Tinelli,et al.  Satisfiability Modulo Theories , 2021, Handbook of Satisfiability.

[31]  Alessio Lomuscio,et al.  Verification of Agent-Based Artifact Systems , 2013, J. Artif. Intell. Res..

[32]  Alberto Griggio,et al.  Parameter synthesis with IC3 , 2013, 2013 Formal Methods in Computer-Aided Design.

[33]  Xiaowei Huang,et al.  Diagnosability in concurrent probabilistic systems , 2013, AAMAS.