Litcius/Paper detail

Tseitin or not Tseitin? The Impact of CNF Transformations on Feature-Model Analyses

Elias Kuiter, Sebastian Krieter, Chico Sundermann, Thomas Thüm, Gunter Saake

202224 citationsDOIOpen Access PDF

Abstract

Feature modeling is widely used to systematically model features of variant-rich software systems and their dependencies. By translating feature models into propositional formulas and analyzing them with solvers, a wide range of automated analyses across all phases of the software development process become possible. Most solvers only accept formulas in conjunctive normal form (CNF), so an additional transformation of feature models is often necessary. However, it is unclear whether this transformation has a noticeable impact on analyses. In this paper, we compare three transformations (i.e., distributive, Tseitin, and Plaisted-Greenbaum) for bringing feature-model formulas into CNF. We analyze which transformation can be used to correctly perform feature-model analyses and evaluate three CNF transformation tools (i.e., FeatureIDE, KConfigReader, and Z3) on a corpus of 22 real-world feature models. Our empirical evaluation illustrates that some CNF transformations do not scale to complex feature models or even lead to wrong results for model-counting analyses. Further, the choice of the CNF transformation can substantially influence the performance of subsequent analyses.

Topics & Concepts

Feature (linguistics)Transformation (genetics)Computer scienceModel transformationFeature modelProcess (computing)Distributive propertyConjunctive normal formSoftwareArtificial intelligenceData miningTheoretical computer scienceProgramming languageMathematicsConsistency (knowledge bases)ChemistryBiochemistryPhilosophyGeneLinguisticsPure mathematicsAdvanced Software Engineering MethodologiesSoftware Engineering ResearchModel-Driven Software Engineering Techniques
Tseitin or not Tseitin? The Impact of CNF Transformations on Feature-Model Analyses | Litcius