Формальные языки, грамматики и автоматы / Part32
.htmpart32 Пред.Страница След.Страница Раздел Содержание
3.2 Разделенные грамматики
Определение. Контекстно-свободная грамматика, не содержащая аннулирующих правил,
называется разделенной или простой , если выполняются следующие два условия: 1. Правая часть каждого правила начинается терминалом.
2. Если два правила имеют одинаковые левые части, то правые части этих правил
должны начинаться различными терминальными символами. Например, следующая грамматика, заданная схемой:
Г3. 0: R = {<I> ® ab<B>, <I> ® b<B>b<I>,
<B> ®a,
<B> ®b<B>}, является разделенной грамматикой, т.к. выполняются условия (1) и (2).
С другой стороны, грамматика
Г3. 1: R = { (1) <I> ® a<B> (2) <I> ® <B> b<I>
(3) <B> ® b<B>
(4) <B> ® ba } , не является разделенной грамматикой, т.к. в правиле (2) нарушается условие (1), а в правилах (3) и (4) - условие (2).
Важным свойством разделенных грамматик является то, что для каждой из них можно построить детерминированный нисходящий распознаватель.
Пред.Страница След.Страница Раздел Содержание