Flow Logic for Process Calculi

Publication: Research - peer-reviewJournal article – Annual report year: 2012

View graph of relations

Flow Logic is an approach to statically determining the behavior of programs and processes. It borrows methods and techniques from Abstract Interpretation, Data Flow Analysis and Constraint Based Analysis while presenting the analysis in a style more reminiscent of Type Systems. Traditionally developed for programming languages, this article provides a tutorial development of the approach of Flow Logic for process calculi based on a decade of research.

We first develop a simple analysis for the π-calculus; this consists of the specification, semantic soundness (in the form of subject reduction and adequacy results), and a Moore Family result showing that a least solution always exists, as well as providing insights on how to implement the analysis. We then show how to strengthen the analysis technology by introducing reachability components, interaction points, and localized environments, and finally, we extend it to a relational analysis.

A Flow Logic is a program logic---in the same sense that a Hoare’s logic is. We conclude with an executive summary presenting the highlights of the approach from this perspective including a discussion of theoretical properties as well as implementation considerations.

The electronic supplements present an application of the analysis techniques to a version of the π-calculus incorporating distribution and code mobility; also the proofs of the main results can be found in the electronic supplements.
Original languageEnglish
JournalA C M Computing Surveys
Issue number1
Pages (from-to)Article No. 3
Number of pages39
StatePublished - 2012
CitationsWeb of Science® Times Cited: 2
Download as:
Download as PDF
Select render style:
Download as HTML
Select render style:
Download as Word
Select render style:

ID: 5129196