Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекц_ИТ_1.doc
Скачиваний:
124
Добавлен:
29.03.2015
Размер:
1.34 Mб
Скачать

3.4. Использование сети Петри при переходе от грамматики к автомату

Сеть Петри может отражать асинхронность, параллелизм,

недетерминированность вычислительных процессов, а также динамику их функционирования. Для модели вычислительного процесса, представленной сетью Петри, характерны простой синтаксис, наглядность в сочетании с широкими функциональными возможностями [4].

Определение. Сеть Петри - формальная система S = { P, T, E, 0 },

определяемая совокупностью объектов: - конечным множеством позиций

P; - конечным множеством переходов T; - конечным множеством дуг Е,

E  ( P  T )  ( T  P ); - начальной маркировкой 0, отображающей множество P на множество N, 0 : P  N, N = {0, 1, ...}.

Графическим изображением сети Петри является двудольный ориентированный граф с двумя типами вершин P и T. Поставим в соответствие нетерминальным символам грамматики позиции сети Петри, а терминальным - переходы. Если в правой части некоторого правила имеет место конкатенация терминалов, то в сети Петри между переходами, помеченными терминалами, должны появляться дополнительные позиции.

Пример. Фрагмент сети Петри, соответствующий правилу

S  x7 x0 x1 A

с помощью элементов сети Петри представится следующим образом:

S x7 S1 x0 S2 x1 A

Маркером (  ) отмечается позиция, соответствующая аксиоме

грамматики.

Пример. Построить сеть Петри для грамматики, правила которой имеют вид:

S := Х7 Х0 Х1 <A> | Х7 Х3 Х7 < B> | Х0 < C>

A := Х7 <D> | Х7

B := Х7 <E> | Х7

C := Х7 <E> | Х7

D := Х4 < S> | Х5

E := Х4 <S> | Х5

Решение. Построим сеть в соответствии с известными правилами

построения сети. Граф примет вид:

x4

x0 x1 x7 x5

S1

x7 S2 A x7 D

Sx7

x3 x7 x7 x5 Z

S3 S4 B E

x4

x7

x0 x7

C

x7

Как показано на рисунке, в сеть введена заключительная позиция Z, в которую направлены дуги из всех переходов, ранее не имевших исходящих дуг. Анализ сети показывает, что в ней имеются идентичные фрагменты. Например, позиции A, B, C содержат равное количество выходных переходов и они одинаковы (выходные переходы - x7), то же самое можно сказать относительно позиций D и E (выходные переходы - x4 и x5). Правила функционирования сети Петри не изменятся, если склеить идентичные фрагменты. Также попарно можно склеить позиции S1 и S3, но уже по входным переходам. Этап склеивания соответствует минимизации числа состояний автомата. Склеенный граф примет вид:

x4

S1, S3 x0 x1

x7 S2 A, B, C

S4 x7

S x3 x7

D, E

x0 x7

x5

Z