Synthesis is the automated construction of a system from its specification. The system has to satisfy its specification in all possible environments. Modern systems often interact with other systems, or agents. Many times these agents have objectives of their own, other than to fail the system. Thus, it makes sense to model system environments not as hostile, but as composed of rational agents; i.e., agents that act to achieve their own objectives.

We introduce the problem of synthesis in the context of rational agents (rational synthesis, for short). The input consists of a temporal-logic formula specifying the system, temporal-logic formulas specifying the objectives of the agents, and a solution concept definition. The output is an implementation T of the system and a profile of strategies, suggesting a behavior for each of the agents. The output should satisfy two conditions. First, the composition of T with the strategy profile should satisfy the specification. Second, the strategy profile should be an equilibrium in the sense that, in view of their objectives, agents have no incentive to deviate from the strategies assigned to them, where “no incentive to deviate” is interpreted as dictated by the given solution concept. We provide a method for solving the rational-synthesis problem, and show that for the classical definitions of equilibria studied in game theory, rational synthesis is not harder than traditional synthesis. We also consider the multi-valued case in which the objectives of the system and the agents are still temporal logic formulas, but involve payoffs from a finite lattice.


Nash Equilibrium Rational Synthesis Solution Concept Dominant Strategy History Variable 
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.


  1. 1.
    Chakrabarti, A., Chatterjee, K., Henzinger, T.A., Kupferman, O., Majumdar, R.: Verifying quantitative properties using bound functions. In: Borrione, D., Paul, W. (eds.) CHARME 2005. LNCS, vol. 3725, pp. 50–64. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  2. 2.
    Chatterjee, K., Doyen, L., Henzinger, T.: Quantative languages. In: Proc. 17th Annual Conf. of the European Association for Computer Science Logic (2008)Google Scholar
  3. 3.
    Chatterjee, K., Henzinger, T., Jobstmann, B.: Environment assumptions for synthesis. In: 19th Int. Conf. on Concurrency Theory, pp. 147–161 (2008)Google Scholar
  4. 4.
    Chatterjee, K., Henzinger, T., Jurdzinski, M.: Games with secure equilibria. Theoretical Computer Science (2006)Google Scholar
  5. 5.
    Chatterjee, K., Henzinger, T.A., Piterman, N.: Strategy logic. In: 18th Int. Conf. on Concurrency Theory, pp. 59–73 (2007)Google Scholar
  6. 6.
    Chatterjee, K., Henzinger, T.A.: Assume-guarantee synthesis. In: Grumberg, O., Huth, M. (eds.) TACAS 2007. LNCS, vol. 4424, pp. 261–275. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  7. 7.
    Chatterjee, K., Majumdar, R., Jurdzinski, M.: On Nash equilibria in stochastic games. In: Marcinkowski, J., Tarlecki, A. (eds.) CSL 2004. LNCS, vol. 3210, pp. 26–40. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  8. 8.
    Church, A.: Logic, arithmetics, and automata. In: Proc. Int. Congress of Mathematicians, 1962, pp. 23–35. Institut Mittag-Leffler (1963)Google Scholar
  9. 9.
    Grädel, E., Thomas, W., Wilke, T. (eds.): Automata, Logics, and Infinite Games. LNCS, vol. 2500. Springer, Heidelberg (2002)zbMATHGoogle Scholar
  10. 10.
    Gurevich, Y., Harrington, L.: Trees, automata, and games. In: Proc. 14th ACM Symp. on Theory of Computing, pp. 60–65 (1982)Google Scholar
  11. 11.
    Gurfinkel, A., Chechik, M.: Multi-valued model-checking via classical model-checking. In: 14th Int. Conf. on Concurrency Theory, pp. 263–277 (2003)Google Scholar
  12. 12.
    Kupferman, O., Lustig, Y.: Lattice automata. In: Cook, B., Podelski, A. (eds.) VMCAI 2007. LNCS, vol. 4349, pp. 199–213. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  13. 13.
    Kupferman, O., Lustig, Y.: Latticed simulation relations and games. In: Namjoshi, K.S., Yoneda, T., Higashino, T., Okamura, Y. (eds.) ATVA 2007. LNCS, vol. 4762, pp. 316–330. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  14. 14.
    Kupferman, O., Vardi, M.Y.: Weak alternating automata and tree automata emptiness. In: Proc. 30th ACM Symp. on Theory of Computing, pp. 224–233 (1998)Google Scholar
  15. 15.
    Kupferman, O., Vardi, M.Y.: From linear time to branching time. ACM Transactions on Computational Logic 6(2), 273–294 (2005)CrossRefMathSciNetGoogle Scholar
  16. 16.
    Kupferman, O., Vardi, M.Y.: Memoryful branching-time logics. In: Proc. 21st IEEE Symp. on Logic in Computer Science, pp. 265–274 (2006)Google Scholar
  17. 17.
    Manna, Z., Pnueli, A.: The Temporal Logic of Reactive and Concurrent Systems: Specification. Springer, Heidelberg (1992)Google Scholar
  18. 18.
    Muller, D.E., Schupp, P.E.: Alternating automata on infinite trees. Theoretical Computer Science 54, 267–276 (1987)zbMATHCrossRefMathSciNetGoogle Scholar
  19. 19.
    Nash, J.F.: Equilibrium points in n-person games. In: Proceedings of the National Academy of Sciences of the United States of America (1950)Google Scholar
  20. 20.
    Nisan, N., Ronen, A.: Algorithmic mechanism design. In: Proc. 31st ACM Symp. on Theory of Computing, pp. 129–140 (1999)Google Scholar
  21. 21.
    Nisan, N., Roughgarden, T., Tardos, E., Vazirani, V.V.: Algorithmic Game Theory. Cambridge University Press, Cambridge (2007)zbMATHGoogle Scholar
  22. 22.
    Osborne, M.J., Rubinstein, A.: A Course in Game Theory. The MIT Press, Cambridge (1994)Google Scholar
  23. 23.
    Pnueli, A.: The temporal logic of programs. In: Proc. 18th IEEE Symp. on Foundations of Computer Science, pp. 46–57 (1977a)Google Scholar
  24. 24.
    Pnueli, A., Rosner, R.: On the synthesis of a reactive module. In: Proc. 16th ACM Symp. on Principles of Programming Languages, pp. 179–190 (1989)Google Scholar
  25. 25.
    Rosner, R.: Modular Synthesis of Reactive Systems. PhD thesis, Weizmann Institute of Science (1992)Google Scholar
  26. 26.
    Selten, R.: Reexamination of the perfectness concept for equilibrium points in extensive games. International Journal of Game Theory 4(1), 25–55 (1975)zbMATHCrossRefMathSciNetGoogle Scholar
  27. 27.
    Shoham, S., Grumberg, O.: Multi-valued model checking games. In: Peled, D.A., Tsay, Y.-K. (eds.) ATVA 2005. LNCS, vol. 3707, pp. 354–369. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  28. 28.
    Ummels, M.: Rational behaviour and strategy construction in infinite multiplayer games. In: Proc. 26th Conf. on Foundations of Software Technology and Theoretical Computer Science, pp. 212–223 (2006)Google Scholar
  29. 29.
    Vardi, M.Y., Wolper, P.: Reasoning about infinite computations. Information and Computation 115(1), 1–37 (1994)zbMATHCrossRefMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Dana Fisman
    • 1
  • Orna Kupferman
    • 1
  • Yoad Lustig
    • 2
  1. 1.School of Computer Science and EngineeringHebrew UniversityJerusalemIsrael
  2. 2.Rice UniversityHoustonUSA

Personalised recommendations