Pseudo-Boolean d-DNNF Compilation for Expressive Feature Modeling Constructs
Chico Sundermann, Stefan Vill, Elias Kuiter, Sebastian Krieter, Thomas Th\"um, Matthias Tichy

TL;DR
This paper introduces a pseudo-Boolean encoding and a novel compilation method to efficiently analyze complex feature models with expressive constructs, outperforming traditional CNF-based approaches.
Contribution
It presents a new pseudo-Boolean encoding for feature models and a compilation technique to Boolean d-DNNF, enabling faster reasoning on expressive feature-modeling constructs.
Findings
Pseudo-Boolean encoding results in smaller representations.
Compilation to d-DNNF accelerates analysis of complex models.
Approach outperforms CNF-based methods across datasets.
Abstract
Configurable systems typically consist of reusable assets that have dependencies between each other. To specify such dependencies, feature models are commonly used. As feature models in practice are often complex, automated reasoning is typically employed to analyze the dependencies. Here, the de facto standard is translating the feature model to conjunctive normal form (CNF) to enable employing off-the-shelf tools, such as SAT or #SAT solvers. However, modern feature-modeling dialects often contain constructs, such as cardinality constraints, that are ill-suited for conversion to CNF. This mismatch between the input of reasoning engines and the available feature-modeling dialects limits the applicability of the more expressive constructs. In this work, we shorten this gap between expressive constructs and scalable automated reasoning. Our contribution is twofold: First, we provide a…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Software Engineering Methodologies · Model-Driven Software Engineering Techniques · Software System Performance and Reliability
