Simulation Algorithms for Symbolic Automata
We investigate means of efficient computation of the simulation relation over symbolic finite automata (SFAs), i.e., finite automata with transitions labeled by predicates over alphabet symbols. In one approach, we build on the algorithm by Ilie, Navaro, and Yu proposed originally for classical finite automata, modifying it using the so-called mintermisation of the transition predicates. This solution, however, generates all Boolean combinations of the predicates, which easily causes an exponential blowup in the number of transitions. Therefore, we propose two more advanced solutions. The first one still applies mintermisation but in a local way, mitigating the size of the exponential blowup. The other one focuses on a novel symbolic way of dealing with transitions, for which we need to sacrifice the counting technique of the original algorithm (counting is used to decrease the dependency of the running time on the number of transitions from quadratic to linear). We perform a thorough experimental evaluation of all the algorithms, together with several further alternatives, showing that all of them have their merits in practice, but with the clear indication that in most of the cases, efficient treatment of symbolic transitions is more beneficial than counting.
This paper was supported by the Czech Science Foundation projects 16-17538S and 16-24707Y, the IT4IXS: IT4Innovations Excellence in Science project (LQ1602), and the FIT BUT internal project FIT-S-17-4014.
- 1.Watson, B.W.: Implementing and Using Finite Automata Toolkits. Cambridge University Press, New York (1999)Google Scholar
- 6.Bonchi, F., Pous, D.: Checking NFA equivalence with bisimulations up to congruence. In: Proceeding of POPL’13, ACM (2013)Google Scholar
- 8.Holík, L., Šimáček, J.: Optimizing an LTS-simulation algorithm. In: Masaryk, U. (ed.) Proceedings of MEMICS’09 (2009)Google Scholar
- 10.Henzinger, M.R., Henzinger, T.A., Kopke, P.W.: Computing simulations on finite and infinite graphs. In: Proceedings of FOCS’95, IEEE (1995)Google Scholar
- 11.Cécé, G.: Foundation for a series of efficient simulation algorithms. In: Proceedings of LICS’17, IEEE (2017)Google Scholar
- 12.D’Antoni, L., Veanes, M.: Minimization of symbolic automata. In: Proceedings of POPL’14, ACM (2014)Google Scholar
- 14.Eberl, M.: Efficient and verified computation of simulation relations on NFAs. Bachelor’s thesis, TU Munich, 2012Google Scholar
- 15.Regular expression library. http://regexlib.com/
- 16.Comon, H., et al.: Tree automata techniques and applications (2007)Google Scholar
- 21.Holík, L., Lengál, O., Síč, J., Veanes, M., Vojnar, T.: Simulation algorithms for symbolic automata (Technical Report). CoRR, arXiv:abs/1807.08487 (2018)