Skip to main content
Log in

Automata Terms in a Lazy WSkS Decision Procedure

  • Published:
Journal of Automated Reasoning Aims and scope Submit manuscript

Abstract

We propose a lazy decision procedure for the logic WS\(k\)S. It builds a term-based symbolic representation of the state space of the tree automaton (TA) constructed by the classical WS\(k\)S decision procedure. The classical decision procedure transforms the symbolic representation into a TA via a bottom-up traversal and then tests its language non-emptiness, which corresponds to satisfiability of the formula. On the other hand, we start evaluating the representation from the top, construct the state space on the fly, and utilize opportunities to prune away parts of the state space irrelevant to the language emptiness test. In order to do so, we needed to extend the notion of language terms (denoting language derivatives) used in our previous procedure for the linear fragment of the logic (the so-called WS1S) into automata terms. We implemented our decision procedure and identified classes of formulae on which our prototype implementation is significantly faster than the classical procedure implemented in the Mona tool.

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

Similar content being viewed by others

Notes

  1. Note that our definition of projection differs from the usual one, which would create a symbol over the alphabet \({\mathbb {X}}\setminus {\mathbb {Y}}\); in the example, it would produce a single symbol \(\{Y \mapsto 0\}\) over the alphabet of symbols over \(\{Y\}\).

  2. The implementation is available at https://github.com/vhavlena/lazy-wsks.

References

  1. Abdulla, P.A., Chen, Y.F., Holík, L., Mayr, R., Vojnar, T.: When simulation meets antichains (on Checking language inclusion of NFAs). In: TACAS’10, LNCS, vol. 6015, pp. 158–174. Springer (2010)

  2. Basin, D., Klarlund, N.: Automata based symbolic reasoning in hardware verification. In: CAV’98, LNCS, pp. 349–361. Springer (1998)

  3. Baukus, K., Bensalem, S., Lakhnech, Y., Stahl, K.: Abstracting WS1S systems to verify parameterized networks. In: TACAS’00, LNCS, vol. 1785, pp. 188–203. Springer (2000)

  4. Bodeveix, J., Filali, M.: FMona: A tool for expressing validation techniques over infinite state systems. In: TACAS’00, LNCS, vol. 1785, pp. 204–219. Springer (2000)

  5. Bouajjani, A., Habermehl, P., Holík, L., Touili, T., Vojnar, T.: Antichain-based universality and inclusion testing over nondeterministic finite tree automata. In: CIAA’08, LNCS, vol. 5148, pp. 57–67. Springer (2008)

  6. Bozga, M., Iosif, R., Sifakis, J.: Structural invariants for parametric verification of systems with almost linear architectures. Tech. Rep. arXiv:1902.02696 (2019)

  7. Büchi, J.R.: On a decision method in restricted second-order arithmetic. In: International Congress on Logic, Methodology, and Philosophy of Science, pp. 1–11. Stanford University Press (1962)

  8. Chin, W., David, C., Nguyen, H.H., Qin, S.: Automated verification of shape, size and bag properties via user-defined predicates in separation logic. Sci. Comput. Program. 77(9), 1006–1036 (2012)

    Article  MATH  Google Scholar 

  9. Comon, H., Dauchet, M., Gilleron, R., Löding, C., Jacquemard, F., Lugiez, D., Tison, S., Tommasi, M.: Tree automata techniques and applications (2008)

  10. D’Antoni, L., Veanes, M.: Minimization of symbolic automata. In: POPL’14., pp. 541–554 (2014)

  11. Doyen, L., Raskin, J.F.: Antichain algorithms for finite automata. In: TACAS’10, LNCS, vol. 6015, pp. 2–22. Springer (2010)

  12. Elgaard, J., Klarlund, N., Møller, A.: MONA 1.x: New techniques for WS1S and WS2S. In: CAV’98. LNCS, vol. 1427, pp. 516–520. Department of Computer Science, Aarhus University, Springer, BRICS (1998)

  13. Fiedor, T., Holík, L., Janků, P., Lengál, O., Vojnar, T.: Lazy automata techniques for WS1S. In: TACAS’17, LNCS, vol. 10205, pp. 407–425. Springer (2017)

  14. Fiedor, T., Holík, L., Lengál, O., Vojnar, T.: Nested antichains for WS1S. In: TACAS’15, LNCS, vol. 9035. Springer (2015)

  15. Ganzow, T., Kaiser, L.: New Algorithm for weak monadic second-order logic on inductive structures. In: CSL’10, LNCS, vol. 6247, pp. 366–380. Springer (2010)

  16. Glenn, J., Gasarch, W.: Implementing WS1S via finite automata. In: Workshop on Implementing Automata, LNCS, vol. 1260, pp. 50–63. Springer (1996)

  17. Habermehl, P., Holík, L., Rogalewicz, A., Šimáček, J., Vojnar, T.: Forest automata for verification of heap manipulation. Formal Methods Syst. Des. 41(1), 83–106 (2012)

    Article  MATH  Google Scholar 

  18. Hamza, J., Jobstmann, B., Kuncak, V.: Synthesis for regular specifications over unbounded domains. In: FMCAD’10, pp. 101–109. IEEE Computer Science (2010)

  19. Havlena, V., Holík, L., Lengál, O., Vojnar, T.: Automata terms in a lazy WS\(k\)S decision procedure. In: Proceedings of of CADE-27, LNCS, vol. 11716, pp. 300–318. Springer (2019)

  20. Hune, T., Sandholm, A.: A case study on using automata in control synthesis. In: FASE’00, LNCS, vol. 1783, pp. 349–362. Springer (2000)

  21. Klarlund, N.: A theory of restrictions for logics and automata. In: CAV’99, LNCS, vol. 1633, pp. 406–417. Springer (1999)

  22. Klarlund, N., Møller, A.: MONA Version 1.4 user manual. BRICS, Department of Computer Science, Aarhus University (2001). Notes Series NS-01-1. Available from http://www.brics.dk/mona/. Revision of BRICS NS-98-3

  23. Klarlund, N., Møller, A., Schwartzbach, M.I.: MONA implementation secrets. Int. J. Found. Comput. Sci. 13(4), 571–586 (2002)

    Article  MATH  Google Scholar 

  24. Klarlund, N., Nielsen, M., Sunesen, K.: A case study in automated verification based on trace abstractions. In: Formal System Specification, The RPC-Memory Specification Case Study, LNCS, vol. 1169. Springer (1996)

  25. Madhusudan, P., Parlato, G., Qiu, X.: Decidable logics combining heap structures and data. In: POPL’11, pp. 611–622. ACM (2011)

  26. Madhusudan, P., Qiu, X.: Efficient decision procedures for heaps using STRAND. In: SAS’11, LNCS, vol. 6887, pp. 43–59. Springer (2011)

  27. Margaria, T., Steffen, B., Topnik, C.: Second-order value numbering. In: GraMoT’10, ECEASST, vol. 30, pp. 1–15. EASST (2010)

  28. Møller, A., Schwartzbach, M.: The pointer assertion logic engine. In: PLDI’01. ACM Press (2001). Also in SIGPLAN Notices 36(5) (2001)

  29. Morawietz, F., Cornell, T.: The logic-automaton connection in linguistics. In: LACL’97, LNAI, vol. 1582. Springer (1997)

  30. Rabin, M.O.: Decidability of second order theories and automata on infinite trees. Trans. Am. Math. Soc. 141, 1–35 (1969)

    MATH  Google Scholar 

  31. Sandholm, A., Schwartzbach, M.I.: Distributed safety controllers for web services. In: FASE’98, pp. 270–284. Springer (1998)

  32. Smith, M.A., Klarlund, N.: Verification of a sliding window protocol using IOA and MONA. In: FORTE/PSTV’00, IFIP, vol. 183, pp. 19–34. Kluwer (2000)

  33. Stockmeyer, L.J., Meyer, A.R.: Word problems requiring exponential time (preliminary report). In: Fifth Annual ACM Symposium on Theory of Computing. STOC’73, pp. 1–9. ACM, New York (1973)

  34. Tateishi, T., Pistoia, M., Tripp, O.: Path- and index-sensitive string analysis based on monadic second-order logic. ACM Trans. Comput. Log. 22(4), 33:1–33:33 (2013)

  35. Thatcher, J.W., Wright, J.B.: Generalized finite automata theory with an application to a decision problem of second-order logic. Math. Syst. Theory 2(1), 57–81 (1968)

    Article  MATH  Google Scholar 

  36. Topnik, C., Wilhelm, E., Margaria, T., Steffen, B.: jMosel: a stand-alone tool and jABC plugin for M2L(Str). In: SPIN’06, LNCS, vol. 3925, pp. 293–298. Springer (2006)

  37. Traytel, D.: A coalgebraic decision procedure for WS1S. In: 24th EACSL Annual Conference on Computer Science Logic (CSL’15). Leibniz International Proceedings in Informatics (LIPIcs), vol. 41, pp. 487–503. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik, Dagstuhl, Germany (2015)

  38. Wies, T., Muñiz, M., Kuncak, V.: An efficient decision procedure for imperative tree data structures. In: CADE’11, LNCS, vol. 6803, pp. 476–491. Springer (2011)

  39. Wulf, M.D., Doyen, L., Henzinger, T.A., Raskin, J.F.: Antichains: a new algorithm for checking universality of finite automata. In: CAV’06, LNCS, vol. 4144, pp. 17–30. Springer (2006)

  40. Wulf, M.D., Doyen, L., Maquet, N., Raskin, J.F.: Antichains: alternative algorithms for LTL satisfiability and model-checking. In: TACAS’08, LNCS, vol. 4693. Springer (2008)

  41. Wulf, M.D., Doyen, L., Raskin, J.F.: A lattice theory for solving games of imperfect information. In: HSCC’06, LNCS, vol. 3927. Springer (2006)

  42. Zee, K., Kuncak, V., Rinard, M.C.: Full functional verification of linked data structures. In: POPL’08, pp. 349–361. ACM (2008)

  43. Zhou, M., He, F., Wang, B., Gu, M., Sun, J.: Array theory of bounded elements and its applications. J. Autom. Reason. 52(4), 379–405 (2014)

    Article  MATH  Google Scholar 

Download references

Acknowledgements

We thank the anonymous reviewers, both of the conference and the journal version of the paper, for their careful reading of the drafts, the spotted bugs, and the helpful comments on how to improve the exposition in this paper. This work was supported by the Czech Science Foundation project 19-24397S, the FIT BUT internal project FIT-S-20-6427, and The Ministry of Education, Youth and Sports from the National Programme of Sustainability (NPU II) project IT4Innovations excellence in science—LQ1602.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ondřej Lengál.

Additional information

Publisher's Note

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

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Havlena, V., Holík, L., Lengál, O. et al. Automata Terms in a Lazy WSkS Decision Procedure. J Autom Reasoning 65, 971–999 (2021). https://doi.org/10.1007/s10817-021-09597-w

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10817-021-09597-w

Keywords

Navigation