New Bounds for MAX-SAT by Clause Learning Alexander S. Kulikov1? and Konstantin Kutzkov2 1

St. Petersburg Department of Steklov Institute of Mathematics 27 Fontanka, 191023 St.Petersburg, Russia [email protected] 2 Department of Computer Science, University of Munich Oettingenstr. 67, 80538 M¨ unchen, Germany [email protected]

Abstract. To solve a problem on a given CNF formula F a splitting algorithm recursively calls for F [v] and F [¬v] for a variable v. Obviously, after the first call an algorithm obtains some information on the structure of the formula that can be used in the second call. We use this idea to design new surprisingly simple algorithms for the MAX-SAT problem. Namely, we show that MAX-SAT for formulas with constant clause density can be solved in time cn , where c < 2 is a constant and n is the number of variables, and within polynomial space (the only known such algorithm by Dantsin and Wolpert uses exponential space). We also prove that MAX-2-SAT can be solved in time 2m/5.88 , where m is the number of clauses (this improves the bound 2m/5.769 proved independently by Kneis et al. and by Scott and Sorkin).

1

Introduction

Splitting method is one of the most popular ways of proving upper bounds for SAT and MAX-SAT problems. The simplest form of a splitting algorithm is given in Fig. 1. Obviously, without the simplification phase the worst case running time of such an algorithm is 2n , as it just considers all possible candidates (i.e., assignments of Boolean values to all variables of a formula) to solutions. A natural idea for reducing the running time of such an algorithm is introducing the following partial order on candidates: α is stronger than β if β cannot be a solution without α being a solution. Clearly, in such a case there is no need in considering the assignment β and thus the search space is reduced. This is actually what is done at simplification phase in many known splitting algorithms. For example, if l is a pure literal, then any assignment α 3 l is stronger than (α\{l}) ∪ {¬l}. Thus to prove that a given splitting algorithm is correct one has to prove that any possible candidate is either considered by the algorithm or is weaker than some other assignment. However such kind of knowledge is typically used in the same branch. That is, if in some branch an algorithm does ?

Supported in part by INTAS (grants 04-77-7173, 05-109-5352), RFBR (grants 05-0100932-a, 06-01-00502-a, 06-01-00584-a) and Russian Science Support Foundation.

Splitting Algorithm Input: a CNF formula F . Method. 1. 2. 3. 4.

Simplify F as long as it is possible. If the solution for F is obvious (in particular, if F is empty), then return it. Choose a variable v according to some heuristic. Recursively call for F [v] and F [¬v] and return the solution according to the solutions returned by both recursive calls.

Fig. 1. Form of a splitting algorithm

not consider an assignment β, then there is an assignment α, which is stronger than β and is considered in the same branch. In this paper we show how to get rid in the current branch of the candidates considered in another branch. The idea itself is quite natural and not new: it is used, e.g., in theoretical algorithms ([1], [2]), practical solvers ([3], [4], [5]) and even in proof systems ([6]). In SAT algorithms this is usually called clause learning, which means that an algorithm stores partial assignments that make a formula unsatisfiable. In our new algorithms we use a natural extension of this simple idea, i.e., we store partial assignments that cannot be extended to an optimal (satisfying maximal possible number of clauses) assignment. We prove the following bounds (throughout all the paper we ignore polynomial factors): – cn for MAX-SAT for formulas with constant clause density, where c < 2 is a constant and n is the number of variables; – 2m/5.88 for MAX-2-SAT, where m is the number of clauses. Both algorithms use only polynomial space.

Overview of previous results. We are only aware of one bound better than 2n for MAX-SAT for formulas with constant clause density. The algorithm is due to Dantsin and Wolpert [7]. This algorithm however uses exponential space. For MAX-2-SAT, several bounds w.r.t. the number of clauses were obtained since 1999, see Table 1. Note that the bounds by Scott and Sorkin are actually applied to a wider class of problems, namely for MAX-2-CSP. All these bounds explore the splitting method, which seems to be unable to give any non-trivial upper bound for MAX-2-SAT w.r.t. the number of variables. Williams [8] uses a fast matrix multiplication algorithm in a nice way to get a 2n/1.261 bound.

Table 1. Known bounds for MAX-2-SAT 2m/2.873 2m/4.000 2m/5.000 2m/5.000 2m/5.217 2m/5.500 2m/5.769 2m/5.769

2 2.1

[9] [10] [11] [12] [13] [14] [15] [16]

