# The Fork Calculus

@inproceedings{Havelund1993TheFC, title={The Fork Calculus}, author={Klaus Havelund and Kim Guldstrand Larsen}, booktitle={Nord. J. Comput.}, year={1993} }

The Fork Calculus FC presents a theory of communicating systems in family with CCS, but it differs in the way that processes are put in parallel. In CCS there is a binary parallel operator |, and two processes p and q are put in parallel by p|q. In FC there is a unary fork operator, and a process p is activated to "run in parallel with the rest of the program" by fork(p). An operational semantics is defined, and a congruence relation between processes is suggested. In addition, a sound and…

## 33 Citations

### A refinement logic for the fork calculus

- Computer SciencePSTV
- 1994

The Fork Calculus FC is provided with an operational semantics, together with a congruence relation between processes, and a refinement logic for program specification and design is presented.

### From Cml to Process Algebras

- Computer Science
- 1993

An effect system for statically expressing the communication behaviours of CML programs as these are not otherwise reflected in the types is formulated, and a new kind of connection between “realistic” concurrent programming languages and “theoretical” process algebras is established.

### From CML to process Algebras

- Computer Science
- 1993

An effect system for statically expressing the communication behaviours of CML programs as these are not otherwise reflected in the types is formulated, and a new kind of connection between ''realistic'' concurrent programming languages and ''theoretical'' process algebras is established.

### From CML to Process Algebras (Extended Abstract)

- Computer ScienceCONCUR
- 1993

An effect system for statically expressing the communication behaviours of CML programs as these are not reflected in the types is formulated and a new kind of connection between “realistic” concurrent programming languages and “theoretical” process algebras is established.

### From CML to Process

- Computer Science
- 1998

An effect system for statically expressing the communication behaviours of CML programs as these are not otherwise reflected in the types is formulated, and a new kind of connection between “realistic” concurrent programming languages and “theoretical” process algebras is established.

### Process creation and full sequential composition in a name-passing calculus

- Computer ScienceEXPRESS
- 1997

### Concurrency, Distribution and Object Orientation Expressed in Map Theory

- Computer Science
- 1996

This paper describesHow concurrency, distribution and object orientation can be expressed in map theory, using a subset of the Emerald language as an example, and shows how concurrency and distribution can be modelled.

### Bisimulations for Asynchronous Mobile Processes

- Computer Science
- 1995

Plain LAL is considered, a mobile process calculus which differs from the pi-calculus in the sense that the communication of data values happens asynchronously, and in the presence of asynchrony, the open, late and early bisimulation equivalences coincide.

## References

SHOWING 1-10 OF 10 REFERENCES

### Algebraic laws for nondeterminism and concurrency

- Computer ScienceJACM
- 1985

The paper demonstrates, for a sequence of simple languages expressing finite behaviors, that in each case observation congruence can be axiomatized algebraically and the algebraic language described here becomes a calculus for writing and specifying concurrent programs and for proving their properties.

### The Importance of the Left Merge Operator in Process Algebras

- MathematicsICALP
- 1990

This paper examines equational axiomatisations for PA, the process algebra of Bergstra and Klop, which is a simple subset of their full language ACP, and proves that no such finite theory can exist for PA in the absence of the left merge operator.

### CML: A higher concurrent language

- Computer SciencePLDI '91
- 1991

CML provides a high-level concurrent languagethat provides both efficient sequential execution and efficient concurrent execution: CML satisfies this need.

### Structural Operational Semantics and Bisimulation as a Congruence (Extended Abstract)

- Computer ScienceICALP
- 1989

The question is considered in which cases a transition system specification in Plotkin style has ‘good’ properties and deserves the predicate ‘structured’ and whether it is natural to require that strong bisimulation equivalence is a congruence on the states of the transition systems.

### Structured Operational Semantics and Bisimulation as a Congruence

- Computer ScienceInf. Comput.
- 1992

### A semantics for ML concurrency primitives

- Computer SciencePOPL '92
- 1992

It is proved that the semantics of this set of concurrency primitives preserves the expected behaviour of sequential programs and can be defined as stores as processes, such that the representation has the same behaviour as a direct definition.

### Communication and concurrency

- Computer SciencePHI Series in computer science
- 1989

This chapter discusses Bisimulation and Observation Equivalence as a Modelling Communication, a Programming Language, and its application to Equational laws.

### Operational and Algebraic Semantics for Facile

- In Proceedings of ICALP90,
- 1990

### An Operational Semantics of First-class Synchronous Operations

- Computer Science
- 1991