A New Upper Bound for Max-2-Sat: A Graph-Theoretic Approach
aa r X i v : . [ c s . D S ] A p r A New Upper Bound for Max-2-SAT:A Graph-Theoretic Approach
Daniel Raible & Henning Fernau
University of Trier, FB 4—Abteilung Informatik, 54286 Trier, Germany { raible,fernau } @informatik.uni-trier.de Abstract. In MaxSat , we ask for an assignment which satisfies themaximum number of clauses for a boolean formula in CNF. We presentan algorithm yielding a run time upper bound of O ∗ (2 K . ) for Max-2-Sat (each clause contains at most 2 literals), where K is the numberof clauses. The run time has been achieved by using heuristic prioritieson the choice of the variable on which we branch. The implementation ofthese heuristic priorities is rather simple, though they have a significanteffect on the run time. Also the analysis uses a non-standard measure. Our Problem . MaxSat is an optimization version of the well-known deci-sion problem
SAT : given a boolean formula in CNF, we ask for an assignmentwhich satisfies the maximum number of clauses. The applications for
MaxSat range over such fields as combinatorial optimization, artificial intelligence anddatabase-systems as mentioned in [5]. We put our focus on
Max-2-Sat , whereevery formula is constrained to have at most two literals per clause, to whichproblems as
Maximum Cut and
Maximum Independent Set are reducible.Therefore
Max-2-Sat is N P -complete.
Results So Far . The best published upper bound of O ∗ (2 K . ) has been achievedby Kulikov and Kutzov in [6] consuming only polynomial space. They build uptheir algorithm on the one of Kojevnikov and Kulikov [5] who were the firstwho used a non-standard measure yielding a run time of O ∗ (2 K . ). If we mea-sure the complexity in the number n of variables the current fastest algorithmis the one of R. Williams [10] having run time O ∗ (2 ω n ), where ω < .
376 is thematrix-multiplication exponent. A drawback of this algorithm is its requirementof exponential space. Scott and Sorkin [9] presented a O ∗ (2 − d +1 n )-algorithmconsuming polynomial space, where d is the average degree of the variable graph. Max-2-Sat has also been studied with respect to approximation [3,7] and pa-rameterized algorithms [1,2].
Our Results . The major result we present is an algorithm solving
Max-2-Sat in time O ∗ (2 K . ). Basically it is a refinement of the algorithm in [5], whichalso in turn builds up on the results of [1]. The run time improvement is twofold.In [5] an upper bound of O ∗ (1 . n ) is obtained if the variable graph is cubic. Here n denotes the number of variables. We could improve this to O ∗ (1 . n )by a more accurate analysis. Secondly, in the case where the maximum degreeof the variable graph is four, we choose a variable for branching according tosome heuristic priorities. These two improvements already give a run time of O ∗ (2 K . ). Moreover we like to point out that these heuristic priorities can beimplemented such that they only consume O ( n ) time. The authors of [6] improvethe algorithm of [5] by having a new branching strategy when the variable graphhas maximum degree five. Now combining our improvements with the ones from[6] gives the claimed run time. Basic Definitions and Terminology . Let V ( F ) be the set of variables of agiven boolean formula F . For v ∈ V ( F ) by ¯ v we denote the negation of v . If v isset, then it will be assigned the values true or false . By the word literal , we referto a variable or its negation. A clause is a disjunction of literals. We considerformulas in conjunctive normal form (CNF) , that is a conjunction of clauses. Weallow only 1- and 2-clauses, i.e., clauses with at most two literals. The weight of v , written ( v ), refers to the number of 2-clauses in which v or ¯ v occurs. For aset U ⊆ V ( F ) we define ( U ) := P u ∈ U ( u ). If v or ¯ v occurs in some clause C we write v ∈ C . A set A of literals is called assignment if for every v ∈ A itholds that ¯ v A . Loosely speaking if l ∈ A for a literal l , than l receives thevalue true . We allow the formula to contain truth-clauses of the form {T } thatare always satisfied. Furthermore, we consider a Max-2-Sat instance as multisetof clauses. A x ∈ V ( F ) is a neighbor of v , written x ∈ N ( v ), if they occur ina common 2-clause. Let N [ v ] := N ( v ) ∪ { v } . The variable graph G var ( V, E ) isdefined as follows: V = V ( F ) and E = {{ u, v } | u, v ∈ V ( F ) , u ∈ N ( v ) } . Observethat G var is a undirected multigraph and that it neglects clauses of size one. Wewill not distinguish between the words “variable” and “vertex”. Every variablein a formula corresponds to a vertex in G var and vice versa. By writing F [ v ], wemean the formula which emerges from F by setting v to true the following way:First, substitute all clauses containing v by {T } , then delete all occurrences of¯ v from any clause and finally delete all empty clauses from F . F [¯ v ] is definedanalogously: we set x to false . We state well-known reduction rules from previous work [1,5]:
RR-1
Replace any 2-clause C with l, ¯ l ∈ C , for a literal l , with {T } . RR-2
If for two clauses
C, D and a literal l we have C \ { l } = D \ { ¯ l } , thensubstitute C and D by C \ { l } and {T } . RR-3
A literal l occurring only positively (negatively, resp.) is set to true ( false ). RR-4
If ¯ l does not occur in more 2-clauses than l in 1-clauses, such that l is aliteral, then set l to true . RR-5
Let x and x be two variables, such that x appears at most once inanother clause without x . In this case, we call x the companion of x . RR-3 or RR-4 will set x in F [ x ] to α and in F [¯ x ] to β , where α, β ∈ { true , false } .Depending on α and β , the following actions will be carried out: If α = false , β = false , set x to false .If α = true , β = true , set x to true .If α = true , β = false , substitute every occurrence of x by x .If α = false , β = true , substitute every occurrence of x by ¯ x .From now on we will only consider reduced formulas F . This means that toa given formula F we apply the following procedure: RR-i is always appliedbefore
RR-i+1 , each reduction rule is carried out exhaustively and after
RR-5 we start again with
RR-1 if the formula changed. A formula for which thisprocedure does not apply will be called reduced . Concerning the reduction ruleswe have the following lemma [5]:
Lemma 1.
1. If ( v ) = 1 , then v will be set.2. For any u ∈ V ( F ) in a reduced formula with ( u ) = 3 we have | N ( v ) | = 3 .3. If the variables a and x are neighbors and ( a ) = 3 , then in at least one ofthe formulas F [ x ] and F [¯ x ] , the reduction rules set a . We need some auxiliary notions: A sequence of distinct vertices a , v , . . . , v j , a ( j ≥
0) is called lasso if ( v i ) = 2 for 1 ≤ i ≤ j , a = a , ( a ) ≥ G var [ a , v , . . . , v j , a ] is a cycle. A quasi-lasso is a lasso with the difference that ( v j ) = 3. A lasso is called (resp. 4-lasso) if ( a ) = 3 ( ( a ) = 4,resp.). and are defined analogously. Lemma 2.
1. Let v, u, z ∈ V ( F ) be pairwise distinct with ( v ) = 3 such thatthere are clauses C , C , C with u, v ∈ C , C and v, z ∈ C . Then either v is set or the two common edges of u and v will be contracted in G var .2. The reduction rules delete the variables v , . . . , v j of a lasso (quasi-lasso,resp.) and the weight of a drops by at least two (one, resp.).Proof.
1. If v is not set it will be substituted by u or ¯ u due to RR-5 . Theemerging clauses C , C will be reduced either by RR-1 or become 1-clauses.Also we have an edge between u and z in G var as now u, z ∈ C .2. We give the proof by induction on j . In the lasso case for j = 0, there mustbe a 2-clause C = { a , ¯ a } , which will be deleted by RR-1 , so that theinitial step is shown. So now j >
0. Then on any v i , 1 ≤ i ≤ j , we can apply RR-5 with any neighbor as companion, so, w.l.o.g., it is applied to v with a as companion. RR-5 either sets v , then we are done with Lemma 1.1,or v will be substituted by a . By applying RR-1 , this leads to the lasso a , v , . . . , v j , a in G var and the claim follows by induction. In the quasi-lasso case for j = 0, the arguments from above hold. For j = 1, item 1 . issufficient. For j >
1, the induction step from above also applies here. ⊓⊔ We set d i ( F ) := |{ x ∈ V ( F ) | ( x ) = i }| . To measure the run time, we choosea non standard measure approach with the measure γ defined as follows: γ ( F ) = P ni =3 ω i · d i ( F ) with ω = 0 . , ω = 1 . , ω i = i for i ≥ . Clearly, γ ( F ) never exceeds the number of clauses K in the corresponding for-mula. So, by showing an upper bound of c γ ( F ) we can infer an upper bound c K . We set ∆ := ω , ∆ i := ω i − ω i − for i ≥
4. Concerning the ω i ’s we have ∆ i ≥ ∆ i +1 for i ≥ ω ≥ · ∆ . The algorithm presented in this paperproceeds as follows: After applying the above-mentioned reduction rules exhaus-tively, it will branch on a variable v . That is, we will reduce the problem to thetwo formulas F [ v ] and F [¯ v ]. In each of the two branches, we must determine byhow much the original formula F will be reduced in terms of γ ( F ). Reduction in γ ( F ) can be due to branching on a variable or to the subsequent application ofreduction rules. By an ( a , . . . , a ℓ ) -branch , we mean that in the i -th branch γ ( F )is reduced by at least a i . The i-th component of a branch refers to the search treeevolving from the i -th branch (i.e., a i ). By writing ( { a } i , . . . , { a ℓ } i ℓ )-branchwe mean a ( a , . . . , a i , . . . , a ℓ , . . . , a i ℓ ℓ )-branch where a sj = a j with 1 ≤ s ≤ i j .A ( a , . . . , a ℓ )-branch dominates a ( b , . . . , b ℓ )-branch if a i ≥ b i for 1 ≤ i ≤ ℓ . Heuristic Priorities
If the maximum degree of G var is four, variables v with ( v ) = 4 will be called limited if there is another variable u appearing with v in two 2-clauses (i.e., we have two edges between v and u in G var ). We callsuch u, v a limited pair . Note that also u is limited and that at this point by RR-5 no two weight 4 variables can appear in more than two clauses together.We call u , . . . u ℓ a limited sequence if ℓ ≥ u i , u i +1 with 1 ≤ i ≤ ℓ − limited cycle is a limited sequence with u = u ℓ . To obtain anasymptotically fast algorithmic behavior we introduce heuristic priorities ( HP ),concerning the choice of the variable used for branching.1. Choose any v with ( v ) ≥ v with ( v ) = 6, preferably with ( N ( v )) < v with ( v ) = 5, preferably with ( N ( v )) < v with ( v ) = 4 and a limited neighbor.5. Choose the vertex u in a limited sequence or cycle.6. Pick a limited pair u , u . Let c ∈ N ( u ) \ { u } with s ( c ) := | ( N ( c ) ∩ ( N ( u )) \ { c, u } ) | maximal. If s ( c ) >
1, then choose the unique vertex in N ( u ) \ { u , c } , else choose u .7. From Y := { v ∈ V ( F ) | ( v ) = 4 , ∃ z ∈ N ( v ) : ( z ) = 3 ∧ N ( z ) N ( v ) } choose v , preferably such that ( N ( v )) is maximal.8. Choose any v , with ( v ) = 4, preferably with ( N ( v )) < v , with ( v ) = 3, such that there is a ∈ N ( v ), which forms atriangle a, b, c and b, c N [ v ] (we say v has pending triangle a, b, c ).10. Choose any v , such that we have a (6 ω , ω )- or a (4 ω , ω )-branch.From now on v denotes the variable picked according to HP . Key Ideas
The main idea is to have some priorities on the choice of a weight4 variable such that the branching behavior is beneficial. For example limitedvariables tend to be unstable in the following sense: If their weight is decreaseddue to branching they will be reduced due to Lemma 2.1. This means we canget an amount of ω instead of ∆ . In a graph lacking limited vertices we wanta variable v with a weight 3 neighbor u such that N ( u ) N ( v ). In the branch Algorithm 1
An algorithm for solving
Max-2-Sat . Procedure:
SolMax2Sat( F )1: Apply SolMax2Sat on every component of G var separately.2: Apply the reduction rules exhaustively to F .3: Search exhaustively on any sub-formula being a component of at most 9 variables.4: if F = {T } . . . {T } then return | F | else
7: Choose a variable v according to HP .8: return max { SolMax2SAT( F [ v ]) , SolMax2Sat( F [¯ v ]) } . on v where u is set (Lemma 1.3) we can gain some extra reduction (at least ∆ ) from N ( u ) \ N ( v ). If we fail to find a variable according to priorities 5-7 weshow that either v as four weight 4 variables and that the graph is 4-regular, orotherwise we have two distinct situations which can be handled quite efficiently.Further, the most critical branches are when we have to choose v such that allvariables in N [ v ] have weight ω i . Then the reduction in γ ( F ) is minimal (i.e., ω i + i · ∆ i ). We analyze this regular case together with its immediate precedingbranch. Thereby we prove a better branching behavior compared to a separateanalysis. In [9] similar ideas were used for Max-2-CSP . We are now ready topresent our algorithm, see Alg. 1. Reaching step 7 we can rely on the fact that G var has at least 10 vertices. We call this the small component property (scp) which is crucial for some cases of the analysis. In this section we investigate the cases when we branch on vertices picked ac-cording to items 1-10 of HP . For each item we will derive a branching vectorwhich upper bounds this case in terms of K . In the rest of this section we show: Theorem 1.
Algorithm 1 has a run time of O ∗ (2 K . ) . G var has Minimum Degree FourPriority 1 If ( v ) ≥
7, we first obtain a reduction of ω because v will bedeleted. Secondly, we get an amount of at least 7 · ∆ as the weights of v ’sneighbors each drops by at least one and we have ∆ i ≥ ∆ i +1 . Thus, γ is reducedby at least 7 in either of the two branches (i.e., we have a ( { } )-branch). Regular Branches
We call a branch h-regular if we branch on a variable v suchthat for all u ∈ N [ v ] we have ( u ) = h . We will handle those in a separate part.During our considerations a 4-regular branch will have exactly four neighbors asotherwise this situation is handled by priority 4 of HP . The following subsectionshandle non-regular branches, which means that we can find a u ∈ N ( v ) with ( u ) < ( v ). Note that we already handled h -regular branches for h ≥ Priorities 2 and 3
Choosing v ∈ V ( F ) with ( v ) = 6 there is a u ∈ N ( v )with ( u ) ≤ v , there is a reductionby ω and another of at least 5 ∆ + ∆ , resulting from the dropping weightsof the neighbors. Especially, the weight of u must drop by at least ∆ . Thisleads to a ( { . } )-branch. If ( v ) = 5, the same observations as in thelast choice lead to a reduction of at least ω + 4 · ∆ + ∆ . Thus we have a( { . } )-branch. Priority 4
Let u ∈ N ( v ) be the limited variable. u forms a limited pair withsome u . After branching on v , the variable u has weight at most 3. At thispoint, u appears only with one other variable z in a 2-clause. Then, RR-5 isapplicable to u with u as its companion. According to Lemma 2.1, either u isset or the two edges of u and u will be contracted. In the first case, we receivea total reduction of at least 3 ω + 2 ∆ , in the second of at least 2 ω + 4 ∆ . Thus,a proper estimate is a ( { ω + 4 ∆ } )-branch, i.e., a ( { . } )-branch. Priority 5 If u , . . . , u ℓ is a limited cycle, then ℓ ≥
10 due to scp . By
RR-5 this yields a (10 w , w )-branch. If u , . . . , u ℓ is a limited sequence, then due topriority 4 the neighbors of u , u ℓ lying outside the sequence have weight 3. By RR-5 the branch on u is a ( { ω + 2 ω } )-branch, i.e, a ( { . } )-branch. Priority 6
At this point every limited variable u has two neighboring variables y, z with weight 3 and a limited neighbor u with the same properties (due topriorities 4 and 5). We now examine the local structures arising from this factand by the values of | N ( y ) \ N ( u ) | and | N ( z ) \ N ( u ) | .1. We rule out | N ( y ) \ N ( u ) | = | N ( z ) \ N ( u ) | = 0 due to scp .2. | N ( y ) \ N ( u ) | = 0 , | N ( z ) \ N ( u ) | = 1: Then, N ( y ) = { u , z, u } , N ( u ) = { u , y, s } and N ( z ) = { u , y, s } , see Figure 1(a). In this case we branch on z as s ( y ) > s ( y ) > s ( z ). Then due to RR-5 y and u disappear; eitherby being set or replaced. Thereafter due to RR-1 and Lemma 1.1 u willbe set. Additionally we get an amount of min { ∆ , ω , ω + ∆ } from s , s .This depends on whether s = s or s = s and in the second case on theweight of s . If ( s ) = 3 we get a reduction of ω + ∆ due to setting s .In total we have at least a ( { ω + 2 ω + 2 ∆ } )-branch. Analogous is thecase | N ( y ) \ N ( u ) | = 1 , | N ( z ) \ N ( u ) | = 0.3. | N ( y ) \ N ( u ) | = 1 , | N ( z ) \ N ( u ) | = 1: Here two possibilities occur: (a) N ( y ) = { u , u , s } , N ( z ) = { u , u , s } , N ( u ) = { u , y, z } , see Fig-ure 1(b): Then w.l.o.g., we branch on z . Similarly to item 2 . we obtain a( { ω + 2 ω + 2 ∆ } )-branch. (b) N ( y ) = { u , z, s } , N ( z ) = { u , y, s } , see Figure 1(c): W.l.o.g., webranch on z . Basically we get a total reduction of ω + 2 ω + 2 ∆ . That is2 ω from y and z , ω from u and 2 ∆ from s and u . In the branch where y is set (Lemma 1.3) we additionally get ∆ from s and ω from u as it willdisappear (Lemma 1.2). This is a (2 ω + 2 ω + 2 ∆ , ω + 2 ω + 2 ∆ )-branch.4. | N ( y ) \ N ( u ) | = 1 , | N ( z ) \ N ( u ) | = 2, see Figure 1(d): We branch on z yielding a ( { ω + 2 ω + 2 ∆ } )-branch. Analogous is the case | N ( y ) \ N ( u ) | = 2 , | N ( z ) \ N ( u ) | = 1. | N ( y ) \ N ( u ) | = 2 , | N ( z ) \ N ( u ) | = 2: In this case we chose u for branching.Essentially we get a reduction of 2 ω +2 ω . In the branch setting z we receivean extra amount of 2 ∆ from z ’s two neighbors outside N ( u ). Hence wehave a (2 ω + 2 ω + 2 ∆ , ω + 2 ω )-branch.We have at least a (2 ω +2 ω +2 ∆ , ω +2 ω +2 ∆ )-branch, i.e., a (7 . , . Priority 7
We need further auxiliary notions: A ( , resp.) for anunlimited weight 4 vertex v is a sequence of vertices u u . . . u l u l +1 ( u u . . . u l ,resp.) forming a path, such that 1 ≤ l ≤ ≤ l ≤
4, resp.), u i ∈ N ( v ) for1 ≤ i ≤ l , ( u i ) = 3 for 1 ≤ i ≤ l ( ( u i ) = 3 for 1 ≤ i ≤ l − , ( u l ) = 4,resp.) and u , u l +1 N ( v ) ( u N ( v ), resp.). Due to the absence of limitedvertices, every vertex v , chosen due to priority 7, must have a 3- or 4-path. If u = u l +1 we basically get a reduction of ω + lω + (4 − l ) ∆ . In thebranch where u is set, u . . . u l will be also set due to Lemma 1.1. There-fore, we gain an extra amount of at least 2 ∆ from u and u l +1 , leading toa ( ω + l · ω + (6 − l ) ∆ , ω + l · ω + (4 − l ) ∆ )-branch.If u = u l +1 then in F [ v ] and in F [¯ v ], u u . . . u l u l +1 is a lasso. So byLemma 2.2, u , . . . , u l are deleted and the weight of u drops by 2. If ( u ) =4 this yields a reduction of l · ω + ω . If ( u ) = 3 the reduction is ( l +1) · ω but then u is set. It is not hard to see that this yields a bonus reduction of ∆ (see Appendix A). Thus, we have a ( { ω +( l +1) · ω +(5 − l ) ∆ } )-branch. We get an amount of ω + ( l − ω + (5 − l ) ∆ by deleting v . In thebranch where u is set we get a bonus of ∆ from u . Further u l will bedeleted completely. Hence we have a (2 ω + ( l − ω + (5 − l ) ∆ , ω + ( l − ω + (5 − l ) ∆ )-branch.The first branch is worst for l = 1, the second and third for l = 2 (as l = 1 is im-possible). Thus, we have ( { . } )-branch for the second and a (7 . , . Priority 8
If we have chosen a variable v with ( v ) = 4 according to priority8, such that ( N ( v )) <
16, then we have two distinct situations. By branchingon v , we get at least a ( { ω + 2 ω + 2 ∆ } )-branch. (See Appendix B). The 4- 5- and 6-regular case
The part of the algorithm when we branchon variables of weight h = 4 will be called h-phase . Branching according topriorities 4-8 is the , according to priorities 9 and 10 the . In thefollowing we have 4 ≤ h ≤
6. Any h -regular branch which was preceded by abranch from the ( h + 1)-phase can be neglected. This situation can only occuronce on each path from the root to a leaf in the search tree. Hence, the runtime is only affected by a constant multiple. We now classify h -regular branches:An internal h-regular branch is a h -regular branch such that another h -regularbranch immediately follows in the search tree in at least one component. A finalh-regular branch is a h -regular branch such that no h -regular branch immediatelysucceeds in either of the components. When we are forced to do an h -regularbranch, then according to HP the whole graph must be h -regular at this point. PSfrag replacements zy u u s s vabcdqef yz (a)PSfrag replacements zy u u s s vabcdqef yz (b)PSfrag replacements zy u u s s vabcdqef yz (c)PSfrag replacements zy u u s s vabcdqef yz (d)PSfrag replacements zyu u s s v ab c dqe f yz (e)PSfrag replacements zyu u s s v abcdqef yz (f) Fig. 1.Observation 2.
If a branch is followed by a h -regular branch in one component,say in F [ v ] , then in F [ v ] any u ∈ V ( F ) with ( u ) < h will be reduced. Due to Observation 2 every vertex in N ( v ) must be completely deleted in F [ v ]. Proposition 1. O ∗ (1 . K ) upper bounds any internal h -regular branch.Proof. By Observation 2 for h = 4 this yields at least a (5 ω , ω + 4 ∆ )-branchas v must have 4 different weight 4 neighbors due to HP . If both components arefollowed by an h -regular branch we get a total reduction of 5 ω in both cases.The same way we can analyze internal 5- and 6-regular branches. This yields(3 ω , ω + 5 ∆ )-, ( { ω } )-, (3 ω , ω + 6 ∆ )- and ( { ω } )-branches as for any v ∈ V ( F ) we have | N ( v ) | ≥ ⊓⊔ We now analyze a final h -regular ( { b } )-branch with its preceding ( a , a )-branch. The final h -regular branch might follow in the first, the second orboth components of the ( a , a )-branch. So, the combined analysis would bea ( { a + b } , a ), a ( a , { a + b } )- and a ( { a + b } , { a + b } )-branch. Proposition 2.
Any final h -regular branch ( h ∈ { , } ) considered together withits preceding branch can be upper bounded by O ∗ (1 . K ) .Proof. We will apply a combined analysis for both branches. Due to Observa-tion 2 N ( v ) will be deleted in the corresponding component of the precedingbranch. Due to Appendices C.1 and C.2 the least amount we can get by deleting N ( v ) is ω + ω in case h = 5 and ω + ω in case h = 6. Hence, we get four differ-ent branches: A ( { ω + ω + 5 ∆ } , ω + 5 ∆ )-, a ( { ω + ω + 6 ∆ } , ω + 6 ∆ )-,a ( { ω + ω + 5 ∆ } )- and a ( { ω + ω + 6 ∆ } )-branch, respectively. ⊓⊔ Proposition 3.
Any final -regular branch considered with its preceding branchcan be upper bounded by O ∗ (2 K . ) ≈ O ∗ (1 . K ) .Proof. We must analyze a final 4-regular branch together with any possiblepredecessor. These are all branches derived from priorities 4-8. See Appendix Dfor omitted cases.
Internal 4-regular branch
The two corresponding branches are a ( { ω +4 ∆ } , ω + 4 ∆ )-branch and a ( { ω + 4 ∆ } )-branch. Priorities 4, 5 and 8 are all dominated by a ( { ω +4 ∆ } )-branch. Analyzing these cases together with a succeeding final 4-regular branch gives a ( { ω +8 ∆ } , ω + 4 ∆ )-branch and a ( { ω + 8 ∆ } )-branch. Priority 7
Let o be the number of weight 4 vertices from N ( v ) and the 3- or4-path, respectively. If in one component a final 4-regular branch follows thenthe worst case is when o = 0 as any weight 4 vertex would be deleted completelyand ω > ω . On the other hand if there is a component without an immediate4-regular branch succeeding then the worst case appears when o is maximal as ω ≥ ∆ . So in the analysis we will consider for each case the particular worstcase even though both together never appear. u = u l +1 : First if there is a weight 4 variable in N ( u ) we have atleast the following branches: a ) ( { ω + 5 ω + 4 ∆ } , ω + ω + 3 ∆ ), b ) ( ω + ω + 5 ∆ , { ω + 3 ω + 4 ∆ } ) and c ) ( { ω + 5 ω + 4 ∆ } , { ω + 3 ω + 4 ∆ } ).Any of those is upper bounded by O ∗ (2 K . ). Now suppose for all y ∈ N ( v ) wehave ( y ) = 3. Table 1 captures the derived branches for certain combinations.Here we will also consider the weights of u and u l . Any entry is upper bounded ( u ), ( u l +1 ) left component right component both components ( u ) = 3 ( { ω + 6 ω + 4 ∆ } , ( ω + 6 ω , ( { ω + 6 ω + 4 ∆ } , ( u l +1 ) = 3 ω + 4 ω ) { ω + 6 ω + 4 ∆ } ) { ω + 6 ω + 4 ∆ } ) ( u ) = 3 ( { ω + 5 ω + 4 ∆ } , ( ω + 5 ω + ∆ , ( { ω + 5 ω + 4 ∆ } , ( u l +1 ) = 4 ω + 4 ω ) { ω + 5 ω + 4 ∆ } ) { ω + 5 ω + 4 ∆ } ) ( u ) = 4 ( { ω + 4 ω + 4 ∆ } , ( ω + 4 ω + 2 ∆ , ( { ω + 4 ω + 4 ∆ } , ( u l +1 ) = 4 , ω + 4 ω ) { ω + 4 ω + 4 ∆ } ) { ω + 4 ω + 4 ∆ } ) Table 1. by O ∗ (2 K . ) except α ) ( { ω + 6 ω + 4 ∆ } , ω + 4 ω ) the left upper entryand β ) ( ω + 4 ω + 2 ∆ , { ω + 4 ω + 4 ∆ } ) the middle entry of the last row.For U ⊆ V ( F ) we define E ( U ) := {{ u, v } | u ∈ U, ( u ) = 3 , v U } . Claim.
1. Suppose for all y ∈ Q := N ( v ) ∪ { u , u l +1 } we have ( y ) = 3. Thenthere must be some y ′ ∈ V \ ( N ( v ) ∪ { u , u l +1 } ) with ( y ′ ) = 3.2. Suppose for all y ∈ N ( v ) we have ( y ) = 3 and ( u ) = ( u l +1 ) = 4.Then there must be some y ′ ∈ V \ ( N ( v ) ∪ { u , u l +1 } ) with ( y ′ ) = 3. Proof.
1. Assume the contrary. For any 1 ≤ l ≤ | E ( Q ∪ { v } ) | ≤ scp there is a weight 4 vertex r adjacent to some vertex in Q . Observethat we must have r ∈ Y as either there is u ∈ N ( v ) with u ∈ N ( r ) and v N ( r ) or w.l.o.g. u ∈ N ( r ) but u N ( r ). Hence, r has 4 weight 3 neighborsfrom Q due to the choice of v . Hence we must have | E ( Q ∪{ v, r } ) | ≤
6. Usingthe same arguments again we find some r ′ ∈ Y with | E ( Q ∪ { v, r, r ′ } ) | ≤ scp we find a r ′′ ∈ Y with 4 weight 3 neighbors where at mosttwo are from Q , a contradiction.2. Assume the contrary. Observe that u , u l +1 ∈ Y and due to the choice of v both have 4 weight 3 neighbors which must be from N ( v ). From | E ( N [ v ]) | ≤ | E ( N [ v ] ∪ { u , u l +1 } ) | = 0 which contradicts scp . ⊓⊔ Due to the last claim and Observation 2 we have a ( { ω +7 ω +4 ∆ } , ω +4 ω )-branch for case α ) and a ( ω + 4 ω + 2 ∆ , { ω + 5 ω + 4 ∆ } )-branch for case β ). Both are upper bounded by O ∗ (2 K . ). ⊓⊔ Observe that when we have arrived at this point, the graph G var must be 3-regular and each variable has three different neighbors, due to G var being reduced and due to Lemma 1.2. Also, any 3-regular graph has an evennumber of vertices, because we have 3 n = 2 m . Thus any branching must be ofthe form (2 i · ω , j · ω ) for some 1 ≤ i, j . Also, branching on any variable willat least result in a (4 ω , ω )-branch (see Lemma 1.2). Note that any u ∈ N ( v )will be either set in F [ v ] or in F [¯ v ], due to Lemma 1.3. Lemma 3.
Let v have a pending triangle a, b, c and N ( v ) = { a, p, q } . Then bybranching on v , we have an (8 ω , ω ) -branch.Proof. In F [ v ] and F [¯ v ], the variables a, b, c form a 3-quasi-lasso. Hence, dueto Lemma 2.2 w.l.o.g., only b remains in the reduced formula with ( b ) = 2(Lemma 2 2). Also, in both branches, q and p are of weight two and thereforedeleted. Note that N ( { q, p } ) ∪{ q, p } ⊆ { v, a, b, c, q, p } , contradicts scp . Therefore,w.l.o.g., there is a variable z ∈ N ( q ) such that z
6∈ { v, a, b, c, q, p } . So, in thebranch where q is set, also z will be deleted. Thus, seven variables will be deleted. ⊓⊔ Priority 10
From now on, due to HP , G var is triangle-free and cubic. We showthat if we are forced to choose a vertex v to which none of the priorities 1-9 fits,we can choose v such that we obtain either a (6 ω , ω )- or a (4 ω , ω )-branch. Lemma 4.
Let v be a vertex in G var and N ( v ) = { a, b, c } . Suppose that, w.l.o.g.,in F [ v ] a, b and in F [¯ v ] c will be set. Then we have a (6 ω , ω ) -branch.Proof. If | ( N ( a ) ∩ N ( b )) \ { v }| ≤
1, then by setting a and b in F [ v ], five variableswill be reduced. Together with v and c , this is a total of seven. If | ( N ( a ) ∩ N ( b )) \{ v }| = 2, then situation 1(e) must occur (note the absence of triangles). If z = y then also z = c due to scp . Then in F [ v ] due to Lemma 1.1 v, a, b, c, d, f, z will bedeleted. If z = y then v, a, b, d, f, z, y will be deleted. Together with F [¯ v ] where c is set, we have a (6 ω , ω )-branch. ⊓⊔ Lemma 5.
If for any v ∈ V ( F ) all its neighbors are set in one branch (say, in F [ v ] ), we can perform a (6 ω , ω ) - or a (4 ω , ω ) -branch due to cubicity.Proof. If | N ( a, b, c ) \ { v }| ≥
5, then in F [ v ], 9 variables are deleted, so that wehave a (4 ω , ω )-branch. Otherwise, either one of the two following situationsmust occur: a ) There is a variable y = v , such that N ( y ) = { a, b, c } , see Fig-ure 1(f). Then branch on b . In F [¯ b ], v, y, a, c, z will disappear (due to RR-5 andLemma 2.1). In F [ b ], due to setting z , additionally a neighbor f
6∈ { a, b, c, v, y } of z will be deleted due to scp . This is a total of seven variables. b ) There are variables p, q , such that | N ( p ) ∩ { a, b, c }| = | N ( q ) ∩ { a, b, c }| = 2.The last part of Theorem 4.2 of [5] handles b ). See also Appendix E. ⊓⊔ Due to the last three lemmas, branchings according to priorities 9 and 10 areupper bounded by O ∗ (2 K . ). Especially, the (4 ω , ω )-branch is sharp. Kulikov and Kutzov [6] achieved a run time of O ∗ (2 K . ). This was obtainedby speeding up the 5-phase by a concept called ’clause learning’. As in ourapproach the 3- and 4-phase was improved we will show that if we use bothstrategies we can even beat our previous time bound. This means that in HP we substitute priority 3 by their strategy with one exception: we prefer variables v with a non weight 5 neighbor. Forced to violate this preference we do a simplebranching of the form F [ v ] and F [¯ v ]. For the analysis we redefine the measure γ ( F ): we set ω = 0 . ω = 1 . ω = 2 .
488 and keep the other weights.We call this measure ˜ γ ( F ). We will reproduce the analysis of [6] briefly withrespect to ˜ γ ( F ) to show that their derived branches for the 5-phase are upperbounded by O ∗ (2 K . ). It also can be checked that this is also true for thebranches derived for the other phases by measuring them in terms of ˜ γ ( F ), seeAppendix F.2. Let k ij denote the number of weight j variables occurring i timesin a 2-clause with some v ∈ V ( F ) chosen for branching. Then we must have: k + k + k + 2 k + 2 k + 3 k = 5. If F ′ is the the formula obtained byassigning a value to v and by applying the reduction rules afterwards we have:˜ γ ( F ) − ˜ γ ( F ′ ) ≥ ∆ + ω + ( ω − ∆ ) k + ( ∆ − ∆ ) k + ( ω − ∆ )2 k + ( ∆ − ∆ ) k +( ω − ∆ )2 k = 5 . . k +0 . k + k )+0 . · k + k )Basically we reduce ˜ γ ( F ) by at least ω + 5 ∆ . Now the coefficients of the k ij in the above equation express how the reduction grows if k ij >
0. If k + k +2 k + k + 2 k ≥ γ ( F ) − ˜ γ ( F ′ ) ≥ . k = 1 and k = 4 then [6] stated a (5 ∆ + ω + ( ω − ∆ ) , ∆ + ω + ( ω − ∆ ) + 2 ∆ )-branch and for k = 1 and k = 3 a (5 ∆ + ω + ( ∆ − ∆ ) , ∆ + ω + ( ∆ − ∆ ) + ω )-branch. If k = 1 and k = 4 a branching of the kind F [ v ] , F [¯ v, v ] , F [¯ v, ¯ v , v , v , v , v ] is applied, where { v , . . . , v } = N ( v ). Fromthis follow a (5 ∆ + ω + ( ∆ − ∆ ) , ∆ + ω + ∆ + ω + 3 ∆ + ∆ , ω + ω )-and a ( ω + 4 ∆ + ∆ , ω + 4 ∆ + ∆ + ω + 4 ∆ , ω + ω + 3 ω )-branch. Thisdepends on whether v has at least three neighbors of weight less than 5 in F [¯ v ]or not. We observed that we can get a additional reduction of ∆ in the thirdcomponent of the first branch as N [ v ] cannot be a component in V ( F ) after step3 of Alg. 1 yielding a (4 ∆ + ω + ∆ , ∆ + ω +4 ∆ + ω , ω + ω + ∆ )-branch.For the analysis of the 5-regular branch (i.e. k = 5) we refer to Appendix F.1.It proceeds the same way as in the simple version of the algorithm except thatwe have to take into account the newly introduced branches. Theorem 3.
Max-2-SAT can be solved in time O ∗ (2 K . ) ≈ O ∗ (1 . K ) . We presented an algorithm solving
Max-2-Sat in O ∗ (2 K . ), with K the num-ber of clauses of the input formula. This is currently the end of a sequence ofpolynomial-space algorithms each improving on the run time: beginning with O ∗ (2 K . ) which was achieved by [8], it was subsequently improved to O ∗ (2 K . )by [2], to O ∗ (2 K ) by [1], to O ∗ (2 K . ) by [4], to O ∗ (2 K . ) by [5] and finally tothe hitherto fastest upper bound of O ∗ (2 K . ) by [6]. Our improvement has beenachieved due to heuristic priorities concerning the choice of variable for branch-ing in case of a maximum degree four variable graph. As [6] improved the casewhere the variable graph has maximum degree five, it seems that the only wayto speed up the generic branching algorithm is to improve the maximum degreesix case. Our analysis also implies that the situation when the variable graphis regular is not that harmful. The reason for this that the preceding branchmust have reduced the problem size more than expected. Thus considered to-gether these two branches balance each other. Though the analysis is to someextent sophisticated and quite detailed the algorithm has a clear structure. Theimplementation of the heuristic priorities for the weight 4 variables should be astraightforward task. Actually, we have already an implementation of Alg. 1. Itis still in an early phase but nevertheless the performance is promising. We arelooking forward to report on these results on another occasion. References
1. J. Gramm, E. A. Hirsch, R. Niedermeier, and P. Rossmanith. Worst-case up-per bounds for MAX-2-SAT with an application to MAX-CUT.
Discrete AppliedMathematics , 130:139–155, 2003.2. J. Gramm and R. Niedermeier. Faster exact solutions for MAX2SAT. In
CIAC ,volume 1767 of
LNCS , pages 174–186. Springer, 2000.3. T. Hofmeister. An approximation algorithm for MAX-2-SAT with cardinality con-straint. In
ESA , volume 2832 of
LNCS , pages 301–312. Springer, 2003.4. J. Kneis, D. M¨olle, S. Richter, and P. Rossmanith. Algorithms based on thetreewidth of sparse graphs. In WG , volume 3787 of LNCS , pages 385–396. Springer,2005.5. A. Kojevnikov and A. S. Kulikov. A new approach to proving upper bounds forMAX-2-SAT. In
SODA , pages 11–17. ACM Press, 2006.6. A. S. Kulikov and K. Kutzkov. New bounds for max-sat by clause learning. In
CSR , volume 4649 of
LNCS , pages 194–204. Springer, 2007.7. M. Lewin, D. Livnat, and U. Zwick. Improved rounding techniques for the MAX2-SAT and MAX DI-CUT problems. In
IPCO , volume 2337 of
LNCS , pages 67–82.Springer, 2002.8. R. Niedermeier and P. Rossmanith. New upper bounds for maximum satisfiability.
Journal of Algorithms , 36:63–88, 2000.9. A. Scott and G. Sorkin. Linear-programming design and analysis of fast algorithmsfor Max 2-CSP.
Discrete Optimization , 4(3-4): 260-287, 2007.10. R. Williams. A new algorithm for optimal 2-constraint satisfaction and its impli-cations.
Theoretical Computer Science , 348(2-3):357–365, 2005.3
A Additional Arguments Concerning 3-paths in theNon-regular Case
Proposition 4.
Let v ∈ V ( F ) be chosen due to HP such that ( v ) = 4 and v has a3-path of length l such that u = u l +1 . Then we have at least a ( { ω + 3 ω + 3 ∆ } ) -branch.Proof. In F [ v ] and in F [¯ v ], u u . . . u l u l +1 is a lasso. So by Lemma 2.2, u , . . . , u l aredeleted and the weight of u drops by 2. If ( u ) = 4 this yields a reduction of l · ω + ω . If ( u ) = 3 the reduction is ( l + 1) · ω but then u is set. If N ( u ) \ N ( v )is non-empty then we obtain a reduction of ∆ in addition due to setting u . Otherwisethere is a unique r ∈ N ( u ) \ { u , . . . , u l } with r ∈ N ( v ) \ { u , . . . , u l } . If ( r ) = 4 weget a ( { ω + ( l + 1) ω + (3 − l ) ∆ } )-branch. If ( r ) = 3 then r is set. As (4 − l ) ≤ r which previously where applied to u we getat least a ( { ω + ( l + 1) · ω + (5 − l ) ∆ } )-branch. Observe that we used the fact that ω ≥ ∆ . ⊓⊔ B Proof of the Statement in Priority 8 (Non-regularCase)
Proof.
Note that when we are forced to pick a variable v according to priority 8,then either v has four neighbors of weight 4 or for every weight 3 neighbor z we have N ( z ) ⊆ N ( v ). From ( N ( v )) <
16 follows that, for every weight 3 neighbor z , we have N ( z ) ⊆ N ( v ) due to the choice of v according to HP . Let N (resp. N ) be the set ofweight four (three) neighbors of v . We analyze different cases induced by k := | N | .Let k = 1. If N = { b } , then there are vertices a, c ∈ N , such that b ∈ N ( a ) and b ∈ N ( c ). We must have a ∈ N ( c ), or else a would violate our assumption. Thus, weget the situation of Figure 2(a).Let k = 2. Then N = { b, c } and assume that b and c are neighbors. If b, c ∈ N ( a ) for a ∈ N , we have situation depicted in Figure 2(b). Otherwise b ∈ N ( a ) and c ∈ N ( d )for a, d ∈ N . But then, priority 7 applies to both a and d , which is a contradiction. Inthe case where b and c are not neighbors, it can be easily observed that we must havethe situation in Figure 2(c), where priority 7 applies to a and d .If k = 3 it is easy to verify that we must have situation 2(d) in Figure 1. But thenpriority 7 applies to a . If k = 4 then clearly N [ v ] forms a component of five verticeswhich cannot appear after step 3 of Alg. 1.In Figure 2(a) in either branch F [ v ] or F [¯ v ], the variables a, b, c form a 3-quasi-lasso,so by Lemma 2.2 we get a reduction of ω + 3 ω + ∆ = 4 ω .In Figure 2(b) in both branches the variables a, b, c form a 3-lasso, so by Lemma 2.2 b, c are deleted and a is set due to Lemma 1.1. We get a reduction of ω + 2 ω fromthis. If d N ( a ) we additionally get 2 ∆ , otherwise ω . Altogether, we reduce γ ( F )by at least 2 ω + 2 ω + 2 ∆ . ⊓⊔ C Analysis of Internal 5- and 6-regular Branches
We will consider branches which are immediately followed by a h -regular branch inat least one component. In this component of the branch we can delete any variable4PSfrag replacements va b cd (a)PSfrag replacements va b cd (b)PSfrag replacements vab cd (c)PSfrag replacements vabcd (d) Fig. 2. in N ( v ) additionally due to Observation 2. The Subsections C.1 and C.2 will exploreby how much we additionally can decrement γ ( F ) in the corresponding component incase h ∈ { , } . Let k ij denote the number of weight j variables occurring i times in a2-clause with some v ∈ V ( F ) chosen for branching. C.1 Internal 5-regular Branches
Proposition 5.
Let v ∈ V ( F ) be the variable chosen due to HP such that ( v ) = 5 .If this branch is followed by a -regular branch in one component, then we can decrement γ ( F ) by at least ω + ω in addition to the weight of v in that component.Proof. According to [6] we must have the following relation: k + k + k + 2 k + 2 k + 3 k = 5 (1)We now have to determine an integer solution to (1) such that ω k + ω k + ω k + ω k + ω k + ω k is minimal. We can assume k = k = 0 as we have ω < ω <ω . For any solution violating this property we can find a smaller solution by setting k ′ = k + k + k , k ′ = 0 and k ′ = 0 and keeping the other coefficients. The sameway we find that k = 0 must be the case as ω < ω .If k ≥ k ′ = k − ⌊ k ⌋ , k ′ = k + ⌊ k ⌋ and keep the other coefficients.By 2 ω > ω this is a smaller solution. Now suppose k = 1, then we have k = 0 ina minimal solution as ω + ω > ω (i.e., if k ≥ k ′ = 0, k ′ = k − k ′ = k + 1) . But then no k could satisfy (1). Thus, we have k = 0. Then theonly solution is k = 1 and k = 1. Hence, the minimal reduction we get from N ( v )is ω + ω . ⊓⊔ C.2 Internal 6-regular Branches
Proposition 6.
Let v ∈ V ( F ) be the variable chosen due to HP such that ( v ) = 6 .If this branch is followed by a -regular branch in one component, then we can decrement γ ( F ) by at least ω + ω in addition to the weight of v in that component.Proof. In this case the following relation holds: k + k + k + k + 2 k + 2 k + 2 k + 3 k + 3 k + 4 k = 6 (2)We now have to determine an integer solution to (2) such that ω k + ω k + ω k + ω k + ω k + ω k + ω k + ω k + ω k + ω k is minimal. As ω < ω < ω < ω we conclude that k ℓ = 0 for 4 ≤ ℓ ≤ k ℓ ′ = 0 for 5 ≤ ℓ ′ ≤ k = 0. We alsomust have k ≤ ω > ω we must have k ≤
1. By (2)5we also have k ≤ k ≤ k = 0 the only solutions under the given restrictions are k = 2 and k = 1 , k =1. If k = 1 the only solution is k = 1 , k = 1. Thus, the minimal amount we getby reduction from N ( v ) is ω + ω . ⊓⊔ D Omitted Cases of the Analysis of the Final 4-regularCase
Proposition 7.
Any final -regular branch considered with its preceding branch canbe upper bounded by O ∗ (2 K . ) .Proof. Here we must analyze a final 4-regular branch together with any possible pre-decessor. These are all branches derived from priorities 4-8: Let o be the number ofweight 4 vertices from N ( v ) or the 3- or 4-path, respectively. If in one component afinal 4-regular branch follows then the worst case is when o = 0 as any such vertexwould be deleted completely and ω > ω . On the other hand if there is a componentwithout an immediate 4-regular branch succeeding then the worst case appears when o is maximal as ω ≥ ∆ . So in the analysis we will consider for each case the particularworst case even though both together never appear. Priority 6
Subcases 2, 3( a ) and 4 of our non-regular priority-6 analysis can be ana-lyzed similar to priorities 4, 5 and 8. We now analyze the remaining subcases. Subcase { ω + 2 ω + 4 ∆ } ) -branch in the combinedanalysis.Consider now cases 5 and 3( b ). Let u , u be the picked limited pair. Due to HP the variable u has two weight 3 neighbors. Thus, if a final 4-regular branch isfollowing in these cases we get a reduction of 2 ω in addition (with respect to thecomponent of the branch). For both cases we derived a non symmetric branch, e.g.,an ( a, b )-branch with a = b . Depending whether the final 4-regular branch followsin the first, the second or both components we derive three combined branches: a )( { ω + 4 ω + 4 ∆ } , ω + ω + 2 ∆ ), b ) (2 ω + 2 ω + 2 ∆ , { ω + 4 ω + 4 ∆ } )-and c ) ( { ω + 4 ω + 4 ∆ } , { ω + 4 ω + 4 ∆ } ). As O ∗ (2 K . ) not proper up-perbounds a ) we need a further discussion for the two subcases. Remember thatin the first component of a ) some weight 3 neighbor t of v is set. Subcase 3b
First suppose that N ( z ) \ ( N ( u ) ∪ N ( u )) = ∅ and N ( y ) \ ( N ( u ) ∪ N ( u )) = ∅ , see Figure 3(a). Then by either branching on y or z we get a( { ω + 4 ω } )-branch. In this case the combined analysis is similar to priorities4, 5 and 8. Secondly, w.l.o.g. we have N ( z ) \ ( N ( u ) ∪ N ( u )) = ∅ , see Figure 3(b)and 3(c). In Figure 3(b) we might have picked y = v or z = v . But observe that inboth cases in the branch where the particular weight 3 neighbor t is set ( t = s if v = z and t = z if v = y ) such that in this component a 4-regular branch followswe have a ( { ω + 5 ω + 4 ∆ } , ω + 2 ω + 2 ∆ )-branch in the combined analysisinstead of a ). If the case in Figure 3(c) matches then we have t = s . Then in thebranch were s is set y and u will be reduced due to RR-5 and N [ u ] \ { u } dueto the fact that a 4-regular branch follows. Thus, the derived branch is the sameas for the case of Figure 3(b). Subcase 5
As the vertices in N ( u ) ∪ N ( u ) can not form a component w.l.o.g. wehave that N ( z ) \ ( N ( u ) ∪ N ( u )) = ∅ . In this case we branch on u . Now in the6 branch where we set z (i.e., z = t ) such that a 4-regular branch follows in thatcomponent we have a ( { ω + 5 ω + 4 ∆ } , ω + 2 ω )-branch in the combinedanalysis insted of a )Both branches replacing a ) have an upper bound of O ∗ (2 K . ).PSfrag replacements zy u u s s vabcds (a)PSfrag replacements zy u u s s vabcd s (b)PSfrag replacements zy u u s s vabcds (c) Fig. 3.
Priority 7
In this case we have the following branches: a ) ( { ω + 4 ω +4 ∆ } , ω + ω + 3 ∆ ), b ) (2 ω + ω + 3 ∆ , { ω + 3 ω + 4 ∆ } ), c ) ( { ω +4 ω + 4 ∆ } , { ω + 3 ω + 4 ∆ } ). The cases a ) and c ) are not upper bounded by O ∗ (2 K . ) and hence need further discussion.Suppose there is a vertex y ∈ D := N ( v ) ∪ { u , . . . , u l − } with weight 4. Thenby Observation 2 we have branches a ′ ) ( { ω + 3 ω + 4 ∆ } , ω + ω + 3 ∆ ) and c ′ ) ( { ω + 3 ω + 4 ∆ } , { ω + 3 ω + 4 ∆ } ) which are both upperbounded by O ∗ (2 K . ). For the remaining case we need the next proposition. For U ⊆ V ( F )we define E ( U ) = {{ u, v } | u ∈ U, ( u ) = 3 , v U } . Claim.
Suppose for all y ∈ D we have ( y ) = 3. Then there must be some y ′ ∈ V \ ( D ∪ { v, u l } ) with ( y ′ ) = 3. Proof.
Assume the contrary. Observe that if l ≥ u l ∈ Y due to u l − N ( u l ).If l = 2 and u N ( u ) then also u l ∈ Y holds. Let us assume this case as theother one will be treated separately.Now due to the choice of v we have that u l must be adjacent to v, u l − and to twofurther weight 3 vertices in D . Therefore and as D ∪{ v, u l } can not be a componentwe have l <
4. Also for any 2 ≤ l ≤ | E ( D ∪ { v, u l } ) | ≤ − l .There must some weight 4 vertex r D ∪ { v, u l } adjacent to some weight 3 vertexin D as we have no small components. Note that r ∈ Y , as v N ( r ) or w.l.o.g. u ∈ N ( r ) but u N ( r ). Due to the choice of v , r must have at least three weight3 neighbors. Hence l = 2. If r has 4 weight 3 neighbors then ( D ∪ { v, u l , r } ) formsa component which is a contradiction. Hence, we have | E ( D ∪ { v, u l , r } ) | = 1 andtherefore we find again some r ′ ∈ Y \ ( D ∪ { v, u l , r } ) which is adjacent to at least3 weight 3 vertices where at most one is from D . Thus there must be some weight3 vertex in V \ ( D ∪ { v, u l } ), a contradiction.Now suppose l = 2 and u ∈ N ( u ). Let N ( u ) = { z, u , u } . If z N ( u ) then u ∈ Y and the first part of the proof applies. Now suppose z ∈ N ( u ) and ( z ) = 3. Then it follows that z ∈ N ( v ) and | E ( { D ∪ { v, u }} ) | ≤
2. Now due to scp we can find an r ∈ Y \ ( D ∪ { v, u l } ) which is adjacent to at least three weight3 vertices where only two can be from D ∪ { v, u l } , a contradiction.Suppose z ∈ N ( u ) and ( z ) = 4. As u N ( z ) we have z ∈ Y . Thus, z isadjacent to the two weight 3 vertices in N ( v ) \ { u , u } . As D ∪ { v, u , z } is not a7component we have | E ( { D ∪ { v, u , z }} ) | = 2. Similarly, a contradiction follows. ⊓⊔ If for all y ∈ D we have ( y ) = 3 from the last claim and Lemma 2.2 we canderive two branches a ′′ ) ( { ω + 5 ω + 4 ∆ } , ω + ω + 3 ∆ ) and c ′′ ) ( { ω +5 ω + 4 ∆ } , { ω + 3 ω + 4 ∆ } ) which are upper bounded by O ∗ (2 K . ). In the case of 3-path such that u = u l +1 the branch with l = 2 is dominatedby all other choices. Since this is a ( { . } )-branch we refer to priorities 4, 5 and8 from above. ⊓⊔ E Full Proof of Lemma 5
Proof. If | N ( a, b, c ) \ { v }| ≥
5, then in F [ v ], 9 variables are deleted, so that we have a(4 ω , ω )-branch. Otherwise, either one of the two following situations must occur: a ) There is a variable y = v , such that N ( y ) = { a, b, c } , see Figure 1(f). Then branchon b . In F [¯ b ], v, y, a, c, z will disappear (due to RR-5 and Lemma 2.1). In F [ b ], due tosetting z , additionally a neighbor f
6∈ { a, b, c, v, y } of z will be deleted as the vertices a, b, c, v, y, z do not form a component. This is a total of seven variables. b ) There are variables p, q , such that | N ( p ) ∩{ a, b, c }| = | N ( q ) ∩{ a, b, c }| = 2, see Figure4(a) and 4(b). In F [ v ], the variables a, b, c, p, q will be set. Then, at least 3 additionalvariables will be deleted (even if there are 1 ≤ i < j ≤ h i = h j ). Theorem 4.2of [5] contains also an alternative proof of b ). ⊓⊔ PSfrag replacements vabcdqefyz v abcdy pqz h h h h (a)PSfrag replacements vabcdqefyz v abcdy pqz h h h h (b) Fig. 4.
F Additional Analysis of the Combined Approach
F.1 5-regular Branches in the Combined Approach
Internal 5-regular branches yield the same recurrences as in the simple approach. Final5-regular branches must be analyzed together with their immediate preceding branch.Thus they have to be analyzed together with the introduced branches of [6]. Table 2 cap-tures some cases ( k = 5; k = 1 , k = 4; k = 1 , k = 3). For the case k = 1 and k = 4 there are two recurrences for the branching F [ v ] , F [¯ v, v ] , F [¯ v, ¯ v , v , v , v , v ].8 case one component both components upper bound k = 5 ( { ω + 5 ∆ } , ω + 5 ∆ ) ( { ω + 5 ∆ } ) O ∗ (1 . K ) k = 1, k = 4 ( { ω + ω + 5 ∆ } , ω + 4 ∆ + ω ) { ω + ω + 5 ∆ } ) O ∗ (1 . K ) k = 1, k = 3 ( { ω + 5 ∆ } , ω + 3 ∆ + ( ω − ω ) ( { ω + 5 ∆ } ) O ∗ (1 . K ) Table 2.
The first recurrence assumes that v has at least three neighbor of weight less than fivein F [¯ v ]: (A) (5 ∆ + ω + ( ∆ − ∆ ) , ∆ + ω + ∆ + ω + 3 ∆ + ∆ , ω + ω + ∆ ).The other (B) ( ω + 4 ∆ + ∆ , ω + 4 ∆ + ∆ + ω + 4 ∆ , ω + ω + 3 ω ) captures theremaining case. Both branches have three components. Table 3 captures the combinedbranches of a immediately following final 5-branch and branches (A) and (B) . Thisdepends on whether the final 5-regular branch follows after the first (1), the second (2)or the third (3) component or in any combination of them.Branch-type components combined branch upper bound (A) (1) ( { ω + ω + 5 ∆ } , O ∗ (1 . K )5 ∆ + ω + ( ∆ − ∆ ) + ω + 3 ∆ + ∆ , ∆ + ω + ( ∆ − ∆ ) + 4 ω + ω + ∆ ) (A) (2) (5 ∆ + ω + ( ∆ − ∆ ) , { ω + ω + 5 ∆ } , O ∗ (1 . k )5 ∆ + ω + ( ∆ − ∆ ) + 4 ω + ω + ∆ ) (A) (3) (5 ∆ + ω + ( ∆ − ∆ ) , O ∗ (1 . K )5 ∆ + ω + ( ∆ − ∆ ) + ω + 3 ∆ + ∆ , { ω + ω + 5 ∆ + ω } ) (B) (1) ( { ω + ω + 5 ∆ } , O ∗ (1 . K )5 ∆ + ω + ( ∆ − ∆ ) + ω + 4 ∆ , ∆ + ω + ( ∆ − ∆ ) + 4 ω + ω + 3 ω ) (B) (2) (5 ∆ + ω + ( ∆ − ∆ ) , { ω + ω + 5 ∆ } , O ∗ (1 . K )5 ∆ + ω + ( ∆ − ∆ ) + 4 ω + ω + 3 ω ) (B) (3) (5 ∆ + ω + ( ∆ − ∆ ) , O ∗ (1 . K )5 ∆ + ω + ( ∆ − ∆ ) + ω + 4 ∆ , { ω + ω + 5 ∆ + 3 ω } ) (A) or (1)(2)/(1)(3) ( { ω + ω + 5 ∆ } , ω + 4 ∆ + ∆ ) O ∗ (1 . K ) (B) /(2)(3) (A) or (1)(2)(3) ( { ω + ω + 5 ∆ } ) O ∗ (1 . K ) (B) Table 3.
The second column indicates after which components a final 5-regularbranch immediately follows.
We would like to comment the recurrences in the third and sixth row. Here we geta reduction of ω and 3 ω in addition to 5 ω + ω from v, v , . . . , v . This additionalamount comes from clauses C such that | C ∩ { v, v . . . , v }| = 1. Especially in the firstcase due to scp N [ v ] is not component and thus at least one further variable must bedeleted.9 Proposition 8.
Let v ∈ V ( F ) be the variable chosen for branching by Alg. 1 such that ( v ) = 5 . Assume v induces a solution to equation (1) such that it is different from k = 1 , k = 4 ; k = 5 ; k = 1 , k = 3 ; k = 1 , k = 4 ( ⋆ ). If a -regular branchfollows in one component we have at least a ( { ω + ω +5 ∆ } , ω +3 ∆ +2 ∆ ) -branchand if it follows in both a ( { ω + ω + 5 ∆ } ) -branch.Proof. If a component is followed by a final 5-regular branch the least amount we getby reduction from N ( v ) is ω + ω . This refers to the case k = 1 and k = 1 whichfollows analogously from Section C.1.The least reduction from N ( v ) without a following final 5-regular branch can be foundas follows: Consider any solution of equation (1) expect the ones in ( ⋆ ). Among themfind one which minimizes ∆ k + ∆ k + ∆ k + ( ∆ + ∆ ) k + ( ∆ + ∆ ) k + ( ∆ + ∆ + ∆ ) k (3)We can assume k = 0 as we have ∆ + ∆ > ∆ + ∆ . As we are excluding ( ⋆ ) wemust have k ≤
4. If k = 4 we conclude that either k = 1 oder k = 1. Bothsolutions are forbidden (see ( ⋆ )). Thus we must have k ≤ k = 1 then there is a better solution as ∆ + 2 ∆ < ∆ + ∆ + ∆ : set k ′ =0 , k ′ = k + 1 , k ′ = k + 2 and keep the other coefficients. Note that in this casewe must have k ≤ ⋆ ). Therefore it follows that k = 0.Now suppose k = 2, then k = 1 holds. But then k ′ = k − , k ′ = k +1 , k ′ = 1is a no worse solution. Thus k ≤
1. If k = 1 then with k = 2 and k = 1 this isminimal (since k = 3 is forbidden ( ⋆ )).Suppose k = 0, then clearly the best solution is k = 3 and k = 2. Both solutionsprovide a reduction of 3 ∆ + 2 ∆ which is minimal.Now we analyze a final 5-regular branch and a branch different form ( ⋆ ) satisfyingequation (1). If the final 5-regular branch follows in only one component then we haveat least a ( { ω + ω + 5 ∆ } , ω + 3 ∆ + 2 ∆ )-branch in the combined analysis. If itfollows in both then a ( { ω + ω + 5 ∆ } )-branch upper bounds correctly. ⊓⊔ Due to Proposition 8 we can upper bound the 5-regular branches whose predecessorsare different from k = 1 , k = 4; k = 5; k = 1 , k = 3; k = 1 , k = 4 by O ∗ (1 . K ) in their combined analysis. F.2 Analysis of the 6- 4- and 3-phase in the Combined Approach
Here we provide the run times under ˜ γ ( F ) for the cases we did not consider in Sec-tion 5. The run time has been estimated with respect to ˜ γ ( F ). Names will refer to thecorresponding ones in the analysis of Alg. 1. Non-regular Branches
In Table 4 we find the derived recurrences for each priority of HP if we have a non-regular branch. You can find them together with their run times.Priority 3 is not considered as the 5-phase has been analyzed in Sections 5 and F.1. Regular Branches
Table 5 captures the run times of any internal 6, 5 or 4-regularbranch. Table 6 considers final 4 or 6-regular branches together with their precedingbranches. The case where we have chosen v due to priority 7 such that v has a 3-pathwith u = u l is treated separately.0 Priorities branch upper bound Priority 1 (7 , O ∗ (1 . K ) Priority 2 ( { ω + 5 ∆ + ∆ } ) O ∗ (1 . K ) Priority 4 ( { ω + 4 ∆ } ) O ∗ (1 . K ) Priority 5 ( { ω + 2 ω } ) O ∗ (1 . K ) Priority 6 (2 ω + 2 ω + 2 ∆ , ω + 2 ω + 2 ∆ ) O ∗ (1 . K ) Priority 7 ( ω + ω + 5 ∆ , ω + ω + 3 ∆ ) O ∗ (1 . K )( { ω + 3 ω + 3 ∆ } ) O ∗ (1 . K )(2 ω + ω + 3 ∆ , ω + ω + 3 ∆ ) O ∗ (1 . K ) Priority 8 ( { ω + 2 ω + 2 ∆ } ) O ∗ (1 . K ) Priority 9 (8 ω , ω ) O ∗ (1 . K ) Priority 10 (8 ω , ω ) O ∗ (1 . K )(4 ω , ω ) O ∗ (1 . K ) Table 4.
The non-regular cases case branch upper bound
Internal 6-regular (3 ω , ω + 6 ∆ ) O ∗ (1 . K )( { ω } ) O ∗ (1 . K ) Internal 5-regular (3 ω , ω + 5 ∆ ) O ∗ (1 . K )( { ω } ) O ∗ (1 . K ) Internal 4-regular (5 ω , ω + 4 ∆ ) O ∗ (1 . K )( { ω } ) O ∗ (1 . K ) Table 5.
Internal h -regular cases ( h ∈ { , , } ) an their upper bounds. Finally we consider the case when a variable chosen to priority 7 has a 3-path with u = u l +1 . The cases a ) ( { ω + 5 ω + 4 ∆ } , ω + ω + 3 ∆ ), b ) ( ω + ω + 5 ∆ , { ω + 3 ω + 4 ∆ } ) and c ) ( { ω + 5 ω + 4 ∆ } , { ω + 3 ω + 4 ∆ } ) areupper bounded by O ∗ (1 . K ), O ∗ (1 . K ) and O ∗ (1 . K ). Table 7 captures thebranches together with their run times in the combined algorithm if for all y ∈ N ( v )we have ( y ) = 3.We have a ( { ω + 7 ω + 4 ∆ } , ω + 4 ω )-branch for case α ) which O ∗ (1 . K )properly upper bounds. We also have a ( ω + 4 ω + 2 ∆ , { ω + 5 ω + 4 ∆ } )-branchfor case β ) such that it is upper bounded by O ∗ (1 . K ).1Preceding branch branch upper bound Final 6-regular Branch
Any 6-phase branch ( { ω + ω + 6 ∆ } , ω + 6 ∆ ) O ∗ (1 . K )( { ω + ω + 6 ∆ } ) O ∗ (1 . K ) Final 4-regular BranchInternal 4-regular ( { ω + 4 ∆ } , ω + 4 ∆ ) O ∗ (1 . K )( { ω + 4 ∆ } ) O ∗ (1 . K ) Priorities 4,5 and 8 ( { ω + 8 ∆ } , ω + 4 ∆ ) O ∗ (1 . K )Cases 2,3( a ),4 of Priority 6 ( { ω + 8 ∆ } ) O ∗ (1 . K ) Priority 6
Case 1 ( { ω + 2 ω + 4 ∆ } ) O ∗ (1 . K )Case 5,3( b ) ( { ω + 2 ω + 2 ∆ , { ω + 4 ω + 4 ∆ } ) b ) O ∗ (1 . K ) b ) and c ) of the analysis ( { ω + 4 ω + 4 ∆ } ) c ) O ∗ (1 . K )Case 3 b ), case a ) of the analysis ( { ω + 4 ω + 5 ∆ } , ω + 2 ω + 2 ∆ ) O ∗ (1 . K )Case 5, case a ) of the analysis ( { ω + 4 ω + 5 ∆ } , ω + 2 ω ) O ∗ (1 . K ) Priority 7
Case of a 4-pathCase b ) (2 ω + ω + 3 ∆ , { ω + 3 ω + 4 ∆ } ) O ∗ (1 . K )Case a ′ ) ( { ω + 3 ω + 4 ∆ } , ω + ω + 3 ∆ ) O ∗ (1 . K )Case c ′ ) { ω + 3 ω + 4 ∆ } , { ω + 3 ω + 4 ∆ } ) O ∗ (1 . K )Case a ′′ ) ( { ω + 5 ω + 4 ∆ } , ω + ω + 3 ∆ ) O ∗ (1 . K )Case c ′′ ) ( { ω + 5 ω + 4 ∆ } , ( { ω + 3 ω + 4 ∆ } ) O ∗ (1 . K )Case of a 3-path with u = u l +1 similar to priorities 4,5 and 8 Table 6.