Niedermeier and Rossmanith Hirsch Gramm, Hirsch, Niedermeier, and Rossmanith Scott and Sorkin Kneis and Rossmanith Kojevnikov and Kulikov Kneis, M¨ olle, Richter, and Rossmanith Scott and Sorkin

General Setting Main Definitions

Let V be a set of Boolean variables. The negation of a variable v ∈ V is denoted by ¬v. A literal is either a variable or its negation. A clause and an assignment are sets of literals that do not contain any variable together with its negation. A formula in conjunctive normal form (CNF) is a multi-set of clauses. A total assignment is an assignment to all variables of a formula. We say that a clause C is satisfied by an assignment α, if C ∩ α 6= ∅; however, we say that C is falsified by α, if ∀l ∈ C, ¬l ∈ α. By V (α) we denote the set of variables of α. By Cl(F, α) we denote the number of clauses of F satisfied by α and by MCl(F ) we denote the maximal number of simultaneously satisfiable clauses (thus, MCl(F ) = maxα Cl(F, α)). The SAT problem asks whether there exists an assignment that satisfies all clauses of a given formula. The MAX-SAT problem asks for an assignment that satisfies MCl(F ) clauses. A d-literal is a literal occurring exactly d times in a formula. A d+ -literal appears at least d times. A (d1 , d2 )-literal appears d1 times positively and d2 times negatively. Other literal types are defined similarly. Let F be a CNF formula, v be a variable of F , α be an assignment to variables of F . We usually write assignments {v} and {¬v} just as v and ¬v. By F [α] we denote the formula resulting from F by first removing all clauses satisfied by α and then removing all literals l such that ¬l ∈ α from the remaining clauses. Let also Fv = {C : C ∪ {v} ∈ F }, F¬v = {C : C ∪ {¬v} ∈ F }, F−v = {C ∈ F : v 6∈ C} , then clearly F [v] = F¬v ∪ F−v , F [¬v] = Fv ∪ F−v . For assignments α and β such that V (β) ⊆ V (α), by αβ we denote the assignment resulting from α by changing the values of V (β) in accordance with β. For example, αa assigns the value True to a.

Let α be a total assignment to a formula F and a be an (i, j)-literal of F . Then, Cl(F, αa ) = i + Cl(F [a], α) = i + Cl(F¬a , α) + Cl(F−a , α) ,

(1)

Cl(F, α¬a ) = j + Cl(F [¬a], α) = j + Cl(Fa , α) + Cl(F−a , α) .

(2)

By n(F ) and m(F ) we denote, respectively, the number of variables and clauses in a formula F (we usually omit F , when it is clear from the context). 2.2

Splitting Algorithms

A splitting algorithm usually first somehow simplifies an input formula F and then recursively calls for several formulas of the form F [α] (this is called splitting). To estimate the running time of a splitting algorithm one has to specify a formula complexity measure γ(F ). A splitting number of a splitting F [α1 ], . . . , F [αk ] is defined to be the unique positive root of the equation Pk 1 = i=1 x−ai , where ai = γ(F ) − γ(F [αi ]), and is denoted by τ (a1 , . . . , ak ). It is known [17] that the running time of a splitting algorithm on a formula γ(F ) F does not exceed τmax , where τmax is the maximal splitting number of this algorithm. Thus, to prove upper bounds on the running time it suffices to prove upper bounds on τmax . There are several simple properties of splitting numbers [17]. In particular, – – – – –

τ (a, a) = 21/a ; √ τ (a, b) ≤ 21/ ab ; τ (a1 , . . . , ap ) ≤ τ (b1 , . . . , bp ), if ∀i, ai ≥ bi ; τ (1, 2, . . . , a) < 2 and τ (1, 2, . . . , a) < τ (1, 2, . . . , a + 1); τ (1, a) → 1 as a → ∞.

To prove that a splitting algorithm is correct one has to prove that this algorithm considers all possible candidates to solutions (e.g., if an algorithm for SAT returns the answer “Unsatisfiable”, then one has to guarantee that it considered all possible total assignments and none of them is a satisfying assignment). To achieve this goal splitting algorithms usually split on a set of assignments α1 , . . . , αk , such that any possible total assignment is an extension of one of αi ’s. However if we know that a total assignment β cannot be a solution without a total assignment α being a solution, then there is no need to consider β. For example, if l is a pure literal, then there is no sense in considering assignments containing ¬l. We formalize this simple idea in the following definition (a similar definition is used in [18]). Let α1 and α2 be assignments to variables of a formula F . We say that α1 is stronger w.r.t. F than α2 and write α1 F α2 , if for any total assignment β, β α2 can be a solution to a problem for F only if β α1 is a solution (again, we omit F if this does not lead to ambiguity). By a solution for SAT we mean a satisfying assignment, while a solution for MAX-SAT is an assignment satisfying the maximal number of clauses.

