Presentation is loading. Please wait.

Presentation is loading. Please wait.

Finding Large Set Covers Faster via the Representation Method

Similar presentations


Presentation on theme: "Finding Large Set Covers Faster via the Representation Method"— Presentation transcript:

1 Finding Large Set Covers Faster via the Representation Method
Jesper Nederlof Technical University Eindhoven

2 Outline Introduction Representation Method
Problem Statements Context Result Statements Representation Method Representation Method for Set Cover Concluding Remarks

3 Problem Statements Set Cover (SC): Given non-empty 𝑆 1 ,…, 𝑆 𝑚 ⊆[𝑛], find smallest 𝑋⊆[𝑚] such that 𝑖∈X 𝑆 𝑖 = 𝑛 We refer to such 𝑋 as a Set Cover Set Partition (SP): 𝑆 𝑖 ∩ 𝑆 𝑗 =∅ for all distinct 𝑖,𝑗∈𝑋 Linear Sat (LS): Given 𝑡∈ℤ, A∈ ℤ 2 𝑛×𝑚 , 𝑏∈ ℤ 2 𝑛 , 𝜔∈ ℕ 𝑚 , find 𝑥 ∈ℤ 2 𝑚 s.t. 𝐴𝑥≡𝑏 and 𝜔,𝑥 ≤𝑡 By a standard reduction (with b=1), 𝑂 ∗ (𝑐 𝑚 ) for LS implies 𝑂 ∗ ( 𝑐 𝑚 ) for SP 𝑂 ∗ () omits factors polynomial in input size

4 Set Cover versus CNF-SAT
CNF-SAT is the most studied problem in exact algo’s. Unclear relation with Set Cover

5 Set Cover versus CNF-SAT
CNF-SAT is the most studied problem in exact algo’s. Unclear relation with Set Cover Set Cover with n elements, m sets CNF-SAT with n variables, m clauses

6 Set Cover versus CNF-SAT
CNF-SAT is the most studied problem in exact algo’s. Unclear relation with Set Cover Set Cover with n elements, m sets CNF-SAT with n variables, m clauses Hypergraph problem

7 Set Cover versus CNF-SAT
CNF-SAT is the most studied problem in exact algo’s. Unclear relation with Set Cover Set Cover with n elements, m sets CNF-SAT with n variables, m clauses Hypergraph problem Easy 𝑂 ∗ ( 2 𝑛 ) time DP algorithm Easy 𝑂 ∗ ( 2 𝑛 ) enumeration For 𝑖≤𝑚, 𝑋⊆[𝑛] define 𝑇 𝑖,𝑋 as the smallest number of sets from 𝑆 1 ,…, 𝑆 𝑖 needed to cover 𝑋.

8 Set Cover versus CNF-SAT
CNF-SAT is the most studied problem in exact algo’s. Unclear relation with Set Cover Set Cover with n elements, m sets CNF-SAT with n variables, m clauses Hypergraph problem Easy 𝑂 ∗ ( 2 𝑛 ) time DP algorithm Easy 𝑂 ∗ ( 2 𝑛 ) enumeration

9 Set Cover versus CNF-SAT
CNF-SAT is the most studied problem in exact algo’s. Unclear relation with Set Cover Set Cover with n elements, m sets CNF-SAT with n variables, m clauses Hypergraph problem Easy 𝑂 ∗ ( 2 𝑛 ) time DP algorithm Easy 𝑂 ∗ ( 2 𝑛 ) enumeration Can do in 𝑂 ∗ 𝑛 ? Can do in 𝑂 ∗ 𝑛 ? (SETH)

