Научная статья на тему 'О МОДЕЛИРОВАНИИ СЧёТЧИКОВ С БЕСКОНЕЧНЫМ ЧИСЛОМ ЗНАЧЕНИЙ В ОБЫКНОВЕННЫХ СЕТЯХ ПЕТРИ'

О МОДЕЛИРОВАНИИ СЧёТЧИКОВ С БЕСКОНЕЧНЫМ ЧИСЛОМ ЗНАЧЕНИЙ В ОБЫКНОВЕННЫХ СЕТЯХ ПЕТРИ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
300
82
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СЧЁТЧИКОВЫЕ МАШИНЫ / СЕТИ ПЕТРИ / СПЕКТР ФОН ГЛЭББИКА / ОТНОШЕНИЕ ЭКВИВАЛЕНТНОСТИ СИМУЛЯЦИИ ГОТОВНОСТИ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Дворянский Л. В.

В статье проведен анализ моделирования в обыкновенных сетях Петри счетчиков с бесконечным числом состояний. Обоснован выбор отношения эквивалентности симуляции готовности в качестве отношения реализации для моделирования счётчиков. Показано, что в сетях Петри невозможно промоделировать счётчики с бесконечным числом состояний. Представлена минимальная модель счётчика с конечным числом значений

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «О МОДЕЛИРОВАНИИ СЧёТЧИКОВ С БЕСКОНЕЧНЫМ ЧИСЛОМ ЗНАЧЕНИЙ В ОБЫКНОВЕННЫХ СЕТЯХ ПЕТРИ»

О моделировании счётчиков с бесконечным числом значений в обыкновенных сетях Петри.

J1. В. Дворянский leo@ispras.ru

Аннотация. В статье проведен анализ моделирования в обыкновенных сетях Петри счетчиков с бесконечным числом состояний. Обоснован выбор отношения эквивалентности симуляции готовности в качестве отношения реализации для моделирования счётчиков. Показано, что в сетях Петри невозможно промоделировать счётчики с бесконечным числом состояний. Представлена минимальная модель счётчика с конечным числом значений.

Ключевые слова: счётчиковые машины; сети Петри; спектр фон Глэббика; отношение эквивалентности симуляции готовности.

1. Введение

При моделировании поведения дискретных динамических систем часто явно или неявно возникает необходимость моделирования дискретного счётчика. Счётчик один из основных элементов семантики исполнения дискретных динамических систем. Счётчиковые машины Минского с двумя счётчиками являются универсальными вычислителями. В других моделях счётчики неявно присутствуют в виде стека, множества управляемых состояний, буфера сообщений, определенным образом занумерованных строк и пр.

При моделировании динамических систем счётчики используются для выражения зависимости исполнения одних событий от числа произошедших других событий. К примеру, счётчики используются для ограничения длительности исполнения системы заданным числом шагов или выполнения повторяющихся событий с заданным периодом.

При моделировании счётчика с помощью сетей Петри, простейшим способом является использование позиции в качестве счётчика, при котором значению счётчика соответствует значение функции разметки на позиции. В работе [1] используется подобный подход для моделирования машин Минского с помощью сетей Петри, называемый в статье «моделирование в слабом смысле» («simulate in a weak sense»). Под «моделированием в слабом смысле» понимается то, что возможны «ложные» («cheating») срабатывания переходов,

которые не могут присутствовать в исполнении оригинальной системы со счётчиком. Неизбежность ложных срабатываний объясняется свойством монотонности входных условий переходов в операционной семантике сетей Петри (см. [2]). Такая конструкция полезна для доказательства некоторых свойств (см. [1]) формализма сетей Петри, но не подходит для моделирования исполнения системы со счётчиком.

Целью данной работы является изучение проблемы моделирования счётчиков без ложных срабатываний с помощью сетей Петри. Вначале, осуществляется выбор подходящего критерия корректности и отношения реализации для моделирования счётчиков сетями Петри. Затем рассматривается возможность моделирования счётчика со счётным множеством значений в сетях Петри. В конце приводится простая (и минимальная) модель счётчика с конечным множеством значений.

2. Предварительные сведения

2.1. Отношение квазипорядка.

Определение 1. Бинарное отношение называется квазипорядком или предпорядком, если оно рефлексивно и транзитивно.

Определение 2. Квазипорядок называется фундированным, если всякое непустое подмножество множества-носителя имеет минимальный элемент. Определение 3. Квазипорядок < на множестве X называется правильным, если для любой бесконечной последовательностих0,х1,х2,... элементов из

X существуют индексы / < j такие, что X < X ,.

Утверждение 1. Квазипорядок < на множестве X является правильным в том, и только в том, случае, когда одновременно выполняются два следующих условия (см. [3], стр. 19.):

1.Х не содержит бесконечных строго убывающих цепей

х0 > Х1 > х2 > ...;

2. всякая содержащаяся в X антицепь конечна.

2.2. Операции над цепочками символов.

