Tools and Algorithms for the Construction and Analysis of Systems
DOI: 10.1007/978-3-540-71209-1_28
|View full text |Cite
|
Sign up to set email alerts
|

Deciding Bit-Vector Arithmetic with Abstraction

Abstract: Abstract. We present a new decision procedure for finite-precision bitvector arithmetic with arbitrary bit-vector operations. Our procedure alternates between generating under-and over-approximations of the original bit-vector formula. An under-approximation is obtained by a translation to propositional logic in which some bit-vector variables are encoded with fewer Boolean variables than their width. If the underapproximation is unsatisfiable, we use the unsatisfiable core to derive an over-approximation base… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
77
0

Publication Types

Select...
8

Relationship

2
6

Authors

Journals

citations
Cited by 77 publications
(77 citation statements)
references
References 14 publications
0
77
0
Order By: Relevance
“…Modern languages typically provide fixed-width numeric types, such as 32bit twos-compliment integers, or 64-bit IEEE 754 floating point numbers. Such data types are notoriously difficult for an automated theorem prover to reason about [22]. Systems like JML and Spec# assume (unsoundly) that numeric types do not overflow or suffer from rounding.…”
Section: Flowmentioning
confidence: 99%
“…Modern languages typically provide fixed-width numeric types, such as 32bit twos-compliment integers, or 64-bit IEEE 754 floating point numbers. Such data types are notoriously difficult for an automated theorem prover to reason about [22]. Systems like JML and Spec# assume (unsoundly) that numeric types do not overflow or suffer from rounding.…”
Section: Flowmentioning
confidence: 99%
“…4.3 An Illustrative Example Assume the first executed trace is π 1 = (1, 0.1), (1, 1.1), (1, 2.1), (1, 3), (1, 0.2), (1, 1.2), (1, 2.2), (1,5), (1,6), (2,13), (2,14), (2,15), (2,16), (3,13), (3,14), (3,15), (3,16),…”
Section: Avoid Redundant Checksmentioning
confidence: 99%
“…A more complete survey of current and past bit-vector decision procedures can be found in recent articles (e.g. [5]) and the SMT-COMP'08 results [14].…”
Section: Related Workmentioning
confidence: 99%
“…MathSAT [4] and Z3 [6] are based on bit-blasting using several wordlevel simplifications; we were unable to find a detailed exposition of which of these simplifications were the most useful. Finally, UCLID [5] uses an abstraction-refinement approach to solving bit-vector formulas, into which any model-generating SMT solver for QF BV, including BEAVER, can be easily integrated.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation