I'd like to ask you about CLIQUE→SAT reduction. The reduction3-SAT→CLIQUE is a standard one from undergrad course. Since SATis NP-Complete, every problem from NP, i.e., CLIQUE as well, isreducible to SAT. Is this reduction "known", i.e. defined by some"natural way" as the reduction 3-SAT→CLIQUE is? Is thattrue for all NP-C problems?The reduction in Cook's paper create formulas with variables thatrepresent the entire computation of an NP machine accepting CLIQUE. Wecan often do much better. Consider the problem of determining whethera graph on n vertices has a clique of size k.
Variables: yi,r (true if node i is the rth node ofthe clique) for 1 ≤ i ≤ n, 1 ≤ r ≤ k.
Clauses:
- For each r,y1,r∨y2,r∨…∨yn,r(some node is the rth node of the clique).
- For each i, r<s, ¬yi,r∨¬yi,s(no node is both the rth and sth node of the clique).
- For each r≠s and i<j such that (i,j) is not an edge of G, ¬yi,r∨¬yj,s. (If there's no edge fromi to j then nodes i and j cannot both be in the clique).
While simple, an optimized Cook-Levin style reduction can produce smallerformula for large k. This reduction has Θ(n2k2)clauses. Using Robson'sreductionone can create formulas of size O(n2logO(1)n).
We can get similarly nice reductions for many other NP-completeproblems like 3-COLORING and HAMILTONIAN CYCLE. But there is nogeneral procedure for producing simple formula, especially if thereare calculations involved like SUBSET SUM.
pls help how to transform boolean data table to SAT, I need to use minsat to minimize boolean data table, thank you very much in advance
ReplyDeleteis this good
ReplyDeletehttp://minisat.se/SatELite.html
SatELite is a CNF minimizer, intended to be used as a preprocessor to the SAT solver. It is designed to compress the CNF fast enough not to be a bottle neck, and is particularly aimed at improving SAT encodings resulting from translation of netlists (combinational boolean circuits).
Nice reduction! similar to maximum colorful clique.
ReplyDelete