Этот вопрос породил много литературы в 80-х годах, отчасти из-за плохого подхода к проблеме. Это довольно длинная история, которую я постараюсь обобщить в этом ответе.
1. Случай конечных слов
В литературе можно найти два определения минимального DFA. Первый - определить минимальный DFA обычного языка как полный DFA с минимальным количеством государств, принимающих язык. Второй более длинный для определения, но математически более привлекательный, чем первый, и он дает более сильные свойства.
Напомним , что DFA является доступным , если для всех ц ∈ Q , есть слово у ∈ * такое , что я ⋅ у = д . Это полное , если ц ⋅ определен для всех ц ∈ Q и в ∈ A .( Q , A , ⋅ , i , F)Q∈ Qu ∈ A*я ⋅ U = дQ⋅ аQ∈ Qa ∈ A
Пусть и A 2 = ( Q 2 , A , ⋅ , i 2 , F 2 ) два полных, доступных DFA. Морфизм из A 1 в A 2 является функцией φ : Q 1 → Q 2 такой, чтоA1= ( Q1, , ⋅ , я1, F1)A2= ( Q2, , ⋅ , я2, F2)A1A2φ : Q1→ Q2
- ,φ ( я1) = я2
- ,φ- 1( F2) = F1
- для всех и ∈ , φ ( д ) ⋅ = φ ( д ⋅ ) .Q∈ Q1a ∈ Aφ ( q) ⋅ a = φ ( q⋅ а )
Можно показать, что из этих условий следует, что обязательно сюръективен (и поэтому | Q 2 | ⩽ | Q 1 | ). Кроме того, существует не более одного морфизма от A 1 до A 2, и если этот морфизм существует, то A 1 и A 2 распознают один и тот же язык. Теперь можно показать, что для каждого языка L существует уникальный полный доступный DFA A L, принимающий L, и такой, что для каждого полного доступного DFA A, принимающего Lφ|Q2|⩽|Q1|A1A2A1A2LALLAL, Существует морфизм из на
A L . Этот автомат называется минимальным DFA из L . Еще раз отметим, что, поскольку число состояний в A L меньше количества состояний в A , A L также минимально в первом смысле.AALLALAAL
Стоит отметить, что существует также подходящее алгебраическое определение для неполных DFA. См. [Eilenberg, Automata, Languages and Machines , vol. A, Academic Press, 1974] для более подробной информации.
2. Вернуться к бесконечным словам
Расширение первого определения не работает, как показано Шаллем в его ответе. И, к сожалению, можно также показать, что универсальное свойство второго определения не распространяется на бесконечные слова, за исключением нескольких частных случаев.
Это конец истории? Подождите секунду, есть еще один минимальный объект, который принимает обычные языки ...
3. Синтаксический подход
Давайте сначала вернемся снова к конечным словам. Напомню , что язык из A * является
распознается моноидными М , если существует сюръективен моноид морфизм
F : * → М и подмножество Р из М такого , что F - 1 ( Р ) = л . Опять же , существует моноидное M ( L ) , называется синтаксической Моноидом из L , которая распознает L и является фактором всех моноидов распознающих LLA∗ Mf:A∗→MPMf−1(P)=LM(L)LLL, Этот синтаксический моноид может быть определен непосредственно как частное от по синтаксической конгруэнции ∼ L в L , определенной следующим образом:
u ∼ L v тогда и только тогда, когда для всех x , y ∈ A ∗ , x u y ∈ LA∗ ∼LL
Хорошая новость заключается в том, что на этот раз этот подход был распространен на бесконечные слова, но потребовалось много времени, чтобы найти соответствующие понятия. Во-первых, А. Арнольд нашел подходящее понятие синтаксической конгруэнции (Синтаксическая конгруэнция для рациональныхω-языков, Теорет. Вычисл. Sci.39, 2-3 (1985), 333–335). Расширение синтаксических моноидов до набора бесконечных слов потребовало более сложного типа алгебр, называемых в настоящее времяалгебрами Вилкев честь Т. Вилке, который первым их определил (Т. Вилке, Алгебраическая теория для регулярных языков конечных и бесконечных слова,Int. J. Alg. Comput.3
u∼Lv if and only if, for all x,y∈A∗, xuy∈L⟺xvy∈L
ω (1993), 447–489). Более подробную информацию можно найти в моей книге «
Бесконечные слова» в соавторстве с Д. Перрином.
4. Вывод
Таким образом, существует математически обоснованное понятие минимального объекта, принимающего данный регулярный язык, но оно не опирается на автоматы. На самом деле это довольно общий факт: автоматы являются очень мощным алгоритмическим инструментом, но их не всегда достаточно для рассмотрения математических вопросов о языках.ω