Realizability and verification of MSC graphs

  • Authors:
  • Rajeev Alur;Kousha Etessami;Mihalis Yannakakis

  • Affiliations:
  • Department of Computer and Information Science, University of Pennsylvania, 3330 Walnut Street, Philadelphia, PA;Laboratory for Foundations of Computer Science, School of Informatics, The King's Buildings, Mayfield Road, Edinburg EH9 3JZ, Scotland, UK;Department of Computer Science, Columbia University, 1214 Amsterdam Avenue, New York, NY

  • Venue:
  • Theoretical Computer Science - Automata, languages and programming
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Scenario-based specifications such as message sequence charts (MSC) offer an intuitive and visual way to describe design requirements. MSC-graphs allow convenient expression of multiple scenarios, and can be viewed as an early model of the system that can be subjected to a variety of analyses. Problems such as LTL model checking are undecidable for MSC-graphs in general, but are known to be decidable for the class of bounded MSC-graphs.Our first set of results concerns checking realizability of bounded MSC-graphs. An MSC-graph is realizable if there is a distributed implementation that generates precisely the behaviors in the graph. There are two notions of realizability, weak and safe, depending on whether or not we require the implementation to be deadlock-free. It is known that for a finite set of MSCs, weak realizability is coNP-complete while safe realizability has a polynomial-time solution. We establish that for bounded MSC-graphs, weak realizability is, surprisingly, undecidable, while safe realizability is in EXPSPACE.Our second set of results concerns verification of MSC-graphs. While checking properties of a graph G, besides verifying all the scenarios in the set L(G) of MSCs specified by G, it is desirable to verify all the scenarios in the set Lw(G)--the closure of G, that contains the implied scenarios that any distributed implementation of G must include. For checking whether a given MSC M is a possible behavior, checking M ∈ L(G) is NP-complete, but checking M ∈ Lw(G) has a quadratic solution. For temporal logic specifications, considering the closure makes the verification problem harder: while checking LTL properties of L(G) is PSPACE-complete for bounded graphs G, checking even simple "local" properties of Lw(G) is undecidable.