Abstract. In the context of Service Oriented Computing, contracts are descriptions of the externally observable behaviour of services. Given a group of collaborating services, their contracts can be used to verify whether their composition is sound, i.e., the services are compliant. In this paper, we relate the theory of contracts with the notion of choreography conformance, used to check whether an aggregation of services correctly behaves according to a high level specification of their possible conversations. The main result of this paper is the definition of an effective procedure that can be used to verify whether a service with a given contract can correctly play a specific role within a choreography. This procedure is achieved via composition of choreography projection and contract refinement.
We define several security properties for the analysis of probabilistic non-interference as a conservative extension of the nondeterministic approach by Focardi and Gorrieri in the context of a probabilistic process algebra. We show that probabilistic covert channels which are not observable in the nondeterministic setting may be revealed through our approach and that probabilistic information can be exploited to give a quantitative estimate of the information flowing from high level to low level. Finally, we present a case study showing that the expressiveness of the calculus we adopt makes it possible to model real concurrent systems in order to analyze information flow security properties as well as to derive performance related measures.
Session types are used to describe communication protocols in distributed systems and, as usual in type theories, session subtyping characterizes substitutability of the communicating processes. We investigate the (un)decidability of subtyping for session types in asynchronously communicating systems. We first devise a core undecidable subtyping relation that is obtained by imposing limitations on the structure of types. Then, as a consequence of this initial undecidability result, we show that (differently from what stated or conjectured in the literature) the three notions of asynchronous subtyping defined so far for session types are all undecidable. Namely, we consider the asynchronous session subtyping by Mostrous and Yoshida [1] for binary sessions, the relation by Chen et al. [2] for binary sessions under the assumption that every message emitted is eventually consumed, and the one by Mostrous et al. [3] for multiparty session types. Finally, by showing that two fragments of the core subtyping relation are decidable, we evince that further restrictions on the structure of types make our core subtyping relation decidable.Formally, subtyping relations have been defined for session types to precisely capture this safe replacement notion.Gay and Hole [6] are the first ones who studied subtyping for session types in a context where protocols involve only two peers (i.e. are binary) and communication is synchronous. Later, Mostrous et al. [3] extended this notion to multiparty session types with asynchronous communication. Both articles propose an algorithm for checking subtying, but the one proposed by Mostrous et al. [3], differently from what stated therein, is not always terminating in the sense that there are cases in which it diverges and never gives an answer. An example of divergent execution is discussed in the Remark paragraph of §4.4.Later work by Mostrous and Yoshida [1], Mostrous [7] and Chen et al. [2] addresses subtyping in variants of an asynchronous setting for binary sessions. In particular Chen et al. [2] focus on binary sessions in which messages sent by a partner are guaranteed to be eventually received. Such articles conjecture that an algorithm for checking asynchronous session subtyping exists, although, in his PhD thesis, Mostrous [7] expresses a few doubts about the decidability of asynchronous subtyping (pp. 178-180), because of the need for infinite simulations. In this work, we prove that the subtyping relations defined by Mostrous and Yoshida [1], Chen et al. [2], and Mostrous et al. [3] are undecidable. We proceed by identifying a core asynchronous subtyping relation and show it is undecidable: all other undecidability results are obtained by reduction from this initial relation.The core relation, denoted by < <, is named asynchronous single-choice relation. Such a relation is obtained by first defining (following the approach by Mostrous and Yoshida [1]) a standard asynchronous subtyping ≤ and then reduce it by imposing additional constraints: T and S are in single-choice relation...
Abstract. Choreography conformance and contract compliance have been widely studied in the context of synchronous communication. In this paper we approach a more realistic scenario in which the messages containing the invocations are queued in the called service. More precisely, we study the foundational aspects of contract compliance in a language independent way by just taking contracts to be finite labeled transition systems. Then, we relate the proposed theory of contract compliance with choreography specificationsà la WS-CDL where activities are interpreted as pairs of send and receive events. An interesting consequence of adopting a language independent representation of contracts is that choreography projection can be defined in structured operational semantics.
Abstract. We propose the concept of adaptable processes as a way of overcoming the limitations that process calculi have for describing patterns of dynamic process evolution. Such patterns rely on direct ways of controlling the behavior and location of running processes, and so they are at the heart of the adaptation capabilities present in many modern concurrent systems. Adaptable processes have a location and are sensible to actions of dynamic update at runtime; this allows to express a wide range of evolvability patterns for concurrent processes. We introduce a core calculus of adaptable processes and propose two verification problems for them: bounded and eventual adaptation. While the former ensures that the number of consecutive erroneous states that can be traversed during a computation is bound by some given number k, the latter ensures that if the system enters into a state with errors then a state without errors will be eventually reached. We study the (un)decidability of these two problems in several variants of the calculus, which result from considering dynamic and static topologies of adaptable processes as well as different evolvability patterns. Rather than a specification language, our calculus intends to be a basis for investigating the fundamental properties of evolvable processes and for developing richer languages with evolvability capabilities.
International audienceA recent trend in programming language research is to use behavioral type theory to ensure various correctness properties of largescale, communication-intensive systems. Behavioral types encompass concepts such as interfaces, communication protocols, contracts, and choreography. The successful application of behavioral types requires a solid understanding of several practical aspects, from their representation in a concrete programming language, to their integration with other programming constructs such as methods and functions, to design and monitoring methodologies that take behaviors into account. This survey provides an overview of the state of the art of these aspects, which we summarize as the pragmatics of behavioral types
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
334 Leonard St
Brooklyn, NY 11211
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.