# global_model_checking_on_pushdown_multiagent_systems__9d81f2a1.pdf Global Model Checking on Pushdown Multi-Agent Systems Taolue Chen Department of Computer Science Middlesex University London, United Kingdom t.chen@mdx.ac.uk Fu Song Shanghai Key Laboratory of Trustworthy Computing East China Normal University Shanghai, P.R.China fsong@sei.ecnu.edu.cn Zhilin Wu State Key Laboratory of Computer Science Institute of Software Chinese Academy of Sciences Beijing, P.R.China wuzl@ios.ac.cn Pushdown multi-agent systems, modeled by pushdown game structures (PGSs), are an important paradigm of infinite-state multi-agent systems. Alternatingtime temporal logics are well-known specification formalisms for multi-agent systems, where the selective path quantifier is introduced to reason about strategies of agents. In this paper, we investigate model checking algorithms for variants of alternating-time temporal logics over PGSs, initiated by Murano and Perelli at IJCAI 15. We first give a triply exponential-time model checking algorithm for ATL over PGSs. The algorithm is based on the saturation method, and is the first global model checking algorithm with a matching lower bound. Next, we study the model checking problem for the alternating-time μ-calculus. We propose an exponential-time global model checking algorithm which extends similar algorithms for pushdown systems and modal μ-calculus. The algorithm admits a matching lower bound, which holds even for the alternation-free fragment and ATL. 1 Introduction Over the last two decades, model checking has become an attractive approach for verifying correctness of systems. Given a model of a system, model checking exhaustively and automatically checks whether this model meets a given specification. It is widely used to verify protocol, hardware design and software (Baier and Katoen 2008). Classical model checking usually focuses on (finite) Kripke structures against properties specified in logical formulae such as Linear Temporal Logic (LTL) (Pnueli 1977) and Computational Tree Logic (CTL) (Clarke and Emerson 1981). Model checking has been extended to multi-agent systems which have been successfully employed as a modeling paradigm in a number of scenarios such as autonomous spacecraft control (Muscettola et al. 1998). A multi-agent system is a complex decentralized computing system composed of multiple interacting intelligent agents within an environment, in which the behavior of each agent is determined by its observed information of the system. To spec- Authors are alphabetically ordered. Copyright c 2016, Association for the Advancement of Artificial Intelligence (www.aaai.org). All rights reserved. ify the behavior of multi-agent systems, a well-known logical formalism is Alternating-Time Temporal Logics (Alur, Henzinger, and Kupferman 2002) for which a model checking algorithm for finite-state concurrent game structures is also given therein. Model checking algorithms for various other temporal logics on finite multi-agent systems have been proposed in several works, e.g. (Bourahla and Benmohamed 2005; Bulling and Jamroga 2011; Jamroga and Murano 2015). More recently, on a different dimension, model checking for ATL on a class of infinite-state multi-agent systems, i.e., pushdown multi-agent systems, was also studied in (Murano and Perelli 2015). The authors introduced pushdown game structures (PGSs) as the model, showed that the model checking problem is 2EXPSPACE-hard, and proposed a model checking algorithm in 3EXPTIME. Our work follows the direction of (Murano and Perelli 2015). We note that in the literature there is a distinction between local and global model checking. In the former setting one is given a specific state of the system and determines whether it satisfies a given property. In the latter setting one computes (a finite representation of) the set of states that satisfy a given property. The importance of global model checking has been discussed in (Piterman and Vardi 2004). In a nutshell, it is crucial when repeated checks are required, or where the model checking is only a component of the verification process. As a matter of fact, for many years global model checking algorithms were the standard. Moreover, obviously one can reduce local model checking to the global counterpart, but not vice versa when an infinite state space is concerned, as in the current setting. The algorithm of (Murano and Perelli 2015), which is based on (a variant of) tree automata, is local. (Technically the algorithm works on the product of PGSs and tree automata in a top-down fashion, and it is open whether this can be done in a bottom-up way, as mentioned by the authors.) In contrast, we investigate the global model checking problem for alternating-time temporal logics on PGSs. Namely we aim to compute the set of all of the configurations satisfying the formula in some alternating-time temporal logics. In this work, we consider two variants of alternating-time temporal logics: ATL and alternating-time μ-calculus. Concerning the global model checking for ATL on PGSs, as one of the main contributions, we present a re- Proceedings of the Thirtieth AAAI Conference on Artificial Intelligence (AAAI-16) duction from the problem to checking non-emptiness of alternating parity pushdown systems which can be solved using approaches given in (Hague and Ong 2009). Our global model checking approach has the same complexity upper bound as the local model checking algorithm proposed in (Murano and Perelli 2015). We also show that the model checking problem for ATL is 3EXPTIME-complete which improves the 2EXPSPACE lower bound of (Murano and Perelli 2015). One of the features of our algorithm is that it can deal with regular valuations rather than simple valuations of atomic propositions. By regular valuations one atomic proposition can denote an infinite (but regular) set of configurations. This turns out be a very handy specification approach (see examples in (Esparza, Kucera, and Schwoon 2003)). As we use alternating multi-automata as the data structure for configurations of PGSs, this comes almost for free, while it is unclear to us how the algorithm of (Murano and Perelli 2015) can support this in an immediate way. In verification, modal μ-calculus is generally considered to be the assembly language of various specifications in the sense that most temporal logics can be translated into μ-calculus to obtain a uniform model checking algorithm. In the multi-agent system setting, an alternating-time extension of μ-calculus has been considered in the original paper (Alur, Henzinger, and Kupferman 2002) already. As another contribution, we study model checking algorithms for alternating-time μ-calculus (AMC) over PGSs. We extend the saturation method of (Hague and Ong 2011) for modal μ-calculus over pushdown systems to the multi-agent system setting, obtaining an EXPTIME-time algorithm. Thanks to the alternating multi-automata as the data structure again, we can cope with the selective path quantifier of the alternatingtime logic directly while keeping constructions for other μcalculus operators untouched. The algorithm inherits the advantages of its counterpart in (Hague and Ong 2011), i.e., simple, amenable to implementation (in practice it is the implementation technique for pushdown model checkers), and efficient. For the lower bound, we show that the global model checking problem for alternation-free AMC on PGSs is already EXPTIME-hard. In fact, we prove that a simple formula A Fq (which is equivalent to μZ. A XZ q) is sufficient to obtain the EXPTIME hardness. From this, we also deduce that model checking of ATL (the alternatingtime counterpart of CTL) on PGSs is EXPTIME-complete. To the best of our knowledge, this result is also new. We remark that it is known that AMC is more expressive than ATL (Alur, Henzinger, and Kupferman 2002). However, this does not contradict the complexity bounds we obtained here, as translating an ATL formula into an equivalent AMC formula involves a doubly exponential blow-up in the size of the formula (de Alfaro, Henzinger, and Majumdar 2001; Alur, Henzinger, and Kupferman 2002), and model checking AMC over PGSs is exponential with respect to sizes of formulae. 2 Preliminaries We fix the following notations. Let AP be a finite set of atomic propositions, Ag be a finite set of agents, Ac be a finite set of actions that can be made by agents, Dc = Ac Ag be the set of decisions of the agents in Ag. For each agent a Ag and decision d Dc, let d(a) denote the action made by the agent a in d. Given a set X, an X-labeled tree is a pair (Tr, r), where Tr is a prefix closed subset of N , and r : Tr X is a labeling function that assigns to each node an element from X. The root of a tree is ϵ, and for each node t Tr, if there is i N s.t. ti Tr, then ti is called a child of t, otherwise, t is called a leaf. A path π of (Tr, r) is a least subset of Tr such that ϵ π, and for every t π, either t is a leaf in (Tr, r) or there is exactly one i N s.t. ti π. Given a path π, let r(π) = x0x1... denote the sequence of labeled elements of the path π (in the order of the lengths |t| of the nodes t π). Pushdown Game Structures Definition 1. (Murano and Perelli 2015) A Pushdown Game Structure (PGS) is a tuple P = (P, Γ, Δ, λ), where P is a finite set of control states, Γ is a finite stack alphabet, Δ : P Γ Dc P Γ is a transition function, λ : P Γ 2AP is a labeling function that assigns to each p, ω P Γ a set of atomic propositions. W.l.o.g., we assume that Γ is a special bottom stack symbol never popped up from the stack. A configuration of the PGS P is a pair p, ω , where p P is the control state, ω Γ is the stack content. Let CP denote the set P Γ of all the configurations of the PGS P. For every (p, γ, d) P Γ Dc such that Δ( p, γ , d) = (p , ω), we sometimes write p, γ d P p , ω instead. The transition relation = P: CP Dc CP of the PGS P is defined as follows: for every ω Γ , if p, γ d P p , ω , then p, γω d = P p , ωω . Given a pair p, γ P Γ and a function f : A Ac such that A Ag, let succf(p, γ) denote the set of tuples { p , ω | p, γ d P p , ω Δ and a A : d(a) = f(a)}, and succf(p, γω ) denote the set of configurations { p , ωω | p , ω succf(p, γ)} for every ω Γ which is the set of all the possible successors of p, γω on the actions f(a) for a A (agents Ag \ A can make any action). A track in a PGS P is a finite sequence π of configurations c0...cn such that for every i : 0 i < n, ci d = P ci+1. A path in a PGS P is an infinite sequence π of configurations c0c1... such that for every i 0, ci d = P ci+1. Given a track π = c0...cn (resp. path π = c0c1...), for every i : 0 i n (resp. i 0), let πi denote the configuration ci, π i denote the suffix sequence ci...cn (resp. cici+1...) of π, π