CAV 2017: Computer Aided Verification pp 333-352 | Cite as

Bounded Synthesis for Streett, Rabin, and \(\text {CTL}^{*}\)

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10427)

Abstract

SMT-based bounded synthesis uses an SMT solver to synthesize systems from LTL properties by going through co-Büchi automata. In this paper, we show how to extend the ranking functions used in Bounded Synthesis, and thus the bounded synthesis approach, to Büchi, Parity, Rabin, and Streett conditions. We show that we can handle both existential and universal properties this way, and therefore, that we can extend Bounded Synthesis to \(\text {CTL}^{*}\). Thus, we obtain the first Safraless synthesis approach and the first synthesis tool for (conjunctions of) the acceptance conditions mentioned above, and for \(\text {CTL}^{*}\).

Notes

Acknowledgements

We thank Swen Jacobs and Bernd Finkbeiner for early discussions on bounded synthesis for GR(1), Nir Piterman for explaining Streett/Rabin ranking constructions and alternating automata. This work was supported by the Austrian Science Fund (FWF) under the RiSE National Research Network (S11406).

References

  1. 1.
    Babiak, T., Křetínský, M., Řehák, V., Strejček, J.: LTL to büchi automata translation: fast and more deterministic. In: Flanagan, C., König, B. (eds.) TACAS 2012. LNCS, vol. 7214, pp. 95–109. Springer, Heidelberg (2012). doi: 10.1007/978-3-642-28756-5_8 CrossRefGoogle Scholar
  2. 2.
    Baier, C., Katoen, J.P.: Principles of Model Checking, vol. 26202649. MIT Press, Cambridge (2008)MATHGoogle Scholar
  3. 3.
    Bertrand, N., Fearnley, J., Schewe, S.: Bounded satisfiability for PCTL. In: Cégielski, P., Durand, A. (eds.) CSL. LIPICS, vol. 16, pp. 92–106. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik, Dagstuhl, Germany (2012). http://drops.dagstuhl.de/opus/volltexte/2012/3666
  4. 4.
    Beyene, T., Chaudhuri, S., Popeea, C., Rybalchenko, A.: A constraint-based approach to solving games on infinite graphs. SIGPLAN Not. 49(1), 221–233 (2014). doi: 10.1145/2578855.2535860 MATHGoogle Scholar
  5. 5.
    Bloem, R., Jobstmann, B., Piterman, N., Pnueli, A., Sa’ar, Y.: Synthesis of reactive(1) designs. J. Comput. Syst. Sci. 78, 911–938 (2012)MathSciNetCrossRefMATHGoogle Scholar
  6. 6.
    Bloem, R., Braud-Santoni, N., Jacobs, S.: Synthesis of self-stabilising and byzantine-resilient distributed systems. In: Chaudhuri, S., Farzan, A. (eds.) CAV 2016. LNCS, vol. 9779, pp. 157–176. Springer, Cham (2016). doi: 10.1007/978-3-319-41528-4_9 Google Scholar
  7. 7.
    Bloem, R., Chatterjee, K., Jacobs, S., Könighofer, R.: Assume-guarantee synthesis for concurrent reactive programs with partial information. In: Baier, C., Tinelli, C. (eds.) TACAS 2015. LNCS, vol. 9035, pp. 517–532. Springer, Heidelberg (2015). doi: 10.1007/978-3-662-46681-0_50 Google Scholar
  8. 8.
    Bloem, R., Chockler, H., Ebrahimi, M., Strichman, O.: Synthesizing non-vacuous systems. In: Bouajjani, A., Monniaux, D. (eds.) VMCAI 2017. LNCS, vol. 10145, pp. 55–72. Springer, Cham (2017). doi: 10.1007/978-3-319-52234-0_4 CrossRefGoogle Scholar
  9. 9.
    Clarke, E.M., Emerson, E.A., Sistla, A.P.: Automatic verification of finite-state concurrent systems using temporal logic specifications. ACM Trans. Program. Lang. Syst. 8(2), 244–263 (1986). doi: 10.1145/5397.5399 CrossRefMATHGoogle Scholar
  10. 10.
    De Angelis, E., Pettorossi, A., Proietti, M.: Synthesizing concurrent programs using answer set programming. Fundam. Inform. 120(3–4), 205–229 (2012)MathSciNetMATHGoogle Scholar
  11. 11.
    de Moura, L., Bjørner, N.: Z3: an efficient SMT solver. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 337–340. Springer, Heidelberg (2008). doi: 10.1007/978-3-540-78800-3_24 CrossRefGoogle Scholar
  12. 12.
    Filiot, E., Jin, N., Raskin, J.: Antichains and compositional algorithms for LTL synthesis. Form. Methods Syst. Des. 39(3), 261–296 (2011). doi: 10.1007/s10703-011-0115-3 CrossRefMATHGoogle Scholar
  13. 13.
    Jacobs, S., Bloem, R.: Parameterized synthesis. In: Flanagan, C., König, B. (eds.) TACAS 2012. LNCS, vol. 7214, pp. 362–376. Springer, Heidelberg (2012). doi: 10.1007/978-3-642-28756-5_25 CrossRefGoogle Scholar
  14. 14.
    Jurdziński, M.: Small progress measures for solving parity games. In: Reichel, H., Tison, S. (eds.) STACS 2000. LNCS, vol. 1770, pp. 290–301. Springer, Heidelberg (2000). doi: 10.1007/3-540-46541-3_24 CrossRefGoogle Scholar
  15. 15.
    Khalimov, A., Jacobs, S., Bloem, R.: PARTY parameterized synthesis of token rings. In: Sharygina, N., Veith, H. (eds.) CAV 2013. LNCS, vol. 8044, pp. 928–933. Springer, Heidelberg (2013). doi: 10.1007/978-3-642-39799-8_66 CrossRefGoogle Scholar
  16. 16.
    Klenze, T., Bayless, S., Hu, A.J.: Fast, flexible, and minimal CTL synthesis via SMT. In: Chaudhuri, S., Farzan, A. (eds.) CAV 2016. LNCS, vol. 9779, pp. 136–156. Springer, Cham (2016). doi: 10.1007/978-3-319-41528-4_8 Google Scholar
  17. 17.
    Kupferman, O., Vardi, M.Y.: Safraless decision procedures. In: FOCS. pp. 531–542 (2005)Google Scholar
  18. 18.
    Kupferman, O., Vardi, M.Y., Wolper, P.: An automata-theoretic approach to branching-time model checking. J. ACM 47(2), 312–360 (2000). doi: 10.1145/333979.333987 MathSciNetCrossRefMATHGoogle Scholar
  19. 19.
    Manna, Z., Wolper, P.: Synthesis of communicating processes from temporal logic specifications. In: Kozen, D. (ed.) Logic of Programs 1981. LNCS, vol. 131, pp. 253–281. Springer, Heidelberg (1982). doi: 10.1007/BFb0025786 CrossRefGoogle Scholar
  20. 20.
    Piterman, N.: From nondeterministic Büchi and Streett automata to deterministic parity automata. In: LICS. pp. 255–264. IEEE Computer Society (2006). http://dx.doi.org/10.1109/LICS.2006.28
  21. 21.
    Piterman, N., Pnueli, A.: Faster solutions of Rabin and Streett games. In: Proceedings of the 21th IEEE Symposium on Logic in Computer Science (LICS 2006), 12–15 August 2006, Seattle, WA, USA, pp. 275–284 (2006). http://dx.doi.org/10.1109/LICS.2006.23
  22. 22.
    Pnueli, A.: The temporal logic of programs. In: 18th Annual Symposium on Foundations of Computer Science, 1977, pp. 46–57. IEEE (1977)Google Scholar
  23. 23.
    Pnueli, A., Rosner, R.: On the synthesis of a reactive module. In: Conference Record of the Sixteenth Annual ACM Symposium on Principles of Programming Languages, Austin, Texas, USA, 11–13 January 1989, pp. 179–190. ACM Press (1989). http://doi.acm.org/10.1145/75277.75293
  24. 24.
    Pnueli, A., Rosner, R.: Distributed reactive systems are hard to synthesize. In: 31st Annual Symposium on Foundations of Computer Science, St. Louis, Missouri, USA, 22–24 October 1990, Vol. 2, pp. 746–757. IEEE Computer Society (1990). http://dx.doi.org/10.1109/FSCS.1990.89597
  25. 25.
    Prezza, N.: CTL (Computation Tree Logic) sat solver. https://github.com/nicolaprezza/CTLSAT
  26. 26.
    Safra, S.: On the complexity of omega-automata. In: 29th Annual Symposium on Foundations of Computer Science, White Plains, New York, USA, 24–26 October 1988, pp. 319–327. IEEE Computer Society (1988). http://dx.doi.org/10.1109/SFCS.1988.21948
  27. 27.
    Schewe, S., Finkbeiner, B.: Bounded synthesis. In: Namjoshi, K.S., Yoneda, T., Higashino, T., Okamura, Y. (eds.) ATVA 2007. LNCS, vol. 4762, pp. 474–488. Springer, Heidelberg (2007). doi: 10.1007/978-3-540-75596-8_33 CrossRefGoogle Scholar
  28. 28.
    Sohail, S., Somenzi, F.: Safety first: a two-stage algorithm for the synthesis of reactive systems. STTT 15(5–6), 433–454 (2013). doi: 10.1007/s10009-012-0224-3 CrossRefGoogle Scholar
  29. 29.
    Vardi, M.Y., Wolper, P.: Reasoning about infinite computations. Inf. Comput. 115(1), 1–37 (1994). doi: 10.1006/inco.1994.1092 MathSciNetCrossRefMATHGoogle Scholar
  30. 30.
    Wolper, P., Vardi, M.Y., Sistla, A.P.: Reasoning about infinite computation paths (extended abstract). In: 24th Annual Symposium on Foundations of Computer Science, Tucson, Arizona, USA, 7–9 November 1983, pp. 185–194. IEEE Computer Society (1983). http://dx.doi.org/10.1109/SFCS.1983.51

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  1. 1.Graz University of TechnologyGrazAustria

Personalised recommendations