Level-1 Construc1on: the Box B ( I ) >n 2 B V B C >n 2 >n 2
Level-1 Construc1on: the Box Far from each B ( I ) other and box boundaries >n 2 B V B V B C B ( x 1 ) B ( x 2 ) B ( x n ) · · · >n 2 >n 2
Level-1 Construc1on: the Box Far from each B ( I ) other and box boundaries >n 2 B V B V B C B ( x 1 ) B ( x 2 ) B ( x n ) B ( C 1 ) B ( C 2 ) B ( C m ) · · · · · · >n 2 >n 2
Level-1 Construc1on: the Box … … P(x 1 ) P(x 2 ) P(x n ) >n 2 B V B V B C B ( x 1 ) B ( x 2 ) B ( x n ) B ( C 1 ) B ( C 2 ) B ( C m ) · · · · · · >n 2 >n 2
Level-1 Construc1on: the Box Variable … … P(x 1 ) P(x 2 ) P(x n ) Gadget >n 2 M(x 1 ) B V B V B C B ( x 1 ) B ( x 2 ) B ( x n ) B ( C 1 ) B ( C 2 ) B ( C m ) · · · · · · >n 2 >n 2
Level-1 Construc1on: the Box Clause … … P(x 1 ) P(x 2 ) P(x n ) Gadget Some >n 2 sources B V B V B C B ( x 1 ) B ( x 2 ) B ( x n ) B ( C 1 ) B ( C 2 ) B ( C m ) · · · · · · >n 2 >n 2
Variable Gadget P(x) B(x)
Variable Gadget P(x) TRUE EXTRA FALSE B(x) EXTRA TRUE FALSE
Variable Gadget P(x) TRUE EXTRA FALSE Parameters : B(x) EXTRA • h=1000/ε TRUE FALSE • 100h EXTRA pairs • 6h TRUE/FALSE pairs • h pairs for each clause/literal pair
Variable Gadget h=1000/ε P(x) TRUE EXTRA FALSE 100h B(x) EXTRA TRUE FALSE
Variable Gadget h=1000/ε P(x) TRUE EXTRA FALSE 6h B(x) EXTRA TRUE FALSE
Variable Gadget h=1000/ε P(x) TRUE EXTRA FALSE 6h B(x) EXTRA TRUE FALSE
Variable Gadget h=1000/ε P(x) TRUE EXTRA FALSE B(x) EXTRA TRUE FALSE
Rou1ng if x=TRUE h=1000/ε P(x) TRUE EXTRA FALSE B(x) EXTRA TRUE FALSE
Level-1 Construc1on: the Box … … P(x 1 ) P(x 2 ) P(x n ) B V B V B C B ( x 1 ) B ( x 2 ) B ( x n ) B ( C 1 ) B ( C 2 ) B ( C m ) · · · · · ·
Rou1ng if x=TRUE h=1000/ε P(x) TRUE EXTRA FALSE B(x) EXTRA TRUE FALSE
Rou1ng if x=FALSE h=1000/ε P(x) TRUE EXTRA FALSE B(x) EXTRA TRUE FALSE
Rou1ng if x=FALSE h=1000/ε P(x)
Can’t Simultaneously Route Pairs in All Three Sets! h=1000/ε TRUE EXTRA FALSE B(x) EXTRA TRUE FALSE
a 2 a 3 a 1 a 3 a 2 a 0 a 0 a 0 a 0 a 0 1 2 3 3 2
Can’t Simultaneously Route Pairs in All Three Sets! TRUE EXTRA FALSE B(x) EXTRA TRUE FALSE
Can’t Simultaneously Route Pairs in All Three Sets! TRUE EXTRA FALSE B(x) EXTRA TRUE FALSE
Can’t Simultaneously Route Pairs in All Three Sets! B(x) EXTRA TRUE FALSE
a 1 a 3 a 2 a 0 a 0 a 0 1 2 3
Variable Gadget h=1000/ε P(x) TRUE EXTRA FALSE • Can’t route pairs B(x) EXTRA FALSE TRUE from all 3 sets • Always bexer to route EXTRA pairs • Can interpret any rou1ng as truth assignment to variables!
Variable Gadget h=1000/ε P(x) TRUE EXTRA FALSE B(x) EXTRA FALSE TRUE M ( C, ¬ x ) M ( C, ¬ x 5 ) C = ¬ x ∨ ¬ x 5 ∨ x 7 M ( C, x 7 )
Variable Gadget h=1000/ε P(x) TRUE EXTRA FALSE 6h black ver1ces B(x) EXTRA FALSE TRUE M ( C, ¬ x ) h pairs At most 5 clauses containing x Sources for each clause C = ¬ x ∨ ¬ x 5 ∨ x 7 consecu1ve, in right order
Variable Gadget h=1000/ε P(x) TRUE EXTRA FALSE B(x) EXTRA FALSE TRUE M ( C, ¬ x ) C = ¬ x ∨ ¬ x 5 ∨ x 7
Rou1ng if x=FALSE P(x) M ( C, ¬ x ) C = ¬ x ∨ ¬ x 5 ∨ x 7
Variable Gadget h=1000/ε P(x) TRUE EXTRA FALSE B(x) EXTRA FALSE TRUE M ( C, x ) C = x ∨ ¬ x 5 ∨ x 7
Whole Construc1on … … P(x 1 ) P(x 2 ) P(x n ) >n 2 B V B V B C B ( x 1 ) B ( x 2 ) B ( x n ) B ( C 1 ) B ( C 2 ) B ( C m ) · · · · · · >n 2 >n 2
Clause Gadget h=1000/ε C = ( ` 1 ∨ ` 2 ∨ ` 3 ) B(C) 3 h
Clause Gadget h=1000/ε C = ( ` 1 ∨ ` 2 ∨ ` 3 ) B(C) 3 h
Clause Gadget h=1000/ε M ( C, ` 1 ) M ( C, ` 2 ) C = ( ` 1 ∨ ` 2 ∨ ` 3 ) M ( C, ` 3 ) B(C) 3 h
Clause Gadget h=1000/ε M ( C, ` 1 ) M ( C, ` 2 ) C = ( ` 1 ∨ ` 2 ∨ ` 3 ) M ( C, ` 3 ) B(C) 3 h
Clause Gadget … … P(x 1 ) P(x 2 ) P(x n ) B(C)
Clause Gadget h=1000/ε M ( C, ` 1 ) M ( C, ` 2 ) C = ( ` 1 ∨ ` 2 ∨ ` 3 ) M ( C, ` 3 ) B(C) 3 h
Clause Gadget h=1000/ε M ( C, ` 1 ) M ( C, ` 2 ) C = ( ` 1 ∨ ` 2 ∨ ` 3 ) M ( C, ` 3 ) B(C) 3 h • mh new clauses Copies C 1 , … ,C h of C • in NI: can sa1sfy at most (1-ε)-frac1on
Clause Gadget h=1000/ε • Clause copy is bad if routes more than 1 demand pair • At most 3 copies of each clause can be B(C) 3 h bad • mh new clauses • in NI: can sa1sfy at most (1-ε)-frac1on
Yes-Instance Solu1on • Fix assignment to variables that sa1sfies all clauses • If x is assigned TRUE, route its TRUE and EXTRA pairs, otherwise route its FALSE and EXTRA pairs • For each clause C, choose a literal L that is sa1sfied and route all pairs in M(C,L)
Yes-Instance Rou1ng B ( I ) B C
• Red paths: variable-pairs • Blue paths: clause-pairs B ( I ) Claim: • For each variable, its paths arrive consecu1vely. • Same for each clause. B ( C 1 ) B ( x 1 ) B ( x n ) B ( C m ) . . . B C B V
Rou1ng if x=TRUE P(x) TRUE EXTRA FALSE B(x) EXTRA TRUE FALSE M ( C, x ) C = x ∨ ¬ x 5 ∨ x 7
• Paths corresponding to B ( I ) each variable arrive consecu1vely • Paths corresponding to each clause arrive consecu1vely B ( C 1 ) B ( x 1 ) B ( x n ) B ( C m ) . . . • Ordering between B C different variables is B V correct
B ( I ) B ( C 1 ) B ( x 1 ) B ( x n ) B ( C m ) . . . B C B V
B ( I ) B ( C 1 ) B ( x 1 ) B ( x n ) B ( C m ) . . . B C B V
B ( I ) • Paths corresponding to each clause arrive consecu1vely • But the ordering of the clauses may be wrong B ( C 1 ) B ( x 1 ) B ( x n ) B ( C m ) . . . B C B V
B C
B C Des1na1ons must be at distance at least C YI from the boxom of B(I)!
No-Instance Analysis • Most variables will route most EXTRA pairs and TRUE or FALSE pairs è assignment to variable • Most copies of clauses will route 1 demand pair. That literal must sa1sfy the clause.
No-Instance Analysis • Most variables will route most EXTRA pairs and TRUE or FALSE pairs è assignment to variable • Most copies of clauses will route 1 demand pair. That literal must sa1sfy the clause. • If many pairs are routed, many clauses are sa1sfied.
Higher-Level Construc1on To construct a level-i instance: • Take level-1 instance • replace each demand pair with a copy of a level-(i-1) instance
Level-i construc1on P ( I ) … … P(x 1 ) P(x 2 ) P(x n ) B ( I ) B V B C B ( x 1 ) B ( x 2 ) B ( x n ) B ( C 1 ) B ( C 2 ) B ( C m ) · · · · · ·
Variable Gadget P(x) TRUE EXTRA FALSE B(x)
Variable Gadget P(x) TRUE EXTRA FALSE B(x) EXTRA TRUE FALSE
Variable Gadget P(x) TRUE EXTRA FALSE B(x) EXTRA TRUE FALSE
Recommend
More recommend