Алгебра коммуникативных процессов
Алгебра коммуникативных процессов (ACP) — это алгебраический подход к рассуждениям о параллельных системах . Это член семейства математических теорий параллелизма, известных как алгебры процессов или исчисления процессов . ACP был первоначально разработан Яном Бергстрой и Яном Виллемом Клопом в 1982 году. [ 1 ] как часть усилий по исследованию решений незащищенных рекурсивных уравнений. В большей степени, чем другие основополагающие исчисления процессов ( CCS и CSP ), разработка ACP была сосредоточена на алгебре процессов и стремилась создать абстрактную, обобщенную аксиоматическую систему для процессов. [ 2 ] и фактически термин «алгебра процессов» был придуман во время исследования, которое привело к ACP. [ нужна ссылка ]
Неофициальное описание
[ редактировать ]ACP по своей сути является алгеброй в смысле универсальной алгебры . Эта алгебра представляет собой способ описания систем с точки зрения выражений алгебраических процессов, которые определяют композиции других процессов или определенных примитивных элементов.
Примитивы
[ редактировать ]ACP использует мгновенные, атомарные действия ( ) как его примитивы. Некоторые действия имеют особое значение, например действие , что представляет собой тупик или стагнацию, а действие , которое представляет собой молчаливое действие (абстрактные действия, не имеющие конкретной идентичности).
Алгебраические операторы
[ редактировать ]Действия можно комбинировать для формирования процессов с помощью различных операторов. Эти операторы можно грубо отнести к категории, обеспечивающей базовую алгебру процессов , параллелизм и связь .
- Выбор и последовательность . Самым фундаментальным из алгебраических операторов является альтернативный оператор ( ), который обеспечивает выбор между действиями, и оператор последовательности ( ), который определяет порядок действий. Так, например, процесс
- сначала решает выполнить либо или , а затем выполняет действие . Как происходит выбор между и сделано, не имеет значения и остается неопределенным. Обратите внимание, что альтернативная композиция коммутативна, а последовательная композиция — нет (поскольку время течет вперед).
- Параллелизм — чтобы обеспечить описание параллелизма, ACP предоставляет операторы слияния и левого слияния . Оператор слияния, , представляет собой параллельную композицию двух процессов, отдельные действия которых чередуются. Оператор левого слияния, , — это вспомогательный оператор с семантикой, аналогичной слиянию, но с обязательством всегда выбирать начальный шаг из левого процесса. В качестве примера процесс
- может выполнять действия в любой из последовательностей . С другой стороны, процесс
- может выполнять только последовательности поскольку операторы левого слияния гарантируют, что действие происходит первым.
- Коммуникация — взаимодействие (или связь) между процессами представляется с помощью оператора двоичной связи, . Например, действия и может быть интерпретировано как чтение и запись элемента данных , соответственно. Затем процесс
- сообщит ценность от процесса правого компонента к процессу левого компонента ( т.е. идентификатор привязан к значению и бесплатные экземпляры в процессе принять это значение), а затем вести себя как слияние и .
- Абстракция — оператор абстракции, , — это способ «скрыть» определенные действия и рассматривать их как внутренние события моделируемой системы. Абстрактные действия преобразуются в тихое пошаговое действие. . В некоторых случаях эти молчаливые шаги также можно удалить из выражения процесса как часть процесса абстракции. Например,
- что в данном случае можно свести к
- с момента события больше не наблюдаемо и не имеет наблюдаемых эффектов.
Формальное определение
[ редактировать ]ACP принципиально использует аксиоматический, алгебраический подход к формальному определению различных операторов. Представленные ниже аксиомы составляют полную аксиоматическую систему ACP. (АКП с абстракцией).
Базовая алгебра процессов
[ редактировать ]Используя альтернативные и последовательные операторы композиции, ACP определяет базовую алгебру процессов , которая удовлетворяет аксиомам [ 3 ]
Тупик
[ редактировать ]Помимо базовой алгебры, две дополнительные аксиомы определяют отношения между альтернативным оператором и оператором последовательности, а также действие тупика :
Параллелизм и взаимодействие
[ редактировать ]Аксиомы, связанные с операторами слияния, левого слияния и связи: [ 3 ]
Когда оператор связи применяется только к действиям, а не к процессам, он интерпретируется как бинарная функция от действий к действиям. . Определение этой функции определяет возможные взаимодействия между процессами — те пары действий, которые не представляют собой взаимодействия, сопоставляются с действием тупика, , а разрешенные пары взаимодействий сопоставляются с соответствующими отдельными действиями, представляющими возникновение взаимодействия. Например, функция связи может указать, что
что свидетельствует об успешном взаимодействии будет сведено к действию . ACP также включает оператор инкапсуляции, для некоторых , который используется для преобразования неудачных попыток связи (т.е. элементов которые не были сведены через функцию связи) к действию тупика. Аксиомы, связанные с функцией связи и оператором инкапсуляции: [ 3 ]
Абстракция
[ редактировать ]Аксиомы, связанные с оператором абстракции: [ 3 ]
Обратите внимание, что действие a в приведенном выше списке может принимать значение δ (но, конечно, δ не может принадлежать множеству абстракции I ).
Связанные формализмы
[ редактировать ]ACP послужил основой или источником вдохновения для нескольких других формализмов, которые можно использовать для описания и анализа параллельных систем, в том числе:
Ссылки
[ редактировать ]- ^ JCM Baeten, Краткая история алгебры процессов , Отчет CSR 04-02, факультет компьютерных наук, Технологический университет Эйндховена, 2004 г.
- ^ Бас Люттик, Что такое алгебраика в теории процессов , Исчисления алгебраических процессов: первые двадцать пять лет и позже. Архивировано 4 декабря 2005 г. в Wayback Machine , Бертиноро, Италия, 1 августа 2005 г.
- ^ Jump up to: а б с д Дж. А. Бергстра и Дж. В. Клоп, ACP τ : Универсальная система аксиом для спецификации процессов , CWI Quarterly 15, стр. 3–23, 1987 г.
- ^ П. Дж. Л. Куйперс и М. А. Ренье, Алгебра гибридных процессов , Технический отчет, факультет математики и информатики, Технический университет Эйндховена, 2003 г.