Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Детерминированные и недетерминированные автоматы




Детерминированные конечные автоматы

Автоматы A и A ' называются эквивалентными, если L (A) = L (A ').

Т е о р е м а 4.2. Для любого недетерминированного конечного автомата можно построить эквивалентный детерминированный конечный автомат.

Доказательство. Сначала заметим, что грамматика соответствует детерминированному автомату тогда и только тогда, когда в каждом ее правиле вида A ® a 1 A 1 |... | anAn или A ® a 1 A 1 |... | anAn | e выполняется условие: ai ¹ aj при i ¹ j. Поэтому достаточно преобразовать А-грамматику G = (N, T, P, S) к указанному виду. В процессе преобразования на грамматику будем смотреть, как на соответствующую систему уравнений.

Для каждого непустого подмножества { A 1,..., An } множества N введем новый нетерминальный символ [ A 1,..., An ] и определим его так, чтобы соответствующее уравнение имело вид [ A 1,..., An ] = A 1 È... È An. Для этого достаточно, как в доказательстве теоремы 3.10, задать правило [ A 1,..., An ] ® r 1 |... | rn, где ri - правая часть правила для Ai.

Теперь построим требуемую грамматику G ' = (N ', T, P ', S), где N ' получается из N добавлением определенных выше новых нетерминальных символов, а P ' получено следующим образом из P и правил для новых нетерминальных символов: в каждом правиле все члены вида aA 1,..., aAn с одним и тем же a Î T заменяются одним членом a [ A 1,..., An ]. Таким правилам соответствует детерминированный автомат, эквивалентный исходному, т.к. a [ A 1,..., An ] = aA 1 È... È aAn.


Так как не все нетерминальные [ A 1,..., An ] достижимы из S, то при построении P ' достаточно включать только необходимые правила, начиная с правила для S.

Пример 4.3. Недетерминированный автомат, изображенный на следующем рисунке слева,


имеет соответствующую грамматику с правилами

q 0 ® aq 1 | bq 2, q 1 ® aq 1 | aq 3 | bq 1 | bq 2,
q 2 ® aq 1 | aq 2 | bq 2 | bq 3, q 3 ® aq 3 | bq 3 | e.

Преобразуем его в детерминированный автомат по методу теоремы 4.2. В новую грамматику войдет старое правило для q 0, т.к. оно удовлетворяет условию детерминированности. Правило для q 1 преобразуется к виду q 1 ® a (q 1 | q 3) | b (q 1 | q 2), или q 1 ® aq 13 | bq 12.

Аналогично получается правило для q 2: q 2 ® aq 12 | bq 23.

Для q 13 = q 1 | q 3 правило имеет вид q 13 ® aq 1 | aq 3 | bq 1 | bq 2 | bq 3 | e, или, окончательно, q 13 ® aq 13 | bq 123 | e, где q 123 = q 1 | q 2 | q 3. Аналогично, для q 12 = q 1 | q 2, q 23 = q 2 | q 3 и q 123 правила (после преобразования) имеют вид q 12 ® aq 123 | bq 123, q 23 ® aq 123 | bq 23 | e, q 123 ® aq 123 | bq 123 | e.

Диаграмма построенного детерминированного автомата изображена на том же рисунке справа.


Отметим, что, как видно из доказательства и примера, построенный детерминированный автомат при анализе цепочки как бы одновременно ведёт все пути её анализа исходным автоматом.

 




Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 1897; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.