π-calculus, Session Types research at Imperial College
In large-scale distributed infrastructures, applications are realised through communications among distributed components. The need for methods for assuring safe interactions in such environments is recognized, however the existing frameworks, relying on centralised verification or restricted specification methods, have limited applicability. This paper proposes a new theory of monitored π-calculus with dynamic usage of multiparty session types (MPST), offering a rigorous foundation for safety assurance of distributed components which asynchronously communicate through multiparty sessions. Our theory establishes a framework for semantically precise decentralised run-time enforcement and provides reasoning principles over monitored distributed applications, which complement existing static analysis techniques. We introduce asynchrony through the means of explicit routers and global queues, and propose novel equivalences between networks, that capture the notion of interface equivalence, i.e. equating networks offering the same services to a user. We illustrate our static-dynamic analysis system with an ATM protocol as a running example and justify our theory with results: satisfaction equivalence, local/global safety and transparency, and session fidelity.
@inproceedings{BCDHY2013, author = {Laura Bocchi and Tzu-Chun Chen and Romain Demangeon and Kohei Honda and Nobuko Yoshida}, title = {{Monitoring Networks through Multiparty Session Types}}, booktitle = {Joint IFIP WG 6.1 International Conference on Formal Techniques for Distributed Systems}, series = {LNCS}, volume = {7892}, pages = {50--65}, publisher = {Springer}, year = 2013 }
@inproceedings{BCDHY2013, author = {Laura Bocchi and Tzu-Chun Chen and Romain Demangeon and Kohei Honda and Nobuko Yoshida}, title = {{Monitoring Networks through Multiparty Session Types}}, booktitle = {Joint IFIP WG 6.1 International Conference on Formal Techniques for Distributed Systems}, series = {LNCS}, volume = {7892}, pages = {50--65}, publisher = {Springer}, doi = "10.1007/978-3-642-38592-6_5", year = 2013 }