- •Введение
- •Предмет теории процессов
- •Верификация процессов
- •Спецификация процессов
- •Понятие процесса
- •Представление поведения динамических систем в виде процессов
- •Неформальное понятие процесса и примеры процессов
- •Неформальное понятие процесса
- •Пример процесса
- •Другой пример процесса
- •Действия
- •Определение понятия процесса
- •Понятие трассы
- •Достижимые и недостижимые состояния
- •Замена состояний
- •Операции на процессах
- •Префиксное действие
- •Пустой процесс
- •Альтернативная композиция
- •Параллельная композиция
- •Ограничение
- •Переименование
- •Свойства операций на процессах
- •Эквивалентность процессов
- •Понятие эквивалентности процессов и связанные с ним задачи
- •Трассовая эквивалентность процессов
- •Сильная эквивалентность
- •Критерии сильной эквивалентности
- •Логический критерий сильной эквивалентности
- •Критерий сильной эквивалентности, основанный на понятии бимоделирования
- •Алгебраические свойства сильной эквивалентности
- •Распознавание сильной эквивалентности
- •Полиномиальный алгоритм распознавания сильной эквивалентности
- •Минимизация процессов
- •Минимальные процессы относительно
- •Алгоритм минимизации процессов
- •Наблюдаемая эквивалентность
- •Определение наблюдаемой эквивалентности
- •Логический критерий наблюдаемой эквивалентности
- •Критерий наблюдаемой эквивалентности, основанный на понятии наблюдаемого БМ
- •Алгебраические свойства наблюдаемой эквивалентности
- •Другие критерии эквивалентности процессов
- •Наблюдаемая конгруэнция
- •Мотивировка понятия наблюдаемой конгруэнции
- •Определение понятия наблюдаемой конгруэнции
- •Логический критерий наблюдаемой конгруэнтности
- •Критерий наблюдаемой конгруэнтности, основанный на понятии НБМ
- •Алгебраические свойства наблюдаемой конгруэнции
- •Распознавание наблюдаемой конгруэнтности
- •Минимизация процессов относительно наблюдаемой конгруэнции
- •Рекурсивные определения процессов
- •Процессные выражения
- •Понятие рекурсивного определения процессов
- •Вложение процессов
- •Предел последовательности вложенных процессов
- •Процессы, определяемые процессными выражениями
- •Эквивалентность РО
- •Доказательство эквивалентности процессов при помощи РО
- •Проблемы, связанные с понятием РО
- •Примеры доказательства свойств процессов
- •Потоковые графы
- •Мастерская
- •Неконфликтное использование ресурса
- •Планировщик
- •Семафор
- •Процессы с передачей сообщений
- •Действия с передачей сообщений
- •Вспомогательные понятия
- •Типы, переменные, значения и константы
- •Функциональные символы
- •Выражения
- •Понятие процесса с передачей сообщений
- •Множество переменных процесса
- •Начальное условие
- •Операторы
- •Определение процесса
- •Функционирование процесса
- •Пример процесса с передачей сообщений
- •Понятие буфера
- •Представление поведения буфера в виде процесса
- •Операции на процессах с передачей сообщений
- •Префиксное действие
- •Альтернативная композиция
- •Параллельная композиция
- •Ограничение
- •Переименование
- •Эквивалентность процессов
- •Понятие конкретизации процесса
- •Понятие эквивалентности процессов
- •Процессы с составными операторами
- •Мотивировка понятия процесса с составными операторами
- •Понятие составного оператора
- •Понятие процесса с СО
- •Функционирование процесса с СО
- •Операции на процессах с СО
- •Преобразование процессов с передачей сообщений в процессы с СО
- •Конкатенация СО
- •Редукция процессов с СО
- •Пример редукции
- •Понятие конкретизации процесса с СО
- •Отношения эквивалентности на процессах с СО
- •Метод доказательства наблюдаемой эквивалентности процессов с СО
- •Пример доказательства наблюдаемой эквивалентности процессов с СО
- •Дополнительные замечания
- •Другой пример доказательства наблюдаемой эквивалентности процессов с СО
- •Рекурсивные определения процессов
- •Примеры процессов с передачей сообщений
- •Разделение множеств
- •Задача разделения множеств
- •Распределённый алгоритм решения задачи разделения множеств
- •Процессы Small и Large
- •Анализ алгоритма разделения множеств
- •Вычисление квадрата
- •Сети Петри
- •Протоколы передачи данных в компьютерных сетях
- •Понятие протокола
- •Методы исправления искажений в кадрах
- •Методы обнаружения искажений в кадрах
- •Пример протокола
- •Протокол с чередующимися битами
- •Двунаправленная передача
- •Дуплексный протокол с чередующимися битами
- •Двунаправленная конвейерная передача
- •Протокол скользящего окна с возвратом
- •Протокол скользящего окна с выборочным повтором
- •Криптографические протоколы
- •Понятие криптографического протокола
- •Шифрование сообщений
- •Формальное описание КП
- •Примеры КП
- •Представление структур данных в виде процессов
- •Понятие структуры данных
- •Семантика языка параллельного программирования
- •Описание языка параллельного программирования
- •Конструкции языка L
- •Программы на языке L
- •Семантика языка L
- •Семантика выражений
- •Семантика деклараций
- •Семантика операторов
- •Исторический обзор и современное состояние дел
- •Робин Милнер
- •Исчисление взаимодействующих систем (CCS)
- •Теория взаимодействующих последовательных процессов (CSP)
- •Алгебра взаимодействующих процессов (ACP)
- •Процессные алгебры
- •Мобильные процессы
- •Гибридные системы
- •Другие математические теории и программные средства, связанные с моделированием процессов
- •Бизнес-процессы
7.6.5Переименование
Пусть заданы процесс P и функция f : Names → Names. Действие операции переименования [f] на процесс P заклю-
чается в изменении имён в метках переходов: каждое имя α в какой-либо из этих меток заменяется на f(α).
Получившийся процесс обозначается знакосочетанием P [f]. Если f действует нетождественно лишь на имена из списка
α1, . . . , αn
и отображает их в имена
β1, . . . , βn
соответственно, то для P [f] мы будем иногда использовать эквивалентное обозначение
P [β1/α1, . . . , βn/αn]
7.7Эквивалентность процессов
7.7.1Понятие конкретизации процесса
Пусть P – произвольный процесс. Обозначим знакосочетанием Conc(P ) процесс в исходном смысле данного понятия (см. параграф 2.4), который называется конкретизацией процесса P , и имеет следующие компоненты.
1.Состояниями Conc(P ) являются
•всевозможные означивания из Eval(XP ),
•а также дополнительное состояние s0, которое является начальным в Conc(P )
2.Для
• каждого перехода s1 |
op - |
s2 процесса P , и |
|
•каждого означивания ξ Eval(XP ), такого, что
ξ(atP ) = s1
195
Conc(P ) содержит переход
ξa - ξ0
если ξ0(atP ) = s2, и имеет место один из следующих случаев:
• – op = α ? x, a = α ? v, где v – произвольное значе-
ние из Dt(x) |
|
|
– ξ0(x) = v, y XP \ {x, atP } |
ξ0(y) = ξ(y) |
|
• – op = α ! e, a = α ! ξ(e) |
|
|
– x XP \ {atP } |
ξ0(x) = ξ(x) |
|
• – op = (x := e), a = τ |
|
|
– ξ0(x) = ξ(e), y XP \ {x, atP } |
ξ0(y) = ξ(y) |
|
• – op = b ?, ξ(b) = 1, a = τ |
|
|
– x XP \ {atP } |
ξ0(x) = ξ(x) |
|
3.Для
•каждого означивания ξ Eval(XP ), такого, что
ξ(IP ) = 1
• и каждого перехода в Conc(P ) вида ξ a - ξ0
Conc(P ) содержит переход s0 a - ξ0 .
Из определений
•понятия функционирования процесса с передачей сообщений (см. пункт 7.3.5), и
•понятия функционирования процесса в исходном смысле (см. пункт 2.4)
следует, что имеется взаимно однозначное соответствие между
•множеством всех вариантов функционирования процесса P , и
196
•множеством всех вариантов функционирования его конкретизации Conc(P ).
Читателю предлагается самостоятельно исследовать перестановочность функции Conc с операциями на процессах, т.е. установить истинность или ложность соотношений вида
Conc(P1 | P2) = Conc(P1) | Conc(P2)
и т.п.
7.7.2Понятие эквивалентности процессов
На множестве процессов с передачей сообщений можно определить те же отношения эквивалентности, которые можно определить для процессов в исходном смысле данного понятия (см. главу 4).
Мы будем считать, что любые два процесса с передачей сообщений P1, P2 по определению находятся в том же самом отно-
+
шении эквивалентности ( , ≈, ≈, . . .), в котором находятся их конкретизации, т.е.
P1 P2 Conc(P1) Conc(P2), и т.д.
Читателю предлагается самостоятельно
•исследовать связь операций на процессах с различными отношениями эквивалентности, т.е. установить свойства, аналогичные свойствам, изложенным в параграфах 3.7, 4.5, 4.8.4, 4.9.5
•сформулировать и обосновать необходимые и достаточные
+
условия эквивалентности (≈, ≈, . . .) процессов, не использующие понятие конкретизации процесса.
197