Пи-исчисление

Пи-исчисление

\pi-исчисление в теоретической информатике  — исчисление процессов, изначально разработанное Робином Милнером, Иоахимом Парровом и Дэвидом Уолкером как продолжение работы над исчислением общающихся систем. Целью \pi-исчисления является возможность описать параллельные вычисления, конфигурация которых может меняться на протяжении вычисления.

Содержание

Неформальное определение

\pi-исчисление принадлежит к семейству исчислений процессов. Фактически \pi-исчисление, как λ-исчисление настолько минимально, что не содержит примитивов, таких как номера, булевы выражения, структуры данных, переменные, функции или операторы управления потоком (например, if-then-else, while).

Конструкции процесса

Центральным для \pi-исчисления является понятие имени. Простота исчисления заключается в двойной роли имён, которые выступают и как каналы связи и как переменные. В исчислении доступны следующие конструкции процесса (точные определения даны в следующих секциях):

  • конкуренция, обозначается P \mid Q, где P и Q — два процесса или потока выполняемых конкурентно.
  • связь, где
    • префикс ввода c\left(x\right).P — процесс, ожидающий сообщение, отправленное по каналу связи c, перед тем как продолжаться как P, привязывающий полученное имя к имени x. Как правило, это моделирует процесс ожидания связи из сети, или метку c, которую можно использовать с помощью операции goto c.
    • префикс вывода \overline{c} \langle y \rangle.P описывает, что имя y передается через канал c, перед тем как продолжаться как P. Как правило, это моделирует отправку сообщения через сеть, или операцию goto c.
  • репликация, обозначается !\,P, которая может быть рассмотрена как процесс, который может всегда создавать новую копию P. Как правило, эти модели или сетевой сервис, или метка c ожидающая любое число goto c операций.
  • создание нового имени , обозначается \left(\nu x\right)P, которое может быть рассмотрено как процесс, размещающий новую константу x внутри P. Константы \pi-исчисления определяются только через своё имя и всегда являются каналами связи.
  • ноль процесс, обозначается 0, процесс выполнение которого завершено и остановлено.

Однако минимализм \pi-исчисления не позволяет писать программы в обычном смысле слова, но исчисление может легко расширяться. В частности, просто определить структуры управления (такие как рекурсия, циклы и секвенциальная композиция) и типы данных (такие как функции первого порядка, значения истинности, списки и целые числа). Кроме того, были предложены расширения \pi-исчисления, которые принимают во внимание распределение и криптографию с публичным ключом. Применяется \pi-исчисление благодаря Абади и Фурнье внёсших эти различные дополнения на формальной основе, посредством расширения \pi-исчисления с произвольными типами данных.

Небольшой пример

Ниже расположен пример процесса, который состоит из трёх параллельных компонент. Канал x известен только из двух первых компонент.


\begin{align}

     &  \begin{align}
                (\nu x) \; & ( \; \overline{x} \langle z \rangle . \; 0 \\  
                           & | \; x(y). \; \overline{y}\langle x \rangle . \; x(y). \; 0 \; ) 
        \end{align} \\
| \; & z(v) . \; \overline{v}\langle v \rangle . 0 

\end{align}

Первые две компоненты способны связываться через канал x, при этом y связывается с z. Следующий шаг процесса следующий:


\begin{align}

  & \begin{align} 
      ( \nu x) \; ( \; & 0 \\
                  | \; & \overline{z} \langle x \rangle . \; x(y). \; 0 \; ) 
    \end{align}

  \\
  
| \; & z(v). \; \overline{v}\langle v \rangle . \; 0 

\end{align}

В этом примере y не затрагивается, потому что это определено во внутреннем объёме[уточнить]. Теперь вторая и третья параллельные компоненты могут связаться через канал z, при этом v связывается x. Следующий шаг процесса