Определение 4. Операция конкатенации О последовательности цепочек а = (сс1 ,ОС2,ОС3..^ последовательного склеивания цепочек:

V/ е / : V/ е 1,\аг\: / = £|а*| + ./': (о(а), = ау ) (2.1)

*=1,2-1

: V* —> V* для это операция

где / - множество индексов набора ОС, ОС{ еУ - цепочки над алфавитом

V , V - множество последовательностей таких цепочек, ОС - / -ый

У ^

элемент / -ой цепочки набора цепочек ОС .

Определение 5. Проекция р . А х 2Л —> А цепочки ОС Е А на алфавит

В <^А это цепочка полученная исключением из ОС всех элементов, кроме тех которые принадлежат алфавиту В .

2.3. Дискретный счётчик.

Счётчик - одна из основных абстракций, используемых в теории вычислимости для описания поведения дискретных по времени абстрактных машин. Регистр это сущность, которая хранит одно натуральное число. Счётчик является регистром с ограниченным набором команд. Одна из первых и простейших вычислительных моделей, использующих счётчики, является регистровая (или счётчиковая) машина Минского (см. [4], стр.244).

Каждый счётчик обладает значением, определяющим его состояние в наблюдаемый момент времени. Множество возможных значений счётчика является начальным отрезком множества натуральных чисел, т.е. ограничено снизу нулевым значением и может быть ограничено или неограниченно сверху. В последнем случае значение счётчика может являться любым

натуральным числом из 0, оо. Наблюдение за состоянием счётчика

ограничено проверкой на ноль и на положительное значение. Т.е. модель, использующая счётчик, может только различать содержит ли счётчик О или положительное целое число.

Определим конфигурацию счётчика (или просто счётчик) С как

V = 1, N - множество возможных значений счётчика, где N е N О1 {оо} ;

I’ се V - значение счётчика.

Определение 6. Обозначим через Су множество всех конфигураций счётчиков с множеством значений V .

Определение 7. Функция V '.Су —> V определяет значения счётчика в наблюдаемый момент времени.

(2.2)

(2.3)

где

Над счётчиком определен набор операций

Операция инкремента + : Cv —> Су увеличивает значение счётчика на единицу.

VC е Cv : I/(С) * N: v(+ (с)) = v(c) +1 (2.4)

Операция декремента —: Cv —> Cv уменьшает значение счётчика на единицу:

VC Е Cv : v(C) * 0 : v(- (с)) = v(C) -1 (2.5)

Пусть В = {true, false}, тогда

Операция проверки счётчика на нулевое значение О, : С,, —> В имеет значение истина, когда счётчик имеет нулевое значение

VC е Су : (v(c) = о)=> 07(c) = true (2.6)

Операция проверки счётчика на положительное значение О, : □ у —» В имеет значение истина, когда счётчик имеет положительное значение

VC е Су : (v(c) > о) => 0, (с) = true (2.7)

Значение счётчика меняется под воздействием операций. С каждым шагом исполнения модели значение счётчика может увеличиться на единицу, уменьшиться на единицу или остаться неизменной. Значение счётчика натуральное число, т.е. при нулевом значении счётчика операция декремента заблокирована (см.[5], стр. 13). Состояние счётчика полностью определяется его значением.

2.4. Сеть Петри

В различных источниках предложены определения различающиеся способом обозначения составляющих формализма, хотя на семантическом уровне подобные формализмы эквивалентны. Подобные синтаксические и семиотические вопросы влияют лишь на удобство использования формализма. Зафиксируем одно из распространенных определений, приведенных в книге (см. [6], стр. 14), сделав его чуть более строгим.

Определение 8. Сеть Петри N определяется, как кортеж

N =< Р, Т, F, W, т0 > (2.8)

где

74

Р - непустое конечное множество позиций сети;

Т - непустое конечное множество переходов сети;

Р - отношение инцидентности;

Р ^РхТ'иТхР (2.9)

• N - множество натуральных чисел 0, оо;

• ^ - функция кратности дуг Ж : Р —> N \ {0} ;

• т0 - начальная разметка т0 : Р —> N.

При этом выполняются следующие условия:

1) Множества позиций и переходов не пересекаются:

РглТ = Ш (2.10)

2) Любой элемент сети инцидентен хотя бы одному элементу другого типа:

УхеР^Т -.Зу^Р^Т: хРу V уРх (2.11)

Определение 9. Обозначим через П класс всех обыкновенных сетей Петри.

В некоторых случаях удобней использовать функцию инцидентности Р : РхТ ^Р хР —> N, которая задается на основе отношения инцидентности Р и функции кратности дуг }¥:

ч ГЩ*,У\ если хРу

Р(Х,У)=\ _ г (2-12)

| 0, если —хРу

2.4.1. Состояние сети Петри.

Для определения состояния сети Петри N необходимо ввести определение разметки.

Определение 10. Разметка это функция т : Р —> N, которая ставит в

