Towards Projected and Incremental Pseudo-Boolean Model Counting
Suwei Yang, Kuldeep S. Meel
TL;DR
This work introduces PBCount2, the first exact PB model counter with native support for both projected and incremental model counting. It combines a novel LOW-MD variable ordering with a caching mechanism to efficiently merge PB constraints, project away variables, and reuse intermediate results across incremental changes. The approach is grounded in an $X,Y$-graded project join tree framework and ADD-based representations, ensuring correctness for projected PB counting. Empirical results show PBCount2 outperforming state-of-the-art projected CNF solvers and PB counters on diverse benchmarks, highlighting practical gains for applications requiring projections and incremental updates in PB formulations.
Abstract
Model counting is a fundamental task that involves determining the number of satisfying assignments to a logical formula, typically in conjunctive normal form (CNF). While CNF model counting has received extensive attention over recent decades, interest in Pseudo-Boolean (PB) model counting is just emerging partly due to the greater flexibility of PB formulas. As such, we observed feature gaps in existing PB counters such as a lack of support for projected and incremental settings, which could hinder adoption. In this work, our main contribution is the introduction of the PB model counter PBCount2, the first exact PB model counter with support for projected and incremental model counting. Our counter, PBCount2, uses our Least Occurrence Weighted Min Degree (LOW-MD) computation ordering heuristic to support projected model counting and a cache mechanism to enable incremental model counting. In our evaluations, PBCount2 completed at least 1.40x the number of benchmarks of competing methods for projected model counting and at least 1.18x of competing methods in incremental model counting.
