Skip to main content
Log in

A symbolic algorithm for lazy synthesis of eager strategies

  • Original Article
  • Published:
Acta Informatica Aims and scope Submit manuscript

Abstract

We present an algorithm for solving two-player safety games that combines a mixed forward/backward search strategy with a symbolic representation of the state space. By combining forward and backward exploration, our algorithm can synthesize strategies that are eager in the sense that they try to prevent progress towards the error states as soon as possible, whereas standard backwards algorithms often produce permissive solutions that only react when absolutely necessary. We provide experimental results for two classes of crafted benchmarks, the benchmark set of the Reactive Synthesis Competition (SYNTCOMP) 2017, as well as a set of randomly generated benchmarks. The results show that our algorithm in many cases produces more eager strategies than a standard backwards algorithm, and solves a number of benchmarks that are intractable for existing tools. Finally, we observe a connection between our algorithm and a recently proposed algorithm for the synthesis of controllers that are robust against disturbances, pointing to possible future applications.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12

Similar content being viewed by others

Notes

  1. This part is the light-weight backward search: unlike UPRE in the standard backward algorithm, preimage does not contain any quantifier alternation.

  2. This is the only place where our algorithm uses image, and it is only included to keep the definitions and correctness argument simple - the algorithm also works if the model checker omits this last image computation step, see Sect. 5.

  3. It may be a subsequence due to the merging of error levels from different iterations of the main loop.

