201. The Proof Complexity of SMT Solvers
- Author
-
Vijay Ganesh, Antonina Kolokolova, and Robert Robere
- Subjects
Discrete mathematics ,Exponential time hypothesis ,Reduction (recursion theory) ,Literal (mathematical logic) ,Computer science ,Proof complexity ,010102 general mathematics ,02 engineering and technology ,Binary logarithm ,01 natural sciences ,Ackermann function ,Lift (mathematics) ,Satisfiability modulo theories ,0202 electrical engineering, electronic engineering, information engineering ,020201 artificial intelligence & image processing ,0101 mathematics - Abstract
The resolution proof system has been enormously helpful in deepening our understanding of conflict-driven clause-learning (\(\mathsf {CDCL}\)) SAT solvers. In the interest of providing a similar proof complexity-theoretic analysis of satisfiability modulo theories (SMT) solvers, we introduce a generalization of resolution called Res(T). We show that many of the known results comparing resolution and \(\mathsf {CDCL}\) solvers lift to the SMT setting, such as the result of Pipatsrisawat and Darwiche showing that \(\mathsf {CDCL}\) solvers with “perfect” non-deterministic branching and an asserting clause-learning scheme can polynomially simulate general resolution. We also describe a stronger version of Res(T), \(\mathsf {Res}^*\)(T), capturing SMT solvers allowing introduction of new literals. We analyze the theory EUF of equality with uninterpreted functions, and show that the \(\mathsf {Res}^*(\mathrm {EUF})\) system is able to simulate an earlier calculus introduced by Bjorner and de Moura for the purpose of analyzing \(\mathsf {DPLL}\)(EUF). Further, we show that \(\mathsf {Res}^*(\mathrm {EUF})\) (and thus SMT algorithms with clause learning over EUF, new literal introduction rules and perfect branching) can simulate the Frege proof system, which is well-known to be far more powerful than resolution. Finally, we prove under the Exponential Time Hypothesis (ETH) that any reduction from EUF to SAT (such as the Ackermann reduction) must, in the worst case, produce an instance of size \(\varOmega (n \log n)\) from an instance of size n.
- Published
- 2018
- Full Text
- View/download PDF