A Tool for the Automated Verification of Nash Equilibria in Concurrent Games

  • Alexis Toumi
  • Julian Gutierrez
  • Michael Wooldridge
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9399)


Reactive Modules is a high-level specification language for concurrent and multi-agent systems, used in a number of practical model checking tools. Reactive Modules Games is a game-theoretic extension of Reactive Modules, in which concurrent agents in the system are assumed to act strategically in an attempt to satisfy a temporal logic formula representing their individual goal. The basic analytical concept for Reactive Modules Games is Nash equilibrium. In this paper, we describe a tool through which we can automatically verify Nash equilibrium strategies for Reactive Modules Games. Our tool takes as input a system, specified in the Reactive Modules language, a representation of players’ goals (expressed as CTL formulae), and a representation of players strategies; it then checks whether these strategies form a Nash equilibrium of the Reactive Modules Game passed as input. The tool makes extensive use of conventional temporal logic satisfiability and model checking techniques. We first give an overview of the theory underpinning the tool, briefly describe its structure and implementation, and conclude by presenting a worked example analysed using the tool.


Nash Equilibrium Model Check Boolean Variable Computation Tree Reactive Module 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.



\({\textsc {EAGLE}}\) was implemented by Toumi as part of his final Computer Science project [18] at Oxford. Both \({\textsc {EAGLE}}\) and [18] can be obtained from him. (To obtain \({\textsc {EAGLE}}\) or [18], please, send an email to Alexis.Toumi at We also acknowledge the support of the ERC Research Grant 291528 (“RACE”) at Oxford.


  1. 1.
    Alur, R., Henzinger, T.A., Mang, F., Qadeer, S., Rajamani, S., Tasiran, S.: MOCHA: modularity in model checking. In: Hu, A.J., Vardi, M.Y. (eds.) CAV 1998. LNCS, vol. 1427, pp. 521–525. Springer, Heidelberg (1998) CrossRefGoogle Scholar
  2. 2.
    Alur, R., Henzinger, T.A.: Reactive modules. Form. Meth. Syst. Des. 15(1), 7–48 (1999)MathSciNetCrossRefGoogle Scholar
  3. 3.
    Berwanger, D., Chatterjee, K., De Wulf, M., Doyen, L., Henzinger, T.A.: Alpaga: a tool for solving parity games with imperfect information. In: Kowalewski, S., Philippou, A. (eds.) TACAS 2009. LNCS, vol. 5505, pp. 58–61. Springer, Heidelberg (2009) CrossRefGoogle Scholar
  4. 4.
    Brenguier, R.: PRALINE: a tool for computing nash equilibria in concurrent games. In: Sharygina, N., Veith, H. (eds.) CAV 2013. LNCS, vol. 8044, pp. 890–895. Springer, Heidelberg (2013) CrossRefGoogle Scholar
  5. 5.
    Cermák, P., Lomuscio, A., Mogavero, F., Murano, A.: MCMAS-SLK: a model checker for the verification of strategy logic specifications. In: Biere, A., Bloem, R. (eds.) CAV 2014. LNCS, vol. 8559, pp. 525–532. Springer, Heidelberg (2014) Google Scholar
  6. 6.
    David, A., Jensen, P.G., Larsen, K.G., Mikucionis, M., Taankvist, J.H.: Uppaal Stratego. In: Baier, C., Tinelli, C. (eds.) TACAS 2015. LNCS, vol. 9035, pp. 206–211. Springer, Heidelberg (2015) Google Scholar
  7. 7.
    Emerson, E.A.: Temporal and modal logic. In: van Leeuwen, J. (ed.) Handbook of Theoretical Computer Science Volume B: Formal Models and Semantics, pp. 996–1072. Elsevier, Amsterdam (1990)Google Scholar
  8. 8.
    Fisman, D., Kupferman, O., Lustig, Y.: Rational synthesis. In: Esparza, J., Majumdar, R. (eds.) TACAS 2010. LNCS, vol. 6015, pp. 190–204. Springer, Heidelberg (2010) CrossRefGoogle Scholar
  9. 9.
    Friedmann, O., Lange, M.: Solving parity games in practice. In: Liu, Z., Ravn, A.P. (eds.) ATVA 2009. LNCS, vol. 5799, pp. 182–196. Springer, Heidelberg (2009) CrossRefGoogle Scholar
  10. 10.
    Gutierrez, J., Harrenstein, P., Wooldridge, M.: Iterated boolean games. In: IJCAI, IJCAI/AAAI (2013)Google Scholar
  11. 11.
    Gutierrez, J., Harrenstein, P., Wooldridge, M.: Verification of temporal equilibrium properties of games on Reactive Modules. Technical report, University of Oxford (2015)Google Scholar
  12. 12.
    Kupferman, O., Vardi, M., Wolper, P.: Module checking. Inf. Comput. 164(2), 322–344 (2001)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    Kwiatkowska, M., Norman, G., Parker, D.: PRISM 4.0: verification of probabilistic real-time systems. In: Gopalakrishnan, G., Qadeer, S. (eds.) CAV 2011. LNCS, vol. 6806, pp. 585–591. Springer, Heidelberg (2011) CrossRefGoogle Scholar
  14. 14.
    Lomuscio, A., Qu, H., Raimondi, F.: MCMAS: a model checker for the verification of multi-agent systems. In: Bouajjani, A., Maler, O. (eds.) CAV 2009. LNCS, vol. 5643, pp. 682–688. Springer, Heidelberg (2009) CrossRefGoogle Scholar
  15. 15.
    Osborne, M.J., Rubinstein, A.: A Course in Game Theory. MIT Press, Cambridge (1994)zbMATHGoogle Scholar
  16. 16.
    Prezza, N.: CTLSAT (2015).
  17. 17.
    Reynaud, D., Mr. Waffles: (2015).
  18. 18.
    Toumi, A.: Equilibrium checking in Reactive Modules games. Technical report, Department of Computer Science, University of Oxford (2015)Google Scholar
  19. 19.
    van der Hoek, W., Lomuscio, A., Wooldridge, M.: On the complexity of practical ATL model checking. In: AAMAS, pp. 201–208. ACM (2006)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Alexis Toumi
    • 1
  • Julian Gutierrez
    • 1
  • Michael Wooldridge
    • 1
  1. 1.Department of Computer ScienceUniversity of OxfordOxfordUK

Personalised recommendations