π-calculus, Session Types research at Imperial College
Many parallel and distributed message-passing programs are written in a parametric way over available resources, in particular the number of nodes and their topologies, so that a single parallel program can scale over different environments. This article presents a parameterised protocol description language, Pabble, which can guarantee safety and progress in a large class of practical, complex parameterised message-passing programs through static checking. Pabble can describe an overall interaction topology, using a concise and expressive notation, designed for a variable number of participants arranged in multiple dimensions. These parameterised protocols in turn automatically generate local protocols for type checking parameterised MPI programs for communication safety and deadlock freedom. In spite of undecidability of endpoint projection and type checking in the underlying parameterised session type theory, our method guarantees the termination of endpoint projection and type checking.
@article{NY2015, author = {Nicholas Ng and Nobuko Yoshida}, title = {{Pabble: parameterised Scribble}}, journal = {SOCA}, volume = {9(3-4)}, pages = {269--284}, publisher = {Springer London}, year = 2015 }
@article{NY2015, author = {Nicholas Ng and Nobuko Yoshida}, title = {{Pabble: parameterised Scribble}}, journal = {Service Oriented Computing and Applications}, volume = {9(3-4)}, pages = {269--284}, publisher = {Springer London}, doi = "10.1007/s11761-014-0172-8", year = 2015 }