Fact-checked by Grok 2 weeks ago

Maximum satisfiability problem

The maximum satisfiability problem (commonly abbreviated as Max-SAT) is a fundamental in and , where one is given a formula in (CNF)—a of clauses, each being a disjunction of literals (variables or their negations)—and the goal is to find a truth to the variables that maximizes the number of satisfied clauses (those evaluating to true under the assignment). This unweighted version assumes each clause has equal importance, though it generalizes naturally to the weighted Max-SAT (Max-WSAT), where clauses carry nonnegative weights and the objective is to maximize the total weight of satisfied clauses. Max-SAT extends the classic (SAT), which is the decision variant asking whether there exists an assignment satisfying all clauses; SAT was the first problem proven NP-complete by Stephen Cook in 1971, establishing its central role in the theory of . Like SAT, Max-SAT is NP-hard, with the decision version—determining if at least k clauses can be satisfied—being NP-complete even for unweighted instances. Its hardness holds for restricted cases, such as Max-2-SAT (clauses with at most two literals per clause), which remains NP-complete despite the polynomial solvability of 2-SAT. Max-SAT is also APX-complete, meaning it admits polynomial-time approximation algorithms with a constant factor but lacks a polynomial-time approximation scheme (PTAS) unless P = NP. Key variants of Max-SAT address practical needs in modeling: partial Max-SAT distinguishes hard clauses (which must all be satisfied) from soft clauses (to be maximized), while cardinality-constrained Max-SAT limits clause sizes or incorporates counting constraints. These extensions enable encoding of real-world optimization tasks where full is infeasible but partial solutions with quantifiable quality are valuable. Solving Max-SAT exactly is intractable for large instances due to its exponential , leading to a rich body of algorithmic research. Exact solvers often leverage SAT solvers as NP-oracles within branch-and-bound frameworks, iteratively tightening on the optimal solution; notable examples include MSU3 (unsatisfiability-based upper bounding) and Open-WBO, which dominated the MaxSAT Evaluations from 2014 to 2016. For approximation, early greedy heuristics by (1974) achieved a 1/2-approximation ratio, later improved to 3/4 by Yannakakis (1994) via relaxations and randomized rounding techniques refined by Goemans and Williamson (1994). More recent local search and reactive methods continue to push practical performance, with inapproximability results showing that no algorithm can guarantee better than 7/8 for general Max-SAT unless P = NP. Beyond theory, Max-SAT finds applications in diverse domains requiring balanced decision-making under constraints, such as software package upgrades (maximizing compatible installations), error localization in C code (identifying minimal fault sets), and inference in bioinformatics (reconstructing genetic phases from pedigrees). Its ability to model trade-offs via soft constraints has also driven advances in hardware design (e.g., VLSI circuit optimization) and knowledge representation in logic-based systems. Ongoing MaxSAT competitions solvers on and crafted benchmarks, fostering progress in scalable optimization.

Fundamentals

Formal Definition

The maximum satisfiability problem (MAX-SAT) is defined over formulas in (CNF). A CNF formula \phi is a \bigwedge_{i=1}^m C_i of m clauses, where each clause C_i is a disjunction of literals over a set of variables X = \{x_1, \dots, x_n\}. A literal is either a variable x_j or its negation \neg x_j. An assignment \sigma: X \to \{0,1\} satisfies a clause C_i if at least one literal in C_i evaluates to true under \sigma; otherwise, the clause is falsified. In the unweighted MAX-SAT problem, the input is a CNF \phi, and the objective is to find an \sigma that maximizes the number of satisfied . The decision asks whether there exists an satisfying at least k , for a given k. Let \mathrm{opt}(\phi) denote the maximum number of that can be satisfied by any . The weighted MAX-SAT problem extends the unweighted by associating a positive weight w_i \in \mathbb{R}^+ with each C_i. The objective is then to find an \sigma that maximizes the total weight \sum_{i: C_i \text{ satisfied by } \sigma} w_i of satisfied . In this setting, \mathrm{opt}(\phi) denotes the maximum total weight achievable. A variant known as partial MAX-SAT (or weighted partial MAX-SAT) distinguishes hard (which must all be satisfied) from soft (which have positive weights and may be falsified); the goal is to satisfy all hard while maximizing the total weight of satisfied soft , treating falsified soft as having weight 0. MAX-SAT generalizes the (SAT), which is the special case requiring k = m (all clauses satisfied).

Historical Context

