Reversible Sessions Using Monitors

Much research has studied foundations for correct and reliable communication-centric systems. A salient approach to correctness uses session types to enforce structured communications; a recent approach to reliability uses reversible actions as a way of reacting to unanticipated events or failures. This note develops a simple observation: the machinery required to define asynchronous semantics and monitoring can also support reversible protocols. We propose a process framework of session communication in which monitors support reversibility. A key novelty in our approach are session types with present and past, which allow us to streamline the semantics of reversible actions.

[1]  Daniele Varacca,et al.  A Compositional Semantics for the Reversible p-Calculus , 2013, 2013 28th Annual ACM/IEEE Symposium on Logic in Computer Science.

[2]  Nobuko Yoshida,et al.  On the Relative Expressiveness of Higher-Order Session Processes , 2016, ESOP.

[3]  Mariangiola Dezani-Ciancaglini,et al.  Self-adaptive multiparty sessions , 2014, Service Oriented Computing and Applications.

[4]  Nobuko Yoshida,et al.  Type-Safe Eventful Sessions in Java , 2010, ECOOP.

[5]  Nobuko Yoshida,et al.  Practical interruptible conversations: distributed dynamic verification with multiparty session types and Python , 2015, Formal Methods Syst. Des..

[6]  Ivan Lanese,et al.  Retractable Contracts , 2015, PLACES.

[7]  Vincent Danos,et al.  Reversible Communicating Systems , 2004, CONCUR.

[8]  Ilaria Castellani,et al.  Self-Adaptation and Secure Information Flow in Multiparty Structured Communications: A Unified Perspective , 2014, BEAT.

[9]  Jorge A. Pérez,et al.  An Event-Based Approach to Runtime Adaptation in Communication-Centric Systems , 2015, WS-FM.

[10]  Nobuko Yoshida,et al.  Global escape in multiparty sessions † , 2014, Mathematical Structures in Computer Science.

[11]  Hugo Torres Vieira,et al.  A Process Calculus Analysis of Compensations , 2009, TGC.

[12]  Laura Bocchi,et al.  Monitoring Networks through Multiparty Session Types , 2013, FMOODS/FORTE.

[13]  Ivan Lanese,et al.  Reversing Higher-Order Pi , 2010, CONCUR.

[14]  Cinzia Di Giusto,et al.  Disciplined structured communications with disciplined runtime adaptation , 2015, Sci. Comput. Program..

[15]  Hugo Torres Vieira,et al.  Conversation types , 2009, Theor. Comput. Sci..

[16]  Nobuko Yoshida,et al.  On Asynchronous Session Semantics , 2011, FMOODS/FORTE.

[17]  Nobuko Yoshida,et al.  Reversible session-based pi-calculus , 2015, J. Log. Algebraic Methods Program..

[18]  Ivan Lanese,et al.  A Reversible Abstract Machine and Its Space Overhead , 2012, FMOODS/FORTE.

[19]  Vasco Thudichum Vasconcelos,et al.  Language Primitives and Type Discipline for Structured Communication-Based Programming Revisited: Two Systems for Higher-Order Session Communication , 1998, SecReT@ICALP.

[20]  Ivan Lanese,et al.  Controlling Reversibility in Higher-Order Pi , 2011, CONCUR.

[21]  Limin Jia,et al.  Monitors and blame assignment for higher-order session types , 2016, POPL.

[22]  Cosimo Laneve,et al.  Reversible structures , 2011, CMSB.

[23]  Ilaria Castellani,et al.  Information flow safety in multiparty sessions , 2016, Math. Struct. Comput. Sci..