Assuming that P is not equal to NP, the worst-case run time of any algorithm solving an NP-complete problem must be super-polynomial. But what is the fastest run time we can get? Before one can even hope to approach this question, a more provocative question presents itself: Since for many problems the naive brute-force baseline algorithms are still the fastest ones, maybe their run times are already optimal? The area that we call in this survey "fine-grained complexity of NP-complete problems" studies exactly this question. We invite the reader to catch up on selected classic results as well as delve into exciting recent developments in a riveting tour through the area passing by (among others) algebra, complexity theory, extremal and additive combinatorics, cryptography, and, of course, last but not least, algorithm design.
翻译:假设P不等于NP,任何求解NP完全问题的算法在最坏情况下的运行时间都必须是超多项式的。但我们可以获得的最快运行时间是多少?在人们甚至有望探讨这个问题之前,一个更具挑战性的问题已然浮现:既然对于许多问题,朴素的暴力基线算法仍然是最快的,也许它们的运行时间已经是最优的?我们在本综述中称为“NP完全问题的细粒度复杂性”的领域,正是研究这一问题的。我们邀请读者通过一次引人入胜的领域巡览,回顾选定的经典成果并深入探讨激动人心的最新进展,沿途将经过(其中包括)代数、复杂性理论、极值与加法组合学、密码学,当然,最后但同样重要的是,算法设计。