The Maximum Satisfiability (MAX-SAT) problem emerged in the early 1970s amid foundational studies on and approximation algorithms for NP-complete problems. David S. Johnson introduced the problem in 1974, framing it within the broader exploration of and developing the first approximation algorithms for it, which guaranteed satisfying at least half of the clauses in certain cases. This work built on the recognition of the (SAT) as NP-complete, extending it to an optimization variant where the goal is to maximize the number of satisfied clauses rather than achieve full satisfiability. In 1981, Mihalis Yannakakis improved the approximation ratio to 3/4 using relaxations. In the late 1970s and 1980s, researchers like Michael R. Garey and David S. Johnson further connected MAX-SAT to approximation theory through their comprehensive catalog of NP-complete problems, proving for restricted variants such as MAX-2-SAT (where clauses have at most two literals). Their 1979 book formalized these results and highlighted approximation as a practical response to intractability, influencing subsequent algorithmic developments. Interest grew steadily, but practical solvers remained limited until the , when advances in SAT solving techniques—such as the Davis-Putnam-Logemann-Loveland (DPLL) procedure enhancements—spilled over to MAX-SAT, enabling more efficient and exact methods for real-world instances. A key milestone came in 1994 when Michel X. Goemans and David P. Williamson presented new 3/4-approximation algorithms for general MAX-SAT based on relaxations and randomized rounding techniques. In 1995, they introduced a (SDP)-based approximation achieving approximately 0.878 for MAX-2-SAT, setting a for hardness-aware approximations. gained momentum in the late through dedicated and evaluations, culminating in the first formal MAX-SAT Evaluation in 2006 as an affiliated event of , which ed solvers and spurred competition-driven innovations. Earlier precursors, such as discussions at the SAT 2000 , highlighted growing interest in optimization extensions of SAT. Post-2010, MAX-SAT research surged due to applications in AI domains like , model optimization, and knowledge representation, as well as hardware and tasks requiring trade-off balancing in over-constrained systems. In the , local search methods saw significant refinements, with approaches combining local search and core-guided techniques improving solution quality on benchmarks by up to 5% over prior state-of-the-art solvers in evaluations. These advances reflect MAX-SAT's evolution from theoretical construct to a vital tool in scalable optimization.

Illustrative Examples

Unweighted Example

Consider the unweighted MAX-SAT instance consisting of three variables x_1, x_2, x_3 and the following four clauses, each with implicit weight 1: \phi = (x_1 \lor x_2) \land (x_1 \lor \neg x_2) \land (\neg x_1 \lor x_3) \land (\neg x_1 \lor \neg x_3). The objective is to assign truth values to the variables to maximize the number of satisfied clauses. This formula is unsatisfiable, as no can satisfy all four clauses simultaneously. The first two clauses force x_1 to be true: if x_1 were false, both clauses would require x_2 to be true and false, a . Likewise, the last two clauses force x_1 to be false: if x_1 were true, both would require x_3 to be true and false, another . The maximum number of satisfiable clauses is 3. For instance, the assignment x_1 = \top, x_2 = \bot, x_3 = \top satisfies the first three clauses but falsifies the fourth:
  • Clause 1: \top \lor \bot = \top
  • Clause 2: \top \lor \neg \bot = \top \lor \top = \top
  • Clause 3: \neg \top \lor \top = \bot \lor \top = \top
  • Clause 4: \neg \top \lor \neg \top = \bot \lor \bot = \bot.
To illustrate the maximization process exhaustively, the table below enumerates all $2^3 = 8 possible truth assignments, listing the satisfied clauses and the total count for each.
x_1x_2x_3Satisfied ClausesCount
\bot\bot\bot2, 3, 43
\bot\bot\top2, 3, 43
\bot\top\bot1, 3, 43
\bot\top\top1, 3, 43
\top\bot\bot1, 2, 43
\top\bot\top1, 2, 33
\top\top\bot1, 2, 43
\top\top\top1, 2, 33
As shown, every assignment satisfies at most 3 clauses, confirming the optimum.

Weighted Example

In the weighted maximum satisfiability problem, each clause in the CNF is assigned a non-negative weight, and the objective is to find a truth that maximizes the of the weights of the satisfied clauses. A representative instance of weighted partial MAX-SAT, where hard clauses must be fully satisfied and the goal is to maximize the total weight of satisfied soft clauses, is given by the \phi = (x_1, w=2) \wedge (x_2, w=1) \wedge (x_1 \vee x_2, w=3) \wedge (\neg x_1 \vee \neg x_2, w=\infty), with the last clause being hard (infinite weight indicating it cannot be falsified). The optimal assignment x_1 = \true, x_2 = \false satisfies the hard clause and the soft clauses x_1 (weight 2) and x_1 \vee x_2 (weight 3), yielding a total weight of 5; the soft clause x_2 (weight 1) is unsatisfied. In contrast, the suboptimal assignment x_1 = \false, x_2 = \true satisfies the hard clause along with the high-weight soft x_1 \vee x_2 (weight 3) and the low-weight soft x_2 (weight 1), for a total of only 4; here, the higher-weight soft x_1 (weight 2) goes unsatisfied. This highlights how weights guide trade-offs: satisfying the weight-2 provides greater than the weight-1 alternative, even when both options include the weight-3 . The partial MAX-SAT variant emphasizes scenarios with mandatory (hard) constraints and optional (soft) preferences weighted by importance, where only the weights of satisfied soft clauses contribute to the objective, modeling real-world optimization under strict requirements.

Computational Complexity

NP-Hardness Results

