skip to main content
10.1145/2535838.2535860acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
research-article

A constraint-based approach to solving games on infinite graphs

Published: 08 January 2014 Publication History

Abstract

We present a constraint-based approach to computing winning strategies in two-player graph games over the state space of infinite-state programs. Such games have numerous applications in program verification and synthesis, including the synthesis of infinite-state reactive programs and branching-time verification of infinite-state programs. Our method handles games with winning conditions given by safety, reachability, and general Linear Temporal Logic (LTL) properties. For each property class, we give a deductive proof rule that --- provided a symbolic representation of the game players --- describes a winning strategy for a particular player. Our rules are sound and relatively complete. We show that these rules can be automated by using an off-the-shelf Horn constraint solver that supports existential quantification in clause heads. The practical promise of the rules is demonstrated through several case studies, including a challenging "Cinderella-Stepmother game" that allows infinite alternation of discrete and continuous choices by two players, as well as examples derived from prior work on program repair and synthesis.

Supplementary Material

MP4 File (d1_left_t11.mp4)

References

[1]
R. Alur, P. Cerný, P. Madhusudan, and W. Nam. Synthesis of interface specifications for java classes. In POPL, pages 98--109, 2005.
[2]
T. Ball and O. Kupferman. An abstraction-refinement framework for multi-agent systems. In LICS, pages 379--388. IEEE, 2006.
[3]
T. Beyene, C. Popeea, and A. Rybalchenko. Solving existentially quantified Horn clauses. In CAV, 2013.
[4]
M. Bodlaender, C. Hurkens, V. Kusters, F. Staals, G. Woeginger, and H. Zantema. Cinderella versus the Wicked Stepmother. In IFIP TCS, pages 57--71, 2012.
[5]
M. Bofill, R. Nieuwenhuis, A. Oliveras, E. Rodrıguez-Carbonell, and A. Rubio. The Barcelogic SMT solver. In CAV, pages 294--298, 2008.
[6]
C. Borralleras, S. Lucas, A. Oliveras, E. Rodrıguez-Carbonell, and A. Rubio. SAT modulo linear arithmetic for solving polynomial constraints. J. Autom. Reasoning, 48 (1): 107--131, 2012.
[7]
J. R. Büchi and L. Landweber. Solving sequential conditions by finite-state strategies. Trans. Amer. Math. Soc., 138: 295--311, 1969.
[8]
T. Cachat. Symbolic strategy synthesis for games on pushdown graphs. In ICALP, pages 704--715. 2002.
[9]
T. Cachat. Uniform solution of parity games on prefix-recognizable graphs. Electronic Notes in Theoretical Computer Science, 68 (6): 71--84, 2003.
[10]
K. Chatterjee and L. Doyen. Energy parity games. TCS, 2012.
[11]
B. Cook and E. Koskinen. Reasoning about nondeterminism in programs. In PLDI, 2013.
[12]
L. De Alfaro, T. Henzinger, and R. Majumdar. Symbolic algorithms for infinite-state games. In phCONCUR, pages 536--550. Springer, 2001.
[13]
L. M. de Moura and N. Bjørner. Z3: An efficient SMT solver. In TACAS, 2008.
[14]
E. A. Emerson and C. Jutla. Tree automata, mu-calculus and determinacy. In FOCS, pages 368--377. IEEE, 1991.
[15]
H. Fecher and M. Huth. Ranked predicate abstraction for branching time: Complete, incremental, and precise. In ATVA, pages 322--336. Springer, 2006.
[16]
H. Fecher and S. Shoham. Local abstraction--refinement for the μ-calculus. STTT, 13 (4): 289--306, 2011.
[17]
P. Gastin and D. Oddoux. Fast LTL to Büchi automata translation. In CAV, pages 53--65, 2001.
[18]
E. Grädel, W. Thomas, and T. Wilke, editors. Automata, Logics, and Infinite Games: A Guide to Current Research, 2002.
[19]
S. Grebenshchikov, A. Gupta, N. P. Lopes, C. Popeea, and A. Rybalchenko. HSF(C): A software verifier based on Horn clauses - (competition contribution). In TACAS, 2012.
[20]
S. Grebenshchikov, N. P. Lopes, C. Popeea, and A. Rybalchenko. Synthesizing software verifiers from proof rules. In phPLDI, 2012.
[21]
A. Griesmayer, R. Bloem, and B. Cook. Repair of boolean programs with an application to C. In phCAV, pages 358--371. Springer, 2006.
[22]
O. Grumberg, M. Lange, M. Leucker, and S. Shoham. Don't know in the μ-calculus. In phVMCAI, pages 233--249, 2005.
[23]
O. Grumberg, M. Lange, M. Leucker, and S. Shoham. When not losing is better than winning: Abstraction and refinement for the full μ-calculus. Information and Computation, 205 (8): 1130--1148, 2007.
[24]
A. Gurfinkel and M. Chechik. Why waste a perfectly good abstraction? In TACAS, pages 212--226. 2006.
[25]
A. Harding, M. Ryan, and P.-Y. Schobbens. A new algorithm for strategy synthesis in ltl games. In TACASs, pages 477--492. Springer, 2005.
[26]
T. A. Henzinger, R. Jhala, and R. Majumdar. Counterexample-guided control. In ICALP, pages 886--902, 2003.
[27]
K. Hoder, N. Bjørner, and L. M. de Moura. Z- an efficient engine for fixed points with constraints. In CAV, pages 457--462, 2011.
[28]
A. J. C. Hurkens, C. A. J. Hurkens, and G. J. Woeginger. How Cinderella won the bucket game (and lived happily ever after). Mathematics Magazine, 84 (4): pp. 278--283, 2011.
[29]
B. Jobstmann, A. Griesmayer, and R. Bloem. Program repair as a game. In CAV, pages 226--238, 2005.
[30]
M. JurdziŃski. Small progress measures for solving parity games. In STACS, pages 290--301, 2000.
[31]
V. Kuncak, M. Mayer, R. Piskac, and P. Suter. Complete functional synthesis. In phPLDI, 2010.
[32]
O. Kupferman and M. Y. Vardi. Robust satisfaction. In CONCUR, pages 383--398, 1999.
[33]
Z. Manna and A. Pnueli. Completing the temporal picture. Theor. Comput. Sci., 83 (1): 91--130, 1991.
[34]
Z. Manna and R. Waldinger. A deductive approach to program synthesis. TOPLAS, 2 (1): 90--121, 1980.
[35]
D. Martin. Borel determinacy. The Annals of Mathematics, 102 (2): 363--371, 1975.
[36]
E.-R. Olderog and K. R. Apt. Fairness in parallel programs: The transformational approach. TOPLAS, 10 (3), 1988.
[37]
N. Piterman, A. Pnueli, and Y. Saar. Synthesis of reactive(1) designs. In VMCAI, pages 364--380, 2006.
[38]
A. Pnueli and R. Rosner. On the synthesis of a reactive module. In POPL, pages 179--190. ACM, 1989.
[39]
A. Podelski and A. Rybalchenko. Transition invariants. In LICS, 2004.
[40]
M. Slanina. Control rules for reactive system games. In AAAI Spring Symposium on Logic-Based Program Synthesis, 2002.
[41]
A. Solar-Lezama, L. Tancau, R. Bodík, S. A. Seshia, and V. A. Saraswat. Combinatorial sketching for finite programs. In ASPLOS, pages 404--415, 2006.
[42]
S. Srivastava, S. Gulwani, and J. S. Foster. From program verification to program synthesis. In POPL, pages 313--326, 2010.
[43]
W. Thomas. On the synthesis of strategies in infinite games. In STACS, pages 1--13, 1995.
[44]
M. Y. Vardi. Verification of concurrent programs: The automata-theoretic framework. Ann. Pure Appl. Logic, 51 (1--2): 79--98, 1991.
[45]
M. T. Vechev, E. Yahav, and G. Yorsh. Abstraction-guided synthesis of synchronization. In POPL, 2010.
[46]
I. Walukiewicz. Pushdown processes: Games and model-checking. Information and computation, 164 (2): 234--263, 2001.
[47]
W. Zielonka. Infinite games on finitely coloured graphs with applications to automata on infinite trees. Theoretical Computer Science, 200 (1): 135--183, 1998.

