Interpreting Message Flow Graphs
- 1 September 1995
- journal article
- research article
- Published by Association for Computing Machinery (ACM) in Formal Aspects of Computing
- Vol. 7 (5) , 473-509
- https://doi.org/10.1007/bf01211629
Abstract
We give a semantics for Message Flow Graphs (MFGs), which play the role for interprocess communication that Program Dependence Graphs play for control flow in parallel processes. MFGs have been used to analyse parallel code, and are closely related to Message Sequence Charts and Time Sequence Diagrams in telecommunications systems. Our requirements are firstly, to determine unambiguously exactly what execution traces are specified by an MFG, and secondly, to use a finite-state interpretation. Our methods function for both asynchronous and synchronous communications. From a set of MFGs, we define a transition system of global states, and from that a Büchi automaton by considering safety and liveness properties of the system. In order easily to describe liveness properties, we interpret the traces of the transition system as a model of Manna-Pnueli temporal logic. Finally, we describe the expressive power of MFGs by mimicking an arbitrary Büchi automaton by means of a set of MFGs.Keywords
This publication has 26 references indexed in Scilit:
- The temporal logic of actionsACM Transactions on Programming Languages and Systems, 1994
- An Algebraic Semantics of Basic Message Sequence ChartsThe Computer Journal, 1994
- Formal verification of algorithms for critical systemsIEEE Transactions on Software Engineering, 1993
- The Esterel synchronous programming language: design, semantics, implementationScience of Computer Programming, 1992
- Temporal logic and applications—a tutorialComputer Networks and ISDN Systems, 1992
- Synchronous programming with events and relations: the SIGNAL language and its semanticsScience of Computer Programming, 1991
- Hybrid dynamical systems theory and the Signal languageIEEE Transactions on Automatic Control, 1990
- Verifying temporal properties without temporal logicACM Transactions on Programming Languages and Systems, 1989
- SDLPublished by Springer Nature ,1989
- Recognizing safety and livenessDistributed Computing, 1987