The decision version of the unweighted maximum satisfiability problem, denoted MAX-SAT(φ, k), asks whether there exists a truth assignment for the variables in a CNF formula φ with m clauses that satisfies at least k of those clauses, where 1 ≤ k ≤ m. This problem is NP-complete. Membership in NP follows directly: given a candidate assignment, one can evaluate φ by checking each clause in linear time relative to the input size, yielding a total verification time polynomial in the number of variables and clauses. To establish NP-hardness, consider a polynomial-time reduction from 3-SAT, which is known to be NP-complete. Given a 3-CNF formula ψ with m clauses, construct the MAX-SAT instance (ψ, m). A satisfying assignment for ψ satisfies all m clauses, hence at least m clauses in the instance; conversely, any assignment satisfying at least m clauses in ψ must satisfy all of them. Thus, ψ is satisfiable if and only if the MAX-SAT instance has a solution satisfying at least m clauses. This reduction preserves satisfiability and runs in polynomial time. The above shows hardness specifically when k = m. For the general case where k < m, hardness follows from the inclusion of hard instances (such as those with k = m) in the problem definition. The weighted version of MAX-SAT generalizes the unweighted case and is also NP-complete. In the weighted decision problem, each clause has a positive integer weight w_i, and the goal is to determine if there is an assignment satisfying clauses with total weight at least k. Membership in NP holds analogously, by summing the weights of satisfied clauses in polynomial time. For NP-hardness, reduce from the unweighted MAX-SAT decision problem by assigning weight 1 to every clause; the instances are equivalent, preserving the reduction from 3-SAT. Thus, even in the weighted setting, computing the maximum total weight of satisfiable clauses is NP-hard.

Inapproximability Bounds

The inapproximability bounds for the maximum satisfiability problem stem primarily from the Probabilistically Checkable Proof () theorem, which enables the creation of proof systems with low query complexity and soundness gaps that translate to approximation hardness for satisfiability problems. A landmark application of the theorem is due to Johan Håstad, who in 1997 established that for any ε > 0, it is -hard to approximate MAX-3-SAT within a factor of 1 - ε, meaning no polynomial-time algorithm can distinguish instances where at least (1 - ε)m clauses are satisfiable from those where at most (7/8 + ε)m clauses are satisfiable, unless P = . This result relies on a 3-query over binary alphabets, ensuring that satisfiable instances have proofs accepted with probability 1, while unsatisfiable ones are rejected with probability at least 1/8 + ε. For unweighted MAX-3-SAT specifically, Håstad's construction yields a tight bound: there exists no polynomial-time achieving a better than 7/8 + ε for any ε > 0, unless P = NP. This threshold matches the performance of simple randomized algorithms, such as assigning variables uniformly at random, which satisfy each 3-literal clause with probability exactly 7/8, highlighting the optimality of the hardness up to the ε term. The proof involves a gap-preserving from labeled problems to 3-SAT instances, preserving the inapproximability gap through the PCP verifier's properties. In the weighted setting, Håstad extended these techniques to show that for any k ≥ 2 and ε > 0, approximating weighted MAX-k-SAT within a factor of 1 - 1/k + ε is impossible in polynomial time, unless NP ⊆ DTIME(n^{\log \log n}). This result applies to k-CNF formulas where clauses have arbitrary positive weights, and the goal is to maximize the total weight of satisfied clauses. The stronger time-bound assumption is necessary to achieve the tight 1 - 1/k gap, as weaker assumptions like P ≠ NP only yield slightly looser bounds related to 1 - 2^{-k}. More recent advancements in the 2020s have leveraged the Exponential Time Hypothesis (ETH) to derive conditional inapproximability results, particularly for improving beyond constant-factor approximations in subexponential time. For instance, under ETH, no algorithm can approximate MAX-3-SAT to within 7/8 + ε in time 2^{o(n)}, even for dense instances with Θ(n^3) clauses, implying that any improvement over the 7/8 barrier requires exponential time. These ETH-based bounds extend to denser structural variants, ruling out n^{o(1)}-factor improvements (i.e., polylogarithmic refinements to the constant ratio) in polynomial time for dense MAX-SAT instances without contradicting ETH.

Solving Approaches

Exact Solvers and Methods