3

A New Algorithm for MAX-SAT

In this section we show that MAX-SAT for formulas with at most ∆n clauses, where ∆ is a constant, can be solved in time cn , where c < 2 is a constant. First, let us give some informal ideas showing that there exists a SAT algorithm with running time cn , where c < 2, for formulas with constant clause density ∆. The algorithm works as follows. If a formula contains a (d+ , d+ )literal l, for some big constant d = d(∆), it just splits on it. This provides a good splitting number w.r.t. the number of clauses (in both branches at least d clauses are eliminated). Otherwise, the algorithm picks a d− -literal a and checks the satisfiability of Fa . This can be easily done in polynomial time: at each step we choose a literal (of course, we assume that it is not pure) and split the current formula into two formulas having fewer clauses; since Fa contains at most d clauses, the size of the resulting splitting tree is at most 2d . If Fa is unsatisfiable, then so is F [¬a] = Fa ∪ F−a and we can just assign the value True to a. Otherwise, we find a satisfying assignment to Fa . It is easy to see that it contains at most d literals. Let us denote it by α = {l1 , . . . , lk } (k ≤ d). Now we recursively call for F [¬a] = Fa ∪ F−a . If the answer is “Satisfiable” we immediately return. Otherwise we can conclude that α cannot be extended to a satisfying assignment of F−a , which means that we do not need to consider extensions of α in the a-branch. Thus, we split F [a] to F [a, ¬l1 ], F [a, l1 , ¬l2 ], . . . , F [a, l1 , . . . , lk−1 , ¬lk ] . The overall splitting number w.r.t. n is τ (1, 2, . . . , k+1) < 2. Thus, the algorithm is always able to find a good splitting w.r.t. either n or m. Since m ≤ ∆n, we can prove that the overall running time of this algorithm is cn , where c < 2. The formal description of the algorithm for MAX-SAT is given in Fig. 2. The algorithm first applies the pure literal rule as long as it is applicable. Then it splits on a D+ -literal, if such literal exists. If there is no such literal, the algorithm just selects any literal a and finds optimal assignments αa and α¬a for Fa and F¬a , respectively. Since both Fa and F¬a contain at most D clauses, this can be done in polynomial time. Moreover, we can assume that both αa and α¬a contain at most D literals. Finally, the algorithm splits a formula using the literals of one of the found assignments. We do not explain here how the algorithm constructs the answer from the answers returned by the recursive calls, as this is a standard operation (all one needs to do is to count the number of currently satisfied clauses; see, e.g., [10]). Theorem 1. For any constant ∆ > 0 there exist constants D > 0 and c < 2 such that MaxSatAlg(D) returns MCl(F ) for any formula F with at most ∆n(F ) clauses in time cn(F ) . Proof. If a current formula F contains a D+ -literal, the algorithm just splits on it. This removes one variable and at least one clause in one branch and one variable and at least D clauses in the other branch (remind that F does not contain pure literals). Now consider the case when F consists of D− -literals

Algorithm MaxSatAlg Parameters: a positive real number D. Input: a CNF formula F . Output: MCl(F ). Method. 1. Assign the value True to all pure literals of F . 2. If F is empty, then return 0. 3. If F contains a D+ -literal a, then recursively call for F [a] and F [¬a] and return the answer. 4. Let a be any literal of F . Let also i = d(a), j = d(¬a). 5. Find optimal assignments for Fa and F¬a . Denote them by αa = {x1 , . . . , xp } and α¬a = {y1 , . . . , yq }, respectively, and let ka = MCl(Fa ) = Cl(F, αa ) , k¬a = MCl(F¬a ) = Cl(F, α¬a ) . 6. If i + k¬a ≥ j + ka , then recursively call for F [a], F [¬a, ¬y1 ], F [¬a, y1 , ¬y2 ], . . . , F [¬a, y1 , . . . , yq−1 , ¬yq ] and return the answer. 7. Otherwise recursively call for F [¬a], F [a, ¬x1 ], F [a, x1 , ¬x2 ], . . . , F [a, x1 , . . . , xp−1 , ¬xp ] and return the answer.

Fig. 2. An algorithm for MAX-SAT

