MCMAS: an open-source model checker for the verification of multi-agent systems

We present MCMAS, a model checker for the verification of multi-agent systems. MCMAS supports efficient symbolic techniques for the verification of multi-agent systems against specifications representing temporal, epistemic and strategic properties. We present the underlying semantics of the specification language supported and the algorithms implemented in MCMAS, including its fairness and counterexample generation features. We provide a detailed description of the implementation. We illustrate its use by discussing a number of examples and evaluate its performance by comparing it against other model checkers for multi-agent systems on a common case study.

[1]  Marek Sergot,et al.  On the characterization of law and computer systems: the normative systems perspective , 1994 .

[2]  Joseph Y. Halpern,et al.  Modeling Adversaries in a Logic for Security Protocol Analysis , 2006, FASec.

[3]  Joseph Y. Halpern,et al.  A logical reconstruction of SPKI , 2001, Proceedings. 14th IEEE Computer Security Foundations Workshop, 2001..

[4]  Alessio Lomuscio,et al.  Automatic verification of multi-agent systems by model checking via ordered binary decision diagrams , 2007, J. Appl. Log..

[5]  Alessio Lomuscio,et al.  Automatic Verification of Knowledge and Time with NuSMV , 2007, IJCAI.

[6]  Cheng Luo,et al.  Symbolic model checking of probabilistic knowledge , 2011, TARK XIII.

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

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

[9]  Paul C. van Oorschot,et al.  Extending cryptographic logics of belief to key agreement protocols , 1993, CCS '93.

[10]  Alessio Lomuscio,et al.  Verifying and Synthesising Multi-Agent Systems against One-Goal Strategy Logic Specifications , 2015, AAAI.

[11]  Alessio Lomuscio,et al.  Towards verifying contract regulated service composition , 2008, 2008 IEEE International Conference on Web Services.

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

[13]  Edmund M. Clarke,et al.  Efficient generation of counterexamples and witnesses in symbolic model checking , 1995, DAC '95.

[14]  Ron van der Meyden,et al.  A Knowledge Based Analysis of Cache Coherence , 2004, ICFEM.

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

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

[17]  Michael Wooldridge,et al.  Introduction to multiagent systems , 2001 .

[18]  Zohar Manna,et al.  The Temporal Logic of Reactive and Concurrent Systems , 1991, Springer New York.

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

[20]  Alessio Lomuscio,et al.  The complexity of model checking concurrent programs against CTLK specifications , 2006, AAMAS '06.

[21]  Thomas A. Henzinger,et al.  MOCHA: Modularity in Model Checking , 1998, CAV.

[22]  Cheng Luo,et al.  Improved Bounded Model Checking for a Fair Branching-Time Temporal Epistemic Logic , 2010, MoChArt.

[23]  George S. Avrunin,et al.  Property specification patterns for finite-state verification , 1998, FMSP '98.

[24]  Alessio Lomuscio,et al.  An Automated Approach to Verifying Diagnosability in Multi-agent Systems , 2009, 2009 Seventh IEEE International Conference on Software Engineering and Formal Methods.

[25]  Alessio Lomuscio,et al.  Automatic verification of parameterised multi-agent systems , 2013, AAMAS.

[26]  Alessio Lomuscio,et al.  Towards verifying compliance in agent-based web service compositions , 2008, AAMAS.

[27]  Alessio Lomuscio,et al.  Verifying Fault Tolerance and Self-Diagnosability of an Autonomous Underwater Vehicle , 2011, IJCAI.

[28]  Giuseppe De Giacomo,et al.  Agent composition synthesis based on ATL , 2010, AAMAS.

[29]  Jamal Bentahar,et al.  Verifying conformance of multi-agent commitment-based protocols , 2013, Expert Syst. Appl..

[30]  Alessio Lomuscio,et al.  Verifying Temporal and Epistemic Properties of Web Service Compositions , 2007, ICSOC.

[31]  Alessio Lomuscio,et al.  Distributed BDD-based BMC for the verification of multi-agent systems , 2010, AAMAS.

[32]  Terence Parr The Definitive ANTLR Reference: Building Domain-Specific Languages , 2007 .

