Граф автоматной грамматики

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

G= (V= {a, b, e}, N= {A, B, S}, S, R).

R:

S® aS

S® bA

A® aB

Построим цепочку a= aaabab. S® aS ® aaS® aaaS® ®aaabA® aaabaB® aaababA® ®aaabab
A® e

B® bA

B® a

Рассмотрим граф данной автоматной грамматики. Вершинами этого графа являются нетерминалы.

Если дуга идет из вершины А в вершину В, и помечена символом «а», то в грамматике есть правило А® аВ.

Вводится дополнительная вершина, называющаяся конечной (К). Если в эту вершину идет дуга из вершины А, помеченная символом «а», то значит в грамматике существует правило А®а.

 
 


Для записи грамматики и алгоритмов часто используется R-графы (или R-схемы), ГОСТ 19.005.85. Это тот же граф, вытянутый в сторону, использующий спец. обозначения.

 
 


Для записи алгоритмов по R-схеме используется следующее обозначение: над дугой пишется условие прохождения по дуге, под дугой – действие, которое выполняется, если это условие истинно.

Последовательная операция:

 
 


Параллельная операция:

 
 


Петля:

 
 


Вложенная структура Е, если она описана:

 
 


Действия, выполненные без условия:

 
 


Условие прохода по дуге, описывает правильность конструкции (иначе – ошибка).

 
 


Вопросы и упражнения

Построить R-граф лексического блока языка Милан.


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



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