Abstract
We propose a novel approach for coping with alternating quantification as the main source of nonelementary complexity of deciding WS1S formulae. Our approach is applicable within the state-of-the-art automata-based WS1S decision procedure implemented e.g. in Mona. The way in which the standard decision procedure processes quantifiers involves determinization, with its worst case exponential complexity, for every quantifier alternation in the prefix of a formula. Our algorithm avoids building the deterministic automata—instead, it constructs only those of their states needed for (dis)proving validity of the formula. It uses a symbolic representation of the states, which have a deeply nested structure stemming from the repeated implicit subset construction, and prunes the search space by a nested subsumption relation, a generalization of the one used by the so-called antichain algorithms for handling nondeterministic automata. We have obtained encouraging experimental results, in some cases outperforming Mona, and some of the other recently proposed approaches, by several orders of magnitude.
Similar content being viewed by others
Notes
Results for the other families are very similar and hence skipped here. An interested reader is referred to [27].
Note that the HornSub family is not supported by Toss and Coalg, and thus we chose a comparably complex family of SetClosed to present the overall comparison.
References
Fiedor, T., Holík, L., Lengál, O., Vojnar, T.: Nested antichains for WS1S. In: TACAS’15. Volume 9035 of LNCS. Springer, pp. 658–674 (2015)
Meyer, A.R.: Weak monadic second order theory of successor is not elementary-recursive. In Parikh, R., (ed.) Proceedings of Logic Colloquium—Symposium on Logic Held at Boston, 1972–1973. Volume 453 of Lecture Notes in Mathematics. Springer, pp. 132–154 (1972)
Elgaard, J., Klarlund, N., Møller, A.: MONA 1.x: new techniques for WS1S and WS2S. In: Proceedings of CAV’98. Volume 1427 of Lecture Notes in Computer Science. Springer, pp. 516–520 (1998)
Klarlund, N., Møller, A.: MONA Version 1.4 User Manual. BRICS, Department of Computer Science, Aarhus University. Notes Series NS-01-1. http://www.brics.dk/mona/ (2001) . Revision of BRICS NS-98-3
Madhusudan, P., Parlato, G., Qiu, X.: Decidable logics combining heap structures and data. In: Proceedings of POPL’11. ACM, pp. 611–622 (2011)
Madhusudan, P., Qiu, X.: Efficient decision procedures for heaps using STRAND. In: Proceedings of SAS’11. Volume 6887 of Lecture Notes in Computer Science. Springer, pp. 43–59 (2011)
Iosif, R., Rogalewicz, A., Šimáček, J.: The tree width of separation logic with recursive definitions. In: CADE 2013. Volume 7898 of Lecture Notes in Computer Science. Springer, pp. 21–38 (2013)
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)
Zee, K., Kuncak, V., Rinard, M.C.: Full functional verification of linked data structures. In: Proceedings of POPL’08. ACM, pp. 349–361 (2008)
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)
Hamza, J., Jobstmann, B., Kuncak, V.: Synthesis for regular specifications over unbounded domains. In: Proceedings of FMCAD’10. IEEE, pp. 101–109 (2010)
Wies, T., Muñiz, M., Kuncak, V.: An efficient decision procedure for imperative tree data structures. In: Bjørner, N., Sofronie-Stokkermans, V. (eds.) Proceedings of CADE’11. Volume 6803 of Lecture Notes in Computer Science. Springer, pp. 476–491 (2011)
Doyen, L., Raskin, J.F.: Antichain algorithms for finite automata. In: Proceedings of TACAS’10. Volume 6015 of LNCS. Springer, pp. 2–22 (2010)
Wulf, M.D., Doyen, L., Henzinger, T.A., Raskin, J.F.: Antichains: a new algorithm for checking universality of finite automata. In: Proceedings of CAV’06. Volume 4144 of LNCS. Springer, pp. 17–30 (2006)
Abdulla, P.A., Chen, Y.F., Holík, L., Mayr, R., Vojnar, T.: When simulation meets antichains (on checking language inclusion of nondeterministic finite (tree) automata). In: Esparza, J., Majumdar, R. (eds.) Proceedings of TACAS’10. Volume 6015 of Lecture Notes in Computer Science. Springer, pp. 158–174 (2010)
Bustan, D., Grumberg, O.: Simulation based minimization. In: Proceedings of CADE’00. Volume 1831 of Lecture Notes in Computer Science. Springer, pp. 255–270 (2000)
Abdulla, P.A., Bouajjani, A., Holík, L., Kaati, L., Vojnar, T.: Computing simulations over tree automata: efficient techniques for reducing tree automata. In: Proceedings of TACAS’08. Volume 4963 of LNCS. Springer, pp. 93–108 (2008)
Bouajjani, A., Habermehl, P., Holík, L., Touili, T., Vojnar, T.: Antichain-based universality and inclusion testing over nondeterministic finite tree automata. In: Proceedings of CIAA’08. Volume 5148 of LNCS. Springer, pp. 57–67 (2008)
Habermehl, P., Holík, L., Rogalewicz, A., Simácek, J., Vojnar, T.: Forest automata for verification of heap manipulation. Form. Methods Syst. Des. 41(1), 83–106 (2012)
Klarlund, N., Møller, A., Schwartzbach, M.I.: MONA implementation secrets. Int. J. Found. Comput. Sci. 13(4), 571–586 (2002)
Topnik, C., Wilhelm, E., Margaria, T., Steffen, B.: jMosel: A stand-alone tool and jABC plugin for M2L(Str). In: Proceedings of SPIN’06. Volume 3925 of Lecture Notes in Computer Science. Springer, pp. 293–298 (2006)
D’Antoni, L., Veanes, M.: Minimization of symbolic automata. In: Proceedings of POPL’14, pp. 541–554 (2014)
Ganzow, T., Kaiser, L.: New algorithm for weak monadic second-order logic on inductive structures. In: Proceedings of CSL’10. Volume 6247 of Lecture Notes in Computer Science. Springer, pp. 366–380 (2010)
Traytel, D.: A coalgebraic decision procedure for WS1S. In: Kreutzer, S. (ed.) 24th EACSL Annual Conference on Computer Science Logic (CSL 2015). Volume 41 of Leibniz International Proceedings in Informatics (LIPIcs), Dagstuhl, Germany, Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik, pp. 487–503 (2015)
Comon, H., Dauchet, M., Gilleron, R., Löding, C., Jacquemard, F., Lugiez, D., Tison, S., Tommasi, M.: Tree automata techniques and applications (2008)
Büchi, J.R.: Weak second-order arithmetic and finite automata. Technical report, The University of Michigan (1959). http://hdl.handle.net/2027.42/3930 (2010)
Fiedor, T., Holík, L., Lengál, O., Vojnar, T.: dWiNA. http://www.fit.vutbr.cz/research/groups/verifit/tools/dWiNA/ (2014)
Lengál, O., Šimáček, J., Vojnar, T.: VATA: a library for efficient manipulation of non-deterministic tree automata. In: Proceedings of TACAS’12. Volume 7214 of Lecture Notes in Computer Science. Springer, pp. 79–94 (2012)
Acknowledgements
We thank the anonymous reviewers for their helpful comments on how to improve the presentation in this paper. The work in this paper was supported by the Czech Science Foundation project 16-24707Y, the IT4IXS: IT4Innovations Excellence in Science project (LQ1602), and the FIT BUT internal project FIT-S-17-4014.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
An extended abstract of this paper was first presented in [1]. The current paper extends [1] with a more detailed presentation of the approach, the needed proofs, an illustrating example, and an extended experimental evaluation of the approach.
Rights and permissions
About this article
Cite this article
Fiedor, T., Holík, L., Lengál, O. et al. Nested antichains for WS1S. Acta Informatica 56, 205–228 (2019). https://doi.org/10.1007/s00236-018-0331-z
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00236-018-0331-z