Постановка и вычислительная модель
В математической постановке «Проверка эквивалентности двух детерминированных автоматов — с поиском контрпримера» Для сравнения двух детерминированных автоматов строится произведение множеств состояний. В каждой паре проверяется, совпадает ли ответ о принятии текущего входного слова. Дополнительная проверка направлена на конкретное утверждение: выбранную дугу, состояние или слово. Числовой результат сопровождается свидетельством либо признаком невозможности окончательного вывода. В постановке «Проверка эквивалентности двух детерминированных автоматов — с поиском контрпримера» размер системы задаётся полем «Число состояний в каждом автомате», которое в исходном примере равно 3.
В качестве исходного задания взята модель gpt06_v85_10_29, а не произвольное выражение. Обход в ширину гарантирует, что найденное слово различает автоматы и имеет минимальную длину среди всех таких слов. Слова нулевой длины также учитываются. Особое внимание уделяется связанным результатам: они должны одновременно соответствовать одним и тем же введённым данным. Например, изменение «Код контрольного слова» требует пересчитать результат именно по выбранным ограничениям.
Представление исходных данных
Исходные поля этого вычислителя: Число состояний в каждом автомате, Размер алфавита, Переходы первого автомата, код, Переходы второго автомата, код, Начало первого автомата, Начало второго автомата, Допускающие первого, маска, Допускающие второго, маска, Длина контрольного слова, Код контрольного слова. Для примера «Проверка эквивалентности двух детерминированных автоматов — с поиском контрпримера» используются конкретные значения: n = 3; alphabet = 2; left_trans = 226; right_trans = 235; left_start = 0; right_start = 0; left_accept = 4; right_accept = 4; word_length = 3; word_code = 5. Данные задаются как целые числа, поэтому целостность кодов проверяется до выполнения перебора. Здесь «Код контрольного слова» имеет исходное значение 5; оно входит в правила построения задачи.
Вводятся две отдельные таблицы переходов, два множества допускающих состояний и два начальных состояния. Поэтому сравниваются действительно разные модели, а не автомат с самим собой. В данном варианте задания следует учитывать дополнительное условие: Дополнительная проверка направлена на конкретное утверждение: выбранную дугу, состояние или слово. Числовой результат сопровождается свидетельством либо признаком невозможности окончательного вывода. Ввод числа, которое кодирует вершины за пределами выбранного множества, считается ошибкой, а не дополняется несуществующими состояниями. Для расчёта «Проверка эквивалентности двух детерминированных автоматов — с поиском контрпримера» недопустимые кодировки отклоняются прежде, чем начинается перебор.
Алгоритм проверки результата
Если все достижимые пары просмотрены без противоречия, языки совпадают на выбранном алфавите. При ограничении длины отсутствие найденного слова само по себе не доказывает эквивалентности. Промежуточные характеристики помогают проверить вычисление без обращения к внешнему серверу: достаточно проследить несколько состояний или связей на небольшом примере. В контрольном наборе для задачи «Проверка эквивалентности двух детерминированных автоматов — с поиском контрпримера» формируются как основная характеристика, так и вспомогательные показатели проверки.
Для воспроизводимости зафиксирован результат: Автоматы эквивалентны (1 — да): 0; Обнаружен контрпример (1 — да): 1; Проверка завершена (1 — да): 1; Контрпример: 00; Длина кратчайшего контрпримера: 2; Исследовано пар состояний: 4; Первый автомат принимает слово: 1; Второй автомат принимает слово: 1. В задаче «Проверка эквивалентности двух детерминированных автоматов — с поиском контрпримера» можно изменить исходную маску, выбранную вершину либо особое условие; проверяемое утверждение при этом пересчитывается, а не берётся из записанного образца. При изменении параметра «Число состояний в каждом автомате» область перебора меняется вместе с размером модели.
Границы применимости и выводы
Для постановки «Проверка эквивалентности двух детерминированных автоматов — с поиском контрпримера» рассматриваются только конечные множества в пределах заданного числа вершин или состояний. Обход в ширину гарантирует, что найденное слово различает автоматы и имеет минимальную длину среди всех таких слов. Слова нулевой длины также учитываются. Если требуется больший автомат, необходимо использовать специализированные средства, рассчитанные на крупные графы. Для калькулятора «Проверка эквивалентности двух детерминированных автоматов — с поиском контрпримера» ограничения размера заданы явно во входной форме.
При толковании ответа важно учитывать, как действует вариант «с поиском контрпримера»: Дополнительная проверка направлена на конкретное утверждение: выбранную дугу, состояние или слово. Числовой результат сопровождается свидетельством либо признаком невозможности окончательного вывода. Возможные противоречия и неверные номера состояний должны приводить к отказу, а не к бессмысленной маске. В случае «Проверка эквивалентности двух детерминированных автоматов — с поиском контрпримера» смысл ответа зависит от всех указанных пользователем условий, включая «Код контрольного слова».
Формула расчёта
L(A) = L(B) ⇔ нет различающего слова
Проверенные примеры
n = 3; alphabet = 2; left_trans = 226; right_trans = 235; left_start = 0; right_start = 0; left_accept = 4; right_accept = 4; word_length = 3; word_code = 5
Автоматы эквивалентны (1 — да): 0; Обнаружен контрпример (1 — да): 1; Проверка завершена (1 — да): 1; Контрпример: 00; Длина кратчайшего контрпримера: 2; Исследовано пар состояний: 4; Первый автомат принимает слово: 1; Второй автомат принимает слово: 1
n = 3; alphabet = 2; left_trans = 226; right_trans = 235; left_start = 0; right_start = 0; left_accept = 4; right_accept = 4; word_length = 3; word_code = 5
Автоматы эквивалентны (1 — да): 0; Обнаружен контрпример (1 — да): 1; Проверка завершена (1 — да): 1; Контрпример: 00; Длина кратчайшего контрпримера: 2; Исследовано пар состояний: 4; Первый автомат принимает слово: 1; Второй автомат принимает слово: 1
n = 3; alphabet = 2; left_trans = 226; right_trans = 235; left_start = 1; right_start = 0; left_accept = 4; right_accept = 4; word_length = 3; word_code = 5
Автоматы эквивалентны (1 — да): 0; Обнаружен контрпример (1 — да): 1; Проверка завершена (1 — да): 1; Контрпример: 1; Длина кратчайшего контрпримера: 1; Исследовано пар состояний: 5; Первый автомат принимает слово: 0; Второй автомат принимает слово: 1
Как пользоваться онлайн-калькулятором
- Задайте число вершин или состояний и целочисленные коды отношений либо переходов.
- Выберите ограничения и начальные/конечные состояния по указанной задаче.
- Сравните значения вычисленных характеристик, разбиения, доступности и свидетельства.