In the maximum satisfiability (MAXSAT) problem, we are given a set V of m variables and a collection C of n clauses over V. We will seek a truth assignment to maximize the number of satisfied clauses. This problem is NP-hard even for its restricted version, the 2-MAXSAT problem, in which every clause contains at most two literals. In this paper, we discuss an efficient algorithm to solve this problem. Its worst-case time complexity is bounded by . In the case that log2 nm is bounded by a constant, our algorithm is a polynomial algorithm. In terms of Garey and Johnson, any satisfiability instance can be transformed to a 2-MAXSAT instance in polynomial time. Thus, our algorithm may lead to a proof of P = NP.
Read full abstract