# Process calculus

**process calculiprocess algebracalculusHyPAnull processprocess algebraicprocess algebrassequential composition**

In computer science, the process calculi (or process algebras) are a diverse family of related approaches for formally modelling concurrent systems.wikipedia

101 Related Articles

### Concurrency (computer science)

**concurrencyconcurrentconcurrently**

In computer science, the process calculi (or process algebras) are a diverse family of related approaches for formally modelling concurrent systems.

A number of mathematical models have been developed for general concurrent computation including Petri nets, process calculi, the parallel random-access machine model, the actor model and the Reo Coordination Language.

### Calculus of communicating systems

**CCSCCS-Calculus**

Leading examples of process calculi include CSP, CCS, ACP, and LOTOS.

The calculus of communicating systems (CCS) is a process calculus introduced by Robin Milner around 1980 and the title of a book describing the calculus.

### PEPA

More recent additions to the family include the π-calculus, the ambient calculus, PEPA, the fusion calculus and the join-calculus.

Performance Evaluation Process Algebra (PEPA) is a stochastic process algebra designed for modelling computer and communication systems introduced by Jane Hillston in the 1990s.

### Ambient calculus

**Ambient (computation)ambientsmobile ambients**

More recent additions to the family include the π-calculus, the ambient calculus, PEPA, the fusion calculus and the join-calculus.

In computer science, the ambient calculus is a process calculus devised by Luca Cardelli and Andrew D. Gordon in 1998, and used to describe and theorise about concurrent systems that include mobility.

### Join-calculus

**Join calculus**

More recent additions to the family include the π-calculus, the ambient calculus, PEPA, the fusion calculus and the join-calculus.

The join-calculus is a process calculus developed at INRIA.

### Algebra of Communicating Processes

**ACP**

Leading examples of process calculi include CSP, CCS, ACP, and LOTOS. In 1982 Jan Bergstra and Jan Willem Klop began work on what came to be known as the Algebra of Communicating Processes (ACP), and introduced the term process algebra to describe their work.

It is a member of the family of mathematical theories of concurrency known as process algebras or process calculi.

### Π-calculus

**pi-calculusPi calculus-calculus**

In theoretical computer science, the -calculus (or pi-calculus) is a process calculus.

### Communicating sequential processes

**CSPCommunicating Sequential Processes (CSP)channel**

Leading examples of process calculi include CSP, CCS, ACP, and LOTOS.

It is a member of the family of mathematical theories of concurrency known as process algebras, or process calculi, based on message passing via channels.

### Channel (programming)

**channelschannelcommunication channels**

To define a process calculus, one starts with a set of names (or channels) whose purpose is to provide means of communication.

Channels are fundamental to the process calculus approach to concurrency, and originated in communicating sequential processes (CSP), a formal model for concurrency, and has been used in many derived languages, such as occam, and Limbo programming language (via Newsqueak and the Alef programming language).

### Computer science

**computer scientistcomputer sciencescomputer scientists**

In computer science, the process calculi (or process algebras) are a diverse family of related approaches for formally modelling concurrent systems.

A number of mathematical models have been developed for general concurrent computation including Petri nets, process calculi and the Parallel Random Access Machine model.

### Language Of Temporal Ordering Specification

**LOTOSISO 8807**

Leading examples of process calculi include CSP, CCS, ACP, and LOTOS.

LOTOS is an algebraic language that consists of two parts: a part for the description of data and operations, based on abstract data types, and a part for the description of concurrent processes, based on process calculus.

### Actor model

**actorsactorActor programming**

Models of concurrency such as the process calculi, Petri nets in 1962, and the actor model in 1973 emerged from this line of inquiry. The use of channels for communication is one of the features distinguishing the process calculi from other models of concurrency, such as Petri nets and the actor model (see Actor model and process calculi).

Other concurrency systems (e.g., process calculi) can be modeled in the actor model using a two-phase commit protocol.

### Actor model and process calculi

**issues with getting messages from multiple channelsmigrationSynchronous channels in process calculi**

The use of channels for communication is one of the features distinguishing the process calculi from other models of concurrency, such as Petri nets and the actor model (see Actor model and process calculi).

In computer science, the Actor model and process calculi are two closely related approaches to the modelling of concurrent digital computation.

### History monoid

**Distribution (concurrency)**

The history monoid is the free object that is generically able to represent the histories of individual communicating processes.

History monoids occur in the theory of concurrent computation, and provide a low-level mathematical foundation for process calculi, such as CSP the language of communicating sequential processes, or CCS, the calculus of communicating systems.

### Lambda calculus

**beta reductionλ-calculusuntyped lambda calculus**

In the first half of the 20th century, various formalisms were proposed to capture the informal concept of a computable function, with μ-recursive functions, Turing machines and the lambda calculus possibly being the best-known examples today.

Other process calculi have been developed for describing communication and concurrency.

### Matthew Hennessy

Matthew Hennessy is an Irish computer scientist who has contributed especially to concurrency, process calculi and programming language semantics.

### Concurrent computing

**concurrentconcurrent programmingconcurrency**

The use of channels for communication is one of the features distinguishing the process calculi from other models of concurrency, such as Petri nets and the actor model (see Actor model and process calculi).

A wide variety of mathematical theories to understand and analyze message-passing systems are available, including the actor model, and various process calculi.

### Petri net

**Petri netsPetri net theoryconcurrent systems**

Models of concurrency such as the process calculi, Petri nets in 1962, and the actor model in 1973 emerged from this line of inquiry. The use of channels for communication is one of the features distinguishing the process calculi from other models of concurrency, such as Petri nets and the actor model (see Actor model and process calculi).

Other ways of modelling concurrent computation have been proposed, including process algebra, the actor model, and trace theory.

### Jan Bergstra

In 1982 Jan Bergstra and Jan Willem Klop began work on what came to be known as the Algebra of Communicating Processes (ACP), and introduced the term process algebra to describe their work.

### Stochastic probe

* Stochastic probe

In process calculus a stochastic probe is a measurement device that measures the time between arbitrary start and end events over a stochastic process algebra model.

### Algebra

**algebraicAlgebra IAlgebra 1**

They also provide algebraic laws that allow process descriptions to be manipulated and analyzed, and permit formal reasoning about equivalences between processes (e.g., using bisimulation).

### Bisimulation

**bisimilarity(weak)bisimilar**

They also provide algebraic laws that allow process descriptions to be manipulated and analyzed, and permit formal reasoning about equivalences between processes (e.g., using bisimulation).

### Stochastic

**stochasticsstochastic musicstochasticity**

While the variety of existing process calculi is very large (including variants that incorporate stochastic behaviour, timing information, and specializations for studying molecular interactions), there are several features that all process calculi have in common: