Implications of the Exponential Time Hypothesis
Total Page:16
File Type:pdf, Size:1020Kb
Implications of the Exponential Time Hypothesis Anant Dhayal May 14, 2018 Abstract The Exponential Time Hypothesis (ETH) [14] states that for k ≥ 3, k-SAT doesn't δn have a sub-exponential time algorithm. Let sk = inffδ j 9 2 time algorithm for solving k-SATg, then ETH is equivalent to s3 > 0. Strong ETH (SETH) [13] is a stronger conjecture which states that lim sk = 1. k!1 In this report we survey lower bounds based on ETH. We describe a reduction from k-SAT to NP-complete CSP's [5]. In particular this implies that no NP-complete CSP has a sub-exponential time algorithm. We also survey lower bounds implied by SETH. 1 Introduction CNF-SAT is the canonical NP-complete problem [9, 17]. A literal is a boolean variable or its negation, and a clause is a disjunction of literals. The input of CNF-SAT is a boolean formula in conjunctive normal form (CNF), i.e., conjunction of clauses. The goal is to check if there is an assignment to the variables which satisfies all the clauses. k-SAT is a special case of CNF-SAT where the clause width (the number of literals in a clause) is bounded by the constant k. When k = 2 the problem has a polynomial time algorithm. However for k ≥ 3 it is proved to be NP-complete [9, 17], hence there is no polynomial time algorithm unless P = NP. When k ≥ 4 there is a simple clause width reduction from k-SAT to (k−1)-SAT wherein we replace a k-clause (x1 _x2 _:::_xk) by two clauses (x1 _x2 _:::_xk−2 _y)^(xk−1 _xk _y) by introducing a new variable y. Unfortunately this reduction doesn't work for k = 3. Hereafter let's assume k ≥ 3. The best known algorithm for k-SAT runs in exponential time [20]. One of the central goals of complexity theory is to figure out whether k-SAT has a sub-exponential time algorithm. To study this let us define the time complexity class sub-exponential (SE). Definition 1 (SE: Sub-exponential time complexity). Let P be a decision problem and m be a parameter function defined on the input space of P. The tuple (P; m) belongs to the complexity class SE if for every > 0, and for every input x, there is a deterministic algorithm which runs in time O(poly(jxj)2m(x)). Let n denote the number of variables (vertices) and m denote the number of clauses (edges) in a CNF formula (graph). We abuse notation to write k-SAT 2 SE to mean (k- SAT,n) 2 SE. Similarly for any graph problem P we write P 2 SE to mean (P; n) 2 SE. 1 Two natural questions to consider are: 1. What role does the parameter k play in terms of inclusion of k-SAT in SE? What implications will a sub-exponential time algorithm for 3-SAT have on k-SAT for k ≥ 4? 2. What role does the parameter n play? Does changing the parameter from n to m place k-SAT in SE? Or does the existence of a sub-exponential time algorithm in the latter case also imply the existence of a sub-exponential time algorithm in the former case? The Sparsification Lemma (subsection 1.1) answers the above questions. This helped establish connections between complexity of many natural problems (across natural param- eters). These connections motivated a stronger conjecture than \P 6= NP", namely ETH (subsection 1.2). 1.1 SERF Reductions and the Sparsification Lemma Sparse-k-SAT is a special case of k-SAT where the number of clauses is a linear function of the number of variables. Note that (sparse-k-SAT,m) 2 SE is equivalent to (sparse-k-SAT,n) 2 SE. The Sparsification Lemma [14] shows that a sub-exponential time algorithm for sparse- k-SAT implies a sub-exponential time algorithm for k-SAT. This proves that (k-SAT,m) 2 SE if and only if (k-SAT,n) 2 SE. Any reduction in the standard \P vs NP" theory needs to preserve polynomial time com- plexity. To reduce problem A to problem B, one needs to give a polynomial time algorithm that solves problem B given oracle access to problem A. In this paper we look at reductions which preserve sub-exponential time complexity. These reductions are different from polynomial-time preserving reductions in the following ways: 1. The output parameter of the reduction should be a linear function (instead of a poly- nomial function) of the input parameter. 2. The reduction can run in sub-exponential time (instead of polynomial time) in the input parameter. Let us define this formally. Definition 2 (SERF: Sub-exponential Reduction Family). A SERF reduction from (P1; m1) to (P2; m2) is a collection of reductions from P1 to P2. For every > 0 the collection has a m1(x) Turing reduction R, that runs in time O(poly(jxj)2 ) on an input x and makes queries fy1; : : : ; ylg to P2. The reduction computes R(x) which satisfies the following conditions: • l 2 O(poly(jxj)2m1(x)) (implied by running time), • x 2 P1 () R(x) = 1, •8 i m2(yi) 2 O(m1(x)). We say that (P1; m1) SERF reduces to (P2; m2). 2 We say that (P1; m1) and (P2; m2) are SERF equivalent if (P1; m1) SERF reduces to (P2; m2) and (P2; m2) SERF reduces to (P1; m1). For the special case of k-SAT (graph problem) we omit the parameter when it is the number of variables (vertices). Fact 1. [14] Two useful properties of SERF reductions are: 1. SERF reductions are SE time preserving. That is, if (P1; m1) SERF reduces to (P2; m2) and (P2; m2) 2SE, then (P1; m1) 2 SE. 2. Transitivity: If (P1; m1) SERF reduces to (P2; m2) and (P2; m2) SERF reduces to (P3; m3), then (P1; m1) SERF reduces to (P3; m3). Now we are in a position to formalize the Sparsification Lemma. Theorem 1 (Sparsification Lemma [14]). There is an algorithm Sparse(k; ), that takes as input a k-SAT formula x and an > 0. It runs in time O(poly(jxj2n) and outputs a set of k-SAT instances fx1; : : : ; xlg which satisfy the following conditions: • l 2 O(poly(jxj)2n), W • x is satisfiable () [xi is satisifable], i •8 i mi ≤ c(k; )n, where mi is the number of clauses in xi and c(k; ) is a constant independent of n. Having defined this we are in a position to answer the questions posed earlier. The Spar- sification Lemma addresses the latter question, that is the parameters n and m are equivalent as far as inclusion of k-SAT in SE is concerned (fact 1.1). To answer the former question we consider a reduction that takes as input a k-SAT formula and outputs 3-SAT formulae. The reduction comprises of two steps - Sparse(k; ) followed by clause width reduction. The clause width reduction adds a new variable for each input clause. Since the output formulae of Sparse(k; ) are sparse, we only need to add linearly many new variables in each 3-SAT formula instead of O(nk) variables. This gives a SERF reduction from k-SAT to 3-SAT (fact 1.2). 1.2 ETH and SETH Due to the Sparsification Lemma existence of a sub-exponential time algorithm is equivalent for the following problems: • k-SAT • Sparse-k-SAT • NP-complete problems that are SERF equivalent to k-SAT For some of the above problems, clever algorithms with time complexity exponentially better than brute-force search have been designed. However, there has been no substantial improve- ment in the time complexity in the past few years. The algorithmic paradigms used presently have failed to improve the running time to sub-exponential time for the problems. This has lead us to conjecture exponential time hypothesis (ETH). 3 Conjecture 1 (ETH: Exponential Time Hypothesis). k-SAT doesn't belong to SE. The CNF-SAT problem is non-trivial because the set of variables in one clause intersects with the sets of variables in other clauses. This results in a correlation between the satisfia- bility of two clauses. Thus the task of finding a satisfying assignment becomes difficult. The (1− c )n best known algorithm for k-SAT [20] runs in time O(2 k ), where c is a constant inde- pendent of n. This algorithm exploits the structure of k-SAT which results in considerable saving (compared to brute-force) for small k. However, the saving falls quickly as the value of k increases. There has been no further progress in the past two decades to remove (change) the dependence on k. Based on the saving patterns discussed above, a stronger conjecture can be formulated. δn Let sk = inffδ j 9 2 time algorithm for solving k-SATg and let s1 = limk!1 sk. In [13] it was proved that sk ≤ (1 − d=k)s1 for d > 0, independent of k. This equation along with ETH (s3 > 0) implies that the series fskgk≥3 is increasing infinitely often. This equation also shows that any improvement in the time complexity of CNF-SAT will decrease the sk values. This in turn suggests an improvement in the time complexity of k-SAT. However, the improvement in the time complexity does not seem possible, as discussed above. This motivated the formulation of a stronger conjecture { Strong ETH (SETH). Conjecture 2 (SETH: Strong Exponential Time Hypothesis).