Docstoc

SAT

Document Sample
SAT Powered By Docstoc
					                S.Safra

some slides borrowed from Dana Moshkovits
                                            1
      The Crazy Tea Party
Problem To seat all guests at a round table, so people
      who sit an adjacent seats like each other.

                     John   Mary   Bob   Jane   Alice

             John                       
             Mary                             
             Bob                               
             Jane                            
             Alice                      

                                                         2
    Solution for the Example
  Problem To seat all guests at a round table, so people
        who sit an adjacent seats like each other.
                   John

 Jane

                          Mary



Alice

                   Bob
                                                           3
          Naive Algorithm
• For each ordering of the guests around the
  table
  – Verify each guest likes the guest sitting in
    the next seat.




                                                   4
How Much Time Should This
   Take? (worse case)
 guests      steps
              (n-
  n
              1)!
  5          24

                        say our computer is
 15       87178291200      capable of 1010
                          instructions per
                        second, this will still
                        take  3·10138 years!
 100       9·10155


                                                  5
                     Tours
Problem Plan a trip that visits every site exactly once.




                                                           6
  Solution for the Example
Problem Plan a trip that visits every site exactly once.




                                                           7
   Is a Problem Tractable?
• YES! And here’s an efficient
  algorithm for it

• NO! and I can prove it



and what if neither is the case?

                                   10
       Growth Rate: Sketch
time        n! =2O(n lg n)
                             2n




                                        n2


                                         10n

                                  input length

                                                 12
   The World According to
        Complexity
reasonable            unreasonable

polynomial  nO(1)   exponential  2nO(1)




                                            13
Could one be Fundamentally
 Harder than the Other?

              ?


    Seating
                  Tour



                             14
 Relations Between Problems
Assuming an efficient procedure for problem A,
 there is an efficient procedure for problem B




      B cannot be radically harder than A


                                                 15
           Reductions



       B           p           A




  B cannot be radically harder than A

In other words: A is at least as hard as B
                                             16
Which One is Harder?

           ?


 Seating
               Tour



                       17
      Reduce Tour to Seating
 First Observation: The problems aren’t so different

          site                           guest




“directly reachable from…”           “liked by…”



                                                       18
    Reduce Tour to Seating
    Second Observation: Completing the circle

• Let’s invite to our party a very popular guest,
• i.e one who can sit next to everybody else.




                                                    19
   Reduce Tour to Seating
• If there is a tour, there is also a way
  to seat all the imagined guests around
  the table.
                            popular guest




        ...                      ...


                                            20
   Reduce Tour to Seating
• If there is a seating, we can easily
  find a tour path (no tour, no seating).
                             popular guest




         ...                      ...


                                             21
         Bottom Line



The seating problem is at least
 as hard as the tour problem



                                  22
What have we shown?
• Although we couldn’t come up with an
  efficient algorithm for the problems
• Nor to prove they don’t have one,
• We managed to show a very powerful
  claim regarding the relation between
  their hardness


                                         23
           Furthermore
• Interestingly, we can also reduce the
  seating problem to the tour problem.
• Moreover, there is a whole class of
  problems, which can be pair-wise
  efficiently reduced to each other.




                                          24
      NPC
              Contains thousands of
                distinct problem

NPC           each reducible to all
                    others



       exponential algorithms
      
      ?
       efficient algorithms
                                      26
 How can Studying P vs NP Make You a
            Millionaire?

• This is the most fundamental open
  question of computer science.
• Resolving it would grant the solver a
  great honor
• … as well as substantial fortune…
 www.claymath.org/prizeproblems/pvsnp.htm
• Huge philosophical implications:
  – No need for human ingenuity!
  – No need for mathematicians!!!           27
      Constraints Satisfaction
Def Constraints Satisfaction Problem (CSP):
  – Instance:
     • Constraints: A set of constraints  = { 1, …, l } over two
       sets of variables, X of range RX and Y of range RY
     • Determinate: each constraint determines the value of a
       variable yY according to the value of some xX
             xy : RX  RY , satisfied if xy(x)=y
     • Uniform: each xX appears in dX of , and each yY
       appears in dY of , for some global dX and dy
  – Optimize:
     • Define () = maximum, over all assignments to X and Y
             A: X RX; Y RY
       of the fraction of  satisfied
                                                                      28
 Cook’s Characterization of NP
Thm: It is NP-hard to distinguish
 between
  – () = 1
  – () < 1