Cited By

View all
  • (2024)Generalized Strategy Synthesis of Infinite-state Impartial Combinatorial Games via Exact Binary ClassificationProceedings of the 23rd International Conference on Autonomous Agents and Multiagent Systems10.5555/3635637.3662907(562-570)Online publication date: 6-May-2024
  • (2024)Solving Infinite-State Games via AccelerationProceedings of the ACM on Programming Languages10.1145/36328998:POPL(1696-1726)Online publication date: 5-Jan-2024
  • (2024)Deep Combination of CDCL(T) and Local Search for Satisfiability Modulo Non-Linear Integer Arithmetic TheoryProceedings of the IEEE/ACM 46th International Conference on Software Engineering10.1145/3597503.3639105(1-13)Online publication date: 20-May-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
POPL '14: Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
January 2014
702 pages
ISBN:9781450325448
DOI:10.1145/2535838
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 08 January 2014

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. games
  2. horn clauses
  3. program synthesis
  4. proof rules
  5. reactive synthesis
  6. static analysis

Qualifiers

  • Research-article

Conference

POPL '14
Sponsor:

Acceptance Rates

POPL '14 Paper Acceptance Rate 51 of 220 submissions, 23%;
Overall Acceptance Rate 860 of 4,328 submissions, 20%

Upcoming Conference

