Graph-Based Algorithms for Boolean Function Manipulation
IEEE Transactions on Computers
A practical algorithm for exact array dependence analysis
Communications of the ACM
Deciding Presburger Arithmetic by Model Checking and Comparisons with Other Methods
FMCAD '02 Proceedings of the 4th International Conference on Formal Methods in Computer-Aided Design
Decision Procedures: An Algorithmic Point of View
Decision Procedures: An Algorithmic Point of View
Efficient Craig Interpolation for Linear Diophantine (Dis)Equations and Linear Modular Equations
CAV '08 Proceedings of the 20th international conference on Computer Aided Verification
A Quantifier Elimination Algorithm for Linear Real Arithmetic
LPAR '08 Proceedings of the 15th International Conference on Logic for Programming, Artificial Intelligence, and Reasoning
A decision procedure for bit-vectors and arrays
CAV'07 Proceedings of the 19th international conference on Computer aided verification
Extending quantifier elimination to linear inequalities on bit-vectors
TACAS'13 Proceedings of the 19th international conference on Tools and Algorithms for the Construction and Analysis of Systems
Solving difference constraints over modular arithmetic
CADE'13 Proceedings of the 24th international conference on Automated Deduction
Hi-index | 0.00 |
We present a layered bit-blasting-free algorithm for existentially quantifying variables from conjunctions of linear modular (bitvector) equations (LMEs) and disequations (LMDs). We then extend our algorithm to work with arbitrary Boolean combinations of LMEs and LMDs using two approaches - one based on decision diagrams and the other based on SMT solving. Our experiments establish conclusively that our technique significantly outperforms alternative techniques for eliminating quantifiers from systems of LMEs and LMDs in practice.