Prototypes of trace specifications
Date
1988
Authors
Wang, Yabo
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
In large and complex software systems, precise abstract software specification can play a very important role. For specifications written in a formal language, the existence of a prototype provides significant benefits. Although such prototypes are usually inefficient, they can help the users and specifier gain insight. To be practical, it is crucial that these prototypes can be constructed cheaply and with confidence in their correctness. This thesis presents a scheme for quickly and reliably constructing Prolog prototypes from trace specifications. The interfaces that make prototypes easy to access are also described.
A prototype thus built can help the users and specifier to understand and verify the behavior described by a specification. However, not until the correctness of the prototype can be proved, can we be sure that its behavior meets its specification. For prototypes built in an ad hoc manner, the proofs must be ad hoc as well. For prototypes built by our scheme, we present a corresponding proof scheme for proving prototype correctness.
Some software modules require some of their return values to be non-deterministic. It is desirable that we can verify that their specifications reflect the correct module behavior. A straightforward scheme to check whether a specification is deterministic is discussed.