У меня есть 2 минимизированных DFA, и мне нужно проверить, эквивалентны ли они.Проверьте, соответствует ли 2 минимальных DFA
Если они эквивалентны, проблема заключается в том, чтобы найти эффективное сравнение состояния независимо от разных меток. В моем случае DFA - это таблица, тогда мне нужно найти перестановку, которая соответствует строкам первого DFA с строками второго DFA.
Я думал, что у меня есть поиск в Dread вначале Breadth и создание минимальной строки доступа к состоянию, а затем сравнение первого списка со вторым списком (это должно быть независимо от конкретного ввода, например: 001 и 110 могут быть взаимозаменяемыми).
Мне интересен прямой и неэффективный алгоритм и более сложный алгоритм.
Да, BFS должен работать хорошо, даже DFS будет делать (вам просто нужно убедиться, что вы запускаете оба графика DFA в том же порядке). – Bergi