Principal Typing Schemes in a Polyadic pi-Calculus

The present paper introduces a typing system for a version of Milner's polyadic π-calculus, and a typing inference algorithm linear on the size of the input. The central concept underlying the typing system is the notion of type assignment, where each free name in a term is assigned a type, the term itself being given multiple nametype pairs. This observation leads to a clean typing system for Milner's sorting, and induces an efficient algorithm to infer the typing of a term. The typing system enjoys a subject-reduction property and possesses a notion of principal typing scheme. The algorithm to reconstruct the principal typing scheme of a process, or to detect its inexistence, is proved correct with respect to the typing system.

[1]  R. Hindley The Principal Type-Scheme of an Object in Combinatory Logic , 1969 .

[2]  F. Cardone,et al.  Two extensions of Curry's type inference system , 1990 .

[3]  B. Courcelle Fundamental properties of infinite trees , 1983 .

[4]  Davide Sangiorgi,et al.  Typing and subtyping for mobile processes , 1993, [1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science.

[5]  Kohei Honda,et al.  Types for Dyadic Interaction , 1993, CONCUR.

[6]  Gordon D. Plotkin,et al.  An Ideal Model for Recursive Polymorphic Types , 1986, Inf. Control..

[7]  Mario Tokoro,et al.  On Asynchronous Communication Semantics , 1991, Object-Based Concurrent Computing.

[8]  Robin Milner,et al.  Functions as processes , 1990, Mathematical Structures in Computer Science.

[9]  Robin Milner,et al.  Principal type-schemes for functional programs , 1982, POPL '82.