21.01.2015 Views

Boolean Satisfiability (SAT) Algorithms

Boolean Satisfiability (SAT) Algorithms

Boolean Satisfiability (SAT) Algorithms

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

PIs<br />

0<br />

1<br />

0<br />

Using Blocking Clauses for Sequential <strong>SAT</strong><br />

a<br />

b<br />

Combinational<br />

elements<br />

> 10<br />

POs<br />

Suppose we are solving the property<br />

“a > b”<br />

1. Use <strong>SAT</strong> to get a solution on the<br />

registers<br />

e.g. (c0, c1, c2) = (1,1, 0)<br />

2. Add a “blocking clause”<br />

(c0’ + c1’ + c2) to the original CNF<br />

Won’t get the same state again!!<br />

1<br />

1<br />

0<br />

c0<br />

c1<br />

c2<br />

(c0’ + c1’ + c2)<br />

seq elm<br />

p0<br />

p1<br />

p2<br />

1<br />

1<br />

0<br />

3. Repeat 2 for another solution..., or<br />

4. Apply the solution<br />

“(c0, c1, c2) = (1, 1, 0)”<br />

to the previous state as<br />

“(p2, p1, p0) = (1, 1, 0)” and<br />

continue to the search in the<br />

previous timeframe<br />

<strong>Boolean</strong> <strong>SAT</strong> <strong>Algorithms</strong> / FLOLAC 2009 Prof. Chung-Yang (Ric) Huang http://dvlab.ee.ntu.edu.tw<br />

196

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!