-
Reasoning on Feature Models: Compilation-Based vs. Direct Approaches
Authors:
Pierre Bourhis,
Laurence Duchien,
Jérémie Dusart,
Emmanuel Lonca,
Pierre Marquis,
Clément Quinton
Abstract:
Analyzing a Feature Model (FM) and reasoning on the corresponding configuration space is a central task in Software Product Line (SPL) engineering. Problems such as deciding the satisfiability of the FM and eliminating inconsistent parts of the FM have been well resolved by translating the FM into a conjunctive normal form (CNF) formula, and then feeding the CNF to a SAT solver. However, this appr…
▽ More
Analyzing a Feature Model (FM) and reasoning on the corresponding configuration space is a central task in Software Product Line (SPL) engineering. Problems such as deciding the satisfiability of the FM and eliminating inconsistent parts of the FM have been well resolved by translating the FM into a conjunctive normal form (CNF) formula, and then feeding the CNF to a SAT solver. However, this approach has some limits for other important reasoning issues about the FM, such as counting or enumerating configurations. Two mainstream approaches have been investigated in this direction: (i) direct approaches, using tools based on the CNF representation of the FM at hand, or (ii) compilation-based approaches, where the CNF representation of the FM has first been translated into another representation for which the reasoning queries are easier to address. Our contribution is twofold. First, we evaluate how both approaches compare when dealing with common reasoning operations on FM, namely counting configurations, pointing out one or several configurations, sampling configurations, and finding optimal configurations regarding a utility function. Our experimental results show that the compilation-based is efficient enough to possibly compete with the direct approaches and that the cost of translation (i.e., the compilation time) can be balanced when addressing sufficiently many complex reasoning operations on large configuration spaces. Second, we provide a Java-based automated reasoner that supports these operations for both approaches, thus eliminating the burden of selecting the appropriate tool and approach depending on the operation one wants to perform.
△ Less
Submitted 14 February, 2023;
originally announced February 2023.
-
Pseudo Polynomial-Time Top-k Algorithms for d-DNNF Circuits
Authors:
Pierre Bourhis,
Laurence Duchien,
Jérémie Dusart,
Emmanuel Lonca,
Pierre Marquis,
Clément Quinton
Abstract:
We are interested in computing $k$ most preferred models of a given d-DNNF circuit $C$, where the preference relation is based on an algebraic structure called a monotone, totally ordered, semigroup $(K, \otimes, <)$. In our setting, every literal in $C$ has a value in $K$ and the value of an assignment is an element of $K$ obtained by aggregating using $\otimes$ the values of the corresponding li…
▽ More
We are interested in computing $k$ most preferred models of a given d-DNNF circuit $C$, where the preference relation is based on an algebraic structure called a monotone, totally ordered, semigroup $(K, \otimes, <)$. In our setting, every literal in $C$ has a value in $K$ and the value of an assignment is an element of $K$ obtained by aggregating using $\otimes$ the values of the corresponding literals. We present an algorithm that computes $k$ models of $C$ among those having the largest values w.r.t. $<$, and show that this algorithm runs in time polynomial in $k$ and in the size of $C$. We also present a pseudo polynomial-time algorithm for deriving the top-$k$ values that can be reached, provided that an additional (but not very demanding) requirement on the semigroup is satisfied. Under the same assumption, we present a pseudo polynomial-time algorithm that transforms $C$ into a d-DNNF circuit $C'$ satisfied exactly by the models of $C$ having a value among the top-$k$ ones. Finally, focusing on the semigroup $(\mathbb{N}, +, <)$, we compare on a large number of instances the performances of our compilation-based algorithm for computing $k$ top solutions with those of an algorithm tackling the same problem, but based on a partial weighted MaxSAT solver.
△ Less
Submitted 5 May, 2022; v1 submitted 11 February, 2022;
originally announced February 2022.
-
Semi Automatic Construction of ShEx and SHACL Schemas
Authors:
Iovka Boneva,
Jérémie Dusart,
Daniel Fernández Álvarez,
Jose Emilio Labra Gayo
Abstract:
We present a method for the construction of SHACL or ShEx constraints for an existing RDF dataset. It has two components that are used conjointly: an algorithm for automatic schema construction, and an interactive workflow for editing the schema. The schema construction algorithm takes as input sets of sample nodes and constructs a shape constraint for every sample set. It can be parametrized by a…
▽ More
We present a method for the construction of SHACL or ShEx constraints for an existing RDF dataset. It has two components that are used conjointly: an algorithm for automatic schema construction, and an interactive workflow for editing the schema. The schema construction algorithm takes as input sets of sample nodes and constructs a shape constraint for every sample set. It can be parametrized by a schema pattern that defines structural requirements for the schema to be constructed. Schema patterns are also used to feed the algorithm with relevant information about the dataset coming from a domain expert or from some ontology. The interactive workflow provides useful information about the dataset, shows validation results w.r.t. the schema under construction, and offers schema editing operations that combined with the schema construction algorithm allow to build a complex ShEx or SHACL schema.
△ Less
Submitted 24 July, 2019;
originally announced July 2019.
-
Submodular Goal Value of Boolean Functions
Authors:
Eric Bach,
Jeremie Dusart,
Lisa Hellerstein,
Devorah Kletenik
Abstract:
Recently, Deshpande et al. introduced a new measure of the complexity of a Boolean function. We call this measure the "goal value" of the function. The goal value of $f$ is defined in terms of a monotone, submodular utility function associated with $f$. As shown by Deshpande et al., proving that a Boolean function $f$ has small goal value can lead to a good approximation algorithm for the Stochast…
▽ More
Recently, Deshpande et al. introduced a new measure of the complexity of a Boolean function. We call this measure the "goal value" of the function. The goal value of $f$ is defined in terms of a monotone, submodular utility function associated with $f$. As shown by Deshpande et al., proving that a Boolean function $f$ has small goal value can lead to a good approximation algorithm for the Stochastic Boolean Function Evaluation problem for $f$. Also, if $f$ has small goal value, it indicates a close relationship between two other measures of the complexity of $f$, its average-case decision tree complexity and its average-case certificate complexity. In this paper, we explore the goal value measure in detail. We present bounds on the goal values of arbitrary and specific Boolean functions, and present results on properties of the measure. We compare the goal value measure to other, previously studied, measures of the complexity of Boolean functions. Finally, we discuss a number of open questions provoked by our work.
△ Less
Submitted 27 September, 2017; v1 submitted 13 February, 2017;
originally announced February 2017.
-
Maximal cliques structure for cocomparability graphs and applications
Authors:
Jérémie Dusart,
Michel Habib,
Derek G. Corneil
Abstract:
A cocomparability graph is a graph whose complement admits a transitive orientation. An interval graph is the intersection graph of a family of intervals on the real line. In this paper we investigate the relationships between interval and cocomparability graphs. This study is motivated by recent results Corneil,Dalton, Habib (2013) and Dusart, Habib (2016) and that show that for some problems, th…
▽ More
A cocomparability graph is a graph whose complement admits a transitive orientation. An interval graph is the intersection graph of a family of intervals on the real line. In this paper we investigate the relationships between interval and cocomparability graphs. This study is motivated by recent results Corneil,Dalton, Habib (2013) and Dusart, Habib (2016) and that show that for some problems, the algorithm used on interval graphs can also be used with small modifications on cocomparability graphs. Many of these algorithms are based on graph searches that preserve cocomparability orderings.
First we propose a characterization of cocomparability graphs via a lattice structure on the set of their maximal cliques. Using this characterization we can prove that every maximal interval subgraph of a cocomparability graph $G$ is also a maximal chordal subgraph of $G$. Although the size of this lattice of maximal cliques can be exponential in the size of the graph, it can be used as a framework to design and prove algorithms on cocomparability graphs. In particular we show that a new graph search, namely Local Maximal Neighborhood Search (LocalMNS) leads to an $O(n+mlogn)$ time algorithm to find a maximal interval subgraph of a cocomparability graph. Similarly we propose a linear time algorithm to compute all simplicial vertices in a cocomparability graph. In both cases we improve on the current state of knowledge.
△ Less
Submitted 7 November, 2016;
originally announced November 2016.
-
A tie-break model for graph search
Authors:
Derek G. Corneil,
Jeremie Dusart,
Michel Habib,
Fabien de Montgolfier
Abstract:
In this paper, we consider the problem of the recognition of various kinds of orderings produced by graph searches. To this aim, we introduce a new framework, the Tie-Breaking Label Search (TBLS), in order to handle a broad variety of searches. This new model is based on partial orders defined on the label set and it unifies the General Label Search (GLS) formalism of Krueger, Simonet and Berry (2…
▽ More
In this paper, we consider the problem of the recognition of various kinds of orderings produced by graph searches. To this aim, we introduce a new framework, the Tie-Breaking Label Search (TBLS), in order to handle a broad variety of searches. This new model is based on partial orders defined on the label set and it unifies the General Label Search (GLS) formalism of Krueger, Simonet and Berry (2011), and the "pattern-conditions" formalism of Corneil and Krueger (2008). It allows us to derive some general properties including new pattern-conditions (yielding memory-efficient certificates) for many usual searches, including BFS, DFS, LBFS and LDFS. Furthermore, the new model allows easy expression of multi-sweep uses of searches that depend on previous (search) orderings of the graph's vertex set.
△ Less
Submitted 25 January, 2015;
originally announced January 2015.