2012
DOI: 10.1007/978-3-642-32469-7_14
|View full text |Cite
|
Sign up to set email alerts
|

Checking Properties Described by State Machines: On Synergy of Instrumentation, Slicing, and Symbolic Execution

Abstract: Abstract. We introduce a novel technique for checking properties described by finite state machines. The technique is based on a synergy of three well-known methods: instrumentation, program slicing, and symbolic execution. More precisely, we instrument a given program with a code that tracks runs of state machines representing various properties. Next we slice the program to reduce its size without affecting runs of state machines. And then we symbolically execute the sliced program to find real violations of… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
6
0

Year Published

2013
2013
2024
2024

Publication Types

Select...
6
1
1

Relationship

3
5

Authors

Journals

citations
Cited by 19 publications
(6 citation statements)
references
References 36 publications
0
6
0
Order By: Relevance
“…Program transformations have been shown to increase the number of problems that a verifier can solve (see, e.g., [20]). In order to make program transformations reusable, and to simplify their development process, we developed the tool CEGAR-PT.…”
Section: Discussionmentioning
confidence: 99%
“…Program transformations have been shown to increase the number of problems that a verifier can solve (see, e.g., [20]). In order to make program transformations reusable, and to simplify their development process, we developed the tool CEGAR-PT.…”
Section: Discussionmentioning
confidence: 99%
“…The summed complexity of programming language constructs, the problem domain logic, and the resource handling may cause errors which are not easily detectable or reproducible [14]. Static analysis can be used to detect violations of such contracts [15].…”
Section: Program Pathmentioning
confidence: 99%
“…A hybrid implementation of FSM-based error detection is given by Slabý et al [15]. The authors use a multiphase analysis technique which employs flow-sensitive analysis and points-to analysis in the first phase to produce an instrumented version of the source code, which has the same semantics concerning the original problem it was specified for but initializes and triggers transition in a state machine that describes the problem to be detected.…”
Section: Related Workmentioning
confidence: 99%
“…The basic approach of Symbiotic remains unchanged [7]: it uses instrumentation to reduce checking of specific properties (e.g. no-overflow or memory safety) to checking reachability of error locations.…”
Section: Verification Approachmentioning
confidence: 99%