\begin{align}

 (\nu x)        ( \; & 0 \\
                | \; & x(y). \; 0  \\
                | \; & \overline{x}\langle x \rangle . \; 0 \; )  
 
\end{align}

Формальное определение



Wikimedia Foundation. 2010.

Игры ⚽ Поможем сделать НИР

Полезное


Смотреть что такое "Пи-исчисление" в других словарях:

  • ИСЧИСЛЕНИЕ — (формальная система) система символов, основными компонентами которой являются: 1) алфавит (совокупность элементарных символов букв. цифр, скобок и т.п.), 2) правила построения формул из символов алфавита, 3) аксиомы (исходные доказуемые формулы) …   Философская энциклопедия

  • Исчисление взаимодействующих систем — (англ. Calculus of Communicating Systems, CCS, исчисление общающихся систем) в информатике  исчисление процессов, разработанное Робином Милнером в 1980 году. Исчисление работает с моделью неразделяемых коммуникаций между ровно двумя… …   Википедия

  • Исчисление общающихся систем — Исчисление взаимодействующих систем (англ. Calculus of Communicating Systems, CCS)  это исчисление процессов, введённое Робином Милнером около 1980, и название его книги, описывающей это исчисление. Исчисление работает с моделью… …   Википедия

  • ИСЧИСЛЕНИЕ КЛАССОВ —         аксиоматич. (см. Аксиоматический метод) описание логики классов. И. к. рав нообъёмно исчислению одноместных предикатов (см. Логика предикатов): у этих исчислений совпадают классы как исходных формул, так и выводимых формул (теорем);… …   Философская энциклопедия

  • ИСЧИСЛЕНИЕ ВЫСКАЗЫВАНИЙ —         исчисление предложений, формализованная система, в крой задаётся способ доказательства некоторых высказываний (формул), наз. теоремами. И. в. может быть формализовано различными способами: с помощью задания аксиом и правил вывода, т. е.… …   Философская энциклопедия

  • ИСЧИСЛЕНИЕ ЛОГИЧЕСКОЕ — исчисление, символы и правила которого могут быть интерпретированы в терминах логики. Любое исчисление представляет собой знаковую систему, которая, как чисто синтаксическая структура, однозначно определяется двумя порождающими процедурами: 1)… …   Современный философский словарь

  • ИСЧИСЛЕНИЕ — ИСЧИСЛЕНИЕ, область математики, включающая в себя методы ДИФФЕРЕНЦИРОВАНИЯ и ИНТЕГРИРОВАНИЯ. Дифференциальное исчисление имеет дело с дифференцированием, т.е. процессом нахождения мгновенной скорости изменения функции в любой момент времени.… …   Научно-технический энциклопедический словарь

  • ИСЧИСЛЕНИЕ — ИСЧИСЛЕНИЕ, исчисления, ср. (книжн.). 1. Действие по гл. исчислить исчислять. Исчисление убытков. 2. Название отделов высшей математики (мат.). Диференциальное исчисление. Интегральное исчисление. Исчисление конечных плоскостей. Толковый словарь… …   Толковый словарь Ушакова

  • ИСЧИСЛЕНИЕ ПРЕДИКАТОВ —         раздел математич. логики, совокупность логико математич. исчислений, формализующих те разделы совр. логики, в которых отображаются и изучаются (в связи с рассмотрением субъектно предикатной структуры предложений) правила оперирования с… …   Философская энциклопедия

  • ИСЧИСЛЕНИЕ — знаковая система, создаваемая использованием процесса образования всех синтаксически правильных символических выражений из букв алфавита системы языка исчисления, т. е. термов (слов) и формул (фраз), и процесса вывода потенциально значимых… …   Большой Энциклопедический словарь

  • Исчисление процессов — (алгебра процессов)  семейство связанных подходов к формальному моделированию конкурентных систем. Большой вклад в развитие данного направления теоретической информатики внесли Робин Милнер, разработавший исчисление взаимодействующих систем… …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»