On Intervals and Bounds in Bit-vector Arithmetic
暂无分享,去创建一个
Bit-vector arithmetic operations rely on modular arithmetic semantics, which often complicates algebraic manipulations. One such example are inequalities. Satisfiability of a system of modular inequalities is NP-complete [1]. In this memo we investigate a simple type of inequalities: only one variable is permitted and there are no multiplications. Satisfiability is solved in polynomial time by translating the problem into conjunctions of positive and negative intervals. This lets us decide systems of such inequalities but also identify uniqueness of solution and remove redundancies. This approach can be used to preprocess bit-vector problems and might also be useful in connection with other approaches, such as abstract interpretation [3,2].
[1] Thomas W. Reps,et al. Abstract Domains of Affine Relations , 2011, SAS.
[2] Thomas Reps,et al. An Abstract Domain for Bit-Vector Inequalities , 2013 .
[3] Nikolaj Bjørner,et al. Modular difference logic is hard , 2008, ArXiv.