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

A Solver for Reachability Modulo Theories

Abstract: Consider a sequential programming language with control flow constructs such as assignments, choice, loops, and procedure calls. We restrict the syntax of expressions in this language to one that can be efficiently decided by a satisfiability-modulo-theories solver. For such a language, we define the problem of deciding whether a program can reach a particular control location as the reachability-modulo-theories problem. This paper describes the architecture of Corral, a semi-algorithm for the reachability-mod… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

1
103
0
1

Year Published

2012
2012
2020
2020

Publication Types

Select...
8
1

Relationship

1
8

Authors

Journals

citations
Cited by 119 publications
(105 citation statements)
references
References 30 publications
(44 reference statements)
1
103
0
1
Order By: Relevance
“…Finally, SMT-based reachability analysis has been used in software testing in tools such as KLEE [16] for symbolic execution and constraint solving, finding possible inputs that will cause a program to crash and outputting these as test cases, and SMT-CBMC [3] and Corral [42] for bounded model checking where unbounded types are represented by built-in variables and the syntax of expressions is restricted so that it can be efficiently decided by SMT solving. See [17] for a comprehensive account of symbolic techniques for reachability analysis in software testing, including SMT-based ones.…”
Section: Related Work and Concluding Remarksmentioning
confidence: 99%
“…Finally, SMT-based reachability analysis has been used in software testing in tools such as KLEE [16] for symbolic execution and constraint solving, finding possible inputs that will cause a program to crash and outputting these as test cases, and SMT-CBMC [3] and Corral [42] for bounded model checking where unbounded types are represented by built-in variables and the syntax of expressions is restricted so that it can be efficiently decided by SMT solving. See [17] for a comprehensive account of symbolic techniques for reachability analysis in software testing, including SMT-based ones.…”
Section: Related Work and Concluding Remarksmentioning
confidence: 99%
“…The first scheme for an arbitrary but bounded number of context switches was given in [24]. Since then, several algorithms and implementations have been developed (see [9,23,3,20,19,33]). Lazy sequentialization schemes have played an important role in the development of efficient tools.…”
Section: Related Workmentioning
confidence: 99%
“…Then Alive passes P and a bounding parameter K ∈ N to our AsyncChecker delay-bounded asynchronous program analysis tool [9] which attempts to determine whether the assertion can be violated (in an execution using at most K delay operations, per task). AsyncChecker essentially performs a variation of our delay-bounded translation of Section 3.3-which results in a sequential Boogie program-and hands the resulting program P to the Corral SMT-based bounded model checker [14] to detect assertion violations.…”
Section: Experiencementioning
confidence: 99%
“…Our relatively easy-to-implement prototype leverages existing SMT-based program verification tools [14], and as far as we are aware, is the first tool which can automatically detect divergence in distributed asynchronous programs.…”
Section: Introductionmentioning
confidence: 99%