🤖 AI Summary
This work proposes the first general framework that extends the efficient d-DNNF query capabilities from propositional knowledge compilation to the SMT setting, enabling polynomial-time queries over arbitrary theories and their combinations. The core approach integrates precomputed theory lemmas into the input formula prior to d-DNNF compilation, transforming the SMT formula into a form amenable to standard d-DNNF reasoning mechanisms. The framework is fully compatible with all d-DNNF variants and seamlessly integrates existing d-DNNF compilers with lemma-generation modules from mature SMT solvers such as MathSAT. Experimental results demonstrate that this method effectively enables polynomial-time SMT queries using off-the-shelf propositional d-DNNF reasoners, substantially broadening the applicability of knowledge compilation techniques in multi-theory environments.
📝 Abstract
In Knowledge Compilation (KC) a propositional knowledge base is compiled off-line into some target form, typically into deterministic decomposable negation normal form (d-DNNF) or one of its subcases, which is then used on-line to answer a large number of queries in polytime, such as clausal entailment, model counting, and others. The general idea is to push as much of the computational effort into the off-line compilation phase, which is amortized over all on-line polytime queries.
In this paper, we present for the first time a novel and general technique to leverage d-DNNF compilation and querying to SMT level. Intuitively, before d-DNNF compilation, the input SMT formula is combined with a list of pre-computed ad-hoc theory lemmas, so that the queries at SMT level reduce to those at propositional level. This approach has several features: (i) it works for every theory, or theory combination thereof; (ii) it works for all forms of d-DNNF; (iii) it is easy to implement on top of any d-DNNF compiler and any theory-lemma enumerator, which are used as black boxes; (iv) most importantly, these compiled SMT d-DNNFs can be queried in polytime by means of a standard propositional d-DNNF reasoner. We have implemented a tool on top of state-of-the-art d-DNNF packages and of the MathSAT SMT solver. Some preliminary empirical evaluation supports the effectiveness of the approach.