Exact solvers for the Maximum Satisfiability (MAX-SAT) problem aim to find an assignment that maximizes the number (or weighted sum) of satisfied clauses in a given in , guaranteeing optimality through exhaustive search techniques adapted from solving. These methods extend core ideas from the Davis-Putnam-Logemann-Loveland () algorithm used in SAT solvers, incorporating optimization mechanisms to prune search spaces based on lower and upper bounds on the objective value. Branch-and-bound (BnB) frameworks dominate exact MAX-SAT solving, where branching on variable assignments is guided by bounds computed via relaxation or propagation, and clause learning from conflicts further refines the search. Branch-and-bound techniques for MAX-SAT build on DPLL by maintaining a partial and estimating the maximum satisfiable clauses achievable from the current state, using clause weighting to prioritize unsatisfied soft clauses during pruning. In weighted MAX-SAT variants, bounds are tightened by solving linear relaxations or applying Max-SAT resolution rules, which derive implied clauses to detect infeasibility or improve lower bounds. For instance, propagation-based lower bounding propagates unit clauses while adjusting weights of remaining soft clauses, enabling early termination of suboptimal branches. Seminal improvements include integrating problem-specific heuristics, such as lazy data structures for efficient bound updates, which have enhanced solver on over-constrained instances. Integer linear programming (ILP) provides an alternative exact formulation for MAX-SAT by modeling the problem as a 0-1 integer program. For a with clauses C_1, \dots, C_m over variables x_1, \dots, x_n, introduce variables y_i \in \{0,1\} for each literal (where y_i = x_j or $1 - x_j) and z_c \in \{0,1\} for each clause c, maximizing \sum_c w_c z_c (weights w_c \geq 0) subject to z_c \leq \sum_{l \in c} y_l for each clause c and y_i + y_{\neg i} = 1 for complementary literals. This encodes clause satisfaction via the auxiliary z_c variables, solvable by off-the-shelf ILP solvers like CPLEX or Gurobi, though specialized MAX-SAT solvers often outperform general ILP on large instances due to tailored branching. Recent work explores ILP preprocessing to strengthen formulations before branch-and-cut, but empirical results indicate ILP-based approaches lag behind dedicated MAX-SAT tools in evaluation benchmarks. Prominent exact MAX-SAT solvers include Open-WBO, a modular open-source framework supporting both unweighted and weighted variants through configurable encoders and core-guided algorithms. Introduced in 2014, Open-WBO has evolved to incorporate linear programming-based unsatisfiable core extraction and anytime optimization, achieving top rankings in partial MAX-SAT tracks. MAXSATZ, developed in the early , employs branch-and-bound with advanced lower bounding via iterative relaxation, proving effective on crafted benchmarks from that era. Hybrid solvers like those extending local search for exact guarantees, such as variants integrating LoCoMax-style local optimization within BnB, further blend techniques for improved scalability on industrial instances, though pure BnB remains foundational. Performance of these solvers is rigorously assessed in the annual MaxSAT Evaluations, held since 2006 as satellite events of conference, with tracks distinguishing (real-world) from crafted (algorithmically generated) instances. In the evaluation, Open-WBO variants solved over 90% of partial MAX-SAT instances within time limits, outperforming competitors on weighted tracks by factors of 2-5 in solved instances, while BnB-based tools excelled on crafted problems requiring tight bounds. Earlier MaxSAT Evaluations from 2006-, held as satellite events of conference, highlighted the shift from basic DPLL extensions to weighted clause learning, with solvers like those from resolving up to 10^4 clauses optimally—establishing scale for modern applications in and scheduling. In the evaluation, branch-and-bound solvers secured top positions in the exact unweighted track, continuing to demonstrate advances in handling large-scale instances. Preprocessing techniques adapt SAT methods to MAX-SAT by simplifying formulas while preserving optimality, often applied before core solving. Unit iteratively enforces implied literals from unit soft , adjusting weights of dependent to maintain the maximum bound. subsumption eliminates redundant by checking if one implies another under current weights, reducing instance size by up to 50% in benchmarks without altering the optimal value. Tools like MaxPre integrate these with MAX-SAT-specific rules, such as soft , and certified variants ensure proof-logging for result verification, enhancing solver efficiency on large-scale problems.

Approximation Algorithms

The simple randomized algorithm for unweighted MAX-SAT assigns a truth value of true or false to each variable independently with equal probability 1/2. This approach satisfies each clause with probability at least 1/2, since the probability that all literals in a clause are false is at most 1/2, yielding an expected number of satisfied clauses of at least m/2, where m is the total number of clauses. Thus, it achieves a 1/2-approximation in expectation. Derandomization can be accomplished using the method of conditional expectations, which iteratively fixes variables to maintain the expected value at least as high as the overall expectation, resulting in a deterministic polynomial-time 1/2-approximation algorithm. A for unweighted MAX-SAT, introduced by in 1974, iteratively selects a literal that satisfies the maximum number of currently unsatisfied clauses and assigns it the value that achieves this, continuing until all clauses are considered. This method guarantees satisfying at least half of the clauses, providing a 1/2-approximation. Subsequent analysis has shown that it actually achieves a 2/3-approximation ratio in the worst case. For weighted MAX-SAT, a standard approach uses a linear programming (LP) relaxation where variables y_i represent the probability that variable x_i is true, and for each clause c with weight w_c, a variable z_c ≤ ∑{l ∈ c} y_l (adjusted for negations). The LP maximizes ∑ w_c z_c subject to 0 ≤ y_i ≤ 1 and y_i + y{¬i} = 1. Randomized rounding sets each x_i to true with probability y_i^, where y^ is the LP solution; the expected weight of satisfied clauses is at least (1 - 1/e) times the LP optimum (and thus the true optimum), since the probability of satisfying clause c is at least 1 - e^{-z_c^*}. This yields a (1 - 1/e) ≈ 0.632-approximation. Goemans and Williamson improved this in 1994 by using a non-linear rounding function f(y) = a + (1 - 2a)y with carefully chosen a, combined with derandomization via conditional expectations, achieving a 3/4-approximation for weighted MAX-SAT. Although semidefinite programming (SDP) relaxations provide stronger guarantees for special cases like MAX-2SAT (0.878-approximation via hyperplane rounding), the LP-based methods remain foundational for the general weighted case. Local search algorithms, such as variants of WalkSAT adapted for MAX-SAT, start with a and repeatedly flip the value of a variable to increase the number (or weight) of satisfied clauses, often with probabilistic choices to escape local optima. These methods excel empirically on many practical instances, frequently achieving near-optimal solutions, but lack worst-case approximation guarantees and can get stuck in suboptimal local maxima. For example, WalkSAT-based solvers have demonstrated high performance on random and structured benchmarks, often satisfying over 99% of clauses in weighted instances. The best known polynomial-time approximation ratio for general (weighted) MAX-SAT is approximately 0.797, achieved by Avidor, Berkovitch, and Zwick in 2006 through relaxations. For instances with bounded (a measure of structural sparsity), dynamic programming algorithms solve MAX-SAT exactly in time exponential only in the treewidth but polynomial in the instance size, providing optimal solutions when the width is small (e.g., O(2^{tw} n) time). In practice, state-of-the-art solvers combine LP relaxations, local search, and clause learning to routinely achieve approximations better than 0.999 on real-world instances, though without theoretical guarantees for arbitrary cases.

