2017 32nd IEEE/ACM International Conference on Automated Software Engineering (ASE) 2017
DOI: 10.1109/ase.2017.8115670
|View full text |Cite
|
Sign up to set email alerts
|

Floating-point symbolic execution: A case study in N-version programming

Abstract: Abstract-Symbolic execution is a well-known program analysis technique for testing software, which makes intensive use of constraint solvers. Recent support for floating-point constraint solving has made it feasible to support floating-point reasoning in symbolic execution tools. In this paper, we present the experience of two research teams that independently added floating-point support to KLEE, a popular symbolic execution engine. Since the two teams independently developed their extensions, this created th… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
12
0

Year Published

2018
2018
2021
2021

Publication Types

Select...
5
1
1

Relationship

2
5

Authors

Journals

citations
Cited by 28 publications
(12 citation statements)
references
References 44 publications
0
12
0
Order By: Relevance
“…However, as it is a testing based verification argument, it cannot be considered to be complete. [41] used a similar technique successfully in a more limited setting without the emphasis on ground truth.…”
Section: Correctnessmentioning
confidence: 99%
“…However, as it is a testing based verification argument, it cannot be considered to be complete. [41] used a similar technique successfully in a more limited setting without the emphasis on ground truth.…”
Section: Correctnessmentioning
confidence: 99%
“…The KLEE symbolic execution engine [9] has support for floating-point programs [26] through an interface to Z3's floating-point theory [8]. This theory is also based on IEEE 754 and will thus not be able to verify the kind of optimizations that Icing supports.…”
Section: Related Workmentioning
confidence: 99%
“…More generally, some of these patches require a precise environmental model (KLEE's model is incomplete, e.g., it lacks the ability to handle symbolic directories), and at least one patch requires support for symbolic floating-point values (which KLEE does not provide). However, one could implement Shadow in other symbolic execution engines, such as in Cloud9 [6], which extends KLEE with a more comprehensive environmental model, or in one of the recent extensions of KLEE for floating point [23].…”
Section: Unsuccessful Executionsmentioning
confidence: 99%