2005
DOI: 10.1007/s10270-003-0042-x
|View full text |Cite
|
Sign up to set email alerts
|

Formal verification of software source code through semi-automatic modeling

Abstract: We describe the experience of modeling and formally verifying a software cache algorithm using the model checker RuleBase. Contrary to prevailing wisdom, we used a highly detailed model created directly from the C code itself, rather than a high-level abstract model.

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
5
0

Year Published

2009
2009
2018
2018

Publication Types

Select...
4
2
1

Relationship

2
5

Authors

Journals

citations
Cited by 8 publications
(5 citation statements)
references
References 41 publications
0
5
0
Order By: Relevance
“…It becomes common that model checkers work directly on the source code of software implementations rather than on a model provided by a user or a standard. We can the model checkers BLAST and SLAM [Eisner 2005;Gunter and Peled 2005], which work on C source code. For Java programs, we mention Bandera [Corbett et al 2000] and Java PathFinder [Havelund and Pressburger 2000], and for C++ programs Verisoft [Godefroid 1997].…”
Section: Verification Techniquesmentioning
confidence: 99%
“…It becomes common that model checkers work directly on the source code of software implementations rather than on a model provided by a user or a standard. We can the model checkers BLAST and SLAM [Eisner 2005;Gunter and Peled 2005], which work on C source code. For Java programs, we mention Bandera [Corbett et al 2000] and Java PathFinder [Havelund and Pressburger 2000], and for C++ programs Verisoft [Godefroid 1997].…”
Section: Verification Techniquesmentioning
confidence: 99%
“…An example of the former is [Eisner 2005] who reports success applying symbolic model-checking to a C program implementing a cache. Reference [King et al 2000] reports that proving conformance of a large safety-critical system written in Spark ADA to its Z specification proved more effective in finding faults than testing, because people involved in proof construction had to understand what is being proven.…”
Section: Automated Reasoningmentioning
confidence: 99%
“…We have already mentioned BLAST and SLAM [Eisner 2005;Gunter and Peled 2005] which operate on C source code. Model checkers for Java code include Bandera [Corbett et al 2000], Java PathFinder [Havelund and Pressburger 1998] and SAL [Park et al 2000], which combine model checking with abstraction and theorem proving techniques, too.…”
Section: Formal Verification and Testingmentioning
confidence: 99%
“…Using these, we set up our model checking problem as follows. We compile a pair of benefit code functions into an smv [7] model constructed in a straightforward manner, similar to the method described in [5,6]. A dedicated state variable keeps track of the control flow, whose behavior may depend on the value of other state variables.…”
Section: Model Checking Setupmentioning
confidence: 99%