Presentation is loading. Please wait.

Presentation is loading. Please wait.

A theory-based decision heuristic for DPLL(T)

Similar presentations


Presentation on theme: "A theory-based decision heuristic for DPLL(T)"— Presentation transcript:

1 A theory-based decision heuristic for DPLL(T)
Dan Goldwasser Ofer Strichman Shai Fine Haifa university Technion IBM-HRL

2 DPLL Decide SAT Backtrack Analyze BCP conflict UNSAT full assignment
partial assignment Backtrack BCP conflict Analyze conflict UNSAT

3 DPLL(T) Decide SAT Backtrack BCP Analyze conflict UNSAT Deduction
full assignment SAT partial assignment Backtrack BCP conflict Analyze conflict UNSAT Deduction Add Clauses T-propagation / T-conflict

4 Theory propagation Matters for efficiency, not correctness.
Depending on the theory, the best strategy can be: No T-implications One T-implication at a time All possible T-implications (“exhaustive theory-propagation”). Cheap-to-compute T-implications In the case of Linear Real Arithmetic (LRA) … None.

5 Outline We will see: The potential of theory propagation
Why doesn’t it work today How can it be approximated efficiently Speculations: can the theory lead the way ?

6 A geometric interpretation
Let H be a finite set of hyperplanes in d dimensions. Let n = |H| An arrangement of H, denoted A(H), is a partition of Rd. An arrangement in d=2: # cells · O(nd)

7 A geometric interpretation
Consider a consistent partial assignment of size r. e.g. assignment to (l1,l2,l3), hence r =3. How many such T-implications are there ? r = 3 l4 l5 l1 (1,0,0) current partial assignment T-Implied

8 A geometric interpretation
Consider a consistent partial assignment of size r . Theorem 1: O((n ¢ log r) /r) of the remaining constraints intersect the cell [HW87] with high probability (1 - 1/rc). Some example numbers: r = 3, ~47% of the remaining constraints are implied. r = 12, ~70% of the remaining constraints are implied. r = 60, ~90% of the remaining constraints are implied. [HW87] D. Haussler and E. Welzl. Epsilon-nets and simplex range queries. Comput. Geom., 2: , 1987.

9 Assigned vs. implied in practice
Two benchmarks. Measured averages at T-consistent points

10 Theory propagation for LRA
Let l1, l2, l3 be asserted. Is l4 (or :l4) T-implied ? Two techniques for finding T-implications. “Plunging”: check satisfiability of (l1 Æ l2 Æ l3 Æ l4) and of (l1 Æ l2 Æ l3 Æ :l4) Requires solving a linear system. Too expensive in practice (see e.g. [DdM06]). [DdM06] Integrating simplex with DPLL(T), Dutertre and De Moura, SRI-CSL-06-01

11 Theory propagation for LRA
Let l1, l2, l3 be asserted. Is l4 (or :l4) T-implied ? Two techniques for finding T-implications. Check if all vertices on the same side of l4 There is an exponential number of vertices. Too expensive in practice.

12 Approximating theory propagation
Problem 1: How can we use conjectured information without losing soundness ? Problem 2: how can we find (cheaply) good conjectures i.e., conjectured T-implications

13 Problem 1: how to use conjectures ?
We use conjectured implications just to bias decisions. SAT chooses a variable to decide, we conjecture its value. SAT’s heuristics are T-ignorant.

14 Problem 2: conjecturing T-implications
We examined two methods: k - vertices Find k-vertices. If they are all on the same side of l4 – conjecture that l4 is implied. In this case we conjecture :l4 l4

15 Problem 2: conjecturing T-implications
We examined two methods: k - vertices Find k-vertices. If they are all on the same side of l4 – conjecture that l4 is implied. In this case we conjecture nothing l4

16 Problem 2: conjecturing T-implications
We examined two methods: k - vertices Find k-vertices. If they are all on the same side of l4 – conjecture that l4 is implied. In this case we (falsely) conjecture l4 l4

17 Problem 2: conjecturing T-implications
We examined two methods: k - vertices Find k-vertices. If they are all on the same side of l4 – conjecture that l4 is implied. Too expensive in practice

18 Problem 2: conjecturing T-implications
We examined two methods: One approximated point Here we always conjecture a T-implication. l4

19 Problem 2: conjecturing T-implications
We examined two methods: One approximated point Here we always conjecture a T-implication. l4

20 Problem 2: conjecturing T-implications
We examined two methods: One approximated point Here we always conjecture a T-implication. l4

21 Problem 2: conjecturing T-implications
We examined two methods: One approximated point The idea: use the assignment maintained by Simplex. It’s for free. l4

22 Problem 2: conjecturing T-implications
We examined two methods: One approximated point The idea: use the assignment maintained by Simplex. It’s for free. Competitive SMT solvers Do not activate (general) Simplex after each assignment They only update the assignment  according to the ‘simple’ constraints (e.g. “x < c”).

23 Problem 2: conjecturing T-implications
Several possibilities: 22%  is T-consistent  doesn’t satisfy it  is T-consistent  satisfies it  is T-inconsistent

24 Problem 2: conjecturing T-implications
Our hope:  is ‘close’ to the polygon. Therefore it can be successful in guessing implications. Even if l4 is not T-implied,  can guide the search. l4

25 Results Some results for the 200 benchmarks from SMT-COMP’07
Implementation on top of ArgoLib Each column refers to a different strategy of choosing the value.

26 0-pivot vs. Minisat MiniSat

27 The bigger picture # of cells is exponential in d rather than exponential in n nd rather than 2n In the SMT-LIB benchmark set, on average n = 10 d. Let n = k*d. k is the ratio we are looking for, beyond which 2^n is larger. We can extract k from 2^{kd} > (kd)^d. we get 2^k > dk. This shows that, e.g. for d = 2^8, the ratio k should be 11 (that is, 11:1). I don’t know d for these benchmarks, but if it is around 2^7 – 2^8, it seems that what we get is that in these benchmarks it is about balanced. But this doesn’t account for the fact that the matrices are sparde, and hence there are less than n^d.

28 A reversed lazy approach ?
Current SAT-based ‘lazy’ approaches Search the Boolean domain  check assignment in the theory domain A ‘reversed lazy approach’: Search the theory domain  check assignment in the Boolean domain SAT T-solver

29 Summary We studied LRA from the perspective of computational geometry.
We showed efficient (approximated) theory propagation. We showed how approximated information can be used safely. Future research: How can we let the theory lead the search ?


Download ppt "A theory-based decision heuristic for DPLL(T)"

Similar presentations


Ads by Google