Real-Time Systems Group

The University of Pennsylvania


VERSA: Verification Execution and Rewrite System for ACSR

To facilitate the use of the Algebra of Communicating Shared Resources (
ACSR) in the design and analysis of real-time systems we have developed an integrated set of tools called VERSA (Verification, Execution and Rewrite System for ACSR). VERSA supports three types of analysis techniques:
  1. Application of rewriting rules to ACSR specifications to deduce system properties.
  2. Construction of a state machine and automatic exploration and analysis of the state space to verify safety properties and test equivalence of alternative process formulations.
  3. Interactive execution of the process specification to explore specific system behaviors and sample the execution traces of the system.

VERSA extends the basic ACSR syntax with a number of notational conventions borrowed from programming languages. Specifications can be broken up into logical components and recombined using file inclusion. Symbolic constants and macros can be defined using a #define notation similar to the C programming language. Indexed process variable names, resource names, and event labels are allowed. Indexed composition and set construction operators are provided for operating on sets of indexed names.

The basic VERSA system has a command oriented interface for inputting process descriptions, binding them to identifiers, and operating on them. There is also a version of VERSA with an X/Motif user interface known as X-VERSA. X-VERSA doesn't support indexed names, but it does provide a point-and-click interface that dramatically improves the usability of the algebraic term rewriting facility.

VERSA and X-VERSA are implemented in C++. The Lex and Yacc compiler construction tools, the LEDA class library, and the libg++ and X/Motif libraries were used extensively to enhance portability. The use of a low-level programming language and the most current algorithms state machine construction and bisimulation testing has resulted in performance that compares very favorably with existing process algebra analysis toolkits.

Obtaining VERSA

VERSA is available via ftp. Relevant files are as follows:

References

Examples

Further Information


versa@saul.cis.upenn.edu 11/27/95