DPMC: Weighted Model Counting by Dynamic Programming on Project-Join Trees

by   Jeffrey M. Dudek, et al.

We propose a unifying dynamic-programming framework to compute exact literal-weighted model counts of formulas in conjunctive normal form. At the center of our framework are project-join trees, which specify efficient project-join orders to apply additive projections (variable eliminations) and joins (clause multiplications). In this framework, model counting is performed in two phases. First, the planning phase constructs a project-join tree from a formula. Second, the execution phase computes the model count of the formula, employing dynamic programming as guided by the project-join tree. We empirically evaluate various methods for the planning phase and compare constraint-satisfaction heuristics with tree-decomposition tools. We also investigate the performance of different data structures for the execution phase and compare algebraic decision diagrams with tensors. We show that our dynamic-programming model-counting framework DPMC is competitive with the state-of-the-art exact weighted model counters cachet, c2d, d4, and miniC2D.


page 1

page 2

page 3

page 4


ADDMC: Exact Weighted Model Counting with Algebraic Decision Diagrams

We compute exact literal-weighted model counts of CNF formulas. Our algo...

DPO: Dynamic-Programming Optimization on Hybrid Constraints

In Bayesian inference, the most probable explanation (MPE) problem reque...

DPER: Dynamic Programming for Exist-Random Stochastic SAT

In Bayesian inference, the maximum a posteriori (MAP) problem combines t...

DPMS: An ADD-Based Symbolic Approach for Generalized MaxSAT Solving

Boolean MaxSAT, as well as generalized formulations such as Min-MaxSAT a...

Understanding model counting for β-acyclic CNF-formulas

We extend the knowledge about so-called structural restrictions of #SAT ...

Efficiently Charting RDF

We propose a visual query language for interactively exploring large-sca...

Join Query Optimization with Deep Reinforcement Learning Algorithms

Join query optimization is a complex task and is central to the performa...