Using a Protean Language to Enhance Expressiveness in Specification

  • Authors:
  • Bard Bloom;Allan Cheng;Ashvin Dsouza

  • Affiliations:
  • IBM T. J. Watson Research Lab, Hawthorne, NY;BRICS, Daimi, Aarhus, Denmark;Chrysalis Symbolic Design, N. Billerica, MA

  • Venue:
  • IEEE Transactions on Software Engineering
  • Year:
  • 1997

Quantified Score

Hi-index 0.01

Visualization

Abstract

A Protean specification language [6] based on Structured Operational Semantics (SOS) allows the user to invent appropriate operations to improve abstraction and readability. This is in contrast to traditional specification languages, where the set of operations is fixed. An efficient algorithm, described in [10], uses binary decision diagrams (BDDs) to verify properties of finite specifications written in a Protean language and provides the basis for a model checker we have developed. This paper provides a synthesis of our work on Protean languages and relates the work to other specification techniques. We show how abstraction and refinement in the Protean framework can improve the effectiveness of model checking. We rewrite and verify properties of an existing Z specification by defining suitable operations. We also show how a Protean language can be used to model restricted I/O automata, action refinement, and 1-safe and k-bounded Petri nets.