POPL '26

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)23
  • Downloads (Last 6 weeks)0
Reflects downloads up to 05 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Generalized Strategy Synthesis of Infinite-state Impartial Combinatorial Games via Exact Binary ClassificationProceedings of the 23rd International Conference on Autonomous Agents and Multiagent Systems10.5555/3635637.3662907(562-570)Online publication date: 6-May-2024
  • (2024)Solving Infinite-State Games via AccelerationProceedings of the ACM on Programming Languages10.1145/36328998:POPL(1696-1726)Online publication date: 5-Jan-2024
  • (2024)Deep Combination of CDCL(T) and Local Search for Satisfiability Modulo Non-Linear Integer Arithmetic TheoryProceedings of the IEEE/ACM 46th International Conference on Software Engineering10.1145/3597503.3639105(1-13)Online publication date: 20-May-2024
  • (2024)Realizability Modulo TheoriesJournal of Logical and Algebraic Methods in Programming10.1016/j.jlamp.2024.100971(100971)Online publication date: May-2024
  • (2024) Verification and Synthesis Using Existential Horn ClausesAutomated Technology for Verification and Analysis10.1007/978-3-031-78750-8_9(177-197)Online publication date: 21-Oct-2024
  • (2024)Synthesis from Infinite-State Generalized Reactivity(1) SpecificationsLeveraging Applications of Formal Methods, Verification and Validation. Software Engineering Methodologies10.1007/978-3-031-75387-9_17(281-301)Online publication date: 27-Oct-2024
  • (2024)Model Refinement: Generating Refinements for Algorithm and System DesignThe Practice of Formal Methods10.1007/978-3-031-66673-5_5(77-96)Online publication date: 4-Sep-2024
  • (2024)Localized Attractor Computations for Infinite-State GamesComputer Aided Verification10.1007/978-3-031-65633-0_7(135-158)Online publication date: 24-Jul-2024
  • (2024)Deductive Model RefinementNASA Formal Methods10.1007/978-3-031-60698-4_9(147-165)Online publication date: 26-May-2024
  • (2024)Hyperproperty Verification as CHC SatisfiabilityProgramming Languages and Systems10.1007/978-3-031-57267-8_9(212-241)Online publication date: 5-Apr-2024
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media