Future-based Static Analysis of Message Passing Programs

Wytse Hendrikus Marinus Oortwijn, Stefan Blom, Marieke Huisman

    Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

    7 Citations (Scopus)
    70 Downloads (Pure)

    Abstract

    Message passing is widely used in industry to develop programs consisting of several distributed communicating components. Developing functionally correct message passing software is very challenging due to the concurrent nature of message exchanges. Nonetheless, many safety-critical applications rely on the message passing paradigm, including air traffic control systems and emergency services, which makes proving their correctness crucial. We focus on the modular verification of MPI programs by statically verifying concrete Java code. We use separation logic to reason about local correctness and define abstractions of the communication protocol in the process algebra used by mCRL2. We call these abstractions futures as they predict how components will interact during program execution. We establish a provable link between futures and program code and analyse the abstract futures via model checking to prove global correctness. Finally, we verify a leader election protocol to demonstrate our approach.
    Original languageEnglish
    Title of host publicationProceedings PLACES 2016
    EditorsDominic Orchard, Nobuko Yoshida
    Pages65-72
    Number of pages8
    DOIs
    Publication statusPublished - Apr 2016
    EventNinth Workshop on Programming Language Approaches to Concurrency- and Communication-cEntric Software, PLACES 2016 - Eindhoven, Netherlands
    Duration: 8 Apr 20168 Apr 2016
    Conference number: 9

    Workshop

    WorkshopNinth Workshop on Programming Language Approaches to Concurrency- and Communication-cEntric Software, PLACES 2016
    Abbreviated titlePLACES 16
    CountryNetherlands
    CityEindhoven
    Period8/04/168/04/16
    OtherWorkshop affiliated with ETAPS 2016

    Keywords

    • IR-104114
    • EWI-27672

    Fingerprint Dive into the research topics of 'Future-based Static Analysis of Message Passing Programs'. Together they form a unique fingerprint.

  • Cite this

    Oortwijn, W. H. M., Blom, S., & Huisman, M. (2016). Future-based Static Analysis of Message Passing Programs. In D. Orchard, & N. Yoshida (Eds.), Proceedings PLACES 2016 (pp. 65-72) https://doi.org/10.4204/EPTCS.211.7