10 Set Cover versus CNF-SAT
CNF-SAT is the most studied problem in exact algo’s. Unclear relation with Set Cover Set Cover with n elements, m sets CNF-SAT with n variables, m clauses Hypergraph problem Easy 𝑂 ∗ ( 2 𝑛 ) time DP algorithm Easy 𝑂 ∗ ( 2 𝑛 ) enumeration Can do in 𝑂 ∗ 𝑛 ? Can do in 𝑂 ∗ 𝑛 ? (SETH) 𝑂 ∗ ( 2 1−Ω(1/𝑑) 𝑛 ) if set sizes ≤𝑑 [K’09] 𝑂 ∗ ( 2 1−Ω(1/𝑑) 𝑛 ) if clause sizes ≤𝑑

11 Set Cover versus CNF-SAT
CNF-SAT is the most studied problem in exact algo’s. Unclear relation with Set Cover Set Cover with n elements, m sets CNF-SAT with n variables, m clauses Hypergraph problem Easy 𝑂 ∗ ( 2 𝑛 ) time DP algorithm Easy 𝑂 ∗ ( 2 𝑛 ) enumeration Can do in 𝑂 ∗ 𝑛 ? Can do in 𝑂 ∗ 𝑛 ? (SETH) 𝑂 ∗ ( 2 1−Ω(1/𝑑) 𝑛 ) if set sizes ≤𝑑 [K’09] 𝑂 ∗ ( 2 1−Ω(1/𝑑) 𝑛 ) if clause sizes ≤𝑑 𝑂 ∗ ( 2 1−1/ Ω(log 𝑚/𝑛 ) 𝑛 ) [cor. K’09] 𝑂 ∗ ( 2 1−1/ Ω(log 𝑚/𝑛 ) 𝑛 )

12 Set Cover versus CNF-SAT
CNF-SAT is the most studied problem in exact algo’s. Unclear relation with Set Cover Set Cover with n elements, m sets CNF-SAT with n variables, m clauses Hypergraph problem Easy 𝑂 ∗ ( 2 𝑛 ) time DP algorithm Easy 𝑂 ∗ ( 2 𝑛 ) enumeration Can do in 𝑂 ∗ 𝑛 ? Can do in 𝑂 ∗ 𝑛 ? (SETH) 𝑂 ∗ ( 2 1−Ω(1/𝑑) 𝑛 ) if set sizes ≤𝑑 [K’09] 𝑂 ∗ ( 2 1−Ω(1/𝑑) 𝑛 ) if clause sizes ≤𝑑 𝑂 ∗ ( 2 1−1/ Ω(log 𝑚/𝑛 ) 𝑛 ) [cor. K’09] 𝑂 ∗ ( 2 1−1/ Ω(log 𝑚/𝑛 ) 𝑛 ) Solving SC in 𝑂 ∗ ( 1.99 𝑚 ) (roughly) equivalent to !SETH [CDLMNOPSW’12]

13 Set Cover versus CNF-SAT
CNF-SAT is the most studied problem in exact algo’s. Unclear relation with Set Cover Set Cover with n elements, m sets CNF-SAT with n variables, m clauses Hypergraph problem Easy 𝑂 ∗ ( 2 𝑛 ) time DP algorithm Easy 𝑂 ∗ ( 2 𝑛 ) enumeration Can do in 𝑂 ∗ 𝑛 ? Can do in 𝑂 ∗ 𝑛 ? (SETH) 𝑂 ∗ ( 2 1−Ω(1/𝑑) 𝑛 ) if set sizes ≤𝑑 [K’09] 𝑂 ∗ ( 2 1−Ω(1/𝑑) 𝑛 ) if clause sizes ≤𝑑 𝑂 ∗ ( 2 1−1/ Ω(log 𝑚/𝑛 ) 𝑛 ) [cor. K’09] 𝑂 ∗ ( 2 1−1/ Ω(log 𝑚/𝑛 ) 𝑛 ) Solving SC in 𝑂 ∗ ( 1.99 𝑚 ) (roughly) equivalent to !SETH [CDLMNOPSW’12] Counting #SC’s mod 2 in 𝑂 ∗ ( 1.99 𝑛 ) SETH hard [CDLMNOPSW’12]

