Proceedings Ninth Annual IEEE International Conference and Workshop on the Engineering of Computer-Based Systems
DOI: 10.1109/ecbs.2002.999823
|View full text |Cite
|
Sign up to set email alerts
|

A formal software verification concept based on automated theorem proving and reverse engineering

Abstract: Formal software verification typically involves some level of static theorem proving which is a mathematical process of proving that the function computed by a program match the function specified. A theorem prover, such as THEO automates this process. On the other hand, reverse engineering is a process inverse to traditional engineering. An example is extracting software specification from its source code. Both subjects have been widely addressed in literature but there is still the need for additional resear… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1

Citation Types

0
3
0

Publication Types

Select...
5
1

Relationship

1
5

Authors

Journals

citations
Cited by 10 publications
(3 citation statements)
references
References 17 publications
0
3
0
Order By: Relevance
“…The first is the use of model checking with software, and the second is the improvement of ATPs. One area of use for model checking is for reverse engineering a system [34]. Since automated implementation is not available yet for specifications written in formal methods, the reverse engineering process uses the implementation to move back to a specification, verifying it is correct with model checking, and then verifying the original specification and reverse engineering specification are correct with respect to each other.…”
Section: Related Workmentioning
confidence: 99%
“…The first is the use of model checking with software, and the second is the improvement of ATPs. One area of use for model checking is for reverse engineering a system [34]. Since automated implementation is not available yet for specifications written in formal methods, the reverse engineering process uses the implementation to move back to a specification, verifying it is correct with model checking, and then verifying the original specification and reverse engineering specification are correct with respect to each other.…”
Section: Related Workmentioning
confidence: 99%
“…are we building the right system [2] [3][4] [5]. Some techniques rely on formal specifications to describe structural properties [3] [6] or define runtime behaviour [7][8] of software systems. A benefit of using formal specifications is they are amenable to automated analysis which is faster, consistent, and less error prone.…”
Section: Introductionmentioning
confidence: 99%
“…The specification of FSM as a set of WFFs is used as axiom for a set of theorems, corresponding to individual test cases, used for formal verification of the software implementing an individual FSM or a group of FSMs [17]. In the beginning those theorems were written manually, in the perspective they will be generated automatically from the source code of a FSM, or a group of FSMs.…”
Section: Ide Conceptmentioning
confidence: 99%