Special Cases

Polynomial-Time Solvable Variants

Several subclasses of the maximum satisfiability problem (MAX-SAT) can be solved exactly in time, providing tractable cases within the generally NP-hard framework. These variants restrict the structure of the input CNF formula, allowing efficient algorithms that compute the maximum number of satisfiable clauses. Key examples include formulas with Horn clauses, renamable Horn structure, positive literals in 2-clauses, and bounded variable occurrences. Horn MAX-SAT, where each clause contains at most one positive literal, is solvable in linear time using a . The constructs an implication graph from the clauses, treating negative clauses as implications between literals, and iteratively satisfies unit positive clauses while propagating forced assignments via or similar traversal. This maximizes the number of satisfied clauses by ensuring all negative clauses and the maximum possible positive clauses are satisfied, as the unsatisfied positive clauses are those not implied by the minimal model. The underlying test for formulas, which this extends, runs in O(n + m) time, where n is the number of variables and m the number of clauses. Renamable Horn MAX-SAT addresses formulas that become after renaming (flipping the polarity of) some variables. Preprocessing detects such renamings in polynomial time by modeling the problem as a 2-SAT instance or solving a system of linear inequalities to identify the set of variables to flip, ensuring no clause has more than one positive literal post-renaming. Once renamed, the linear-time MAX-SAT algorithm is applied to compute the exact optimum. This variant is useful for formulas close to structure, with the detection step taking O(n^3) time in the original formulation. Positive 2-SAT, a restriction of MAX-2-SAT where all literals are unnegated (clauses of the form (x ∨ y) with x, y positive), is trivially solvable in constant time per clause. Assigning true to every variable satisfies all clauses simultaneously, achieving the maximum value equal to the total number of clauses m. This holds because no clause can be falsified under this assignment, making it the optimal solution without further computation. When each variable occurs in at most two clauses (bounded occurrence 2), MAX-SAT is solvable in polynomial time via dynamic programming on the incidence graph. The graph, with variables and clauses as vertices and edges connecting variables to their clauses, has maximum degree 2, forming disjoint paths and cycles. For each component, dynamic programming computes the maximum satisfied clauses by considering assignments along the path or cycle, accounting for the implications of clause satisfaction. This yields an exact solution in O(m) time overall, as the components are processed independently. MAX-2-SAT, where all clauses have at most two literals, admits a -time exact in certain contexts, but the general unweighted case is NP-hard; however, the decision (which determines if the optimum equals m) reduces to finding strongly connected components in the graph. The graph has 2n vertices for literals and 2m edges from implications (e.g., (x ∨ y) adds edges ~x → y and ~y → x). If no and its are in the same component, the formula is satisfiable (optimum m), computed in O(n + m) time via Tarjan's or . For the general maximum, extensions like min-cut reductions apply to restricted types (e.g., clauses), but full exact solution relies on exponential methods outside bounds.

Hard Special Cases

The Maximum Satisfiability (MAX-SAT) problem exhibits significant hardness even under restrictions that limit the structure of instances, making certain subclasses NP-hard and resistant to approximation. These special cases highlight the inherent difficulty of the problem, often derived from reductions that preserve computational intractability while simplifying instance properties. A key hard special case is MAX-3-SAT, where every clause contains exactly three literals. This variant is NP-hard, as solving it allows deciding the of 3-SAT instances by checking if all clauses can be satisfied. Moreover, MAX-3-SAT is inapproximable to within a factor of \frac{7}{8} + \epsilon for any \epsilon > 0, unless P = , meaning no polynomial-time algorithm can guarantee satisfying more than a \frac{7}{8} + \epsilon fraction of clauses on average, even approximately. This bound is tight, as random assignments satisfy at least \frac{7}{8} of the clauses in expectation. The exact MAX-SAT problem, requiring an assignment that satisfies all clauses (or determining impossibility), is equivalent to the classic Boolean Satisfiability (SAT) problem and thus NP-hard. This case underscores that MAX-SAT's optimization nature does not alleviate the core decision when full satisfaction is demanded. MAX-SAT remains NP-hard for sparse instances with a linear number O(n) of clauses relative to the number of variables n, via standard s from NP-hard problems like 3-SAT, which produce formulas with linearly many clauses. Such sparsity does not simplify the problem, as the encodes the hardness without inflating clause count disproportionately. Additionally, hardness holds for balanced instances in PCP-based constructions, where each variable appears roughly the same number of times (e.g., constantly many), ensuring uniform structure while preserving inapproximability. Gap versions of MAX-SAT further amplify this hardness: the decision problem of distinguishing instances where at least (1 - \epsilon)m clauses are satisfiable from those where at most \frac{1}{2}m are, for sufficiently small \epsilon > 0 and m clauses, is NP-hard. These gaps arise from (PCP) theorems, which construct unsatisfiable instances appearing nearly optimal to verifiers.