For any language L in NP
                  can be reduced to...
   testing                               CSP
membership in L

                                               29
           Showing hardness
From now on, to show a problem NP-hard, we
  merely need to reduce CSP to it.


   any NP        can be reduced to...
   problem

                             CSP        can be reduced to...
    Cook’s Thm
                                                 new, hard
                                                  problem
                     will imply the new
                                                               31
                     problem is NP-hard
      Max Independent-Set
Instance: A graph G=(V,E) and a threshold k.
Problem: To decide if there is a set of vertices
  I={v1,...,vk}V, s.t. for any u,vI: (u,v)E.




                                                   33
           Max I.S. is NP-hard
Proof: We’ll show CSPp Max I.S.




x y , x
  1   46   12  y43
                      ,..., x783 y416   ≤p




                                               34
    The reduction: Co-Partite Graph

 • G comprise k=|X| cliques of size |RX| - a
   vertex for each plausible assignment to x:



                                           An edge: two
               k                           assignments
                                          that determine
                                            a different
                                          value to same y
E  {(<i,j1>, <i,j2>) | iM, j1≠j2 RX}                35
Proof of Correctness
             An I.S. of size k must
              contain exactly one
             vertex in every clique.


                       A satisfying
                    assignment implies
                     an I.S. of size k
 k
                  An I.S. of size k
                  corresponds to a
                consistent, satisfying
                     assignment
                                       36
  Generalized Tour Problem
• Add prices to the roads of the tour problem
• Ask for the least costly tour

                              $3
                  $17

      $8            $19       $13

            $10
                        $13
            $12

                                                37
            Approximation
• How about approximating the optimal tour?
• I.e – finding a tour which costs, say, no more
  than twice as much as the least costly.
                                $3
                    $17

       $8             $19       $13

              $10
                          $13
              $12

                                                   38
Hardness of Approximation




                            39
        Promise Problems
• Sometimes you can promise something
  about the input      I know my graph has
                           clique of size n/4!
                          Does it have a clique
                               of size n/2?


• It doesn’t matter what you say for
  unfeasible inputs


                                                  40
       Promise Problems &
         Approximation
• We’ll see promise problems of a
  certain type, called gap problems, can
  be utilized to prove hardness of
  approximation.




                                           41
Gap Problems (Max Version)
• Instance: …

• Problem: to distinguish between
  the following two cases:

    The maximal solution  B

    The maximal solution ≤ A

                                    46
                  Idea
• We’ve shown “standard” problems are
  NP-hard by reductions from CSP.
• We want to prove gap-problems are NP-
  hard
• Why won’t we prove some canonical gap-
  problem is NP-hard and reduce from it?

• If a reduction reduces one gap-problem
  to another we refer to it as gap-
  preserving                               51
           Gap-CSP[]
Instance: Same as CSP
Problem: to distinguish between the
  following two cases:
     There exists an assignment that
     satisfies all constraints.
     No assignment can satisfy more
     than  of the constraints.
                                       52
      PCP (Without Proof)
Theorem [FGLSS, AS, ALMSS]:
For any >0,
          Gap-CSP[] is NP-hard,
        as long as |RX|,|RY| ≥ -O(1)




                                        53
            Why Is It Called PCP?
   (Probabilistically Checkable Proofs)
CSP has a polynomial membership proof
  checkable in polynomial time.
     This                                                    Prove it!
My formula is
 assignment
 satisfiable!
 satisfies it!
                  x1 y46 , x12 y43 ,..., x783 y416
       x1        x5                                        yn-3
       x2        x6                 . . .                  yn-2
       x3        x7                                        yn-1
       x4        x8                                        yn
                                                                         54
    Why Is It Called PCP?
(Probabilistically Checkable Proofs)
…Now our verifier has to check the assignment
satisfies all constraints…




                                                55
      Why Is It Called PCP?
                             Proofs)
