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).
Alexander S. Kulikov, Konstantin Kutzkov