only. Assume w.l.o.g. that i + k¬a ≥ j + ka (remind that a is an (i, j)-literal). We claim that α¬a ∪ a F α¬a ∪ ¬a. Indeed, consider any total assignment β to F . By (1), Cl(F, β α¬a ∪a ) = i + k¬a + Cl(F−a , β α¬a ) , while by (2), Cl(F, β α¬a ∪¬a ) ≤ j + ka + Cl(F−a , β α¬a ) . So, β α¬a ∪a satisfies at least as many clauses of F as β α¬a ∪¬a (for any β) and we conclude that α¬a ∪ a F α¬a ∪ ¬a. Thus, we do not need to consider any extension of α¬a in the ¬a-branch. Thus, we can split as follows: F [a], F [¬a, ¬y1 ], F [¬a, y1 , ¬y2 ], . . . , F [¬a, y1 , . . . , yq−1 , ¬yq ] . If i + k¬a < j + ka , then by using exactly the same argument one can show that αa ∪ ¬a F αa ∪ a. This ensures that MaxSatAlg is correct. Now let us estimate the running time. We use the following complexity measure (for w = w(∆) defined later):  n(F ) + wm(F ), if F contains a D+ -literal, γ(F ) = n(F ), otherwise. If a formula contains a D+ -literal, the algorithm splits with a splitting number at most τ (1 + w, 1 + wD). Otherwise, the splitting number is at most rD = τ (1, 2, . . . , D + 1) (as p, q ≤ D). Now let d be any constant bigger than ∆. Assume now that there exists constants w and D, such that 1

1

τ (1 + w, 1 + wD) ≤ 2 1+wd and τ (1, . . . , D + 1) ≤ 2 1+wd . Then the running time of the algorithm is bounded by γ

n+wm

1+w∆

2 1+wd ≤ 2 1+wd ≤ 2n 1+wd = cn , 1+w∆

where c = 2 1+wd < 2 is a constant. Below we prove that such w and D exist. It is easy to see that for any integer D ≥ 1 there exists wD > 0 such that 1 τ (1, . . . , D + 1) = 2 1+wD d (since τ (1, . . . , D + 1) < 2). Thus, it is sufficient to find 1 an integer D such that τ (1 + wD , 1 + wD D) ≤ 2 1+wD d . To show this it suffices √1 to show that (1 + wD d)2 ≤ (1 + wD )(1 + wD D) (since τ (a, b) ≤ 2 ab ). The last inequality is equivalent to wD d2 +2d ≤ D +1+wD D, which is obviously satisfied for large enough D. t u

4

MAX-2-SAT

In this section we present a new algorithm for MAX-2-SAT with a running time 2m/5.88 ≈ 1.12512m . It extends an algorithm by Kojevnikov and Kulikov [14] by using the idea of clause learning. The analysis is mostly the same as in [14] with several cases improved. The algorithm first simplifies an input formula by

applying (as long as it is possible) to it almost common clauses, pure literal, dominating unit clause, and frequently meeting variables rules. We do not describe here the rules in detail (see [14]), but provide several important properties of simplified formulas in Lemma 1, where by a simplified formula we mean a formula for which no rule described above is applicable. After simplifying the algorithm just splits a resulting formula by assigning Boolean values to some variables. Before stating some known properties of this algorithm we give some additional definitions. For a literal l, by d1 (l) we denote the number of unit clauses (l) in a formula and by d2 (l) we denote the number of 2-clauses containing the literal l. By weight of a variable x we mean d2 (x) + d2 (¬x). Lemma 1 ([14]). – A simplified formula does not contain variables of weight at most 2. – A simplified formula does not contain clauses of the form (xy) and (¬xy). – If a variable x occurs at most one time without a variable y, then a formula can be simplified. – If F is a simplified formula, (xy) ∈ F and y has weight 3, then at least in one of the formulas F [x] and F [¬x] the simplification rules assign a Boolean value to y. – If a simplified formula F contains only variables of weight 3, then there is a variable x, such that both F [x] and F [¬x] (after simplifying) contain at least 6 variables fewer than F . The running time of the algorithm by Kojevnikov and Kulikov is estimated w.r.t. the following complexity measure: γ(F ) = N3 + 1.9 · N4 (F ) +

X i · Ni (F ) 2

i≥5

,

where Ni (F ) is the number of variables of weight i of F . We change the coefficients as follows: γ(F ) = 0.98 · N3 + 1.96 · N4 (F ) +

X i · Ni (F ) i≥5

2

.