соответствие каждой позиции р е Р целое ЧИСЛО ЯЁ N.

Определение 11. Множество всех возможных разметок сети N обозначим, как Мд, = ]ЧГР .

Определение 12. Так как, множество Р конечно, то пронумеровав позиции произвольным образом, разметку можно представить в виде вектора

ту =<тг,...,т^> (2.13)

Такой вектор полностью определяет функцию-разметку сети Петри [7]. Определим порядок < на разметках сети Петри используя векторное представление.

Определение 13. Порядок на разметках сетей Петри задается отношением <С1 М , х М , таким, что 111 < 111' тогда и только тогда, когда значение т

для каждой позиции меньше или равен значению Ж' для этой позиции.

Утверждение 2. Пусть отношение < - правильный квазипорядок на множестве X. Тогда отношение <" на множестве векторов размерности п из Хп также является правильным квазипорядком (см. [3], стр.22).

Утверждение 3. Отношение ^ М N х м N является правильным квазипорядком.

Доказательство. Рассмотрим (Утверждение 2), если в качестве множества X рассматривать N, а в качестве квазипорядка < на J будем рассматривать естественный порядок «меньше или равно» на натуральных числах, то отношение порядка на разметках сетей Петри введенного в (Определение 13)

соответствует отношению <".

Так как классическое отношение «меньше или равно» на множестве натуральных чисел N является правильным квазипорядком, то в силу (Утверждение 2) отношение ^ М N х м N является правильным квазипорядком. □

2.4.2. Исполнение сетей Петри.

Для формального определения исполнения сети Петри опишем входную и выходную функцию переходов. Для каждого перехода t еТ входная функция

*F(t): 7 > АА задает разметку (входное условие перехода, охрана

перехода) на основе функции инцидентности:

