HVC 2017: Hardware and Software: Verification and Testing pp 147-162 | Cite as
A Symbolic Approach to Safety ltl Synthesis
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.
References
- 1.de Alfaro, L., Henzinger, T.A., Kupferman, O.: Concurrent reachability games. In: FOCS, pp. 564–575 (1998)Google Scholar
- 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.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.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.Bryant, R.E.: Symbolic Boolean Manipulation with Ordered Binary-Decision Diagrams. ACM Comput. Surv. 24(3), 293–318 (1992)CrossRefMathSciNetGoogle Scholar
- 6.Büchi, J.R.: Weak Second-Order Arithmetic and Finite Automata. Z.Math. Logik Grundl. Math. 6, 66–92 (1960)Google Scholar
- 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.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.De Giacomo, G., Vardi, M.Y.: Synthesis for LTL and LDL on Finite Traces. In: IJCAI, pp. 1558–1564 (2015)Google Scholar
- 10.Doner, J.: Tree Acceptors and Some of Their Applications. J. Comput. Syst. Sci. 4(5), 406–451 (1970)CrossRefMATHMathSciNetGoogle Scholar
- 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.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.Eén, N., Mishchenko, A., Amla, N.: A Single-Instance Incremental SAT Formulation of Proof- and Counterexample-Based Abstraction (2010)Google Scholar
- 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.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.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.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.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.Kupferman, O., Vardi, M.Y.: Model Checking of Safety Properties. Formal Methods in System Design 19(3), 291–314 (2001)CrossRefMATHGoogle Scholar
- 20.Kupferman, O., Vardi, M.Y.: Safraless Decision Procedures. In: FOCS, pp. 531–542 (2005)Google Scholar
- 21.Lamport, L.: What good is temporal logic? In: IFIP Congress, pp. 657–668 (1983)Google Scholar
- 22.Malik, S., Zhang, L.: Boolean Satisfiability from Theoretical Hardness to Practical Success. Commun. ACM 52(8), 76–82 (2009)CrossRefGoogle Scholar
- 23.Pnueli, A.: The Temporal Logic of Programs. In: FOCS, pp. 46–57 (1977)Google Scholar
- 24.Pnueli, A., Rosner, R.: On the Synthesis of a Reactive Module. In: POPL, pp. 179–190 (1989)Google Scholar
- 25.Safra, S.: On the Complexity of omega-Automata. In: FOCS, pp. 319–327 (1988)Google Scholar
- 26.Sistla, A.P.: Safety, Liveness and Fairness in Temporal Logic. Formal Asp. Comput. 6(5), 495–512 (1994)CrossRefMATHGoogle Scholar
- 27.Sohail, S., Somenzi, F.: Safety First: A Two-Stage Algorithm for LTL Games. In: FMCAD, pp. 77–84 (2009)Google Scholar
- 28.Somenzi, F.: CUDD: CU Decision Diagram Package 3.0.0. Universiy of Colorado at Boulder (2016)Google Scholar
- 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.Zohar, Z.M., Waldinger, R.: Toward Automatic Program Synthesis. Commun. ACM 14(3), 151–165 (1971)CrossRefMATHGoogle Scholar