- •Введение
- •Предмет теории процессов
- •Верификация процессов
- •Спецификация процессов
- •Понятие процесса
- •Представление поведения динамических систем в виде процессов
- •Неформальное понятие процесса и примеры процессов
- •Неформальное понятие процесса
- •Пример процесса
- •Другой пример процесса
- •Действия
- •Определение понятия процесса
- •Понятие трассы
- •Достижимые и недостижимые состояния
- •Замена состояний
- •Операции на процессах
- •Префиксное действие
- •Пустой процесс
- •Альтернативная композиция
- •Параллельная композиция
- •Ограничение
- •Переименование
- •Свойства операций на процессах
- •Эквивалентность процессов
- •Понятие эквивалентности процессов и связанные с ним задачи
- •Трассовая эквивалентность процессов
- •Сильная эквивалентность
- •Критерии сильной эквивалентности
- •Логический критерий сильной эквивалентности
- •Критерий сильной эквивалентности, основанный на понятии бимоделирования
- •Алгебраические свойства сильной эквивалентности
- •Распознавание сильной эквивалентности
- •Полиномиальный алгоритм распознавания сильной эквивалентности
- •Минимизация процессов
- •Минимальные процессы относительно
- •Алгоритм минимизации процессов
- •Наблюдаемая эквивалентность
- •Определение наблюдаемой эквивалентности
- •Логический критерий наблюдаемой эквивалентности
- •Критерий наблюдаемой эквивалентности, основанный на понятии наблюдаемого БМ
- •Алгебраические свойства наблюдаемой эквивалентности
- •Другие критерии эквивалентности процессов
- •Наблюдаемая конгруэнция
- •Мотивировка понятия наблюдаемой конгруэнции
- •Определение понятия наблюдаемой конгруэнции
- •Логический критерий наблюдаемой конгруэнтности
- •Критерий наблюдаемой конгруэнтности, основанный на понятии НБМ
- •Алгебраические свойства наблюдаемой конгруэнции
- •Распознавание наблюдаемой конгруэнтности
- •Минимизация процессов относительно наблюдаемой конгруэнции
- •Рекурсивные определения процессов
- •Процессные выражения
- •Понятие рекурсивного определения процессов
- •Вложение процессов
- •Предел последовательности вложенных процессов
- •Процессы, определяемые процессными выражениями
- •Эквивалентность РО
- •Доказательство эквивалентности процессов при помощи РО
- •Проблемы, связанные с понятием РО
- •Примеры доказательства свойств процессов
- •Потоковые графы
- •Мастерская
- •Неконфликтное использование ресурса
- •Планировщик
- •Семафор
- •Процессы с передачей сообщений
- •Действия с передачей сообщений
- •Вспомогательные понятия
- •Типы, переменные, значения и константы
- •Функциональные символы
- •Выражения
- •Понятие процесса с передачей сообщений
- •Множество переменных процесса
- •Начальное условие
- •Операторы
- •Определение процесса
- •Функционирование процесса
- •Пример процесса с передачей сообщений
- •Понятие буфера
- •Представление поведения буфера в виде процесса
- •Операции на процессах с передачей сообщений
- •Префиксное действие
- •Альтернативная композиция
- •Параллельная композиция
- •Ограничение
- •Переименование
- •Эквивалентность процессов
- •Понятие конкретизации процесса
- •Понятие эквивалентности процессов
- •Процессы с составными операторами
- •Мотивировка понятия процесса с составными операторами
- •Понятие составного оператора
- •Понятие процесса с СО
- •Функционирование процесса с СО
- •Операции на процессах с СО
- •Преобразование процессов с передачей сообщений в процессы с СО
- •Конкатенация СО
- •Редукция процессов с СО
- •Пример редукции
- •Понятие конкретизации процесса с СО
- •Отношения эквивалентности на процессах с СО
- •Метод доказательства наблюдаемой эквивалентности процессов с СО
- •Пример доказательства наблюдаемой эквивалентности процессов с СО
- •Дополнительные замечания
- •Другой пример доказательства наблюдаемой эквивалентности процессов с СО
- •Рекурсивные определения процессов
- •Примеры процессов с передачей сообщений
- •Разделение множеств
- •Задача разделения множеств
- •Распределённый алгоритм решения задачи разделения множеств
- •Процессы Small и Large
- •Анализ алгоритма разделения множеств
- •Вычисление квадрата
- •Сети Петри
- •Протоколы передачи данных в компьютерных сетях
- •Понятие протокола
- •Методы исправления искажений в кадрах
- •Методы обнаружения искажений в кадрах
- •Пример протокола
- •Протокол с чередующимися битами
- •Двунаправленная передача
- •Дуплексный протокол с чередующимися битами
- •Двунаправленная конвейерная передача
- •Протокол скользящего окна с возвратом
- •Протокол скользящего окна с выборочным повтором
- •Криптографические протоколы
- •Понятие криптографического протокола
- •Шифрование сообщений
- •Формальное описание КП
- •Примеры КП
- •Представление структур данных в виде процессов
- •Понятие структуры данных
- •Семантика языка параллельного программирования
- •Описание языка параллельного программирования
- •Конструкции языка L
- •Программы на языке L
- •Семантика языка L
- •Семантика выражений
- •Семантика деклараций
- •Семантика операторов
- •Исторический обзор и современное состояние дел
- •Робин Милнер
- •Исчисление взаимодействующих систем (CCS)
- •Теория взаимодействующих последовательных процессов (CSP)
- •Алгебра взаимодействующих процессов (ACP)
- •Процессные алгебры
- •Мобильные процессы
- •Гибридные системы
- •Другие математические теории и программные средства, связанные с моделированием процессов
- •Бизнес-процессы
4.4Критерии сильной эквивалентности
4.4.1Логический критерий сильной эквивалентности
Обозначим символом F m множество формул, определяемое следующим образом.
•Символы > и являются формулами.
•Если ϕ – формула, то ¬ϕ тоже формула.
•Если ϕ и ψ – формулы, то ϕ ψ тоже формула.
•Если ϕ – формула и a Act, то haiϕ тоже формула.
Пусть заданы процесс P и формула ϕ Fm. Значение формулы ϕ на процессе P представляет собой элемент P (ϕ) множества {0, 1}, определяемый следующим образом.
• P (>) = 1, P ( ) = 0
• P (¬ϕ) = 1 − P (ϕ)
• P (ϕ ψ) = P (ϕ) · P (ψ)
P ( a ϕ) = |
|
1, |
P |
a - P 0 , P 0(ϕ) = 1 |
|
• h i |
|
0, |
|
|
|
|
|
|
|||
|
|
в противном случае |
|||
|
|
|
|||
|
|
|
|
|
|
Теория процесса P – это совокупность Th(P ) формул, определяемая следующим образом:
Th(P ) = {ϕ Fm | P (ϕ) = 1}
Теорема 1.
Пусть процессы P1 и P2 конечны. Тогда
P1 P2 Th(P1) = Th(P2)
Доказательство.
Импликация “ ” доказывается индукцией по структуре формулы ϕ.
71
Докажем импликацию “ ”. Пусть имеет место равенство
T h(P1) = T h(P2) |
(4.14) |
Обозначим символом µ бинарное отношение на множестве всех процессов, которое состоит из всех пар процессов с одинаковыми теориями, т.е.
def
µ = {(P1, P2) | T h(P1) = T h(P2)}
Докажем, что µ удовлетворяет определению сильной эквивалентности. Пусть это не так, т.е., например, для некоторого a Act
(a) существует процесс P10, такой, что
P1 a - P10
(b) но не существует процесса P20, такого, что
P2 |
a - |
P 0 |
(4.15) |
|
|||
|
2 |
|
и T h(P10) = T h(P20).
Условие (b) может иметь место в двух ситуациях:
1.не существует процесса P20, для которого верно (4.15)
2.существует процесс P20, для которого верно (4.15), но для каждого такого процесса
T h(P10) 6= T h(P20)
Докажем, что в обоих ситуациях существует формула ϕ, удовлетворяющая условию
P1(ϕ) = 1, P2(ϕ) = 0
что будет противоречить предположению (4.14).
1.Если имеет место первая ситуация, то в качестве ϕ можно взять формулу hai>.
72
2.Если имеет место вторая ситуация, то пусть список всех таких процессов P20, для которых верно (4.15), имеет вид
P20,1, . . . , P20,n
По предположению, для каждого i = 1, . . . , n имеет место
неравенство
T h(P10) 6= T h(P20,i)
т.е. для каждого i = 1, . . . , n существует формула ϕi, такая, что
P 0 |
(ϕi) = 1, |
P 0 |
(ϕi) = 0 |
1 |
|
2,i |
|
В этой ситуации в качестве искомой формулы ϕ можно взять формулу hai(ϕ1 . . . ϕn).
Например, пусть P1 и P2 – процессы, изображённые на рисунке (4.13). Как было сказано выше, эти процессы не являются сильно эквивалентными. В качестве обоснования утверждения P1 6 P2 можно, например, предъявить формулу
def
ϕ = hai(hbi> hci>)
Нетрудно доказать, что P1(ϕ) = 1 и P2(ϕ) = 0.
Представляет интерес задача нахождения по двум заданным процессам P1 и P2 списка формул
ϕ1, . . . , ϕn
как можно меньшего размера, таких, что P1 P2 тогда и только тогда, когда
i = 1, . . . , n |
P1(ϕi) = P2(ϕi) |
4.4.2Критерий сильной эквивалентности, основанный на понятии бимоделирования
Теорема 2.
Пусть заданы два процесса
Pi = (Si, s0i , Ri) (i = 1, 2)
73