Modular strategies for recursive game graphs

In this paper, we focus on solving games in recursive game graphs that can model the control flow in sequential programs with recursive procedure calls. While such games can be viewed as the pushdown games studied in the literature, the natural notion of winning in our framework requires the strategies to be modular with only local memory; that is, resolution of choices within a module does not depend on the context in which the module is invoked, but only on the history within the current invocation of the module. While reachability in (global) push-down games is known to be EXPTIME-complete, we show reachability in modular games to be NP-complete. We present a fixpoint computation algorithm for solving modular games such that the worst-case number of iterations is exponential in the total number of returned values from the modules. If the strategy within a module does not depend on the global history, but can remember the history of the past invocations of this module, that is, if memory is local but persistent, we show that reachability becomes undecidable.

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

[2]  Wolfgang Thomas,et al.  Languages, Automata, and Logic , 1997, Handbook of Formal Languages.

[3]  Amir Pnueli,et al.  Distributed reactive systems are hard to synthesize , 1990, Proceedings [1990] 31st Annual Symposium on Foundations of Computer Science.

[4]  E. Allen Emerson,et al.  Model Checking and the Mu-calculus , 1996, Descriptive Complexity and Finite Models.

[5]  Thierry Cachat Symbolic Strategy Synthesis for Games on Pushdown Graphs , 2002, ICALP.

[6]  Robert McNaughton,et al.  Infinite Games Played on Finite Graphs , 1993, Ann. Pure Appl. Logic.

[7]  W. Murray Wonham,et al.  Think Globally, Act Locally: Decentralized Supervisory Control , 1991, 1991 American Control Conference.

[8]  Orna Kupferman,et al.  Module Checking , 1996, Inf. Comput..

[9]  P. S. Thiagarajan,et al.  A Decidable Class of Asynchronous Distributed Controllers , 2002, CONCUR.

[10]  Wolfgang Thomas,et al.  Infinite Games and Verification (Extended Abstract of a Tutorial) , 2002, CAV.

[11]  Javier Esparza,et al.  Reachability Analysis of Pushdown Automata: Application to Model-Checking , 1997, CONCUR.

[12]  Rajeev Alur,et al.  Analysis of recursive state machines , 2001, TOPL.

[13]  J. R. Büchi,et al.  Solving sequential conditions by finite-state strategies , 1969 .

[14]  Thomas A. Henzinger,et al.  Interface Compatibility Checking for Software Modules , 2002, CAV.

[15]  Sriram K. Rajamani,et al.  Bebop: A Symbolic Model Checker for Boolean Programs , 2000, SPIN.

[16]  Orna Kupferman,et al.  Church's Problem Revisited , 1999, Bulletin of Symbolic Logic.

[17]  Igor Walukiewicz,et al.  Pushdown Processes: Games and Model-Checking , 1996, Inf. Comput..

[18]  Thomas A. Henzinger,et al.  Interface automata , 2001, ESEC/FSE-9.

[19]  John H. Reif,et al.  Multiple-person alternation , 1979, 20th Annual Symposium on Foundations of Computer Science (sfcs 1979).

[20]  Amir Pnueli,et al.  On the synthesis of a reactive module , 1989, POPL '89.