Table of Contents
Fetching ...

d-DNNF Modulo Theories: A General Framework for Polytime SMT Queries

Gabriele Masina, Emanuale Civini, Massimo Michelutti, Giuseppe Spallitta, Roberto Sebastiani

TL;DR

This paper presents for the first time a novel and general technique to leverage d-DNNF compilation and querying to SMT level, and implements a tool on top of state-of-the-art d-DNNF packages and of the MathSAT SMT solver.

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.

d-DNNF Modulo Theories: A General Framework for Polytime SMT Queries

TL;DR

This paper presents for the first time a novel and general technique to leverage d-DNNF compilation and querying to SMT level, and implements a tool on top of state-of-the-art d-DNNF packages and of the MathSAT SMT solver.

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.
Paper Structure (28 sections, 27 theorems, 11 equations, 8 figures, 3 algorithms)

This paper contains 28 sections, 27 theorems, 11 equations, 8 figures, 3 algorithms.

Key Result

Theorem 8

Let $\varphi_{}[{\boldsymbol\alpha}]$, $\varphi_{1}[{\boldsymbol\alpha}]$ and $\varphi_{2}[{\boldsymbol\alpha}]$ be $\mathcal{T}$-reduced $\mathcal{T}$-formulas. Let $\beta$ be some clause on ${\boldsymbol\alpha}$. Then we have the following facts.

Figures (8)

  • Figure 1: Different NNF representations for the formula $(\neg A_1\vee A_2)\wedge(\neg A_2\vee A_3)$: a NNF (left), a d-DNNF (center), and a sd-DNNF (right).
  • Figure 2: d-DNNF$\mathcal{T}$-formula with $\mathcal{T}$-inconsistent satisfying truth assignment (blue paths) from \ref{['ex:ddnnf-bad-assignment']} (left), and a $\mathcal{T}$-equivalent d-DNNF$\mathcal{T}$-formula with no $\mathcal{T}$-inconsistent satisfying truth assignment (right).
  • Figure 3: NNF representations for formulas in \ref{['ex:tredtext']}. Left: the NNF of $\varphi_{}[{\boldsymbol\alpha}]$; Center left: a d-DNNF of $\varphi_{}[{\boldsymbol\alpha}]$, i.e., $\textrm{d-DNNF}{(\varphi_{}[{\boldsymbol\alpha}])}$; Center right: a $\mathcal{T}$-reduced d-DNNF of $\varphi_{}[{\boldsymbol\alpha}]$, i.e., d-DNNF$_{{\boldsymbol\alpha}}^{\sf red}(\varphi_{}[{\boldsymbol\alpha}])$; Right: a $\mathcal{T}$-extended d-DNNF of $\varphi_{}[{\boldsymbol\alpha}]$, i.e., d-DNNF$_{{\boldsymbol\alpha}}^{\sf ext}(\varphi_{}[{\boldsymbol\alpha}])$.
  • Figure 4: Compilation times for $\mathcal{T}$-reduced NNFs. Top: cactus plots showing the total compilation time for d-DNNF (left), OBDD (center), and SDD (right). We also show the time for lemma enumeration (blue) and Boolean compilation (orange) for each instance. For d-DNNF, the green and blue lines overlap; for OBDD and SDD, instead, the green and orange lines overlap. We only show instances compiled within the timeout. Bottom: Number of timeouts for each compilation step.
  • Figure 5: Size of the compiled $\mathcal{T}$-reduced d-DNNFs (left), OBDDs (center), and SDDs (right) vs size of the input formulas. The size of the input formulas is measured as the number of nodes in their DAG representation.
  • ...and 3 more figures

Theorems & Definitions (42)

  • Remark 1
  • Example 2
  • Definition 3: $H_{{\boldsymbol\alpha}}(\varphi{})$,$P_{{\boldsymbol\alpha}}(\varphi{})$ micheluttiCanonicalDecisionDiagrams2024
  • Example 4
  • Definition 5: $\mathcal{T}$-reduced $\mathcal{T}$-formula
  • Example 6
  • Example 7
  • Theorem 8
  • Definition 9: $\mathcal{T}$-extended $\mathcal{T}$-formula
  • Example 10
  • ...and 32 more