Thus, we have to prove that the algorithm always splits a simplified formula with a splitting number at most τ (5.88, 5.88). Note that reducing the weight of any variable in a simplified formula reduces γ at least by 0.5 (as the difference between any two coefficients before Ni is at least 0.5). First consider the case, when a formula F contains a variable x of weight w ≥ 6. In this case we can just split on this variable. This reduces γ at least by w in the both branches: eliminating x reduces γ at least by w/2, decreasing the weight of neighbors of x further reduces γ at least by w/2. Now consider a case when F contains only variables of weight at most 4. Let x be a variable of weight 4. For 1 ≤ i ≤ j ≤ 4, let kij denote the number of neighbors of x that have weight j and occur i times with x. It is easy to see

that such a neighbor of x becomes a variable of weight (j − i) after assigning a Boolean value to x. By Lemma 1, kij = 0 for j ≤ 2 and for j −i ≤ 1. So, only k13 , k14 and k24 can be positive. Since x is a variable of weight 4, k13 +k14 +2k24 = 4. Now let F 0 be a formula obtained from F by assigning a Boolean value to x. Then, γ(F ) − γ(F 0 ) = (0.98 · k13 + 1.96 · (k14 + k24 + 1)) − 0.98 · k14 = 0.98 · (k13 + k14 + 2k24 ) + 1.96 = 0.98 · 4 + 1.96 = 5.88 . If F contains only variables of weight at most 3, then by Lemma 1 we can always find a (6, 6)-splitting w.r.t. n. This gives a (5.88, 5.88)-splitting w.r.t. γ, since γ(F ) = 0.98 · n(F ). The only remaining case is when a formula contains at least one variable of weight 5 and all other variables have weight at most 5 and this is the case where we explore clause learning. First, let us calculate a straightforward splitting number. It is done similarly to the case with a variable of weight 4: k13 + k14 + k15 + 2k24 + 2k25 + 3k35 = 5 , γ(F ) − γ(F 0 ) = (0.98 · k13 + 1.96 · (k14 + k24 ) + 2.5 · (k15 + k25 + k35 + 1)) −(0.98 · (k14 + k25 ) + 1.96 · k15 ) = 0.54 · (k13 + k14 + k15 + 2k24 + 2k25 + 3k35 ) + 2.5 +0.44 · (k13 + k14 + 2k24 + k25 + 2k35 ) = 5.2 + 0.44 · (k13 + k14 + 2k24 + k25 + 2k35 ) . Thus, if (k13 + k14 + 2k24 + k25 + 2k35 ) ≥ 2

(3)

then we already have a required splitting number. This, in particular, means that we do not need to consider cases when either k24 > 0 or k35 > 0. The idea of clause learning is used in the following lemma, which says that for any two neighbors of a we do not need to consider extensions of some assignment to these neighbors in one of the branches. Lemma 2. Let F be a simplified 2-CNF formula, a be a variable of weight 5 and l, l0 be literals appearing with a. Then either {a, l1 , l2 } F {¬a, l1 , l2 } or {¬a, l1 , l2 } F {a, l1 , l2 } , where l1 is either l or ¬l and l2 is either l0 or ¬l0 . Proof. Let F contain i2 2-clauses with literal a, j2 2-clauses with ¬a, i1 clauses (a) and j1 clauses (¬a). Note that Fa and F¬a consist of i2 and j2 unit clauses, respectively.

