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.
(Q,A,⋅,i,F)q∈Qu∈A∗i⋅u=qq⋅aq∈Qa∈A
A1=(Q1,A,⋅,i1,F1)A2=(Q2,A,⋅,i2,F2)A1A2φ:Q1→Q2
- φ(i1)=i2
- φ−1(F2)=F1
- q∈Q1a∈Aφ(q)⋅a=φ(q⋅a)
φA 1|Q2|⩽|Q1|A1A2A1A2LALLALAAL . Este autômato é chamado o DFA mínima de . Observe novamente que, como o número de estados em é menor que o número de estados em , também é mínimo no primeiro sentido.LALAAL
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 ∈ LLA∗ Mf:A∗→MPMf−1(P)=LM(L)LLLA∗ ∼LL, 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, ω
u∼Lv if and only if, for all x,y∈A∗, xuy∈L⟺xvy∈L
ω Int. J. Alg. Comput. 3 (1993), 447-489). Mais detalhes podem ser encontrados no meu livro
Palavras infinitas, em coautoria com D. Perrin.
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.ω