Software Open Access

MCPPAL: Regular Model Checking for Parametric Public Announcement Logic (Artifact)

STAN, Daniel; Lin, Anthony W.

This archive is provided as artifact material for the article "Regular Model Checking Approach to Knowledge Reasoning over Parameterized Systems" Accepted for publication at AAMAS2021.

This artifact provides an implementation of the algorithm and applies it to three examples: the Muddy Children Puzzle, the Russian Card Problem, and Large Number Challenge.

Abstract: We present a general framework for modelling and verifying epistemic properties over parameterized multi-agent systems that communicate by truthful public announcements. In our framework, the number of agents or the amount of certain resources are parameterized (i.e. not known a priori), and the corresponding verification problem asks whether a given epistemic property is true regardless of the instantiation of the parameters. For example, in a muddy children puzzle, one could ask whether each child will eventually find out whether (s)he is muddy, regardless of the number of children. Our framework is regular model checking (RMC) -based, wherein synchronous finite-state automata (equivalently, monadic second-order logic over words) are used to specify the systems. We propose an extension of public announcement logic as specification language. Of special interests is the addition of the so-called iterated public announcement operators, which are crucial for reasoning about knowledge in parameterized systems. Although the operators make the model checking problem undecidable, we show that this becomes decidable when an appropriate “disappearance relation” is given. Further, we show how Angluin’s L*-algorithm for learning finite automata can be applied to find a disappearance relation, which is guaranteed to terminate if it is regular.

Git repository:
Files (6.6 MB)
Name Size
6.6 MB Download
All versions This version
Views 6868
Downloads 66
Data volume 39.6 MB39.6 MB
Unique views 4949
Unique downloads 66


Cite as