Completing the temporal picture
Selected papers of the 16th international colloquium on Automata, languages, and programming
Patterns in property specifications for finite-state verification
Proceedings of the 21st international conference on Software engineering
Designing safe software for medical devices
Proceedings of the 21st international conference on Software engineering
IEEE Software
NUSMV: A New Symbolic Model Verifier
CAV '99 Proceedings of the 11th International Conference on Computer Aided Verification
Spin model checker, the: primer and reference manual
Spin model checker, the: primer and reference manual
A Technique for Using Model Checkers to Teach Formal Specifications
CSEET '08 Proceedings of the 2008 21st Conference on Software Engineering Education and Training
Automated Testing of LTL Formula Generation by Prospec
HASE '10 Proceedings of the 2010 IEEE 12th International Symposium on High-Assurance Systems Engineering
Towards support for software model checking: improving the efficiency of formal specifications
Advances in Software Engineering
Network OAM requirements for the New York City transit network
IEEE Communications Magazine
Hi-index | 0.00 |
Formal verification approaches that check software correctness against formal specifications have been shown to improve program dependability. Tools such as Specification Pattern System (SPS) and Property Specification (Prospec) support the generation of formal specifications. SPS has defined a set of patterns (common recurring properties) and scopes (system states over which a pattern must hold) that allows a user to generate formal specifications by using direct substitution of propositions into parameters of selected patterns and scopes. Prospec extended SPS to support the definition of patterns and scopes that include the ability to specify parameters with multiple propositions (referred to as composite propositions or CPs), allowing the specification of sequential and concurrent behavior. Prospec generates formal specifications in Future Interval Logic (FIL) using direct substitution of CPs into pattern and scope parameters. While substitution works trivially for FIL, it does not work for Linear Temporal Logic (LTL), a highly expressive language that supports specification of software properties such as safety and liveness. LTL is important because of its use in the model checker Spin, the ACM 2001 system Software Award winning tool, and NuSMV. This paper introduces abstract LTL templates to support automated generation of LTL formulas for complex properties in Prospec. In addition, it presents formal proofs and testing to demonstrate that the templates indeed generate the intended LTL formulas.