{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

# grasp - GRASP-an efficient SAT solver Pankaj Chauhan 15-398...

This preview shows pages 1–9. Sign up to view the full content.

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: GRASP-an efficient SAT solver Pankaj Chauhan 02/29/12 15-398: GRASP and Chaff 2 What is SAT? Given a propositional formula in CNF, find an assignment to boolean variables that makes the formula true! E.g. ϖ 1 = (x 2 ∨ x 3 ) ϖ 2 = ( ¬ x 1 ∨ ¬ x 4 ) ϖ 3 = ( ¬ x 2 ∨ x 4 ) A = {x 1 =0, x 2 =1, x 3 =0, x 4 =1} ϖ 1 = (x 2 ∨ x 3 ) ϖ 2 = ( ¬ x 1 ∨ ¬ x 4 ) ϖ 3 = ( ¬ x 2 ∨ x 4 ) A = {x 1 =0, x 2 =1, x 3 =0, x 4 =1} SATisfying assignment! 02/29/12 15-398: GRASP and Chaff 3 What is SAT? Solution 1: Search through all assignments! n variables → 2 n possible assignments, explosion! SAT is a classic NP-Complete problem, solve SAT and P=NP! 02/29/12 15-398: GRASP and Chaff 4 Why SAT? Fundamental problem from theoretical point of view Numerous applications CAD, VLSI Optimization Model Checking and other type of formal verification AI, planning, automated deduction 02/29/12 15-398: GRASP and Chaff 5 Outline Terminology Basic Backtracking Search GRASP Pointers to future work Please interrupt me if anything is not clear! 02/29/12 15-398: GRASP and Chaff 6 Terminology CNF formula ϕ x 1 ,…, x n : n variables ϖ 1 ,…, ϖ m : m clauses Assignment A Set of (x,v(x)) pairs |A| < n → partial assignment {(x 1 ,0), (x 2 ,1), (x 4 ,1)} |A| = n → complete assignment {(x 1 ,0), (x 2 ,1), (x 3 ,0), (x 4 ,1)} ϕ | A = 0 → unsatisfying assignment {(x 1 ,1), (x 4 ,1)} ϕ | A = 1 → satisfying assignment {(x 1 ,0), (x 2 ,1), (x 4 ,1)} ϖ 1 = (x 2 ∨ x 3 ) ϖ 2 = ( ¬ x 1 ∨ ¬ x 4 ) ϖ 3 = ( ¬ x 2 ∨ x 4 ) A = {x 1 =0, x 2 =1, x 3 =0, x 4 =1} ϖ 1 = (x 2 ∨ x 3 ) ϖ 2 = ( ¬ x 1 ∨ ¬ x 4 ) ϖ 3 = ( ¬ x 2 ∨ x 4 ) A = {x 1 =0, x 2 =1, x 3 =0, x 4 =1} 02/29/12 15-398: GRASP and Chaff 7 Terminology Assignment A (contd.) ϕ | A = X → unresolved {(x 1 ,0), (x 2 ,0), (x 4 ,1)} An assignment partitions the clause database into three classes Satisfied, unsatisfied, unresolved Free literals : unassigned literals of a clause Unit clause : #free literals = 1 02/29/12 15-398: GRASP and Chaff 8 Basic Backtracking Search Organize the search in the form of a decision tree Each node is an assignment, called...
View Full Document

{[ snackBarMessage ]}

### Page1 / 31

grasp - GRASP-an efficient SAT solver Pankaj Chauhan 15-398...

This preview shows document pages 1 - 9. Sign up to view the full document.

View Full Document
Ask a homework question - tutors are online