14 Set Cover versus CNF-SAT
CNF-SAT is the most studied problem in exact algo’s. Unclear relation with Set Cover Set Cover with n elements, m sets CNF-SAT with n variables, m clauses Hypergraph problem Easy 𝑂 ∗ ( 2 𝑛 ) time DP algorithm Easy 𝑂 ∗ ( 2 𝑛 ) enumeration Can do in 𝑂 ∗ 𝑛 ? Can do in 𝑂 ∗ 𝑛 ? (SETH) 𝑂 ∗ ( 2 1−Ω(1/𝑑) 𝑛 ) if set sizes ≤𝑑 [K’09] 𝑂 ∗ ( 2 1−Ω(1/𝑑) 𝑛 ) if clause sizes ≤𝑑 𝑂 ∗ ( 2 1−1/ Ω(log 𝑚/𝑛 ) 𝑛 ) [cor. K’09] 𝑂 ∗ ( 2 1−1/ Ω(log 𝑚/𝑛 ) 𝑛 ) Solving SC in 𝑂 ∗ ( 1.99 𝑚 ) (roughly) equivalent to !SETH [CDLMNOPSW’12] Counting #SC’s mod 2 in 𝑂 ∗ ( 1.99 𝑛 ) SETH hard [CDLMNOPSW’12] Only handful of papers Very well studied Dream: Perhaps clever DP techniques can break SETH!?

15 Result Statements Main Theorem
There is a Monte Carlo algorithm that determines if there is a Set Cover of size at most 𝜎𝑛 in 𝑂 ∗ −Ω( 𝜎 4 ) 𝑛 time. Main Theorem Generalizes set of instances solvable in 𝑂 ∗ ( 2−𝜖 𝑛 ) time If set sizes ≤𝑑, we may assume 𝜎≥1/𝑑 Our techniques are different than from [K’09], but give a worse dependence in this special case The star in the 𝑂 ∗ () can be omitted under some conditions Gives a speedup even if 𝑚 is exponential in 𝑛

16 Result Statements Main Theorem
There is a Monte Carlo algorithm that determines if there is a Set Cover of size at most 𝜎𝑛 in 𝑂 ∗ −Ω( 𝜎 4 ) 𝑛 time. Obtained by applying the representation method in a novel way Additionally, we show rep. method also useful for SP if 𝑚≤𝑛: There is an 𝑂 ∗ ( 𝑚 ) time Monte Carlo algorithm for Linear Sat. Theorem Previous fastest algorithm runs in 𝑂 ∗ ( 2 𝑚/2 ) time For SP, running time comes close to previous branching algo’s: DP’02 (Drori & Peleg): 𝑂 ∗ ( 𝑚 ) time

17 Representation Method [HJ’10]
Say we seek for a set in 𝒮⊆ [𝑚] 𝑠 as follows: List [𝑚] 𝑠/2 , check if 𝐴∪B∈𝒮 for all pairs 𝐴,𝐵 listed 𝑆∈𝒮 gives rise to [𝑠] 𝑠/2 ≈ 2 𝑠 pairs (representatives) Thus we can restrict our search in various ways Only consider needle

