Учитывая алфавит , сколько существует различных регулярных языков, которые могут быть приняты недетерминированным конечным автоматом с n состояниями?
В качестве примера рассмотрим . Затем у нас есть 2 18 различных конфигураций перехода и 2 3 различных конфигурации начального и конечного состояний, поэтому у нас есть верхняя граница 2 24 различных языков.
Тем не менее, многие из них будут эквивалентны, и, поскольку тестирование для этого является PSPACE-Complete, возможно, невозможно проверить каждый параметр.
Существуют ли другие средства или комбинаторные аргументы, которые ограничивают количество различных языков, принятых данным ресурсом?
Ответы:
Это краткое изложение статьи « О количестве отдельных языков, принятых конечными автоматами с n государствами» . В документе даны относительно простые, но далеко не жесткие, нижние и верхние границы количества различных языков, принятых NFA. Их обсуждение количества различных DFA очень проницательно, поэтому я также включу эту часть.
Статья начинается с довольно строгой асимптотики для числа различных языков, принятых DFA с состояниями над унарным алфавитом. Это делается путем наблюдения , при каких условиях данного п -state унарного DFA минимален. В таких случаях описание автомата может быть сопоставлено (биективно) с примитивным словом , а перечисление таких слов хорошо известно и выполняется с помощью функции Мёбиуса . Используя этот результат, границы для неунарных алфавитов, как в DFA, так и в случае NFA, доказаны.n n
Давайте углубимся в детали. Для буквенного алфавита определите f k ( n )К
ЗаметимчтогК(п)=Е п я = 1 фК(я). Начнем сf1(k)иg1(k).
Перечень унарных ДФА
Унарный DFA с состояниями q 0 , … , q n - 1 минимален тогда и только тогда, когдаM= ( Q , { a } , δ, д0, F) Q0, … , Дn−1
Цикл минимален тогда и только тогда, когда слово a j ⋯ a n - 1 определено как a i = { 1QJ, … , Дn - 1 aJ⋯ аn - 1
являетсяпримитивной, что означаетчто не может быть записана в видехK
для некоторого словахи некоторого целого числак≥2.
Числоψk(n)примитивных слов длинойnнадбуквамиk-буквы известно, см., Например, Lothaire,Combinatorics on Words. Мы имеем
ψk(n)=∑d | nμ(d)kn/
Перечень ДФА
Следующим шагом является оценка снизу для . Теорема 7 утверждает, что f k ( n ) ≥ f 1 ( n ) n ( k - 1 ) n ∼ n 2еК( н )
Для множестваΔ⊂ΣавтоматаMопределим M Δ как ограничениеMнаΔ.
Доказательство работает путем рассмотрения множества M DFA над алфавитом k- буквы { 0 , 1 , … , k - 1 }, определенным как
Наблюдение тогда состоит в том, что содержит f 1 ( n ) n ( k - 1 ) n разных и минимальных языков.Sн , к е1( n ) n( k - 1 ) n
Перечень НФА
Для каждый имеет тривиальную нижнюю оценку 2 n , поскольку любое подмножество ϵ , a , … , a n - 1 может быть принято некоторым NFA с n состояниями. Нижняя граница немного улучшена, но доказательство довольно длинное. В статье Описательная сложность в унарном случае Померанса и др. Показано, что G 1 ( n ) ≤ ( c 1 nграмм1( н ) 2N ϵ , а , ... , аn - 1 N грамм1( n ) ≤ ( c1NжурналN)N
k ≥ 2
. Предложение 10 показывает, что дляk≥2имеем n2(k-1)n2≤Gk(n)≤(2n-1)2kn2+1. Доказательство довольно короткое, поэтому я включаю его дословно (более или менее). Для верхней границы обратите внимание, что любой NFA можно указать, указав для каждой пары(q,a)
источник