Assumption generation for software component verification
- 1 January 2002
- proceedings article
- Published by Institute of Electrical and Electronics Engineers (IEEE)
Abstract
Model checking is an automated technique that can be used to determine whether a system satisfies certain required properties. The typical approach to verifying properties of software components is to check them for all possible environments. In reality, however, a component is only required to satisfy properties in specific environments. Unless these environments are formally characterized and used during verification (assume-guarantee paradigm), the resultsreturned by verification can be overly pessimistic. This work defines a framework that brings a new dimension to model checking of software components. When checking a component against a property, our model checking algorithms return one of the following three results: the component satisfies a property for any environment; the component violates the property for any environment; or finally, our algorithms generate an assumption that characterizes exactly those environments in which the component satisfies its required property. Our approach has been implemented in the LTSA tool and has been applied to the analysis of a NASA application.Keywords
This publication has 26 references indexed in Scilit:
- Automatic synthesis of controllers from formal specificationsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Graphical animation of behavior modelsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Model matching for finite-state machinesIEEE Transactions on Automatic Control, 2001
- Interface automataPublished by Association for Computing Machinery (ACM) ,2001
- Behaviour Analysis of Software ArchitecturesPublished by Springer Nature ,1999
- The Need for Compositional Proof Systems: A SurveyPublished by Springer Nature ,1998
- Submodule construction as equation solving in CCSTheoretical Computer Science, 1989
- Implicit System Specification and the Interface EquationThe Computer Journal, 1989
- Constructing submodule specifications and network protocolsIEEE Transactions on Software Engineering, 1988
- On the Construction of Submodule Specifications and Communication ProtocolsACM Transactions on Programming Languages and Systems, 1983