18 Representation Method [HJ’10]
Say we seek for a set in 𝒮⊆ [𝑚] 𝑠 as follows: List [𝑚] 𝑠/2 , check if 𝐴∪B∈𝒮 for all pairs 𝐴,𝐵 listed 𝑆∈𝒮 gives rise to [𝑠] 𝑠/2 ≈ 2 𝑠 pairs (representatives) Thus we can restrict our search in various ways Seems bad idea: 𝑚 𝑠/2 2 / 2 𝑠 ≥ 𝑚 𝑠 Suppose 𝐴 determines 𝐵: about 𝑚 𝑠/2 / 2 𝑠 time! Indeed this has been useful particularly for the `Meet in the Middle’ attack (where indeed 𝐴 determines 𝐵) We show the method is also useful elsewhere

19 Representation Method for Set Cover

20 Representation Method for Set Cover
Partition Representation Method for Set Cover Let 𝒮⊆ [𝑚] 𝑠 be the set of all set partitions (𝑠=𝜎𝑛) Assume 𝑆 𝑖 ≤𝜖𝑛 for a small 𝜖>0 (depending on 𝜎) Suppose 𝑋∈𝒮, partition 𝑋 1 ∪ 𝑋 2 =𝑋 Let 𝑁 𝑋 𝑗 = 𝑖∈ 𝑋 𝑗 𝑆 𝑖 , then 𝑁 𝑋 1 ,𝑁( 𝑋 2 ) partitions 𝑛 Claim: Ω(2 𝜎𝑛 ) subsets 𝑌⊆[𝑛] s.t. 𝑌 =(0.5± 𝑂 𝜖 )𝑛, and 𝑌=𝑁 𝑋 1 = 𝑛 ∖𝑁( 𝑋 2 ), for some partition 𝑋 1 ,𝑋 2 of 𝑋. There are 2 𝜎𝑛 pairs 𝑋 1 , 𝑋 2 𝑁( 𝑋 1 ),𝑁( 𝑋 2 ) determine 𝑋 1 , 𝑋 2 since 𝑁 𝑁( 𝑋 𝑖 ) =𝑋 𝑖 𝑌 concentrated around n/2 by Hoeffding and 𝑆 𝑖 ≤𝜖𝑛 Pf. Assumes 𝑋 𝑖 has no empty sets We refer to a Y as in the claim as a witness halve Sets 𝑆 1 ,…, 𝑆 𝑚 X 𝑿 𝟏 𝑿 𝟐 𝑵( 𝑿 𝟏 ) 𝑵( 𝑿 𝟐 ) Elements [𝑛] 𝒀=

21 Representation Method for Set Cover
Partition Representation Method for Set Cover So if 𝑋 exists, for some l= 0.5± 𝑂 𝜖 𝑛, there exist Ω 2 𝜎𝑛 /𝑛 witness halves of size l We can guess l and sample 𝒲⊆ 𝑛 𝑙 , by including every 𝑙-sized set with probability 2 −𝜎𝑛 For some 𝑙, 𝒲 contains a witness halve with good probability Given 𝒲⊆ 𝑛 𝑙 , we need to determine whether there exist 𝑌∈𝒲 and 𝑋 1 , 𝑋 2 ∈ [𝑚] 𝑠/2 s.t. 𝑁 𝑋 1 =𝑌,𝑁 𝑋 2 = 𝑛 ∖𝑌 Denote ↓𝒲≔ {𝑃:∃𝑄∈𝒲∧𝑃⊆𝑄} ↑𝒲≔ {𝑃:∃𝑄∈𝒲∧𝑃⊇𝑄} This can be done with standard DP in time O ∗ ( ↑𝒲 + ↓𝒲 )

22 Representation Method for Set Cover
Partition Representation Method for Set Cover Choosing 𝜖≈ 𝜎 4 , ↑𝒲 + ↓𝒲 is 𝑂 ∗ −Ω( 𝜎 4 ) 𝑛 We want to stay close to the middle layer! The claimed running time follows The analysis might be improvable to have better dependence on 𝜎, but for significant improvements additional algorithmic ideas seem needed The algorithm works for Set Cover using a standard reduction

23 Concluding Remarks + open questions
𝑂 ∗ −Ω( 𝜎 4 ) 𝑛 time for set covers of size 𝜎𝑛 Additive 1-apx for chromatic nr. in same time Set Cover with set sizes adding up to 1+𝜖 𝑛 faster? Witness halves might be unbalanced Subset Sum with target 𝑡 in time 𝑂 ∗ ( 𝑡 1−𝜖 )? Lower bound assuming SETH? Perhaps in a special case? More applications of representation method? Exact complexity of Set Cover still open Can reduce general case to special case solved in this work? Thanks for listening!


Download ppt "Finding Large Set Covers Faster via the Representation Method"

Similar presentations


Ads by Google