35
правок
Изменения
→Проверка эквивалентности автоматов
<font face="Times" size="3">
*Если положить, что начальные состояния эквивалентны, то последовательно, переходя по одному символу из состояний, можем получить и другие пары эквивалентных состояний. Если же в одну из таких пар попадут допускающее состояния вместе с не допускающим, то такие <tex>q_i</tex> и <tex>q_j</tex> <em>неэквивалентны</em>.[[Файл:CheckEquival.png]]*Таким образом получим разбиение множества <tex>AlgoCheckEquivalence(Q_1, \cup Q_2, q_{10}, q_{20})\\\big \{\\List\,\langle StatesPair\rangle\; myList=new\; List\,\langle StatesPair \rangle(); \\myList.Add(StatesPair(q_{10}, q_{20}));\\\big\}</tex>на множества эквивалентных состояний. После этого проверим, что никакое из этих множеств не содержит допускающее и не допускающее состояние одновременно, тогда автоматы эквивалентны.
</font>
== Литература ==
* Н.Н. Вояковская, А.Е. Москаль, Д.Ю. Булычев, А.А. Терехов - "Разработка компиляторов"