\/т,т ёМаr:mv =<т1,...,тп >,mv = =< т[,...,тп >:т<т <=> V/ е \,п : mi < щ

(2.14)

(2.15)

F'(t) =<f,...,fn >: V/ Gl,n:f =F(t,pj)

(2.16)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Определение 14. Переход t в сети Петри N называется активным при разметке т е MN, когда

’F(t) < т (2.17)

Если переход активен он может быть выполнен. Исполнение перехода ^ переводит сеть Петри из разметки т в следующую разметку Ш':

т'= m-'F(t) + F'(t) (2.18)

Исполнение активного перехода называется шагом исполнения сети Петри.

1. Определение 15. Множеством достижимости R(N) сети Петри N называется множество всех разметок, достижимых из начальной разметки по правилу (2.18).

Пусть t переход в сети Петри, такой что *F(t) < т . Определим операцию

S : М N —> М N исполнения перехода t в сети Петри

s{m,t) = т- 'F(t) + F‘ (V) (2.19)

Исполнение /л сети Петри N определяется последовательным выполнением активных переходов из начальной разметки т0. Обозначим последовательность сработавших переходов как //( , таким образом, что jUt(i) равен переходу t е Т сработавшему на i -ом шаге. Каждый раз при

выполнении перехода, текущая разметка и множество активных переходов могут измениться. Последовательность исполнения переходов задает последовательность разметок /Llm, первой из которых является Цт (0) = т(), а

все последующие соответствуют разметкам после срабатывания

соответствующего перехода.

VI е 1»И: Мт (0 = £ (мт 0 -!)’ Я (0) (2-2°)

Утверждение 4. Свойство монотонности исполнения переходов сетей Петри (см. [6], стр. 19).

\/т1,т2,т' е м д, : т2 = е (т1, А

(2.21) (.т2 +т') = е (т1 +т',^

2.5. Системы помеченных переходов

Системы помеченных переходов получили широкое распространение в качестве унифицированного средства представления процессов дискретных систем в различных задачах верификации и тестирования основанного на моделях[8].

Определение 16. Система помеченных переходов LTS (Labelled Transition System) определяется, как множество состояний системы и отношение помеченных переходов на этом множестве (см. [9])

где 8 - множество состояний (возможно бесконечное), s¡] - начальное состояние, А - конечный алфавит пометок (имен действий), —> - тернарная операция соответствующая возможным переходам системы из одного состояние в другое в ответ на помеченные действия.

Определение 17. Обозначим через L класс всех систем помеченных переходов.

Состояния представляются явно в виде элементов множества S . В отличие от конечных автоматов, множество S может быть бесконечно. Последнее свойство позволяет представлять в виде систем помеченных переходов системы, как с конечным, так и с бесконечным числом состояний, а также как конечно, так и бесконечно ветвящиеся процессы.

3. Контекст задачи

В рамках подхода к разработке программного обеспечения основанного на моделях (Model-Driven Development[10]), областях моделирования и анализа различных потоковых моделей бизнес-, технологических и других подобных процессов, а также в области координирования Web-сервисов стали использоваться модели с бесконечным числом состояний обладающих параллелизмом и недетерминизмом. Многие языки моделирования (UML2 Activity Diagrams, BPMN, BPEL4People и др.) используют в качестве основы для определения операционной семантики выполнения хорошо изученный формализм сетей Петри. Преимущества использования традиционного формализма заключается в строгости семантики и изученности вопросов, связанных с разрешимостью и сложностью многих задач анализа таких моделей. Конечно, при построении таких моделей руководствуются удобством моделирования, поэтому в семантику вносятся расширения, которые увеличивают выразительную мощность моделей и модели выходят за рамки обыкновенных сетей Петри. Однако некоторые конструкции удается

(2.22)

SxAxS

(2.23)

выразить и на языке сетей Петри. Для таких конструкций можно применять все известные алгоритмы анализа на сетях Петри.

Данная работа посвящена анализу одной из сложностей при моделировании реальных моделей с помощью обыкновенных сетей Петри, а именно моделирования счётчика с бесконечным числом состояний.

С другой стороны развитие теории алгебры процессов привело к развитию понятия соответствия процессов. То, что один процесс ведет себя аналогично другому (моделирует его) может быть выражено различными отношениями эквивалентности и предпорядка (см. например [11], [12]). Выбор конкретного отношения зависит от рассматриваемой задачи и зависит от семантики языков процессов и ожидаемого соответствия. В данной работе предложен и обоснован выбор отношения симуляции готовности (ready simulation) в качестве такого отношения.

4. Выбор отношения реализации

Корректность моделирования динамической системы обычно обуславливается тем, что модель в некотором определенном смысле ведет себя аналогично моделируемой системе. Критерий корректности определяется в зависимости от решаемой задачи (см.[11]), и обычно задается в виде некоторого отношения между моделью и моделируемым объектом. Такое отношение называется отношением реализации (implementation relation). Отношение реализации может быть установлено между процессами, на основе отношения между множествами трасс процессов, множествами возможных переходов, множествами переходов, которые не могут выполниться (refusal set) и другими артефактами исполнения процессов. Выбор подходящего отношения зависит от особенностей задач и объектов моделирования.

4.1. Процессы счётчика и сетей Петри

Процессы рассматриваются с позиции унифицированного параллелизма (uniform concurrency) [13], т.е. все операции рассматриваются как атомарные и нам не важен внутренний характер действий.

Процессы обеих моделей допускают бесконечные исполнения, поэтому не являются конечными. В случае счётчика простейшим бесконечным исполнением является бесконечное повторное исполнение операции инкремента и операции декремента. Пример бесконечного исполнения в сетях Петри - бесконечное исполнение перехода с одним входящим и одним исходящим ребрами, инцидентными одной позиции.

Обе модели задают конечно-ветвящиеся процессы. В случае счётчиков, множество возможных действий ограничено операциями, заданными на счётчиках. В случае сетей Петри, число ветвлений ограничено конечным множеством переходов, т.к. каждое действие моделируется переходом. Из

конечности ветвления следует, что обе модели также являются конечно-отображаемыми (image finite) процессами.

Счётчик является детерминированной моделью, т.к. каждое последующее состояние однозначно определяется текущим значением счётчика и выполняемой операции, т.е.

Помеченные сети Петри относят к недетерминированным моделям, т.к. одним действием могут быть помечены несколько переходов и в результате выполнения одноименных переходов модель может переходить в различные состояния.

Мы не будем рассматривать внутренние события, которые могут осуществляться во время исполнения процесса, но не влияют на его функционирование. Поэтому наблюдаемые процессы являются непрерывными (concrete), т.е. такими, между явными действиями которых ничего не происходит. (Для систем помеченных переходов формально это означает, что все возможные цепочки т событий конечны и игнорируются).

Таким образом, счётчик определяется классом не конечных, конечно-ветвящихся, детерминированных и непрерывных процессов. Формализм сеть Петри лежит в классе не конечных, конечно-ветвящихся, недетерминированных и непрерывных процессов.

Для того, чтобы иметь возможность сравнивать поведение порождаемое счётчиком и сетевыми моделями, необходимо привести счётчик и сети Петри к единому представлению. Существует много различных способов представления систем - системы помеченных переходов (labeled transition system), процессные графы (process graph), структуры заданные на множестве событий (event structure), сетевые модели, проективные пределы на рядах конечных термов и другие. Отношение эквивалентности может быть определено на любом из этих представлений. Представление процессов в виде систем помеченных переходов является удобным и распространенным способом представления произвольных процессов, чье поведение может быть выражено с помощью отношения действий.

Определим отображение Lc : С —> L счётчиков в системы помеченных переходов, как

где Sc класс состояний, занумерованный множеством значений счётчика

Va є {+, —, 0?, 0?} :

:(a(C,) = G)&(a(C1) = C3)^C=C3

(4.1)

(4.2)

Б с=(^:геУ) (4.3)

$со ~ (4-4)

Лс = {+,-, О, д} (4.5)

Отношение действия —>с определено, как

V/, 7 е V :\/ае{+,-}: (< 5,.,а,5у >е—»(у = а(/')) (4.6)

V/, у е V: У а е {0?,0?}: (< ь),а,ь\ >е—»(/' = ] (4.7)

Определим отображение Ьы : П —> I, сетей Петри в системы помеченных переходов, как

(4-8)

V (4.9)

Ллг=Лс (4.10)

Введем функцию Я Т —> Лпометки переходов сети Петри, которая ставит в соответствие переходу пометку (действие), которое он моделируют.

1. Отношение действия —>дг определено, как

\fijE М : УаеЛд, )е->„)о.

и ' ’ (4.11)

<=>(3^еГ Л <г&Я^) = а&у = £(/,7))

Можно установить отображение Ьт >м —> Т;: между элементами

отношения —>ы и переходами сети Петри N :

V (V Я, ^ ) е : Ьш ((\ л ^ » = К «

от2=8(т^а)

Используя отношения Lc и Ln можно устанавливать отношение между множеством процессов порождаемых счётчиком С и сетью Петри N сравнивая системы помеченных переходов Zc(C) и

4.2. Отношение реализации (implementation relation).

Два процесса считаются эквивалентными, если они показывают одинаковое наблюдаемое поведение при одинаковых воздействиях, как следствие принципа равенства неразличимого. Отношения эквивалентности различаются способом наблюдения за поведением процесса. Способ наблюдения выбирается с учетом особенностей решаемой задачи.

В нашей задаче, единственной операцией позволяющей наблюдать за состоянием счётчика является проверка на ноль. Поэтому, при одинаковом воздействии на счётчик и на сетевую модель, они должны обеспечивать одинаковые значения операции 0, на всем протяжении исполнения. При этом

внешняя система может обратиться к операции проверки на ноль значения счётчика на любом шаге. Т.е. процессы счётчика и модели счётчика должны давать одинаковое значение проверки на ноль в любой наблюдаемый момент. Операция 0, моделируется, как дополнительный переход на нулевом состоянии счётчика.

Окружение счётчика может воздействовать на счётчик с помощью операций инкремента и декремента. Таким образом, множество возможных действий системы помеченных переходов должно соответствовать множеству возможных действий самого счётчика в заданный момент исполнения. Т.е. всегда, когда над счётчиком можно выполнить операции инкремента или декремента, те же операции должны быть выполнимы над его моделью. Так как окружение счётчика может обратиться к любой из указанных операций определенных над счётчиком, возникает следующее требование.

Требование 1. В каждый наблюдаемый момент процесс корректной модели должен разрешать все, и только те действия, которые разрешены на процессе счётчика.

Так как окружение определяет исполнение каждого следующего действия, то счётчик и его сетевая модель должны быть эквивалентны на каяедом шаге исполнения.

Требование 2. (Требование 1) должно исполняться на каждом шаге наблюдаемого исполнения процессов счётчика и модели.

Под вторым требованием понимается, что в результате одинакового воздействия на счётчик и на модель на каяедом шаге будет выполняться Требование 1.

Отношение реализации, заданное этими неформальными требованиями назовем <ь.

Определение 18. Отношение реализации х [, это бинарное

В работе [11] представлен спектр отношений эквивалентности и предпорядков для конечно-ветвящихся, непрерывных процессов. Частичный порядок «устанавливает строго больше отождествлений на процессах, чем» задает на отношениях эквивалентности решетку спектра (см. Рис. 1).

Счётчик порождает детерминированные процессы, а для детерминированных процессов спектр фон Глэббика сильно упрощается, что было показано в работе [14]. Но класс сетей Петри являются классом недетерминированных моделей. Отношение реализации должно учитывать возможность недетерминированного поведения модели, так как возможно, что сеть Петри, моделирующая бесконечный счётчик, будет необходимо являться недетерминированной.

Покажем, что отношение реализации является более точным, чем отношения эквивалентности завершенной симуляции (complete simulation) и завершенных трасс (complete trace).

Рассмотрим контрпример (Рис. 2), предложенный в работе [11] для установления неравенства между отношениями эквивалентности завершенной симуляции, завершенных трасс и симуляции готовности (ready simulation). Пусть действие а моделирует операцию декремента, Ь операцию инкремента, а с операцию 0,. Тогда процесс р на рисунке слева может представлять счётчик в состоянии, когда его значение равно 1, а процесс q на

рисунке справа может соответствовать сети Петри моделирующей такой счётчик.

отношение такое, что для процессов p,q е I. выполняется р <ь q , если

(4.13)

Рис. 1 Спектр линейного-ветвящегося времени.

Рис. 2 Процессы эквивалентные относительно отношений завершенных трасс и завершенной симуляции, и неэквивалентные относительно отношения симуляции готовности.

Как было показано в работе [11], эти процессы эквивалентны относительно отношений завершенной симуляции и завершенных трасс. Но процесс q

допускает исполнение <Т = (и), после которого действие с не разрешено. Тогда как процесс р всегда разрешает действие с после исполнения (7 = (о). Таким образом, нарушается условие (4.14). Из этого следует несоответствие отношения завершенной симуляции и завершенных трасс установленным требованиям к критерию корректности моделирования. Это распространяется на все менее точные отношения, которые лежат ниже эквивалентности завершенной симуляции и завершенных трасс на спектре (см. Рис. 1).

В то же время легко заметить, что определение отношения реализации включает в себя определения отношения симуляции (simulation) и отношение готовности (readiness). Отношение симуляции готовности (ready simulation) является наименьшей верхней гранью этих отношений, относительно порядка «строго больше отождествлений, чем».

Определение 19. Отношение эквивалентности симуляции готовности это бинарное отношение =RS cz L х L на системах помеченных переходов,

которое ставит в соответствие процессы р G L и q G L , если

Покажем, что для случая, когда один процесс является детерминированным, отношение реализации <ь совпадает с отношением эквивалентности =Я5 .

тогда р <Lq<^ р =К8 q.

=> : Покажем, что отношение является отношением = ;;Л, . Пусть р <ь q и р ——> р', тогда

(4.15)

\/aeAct:(p—а-^>-р') =>(3g'e L :q—a-^>-q'8ip' =RS q') (4.16)

\/aeAct:(q—^ (3p'eL :p—a-^>-p'8ip' =RS q') (4.17)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Утверждение 5. Пусть p e L детерминированный процесс,

1). !(/?) = %)

Следует из определения <L .

2).VaeAct\(p—-—^ p') (3^' e L :q—a-^q'8cp' <L q')

i^p —» ^'|=>ае1(^)=>йе l(g) => (3g": q —» q ")

=> p' <L q" по второму условию

определения <L .

3).VaeAct:(q—»g') =>(3p'eL :p—»p'&p'<L q')

{q—i>«£ l(g) ^>йе1(р)^> (З/?": p—

(p^l q)&(p^^p")&(q^^q') => p" <L q' по второму условию определения <L .

Таким образом, <L соответствует определению отношения =RS .

<=: Покажем, что отношение =RS является отношением <; . Пусть р =RS q , тогда 1). 1(/>)=%)

Следует из определения =RS .

2).VaeAct:(p—»(Vg'eL :(q—>д')—»(/?' =ш q'))

Пусть ( р ——> р' j . тогда

Vg'eL:(g—» (3/?":» р "& р" =RS q') по третьему условию определения =RS .

(р^^р')&(р^^р")^(р' = р")^ p'=rs q' в СИЛУ

детерминированности процесса р .

Таким образом, =RS соответствует определению отношения <; .0

Отношение эквивалентности симуляции готовности =RS удовлетворяет

требованиям к отношению реализации формализованным в (Определение 18), и может быть принято в качестве критерия корректности моделирования счётчика сетью Петри.

5. Моделирование счётчиков с помощью сетей Петри

Рассмотрим несколько способов моделирования счётчиков в сетях Петри. Простейшим способом моделирования счётчика является позиция сети Петри. Если поставить в соответствие значение счётчика и значения разметки на позиции, то можно рассматривать данную позицию как примитивный счётчик. Его можно инкрементировать, увеличивая значение разметки на позиции, и аналогично декрементировать. Но в силу монотонности семантики сетей Петри [2] невозможно промоделировать с помощью одной позиции событие, которое срабатывает при заданном значении счётчика, но не срабатывает при большем значении счётчика. Таким образом, в приведенной модели, мы не

можем промоделировать действие 0?, которое разрешено при нулевом

значении счётчика, но запрещено при положительном значении счётчика.

5.1. Необходимое условие моделирования счётчика сетями

Рассмотрим тривиальный счётчик С2 с множеством возможных значений

V = {0,1} и нулевым начальным состоянием.

Поведение моделирующей сети Петри N2 должно быть эквивалентно поведению моделируемого счётчика С2 относительно . Состоянию £0

Петри.

(5.1)

Процессный граф, соответствующий системе помеченных переходов , представлен на (Рис. 3).

Рис. 3 Процессный граф счётчика с двумя значениями.

должно соответствовать некоторое состояние 5 , такое что £0 5 . В

силу определения отношения 1(^0) = 1(^//0 ) • Следовательно, в сети

Ы2 при разметке //0 должны быть активны переходы соответствующие операциям {+, 0?} и пассивны переходы соответствующие операциям {-Д}.Т.е.

:(Я(/)е{+)0?})=>(^(/)<^) (5.2)

:(Д(/)е{-,0?})^(*^(/)Хм>) (5-3)

Так как 51 достижимо из £0 (50 —-—>51), то, в силу определения отношения =К8 (4.16) должно существовать состояние , такое что 51 =К8 5^ . Т.е. в N2 должна существовать разметка ¡Лх, такая что

:(Л(/)е{-0?})=>(*^(/)< а) (5-4)

ЫеТЫ2 :(Л(г)е{+,0?})=>(^(0Жм) (5-5)

Из приведенных неравенств следует, что Цх ^ и //0 X И\ 5 т-е- разметки //0 и /их несравнимы. Будем обозначать несравнимость разметок, как

//0 \ ¡их. Таким образом, пространство состояний сети Петри Ы2,

моделирующей счётчик с двумя состояниями, будет содержать две несравнимые разметки.

Рассмотрим счётчик конечного объема Сп с п возможными состояниями (Рис. 4).

Утверждение 6. Множество достижимости сети Петри , моделирующей счётчик Сп с п возможными различимыми состояниями, необходимо содержит п несравнимых разметок.

Пусть сеть Петри Ып корректно моделирует счётчик Сп с п различными СОСТОЯНИЯМИ =Д£ Сп и ее множество достижимых разметок не содержит п несравнимых разметок.

о? 07 о?

Рис. 4. Процессный граф счётчика с п значениями.

Рассмотрим исполнение счётчика сг = +” 1—п \ т.е. сначала /7 — 1 раз осуществляется операция инкремента, затем /7 — 1 раз осуществляется операция декремента. Счётчик проходит все свои возможные состояния, при этом внутреннее значение счётчика на каждом шаге равно

V/ е 0,\а\: V (С„) = р(сг,, +) - р(ст,, -) (5.6)

где сг исполнение на / шагу. Следовательно, счётчик принимает нулевые значения на 0 и последнем шаге. Это означает, что только на 0 и последнем шаге предикат 0? истинен, а в системе помеченных переходов Ьс(Сп)

действие 0? разрешено, а 0? запрещено. Для промежуточных шагов предикат

0? ложен, действие 0? запрещено и 0? разрешено.

Т.К. В силу критерия корректности моделирования Ьс (Сй) =Д£ Ьм (Л^), то на каждом шаге исполнения множество разрешенных и запрещенных действий процессов систем Ьс (Сй) и Ьм должны совпадать.

Рассмотрим первый отрезок исполнения <Уп_х. Пусть нулевому состоянию я0 системы Ьс[Сп^ соответствует нулевое состояние ^ системы т.е. нулевое состояние счётчика моделируется разметкой //0. Отрезок исполнения <Уп_х задает п состояний системы Ьс(Сп^. Состояниям

З0..£п соответствуют состояния £ системы Ьм (Ып ), которые в свою

очередь имеют прообразами разметки сети Петри /Л0.. .¡Лп . В силу допущения о том, что множество достижимых разметок Nп не содержит п несравнимых разметок, имеются две разметки ¡лх и ¡л2, такие, что либо ¡Лх< //2, либо ¡лх> ¡л2. Рассмотрим оба случая.

+/

Пусть ¡хх--------> ¡л2 и цх< ц2. На (Рис. 5, а) схематично изображено

исполнение сети Петри с такой парой. Допустим //0------------------> ¡лх. Тогда

¡лх—1—> /л'0 и ^ < /л'0. Но, в силу монотонности исполнения сетей

Петри, ¡лх < ц2 =^> |//2 —1—> ¡лъ | & (/и'0 < цъ) , т.е. * Г (70 ^ < ¡лъ. Так как

исполнение //0 —-—> /лъ, содержит I + к инкрементов и к декрементов, то в силу (5.6) значение счётчика в этом состоянии будет равняться у{Ьс (^3)) = /, и следовательно действие 0? будет разрешено, а

| —/^з • Таким образом, в состоянии ^ будут разрешены

одновременно действия 0? и 0? , однако в состоянии £0 —» я3 действие

0? будет запрещено. Т.е. 0? Е 1^(^о ))\1(^(^0)) и следовательно

*0 ^ ^ •

+/

Теперь допустим, что /лх---------------> ¡и2 и цх> ц2. На (Рис. 5, б) схематично

изображено исполнение сети Петри с такой парой. Допустим /л0--------------> /их.

Тогда ¡л2 —1—> ¡лъ и ~ • Но, в силу монотонности исполнения

сетей Петри, //, > //2 => (//, —//' | & (//' > //,) , т.е. 1 < //'.

Так как исполнение //0 —, содержит к инкрементов и к декрементов, то в силу (5.6) значение счётчика в этом состоянии будет равняться V (х-1 (,;)) = о , и следовательно действие 0? будет разрешено, а

^ < ¡Л^. Таким образом, в состоянии будут разрешены

одновременно действия 0? и 0? , однако В СОСТОЯНИИ £0 -----» $0 действие

0? будет запрещено. Имеем 0? Е )) \ 1^^^ ^ и следовательно

е 3^ е П

Утверждение 7. Не существует сети Петри Л^к , моделирующей счётчик Ск со счетным множеством возможных значений.

В силу (Утверждение 6), множество достижимости сети Петри, моделирующей счетчик, должно содержать множество несравнимых разметок, мощности большей или равной мощности возможных значений моделируемого дискретного счётчика.

Если множество возможных значений счётчика счётное, тогда множество достижимости моделирующей его сети Петри Л^к должно содержать счётное множество несравнимых разметок.

Множество несравнимых разметок является антицепью относительно порядка на разметках сети Петри. Но порядок на разметках сети Петри является правильным в силу (Утверждение 3).

По (Утверждение 1), множество-носитель правильного порядка не может содержать бесконечной антицепи. Таким образом, множество достижимости

любой сети Петри и, в частности Л^к, не может содержать счётного

множества несравнимых разметок. 0

Рис. 5 Схема исполнения модели счётчика с а) возрастающей и б)убывающей парой состояний.

5.2. Модель счётчика конечного объема.

Покажем, что существует сеть Петри с п несравнимыми разметками во множестве достижимых состояний, которая моделирует счётчик с п возможными состояниями.

Это хорошо известная конструкция, которая часто явно и неявно применяется при моделировании процессов с помощью сетей Петри.

Рис. 6 Модель счётчика конечного объема.

Рассмотрим сеть Петри ЫР изображенную на (Рис. 6). Множество позиций состоит из двух элементов Рр = {р0, рх}. Четыре перехода

Т = |^+9^_9^0 моделируют операции счётчика. Начальная разметка

о = (Оопределяет К +1 возможных значений счётчика. Множество достижимых состояний такой сети Петри состоит из К +1 разметок Я (Жр ) = |¡л¥1 : / е О, К & ¡лг — (г, К — |, причем легко заметить, что все

разметки несравнимы друг с другом, т.е. имеется К +1 несравнимых разметок. Переход будет активен только в нулевой разметке

Мро =(°,^),т-к. значение любой разметки с индексом не равным нулю, для

позиции рх равно К — /. Переход не активен при нулевой разметке, т.к.

0?

значение разметки на р0 равно 0 , и активен при любой другой разметке имеющей на р0 значение /.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

6. Заключение

В данной статье рассмотрены проблемы моделирования счётчиков с помощью сетей Петри. В рамках работы осуществлен выбор критерия корректности моделирования счётчика сетями Петри. Доказано, что для моделирования счётчика с п значениями необходимо п несравнимых разметок сети Петри. Так же показано, что невозможно выразить счётчик с бесконечным счётным числом значений традиционной сетью Петри.

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

Литература

[1] Decidability questions for bisimilarity of Petri nets and some related problems. Janear, Petr. 1994. Proc. of STACS'94. T. 775, стр. 581-592.

[2] Ломазова И.А. Вложенные сети Петри: моделирование и анализ распределенных систем с объектной структурой. Москва : Научный мир, 2004.

[3] Кузьмин Е. В., Соколов В. А.,. Структурированные системы переходов. Москва : ФИЗМАТ ЛИТ, 2006.

[4] Минский М. Вычисления и автоматы. Москва : Мир, 1971.

[5] Бурдонов И.Б., Косачев А.С., Кулямин В.В. Теория соответствия для систем с блокировками и разрушениями. Москва : ФИЗМАТЛИТ, 2008.

[6] Котов, В. Е. Сети Петри. Москва : Наука, 1984. стр. 160 стр.

[7] Питерсон Дж. Теория сетей Петри и моделирование систем. Москва : Мир, 1984.

[8] Тестирование конформности на основе соответствия состояний. Бурдонов, И. Б. и Косачев, А С. Москва : ПСП РАН, 2010 г., Труды Института системного программирования РАН, Т. 18. ISSN 2220-6426 (Online), ISSN 2079-8156 (Print).

[9] Roscoe, A. W. A mathematical theory of communicating processes. 1982.

[10] Collaborative Software Engineering Using Metamodel-Driven Approach. Semenov, V. 16th IEEE International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises (WETICE 2007), Paris : IEEE, 2007 г., стр. 178-179.

[11] The Linear Time - Branching Time Spectrum I. Glabbeek, R. J. Berlin : Springer, 1990. Lecture Notes in Computer Science. T. 458.

[12] Полное тестирование с открытым состоянием ограниченно недетерминированных систем. Бурдонов, И. Б. и Косачев, А. С. Москва : б.н., 2009 г., Труды Института системного программирования РАН, Т. 17, стр. 193-208. ISSN 2220-6426 (Online), ISSN 2079-8156 (Print).

[13] Contrasting themes in the semantics of imperative concurrency. J.W. de Bakker, J.N. Kok, J.-J.Ch. Meyer, E.-R. Olderog, J.LZucker. New York : Springer, 1986. Current Trends in Concurrency, LNCS. T. 224, стр. 51-121.

[14] Concurrency and automata on infinite sequences. Park, D.MR. [ред.] P. Deussen. London : Springer, 1981. 5th GI Conference, LNCS 104. T. 104, стр. 167-183.

i Надоели баннеры? Вы всегда можете отключить рекламу.