Now, from the fact that 5 = (i2 + j2 ) = (i1 + i2 − j1 ) + (j1 + j2 − i1 ) we conclude that either (i1 +i2 −j1 ) or (j1 +j2 −i1 ) is at least 3. W.l.o.g. we assume that i1 + i2 − j1 ≥ 3. Let α be a total assignment to F . Then, by (1) and (2), Cl(F, αa ) = i1 + i2 + Cl(F¬a , α) + Cl(F−a , α) , Cl(F, α¬a ) = j1 + j2 + Cl(Fa , α) + Cl(F−a , α) . Thus, Cl(F, αa ) − Cl(F, α¬a ) = i1 + i2 − j1 − j2 + Cl(F¬a , α) − Cl(Fa , α) ≥ 3 − j2 + Cl(F¬a , α) − Cl(Fa , α) Note that Cl(F¬a , α) − Cl(Fa , α) ≥ −i2 , as α satisfies at least 0 clauses of F¬a and at most i2 clauses of Fa . If (l) or (¬l) is in F¬a , we set l1 to be a literal satisfying this unit clause. Otherwise, if (l) or (¬l) is in Fa , we set l1 so that it falsifies the corresponding clause. The literal l2 is defined similarly. Then, for any α 3 l1 , l2 , Cl(F¬a , α) − Cl(Fa , α) ≥ −i2 + 2, and hence Cl(F, αa ) − Cl(F, α¬a ) ≥ 3−j2 −i2 +2 ≥ 0. Thus, we have shown that for any total assignment α such that a, l1 , l2 ∈ α, Cl(F, αa ) ≥ Cl(F, α¬a ), which means that {a, l1 , l2 } F {¬a, l1 , l2 }. t u Let us give an example of using this lemma. Suppose that F contains the following five clauses: (al1 )(al2 )(al3 )(¬al4 )(¬al5 ) (and does not contain any other clauses with variable a). Lemma 2 implies that {a, ¬l2 , l4 } F {¬a, ¬l2 , l4 }. Indeed, any extension of {¬a, ¬l2 , l4 } satisfies at most 4 of the mentioned above clauses (as (al2 ) is falsified), while any extension of {a, ¬l2 , l4 } satisfies at least 4 of these clauses. Now we consider all the remaining cases. Remind that F contains only variables of weight at most 5 and let a be a variable of weight exactly 5. First consider the case when a has a neighbor b of degree 3. By (3), k13 = 1 and k15 = 4. By Lemma 1, b is assigned a Boolean value in at least one of the branches F [a] and F [¬a], moreover all three neighbors of b are different variables. Thus, splitting on a provides a splitting number not exceeding τ (5.2 + 0.44, 5.2 + 0.44 + 2 · 0.54) < 1.12. Suppose that a appears with some variable b twice. This means, by (3), that k25 = 1 and k15 = 3. Lemma 2 implies that {la , lb } F {¬la , lb }, where la and lb are literals of a and b. Thus, we can assign a Boolean value to b in one of the branches F [a] and F [¬a]. The corresponding splitting number is τ (5.2 + 0.44, 5.2 + 0.44 + 0.98) < 1.121. Now we know that a has exactly five different neighbors. Moreover, by (3) at most one of them has weight at least 4, while all other have weight exactly 5 (in other words, k14 ≤ 1, k15 ≥ 4, k14 + k15 = 5). W.l.o.g. we can assume that d1 (a) + d2 (a) − d1 (¬a) ≥ 3 (otherwise, we consider ¬a instead of a). Let b1 , b2 be any two literals appearing together with the literal a and c be any literal appearing together with the literal ¬a. Lemma 2 then implies that {a, ¬b1 , ¬b2 } F {¬a, ¬b1 , ¬b2 } ,

{a, ¬b1 , c} F {¬a, ¬b1 , c} . Thus we can split F to F [a], F [¬a, b1 ], F [¬a, ¬b1 , b2 , . . . , bi2 , ¬c1 , . . . , ¬cj2 ], where b1 , . . . , bi2 and c1 , . . . , cj2 are all literals appearing together with the literals a and ¬a, respectively. So all we have to do is to show that this splitting gives good splitting number in all the remaining cases. First, rename the literals so that the splitting above corresponds to a splitting F [a], F [¬a, l1 ], F [¬a, ¬l1 , l2 , l3 , l4 , l5 ] . Let l1 , l2 , l3 , l4 be literals of variables of weight 5 variables and l5 be literal of a variable of weight d, where d ∈ {4, 5}. Assume that l1 has at least three neighbors of degree less than 5 in F [¬a]. Then the straightforward splitting number is τ (5.2 + 0.44 · (5 − d), 5.2 + 0.44 · (5 − d) + 1.96 + 3 · 0.98 + 0.54, 5.2 + 0.44 · (5 − d) + 5 · 1.96 + (d − 5) · 0.98). In both cases it does not exceed 1.1249. Otherwise, the neighborhood of {l1 , l2 , l3 , l4 } in F [¬a] contains at least 8 literals of variables of weight 5 (and hence these are different from l1 , l2 , l3 , l4 , l5 ). In this case it is not difficult to show that the splitting number does not exceed τ (5.2 + 0.44 · (5 − d), 5.2 + 0.44 · (5 − d) + 1.96 + 4 · 0.54, 5.2 + 0.44 · (5 − d) + 5 · 1.96 + (d − 5) · 0.98 + 2.94), hence, 1.1246.

