Hostname: page-component-76fb5796d-skm99 Total loading time: 0 Render date: 2024-04-28T07:34:36.063Z Has data issue: false hasContentIssue false

Termination of processes

Published online by Cambridge University Press:  21 February 2006

DAVIDE SANGIORGI
Affiliation:
University of Bologna, Italy Email: davide.sangiorgi@cs.unibo.it

Abstract

A process $M$ terminates if it cannot produce an infinite sequence of reductions $M \mathop{\rightarrow}^{\tau} M_1\mathop{\rightarrow}^{\tau} M_2 \ldots$. Termination is a useful property in concurrency. For instance, a terminating applet, when loaded on a machine, will not run for ever, possibly absorbing all computing resources (a ‘denial of service’ attack). Similarly, termination guarantees that queries to a given service originate only finite computations.

We ensure termination of a non-trivial subset of the $\pi$-calculus by a combination of conditions on types and on the syntax. The proof of termination is in two parts. The first uses the technique of logical relations – a well-know technique of $\lambda$-calculi – on a small set of non-deterministic ‘functional’ processes. The second part of the proof uses techniques of process calculi, in particular, techniques of behavioural preorders.

Type
Paper
Copyright
2006 Cambridge University Press

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

Footnotes

This work was supported by the EC project ‘PROFUNDIS’.