Results 1 -
8 of
8
Graph Types For Monadic Mobile Processes
- University of Edinburgh
, 1996
"... . While types for name passing calculi have been studied extensively in the context of sorting of polyadic ß-calculus [5, 34, 9, 28, 32, 19, 33, 10, 17], the same type abstraction is not possible in the monadic setting, which was left as an open issue by Milner [21]. We solve this problem with an ex ..."
Abstract
-
Cited by 56 (7 self)
- Add to MetaCart
. While types for name passing calculi have been studied extensively in the context of sorting of polyadic ß-calculus [5, 34, 9, 28, 32, 19, 33, 10, 17], the same type abstraction is not possible in the monadic setting, which was left as an open issue by Milner [21]. We solve this problem with an extension of sorting which captures dynamic aspects of process behaviour in a simple way. Equationally this results in the full abstraction of the standard encoding of polyadic ß-calculus into the monadic one: the sorted polyadic ß-terms are equated by a basic behavioural equality in the polyadic calculus if and only if their encodings are equated in a basic behavioural equality in the typed monadic calculus. This is the first result of this kind we know of in the context of the encoding of polyadic name passing, which is a typical example of translation of high-level communication structures into ß- calculus. The construction is general enough to be extendable to encodings of calculi with mo...
Assigning Types to Processes
- In LICS 2000
, 2000
"... this paper we propose a fine-grained typing system for a higher-order p-calculus which can be used to control the effect of such migrating code on local environments. Processes may be assigned different types depending on their intended use. This is in contrast to most of the previous work on ty ..."
Abstract
-
Cited by 37 (5 self)
- Add to MetaCart
this paper we propose a fine-grained typing system for a higher-order p-calculus which can be used to control the effect of such migrating code on local environments. Processes may be assigned different types depending on their intended use. This is in contrast to most of the previous work on typing processes where all processes are typed by a unique constant type, indicating essentially that they are well-typed relative to a particular environment. Our fine-grained typing facilitates the management of access rights and provides host protection from potentially malicious behaviour
Subtyping and Locality in Distributed Higher Order Processes (Extended Abstract)
, 1999
"... . This paper studies one important aspect of distributed systems, locality, using a calculus of distributed higher-order processes in which not only basic values or channels, but also parameterised processes are transferred across distinct locations. An integration of the subtyping of l-calculus a ..."
Abstract
-
Cited by 33 (4 self)
- Add to MetaCart
. This paper studies one important aspect of distributed systems, locality, using a calculus of distributed higher-order processes in which not only basic values or channels, but also parameterised processes are transferred across distinct locations. An integration of the subtyping of l-calculus and IO-subtyping of the p-calculus offers a tractable tool to control the locality of channel names in the presence of distributed higher order processes. Using a local restriction on channel capabilities together with a subtyping relation, locality is preserved during reductions even if we allow new receptors to be dynamically created by instantiation of arbitrary higher-order values and processes. We also show that our method is applicable to more general constraints, based on local and global channel capabilities. 1 Introduction There have been a number of attempts at adapting traditional process calculi, such as CCS and CSP, so as to provide support for the modelling of certain asp...
Strong Normalisation in the π-Calculus
, 2001
"... We introduce a typed π-calculus where strong normalisation is ensured by typability. Strong normalisation is a useful property in many computational contexts, including distributed systems. In spite of its simplicity, our type discipline captures a wide class of converging name-passing interactive b ..."
Abstract
-
Cited by 26 (14 self)
- Add to MetaCart
We introduce a typed π-calculus where strong normalisation is ensured by typability. Strong normalisation is a useful property in many computational contexts, including distributed systems. In spite of its simplicity, our type discipline captures a wide class of converging name-passing interactive behaviour. The proof of strong normalisability combines methods from typed l-calculi and linear logic with process-theoretic reasoning. It is adaptable to systems involving state and other extensions. Strong normalisation is shown to have significant consequences, including finite axiomatisation of weak bisimilarity, a fully abstract embedding of the simply-typed l-calculus with products and sums and basic liveness in interaction.
Elementary Structures in Process Theory (1) Sets with Renaming
, 1997
"... We study a general algebraic framework which underlies a wide range of computational formalisms... ..."
Abstract
-
Cited by 17 (5 self)
- Add to MetaCart
We study a general algebraic framework which underlies a wide range of computational formalisms...
Channel Dependent Types for Higher-Order Mobile Processes (Extended Abstract)
- In POPL’04
, 2004
"... Nobuko Yoshida Imperial College London ABSTRACT We introduce a new expressive theory of types for the higher-order p-calculus and demonstrate its applicability via non-trivial security analyses of a simple class-based language with distributed code mobility. The new theory significantly improves ..."
Abstract
-
Cited by 15 (5 self)
- Add to MetaCart
Nobuko Yoshida Imperial College London ABSTRACT We introduce a new expressive theory of types for the higher-order p-calculus and demonstrate its applicability via non-trivial security analyses of a simple class-based language with distributed code mobility. The new theory significantly improves our previous one presented in [52] by the use of channel dependent/existential types. New dependent types control dynamic change of process accessibility via channel passing, while existential types guarantee safe scope-extrusion in higher-order process passing. This solves an open issue in [52], leading to significant enlargement of original typability. Two basic security concerns for mobile computation, secrecy for data confidentiality and access controls for authorised resources are analysed in a uniform type-based static framework, culminating in the noninterference theorem and authority-error freedom in the presence of higher-order code mobility. The generality and expressiveness of the new type discipline are tested with a sound embedding of multi-threaded class-based language with dynamic code/class distribution, enforcing secrecy and accessibility.
Assigning Types to Processes (Extended Abstract)
- In IEEE Symposium on Logic in Computer Science
, 2000
"... ) NOBUKO YOSHIDA MATTHEW HENNESSY Dept. of Mathematics and Computer Science School of Cognitive and Computing Sciences University of Leicester Univerrsiry of Sussex ABSTRACT In wide area distributed systems it is now common for higher-order code to be transferred from one domain to another; the rece ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
) NOBUKO YOSHIDA MATTHEW HENNESSY Dept. of Mathematics and Computer Science School of Cognitive and Computing Sciences University of Leicester Univerrsiry of Sussex ABSTRACT In wide area distributed systems it is now common for higher-order code to be transferred from one domain to another; the receiving host may initialise parameters and then execute the code in its local environment. In this paper we propose a fine-grained typing system for a higher-order p-calculus which can be used to control the effect of such migrating code on local environments. Processes may be assigned different types depending on their intended use. This is in contrast to most of the previous work on typing processes where all processes are typed by a unique constant type, indicating essentially that they are well-typed relative to a particular environment. Our process type takes a form of an interface limiting the resources to which it has access, and the types at which they may be used. Allowing resource n...
Process Logic and Duality -- Part I: Sequential Processes
"... We present typed process logics for the π-calculus with linear/affine type disciplines. Built on the preceding studies on logics for programs and processes, simple systems of assertions are developed, capturing the classes of behaviours ranging from purely functional interactions to those with de ..."
Abstract
- Add to MetaCart
We present typed process logics for the π-calculus with linear/affine type disciplines. Built on the preceding studies on logics for programs and processes, simple systems of assertions are developed, capturing the classes of behaviours ranging from purely functional interactions to those with destructive update, local state and genericity. A central feature of the logic is representation of the environments' behaviour as the dual of those of processes in assertions, which is crucial for obtaining compositional proof systems. This paper develops typed process logics starting from purely functional behaviours and treating increasingly complex ones, and illustrate their usage by deriving program logics for higher-order languages. The embedding of the proof rules in the derived logics into the process logics gives a simple proof of the soundness of the former. Some of the derived logics correspond to known program logics, including Hoare logic for imperative programs.

