Диаграмма грамматики

Пусть дана А-грамматика G=< VT,VN, S, R>. Диаграмма А-грамматики – граф с помеченными вершинами и дугами. Множество вершин графа соответствует множеству нетерминалов А-грамматики, приведенной к каноническому виду, а множество дуг – множеству правил грамматики.

Преобразование грамматики:

Вводим дополнительный нетерминальный символ К. VN =VNÈ{К}

Заменяем правила вида А®а на правила А®аК.

Вводим дополнительное правило К®l

Таким образом, все правила грамматики теперь приобрели "стандартный" вид A®aB или A®l.

Построение диаграммы опишем следующими правилами.

1. Каждому нетерминальному символу поставим в соот­ветствие вершину и пометим ее этим символом.

2. Каждому правилу A®aB сопоставим дугу из верши­ны A в вершину В и пометим ее терминальным символом а.

3. Отметим в графе как начальную вершину - вершину, со­ответствующую начальному символу, и как заключительные - все такие вершины В, что B®l (на диаграмме используется символ #).

Пример. Пусть грамматика G8 описывается правилами:

  S ®aBïbC B ®bïbB C® aS

Грамматика в канонической форме будет иметь вид:

S ®aBïbC B ®bKïbB C® aS K® l

Диаграмма грамматики приводится на рис.1.

Рис.1

Очевидно, что существует взаимно-однозначное соответсвие между грамматикой в каноническом виде и диаграммой.

Например, рассмотрим диаграмму грамматики, представленную на рис.2.

Рис.2

Очевидно, что диаграмме соответствует грамматика G9 с правилами

S ®aSïaB B ®bKïbB K® l

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: