LEX : a case study in development and validation of formal specifications

Abstract

The paper describes an experiment in the combined use of various tools for the development and validation of formal specifications. The first tool consists of a very abstract, (non-executable) axiomatic specification language. The second tool consists of an (executable) constructive specification language. Finally, the third tool is a verification system. The first two tools were used to develop two specifications for the same case study, viz. a generic scanner similar to the tool LEX present in UNIX. Reflecting the nature of the tools the first specification is abstract and non-executable, whereas the second specification is less abstract but executable. Thereupon the verification system was used to formally prove that the second specification is consistent with the first in that it describes the same problem. During this proof it appeared that both specifications contained conceptual errors (adequacy errors). It is argued that the combined use of tools similar to those employed in the experiment may substantially increase the quality of the software developed

Similar works

This paper was published in Acronym.

Having an issue?

Is data on this page outdated, violates copyrights or anything else? Report the problem now and we will take corresponding actions after reviewing your request.