Conditional Lower Bounds for Dynamic Programming Problems Karl Bringmann Max Planck Institute for Informatics Saarbrcken, Germany

Embed Size (px)

DESCRIPTION

NP-hardness suppose we want to solve some problem we do not find any efficient algorithm prove NP-hardness! an efficient algorithm would show P=NP we may assume that no efficient algorithm exists relax the problem: should we search further? approximation algorithms, fixed parameter tractability, average case, heuristics…

Citation preview

Conditional Lower Bounds for Dynamic Programming Problems Karl Bringmann Max Planck Institute for Informatics Saarbrcken, Germany 42:00 ??:00 18:40 29:00 Conditional Lower Bounds (in P) Easy Proof Example Conclusion I. II. III. IV. 28:00 Beyond Conditional Lower Bounds NP-hardness suppose we want to solve some problem we do not find any efficient algorithm prove NP-hardness! an efficient algorithm would show P=NP we may assume that no efficient algorithm exists relax the problem: should we search further? approximation algorithms, fixed parameter tractability, average case, heuristics What about polynomial time? suppose we want to solve another problem which barriers prevent subquadratic algorithms should we search for faster algorithms? this is polynomial time = efficient = easy ? ? find relations to other hard problems! Strong Exponential Time Hypothesis a hard problem: SAT: Strong Exponential Time Hypothesis (SETH) [Impagliazzo, Paturi,Zane01] More hard problems 3SUM: compute the distance between any pair of vertices APSP: does it contain a triangle? Triangle: Reductions = Relations transfer hardness of one problem to another one by reductions problem P time reduction instance I I is a yes-instanceI is a yes-instance problem P instance I Reductions = Relations transfer hardness of one problem to another one by reductions problem P reduction instance I 1 problem P instance I instance I k Dynamic Programming Problems abbcad acdaabd = max{ T[i-1,j], T[i,j-1], match optimal substructure T[i,j] = abbcad a c d a a b d longest common subsequence (LCS): overlapping subproblems T[i,j] Dynamic Programming Problems longest common subseq. [B.,Knnemann FOCS15, Abboud,Backurs,V-Williams FOCS15] edit distance, longest palindromic subsequence, Frchet distance,... we can stop searching for faster algorithms! in this sense, conditional lower bounds replace NP-hardness if you believe in faster algorithms for these problems: start with SAT! improvements are at least as hard as a breakthrough for SAT Dynamic Programming Problems bitonic TSP [de Berg,Buchin,Jansen,Woeginger15+] longest common subseq. [B.,Knnemann FOCS15, Abboud,Backurs,V-Williams FOCS15] edit distance, longest palindromic subsequence, Frchet distance,... longest increasing subsequence, matrix chain multiplication,... Dynamic Programming Problems bitonic TSP [de Berg,Buchin,Jansen,Woeginger15+] maximum submatrix [Kozma,V-Williams15+] longest common subseq. [B.,Knnemann FOCS15, Abboud,Backurs,V-Williams FOCS15] edit distance, longest palindromic subsequence, Frchet distance,... longest increasing subsequence, matrix chain multiplication, Dynamic Programming Problems bitonic TSP [de Berg,Buchin,Jansen,Woeginger15+] maximum submatrix [Kozma,V-Williams15+] CFG parsing [Abboud,Backurs,V-Williams FOCS15][Valiant74] longest common subseq. [B.,Knnemann FOCS15, Abboud,Backurs,V-Williams FOCS15] edit distance, longest palindromic subsequence, Frchet distance,... longest increasing subsequence, matrix chain multiplication,... Dynamic Programming Problems bitonic TSP [de Berg,Buchin,Jansen,Woeginger15+] maximum submatrix [Kozma,V-Williams15+] CFG parsing [Abboud,Backurs,V-Williams FOCS15][Valiant74] language edit distance [B.,Grandoni,Saha,V-Williams16+] longest common subseq. [B.,Knnemann FOCS15, Abboud,Backurs,V-Williams FOCS15] edit distance, longest palindromic subsequence, Frchet distance,... longest increasing subsequence, matrix chain multiplication,... Dynamic Programming Problems bitonic TSP [de Berg,Buchin,Jansen,Woeginger15+] maximum submatrix [Kozma,V-Williams15+] CFG parsing [Abboud,Backurs,V-Williams FOCS15][Valiant74] language edit distance [B.,Grandoni,Saha,V-Williams16+] longest common subseq. [B.,Knnemann FOCS15, Abboud,Backurs,V-Williams FOCS15] edit distance, longest palindromic subsequence, Frchet distance,... longest increasing subsequence, matrix chain multiplication,... Open:... Complexity Inside P SATEDITLCSFrchetdiameterOVCollinearityNegative TriangleRadius 3SUM-hard APSP equivalent SETH-hard classification of polynomial time problems APSP Triangle-hard 3SUM Conditional Lower Bounds (in P) Easy Proof Example Conclusion I. II. III. IV. Beyond Conditional Lower Bounds Proof Example: NFA Acceptance start T[0] := {starting state} Proof Example: NFA Acceptance start for simplicity we assume: Thm: [Impagliazzo] Proof Example: Preparations Proof: Thm: Proof Example: Preparations Proof: Thm: Proof Example: Clause Gadgets Proof: Thm: Proof Example: Clause Gadgets Proof: Thm: Proof Example: Complete Construction start equivalent to SAT instance Conditional Lower Bounds (in P) Easy Proof Example Beyond Conditional Lower Bounds Conclusion I. II. III. IV. Hardness Motivates New Algorithms Are conditional lower bounds purely negative results? No! lower bounds motivate relaxing the goal: approximation algorithms: in subquadratic time! parameterized complexity: multi-variate analysis (average case / smoothed analysis) thus conditional lower bounds motivate new algorithms! Approximation Algorithms [Andoni,Krauthgamer,Onak FOCS10] Is this the best possible approximation factor? Thm: we know: ? Approximation for Frchet Distance [B.,Mulzer SoCG15] Thm: [B.,Mulzer SoCG15] Thm: open problem: close this gap! [B. FOCS14] Thm: Multi-variate Runtime Analysis.. number of dominant pairs longest common subsequence has been studied w.r.t many parameters:.. length of longer string.. length of shorter string.. length of LCS.. number of matching pairs abbcad a c d a a b d122234 Known Algorithms [Hunt,Szymanski77] Is this optimal? [Hirschberg77] [Apostolico86] [Wu,Manber,Myers,Miller90] [Wagner,Fischer74] logfactor improvements: [Masek,Paterson80], [Apostolico,Guerra87], [Eppstein,Galil,Giancarlo, Italiano92], [Bille,Farach-Colton08], [Iliopoulos,Rahman09] Best algorithm: Parameter Setting let etc. We have to understand the interdependencies of parameters first! Parameter Relations This list is complete. for any target values satisfying these inequalities, etc. values up to constant factors, i.e., Results Thm: unless SETH fails, any algorithm takes time at least Best algorithm: [B.,Knnemann16+] a parameter setting is nontrivial if it contains infinitely many instances iff the target values satisfy our parameter relations (for ) we also have tight bounds for any constant alphabet size Conditional Lower Bounds (in P) Easy Proof Example Beyond Conditional Lower Bounds Conclusion I. II. III. IV. Conditional Lower Bounds allow to classify polynomial time problems 3SUMSATEDITLCSFrchetdiameterOVCollinearityNegative TriangleRadiusAPSP Conditional Lower Bounds allow to classify polynomial time problems replace NP-hardness yield good reasons to stop searching for faster algorithms should belong to the basic toolbox of theoretical computer scientists allow to search for new algorithms with better focus improve SAT before EDIT/LCS/Frchet/ non-matching lower bounds suggest better algorithms relax the problem and study approximation algorithms, motivate new algorithms parameterized running time,