- •Введение
- •Предмет теории процессов
- •Верификация процессов
- •Спецификация процессов
- •Понятие процесса
- •Представление поведения динамических систем в виде процессов
- •Неформальное понятие процесса и примеры процессов
- •Неформальное понятие процесса
- •Пример процесса
- •Другой пример процесса
- •Действия
- •Определение понятия процесса
- •Понятие трассы
- •Достижимые и недостижимые состояния
- •Замена состояний
- •Операции на процессах
- •Префиксное действие
- •Пустой процесс
- •Альтернативная композиция
- •Параллельная композиция
- •Ограничение
- •Переименование
- •Свойства операций на процессах
- •Эквивалентность процессов
- •Понятие эквивалентности процессов и связанные с ним задачи
- •Трассовая эквивалентность процессов
- •Сильная эквивалентность
- •Критерии сильной эквивалентности
- •Логический критерий сильной эквивалентности
- •Критерий сильной эквивалентности, основанный на понятии бимоделирования
- •Алгебраические свойства сильной эквивалентности
- •Распознавание сильной эквивалентности
- •Полиномиальный алгоритм распознавания сильной эквивалентности
- •Минимизация процессов
- •Минимальные процессы относительно
- •Алгоритм минимизации процессов
- •Наблюдаемая эквивалентность
- •Определение наблюдаемой эквивалентности
- •Логический критерий наблюдаемой эквивалентности
- •Критерий наблюдаемой эквивалентности, основанный на понятии наблюдаемого БМ
- •Алгебраические свойства наблюдаемой эквивалентности
- •Другие критерии эквивалентности процессов
- •Наблюдаемая конгруэнция
- •Мотивировка понятия наблюдаемой конгруэнции
- •Определение понятия наблюдаемой конгруэнции
- •Логический критерий наблюдаемой конгруэнтности
- •Критерий наблюдаемой конгруэнтности, основанный на понятии НБМ
- •Алгебраические свойства наблюдаемой конгруэнции
- •Распознавание наблюдаемой конгруэнтности
- •Минимизация процессов относительно наблюдаемой конгруэнции
- •Рекурсивные определения процессов
- •Процессные выражения
- •Понятие рекурсивного определения процессов
- •Вложение процессов
- •Предел последовательности вложенных процессов
- •Процессы, определяемые процессными выражениями
- •Эквивалентность РО
- •Доказательство эквивалентности процессов при помощи РО
- •Проблемы, связанные с понятием РО
- •Примеры доказательства свойств процессов
- •Потоковые графы
- •Мастерская
- •Неконфликтное использование ресурса
- •Планировщик
- •Семафор
- •Процессы с передачей сообщений
- •Действия с передачей сообщений
- •Вспомогательные понятия
- •Типы, переменные, значения и константы
- •Функциональные символы
- •Выражения
- •Понятие процесса с передачей сообщений
- •Множество переменных процесса
- •Начальное условие
- •Операторы
- •Определение процесса
- •Функционирование процесса
- •Пример процесса с передачей сообщений
- •Понятие буфера
- •Представление поведения буфера в виде процесса
- •Операции на процессах с передачей сообщений
- •Префиксное действие
- •Альтернативная композиция
- •Параллельная композиция
- •Ограничение
- •Переименование
- •Эквивалентность процессов
- •Понятие конкретизации процесса
- •Понятие эквивалентности процессов
- •Процессы с составными операторами
- •Мотивировка понятия процесса с составными операторами
- •Понятие составного оператора
- •Понятие процесса с СО
- •Функционирование процесса с СО
- •Операции на процессах с СО
- •Преобразование процессов с передачей сообщений в процессы с СО
- •Конкатенация СО
- •Редукция процессов с СО
- •Пример редукции
- •Понятие конкретизации процесса с СО
- •Отношения эквивалентности на процессах с СО
- •Метод доказательства наблюдаемой эквивалентности процессов с СО
- •Пример доказательства наблюдаемой эквивалентности процессов с СО
- •Дополнительные замечания
- •Другой пример доказательства наблюдаемой эквивалентности процессов с СО
- •Рекурсивные определения процессов
- •Примеры процессов с передачей сообщений
- •Разделение множеств
- •Задача разделения множеств
- •Распределённый алгоритм решения задачи разделения множеств
- •Процессы Small и Large
- •Анализ алгоритма разделения множеств
- •Вычисление квадрата
- •Сети Петри
- •Протоколы передачи данных в компьютерных сетях
- •Понятие протокола
- •Методы исправления искажений в кадрах
- •Методы обнаружения искажений в кадрах
- •Пример протокола
- •Протокол с чередующимися битами
- •Двунаправленная передача
- •Дуплексный протокол с чередующимися битами
- •Двунаправленная конвейерная передача
- •Протокол скользящего окна с возвратом
- •Протокол скользящего окна с выборочным повтором
- •Криптографические протоколы
- •Понятие криптографического протокола
- •Шифрование сообщений
- •Формальное описание КП
- •Примеры КП
- •Представление структур данных в виде процессов
- •Понятие структуры данных
- •Семантика языка параллельного программирования
- •Описание языка параллельного программирования
- •Конструкции языка L
- •Программы на языке L
- •Семантика языка L
- •Семантика выражений
- •Семантика деклараций
- •Семантика операторов
- •Исторический обзор и современное состояние дел
- •Робин Милнер
- •Исчисление взаимодействующих систем (CCS)
- •Теория взаимодействующих последовательных процессов (CSP)
- •Алгебра взаимодействующих процессов (ACP)
- •Процессные алгебры
- •Мобильные процессы
- •Гибридные системы
- •Другие математические теории и программные средства, связанные с моделированием процессов
- •Бизнес-процессы
2.Для каждой пары (s1, s2) µ и каждого перехода из R2 вида
s2 τ - s02
существует состояние s01 S1, такое, что
s1 τ - s01
и (4.59).
3.Для каждой пары (s1, s2) µ и каждого перехода из R1 вида
s |
1 |
a - |
s0 |
(a = τ) |
|
||||
|
1 |
6 |
существует состояние s02 S2, такое, что
s2 aτ - s02
и (4.59).
4.Для каждой пары (s1, s2) µ и каждого перехода из R2 вида
s |
2 |
a - |
s0 |
(a = τ) |
|
||||
|
2 |
6 |
существует состояние s01 S1, такое, что
s1 aτ - s01
и (4.59).
Отношение µ, удовлетворяющее данным условиям, называется
наблюдаемым БМ (НБМ) между P1 и P2.
4.8.4Алгебраические свойства наблюдаемой эквивалентности
Теорема 15.
Отношение наблюдаемой эквивалентности сохраняет все операции на процессах, за исключением операции +, т.е. если P1 ≈ P2, то
• для каждого a Act a.P1 ≈ a.P2
104
• для каждого процесса P |
P1|P ≈ P2|P |
• для каждого L Names |
P1 \ L ≈ P2 \ L |
• для каждого переименования f P1[f] ≈ P2[f]
Доказательство.
Как было установлено в параграфе 4.8.3, соотношение P1 ≈ P2 эквивалентно тому, что существует НБМ µ между P1 и P2. Используя это µ, мы построим НБМ для обоснования каждого из вышеприведённых соотношений.
•Пусть символы s0(1) и s0(2) обозначают начальные состояния a.P1 и a.P2 соответственно.
Тогда отношение
µ {(s0(1), s0(2))}
является НБМ между a.P1 и a.P2.
•Пусть символ S обозначает множество состояний процесса P . Тогда отношение
{((s1, s), (s2, s)) | (s1, s2) µ, q S}
является НБМ между P1|P и P2|P .
• Отношение µ является НБМ
–между P1 \ L и P2 \ L, и
–между P1[f] и P2[f].
4.8.5Распознавание наблюдаемой эквивалентности и минимизация процессов относительно ≈
Для решения задач
1.распознавания для двух заданных конечных процессов, являются ли они наблюдаемо эквивалентными, и
105
2.построения по заданному конечному процессу P такого процесса P 0, который имеет наименьшее число состояний среди всех процессов, наблюдаемо эквивалентных P
могут быть построены теория и основанные на ней алгоритмы, которые аналогичны теории и алгоритмам, изложенным в параграфах 4.6 и 4.7. Мы не будем детально излагать эту теорию, т.к. она почти дословно повторяет соответствующую теорию для случая . В этой теории для произвольной пары процессов
Pi = (Si, s0i , Ri) (i = 1, 2)
тоже определяется функция на отношениях из S1 × S2, которая сопоставляет каждому отношению µ некоторое отношение µ0τ , такое, что
µ удовлетворяет условиям 1, 2, 3, 4 |
µ µτ0 |
из определения НБМ |
|
В частности, |
|
(
(s0, s0) µ
µ – НБМ между P1 и P2 1 20
µ µτ
Обозначим символом µτ (P1, P2) объединение всех отношений из совокупности
{µ S1 × S2 | µ µτ0 } |
(4.60) |
Данное отношение является наибольшим элементом совокупности (4.60), и обладает свойством
P1 ≈ P2 (s01, s02) µτ (P1, P2)
Из определения отношения µτ (P1, P2) вытекает, что оно состоит из всех пар (s1, s2) S1 × S2, таких, что
P1(s1) ≈ P2(s2)
Отношение µτ (P1, P2) можно рассматривать как ещё одну меру близости между P1 и P2.
При построении полиномиального алгоритма вычисления отношения µτ (P1, P2), аналогичного алгоритму из параграфа 4.6.2,
106
следует учитывать следующее соображение. Всякий раз, когда для заданной пары s, s0 состояний некоторого процесса P требуется проверить условие
sτ - s0
достаточно анализировать последовательности переходов вида
s τ - s1 τ - s2 τ - . . .
длина которых не превосходит числа состояний процесса P .
4.8.6Другие критерии эквивалентности процессов
Доказать сильную или наблюдаемую эквивалентность процессов P1 и P2 можно также с помощью излагаемых ниже критериев. В некоторых случаях использование этих критериев гораздо проще всех других способов доказательства соответствующей эквивалентности P1 и P2.
Бинарное отношение µ на множестве процессов называется
•БМ (mod ), если µ ( µ )0
•НБМ (mod ), если µ ( µ )0τ
•НБМ (mod ≈), если µ (≈ µ ≈)0τ
Нетрудно доказать, что
•если µ – БМ (mod ), то µ , и
•если µ – НБМ (mod или mod ≈), то µ ≈.
Таким образом, для доказательства P1 P2 или P1 ≈ P2 достаточно найти подходящее
•БМ (mod ), или
•НБМ (mod или mod ≈) соответственно, такое, что
(P1, P2) µ
107