Similar presentations:
Контекстно-свободные языки и грамматики. Лекция 4
1.
Лекция 4Контекстно-свободные
языки и грамматики
Разработал: к.п.н., доцент
Наточая Е. Н.
2.
План лекции2
1 Вывод цепочек
2 Дерево разбора
3 Однозначность КС-грамматик
3.
1 Вывод цепочекПример 1. Дано: G=({a, b, +}, {S, T},
{S T|T+S; T a|b}, S)
Построить: вывод цепочки a+b+a
Левосторонний вывод:
S T+S a+S a+T+S a+b+S
a+b+T a+b+a
Правосторонний вывод:
S T+S T+T+S T+T+T
T+T+a T+b+a a+b+a
4.
2 Дерево разбора(1) {VT VN }, S, {VT }
(2) A VN , a1, a2, …, an , ai {VT VN }
A a1a2…an Р, n 1
(3) A VN , , A Р
5.
Пример 2Дано: G=({a, b, +}, {S, T}, {S T|T+S; T a|b}, S)
Построить: дерево разбора цепочки a+b+a
Нисходящее
S
дерево вывода:
T
a
S
+
T
b
+
S
T
a
6.
Пример 3Восходящее дерево разбора: S T|T+S; T a|b
S
S
T
S
T
T
a
+
b
+
a
7.
3 Однозначность КС-грамматик(1) A AA |
(2) A A A |
(3) A A | A |
(4) A A | A A |
где A VN; , , V*.
8.
Пример 4Неоднозначная грамматика:
G=({if, then, else, a, b}, {S}, P, S)
P={S if b then S else S | if b then S | a}
if b then if b then a else a
S if b then S | if b then S else S | a
S if b then S else S | a