Applications and Extensions

In Optimization Problems

The Maximum Satisfiability (MAX-SAT) problem finds extensive use in hardware verification, where it encodes circuit testing constraints to maximize fault coverage. In this context, digital circuits are modeled as Boolean formulas, with soft clauses representing potential faults such as stuck-at faults; an optimal assignment maximizes the number of satisfied clauses, corresponding to the highest number of detectable faults under test patterns. This approach has been applied in automated design debugging, where MAX-SAT identifies minimal corrections to faulty circuits by maximizing the satisfaction of specification clauses while minimizing changes to the original design. For instance, Chen et al. (2010) demonstrated its efficacy in localizing multiple faults in industrial circuits, achieving higher coverage than traditional simulation-based methods on benchmarks with thousands of gates. In VLSI design, weighted MAX-SAT optimizes resource allocation, including gate placement and logic synthesis, by assigning weights to clauses that reflect costs like area, power, or delay. Gates and interconnects are represented as variables, with clauses enforcing placement constraints and soft clauses prioritizing objectives such as minimizing wire length or maximizing throughput. This formulation extends to finite state machine (FSM) synthesis, where MAX-SAT minimizes states and transitions while satisfying functional requirements. Bioinformatics leverages MAX-SAT for analyzing DNA sequences, particularly in , which can be modeled as maximizing satisfaction to reconstruct genetic variations from observed data. Here, clauses represent between alleles and sequences, with weights reflecting confidence scores; the objective is to find an assignment that maximizes the weighted satisfied clauses, akin to motif-like pattern maximization in genomic data. Graca et al. (2011) applied pseudo-Boolean optimization, a MAX-SAT variant, to infer haplotypes from large datasets, achieving near-optimal solutions for instances with over 100 individuals and demonstrating scalability for partial feasibility in noisy . This approach aids in identifying recurring sequence patterns, supporting applications like studies. Scheduling problems, such as job-shop variants, are reduced to MAX-SAT to handle partial feasibility when full satisfaction is intractable, maximizing the number of feasible task assignments under resource and timing constraints. Jobs and machines are encoded as variables, with hard clauses for precedence and soft clauses weighted by priorities or penalties for delays. Luteberget et al. (2023) introduced a MAX-SAT-based dynamic discretization discovery method for and train rescheduling, iteratively refining time intervals to maximize satisfied operations in flexible scenarios, achieving speed-ups of 3x-10x over mixed-integer programming baselines on train rescheduling instances with up to 30 trains. This enables practical solutions for over-constrained environments, like production lines with setup times. Empirically, MAX-SAT integrates with tools like for model finding in optimization, extending relational specifications to maximize satisfaction of soft constraints in software and system design. AlloyMax (Chang et al., 2021) translates models into weighted MAX-SAT instances, enabling analyses like optimal in protocols or fault-tolerant architectures. These integrations highlight MAX-SAT's role in scalable, partial-order model exploration. The maximum satisfiability problem (MAX-SAT) exhibits strong theoretical ties to the (MAX-CUT) problem through reductions that establish equivalence in their . Specifically, projections, such as relaxations of the cut polytope, yield the same ratio of approximately 0.878 for both MAX-2SAT and MAX-CUT, demonstrating their structural similarity in optimization landscapes. Under the , reductions between these problems show that achieving better than this ratio is NP-hard for both, with tight inapproximability bounds of 0.878 for MAX-CUT and nearly matching results for MAX-2SAT. MAX-SAT also generalizes hitting set problems, which are dual to set cover, by encoding them as weighted instances where clauses represent elements to be "hit" by variable assignments that maximize satisfaction. In core-guided MAX-SAT solvers, minimal unsatisfiable cores are addressed via minimum hitting set computations to identify correction sets that minimize unsatisfied clauses, illustrating how hitting set serves as a subroutine in MAX-SAT while the broader framework of MAX-SAT encompasses weighted variants of these covering problems. This generalization allows MAX-SAT to model set cover-like objectives where partial coverage is optimized rather than requiring full satisfaction. In learning theory, MAX-SAT plays a key role in establishing hardness results for probably approximately correct (PAC) learning of disjunctive normal form (DNF) formulas, where inapproximability bounds for MAX-3SAT imply that no efficient algorithm can PAC-learn DNF classes to within certain error tolerances unless P=NP. These connections arise in analyses of proper learning, where the computational cost of finding consistent DNF hypotheses mirrors the difficulty of approximating MAX-SAT solutions, particularly for k-term DNF with bounded clause sizes. From a parameterized complexity perspective, MAX-SAT is W-hard when parameterized by the solution size, meaning no fixed-parameter tractable algorithm exists for deciding if at least k clauses can be satisfied unless FPT = W, due to reductions from problems like multicolored clique in constraint satisfaction frameworks. However, MAX-SAT becomes fixed-parameter tractable when parameterized by the treewidth of the incidence graph, enabling dynamic programming algorithms that run in time exponential only in the treewidth parameter, such as 2^{O(tw)} n^{O(1)} for optimal solutions. Quantum extensions of MAX-SAT leverage the quantum approximate optimization algorithm (QAOA) to seek near-term quantum advantages on NISQ devices, where QAOA layers are applied to MAX-3SAT instances by mapping variables to qubits and clauses to cost Hamiltonians, often outperforming classical heuristics in solution quality for small-scale problems. Empirical studies demonstrate that adaptive-bias variants of QAOA solve hard-region MAX-SAT instances more effectively than standard implementations, hinting at potential scalability for on future quantum hardware.

