Questions tagged [process-algebras]

Process algebras (also known as process calculi) are formal models of concurrency

A process calculus, or process algebra, is a formal model of concurrent systems (see also ).

Examples of process calculi

Further reading

23 questions
23
votes
3 answers

Similarities and differences in major process algebras

To my knowledge, there are three major process algebras that have inspired a vast range of research into formal models of concurrency. These are: CCS and $\pi$-calculus both by Robin Milner CSP by Tony Hoare and ACP by Jan Bergstra and Jan Willem…
Dave Clarke
  • 20,345
  • 4
  • 70
  • 114
21
votes
3 answers

When are two simulations not a bisimulation?

Given a labelled transition system $(S,\Lambda,\to)$, where $S$ is a set of states, $\Lambda$ is a set of labels, and $\to\subseteq S\times\Lambda\times S$ is a ternary relation. As usual, write $p \stackrel\alpha\rightarrow q$ for…
11
votes
2 answers

CCS process for a drink dispenser with two different prices

A drink dispenser requires the user to insert a coin ($\bar c$), then press one of three buttons: $\bar d_{\text{tea}}$ requests a cup of tea $e_{\text{tea}}$, ditto for coffee, and $\bar r$ requests a refund (i.e. the machine gives back the coin:…
Gilles 'SO- stop being evil'
  • 44,159
  • 8
  • 120
  • 184
6
votes
1 answer

Late and Early Bisimulation

This is a follow up to my earlier questions on coinduction and bisimulation. A relation $R \subseteq S \times S$ on the states of an LTS is a bisimulation iff $\forall (p,q)\in R,$ $$ \begin{array}{l} \text{ if } p \stackrel\alpha\rightarrow…
Dave Clarke
  • 20,345
  • 4
  • 70
  • 114
5
votes
1 answer

Are there (highly) restricted process calculi? Perhaps similar to formal grammar?

I've started to read about process calculi (such as CSP and π-calculus). It seems to me that they are extremely general and can represent pretty much any concurrent system, many of which will be unable to "make progress". I wondered if there were…
Benjohn
  • 273
  • 1
  • 6
5
votes
1 answer

Problem with definition of bisimilarity

In my model checking class we have defined a bisimulation like this: Let $K=(S,S_0,Act,R,L)$ and $K'=(S',S'_0,Act,R',L')$ be two kripke structures. A relation $B \subseteq S \times S'$ is called bisimulation if $\,\forall (s, s') \in B$ following…
Cilenco
  • 415
  • 4
  • 12
4
votes
1 answer

How does lack of deadlock relate to computability in process calculi?

I'm interested in knowing things about the computability of concurrent programs. If you had a Turing complete language that also let you branch off new programs but had no means of communication between them there would be programs that you couldn't…
4
votes
0 answers

Deadlock free process calculi

So when programming with locks as a synchronization primitives you can ensure no deadlock by ensuring that an ordering exists on the locks and that all acquires of the locks happen in that order (which really just needs to be a well founded…
Jake
  • 3,810
  • 21
  • 35
4
votes
2 answers

Terminologies of "Process calculus" and "Process algebra"

In the literature, the terms of "process calculus" and "process algebra" are often interchangeable. Meanwhile, it confused me. My questions are: Are there formal, standard, and widely-accepted definitions of "calculus" and "algebra"? What are the…
hengxin
  • 9,671
  • 3
  • 37
  • 75
4
votes
1 answer

How to implement simulation on two LTSs?

Does any one know how to implement the simulation relation on two labelled transition systems (LTS)? I know how to do it for branching bi-simulation. The signature refinement theorem is used for that purpose which has the time complexity of…
Nima
  • 41
  • 2
4
votes
1 answer

How to express Rob Pike's classic Go Code presentation in Hoare's CSP Algebra?

At 15:30 in this talk (p13 of this presentation here) Rich Hickey mentions the formalisms available for reasoning about Communicating Sequential Processes. He then goes on to mention that these haven't yet been applied to Clojure's core.async. The…
hawkeye
  • 1,199
  • 8
  • 20
3
votes
1 answer

Process graphs and finding infinite processes

I am reading on concurrent processes and algorithms which find infinite processes by searching the process graph recursively. Most of the material I have found is not for beginners. I am looking for references / algorithms that can help me…
3
votes
2 answers

Benefit of Petri Net Transition as Separate Object

In learning about Timed Automata, Coloured Petri Nets, and Process Calculi, I am wondering what the benefit is of having the Petri Net transition be a separate type of node in Petri Nets. It seems that you can model the same stuff (eventually) using…
Lance Pollard
  • 2,323
  • 1
  • 19
  • 34
3
votes
1 answer

Weak bisimulation up-to $\approx$

Given this definition of weak bisimilarity: A configuration relation $\mathcal{R}$ is a weak bisimulation provided that whenever $P\ \mathcal{R}\ Q$ and $\alpha$ is $\mu$ or $\tau$ action then: $P \to^\alpha P'$ then $Q…
3
votes
1 answer

How to quickly find a few bisimulations on a given labelled digraph?

We are given a labelled directed graph, where both vertices (or states) and edges (or transitions) have labels. Informally, two states are bisimilar when they have the same label and they can simulate each other's transitions. On the states the two…
Juho
  • 22,905
  • 7
  • 63
  • 117
1
2