The BDD model plugin provides the metaclases required to work with SAT models and to transform feature models into BDD.
Description
This plugin supports Binary Decision Diagrams (BDDs) representations for feature models.
This is the architecture followed by this plugin:
The BDD plugin relies on the dd library to manipulate BDDs. The complete documentation of such library is available here.
The following is an example of feature model and its BDD using complemented arcs.
Objectives
The core plugin provides the following functionallity
- Storage and manipulation of BDD
- Read and store of BDD models
- Implement operations that require a complex analysis
- Transform feature models into BDD models
Operations
Currently, this plugin enables the following operations.
- Sampling
- Feature Inclusion Probability
- Product distribution
- List products
- Products number
- Uniform sampling
Transformations supported
Currently this plugins enables a set of transformations for CNF and feaute models. Concretely we support:
Format/model | Model2Model | Model2Text | Text2Model |
---|---|---|---|
Feature model | [x] | ||
BDD | [x] |
Repository
You can find the repository of this plugin in HERE