References

  1. [1]
    [PDF] Approximation Algorithms for the Maximum Satisfiability Problem
    In 5, we describe a class of -34- approximation algorithms for MAX SAT based on a variant of randomized rounding. We conclude with a few remarks in 6. 2.
  2. [2]
    [PDF] Maximum Satisfiability - UT Computer Science
    Feb 14, 2017 · What is MaxSAT Complexity? • Deciding whether k clauses can be satisfied: NP-Complete. • Input: A CNF formula ϕ, a positive ...
  3. [3]
    [PDF] Maximum Satisfiability in Software Analysis: Applications and ...
    MaxSAT is an optimization extension of SAT, used in software analysis to balance tradeoffs by maximizing the sum of weights of satisfied soft clauses.
  4. [4]
    [PDF] Maximum Satisfiability
    SAT is historically notable because it was the first problem proven to be NP-complete.
  5. [5]
    [PDF] Improved approximation algorithms for maximum cut and ...
    MAX. 2SAT consists of MAX. SAT instances in which each clause has length at most two. MAX. 2SAT is NP-complete. [Garey et al. 1976]; the best approximation.Missing: 1970s | Show results with:1970s
  6. [6]
    The first and second Max-SAT evaluations - ResearchGate
    Sep 26, 2025 · We describe the organization and report on the results of the First and Second Max-SAT Evaluations, which were organized as affiliated ...
  7. [7]
    SAT Paper Library - Princeton University
    Solving Problems with Hard and Soft Constraints Using A Stochastic Algorithm for MAX-SAT". ... In: SAT 2000 - Highlights of Satisfiability Research in the Year ...
  8. [8]
    [PDF] Large Neighbourhood Search for Anytime MaxSAT Solving - IJCAI
    On average in these cases the best known solution was improved by 3.7% for 2020 instances and 4.8% for 2021 instances; the maximum improvement we saw to a ...Missing: 2020s | Show results with:2020s
  9. [9]
    [PDF] Using Weighted MAX-SAT Engines to Solve MPE
    Formally,. Definition 3 A Bayesian network is a pair (G, P) where G is a directed acyclic graph whose nodes are variables, and.
  10. [10]
    Incomplete MaxSAT approaches for combinatorial testing
    Aug 17, 2022 · A Weighted Partial MaxSAT instance is a multiset of weighted clauses. Example 8. The following Weighted Partial MaxSAT instance \phi = \{(x_1, 2 ...
  11. [11]
    Some optimal inapproximability results | Journal of the ACM
    We prove optimal, up to an arbitrary ε > 0, inapproximability results for Max-E k-Sat for k ≥ 3, maximizing the number of satisfied linear equations.
  12. [12]
    [PDF] Combining Clause Learning and Branch and Bound for MaxSAT ...
    MaxCDCL is among the top 5 out of a total of 15 exact solvers that participated in the 2020 MaxSAT Evaluation, solving several in- stances that other solvers ...
  13. [13]
    [PDF] Combining Clause Learning and Branch and Bound for MaxSAT - HAL
    Oct 30, 2021 · Roughly speaking, we find two main groups of exact MaxSAT solvers: branch-and-bound (BnB) and SAT-based solvers. BnB MaxSAT solvers implement ...
  14. [14]
    [PDF] Improved Exact Solver for the Weighted Max-SAT Problem - Uni Ulm
    The weighted. Max-SAT problem is a generalization where each clause has a weight, and the sum of the weights of the satisfied clauses has to be maximized.
  15. [15]
    (PDF) Improved Branch and Bound Algorithms for MAX-SAT
    PDF | We present two new branch and bound algorithms for solving Max-SAT, and provide experimental evidence that outperform the algorithm of Borchers.
  16. [16]
    [PDF] Exact Max-SAT solvers for over-constrained problems
    Our solvers are branch and bound algorithms equipped with original lazy data structures, powerful inference techniques, good quality lower bounds, and original ...
  17. [17]
    [PDF] ILP Techniques for Enhancing Branch and Bound MaxSAT Solvers
    Jul 8, 2025 · We show that ILP solvers are generally less efficient for MaxSAT than the leading solvers in the exact tracks of the MaxSAT Evaluations.
  18. [18]
    A Modular MaxSAT Solver - Open-WBO - SpringerLink
    This paper presents open-wbo, a new MaxSAT solver. open-wbo has two main features. First, it is an open-source solver that can be easily modified and extended.
  19. [19]
    Open-WBO: state-of-the-art MaxSAT and Pseudo-Boolean solver
    Sep 1, 2018 · Open-WBO is an extensible and modular open-source MaxSAT Solver. Open-WBO was one of the best solvers in the partial MaxSAT categories at MaxSAT Evaluations.
  20. [20]
    MaxSAT Evaluations
    The MaxSAT Evaluations focus on the evaluation of the current state-of-the-art in open-source solver implementations for the Boolean optimization paradigm ...
  21. [21]
    Results - MaxSAT Evaluation 2024
    MaxSAT Evaluation 2024. MaxSAT Evaluation 2024. Affiliated with SAT 2024 · · India. Results ... Results: at SAT'24. Calls. Call for Benchmarks · Call for Solvers ...Missing: competitions 2002-2024
  22. [22]
    [PDF] MaxSAT evaluation 2024: Solver and benchmark descriptions
    Organized yearly starting from 2006, the year 2024 brought on the 19th edition of the. MaxSAT Evaluations, organized as a satellite event of the 27th ...
  23. [23]
    [PDF] MaxPre: An Extended MaxSAT Preprocessor? - Tuukka Korhonen
    MaxPre implements both SAT-based and. MaxSAT-specific preprocessing techniques, and offers solution reconstruction, cardinality constraint encoding, and an API ...
  24. [24]
    [1310.2298] SAT-based Preprocessing for MaxSAT (extended version)
    Oct 8, 2013 · In this paper we show how to adapt these preprocessing techniques to MaxSAT. To achieve this we recast the MaxSAT problem in a recently ...Missing: unit propagation
  25. [25]
    [PDF] Certified MaxSAT Preprocessing - Jakob Nordström
    During Stage 1 (Steps 1–4 in Table 1), the core constraints of the proof are initialized to contain the four constraints corresponding to the hard and non-unit.
  26. [26]
    Approximation algorithms for combinatorial problems - ScienceDirect
    December 1974, Pages 256-278. Journal of Computer and System Sciences. Approximation algorithms for combinatorial problems* ... Johnson. Fast allocation ...
  27. [27]
    [PDF] 1/e) approximation via randomized rounding of an LP
    We consider the weighted Max-Sat problem (for an arbitrary CNF formula F). ... obtain a deterministic algorithm with the same 1 − 1/e approximation ratio.
  28. [28]
    Local Search Algorithms for SAT: An Empirical Evaluation
    In this article, we focus on two particularly well-known families of local search algorithms for SAT, the GSAT and WalkSAT architectures.
  29. [29]
    Improved Approximation Algorithms for MAX SAT - ScienceDirect.com
    By using the MAX 2SAT and 3SAT algorithms, we obtain a performance guarantee of 0.7846, and by using Zwick's algorithm, we obtain a performance guarantee of ...
  30. [30]
    Solving #SAT and MaxSAT by dynamic programming - ResearchGate
    Aug 6, 2025 · In this paper we attack #SAT and MaxSAT using similar, but more modern, graph structure tools. The tractable cases will include formulas whose ...<|control11|><|separator|>
  31. [31]
    [PDF] A MaxSAT approach for solving a new Dynamic Discretization ...
    Jun 14, 2023 · By exploiting the DDD paradigm, we develop a novel approach to train dispatching and, more in general, to job- shop scheduling. The algorithm ...
  32. [32]
    [PDF] Optimal Inapproximability Results for MAX-CUT and Other 2 ...
    Sep 19, 2005 · Abstract. In this paper we show a reduction from the Unique Games problem to the problem of approximating. MAX-CUT to within a factor of αGW ...
  33. [33]
    [PDF] Solving MAXSAT by Decoupling Optimization and Satisfaction
    . The maxsat decision problem is NP-complete and maxsat is NP-hard (Cook, 1971), ... environment for SLS algorithms for SAT and MAX-SAT. In Proceedings of Theory ...
  34. [34]
    [PDF] Analysis of Core-Guided MaxSat Using Cores and Correction Sets
    We work with minimum hitting sets of minimal cores p-cores. A hitting set H is defined as a set of clauses. A solution I of mcard is a set of literals and ...
  35. [35]
    [PDF] The Approximability of Learning and Constraint Satisfaction Problems
    Oct 7, 2010 · ... Max-SAT, Max-3SAT as well as Set Cover, Coloring and Maximum ... DNF, CNF, Neural Networks, et al. . In learning theory, researchers ...
  36. [36]
  37. [37]
    [PDF] Complexity and Approximability of Parameterized MAX-CSPs - arXiv
    Jan 23, 2017 · An optimal solution for MAX-CNF-SAT can be computed in FPT when parameterized by the treewidth tw∗ of the incidence graph [1], and hence CNF- ...
  38. [38]
    SAT Problems with Adaptive-Bias Quantum Algorithm
    Jun 2, 2023 · The quantum approximate optimization algorithm (QAOA) is a promising method for solving certain classical combinatorial optimization problems on near-term ...