A survey of automated techniques for formal software verification
The quality and the correctness of software are often the greatest concern in electronic
systems. Formal verification tools can provide a guarantee that a design is free of specific …
systems. Formal verification tools can provide a guarantee that a design is free of specific …
Model checking programs
The majority of work carried out in the formal methods community throughout the last three
decades has (for good reasons) been devoted to special languages designed to make it …
decades has (for good reasons) been devoted to special languages designed to make it …
The SLAM project: debugging system software via static analysis
The goal of the Slam project is to check whether or not a program obeys" API usage rules"
that specify what it means to be a good client of an API. The Slam toolkit statically analyzes a …
that specify what it means to be a good client of an API. The Slam toolkit statically analyzes a …
Automatic predicate abstraction of C programs
Model checking has been widely successful in validating and debugging designs in the
hardware and protocol domains. However, state-space explosion limits the applicability of …
hardware and protocol domains. However, state-space explosion limits the applicability of …
Automatically validating temporal safety properties of interfaces
We present a process for validating temporal safety properties of software that uses a well-
defined interface. The process requires only that the user state the property of interest. It then …
defined interface. The process requires only that the user state the property of interest. It then …
Modular verification of software components in C
We present a new methodology for automatic verification of C programs against finite state
machine specifications. Our approach is compositional, naturally enabling us to decompose …
machine specifications. Our approach is compositional, naturally enabling us to decompose …
Points-to analysis using BDDs
This paper reports on a new approach to solving a subset-based points-to analysis for Java
using Binary Decision Diagrams (BDDs). In the model checking community, BDDs have …
using Binary Decision Diagrams (BDDs). In the model checking community, BDDs have …
Modeling and verification of reactive systems using Rebeca
Actor-based modeling has been successfully applied to the representation of concurrent and
distributed systems. Besides having an appropriate and efficient way for modeling these …
distributed systems. Besides having an appropriate and efficient way for modeling these …
Software model checking: Extracting verification models from source code
GJ Holzmann, M H. Smith - Software Testing, Verification and …, 2001 - Wiley Online Library
To formally verify a large software application, the standard method is to invest a
considerable amount of time and expertise into the manual construction of an abstract …
considerable amount of time and expertise into the manual construction of an abstract …
An overview of formal methods tools and techniques
The goal of this chapter is to give an overview of the different approaches and tools
pertaining to formal methods. We do not attempt to be exhaustive, but focus instead on the …
pertaining to formal methods. We do not attempt to be exhaustive, but focus instead on the …