References 1. Williams, R.: On computing k-CNF formula properties. In: Proceedings of the 6th International Conference on Theory and Applications of Satisfiability Testing. Volume 2919 of Lecture Notes in Computer Science. (2003) 330–340 2. Robson, J.: Algorithms for maximum independent sets. Journal of Algorithms 7(3) (1986) 425–440 3. Marques-Silva, J., Sakallah, K.: Grasp: a search algorithm for propositional satisfiability. IEEE Transactionon Computers 48(5) (1999) 506–521 4. Moskewicz, M., Madigan, C., Zhao, Y., Zhang, L., Malik, S.: Chaff: engineering an efficient SAT solver. In: Proceedings of the 38th Design Automation Conference. (2001) 530–535 5. Zhang, H.: Sato: An efficient propositional prover. In: Proceedings of the 14th International Conference on Automated Deduction. Volume 1249 of Lecture Notes in Computer Science. (1997) 272–275 6. Beame, P., Impagliazzo, R., Pitassi, T., Segerlind, N.: Memoization and DPLL: formula caching proof systems. In: Proceedings of 18th IEEE Annual Conference on Computational Complexity. (2003) 248–259 7. Dantsin, E., Wolpert, A.: MAX-SAT for formulas with constant clause density can be solved faster than in O(2n ) time. In: Proceedings of the 9th International Conference on Theory and Applications of Satisfiability Testing. Volume 4121 of Lecture Notes in Computer Science. (2006) 266–276 8. Williams, R.: A new algorithm for optimal 2-constraint satisfaction and its implications. Theoretical Computer Science 348 (2005) 357–365 9. Niedermeier, R., Rossmanith, P.: New upper bounds for MaxSat. In: Proceedings of Automata, Languages and Programming: 26th International Colloquium. Volume 1644 of Lecture Notes in Computer Science. (1999) 575–585

10. Hirsch, E.A.: A 2K/4 -time algorithm for MAX-2-SAT: Corrected version. ECCC Report TR99-036, Revision 02 (2000) 11. Gramm, J., Hirsch, E.A., Niedermeier, R., Rossmanith, P.: Worst-case upper bounds for MAX-2-SAT with an application to MAX-CUT. Discrete Applied Mathematics 130(2) (2003) 139–155 12. Scott, A., Sorkin, G.: Faster algorithms for MAX CUT and MAX CSP, with polynomial expected time for sparse instances. In: Proceedings of 7th International Workshop on Randomization and Approximation Techniques in Computer Science. Volume 2764 of Lecture Notes in Computer Science. (2003) 382–395 13. Kneis, J., Rossmanith, P.: A new satisfiability algorithm with applications to MaxCut. Technical Report AIB2005-08, Dept. of Computer Science, RWTH Aachen University (2005) 14. Kojevnikov, A., Kulikov, A.S.: A new approach to proving upper bounds for MAX-2-SAT. In: Proceedings of the Seventeenth Annual ACM-SIAM Symposium on Discrete Algorithms. (2006) 11–17 15. Kneis, J., Moelle, D., Richter, S., Rossmanith, P.: Algorithms based on the treewidth of sparse graphs. In: Proceedings of the 31st International Workshop on Graph-Theoretic Concepts in Computer Science. Lecture Notes in Computer Science (2005) 385–396 16. Scott, A.D., Sorkin, G.B.: Linear-programming design and analysis of fast algorithms for Max 2-SAT and Max 2-CSP. Discrete Optimization (2006) to appear. 17. Kullmann, O., Luckhardt, H.: Algorithms for SAT/TAUT decision based on various measures. Preprint (1998) 18. Kulikov, A.S.: Automated generation of simplification rules for SAT and MAXSAT. In: Proceedings of the Eighth International Conference on Theory and Applications of Satisfiability Testing. Volume 3569 of Lecture Notes in Computer Science. (2005) 430–436

New Bounds for MAX-SAT by Clause Learning

