F. Barbanera, M. Dezani-Ciancaglini, Ugo de'Liguoro
In the setting of session behaviours, we study an extension of the concept of compliance when a disciplined form of backtracking is present. After adding checkpoints to the syntax of session behaviours, we formalise the operational semantics via a LTS, and define a natural notion of checkpoint compliance. We then obtain a co-inductive characterisation of such compliance relation, and an axiomatic presentation that is proved to be sound and complete. As a byproduct we get a decision procedure for the new compliance, being the axiomatic system algorithmic. 1 Introduction. In human as well as automatic negotiations, an interesting feature is the ability of rolling back to some previous point, undoing previous choices and possibly trying a different path. Rollbacks are familiar to the users of web browsers, and so are also the troubles that these might cause during “undisciplined” interactions. Clicking the “back” button, or going to some previous point in the chronology when we are in the middle of a transaction, say the booking of a flight, can be as smart as dangerous. In any case it is surely a behaviour that service programmers want to discipline. Also the converse has to be treated with care: a server discovering that a service b ecomes available after having started a conversation could take advantage from some kind of rolling backs. However, such a server would be quite unfair if the rollbacks were completely hidden from the client. Adding rollbacks to interaction protocols requires a sophisticated concept of client/server compliance. In this paper we investigate protocols admitting a simple, though non trivial form of reversibility in the framework of the theory of contracts introduced in [4] and developed in a series of papers, e.g. [5]. We focus here on the scenario of client/server architectures, where services stored in a repository are queried by clients to establish two-sided communications, and the central concept is that of compliance. More precisely, we consider the formalism of session behaviours as introduced in [2, 1, 3], but without delegation. This is a formalism interpreting the sessio n types, introduced by Honda et al. in [7], into a subset of CCS without τ. We extend the session behaviours syntax by means of markers that we call checkpoints; these are intended as pointers to the last place where eithe r the client or the server can roll back at any time. We investigate which constraints must be imposed to obtain a safe notion of client/server interaction in the new scenario, by defining a model in the form of a LTS, and by characterising the resulting concept of compliance both coinductively and axiomatically. Since the axiomatic system is algorithmic that is decidable, the compliance of behaviours with checkpoints is decidable. Before entering into the formal development of session behaviours with checkpoints, we illustrate the basic concepts by discussing a few examples. Suppose that the client is a customer willing to ar
{"title":"Compliance for reversible client/server interactions","authors":"F. Barbanera, M. Dezani-Ciancaglini, Ugo de'Liguoro","doi":"10.4204/EPTCS.162.5","DOIUrl":"https://doi.org/10.4204/EPTCS.162.5","url":null,"abstract":"In the setting of session behaviours, we study an extension of the concept of compliance when a disciplined form of backtracking is present. After adding checkpoints to the syntax of session behaviours, we formalise the operational semantics via a LTS, and define a natural notion of checkpoint compliance. We then obtain a co-inductive characterisation of such compliance relation, and an axiomatic presentation that is proved to be sound and complete. As a byproduct we get a decision procedure for the new compliance, being the axiomatic system algorithmic. 1 Introduction. In human as well as automatic negotiations, an interesting feature is the ability of rolling back to some previous point, undoing previous choices and possibly trying a different path. Rollbacks are familiar to the users of web browsers, and so are also the troubles that these might cause during “undisciplined” interactions. Clicking the “back” button, or going to some previous point in the chronology when we are in the middle of a transaction, say the booking of a flight, can be as smart as dangerous. In any case it is surely a behaviour that service programmers want to discipline. Also the converse has to be treated with care: a server discovering that a service b ecomes available after having started a conversation could take advantage from some kind of rolling backs. However, such a server would be quite unfair if the rollbacks were completely hidden from the client. Adding rollbacks to interaction protocols requires a sophisticated concept of client/server compliance. In this paper we investigate protocols admitting a simple, though non trivial form of reversibility in the framework of the theory of contracts introduced in [4] and developed in a series of papers, e.g. [5]. We focus here on the scenario of client/server architectures, where services stored in a repository are queried by clients to establish two-sided communications, and the central concept is that of compliance. More precisely, we consider the formalism of session behaviours as introduced in [2, 1, 3], but without delegation. This is a formalism interpreting the sessio n types, introduced by Honda et al. in [7], into a subset of CCS without τ. We extend the session behaviours syntax by means of markers that we call checkpoints; these are intended as pointers to the last place where eithe r the client or the server can roll back at any time. We investigate which constraints must be imposed to obtain a safe notion of client/server interaction in the new scenario, by defining a model in the form of a LTS, and by characterising the resulting concept of compliance both coinductively and axiomatically. Since the axiomatic system is algorithmic that is decidable, the compliance of behaviours with checkpoints is decidable. Before entering into the formal development of session behaviours with checkpoints, we illustrate the basic concepts by discussing a few examples. Suppose that the client is a customer willing to ar","PeriodicalId":53853,"journal":{"name":"DOWN BEAT","volume":"96 1","pages":"35-42"},"PeriodicalIF":0.0,"publicationDate":"2014-08-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"79463718","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"艺术学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
I. Castellani, M. Dezani-Ciancaglini, Jorge A. Pérez
We present initial results on a comprehensive model of structured communications, in which self- adaptation and security concerns are jointly addressed. More specifically, we propose a model of self-adaptive, multiparty communications with secure information flow guarantees. In this model, security violations occur when processes attempt to read or write messages of inappropriate security levels within directed exchanges. Such violations trigger adaptation mechanisms that prevent the violations to occur and/or to propagate their effect in the choreography. Our model is equipped with local and global mechanisms for reacting to security violations; type soundness results ensure that global protocols are still correctly executed, while the system adapts itself to preserve security.
{"title":"Self-Adaptation and Secure Information Flow in Multiparty Structured Communications: A Unified Perspective","authors":"I. Castellani, M. Dezani-Ciancaglini, Jorge A. Pérez","doi":"10.4204/EPTCS.162.2","DOIUrl":"https://doi.org/10.4204/EPTCS.162.2","url":null,"abstract":"We present initial results on a comprehensive model of structured communications, in which self- adaptation and security concerns are jointly addressed. More specifically, we propose a model of self-adaptive, multiparty communications with secure information flow guarantees. In this model, security violations occur when processes attempt to read or write messages of inappropriate security levels within directed exchanges. Such violations trigger adaptation mechanisms that prevent the violations to occur and/or to propagate their effect in the choreography. Our model is equipped with local and global mechanisms for reacting to security violations; type soundness results ensure that global protocols are still correctly executed, while the system adapts itself to preserve security.","PeriodicalId":53853,"journal":{"name":"DOWN BEAT","volume":"15 1","pages":"9-18"},"PeriodicalIF":0.0,"publicationDate":"2014-08-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"82447058","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"艺术学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Session types model structured communication-based programming. In particular, binary session types for the pi-calculus describe communication between exactly two participants in a distributed scenario. Adding sessions to the pi-calculus means augmenting it with type and term constructs. In a previous paper, we tried to understand to which extent the session constructs are more complex and expressive than the standard pi-calculus constructs. Thus, we presented an encoding of binary session pi-calculus to the standard typed pi-calculus by adopting linear and variant types and the continuation-passing principle. In the present paper, we focus on recursive session types and we present an encoding into recursive linear pi-types. This encoding is a conservative extension of the former in that it preserves the results therein obtained. Most importantly, it adopts a new treatment of the duality relation, which in the presence of recursive types has been proven to be quite challenging.
{"title":"Recursive Session Types Revisited","authors":"Ornela Dardha","doi":"10.4204/EPTCS.162.4","DOIUrl":"https://doi.org/10.4204/EPTCS.162.4","url":null,"abstract":"Session types model structured communication-based programming. In particular, binary session types for the pi-calculus describe communication between exactly two participants in a distributed scenario. Adding sessions to the pi-calculus means augmenting it with type and term constructs. In a previous paper, we tried to understand to which extent the session constructs are more complex and expressive than the standard pi-calculus constructs. Thus, we presented an encoding of binary session pi-calculus to the standard typed pi-calculus by adopting linear and variant types and the continuation-passing principle. In the present paper, we focus on recursive session types and we \u0000present an encoding into recursive linear pi-types. This encoding is a conservative extension of the former in that it preserves the results therein obtained. Most importantly, it adopts a new treatment of the duality relation, which in the presence of recursive types has been proven to be quite challenging.","PeriodicalId":53853,"journal":{"name":"DOWN BEAT","volume":"458 1","pages":"27-34"},"PeriodicalIF":0.0,"publicationDate":"2014-08-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"83069846","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"艺术学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}