Количество DFA, принимающих один и тот же язык, исчисляется бесконечно - PullRequest
1 голос
/ 09 февраля 2012

Я понимаю, что DFA исчисляется, поскольку DFA для конкретного языка является подмножеством всех DFA. Просто интересно, как доказать, что количество DFA, принимающих определенный язык, бесконечно?

1 Ответ

2 голосов
/ 09 февраля 2012

Возьмите любой DFA для вашего языка. Он должен содержать какой-то другой цикл / цикл. Добавьте новый набор состояний, соответствующий циклу, и разрешите этому набору состояний представлять нечетные проходы через цикл / цикл (исходные состояния представляют четные проходы). При необходимости добавьте недетерминированность и используйте конструкцию powerset, чтобы превратить NFA обратно в DFA.

В любом случае, вы получите DFA для того же языка, который имеет больше состояний.

...