RCFB256B3449_-_Bool._Satis

# RCFB256B3449_-_Bool._Satis - Boolean Satisfiability CNF...

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

Boolean Satisfiability ECE 256B – Spring 2002 1 of 17 RCFB256B3449 - Bool. Satis. CNF: Conjunctive Normal Form A CNF is a Product of Sums of literals eg: xy zx yz uu z + ′ + () ++ ′ + ′ + such a representation is general in that any logic function can be represented (note: can find a CNF from DNF by applying negation & De Morgan laws: fx y zx u zy z f xyzxuz yz = + +⇒= ′ + ′ + ′ + although it is trivial to find a truth assignment for DNF i.e xy z = == 11 1 ,, above – it is very hard in general to find a truth assignment for CNF 1 (or equivalently an assignment to false for DNF…) SAT: Given a CNF on a set of literals, is there an assignment of values that satisfy CNF i.e can we find xyz , , . .. CNF=1? (note: if not CNF=0 for all assignments: not satifiable) if we can build a BDD for CNF, any path is a SAT & no-solns BDD=0 SAT is still interesting since can be solved (sometimes for tens of thousands of literals & hundreds of thousands of terms) NP&SAT: How hard is SAT? SAT represents evaluation of an arbitrary Boolean function. Thus many other problems can be cast in SAT form. This property was exploited by S.Cook to create a partition of “Hard Problems” that, in a specified sense, are equally hard. Boolean Satisfiability ECE 256B – Spring 2002 2 of 17 RCFB256B3449 - Bool. Satis. Notion: Polynomial Equivalence Given a problem written in K characters, can one find another problem in no more than K p characters for some fixed P the two problems are equivalent. i.e the first problem is valid if the second one is valid. Given a problem in a set of polynomial equivalent problems, if one can solve some problem in Polynomial Time all problems in class can be solved in P-Time. Notion: NP-Time there are many problems for which, given a solution, one can check (or validate) the solution in P-Time on a Turing machine. Equivalently, one could solve the problems in P-Time on an exponential set of turing machines, with each machine choosing an alternate character (out of a finite alphabet) on each program cycle. There are several NP - problems (an infinite set.) eg. Traveling Salesperson i.e given a graph with weighted edges, is there a tour of each vertex with cost = (of weights of arcs taken) < c, a predefined constant. eg. Clique Cover i.e given a graph, can one cover each edge with no more than c cliques (complete sub-graphs)? eg. Knapsack given a collection of objects of different weights, and a sack with capacity M, can one fill the sack so that at most m<<M capacity is unused?

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

View Full Document
Boolean Satisfiability ECE 256B – Spring 2002 3 of 17 RCFB256B3449 - Bool. Satis. SAT is clearly a member of NP: i.e given a CNF and a solution, we can clearly verify the solution in polynomial steps of a turing machine. In fact, SAT is the prototypical NP problem… Cook showed that he could simulate the behavior of an arbitrary turing machine as a polynomial equivalent instance of SAT.
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}

### Page1 / 9

RCFB256B3449_-_Bool._Satis - Boolean Satisfiability CNF...

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

View Full Document
Ask a homework question - tutors are online