Watermarking of SAT Using Combinatorial Isolation Lemmas

Slides:



Advertisements
Similar presentations
Propositional Satisfiability (SAT) Toby Walsh Cork Constraint Computation Centre University College Cork Ireland 4c.ucc.ie/~tw/sat/
Advertisements

Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
1 NP-Complete Problems. 2 We discuss some hard problems:  how hard? (computational complexity)  what makes them hard?  any solutions? Definitions 
Complexity 25-1 Complexity Andrei Bulatov #P-Completeness.
Complexity 26-1 Complexity Andrei Bulatov Interactive Proofs.
February 23, 2015CS21 Lecture 201 CS21 Decidability and Tractability Lecture 20 February 23, 2015.
1 Boolean Satisfiability in Electronic Design Automation (EDA ) By Kunal P. Ganeshpure.
Algorithms in Exponential Time. Outline Backtracking Local Search Randomization: Reducing to a Polynomial-Time Case Randomization: Permuting the Evaluation.
NP-Complete Problems Reading Material: Chapter 10 Sections 1, 2, 3, and 4 only.
Complexity 19-1 Complexity Andrei Bulatov More Probabilistic Algorithms.
Analysis of Algorithms CS 477/677
1 Discrete Structures CS 280 Example application of probability: MAX 3-SAT.
Carla P. Gomes CS4700 CS 4700: Foundations of Artificial Intelligence Carla P. Gomes Module: Instance Hardness and Phase Transitions.
SAT Algorithms in EDA Applications Mukul R. Prasad Dept. of Electrical Engineering & Computer Sciences University of California-Berkeley EE219B Seminar.
GRASP: A Search Algorithm for Propositional Satisfiability EE878C Homework #2 2002/11/1 KAIST, EECS ICS Lab Lee, Dongsoo.
Statistical Forensic Engineering Techniques for Intellectual Property Protection Jennifer L. Wong †, Darko Kirovski*,
Sampling Combinatorial Space Using Biased Random Walks Jordan Erenrich, Wei Wei and Bart Selman Dept. of Computer Science Cornell University.
The Theory of NP-Completeness 1. What is NP-completeness? Consider the circuit satisfiability problem Difficult to answer the decision problem in polynomial.
MBSat Satisfiability Program and Heuristics Brief Overview VLSI Testing B Marc Boulé April 2001 McGill University Electrical and Computer Engineering.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
EMIS 8373: Integer Programming NP-Complete Problems updated 21 April 2009.
NP-Complete problems.
CS 5411 Compilation Approaches to AI Planning 1 José Luis Ambite* Some slides are taken from presentations by Kautz and Selman. Please visit their.
28.
Complexity 24-1 Complexity Andrei Bulatov Interactive Proofs.
CSCI 2670 Introduction to Theory of Computing December 2, 2004.
CSE 421 Algorithms Richard Anderson Lecture 27 NP-Completeness Proofs.
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
Computability Examples. Reducibility. NP completeness. Homework: Find other examples of NP complete problems.
CS 154 Formal Languages and Computability May 10 Class Meeting Department of Computer Science San Jose State University Spring 2016 Instructor: Ron Mak.
 2005 SDU Lecture15 P,NP,NP-complete.  2005 SDU 2 The PATH problem PATH = { | G is a directed graph that has a directed path from s to t} s t
Real-Time Watermarking Techniques for Sensor Networks 4th, December Tae woo Oh Jessica Feng, Miodrag Potkonjak Dept. of Computer Science Univ. of California.
ICS 353: Design and Analysis of Algorithms NP-Complete Problems King Fahd University of Petroleum & Minerals Information & Computer Science Department.
NP-Completeness (2) NP-Completeness Graphs 4/13/2018 5:22 AM x x x x x
P & NP.
Computational Complexity Theory
Hard Problems Some problems are hard to solve.
Chih-Fan Lai1, J.-H. Roland Jiang1, and Kuo-Hua Wang2
Richard Anderson Lecture 26 NP-Completeness
Polynomial-Time Reduction
NP-Completeness (2) NP-Completeness Graphs 7/23/ :02 PM x x x x
NP-Completeness (2) NP-Completeness Graphs 7/23/ :02 PM x x x x
NP-Completeness Proofs
Richard Anderson Lecture 26 NP-Completeness
Hard Problems Introduction to NP
Introduction to Software Verification
Intro to Theory of Computation
Intro to Theory of Computation
A Boolean Paradigm in Multi-Valued Logic Synthesis
Propositional Calculus: Boolean Algebra and Simplification
CS154, Lecture 16: More NP-Complete Problems; PCPs
Lecture 24 NP-Complete Problems
ICS 353: Design and Analysis of Algorithms
NP-Completeness (2) NP-Completeness Graphs 11/23/2018 2:12 PM x x x x
Richard Anderson Lecture 25 NP-Completeness
SAT-Based Area Recovery in Technology Mapping
NP-Completeness Proofs
Canonical Computation without Canonical Data Structure
ECE 667 Synthesis and Verification of Digital Circuits
Canonical Computation Without Canonical Data Structure
Richard Anderson Lecture 28 NP-Completeness
Chapter 8 NP and Computational Intractability
NP-Complete Problems.
Canonical Computation without Canonical Data Structure
CSE 6408 Advanced Algorithms.
NP-Completeness Reference: Computers and Intractability: A Guide to the Theory of NP-Completeness by Garey and Johnson, W.H. Freeman and Company, 1979.
CS154, Lecture 16: More NP-Complete Problems; PCPs
Canonical Computation without Canonical Data Structure
NP-Completeness (2) NP-Completeness Graphs 7/9/2019 6:12 AM x x x x x
Intro to Theory of Computation
Presentation transcript:

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