Qual é a abordagem padrão para minimizar o Büchi-Automata (ou também o Müller-Automata)? Transferir a técnica usual de palavras finitas, ou seja, definir dois estados como iguais se as palavras "acabando" dos estados aceitos forem iguais, não funcionará. Por exemplo, considere o Büchi-Automoton aceitando todas as palavras com um número infinito de a consistindo em dois estados, um inicial e um final, e o estado final é inserido cada vez que um a é lido e o estado inicial é inserido cada vez que um símbolo diferente é lido. Ambos os estados são considerados iguais pela definição acima, mas colapsá-los produz um autômato que consiste em um único estado e, assim, aceita todas as palavras.
fonte
Essa questão gerou muita literatura na década de 80, em parte devido a uma má abordagem do problema. Esta é uma história bastante longa que tentarei resumir nesta resposta.
1. O caso das palavras finitas
Pode-se encontrar duas definições de um DFA mínimo na literatura. O primeiro é definir o DFA mínimo de um idioma regular como o DFA completo com o número mínimo de estados que aceitam o idioma. O segundo é mais longo para definir, mas é matematicamente mais atraente que o primeiro e fornece propriedades mais fortes.
Vale ressaltar que também existe uma definição algébrica adequada para DFAs incompletos . Veja [Eilenberg, Automata, Languages and Machines , vol. A, Academic Press, 1974] para mais detalhes.
2. Voltar para palavras infinitas
Estender a primeira definição não funciona, como mostra Shaull em sua resposta. E, infelizmente, também se pode mostrar que a propriedade universal da segunda definição não se estende a infinitas palavras, exceto em alguns casos particulares.
É o fim da história? Espere um segundo, há outro objeto mínimo que aceita idiomas regulares ...
3. A abordagem sintática
Voltemos primeiro a palavras finitas. Recorde-se que uma língua de é reconhecido por um monóide , se houver um sobrejetivo monóide morfismo e um subconjunto de de tal modo que . Mais uma vez, existe uma monóide , o chamado monóide sintática de , que reconhece e é um quociente de todos os monoides reconhecendo . Este monóide sintático pode ser definido diretamente como o quociente de pela congruência sintática deA ∗ M f : A ∗ → M P M f - 1 ( P ) = L M ( L ) L L L A ∗ ∼ L L u ∼ L v se e somente se, para todos os x , y ∈ A ∗ , x u y ∈ LL A∗ M f:A∗→M P M f−1(P)=L M(L) L L L A∗ ∼L L , definido da seguinte forma:
A boa notícia é que desta vez, essa abordagem foi estendida a infinitas palavras, mas levou muito tempo para descobrir as noções apropriadas. Primeiro, a noção adequada de congruência sintática foi encontrada por A. Arnold (Uma congruência sintática para idiomas racionais , Theoret. Comput. Sci. 39 , 2-3 (1985), 333-335). A extensão dos monoides sintáticos para a definição de palavras infinitas exigia um tipo mais sofisticado de álgebras, hoje chamado álgebra de Wilke em homenagem a T. Wilke, que foi o primeiro a defini-las (T. Wilke, uma teoria algébrica para linguagens regulares de finito e infinito palavras, ω
4. Conclusão
Portanto, existe uma noção matematicamente sólida de um objeto mínimo que aceita uma determinada linguagem regular , mas não depende de autômatos. Este é realmente um fato bastante genérico: os autômatos são uma ferramenta algorítmica muito poderosa, mas nem sempre são suficientes para tratar questões matemáticas nas linguagens.ω
fonte