References

  1. Beyene, T.A., Chaudhuri, S., Popeea, C., Rybalchenko, A.: A constraint-based approach to solving games on infinite graphs. In: Jagannathan, S., Sewell, P. (eds.) POPL, pp. 221–234. ACM (2014). https://doi.org/10.1145/2535838.2535860

  2. Bloem, R., Könighofer, R., Seidl, M.: SAT-based synthesis methods for safety specs. In: VMCAI, LNCS, vol. 8318, pp. 1–20. Springer, Berlin (2014)

  3. Brenguier, R., Pérez, G.A., Raskin, J., Sankur, O.: AbsSynthe: abstract synthesis from succinct safety specifications. SYNT, EPTCS 157, 100–116 (2014). https://doi.org/10.4204/EPTCS.157.11

    Article  MathSciNet  Google Scholar 

  4. Büchi, J., Landweber, L.: Solving sequential conditions by finite-state strategies. Trans. Am. Math. Soc. 138, 295–311 (1969). https://doi.org/10.2307/1994916

    Article  MathSciNet  MATH  Google Scholar 

  5. Cassez, F., David, A., Fleury, E., Larsen, K.G., Lime, D.: Efficient on-the-fly algorithms for the analysis of timed games. In: CONCUR, LNCS, vol. 3653, pp. 66–80. Springer, Berlin (2005)

    Google Scholar 

  6. Church, A.: Applications of recursive arithmetic to the problem of circuit synthesis. Summaries of the Summer Institute of Symbolic Logic I, pp. 3–50 (1957)

  7. Clarke, J.B.E., Long, D.: Representing circuits more efficiently in symbolic model checking. In: 28th ACM/IEEE Design Automation Conference, pp. 403–407 (1991)

  8. Coudert, O., Berthet, C., Madre, J.C.: Verification of synchronous sequential machines based on symbolic execution. In: Automatic Verification Methods for Finite State Systems, Lecture Notes in Computer Science, vol. 407, pp. 365–373. Springer, Berlin (1989). https://doi.org/10.1007/3-540-52148-8_30

    Chapter  Google Scholar 

  9. Dallal, E., Neider, D., Tabuada, P.: Synthesis of safety controllers robust to unmodeled intermittent disturbances. In: CDC, pp. 7425–7430. IEEE (2016). https://doi.org/10.1109/CDC.2016.7799416

  10. Ehlers, R.: Symbolic bounded synthesis. Form. Methods Syst. Des. 40(2), 232–262 (2012). https://doi.org/10.1007/s10703-011-0137-x

    Article  MATH  Google Scholar 

  11. Ehlers, R., Topcu, U.: Resilience to intermittent assumption violations in reactive synthesis. In: HSCC, pp. 203–212. ACM (2014). https://doi.org/10.1145/2562059.2562128

  12. Filiot, E., Jin, N., Raskin, J.F.: Antichains and compositional algorithms for LTL synthesis. Form. Methods Syst. Des. 39(3), 261–296 (2011). https://doi.org/10.1007/s10703-011-0115-3

    Article  MATH  Google Scholar 

  13. Finkbeiner, B., Jacobs, S.: Lazy synthesis. In: VMCAI, LNCS, vol. 7148, pp. 219–234. Springer, Berlin (2012). https://doi.org/10.1007/978-3-642-27940-9_15

    Google Scholar 

  14. Finkbeiner, B., Schewe, S.: Bounded synthesis. STTT 15(5–6), 519–539 (2013). https://doi.org/10.1007/s10009-012-0228-z

    Article  MATH  Google Scholar 

  15. Huang, C., Peled, D.A., Schewe, S., Wang, F.: A game-theoretic foundation for the maximum software resilience against dense errors. IEEE Trans. Softw. Eng. 42(7), 605–622 (2016). https://doi.org/10.1109/TSE.2015.2510001

    Article  Google Scholar 

  16. Jacobs, S., Basset, N., Bloem, R., Brenguier, R., Colange, M., Faymonville, P., Finkbeiner, B., Khalimov, A., Klein, F., Michaud, T., Pérez, G.A., Raskin, J., Sankur, O., Tentrup, L.: The 4th reactive synthesis competition (SYNTCOMP 2017): Benchmarks, participants & results. In: SYNT@CAV, EPTCS, vol. 260, pp. 116–143 (2017). https://doi.org/10.4204/EPTCS.260.10

    Article  Google Scholar 

  17. Jacobs, S., Bloem, R., Brenguier, R., Ehlers, R., Hell, T., Könighofer, R., Pérez, G.A., Raskin, J., Ryzhyk, L., Sankur, O., Seidl, M., Tentrup, L., Walker, A.: The first reactive synthesis competition (SYNTCOMP 2014). STTT 19(3), 367–390 (2017). https://doi.org/10.1007/s10009-016-0416-3

    Article  Google Scholar 

  18. Jacobs, S., Sakr, M.: A symbolic algorithm for lazy synthesis of eager strategies. In: ATVA, Lecture Notes in Computer Science, vol. 11138, pp. 211–227. Springer (2018). https://doi.org/10.1007/978-3-030-01090-4_13

    Chapter  Google Scholar 

  19. Kropf, T.: Introduction to Formal Hardware Verification. Springer, Berlin (2013)

    MATH  Google Scholar 

  20. Legg, A., Narodytska, N., Ryzhyk, L.: A SAT-based counterexample guided method for unbounded synthesis. In: CAV (2), LNCS, vol. 9780, pp. 364–382. Springer (2016). https://doi.org/10.1007/978-3-319-41540-6_20

    Chapter  Google Scholar 

  21. Liu, X., Smolka, S.A.: Simple linear-time algorithms for minimal fixed points (extended abstract). In: ICALP, LNCS, vol. 1443, pp. 53–66. Springer (1998). https://doi.org/10.1007/BFb0055040

    Chapter  Google Scholar 

  22. Neider, D., Topcu, U.: An automaton learning approach to solving safety games over infinite graphs. In: Chechik, M., Raskin, J. (eds.) TACAS, Lecture Notes in Computer Science, vol. 9636, pp. 204–221. Springer (2016). https://doi.org/10.1007/978-3-662-49674-9_12

    Chapter  Google Scholar 

  23. Neider, D., Weinert, A., Zimmermann, M.: Synthesizing optimally resilient controllers. In: CSL, LIPIcs, vol. 119, pp. 34:1–34:17. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik (2018). https://doi.org/10.4230/LIPIcs.CSL.2018.34

  24. Pnueli, A., Rosner, R.: On the synthesis of a reactive module. In: POPL, pp. 179–190. ACM Press (1989). https://doi.org/10.1145/75277.75293

  25. Raman, V., Donzé, A., Sadigh, D., Murray, R.M., Seshia, S.A.: Reactive synthesis from signal temporal logic specifications. In: HSCC, pp. 239–248. ACM (2015). https://doi.org/10.1145/2728606.2728628

  26. Sohail, S., Somenzi, F.: Safety first: a two-stage algorithm for the synthesis of reactive systems. STTT 15(5–6), 433–454 (2013). https://doi.org/10.1007/s10009-012-0224-3

    Article  Google Scholar 

  27. Somenzi, F.: CUDD: CU decision diagram package, release 2.4.0. University of Colorado at Boulder (2009)

  28. Touati, H.J., Savoj, H., Lin, B., Brayton, R.K., Sangiovanni-Vincentelli, A.: Implicit state enumeration of finite state machines using bdd’s. In: Computer-Aided Design, 1990. ICCAD-90. 1990 IEEE International Conference on Digest of Technical Papers, pp. 130–133. IEEE (1990)

Download references

Acknowledgements

We thank Bernd Finkbeiner and Martin Zimmermann for fruitful discussions. This work was supported by the German Research Foundation (DFG) under the project ASDPS (JA 2357/2-1).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Swen Jacobs.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Jacobs, S., Sakr, M. A symbolic algorithm for lazy synthesis of eager strategies. Acta Informatica 57, 81–106 (2020). https://doi.org/10.1007/s00236-019-00344-8

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00236-019-00344-8

Navigation