Presentation is loading. Please wait.

Presentation is loading. Please wait.

Recovering and Exploiting Structural Knowledge from CNF Formulas

Similar presentations


Presentation on theme: "Recovering and Exploiting Structural Knowledge from CNF Formulas"— Presentation transcript:

1 Recovering and Exploiting Structural Knowledge from CNF Formulas
Richard Ostrowski, Eric Gregoire, Bertrand Mazure, and Lakhdar Sais Presenter: Ashique

2 What the paper talks about
The motivation behind the research on efficient SAT solvers Useful structural knowledge can be lost due to CNF representation Extracting gates out of the CNF formula is a step to recover that underlying structure Graphical representation of clauses facilitates such extraction Other techniques that minimizes the number of Gates Techniques that eliminate clauses and variables

3 Couple of definitions An equation or gate is of the form y = f( x1 ,x2 ,x3 …… ,xn) where f is a standard connective among {∨, ∧, ⇔} and where y and xi are propositional variables. y is called the output variable (definable) and xi s are called input variables. A propositional variable z is an output variable for a set of gates iff z is an output variable of at least one gate in the set. An input variable for a set of gates is an input variable of a gate which is not an output variable of the set of gates.

4 Graph of clauses

5 Partial graph of clauses

6 Extraction of Æ and Ç gates

7 Computational complexity
Building a graph is quadratic in the size of the set of the clauses  Representation of the graph is space consuming A dynamic approach without representing the graph explicitly is taken

8 Exploiting structure knowledge
Once the gates are extracted various properties are used to minimize the number of gates, simplify them and reduce the number of clauses and variables All these reductions prune the search space

9 Properties of , gates , is commutative and associative
(a , a , B) is equivalent to B : (a , b , c) is equivalent to (: a , b , c) (: a , : b , : c) is equivalent to (: a , b , c) (l , A1), (l , A2), …… (l , Am) is SAT iff (A1 , A2) …… (Am-1 , Am) is SAT Let  be a set of gates, B ½  a set of equivalence gates, b 2 B such that its output variable y occurs only in B and  ‘ the set of gates obtained by the substitution of y with its definition and removing b from  , then  is satisfiable is  ‘ is satisfiable Let Σ be a set of gates, any equivalence gate of Σ containing a literal which does not occur elsewhere in Σ, can be removed from Σ without loss of satisfiability.

10 Properties Æ and Ç gates
a = f(b, c, b) with f ∈ {∨, ∧} is equivalent to a = f(b, c) a = ∨(b, c, ¬b) (resp. a = ∧(b, c, ¬b)) is equivalent to a (resp. ¬a) ¬a = ∨(b, c, d) (resp. ¬a = ∧(b, c, d)) is equivalent to a = ∧(¬b, ¬c, ¬d)

11 Simplication of remaining clause sets
Blocked clause : A clause c of a CNF formula Σ is blocked iff there is a literal l ∈ c such that for all c' ∈ Σ with ¬l ∈ c' the resolvent of c and c' is tautological. Let c be a clause belonging to a CNF formula Σ such that c is blocked. Σ is satisfiable iff Σ\{c} is satisfiable.

12 nf-blocked clause A clause c belonging to a CNF formula Σ is non-fundamental iff c is either tautological or is subsumed by another clause from Σ. A clause c belonging to a CNF formula Σ is nf-blocked iff there exists a literal l from c such that. there does not exist any resolvent in l, or such that all resolvents are not fundamental. Let c be a clause belonging to a CNF formula Σ s.t. c is nf-blocked. Σ is satifiable iff Σ\{c} is satisfiable.

13 nf-blocked example continued
Blocked clauses and clauses containing a pure literal are nf-blocked

14 Variable elimination using nf-blocked clause
Any clause c from a CNF formula Σ can be nf-blocked, introducing additional clauses in Σ. Transitive closure of two-literal clauses In order to eliminate a variable, we just need to nf-block all clauses where it occurs

15 Some more reduction techniques
A clause c belonging to a CNF formula  is redundant iff  \{c} ² c. A clause c from a CNF formula Σ is u-redundant iff the unsatisfiability of Σ ∧ ¬c can be obtained using unit propagation. Let  be a CNF formula, a subsuming resolvent is a resolvent from two clauses from  that subsumes at least one clause of  .

16 How costly is it?

17 Performance vis-à-vis other algorithms

18 The reason behind such performance

19 Future directions Branching heuristics that also take all the equations into account Exploiting the intrinsic property of each type of equation Simplification of Boolean formulas


Download ppt "Recovering and Exploiting Structural Knowledge from CNF Formulas"

Similar presentations


Ads by Google