A Symbolic Approach to Safety ltl Synthesis

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

Abstract

Temporal synthesis is the automated design of a system that interacts with an environment, using the declarative specification of the system’s behavior. A popular language for providing such a specification is Linear Temporal Logic, or ltl. ltl synthesis in the general case has remained, however, a hard problem to solve in practice. Because of this, many works have focused on developing synthesis procedures for specific fragments of ltl, with an easier synthesis problem. In this work, we focus on Safety ltl, defined here to be the Until-free fragment of ltl in Negation Normal Form (nnf), and shown to express a fragment of safe ltl formulas. The intrinsic motivation for this fragment is the observation that in many cases it is not enough to say that something “good” will eventually happen, we need to say by when it will happen. We show here that Safety ltl synthesis is significantly simpler algorithmically than ltl synthesis. We exploit this simplicity in two ways, first by describing an explicit approach based on a reduction to Horn-SAT, which can be solved in linear time in the size of the game graph, and then through an efficient symbolic construction, allowing a BDD-based symbolic approach which significantly outperforms extant ltl-synthesis tools.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    de Alfaro, L., Henzinger, T.A., Kupferman, O.: Concurrent reachability games. In: FOCS, pp. 564–575 (1998)Google Scholar
  2. 2.
    Bloem, R., Könighofer, R., Seidl, M.: SAT-Based synthesis methods for safety specs. In: McMillan, K.L., Rival, X. (eds.) VMCAI 2014. LNCS, vol. 8318, pp. 1–20. Springer, Heidelberg (2014).  https://doi.org/10.1007/978-3-642-54013-4_1 CrossRefGoogle Scholar
  3. 3.
    Bloem, R., Jobstmann, B., Piterman, N., Pnueli, A., Sa’ar, Y.: Synthesis of Reactive(1) designs. J. Comput. Syst. Sci. 78(3), 911–938 (2012)CrossRefMATHMathSciNetGoogle Scholar
  4. 4.
    Bohy, A., Bruyère, V., Filiot, E., Jin, N., Raskin, J.-F.: Acacia+, a Tool for LTL synthesis. In: Madhusudan, P., Seshia, S.A. (eds.) CAV 2012. LNCS, vol. 7358, pp. 652–657. Springer, Heidelberg (2012).  https://doi.org/10.1007/978-3-642-31424-7_45 CrossRefGoogle Scholar
  5. 5.
    Bryant, R.E.: Symbolic Boolean Manipulation with Ordered Binary-Decision Diagrams. ACM Comput. Surv. 24(3), 293–318 (1992)CrossRefMathSciNetGoogle Scholar
  6. 6.
    Büchi, J.R.: Weak Second-Order Arithmetic and Finite Automata. Z.Math. Logik Grundl. Math. 6, 66–92 (1960)Google Scholar
  7. 7.
    Calude, C.S., Jain, S., Khoussainov, B., Li, W., Stephan, F.: Deciding parity games in Quasipolynomial time. In: STOC, pp. 252–263 (2017)Google Scholar
  8. 8.
    Cheng, C.-H., Hamza, Y., Ruess, H.: Structural synthesis for GXW specifications. In: Chaudhuri, S., Farzan, A. (eds.) CAV 2016. LNCS, vol. 9779, pp. 95–117. Springer, Cham (2016).  https://doi.org/10.1007/978-3-319-41528-4_6 Google Scholar
  9. 9.
    De Giacomo, G., Vardi, M.Y.: Synthesis for LTL and LDL on Finite Traces. In: IJCAI, pp. 1558–1564 (2015)Google Scholar
  10. 10.
    Doner, J.: Tree Acceptors and Some of Their Applications. J. Comput. Syst. Sci. 4(5), 406–451 (1970)CrossRefMATHMathSciNetGoogle Scholar
  11. 11.
    Dowling, W.F., Gallier, J.H.: Linear-Time Algorithms for Testing the Satisfiability of Propositional Horn Formulae. J. Log. Program. 1(3), 267–284 (1984)CrossRefMATHMathSciNetGoogle Scholar
  12. 12.
    Duret-Lutz, A., Lewkowicz, A., Fauchille, A., Michaud, T., Renault, É., Xu, L.: Spot 2.0 — A framework for LTL and \(\omega \)-automata manipulation. In: Artho, C., Legay, A., Peled, D. (eds.) ATVA 2016. LNCS, vol. 9938, pp. 122–129. Springer, Cham (2016).  https://doi.org/10.1007/978-3-319-46520-3_8 CrossRefGoogle Scholar
  13. 13.
    Eén, N., Mishchenko, A., Amla, N.: A Single-Instance Incremental SAT Formulation of Proof- and Counterexample-Based Abstraction (2010)Google Scholar
  14. 14.
    Ehlers, R.: Symbolic bounded synthesis. In: Touili, T., Cook, B., Jackson, P. (eds.) CAV 2010. LNCS, vol. 6174, pp. 365–379. Springer, Heidelberg (2010).  https://doi.org/10.1007/978-3-642-14295-6_33 CrossRefGoogle Scholar
  15. 15.
    Fogarty, S., Kupferman, O., Vardi, M.Y., Wilke, T.: Profile Trees for Büchi Word Automata, with Application to Determinization. In: GandALF, pp. 107–121 (2013)Google Scholar
  16. 16.
    Fried, D., Tabajara, L.M., Vardi, M.Y.: BDD-Based boolean functional synthesis. In: Chaudhuri, S., Farzan, A. (eds.) CAV 2016, Part II. LNCS, vol. 9780, pp. 402–421. Springer, Cham (2016).  https://doi.org/10.1007/978-3-319-41540-6_22 Google Scholar
  17. 17.
    Gastin, P., Oddoux, D.: Fast LTL to Büchi automata translation. In: Berry, G., Comon, H., Finkel, A. (eds.) CAV 2001. LNCS, vol. 2102, pp. 53–65. Springer, Heidelberg (2001).  https://doi.org/10.1007/3-540-44585-4_6 CrossRefGoogle Scholar
  18. 18.
    Henriksen, J.G., Jensen, J., Jørgensen, M., Klarlund, N., Paige, R., Rauhe, T., Sandholm, A.: Mona: monadic second-order logic in practice. In: Brinksma, E., Cleaveland, W.R., Larsen, K.G., Margaria, T., Steffen, B. (eds.) TACAS 1995. LNCS, vol. 1019, pp. 89–110. Springer, Heidelberg (1995).  https://doi.org/10.1007/3-540-60630-0_5 CrossRefGoogle Scholar
  19. 19.
    Kupferman, O., Vardi, M.Y.: Model Checking of Safety Properties. Formal Methods in System Design 19(3), 291–314 (2001)CrossRefMATHGoogle Scholar
  20. 20.
    Kupferman, O., Vardi, M.Y.: Safraless Decision Procedures. In: FOCS, pp. 531–542 (2005)Google Scholar
  21. 21.
    Lamport, L.: What good is temporal logic? In: IFIP Congress, pp. 657–668 (1983)Google Scholar
  22. 22.
    Malik, S., Zhang, L.: Boolean Satisfiability from Theoretical Hardness to Practical Success. Commun. ACM 52(8), 76–82 (2009)CrossRefGoogle Scholar
  23. 23.
    Pnueli, A.: The Temporal Logic of Programs. In: FOCS, pp. 46–57 (1977)Google Scholar
  24. 24.
    Pnueli, A., Rosner, R.: On the Synthesis of a Reactive Module. In: POPL, pp. 179–190 (1989)Google Scholar
  25. 25.
    Safra, S.: On the Complexity of omega-Automata. In: FOCS, pp. 319–327 (1988)Google Scholar
  26. 26.
    Sistla, A.P.: Safety, Liveness and Fairness in Temporal Logic. Formal Asp. Comput. 6(5), 495–512 (1994)CrossRefMATHGoogle Scholar
  27. 27.
    Sohail, S., Somenzi, F.: Safety First: A Two-Stage Algorithm for LTL Games. In: FMCAD, pp. 77–84 (2009)Google Scholar
  28. 28.
    Somenzi, F.: CUDD: CU Decision Diagram Package 3.0.0. Universiy of Colorado at Boulder (2016)Google Scholar
  29. 29.
    Zhu, S., Tabajara, L.M., Li, J., Pu, G., Vardi, M.Y.: Symbolic LTL\(_f\) Synthesis. In: IJCAI, pp. 1362–1369 (2017)Google Scholar
  30. 30.
    Zohar, Z.M., Waldinger, R.: Toward Automatic Program Synthesis. Commun. ACM 14(3), 151–165 (1971)CrossRefMATHGoogle Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  1. 1.East China Normal UniversityShanghaiChina
  2. 2.Rice UniversityTexasUSA

Personalised recommendations