Сеть Петри может отражать асинхронность, параллелизм,
недетерминированность вычислительных процессов, а также динамику их функционирования. Для модели вычислительного процесса, представленной сетью Петри, характерны простой синтаксис, наглядность в сочетании с широкими функциональными возможностями [4].
Определение. Сеть Петри - формальная система S = { P, T, E, m0 },
определяемая совокупностью объектов: - конечным множеством позиций
P; - конечным множеством переходов T; - конечным множеством дуг Е,
E Í (P ´ T) È (T ´ P); - начальной маркировкой m0, отображающей множество P на множество N, m0 : 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
S x7
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