Abstract.
A program slice consists of the parts of a program that may affect or are affected by the value being computed at the point of interest. Recent work in slicing concurrent programs examines how synchronization, communication, and non-determinism (along with traditional control and data dependence) affect values at certain program points. We are extending this work to slice the Promela programming language, used to specify protocols for the Spin model checker. An application of slicing may be its usefulness in paring down protocol descriptions to just the pieces that affect particular points of interest. Model checking and simulation of the pared-down protocol may, in some cases, be much more efficient. We present program slicing as a tool that, along with model checking and simulation techniques, can facilitate understanding and debugging of protocols.
Similar content being viewed by others
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Millett, L., Teitelbaum, T. Issues in slicing PROMELA and its applications to model checking, protocol understanding, and simulation. STTT 2, 343–349 (2000). https://doi.org/10.1007/s100090050041
Issue Date:
DOI: https://doi.org/10.1007/s100090050041