Theory of linear and integer programming
Theory of linear and integer programming
Exact arithmetic at low cost—a case study in linear programming
Proceedings of the ninth annual ACM-SIAM symposium on Discrete algorithms
Certifying and repairing solutions to large LPs how good are LP-solvers?
SODA '03 Proceedings of the fourteenth annual ACM-SIAM symposium on Discrete algorithms
SAT modulo the theory of linear arithmetic: exact, inexact and commercial solvers
SAT'08 Proceedings of the 11th international conference on Theory and applications of satisfiability testing
TACAS'08/ETAPS'08 Proceedings of the Theory and practice of software, 14th international conference on Tools and algorithms for the construction and analysis of systems
A fast linear-arithmetic solver for DPLL(T)
CAV'06 Proceedings of the 18th international conference on Computer Aided Verification
Exact solutions to linear programming problems
Operations Research Letters
Operations Research Letters
A bit too precise? bounded verification of quantized digital filters
TACAS'12 Proceedings of the 18th international conference on Tools and Algorithms for the Construction and Analysis of Systems
Combining time and frequency domain specifications for periodic signals
RV'11 Proceedings of the Second international conference on Runtime verification
Hi-index | 0.00 |
We consider the decision problem for quantifier-free formulas whose atoms are linear inequalities interpreted over the reals or rationals. This problem may be decided using satisfiability modulo theory (SMT), using a mixture of a SAT solver and a simplex-based decision procedure for conjunctions. State-of-the-art SMT solvers use simplex implementations over rational numbers, which perform well for typical problems arising from model-checking and program analysis (sparse inequalities, small coefficients) but are slow for other applications (denser problems, larger coefficients). We propose a simple preprocessing phase that can be adapted to existing SMT solvers and that may be optionally triggered. Despite using floating-point computations, our method is sound and complete -- it merely affects efficiency. We implemented the method and provide benchmarks showing that this change brings a naive and slow decision procedure ("textbook simplex" with rational numbers) up to the efficiency of recent SMT solvers, over test cases arising from model-checking, and makes it definitely faster than state-of-the-art SMT solvers on dense examples.