A Chart Semantics for the Pi-calculus

Johannes Borgstroem, Andrew Gordon, and Andrew Phillips

January 2008

We present a graphical semantics for the pi-calculus, that is easier to visualize and better suited to expressing causality and temporal properties than conventional relational semantics. A pi-chart is a finite directed acyclic graph recording a computation in the pi-calculus. Each node represents a process, and each edge either represents a computation step, or a message-passing interaction. Pi-charts enjoy a natural pictorial representation, akin to message sequence charts, in which vertical edges represent control flow and horizontal edges represent data flow based on message passing. A pi-chart represents a single computation starting from its top (the nodes with no ancestors) to its bottom (the nodes with no descendants). Unlike conventional reductions or transitions, the edges in a pi-chart induce ancestry and other causal relations on processes. We give both compositional and operational definitions of pi-charts, and illustrate the additional expressivity afforded by the chart semantics via a series of examples.

Publication type | Article |

Published in | Electronic Notes in Theoretical Computer Science |

URL | http://dx.doi.org/10.1016/j.entcs.2007.11.002 |

Pages | 3–29 |

Volume | 194 |

Number | 2 |

Publisher | Elsevier |

- A programming language for composable DNA circuits
- Design and Semantics of a Decentralized Authorization Language
- Guiding a General-Purpose C Verifier to Prove Cryptographic Protocols

> Publications > A Chart Semantics for the Pi-calculus