- •Введение
- •Предмет теории процессов
- •Верификация процессов
- •Спецификация процессов
- •Понятие процесса
- •Представление поведения динамических систем в виде процессов
- •Неформальное понятие процесса и примеры процессов
- •Неформальное понятие процесса
- •Пример процесса
- •Другой пример процесса
- •Действия
- •Определение понятия процесса
- •Понятие трассы
- •Достижимые и недостижимые состояния
- •Замена состояний
- •Операции на процессах
- •Префиксное действие
- •Пустой процесс
- •Альтернативная композиция
- •Параллельная композиция
- •Ограничение
- •Переименование
- •Свойства операций на процессах
- •Эквивалентность процессов
- •Понятие эквивалентности процессов и связанные с ним задачи
- •Трассовая эквивалентность процессов
- •Сильная эквивалентность
- •Критерии сильной эквивалентности
- •Логический критерий сильной эквивалентности
- •Критерий сильной эквивалентности, основанный на понятии бимоделирования
- •Алгебраические свойства сильной эквивалентности
- •Распознавание сильной эквивалентности
- •Полиномиальный алгоритм распознавания сильной эквивалентности
- •Минимизация процессов
- •Минимальные процессы относительно
- •Алгоритм минимизации процессов
- •Наблюдаемая эквивалентность
- •Определение наблюдаемой эквивалентности
- •Логический критерий наблюдаемой эквивалентности
- •Критерий наблюдаемой эквивалентности, основанный на понятии наблюдаемого БМ
- •Алгебраические свойства наблюдаемой эквивалентности
- •Другие критерии эквивалентности процессов
- •Наблюдаемая конгруэнция
- •Мотивировка понятия наблюдаемой конгруэнции
- •Определение понятия наблюдаемой конгруэнции
- •Логический критерий наблюдаемой конгруэнтности
- •Критерий наблюдаемой конгруэнтности, основанный на понятии НБМ
- •Алгебраические свойства наблюдаемой конгруэнции
- •Распознавание наблюдаемой конгруэнтности
- •Минимизация процессов относительно наблюдаемой конгруэнции
- •Рекурсивные определения процессов
- •Процессные выражения
- •Понятие рекурсивного определения процессов
- •Вложение процессов
- •Предел последовательности вложенных процессов
- •Процессы, определяемые процессными выражениями
- •Эквивалентность РО
- •Доказательство эквивалентности процессов при помощи РО
- •Проблемы, связанные с понятием РО
- •Примеры доказательства свойств процессов
- •Потоковые графы
- •Мастерская
- •Неконфликтное использование ресурса
- •Планировщик
- •Семафор
- •Процессы с передачей сообщений
- •Действия с передачей сообщений
- •Вспомогательные понятия
- •Типы, переменные, значения и константы
- •Функциональные символы
- •Выражения
- •Понятие процесса с передачей сообщений
- •Множество переменных процесса
- •Начальное условие
- •Операторы
- •Определение процесса
- •Функционирование процесса
- •Пример процесса с передачей сообщений
- •Понятие буфера
- •Представление поведения буфера в виде процесса
- •Операции на процессах с передачей сообщений
- •Префиксное действие
- •Альтернативная композиция
- •Параллельная композиция
- •Ограничение
- •Переименование
- •Эквивалентность процессов
- •Понятие конкретизации процесса
- •Понятие эквивалентности процессов
- •Процессы с составными операторами
- •Мотивировка понятия процесса с составными операторами
- •Понятие составного оператора
- •Понятие процесса с СО
- •Функционирование процесса с СО
- •Операции на процессах с СО
- •Преобразование процессов с передачей сообщений в процессы с СО
- •Конкатенация СО
- •Редукция процессов с СО
- •Пример редукции
- •Понятие конкретизации процесса с СО
- •Отношения эквивалентности на процессах с СО
- •Метод доказательства наблюдаемой эквивалентности процессов с СО
- •Пример доказательства наблюдаемой эквивалентности процессов с СО
- •Дополнительные замечания
- •Другой пример доказательства наблюдаемой эквивалентности процессов с СО
- •Рекурсивные определения процессов
- •Примеры процессов с передачей сообщений
- •Разделение множеств
- •Задача разделения множеств
- •Распределённый алгоритм решения задачи разделения множеств
- •Процессы Small и Large
- •Анализ алгоритма разделения множеств
- •Вычисление квадрата
- •Сети Петри
- •Протоколы передачи данных в компьютерных сетях
- •Понятие протокола
- •Методы исправления искажений в кадрах
- •Методы обнаружения искажений в кадрах
- •Пример протокола
- •Протокол с чередующимися битами
- •Двунаправленная передача
- •Дуплексный протокол с чередующимися битами
- •Двунаправленная конвейерная передача
- •Протокол скользящего окна с возвратом
- •Протокол скользящего окна с выборочным повтором
- •Криптографические протоколы
- •Понятие криптографического протокола
- •Шифрование сообщений
- •Формальное описание КП
- •Примеры КП
- •Представление структур данных в виде процессов
- •Понятие структуры данных
- •Семантика языка параллельного программирования
- •Описание языка параллельного программирования
- •Конструкции языка L
- •Программы на языке L
- •Семантика языка L
- •Семантика выражений
- •Семантика деклараций
- •Семантика операторов
- •Исторический обзор и современное состояние дел
- •Робин Милнер
- •Исчисление взаимодействующих систем (CCS)
- •Теория взаимодействующих последовательных процессов (CSP)
- •Алгебра взаимодействующих процессов (ACP)
- •Процессные алгебры
- •Мобильные процессы
- •Гибридные системы
- •Другие математические теории и программные средства, связанные с моделированием процессов
- •Бизнес-процессы
–выполняет действие ai, и после этого
–переходит в состоние si+1, которое является концом выбранного перехода
•если в R нет переходов с началом в si, то процесс заканчивает свою работу.
Знакосочетание Act(P ) обозначает множество всех действий из Act \ {τ}, которые могут быть выполнены процессом P , т.е.
def |
{a Act \ {τ} | ( s1 |
a - |
|
s2 ) R} |
Act(P ) = |
|
|
Процесс (2.2) называется конечным, если его компоненты S и R являются конечными множествами.
Конечный процесс можно изображать геометрически, в виде диаграммы на плоскости, в которой
•каждому состоянию соответствует некоторый кружочек на плоскости, в котором может быть написан идентификатор, представляющий собой имя этого состояния,
•каждому переходу соответствует стрелка, соединяющая начало этого перехода и его конец, причём на стрелке написана метка этого перехода,
•начальное состояние выделяется некоторым образом (например, вместо обычного кружочка рисуется двойной кружочек).
Примеры таких диаграмм содержатся в параграфах 2.2.2 и 2.2.3.
2.5Понятие трассы
Пусть P = (S, s0, R) – некоторый процесс.
Трассой процесса P называется конечная или бесконечная последовательность
a1, a2, . . .
элементов множества Act, такая что существует последовательность состояний процесса P
s0, s1, s2, . . .
23
обладающая следующими свойствами:
•s0 совпадает с начальным состоянием s0 процесса P
•для каждого i ≥ 1 множество R содержит переход
si ai - si+1
Множество всех трасс процесса P мы будем обозначать через
T r(P ).
2.6Достижимые и недостижимые состояния
Пусть P – процесс вида (2.2).
Состояние s процесса P называется достижимым, если s = s0 или существует последовательность переходов в P , имеющая вид
s |
0 |
a1 |
- |
s |
, |
s |
1 |
a2 - |
s |
, . . . s |
n−1 |
an - |
|
s |
n |
|
|
|
|
|
|||||||||||
|
|
|
1 |
|
|
|
2 |
|
|
|
|
в которой n ≥ 1, s0 = s0 и sn = s.
Состояние называется недостижимым, если оно не является достижимым.
Нетрудно видеть, что после после того, как
•из S будут удалены недостижимые состояния, и
•из R будут удалены переходы, в которых присутствуют недостижимые состояния,
получившийся процесс P 0 (который иногда называют достижимой частью процесса P ) будет представлять точно такое же поведение, которое представлял исходный процесс. По этой причине мы будем рассматривать такие процессы P и P 0 как одинаковые.
24
2.7Замена состояний
Пусть
•P – процесс вида (2.2),
•s – некоторое состояние из S
•s0 – произвольный элемент, не принадлежащий множеству
S.
Обозначим символом P 0 процесс, который получается из P заменой s на s0 в множествах S и R, т.е., в частности, каждый переход в P вида
sa - s1 или s1 a - s
заменяется на переход
s0 a - s1 или s1 a - s0
соответственно.
Как и в предыдущем параграфе, нетрудно видеть, что P 0 будет представлять точно такое же поведение, которое представлял P , и по этой причине мы можем рассматривать такие процессы P и P 0 как одинаковые.
Также отметим, что заменять можно не одно состояние, а произвольное подмножество состояний процесса P . Такую замену можно представить как задание взаимно однозначного отоб-
ражения |
(2.4) |
f : S → S0 |
и результатом такой замены по определению является процесс
P 0 вида |
(2.5) |
P 0 = (S0, (s0)0, R0) |
где
•(s0)0 def= f(s0), и
•для каждой пары s1, s2 S и каждого a Act
( s1 |
a - |
s2 ) R ( f(s1) |
a - |
f(s2) ) R0. |
|
|
25
Поскольку такие процессы P и P 0 представляют одинаковое поведение, мы можем рассматривать их как одинаковые.
Отметим, что в литературе по теории процессов такие процессы P и P 0 иногда называют не одинаковыми, а изоморфными. Отображение (2.4) с указанными выше свойствами называют изоморфизмом между P и P 0. Процесс P 0 называют
изоморфной копией процесса P .
26
