Abstract
Deterministic finite automata are abstract machines that play a vital role in computer science and control engineering, aiding in the development of compilers, search algorithms, modeling of discrete event systems and more. With the aim of optimizing computational resources, minimization algorithms have been developed to eliminate unreachable and indistinguishable states in these automata. Brzozowski’s algorithm is one such method which involves reversing and determinizing the automaton twice. Despite its apparent simplicity, proving the correctness of this minimization method requires various inductive strategies. For this purpose, the Coq proof assistant was employed to streamline the proof and provide a means of verification for the algorithm. In addition to the related demonstrations, this paper contributes with a straightforward representation of automata in functional programming languages. This approach uses only lists and types with decidable equality, so that common data structures can be utilized to represent finite automata. It also offers an accessible explanation for the reasoning process.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Athalye, A.: CoqIOA: a Formalization of IO Automata in the Coq Proof Assistant. Ph.D. thesis, Massachusetts Institute of Technology (2017). https://dspace.mit.edu/handle/1721.1/112831
Bertot, Y., Castran, P.: Interactive Theorem Proving and Program Development: Coq’Art The Calculus of Inductive Constructions, 1st edn. Springer Publishing Company, Incorporated (2010)
Bonchi, F., Bonsangue, M.M., Rutten, J.J., Silva, A.: Brzozowski’s algorithm (co) algebraically. In: Logic and Program Semantics, pp. 12–23. Springer (2012), https://link.springer.com/chapter/10.1007/978-3-642-29485-3_2
Braibant, T., Pous, D.: Deciding Kleene algebras in Coq. Logic. Methods Comput. Sci. 8, (2012). https://lmcs.episciences.org/1043
Cassandras, C.G., Lafortune, S.: Introduction to Discrete Event Systems, 2nd edn. Springer Science+Business Media, New York (2008)
Doczkal, C., Kaiser, J.O., Smolka, G.: A constructive theory of regular languages in Coq. In: International Conference on Certified Programs and Proofs. pp. 82–97. Springer (2013). https://link.springer.com/chapter/10.1007/978-3-319-03545-1_6
Hopcroft, J.E., Motwani, R., Ullman, J.D.: Introduction to Automata Theory, Languages, and Computation, 3rd edn. Pearson/Addison Wesley, Boston (2006)
Jan, H.: Proof of Brzozowski’s Algorithm for DFA Minimization (2019). https://cs.stackexchange.com/questions/105574/proof-of-brzozowskis-algorithm-for-dfa-minimization
Paulson, L.C.: A formalisation of finite automata using hereditarily finite sets. In: International Conference on Automated Deduction, pp. 231–245. Springer (2015). https://link.springer.com/chapter/10.1007/978-3-319-21401-6_15
Pierce, B.C., et al.: Logical Foundations, vol. 1, 6.6 edn. UPenn CIS, Pennsylvania (2024)
Ramos, F.: Prova da minimização de autômatos finitos determinísticos pelo algoritmo de brzozowski assistida por computador (2021). https://pergamumweb.udesc.br/acervo/152736. supervisors: Karina Girardi Roggia, Rafael Castro G. Silva
Acknowledgments
This work was partially supported by Fundação de Amparo à Pesquisa e Inovação do Estado de Santa Catarina - FAPESC.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2025 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Ramos, F., Roggia, K.G., Silva, R.C.G. (2025). Brzozowski’s Algorithm for Automata Minimization Verified in Coq. In: C. Nogueira, S., Teodorov, C. (eds) Formal Methods: Foundations and Applications. SBMF 2024. Lecture Notes in Computer Science, vol 15403. Springer, Cham. https://doi.org/10.1007/978-3-031-78116-2_7
Download citation
DOI: https://doi.org/10.1007/978-3-031-78116-2_7
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-78115-5
Online ISBN: 978-3-031-78116-2
eBook Packages: Computer ScienceComputer Science (R0)