2 Department of Computer Science, University of Munich. Oettingenstr. ... Supported in part by INTAS (grants 04-77-7173, 05-109-5352), RFBR (grants 05-01-. 00932-a ..... cations. Theoretical Computer Science 348 (2005) 357–365. 9.

178KB Sizes 4 Downloads 227 Views

Recommend Documents

Learning Bounds for Domain Adaptation - Alex Kulesza
data to different target domain with very little training data. .... the triangle inequality in which the sides of the triangle represent errors between different decision.

Refined Error Bounds for Several Learning Algorithms - Steve Hanneke
known that there exist spaces C for which this is unavoidable (Auer and Ortner, 2007). This same logarithmic factor gap ... generally denote Lm = {(X1,f⋆(X1)),...,(Xm,f⋆(Xm))}, and Vm = C[Lm] (called the version space). ...... was introduced in t

Generalization Bounds for Learning Kernels - NYU Computer Science
and the hypothesis defined based on that kernel. There is a ... ing bounds are based on a combinatorial analysis of the .... By the definition of the dual norm, sup.

Domain Adaptation: Learning Bounds and Algorithms
amounts of unlabeled data from the target domain are at one's disposal. The domain .... and P must not be too dissimilar, thus some measure of the similarity of these ...... ral Information Processing Systems (2008). Martınez, A. M. (2002).

Domain Adaptation: Learning Bounds and Algorithms
available from the target domain, but labeled data from a ... analysis and discrepancy minimization algorithms. In section 2, we ...... Statistical learning theory.

Domain Adaptation: Learning Bounds and Algorithms
Domain Adaptation: Learning Bounds and Algorithms. Yishay Mansour. Google Research and. Tel Aviv Univ. [email protected]. Mehryar Mohri. Courant ...

Domain Adaptation: Learning Bounds and ... - Semantic Scholar
samples for different loss functions. Using this distance, we derive new generalization bounds for domain adaptation for a wide family of loss func- tions. We also present a series of novel adaptation bounds for large classes of regularization-based

New exponential bounds and approximations for the ...
[7] F. S. Weinstein, “Simplified relationships for the probability distribution of phase .... access communications, and communication over fading channels. He has ...

New inner and outer bounds for the discrete ...
The rapid advancement of wireless technology in the past years has started what ... the adaptability, communication and cooperation capabilities of wireless.

New inner and outer bounds for the discrete ...
... in the past years has started what some commentators call the “wireless ... The constant increase of wireless services has led to a situation where new services have a ... termed the interference channel with conferencing encoders.

Small Clause Reconstructuring
Indefinites, of course, allow a third reading: low-scope, transparent (Fodor 1970), ..... Dissertation, MIT. ... University of Pennsylvania: Graduate Linguistic Student.

Domain Adaptation: Learning Bounds and Algorithms - COLT 2009
available from the target domain, but labeled data from a ... analysis and discrepancy minimization algorithms. In section 2, we ...... Statistical learning theory.

RESONANCES AND DENSITY BOUNDS FOR CONVEX CO ...
Abstract. Let Γ be a convex co-compact subgroup of SL2(Z), and let Γ(q) be the sequence of ”congruence” subgroups of Γ. Let. Rq ⊂ C be the resonances of the ...

Improved Competitive Performance Bounds for ... - Semantic Scholar
Email: [email protected]. 3 Communication Systems ... Email: [email protected]. Abstract. .... the packet to be sent on the output link. Since Internet traffic is ...

EFFICIENCY BOUNDS FOR SEMIPARAMETRIC ...
Nov 1, 2016 - real-valued functions on Rk. Assume that we are given a function ψ which maps Rp ×Rk into Rq with ..... rt = Λft + ut,. (6) with Λ = (λ1,λ2) ∈ R2, ft a common factor that is a R-valued process such that E(ft|Ft−1) = 0 and. Var

Rademacher Complexity Bounds for Non-I.I.D. Processes
Department of Computer Science. Courant Institute of Mathematical Sciences. 251 Mercer Street. New York, NY 10012 [email protected]. Abstract.

BOUNDS FOR TAIL PROBABILITIES OF ...
E Xk = 0 and EX2 k = σ2 k for all k. Hoeffding 1963, Theorem 3, proved that. P{Mn ≥ nt} ≤ Hn(t, p), H(t, p) = `1 + qt/p´ p+qt`1 − t´q−qt with q = 1. 1 + σ2 , p = 1 − q, ...

A Living Will Clause for Supporters of Animal ...
feelings might be radically contrary to utilitarian reasoning, or people would be free to .... humans, who still have a vivid awareness and a normal nervous system, and .... able minority capacity — to sign a one-way ticket to laboratory Hell.

Tight Bounds for HTN Planning
Proceedings of the 4th European Conference on Planning: Recent Advances in AI Planning (ECP), 221–233. Springer-. Verlag. Geier, T., and Bercher, P. 2011. On the decidability of HTN planning with task insertion. In Proceedings of the 22nd. Internat

Relative clause extraction complexity in Japanese - CiteSeerX
(1) INTEGRATION resources: connecting an incoming word into the ... 2) structural integration cost ..... Computational factors in the acquisition of relative clauses ...

Relative clause extraction complexity in Japanese - CiteSeerX
Illustration of the cost function: (1) Object-extracted ... Items: simple transitive clauses that made up each RC. Results: 4 items ... effect, it should occur at the verb.

Beating the Bounds - Esri
Feb 20, 2016 - Sapelli is an open-source Android app that is driven by pictogram decision trees. The application is named after the large Sapelli mahogany ...