Interpreting Functions as Pi-Calculus Processes: A Tutorial
This paper is concerned with the relationship between-calculus and-calculus. The-calculus talks about functions and their applicative behaviour. This contrasts with the-calculus, that talks about processes and their interactive behaviour. Application is a special form of interaction , and therefore functions can be seen as a special form of processes. We study how the functions of the-calculus (the computable functions) can be represented as-calculus processes. The-calculus semantics of a language induces a notion of equality on the terms of that language. We therefore also analyse the equality among functions that is induced by their representation as-calculus processes. This paper is intended as a tutorial. It however contains some original contributions. The main ones are: the use of well-known Continuation Passing Style transforms to derive the encodings into-calculus and prove their correctness; the encoding of typed-calculi. Note: This is a draft of a chapter of a book that I am writing with David Walker. In the hope of making the paper self-contained, I have added appendices with background material on-calculus.