Алгебра процессов оценки производительности ( PEPA ) - это алгебра стохастических процессов, разработанная для моделирования компьютерных и коммуникационных систем, представленных Джейн Хиллстон в 1990-х годах. Язык расширяет классический процесс алгебры, такие как Milner «ы CCS и Хоара » ами СКП пути введения вероятностного ветвления и сроков переходов.
Ставки взяты из экспоненциального распределения, а модели PEPA являются конечными и поэтому порождают случайный процесс, в частности марковский процесс с непрерывным временем (CTMC). Таким образом, язык может использоваться для изучения количественных свойств моделей компьютеров и систем связи, таких как пропускная способность, использование и время отклика, а также качественных свойств, таких как отсутствие тупика. Язык формально определяется с использованием структурированной операционной семантики в стиле, изобретенном Гордоном Плоткиным.
Как и большинство алгебр процессов, PEPA - экономичный язык. В нем всего четыре комбинатора: префикс, выбор, сотрудничество и скрытие. Префикс - это основной строительный блок последовательного компонента: процесса ( a, r ). Р выполн ет активность при скорости г, прежде чем эволюционирует вести себя в качестве компонента P. Выбор создает конкуренцию между двумя возможными альтернативами: в процессе ( a, r). P + ( b, s). Q либо a выигрывает гонку (и процесс впоследствии ведет себя как P), либо b выигрывает гонку (и процесс впоследствии ведет себя как Q).
Оператор кооперации требует, чтобы два «кооператива» объединились для тех действий, которые указаны в наборе кооперации: в процессе P lt; a, b gt; Q процессы P и Q должны взаимодействовать в действиях a и b, но любые другие действия могут выполняться независимо. Теорема об обратном составном агенте дает набор достаточных условий для сотрудничества, чтобы получить продукт в форме стационарного распределения.
Наконец, процесс P / { a } скрывает действие a из поля зрения (и предотвращает присоединение к нему других процессов).
Учитывая набор имен действий, набор процессов PEPA определяется следующей грамматикой BNF :
Части синтаксиса в указанном выше порядке