I'm seeing a lot conflicting info about this problem. With some saying sites it is NP-complete and others saying that it is co-NP-complete. The only real consistent info I can find is that is definitely NP-hard. Which is it? And why?
Is MAX 3 SAT NP-complete or co-NP-complete?
1.5k Views Asked by STaron1 At
1
There are 1 best solutions below
Related Questions in COMPLEXITY-THEORY
- Sorting complexity
- Determinating Complexity time
- Probability mass of summing two discrete random variables, in linearithmic time
- A little help finding the complexity of time and and complexity of space
- Most efficient way to print differences of two arrays?
- Calculating the Recurrence Relation T(n)=T(n / log n) + Θ(1)
- How can I tell how many times these nested statements will execute?
- Complexity of this greedy algorithm to find the maximum independent set of a graph
- What is the complexity of this piece of code
- Ways to measure bit sequence complexity
- What is an Approximation Factor?
- Data structure request: Lazily infinite set
- What does it mean that a tree's height is O(lg n)?
- Two functions are not taking the time I would expect due to their big-O complexity, can anyone explain why?
- Booking System is NP Complete
Related Questions in NP
- Confusion about why NP is contained in PSPACE, EXPTIME etc
- How to prove a prob is np complete and is in np?
- Efficiently assign games
- Study: NP-Completeness Using Hamiltonian Path
- Prove NP-Completeness of generating 2 shortest routes over given edge grouping constraints?
- ASP Clingo - splitting graph to n cliques
- Smallest sum of difference between elements in two lists
- Booking System is NP Complete
- Max 3 color algorithm
- Algorithmic Analysis - Are there any algorithms having their best case complexity of the order of n^99?
- Knapsack or similar with no values and with limits as to which items can be assigned where?
- L-complement in NP
- 3-colouring of a graph (polynomial time)?
- Concatenation of two languages in NP
- when a given graph is 3-colorable?
Related Questions in SAT
- SAT-Solving: DPLL vs.?
- Adding clauses directly to the z3 solver
- Optimize SAT constraints of puzzle from DNF
- partial assignments in Z3
- Choco Sat Formulation
- Yosys instruction "sat -dump_cnf "
- How to download sat file with angular and C#
- Optimize event seat assignments with Corona restrictions
- Finding a path through vertices in a graph with SAT Solving in Python
- 3-OCC-MAX SAT np-complete?
- Is MAX 3 SAT NP-complete or co-NP-complete?
- How many satisfying assignments are there in a set of 3-CNF clauses where no clause share the same variable?
- How can I express scheduling problems in minisat?
- "Check if a cycle of K nodes exists" reduction to SAT?
- Alloy6 allowing invalid state transitions
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
I think this depends on how you define MAX-3SAT.
If you define MAX-3SAT as the function problem "given a 3CNF formula, produce a variable assignment maximizing the number of satisfied clauses," then it's neither NP-complete nor co-NP-complete. NP and co-NP are classes of decision problems and therefore no function problem can belong to them. Therefore, MAX-3SAT can't belong to NP or co-NP, so it can't be a complete problem for either class. This function problem is NP-hard via a reduction from vanilla 3SAT - if you could find the maximally satisfying assignment, you could check if the original formula was satisfiable by seeing if all clauses were satisfied.
You could also define MAX-3SAT as the decision problem "given a 3CNF formula and a number n, determine whether there's a variable assignment to the formula that makes at least n clauses true." This is definitely in NP and also NP-complete via a reduction from 3SAT.
On the other hand, if you define MAX-3SAT as the decision problem "given a 3CNF formula and a variable assignment to that formula, is that assignment the one that maximizes the number of satisfied clauses?," then it would belong to co-NP (if the answer is no, you could confirm this by exhibiting a better satisfying assignment). I'm not sure if it would be NP-hard, though, and I'm also not sure whether it's co-NP-hard either.
Hope this helps!