[33]  Wojciech Penczek,et al.  Comparing BDD and SAT Based Techniques for Model Checking Chaum's Dining Cryptographers Protocol , 2006, Fundam. Informaticae.

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

[35]  Zhifeng Liu,et al.  Abstraction for model checking multi-agent systems , 2011, Frontiers of Computer Science in China.

[36]  Sebastian Mödersheim,et al.  OFMC: A symbolic model checker for security protocols , 2005, International Journal of Information Security.

[37]  Martín Abadi,et al.  A logic of authentication , 1989, Proceedings of the Royal Society of London. A. Mathematical and Physical Sciences.

[38]  Wojciech Penczek,et al.  Verifying epistemic properties of multi-agent systems via bounded model checking , 2002, AAMAS '03.

[39]  Emden R. Gansner,et al.  An open graph visualization system and its applications to software engineering , 2000, Softw. Pract. Exp..

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

[41]  Fabio Somenzi,et al.  CUDD: CU Decision Diagram Package Release 2.2.0 , 1998 .

[42]  Wojciech Penczek,et al.  VerICS 2007 - a Model Checker for Knowledge and Real-Time , 2008, Fundam. Informaticae.

[43]  Alessio Lomuscio,et al.  Compilation Method for the Verification of Temporal-Epistemic Properties of Cryptographic Protocols , 2009 .

[44]  Charles Pecheur,et al.  Reasoning about Strategies under Partial Observability and Fairness Constraints , 2013, SR.

[45]  John McCarthy,et al.  Ascribing Mental Qualities to Machines , 1979 .

[46]  B.H.C. Cheng,et al.  Real-time specification patterns , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

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

[48]  Munindar P. Singh,et al.  Formalizing and verifying protocol refinements , 2013, TIST.

[49]  Wojciech Penczek,et al.  From Bounded to Unbounded Model Checking for Temporal Epistemic Logic , 2004, Fundam. Informaticae.

[50]  Thomas A. Henzinger,et al.  Alternating-time temporal logic , 1997, Proceedings 38th Annual Symposium on Foundations of Computer Science.

[51]  Marta Z. Kwiatkowska,et al.  PRISM 4.0: Verification of Probabilistic Real-Time Systems , 2011, CAV.

[52]  Abdul Sattar,et al.  Model Checking Temporal Logics of Knowledge Via OBDDs , 2007, Comput. J..

[53]  Henry Segerman,et al.  One hundred prisoners and a lightbulb , 2003 .

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

[55]  Jaakko Hintikka,et al.  Knowledge and Belief: An Introduction to the Logic of the Two Notions. , 1965 .

[56]  Alessio Lomuscio,et al.  MCMAS-SLK: A Model Checker for the Verification of Strategy Logic Specifications , 2014, CAV.

[57]  Emden R. Gansner,et al.  An open graph visualization system and its applications to software engineering , 2000 .

[58]  Mohd Fadzil Hassan,et al.  Formal Verification for Interaction Protocol in Agent-Based E-Learning System Using Model Checking Toolkit - MCMAS , 2011, ICSECS 2011.

[59]  Alessio Lomuscio,et al.  Model checking detectability of attacks in multiagent systems , 2010, AAMAS.

[60]  Michael Wooldridge,et al.  On the complexity of practical ATL model checking , 2006, AAMAS '06.

[61]  Wojciech Penczek,et al.  LDYIS: a Framework for Model Checking Security Protocols , 2008, Fundam. Informaticae.

[62]  Ronald Fagin,et al.  Knowledge-based programs , 1995, PODC '95.

[63]  Paul F. Syverson,et al.  Group Principals and the Formalization of Anonymity , 1999, World Congress on Formal Methods.

[64]  Alessio Lomuscio,et al.  A Cutoff Technique for the Verification of Parameterised Interpreted Systems with Parameterised Environments , 2013, IJCAI.

[65]  Wojciech Penczek,et al.  BDD-versus SAT-based bounded model checking for the existential fragment of linear temporal logic with knowledge: algorithms and their performance , 2013, Autonomous Agents and Multi-Agent Systems.

[66]  Hector J. Levesque,et al.  Intention is Choice with Commitment , 1990, Artif. Intell..