Simulations in Rank-Based Büchi Automata Complementation

  • Yu-Fang Chen
  • Vojtěch Havlena
  • Ondřej LengálEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11893)


Complementation of Büchi automata is an essential technique used in some approaches for termination analysis of programs. The long search for an optimal complementation construction climaxed with the work of Schewe, who proposed a worst-case optimal rank-based procedure that generates complements of a size matching the theoretical lower bound of \((0.76n)^n\), modulo a polynomial factor of \(\mathcal {O}(n^2)\). Although worst-case optimal, the procedure in many cases produces automata that are unnecessarily large. In this paper, we propose several ways of how to use the direct and delayed simulation relations to reduce the size of the automaton obtained in the rank-based complementation procedure. Our techniques are based on either (i) ignoring macrostates that cannot be used for accepting a word in the complement or (ii) saturating macrostates with simulation-smaller states, in order to decrease their total number. We experimentally showed that our techniques can indeed considerably decrease the size of the output of the complementation.



We thank the anonymous reviewers for their helpful comments on how to improve the exposition in this paper. This work was supported by the Ministry of Science and Technology of Taiwan project 106-2221-E-001-009-MY3 the Czech Science Foundation project 19-24397S, the FIT BUT internal project FIT-S-17-4014, and The Ministry of Education, Youth and Sports from the National Programme of Sustainability (NPU II) project IT4Innovations excellence in science—LQ1602.


  1. 1.
    Abdulla, P.A., et al.: Simulation subsumption in Ramsey-based Büchi automata universality and inclusion testing. In: Touili, T., Cook, B., Jackson, P. (eds.) CAV 2010. LNCS, vol. 6174, pp. 132–147. Springer, Heidelberg (2010). Scholar
  2. 2.
    Abdulla, P.A., et al.: Advanced Ramsey-based Büchi automata inclusion testing. In: Katoen, J.-P., König, B. (eds.) CONCUR 2011. LNCS, vol. 6901, pp. 187–202. Springer, Heidelberg (2011). Scholar
  3. 3.
    Abdulla, P.A., Chen, Y.-F., Holík, L., Mayr, R., Vojnar, T.: When simulation meets antichains. In: Esparza, J., Majumdar, R. (eds.) TACAS 2010. LNCS, vol. 6015, pp. 158–174. Springer, Heidelberg (2010). Scholar
  4. 4.
    Allred, J.D., Ultes-Nitsche, U.: A Simple and optimal complementation algorithm for Büchi automata. In: Proceedings of the 33rd Annual ACM/IEEE Symposium on Logic in Computer Science, pp. 46–55. ACM (2018)Google Scholar
  5. 5.
    Breuers, S., Löding, C., Olschewski, J.: Improved Ramsey-based Büchi complementation. In: Birkedal, L. (ed.) FoSSaCS 2012. LNCS, vol. 7213, pp. 150–164. Springer, Heidelberg (2012). Scholar
  6. 6.
    Büchi, J.R.: On a decision method in restricted second order arithmetic. In: Proceedings of International Congress on Logic, Method, and Philosophy of Science 1960. Stanford University Press, Stanford (1962)Google Scholar
  7. 7.
    Bustan, D., Grumberg, O.: Simulation-based minimization. ACM Trans. Comput. Logic 4(2), 181–206 (2003)MathSciNetCrossRefGoogle Scholar
  8. 8.
    Cécé, G.: Foundation for a series of efficient simulation algorithms. In: Proceedings of LICS 2017, pp. 1–12 (2017)Google Scholar
  9. 9.
    Chen, Y., et al.: Advanced automata-based algorithms for program termination checking. In: Proceedings of PLDI 2018, pp. 135–150. ACM (2018)Google Scholar
  10. 10.
    Clemente, L.: Büchi automata can have smaller quotients. In: Aceto, L., Henzinger, M., Sgall, J. (eds.) ICALP 2011. LNCS, vol. 6756, pp. 258–270. Springer, Heidelberg (2011). Scholar
  11. 11.
    Dill, D.L., Hu, A.J., Wong-Toi, H.: Checking for language inclusion using simulation preorders. In: Larsen, K.G., Skou, A. (eds.) CAV 1991. LNCS, vol. 575, pp. 255–265. Springer, Heidelberg (1992). Scholar
  12. 12.
    Etessami, K., Wilke, T., Schuller, R.: Fair simulation relations, parity games, and state space reduction for Büchi automata. SIAM J. Comput. 34(5), 1159–1175 (2005)MathSciNetCrossRefGoogle Scholar
  13. 13.
    Etessami, K.: A hierarchy of polynomial-time computable simulations for automata. In: Brim, L., Křetínský, M., Kučera, A., Jančar, P. (eds.) CONCUR 2002. LNCS, vol. 2421, pp. 131–144. Springer, Heidelberg (2002). Scholar
  14. 14.
    Fogarty, S., Vardi, M.Y.: Büchi complementation and size-change termination. In: Kowalewski, S., Philippou, A. (eds.) TACAS 2009. LNCS, vol. 5505, pp. 16–30. Springer, Heidelberg (2009). Scholar
  15. 15.
    Friedgut, E., Kupferman, O., Vardi, M.: Büchi complementation made tighter. Int. J. Found. Comput. Sci. 17, 851–868 (2006)CrossRefGoogle Scholar
  16. 16.
    Fritz, C., Wilke, T.: Simulation relations for alternating Büchi automata. Theor. Comput. Sci. 338(1), 275–314 (2005)CrossRefGoogle Scholar
  17. 17.
    van Glabbeek, R., Ploeger, B.: Five determinisation algorithms. In: Ibarra, O.H., Ravikumar, B. (eds.) CIAA 2008. LNCS, vol. 5148, pp. 161–170. Springer, Heidelberg (2008). Scholar
  18. 18.
    Gurumurthy, S., Bloem, R., Somenzi, F.: Fair simulation minimization. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, pp. 610–623. Springer, Heidelberg (2002). Scholar
  19. 19.
    Heizmann, M., Hoenicke, J., Podelski, A.: Termination analysis by learning terminating programs. In: Biere, A., Bloem, R. (eds.) CAV 2014. LNCS, vol. 8559, pp. 797–813. Springer, Cham (2014). Scholar
  20. 20.
    Henzinger, M.R., Henzinger, T.A., Kopke, P.W.: Computing simulations on finite and infinite graphs. In: Proceedings of FOCS 1995, pp. 453–462. IEEE Computer Society (1995)Google Scholar
  21. 21.
    Henzinger, T.A., Kupferman, O., Rajamani, S.K.: Fair simulation. Inf. Comput. 173(1), 64–81 (2002)MathSciNetCrossRefGoogle Scholar
  22. 22.
    Ilie, L., Navarro, G., Yu, S.: On NFA reductions. In: Karhumäki, J., Maurer, H., Păun, G., Rozenberg, G. (eds.) Theory Is Forever. LNCS, vol. 3113, pp. 112–124. Springer, Heidelberg (2004). Scholar
  23. 23.
    Kähler, D., Wilke, T.: Complementation, disambiguation, and determinization of Büchi automata unified. In: Aceto, L., Damgård, I., Goldberg, L.A., Halldórsson, M.M., Ingólfsdóttir, A., Walukiewicz, I. (eds.) ICALP 2008. LNCS, vol. 5125, pp. 724–735. Springer, Heidelberg (2008). Scholar
  24. 24.
    Kupferman, O., Vardi, M.Y.: Weak alternating automata are not that weak. ACM Trans. Comput. Logic 2(3), 408–429 (2001)MathSciNetCrossRefGoogle Scholar
  25. 25.
    Li, Y., Turrini, A., Zhang, L., Schewe, S.: Learning to complement Büchi automata. In: Dillig, I., Palsberg, J. (eds.) Verification, Model Checking, and Abstract Interpretation. LNCS, vol. 10747, pp. 313–335. Springer, Cham (2018). Scholar
  26. 26.
    Mayr, R., Clemente, L.: Advanced automata minimization. In: Proceedings of POPL 2013, pp. 63–74 (2013)CrossRefGoogle Scholar
  27. 27.
    Mayr, R., Clemente, L.: Efficient reduction of nondeterministic automata with application to language inclusion testing. Logical Methods Comput. Sci. 15, 12:1–12:73 (2019)MathSciNetzbMATHGoogle Scholar
  28. 28.
    Michel, M.: Complementation is more difficult with automata on infinite words. In: CNET, Paris, vol. 15 (1988)Google Scholar
  29. 29.
    Piterman, N.: From nondeterministic Büchi and Streett automata to deterministic parity automata. In: Proceedings of LICS 2006. pp. 255–264. IEEE (2006)Google Scholar
  30. 30.
    Ranzato, F., Tapparo, F.: A new efficient simulation equivalence algorithm. In: Proceedings of LICS 2007, pp. 171–180 (2007)Google Scholar
  31. 31.
    Ranzato, F., Tapparo, F.: An efficient simulation algorithm based on abstract interpretation. Inf. Comput. 208(1), 1–22 (2010)MathSciNetCrossRefGoogle Scholar
  32. 32.
    Safra, S.: On the complexity of \(\omega \)-automata. In: Proceedings of FOCS 1988, pp. 319–327. IEEE (1988)Google Scholar
  33. 33.
    Schewe, S.: Büchi complementation made tight. In: Proceedings of STACS 2009, pp. 661–672. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik (2009)Google Scholar
  34. 34.
    Sistla, A.P., Vardi, M.Y., Wolper, P.: The complementation problem for Büchi automata with applications to temporal logic. Theor. Comput. Sci. 49(2–3), 217–237 (1987)CrossRefGoogle Scholar
  35. 35.
    Sistla, A.P., Vardi, M.Y., Wolper, P.: The complementation problem for Büchi automata with applications to temporal logic. In: Brauer, W. (ed.) ICALP 1985. LNCS, vol. 194, pp. 465–474. Springer, Heidelberg (1985). Scholar
  36. 36.
    Somenzi, F., Bloem, R.: Efficient Büchi automata from LTL formulae. In: Emerson, E.A., Sistla, A.P. (eds.) CAV 2000. LNCS, vol. 1855, pp. 248–263. Springer, Heidelberg (2000). Scholar
  37. 37.
    Tabakov, D., Vardi, M.Y.: Experimental evaluation of classical automata constructions. In: Sutcliffe, G., Voronkov, A. (eds.) LPAR 2005. LNCS (LNAI), vol. 3835, pp. 396–411. Springer, Heidelberg (2005). Scholar
  38. 38.
    Vardi, M.Y.: The Büchi complementation saga. In: Thomas, W., Weil, P. (eds.) STACS 2007. LNCS, vol. 4393, pp. 12–22. Springer, Heidelberg (2007). Scholar
  39. 39.
    Vardi, M.Y., Wilke, T.: Automata: from logics to algorithms. Logic Automata 2, 629–736 (2008)MathSciNetzbMATHGoogle Scholar
  40. 40.
    Vardi, M.Y., Wilke, T., Kupferman, O., Fogarty, S.J.: Unifying Büchi complementation constructions. Logical Methods Comput. Sci. 9, 1–25 (2013)MathSciNetzbMATHGoogle Scholar
  41. 41.
    Yan, Q.: Lower bounds for complementation of \(\omega \)-automata via the full automata technique. In: Bugliesi, M., Preneel, B., Sassone, V., Wegener, I. (eds.) ICALP 2006. LNCS, vol. 4052, pp. 589–600. Springer, Heidelberg (2006). Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  • Yu-Fang Chen
    • 1
  • Vojtěch Havlena
    • 2
  • Ondřej Lengál
    • 2
    Email author
  1. 1.Academia SinicaTaipeiTaiwan
  2. 2.FIT, IT4I Centre of ExcellenceBrno University of TechnologyBrnoCzech Republic

Personalised recommendations