(Probabilistically Checkable In a NO instance
                                 of gap-CSP, 1- of
                                  the constraints
While for gap-CSP the            are not satisfied!
  verifier would be right
  with high probability,
  even by:
(1) pick at random a
    constant number of
    constraints and
(2) check only those



                                                      56
      Why Is It Called PCP?
  (Probabilistically Checkable Proofs)
• Since gap-CSP is NP-hard, All NP
  problems have probabilistically
  checkable proofs.




                                         57
 Hardness of Approximation
• Do the reductions we’ve seen also
  work for the gap versions (i.e
  approximation preserving)?
• We’ll revisit the Max I.S. example.




                                        59
The same Max I.S. Reduction
                An I.S. of size k must
                 contain exactly one
                vertex in every part.


                          A satisfying
                       assignment implies
                        an I.S. of size k
   k
                      An I.S. of size k
                      corresponds to a
                    consistent assignment
                      satisfying  of 
                                         60
             Corollary
Theorem: for any >0,
Independent-set is hard to
  approximate to within any constant
  factor




                                       61
       Chromatic Number
• Instance: a graph G=(V,E).
• Problem: To minimize k, so that there
  exists a function f:V{1,…,k}, for
  which
         (u,v)E  f(u)f(v)




                                  skip    62
            Chromatic Number
Observation: Each
 color class is an
 independent set




                               63
 Clique Cover Number (CCN)
• Instance: a graph G=(V,E).
• Problem: To minimize k, so that there
  exists a function f:V{1,…,k}, for
  which
         (u,v)E  f(u)=f(v)




                                          64
Clique Cover Number (CCN)




                            65
          Observation
Claim: The CCN problem on graph G is
  the CHROMATIC-NUMBER problem
  on the complement graph Gc.




                                       66
             Reduction Idea
    CLIQUE                         CCN



      .                             .
m              G              G’
      .                             .
      .                             .
                same under
               cyclic shift
                clique
               preserving           q
                                         67
            Correctness
• Given such transformation:
  – MAX-CLIQUE(G) = m  CCN(G’) = q
  – MAX-CLIQUE(G) < m  CCN(G’) > q/




                                         68
            Transformation
T:V[q]

for any v1,v2,v3,v4,v5,v6,

T(v1)+T(v2)+T(v3) T(v4)+T(v5)+T(v6) (mod q)

            {v1,v2,v3}={v4,v5,v6}

                    T is unique for triplets

                                               69
          Observations
• Such T is unique for pairs and for
  single vertices as well:
• If T(x)+T(u)=T(v)+T(w) (mod q), then
  {x,u}={v,w}
• If T(x)=T(y) (mod q), then x=y




                                         70
Using the Transformation
                v
 vi
                j
                        CLIQUE


                            T(vj)=4
      T(vi)=1


CCN


          0         1   2      3      4   …   (q-1)

                                                      71
Completing the CCN Graph
      Construction

       T(s)


              (s,t)ECLIQUE 
              (T(s),T(t))ECCN


                T(t)



                                 72
Completing the CCN Graph
      Construction
                       Close the set of
                      edges under shift:
       T(s)
                      For every (x,y)E,
                      if x’-y’=x-y (mod q),
                          then (x’,y’)E



               T(t)



                                              73
          Edge Origin Unique


                 T(s)


 First Observation:
This edge comes only
      from (s,t)


                        T(t)



                               74
         Triangle Consistency


Second Observation:
A triangle only comes
   from a triangle




                                75
       Clique Preservation
Corollary:
  {c1,…,ck} is a clique in the CCN graph
iff
  {T(c1),…,T(ck)} is a clique in the
  CLIQUE graph.



                                           76
         What Remains?
• It remains to show how to construct
  the transformation T in polynomial
  time.




                                        77
           Corollaries
Theorem: CCN is NP-hard to
 approximate within any constant
 factor.

Theorem: CHROMATIC-NUMBER is
 NP-hard to approximate within any
 constant factor.

                                     78
           Max-E3-Lin-2
Def: Max-E3-Lin-2
  – Instance: a system of linear equations
     L = { E1, …, En } over Z2
    each equation of exactly 3 variables
   (whose sum is required to equal either 0 or 1)

  – Problem: Compute (L)



                                                    79
             Main Theorem
Thm [Hastad]: gap-Max-E3-Lin-2(1-,
 ½+) is NP-hard.

That is, for every constant >0 it is NP-
 hard to distinguish between the case
 1- of the equations are satisfiable
 and the case ½+ are.

[ It is therefore NP-Hard to approximate
   Max-E3-Lin-2 to within 2- constant >0]
                                               81
      This bound is Tight!

• A random assignment satisfies half of
  the equations.
• Deciding whether a set of linear
  equations have a common solution is in
  P (Gaussian elimination).


                                           82
               Proof Outline
The proof proceeds with a reduction from gap-
  CSP[], known to be NP-hard for any constant >0
Given such an instance , the proof shows a poly-
  time construction, of an instance L of Max-E3-
  Lin-2 s.t.
  – () = 1  (L) ≥ 1 - L
  – () <   (L) ≤ ½ + L
Main Idea:
  Replace every x and every y with a set of variables
    representing a binary-code of their assigned values.
  Then, test consistency within encoding and any xy
    using linear equations over 3 bits                     83
         Long-Code of R
• One bit for every subset of R




                                  85
           Long-Code of R
• One bit for every subset of R



    to encode an element eR



0      0          1               1   1
                                          86
          The Variables of L
Consider an instance  of CSP[], for
  small constant  (to be fixed later)

L has 2 types of variables:
  1. a variable z[y,F] for every variable
     yY and a subset F  P[Ry]
  2.a variable z[x,F] for every variable
     xX and a subset F  P[RX]
 In fact use a “folded” long-code, s.t. f(F)=1-f([n]\F)   87
Linearity of a Legal-Encoding
An Boolean function f: P[R]  Z2, if legal long-
 code-word , is a linear-function, that is, for
 every F, G  P[R]:

     f(F) + f(G)  f(FG)

  where FG  P[R] is the symmetric
  difference of F and G

Unfortunately, any linear function (a sum of a
 subset of variables) will pass this test          88
        The Distribution 
Def: denote by  the biased,
 product distribution over P[RX],
 which assigns probability to a
 subset H as follows:
 Independently, for each aRX, let
  – aH with probability 1-
  – aH with probability 
One should think of  as a multiset of subsets in which
every subset H appears with the appropriate probability 89
       The Linear Equations
L‘s linear-equations are the union, over
 all , of the following set of
 equations:

  F P[RY], G P[RX] and H 
 denote F*= xy-1(F)
 z[y,F] + z[x, G]  z[x, F*  G  H]
                                            90
    Correctness of Reduction
Prop: if () = 1 then (L) = 1-
Proof: let A be a satisfying assignment to .
  Assign all L ‘s variables according to the legal-
   encoding of A’s values.         Note: independent
                                   of ! (Later we use
  A linear equation of L, corresponding to set 
                                   that fact to
                                   small enough if
   xy,F,G,H, would be unsatisfied exactly for our
   A(x)H, which occurs with probability  over
                                   needs).
   the choice of H.
                        = 2(L) -1

LLC-Lemma: (L) = ½+/2  () > 42               91
 Denoting an Assignment to L

Given an assignment AL to L’s variables:
  For any xX, denote by fx : P[RX]  {-1, 1} the
    function comprising the values AL assigns to
    z[x,*] (corresponding to the long-code of the
    value assigned to x)
  For any yY, denote by fy : P[RY]  {-1, 1} the
    function comprising the values AL assigns to
    z[y,*] (corresponding to the long-code of the
    value assigned to y)
                           Replacing 1 by -1 and 0 by 1   92
   Distributional Assignments
Consider a CSP instance 
Let (R) be the set of all distributions over R

Def: A distributional-assignment to  is
     A: X  (RX); Y  (RX)
 Denote by () the maximum over
 distributional-assignments A of the average
 probability for    to be satisfied, if
 variables’ values are chosen according to A

Clearly ()  (). Moreover
Prop: ()  ()
                                                  93
 The Distributional-Assignment A

Def: Let A be a distributional-assignment to 
  according to the following random processes:
• For any variable xX
                                              2
   – Choose a subset SRX with probability f  S 
                                            x
   – Uniformly choose a random aS.
• For any variable yY
                                              2
   – Choose a subset SRY with probability f  S 
                                            x
   – Uniformly choose a random bS.
       For such functions, the squares of the
                                                 94
       coefficients constitute a distribution
       odd(xy(S)) = {b| #{aS| xy(a) = b} is odd}

          What’s to do:
Show that AL‘s expected success on
 xy is > 42 in two steps:

First show that AL‘s success probability,
  for any xy
                           odd          S    fx S  S
                       2                             2            1
           S R fy                 xy
                 X




Then show that value to be  42
                                                                       95
                     Claim 1
Claim 1: AL‘s success probability, for any
  xy
                                 odd          S    fx S  S
                             2                             2            1
                 S R fy                 xy
                       X

Proof:
  That success probability is

                      
                 2               2
  S R ,S R f Sy  f Sx   PraSx xy  a   Sy 
                y      x                               
     y  Y x   X



Now, taking the sum for only the cases in
 which Sy=odd(xy(Sx)), results in the
 claimed inequality.                                                         96
                High Success Probability


                            x      
EF,G,H f F   f  G   f F * G H  
       y         x                         
                        f S   f S   f S       '
                                                                                                      
                                                               E USy F   USx  G   US' F * G H          
                                                             F,G,H                                  
                         y    y    x     x         x    x
                                                                                           x
                 '
Sy RY ,Sx RX ,Sx RX


                '
                              
                       f Sy  f  Sx   f Sx  E US
                        y      x          x
                                            '
                                                F 
                                                   y
                                                                         '
                                                                          Sx
                                                                               F   E US
                                                                                    G
                                                                                          x
                                                                                                '
                                                                                               Sx
                                                                                                    G   E US H  
                                                                                                         H    '
                                                                                                                x     
Sy RY ,Sx RX ,Sx RX


                             
                                             2
                                                Sx   1  2 
                                                                     Sx
         f odd  xy Sy
          y                            fx
Sx RX




                                                                                                                       100
                  Related work
• Thm (Friedgut): a Boolean function f with small average-
  sensitivity is an [,j]-junta

• Thm (Bourgain): a Boolean function f with small high-
  frequency weight is an [,j]-junta

• Thm (Kindler&Safra): a Boolean function f with small high-
  frequency weight in a p-biased measure is an [,j]-junta

• Corollary: a Boolean function f with small noise-sensitivity is
  an [,j]-junta

• [Dinur, S] Showing Vertex-Cover hard to approximate to
  within 10 5 – 21
• Parameters: average-sensitivity [BL,KKL,F]; high-frequency
  weight [H,B], noise-sensitivity [BKS]
                                                                    102
 Boolean Functions and Juntas
A Boolean function

                  f : P n  T,F
                  f : 1,1  1,1
                               n


Def: f is a j-Junta if there exists J[n]
 where |J|≤ j, and s.t. for every x
                f(x) = f(x  J)

• f is (, j)-Junta if  j-Junta f’ s.t. Pr f  x   f' x   
                                                             
                                          x                      103
Motivation – Testing Long-code

• Def (a long-code test): given a code-
  word w, probe it in a constant number
  of entries, and
  – accept w.h.p if w is a monotone
    dictatorship
  – reject w.h.p if w is not close to any
    monotone dictatorship


                                            104
Motivation – Testing Long-code
• Def(a long-code list-test): given a code-
  word w, probe it in a constant number of
  entries, and
  – accept w.h.p if w is a monotone dictatorship,
  – reject w.h.p if  a Junta J[n] s.t. f is close
    to f’ and f’(F)=f’(FJ) for all F

• Note: a long-code list-test, distinguishes
  between the case w is a dictatorship, to
  the case w is far from a junta.
                                                       105
Motivation – Testing Long-code
• The long-code test, and the long-code list-
  test are essential tools in proving hardness
  results.

  Examples …

• Hence finding simple sufficient-conditions
  for a function to be a junta is important.


                                                 106
         Noise-Sensitivity
• Idea: check how the value of f changes
  when the input is changed not on one, but
  on several coordinates.

                 z
                     I


                     x             [n]




                                              107
Noise-Sensitivity
• Def(,p,x[n] ): Let 0<<1, and xP([n]).
  Then y~,p,x, if y = (x\I) z where
   – I~[n] is a noise subset, and
   – z~ pI is a replacement.
                         z
                    I
                         let 0<<1, 
Def(-noise-sensitivity): f  x   f ythen
     ns f =
              Pr    [n]    [n]
                    x~p ,y~  ,p,x       
                               x              [n]



• Note:        deletes a coordinate in x w.p. (1-
  p),
               adds a coordinate to x w.p. p.       108
   Noise-Sensitivity – Cont.
• Advantage: very efficiently testable (using
  only two queries) by a perturbation-test.
• Def (perturbation-test): choose x~p, and
  y~,p,x, check whether f(x)=f(y).

  The success is proportional to the noise-
  sensitivity of f.
                                   2
      2 the f =1   1    is  S 
                               S
• Prop:  ns -noise-sensitivity f given by
               
                      S
                                                109
          Related Work
• [Dinur, S] Showing Vertex-Cover hard
  to approximate to within 10 5 – 21
• [Bourgain] Showing a Boolean function
  with weight <1/k on characters of
  size larger than k, is close to a junta
  of size exponential in k ([Kindler, S]
  similar for biased, product
  distribution)
                                            110

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:18
posted:3/27/2012
language:
pages:89