Я генерирую случайные DFA для проверки алгоритма сокращения DFA на них.
Алгоритм, который я сейчас использую, таков: для каждого состояния , для каждого символа в алфавите c добавьте δ ( q , c ) к некоторому случайному состоянию. Каждое состояние имеет одинаковую вероятность стать конечным состоянием.
Это хороший метод создания объективных DFA? Кроме того, этот алгоритм не генерирует обрезанный DFA (DFA без устаревших состояний), поэтому мне интересно, есть ли лучший способ генерации случайных DFA, который каким-то образом может гарантировать, что это обрезка?