Watermarking of SAT Using Combinatorial Isolation Lemmas Rupak Majumdar EECS Dept. University of California, Berkeley, CA Jennifer L. Wong CS Dept. University of California, Los Angeles, CA DAC, June, 2001 jwong@cs.ucla.edu
Watermarking Embedding of Information for ID or Proof of Authorship Technique Adds Extra Constraints to the Problem Effective Intellectual Property Protection Technique
Boolean Satisfiability Instance: A set of variables V and a collection C of clauses over V. Solution: A truth assignment for V such that at least one variable in each clause evaluates to true. V = {v1, v2, v3} C = {{v1, v2}, {v1’}, {v1’, v3}, {v1’, v2’, v3’}, {v3}} Solution: v1 = False v2 = True v3 = True V = {v1, v2, v3} C = {{v1, v2}, {v1’}, {v1’, v3}, {v1’, v2’, v3’}, {v3}}
Boolean Satisfiability First NP-complete Problem Applications Deterministic Test Pattern Generation Delay Fault Testing Logic Verification/Synthesis FPGA Routing AI, Operations Research, Combinatorial Optimization Backtrack Search, Local Search, Algebraic Manipulation, Recursive Learning, … Watermarking Techniques Constraint-Based (Kahng ’98, Qu ‘99)
Fairness & Watermarking All possible watermarking signatures of a given length result in a similar solutions space Difficulty of finding a solution after WM (given length) -> Runtime Quantify by # solutions Solution Space
Fairness & Watermarking V = {v1, v2, v3, v4} C = { (v1 + v3 + v4’) (v2 + v4) (v1’+ v2+ v3’+ v4) (v2’+v3+v4’) } Embed a Signature of 4 bits Ave Solution Distance 0.85 & Ave Variance 0.21 Fair Technique
Credibility & Watermarking # solutions after WM # solutions of with quality threshold Effort required to find a particular solution
Credibility & Watermarking V = {v1, v2, v3, v4} C = { (v1 + v3 + v4’) (v2 + v4) (v1’+ v2+ v3’+ v4) (v2’+v3+v4’) } Embed Signatures which are Multiples of Length 4
Watermarking Flow
Isolation Lemma (Valiant & Vazirani) If f is any CNF formula in x1, x2, …, xn and w1, …wk {0,1}n, then one can construct in linear time a formula fk’ whose satisfying assignments v satisfy f and the equations v•w1 = v•w2 = …= v•wk = 0. Furthermore, one can construct a polynomial-size CNF formula fk in variables x1, x2, …, xn,y1, …, ym for some m s.t. there is a bijection between solutions of fk and fk’ defined by equality on the values of x1, x2, …, xn. “NP is as easy as detecting unique solutions” Isolates a solution by randomized reduction
Unique and Fair Solutions to SAT CNF Formula over k Variables Add Multiple Watermarks of length k Adding Additional Constraints to the Formula Let a b c denote the CNF formula (a’ V b’ V c’) (a’ V b V c) (a V b V c’) (a V b’ V c)
Unique and Fair Solutions to SAT f is a CNF formula vi is the ith variable in the set V wj is the jth watermark of k-bits xy is the yth created variable f *= f ( vi1 vi2 … vij 1)
Unique and Fair Solutions to SAT V = {v1, v2, v3, v4} f = { (v1,v2’, v3} {v1’, v3, v4} {v2,v3’,v4} } V = {v1, v2, v3, v4} f = { {v1,v2’, v3} {v1’, v3, v4} {v2,v3’,v4} }
Unique and Fair Solutions to SAT V = {v1, v2, v3, v4} f = { {v1,v2’, v3} {v1’, v3, v4} {v2,v3’,v4} } v1 v2 v3 v4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Unique and Fair Solutions to SAT V = {v1, v2, v3, v4} f = { {v1,v2’, v3} {v1’, v3, v4} {v2,v3’,v4} } Watermark = 0101 Positions of 1’s = {2, 4} f *= f ( v2 v4 1)
Unique and Fair Solutions to SAT f *= f ( v2 v4 1) ( v2 v4 1) = (x1 v2 v4 ) (x1 1) Create x1 V* = {v1, v2, v3, v4, x1} (x1 v2 v4) (x1 1) {x1’,v2’, v4’} {x1’,v2, v4} {x1,v2’, v4} {x1,v2, v4’} {x2’}
Unique and Fair Solutions to SAT f **= { {v1,v2’,v3} {v1’,v3,v4} {v2,v3’,v4} {x1’,v2’,v4’} {x1’,v2,v4} {x1,v2’,v4} {x1,v2,v4’} {x1’}} V1 V2 V3 V4 X1 V2 V4 X1 1 1
Unique and Fair Solutions to SAT V* = {v1, v2, v3, v4, x1, x2} f *= { {v1,v2’,v3} {v1’,v3,v4} {v2,v3’,v4} {x1’,v2’,v4’} {x1’,v2,v4} {x1,v2’,v4} {x1,v2,v4’} {x1’}} Watermark = 0011 Positions of 1’s = {3, 4} f **= f * ( v3 v4 1)
Unique and Fair Solutions to SAT f **= f * ( v3 v4 1) ( v3 v4 1) = (x2 v3 v4 ) (x2 1) Create x2 V** = {v1, v2, v3, v4, x1, x2} x2 v3 v4 x2 1 {x2’,v3’, v4’} {x2’,v3, v4} {x2,v3’, v4} {x2,v3, v4’} {x2’}
Unique and Fair Solutions to SAT f **= { {v1,v2’,v3} {v1’,v3,v4} {v2,v3’,v4} {x1’,v2’,v4’} {x1’,v2,v4} {x1,v2’,v4} {x1,v2,v4’} {x1’} {x2’,v3’, v4’} {x2’,v3, v4} {x2,v3’, v4} {x2,v3, v4’} {x2’} } V1 V2 V3 V4 X1 V2 V4 X1 1 X 2 V3 V4 X2 1 1
Experimentation Enviroment SAT Instances DIMACS Instances Created Instance with Known # Solutions Public Domain SAT Solvers WalkSAT (Selman & Kautz ’94) GSAT (Selman & Kautz ’92) NTAB (Crawford & Auton ‘93) Rel_SAT (Bayardo & Schrag ‘97)
Credibility Created Instances
Credibility (trade-off strength & runtime) DIMACS
Fairness (Runtime) DIMACS
Fairness (Runtime) Created Instances
Conclusion Ultimate Fairness and Credibility Arbitrary Problem Application Connection between Watermarking & Sound Mathematics & Theoretical Computer Science