It seems from reading that problems are determined to be NP-complete if they can be shown to be equivalent to another NP-complete problem. However, I wonder how the "original" NP-complete problem was shown to be NP-complete. If one could say how this was done, I would be grateful.
2026-03-28 03:33:06.1774668786
NP-complete Problems
266 Views Asked by Bumbble Comm https://math.techqa.club/user/bumbble-comm/detail At
1
There are 1 best solutions below
Related Questions in COMPUTATIONAL-COMPLEXITY
- Product of sums of all subsets mod $k$?
- Proving big theta notation?
- Little oh notation
- proving sigma = BigTheta (BigΘ)
- sources about SVD complexity
- Is all Linear Programming (LP) problems solvable in Polynomial time?
- growth rate of $f(x)= x^{1/7}$
- Unclear Passage in Cook's Proof of SAT NP-Completeness: Why The Machine M Should Be Modified?
- Minimum Matching on the Minimum Triangulation
- How to find the average case complexity of Stable marriage problem(Gale Shapley)?
Related Questions in NP-COMPLETE
- Divide set into two subsets of equal sum and maximum this sum
- Linear Programming Primal-Dual tough question
- Bipartite Graph Partitioning (special case)
- Minimise the sum of pairwise distances between labelled points in a metric space subject to covering some set of labels
- How should a chain of proof be written?
- Show the NP completeness of Hamiltonian Path with the knowledge of an directed Euler graph
- Integer Programming (non $0-1$) Reduction to show $NP$ Completeness
- Categories with at most one arrow between any pair of objects. (appears in NPC)
- Find a generalized path cover of a square graph
- Generalize minimum path cover
Trending Questions
- Induction on the number of equations
- How to convince a math teacher of this simple and obvious fact?
- Find $E[XY|Y+Z=1 ]$
- Refuting the Anti-Cantor Cranks
- What are imaginary numbers?
- Determine the adjoint of $\tilde Q(x)$ for $\tilde Q(x)u:=(Qu)(x)$ where $Q:U→L^2(Ω,ℝ^d$ is a Hilbert-Schmidt operator and $U$ is a Hilbert space
- Why does this innovative method of subtraction from a third grader always work?
- How do we know that the number $1$ is not equal to the number $-1$?
- What are the Implications of having VΩ as a model for a theory?
- Defining a Galois Field based on primitive element versus polynomial?
- Can't find the relationship between two columns of numbers. Please Help
- Is computer science a branch of mathematics?
- Is there a bijection of $\mathbb{R}^n$ with itself such that the forward map is connected but the inverse is not?
- Identification of a quadrilateral as a trapezoid, rectangle, or square
- Generator of inertia group in function field extension
Popular # Hahtags
second-order-logic
numerical-methods
puzzle
logic
probability
number-theory
winding-number
real-analysis
integration
calculus
complex-analysis
sequences-and-series
proof-writing
set-theory
functions
homotopy-theory
elementary-number-theory
ordinary-differential-equations
circles
derivatives
game-theory
definite-integrals
elementary-set-theory
limits
multivariable-calculus
geometry
algebraic-number-theory
proof-verification
partial-derivative
algebra-precalculus
Popular Questions
- What is the integral of 1/x?
- How many squares actually ARE in this picture? Is this a trick question with no right answer?
- Is a matrix multiplied with its transpose something special?
- What is the difference between independent and mutually exclusive events?
- Visually stunning math concepts which are easy to explain
- taylor series of $\ln(1+x)$?
- How to tell if a set of vectors spans a space?
- Calculus question taking derivative to find horizontal tangent line
- How to determine if a function is one-to-one?
- Determine if vectors are linearly independent
- What does it mean to have a determinant equal to zero?
- Is this Batman equation for real?
- How to find perpendicular vector to another vector?
- How to find mean and median from histogram
- How many sides does a circle have?
As MJD pointed out, Garey and Johnson provide a very readable explanation of why SAT is NP-complete. The basic idea is very simple (and elegant), but the details involve no small amount of complication. Here's a pared-down explanation.
NP problems: A decision problem $X$ is in NP if, by definition, there is some nondeterministic Turing Machine $M$ such that when $M$ is given an instance, $I$ of $X$ as its input, can decide in time polynomial in the length of $I$ whether $I$ has a solution or not.
NP-Complete problems: A decision $Y$ problem in NP is called NP-complete if for any problem $X\in$ NP, there is a polynomial-time transformation $f$ which maps an instance $I$ of $X$ into an instance $f(I)$ of $Y$, in such a way that $I$ has a solution if and only if $f(I)$ has a solution. It seems as if showing that $Y$ is NP-complete should be really intimidating: how on earth would we establish that every NP problem could be poly-time transformed to our $Y$?
SAT, a special NP problem: Recall that the decision problem SAT consists of instances $I$ which are boolean expressions over a set $V$ of boolean variables. It's not too hard to show that there is a nondeterministic TM $M$ which, when given an instance $I$, can determine, in time polynomial in the length of $I$, whether there is an assignment of values to $V$ which will make $I$ true or whether there is no such assignment (essentially, just nondeterministically generate all possible assignments and test each for satisfiability).
SAT is NP-complete: Here comes the clever part. If we want to show that SAT is NP-complete, we need to be able to transform any NP problem, $X$ to SAT. There are hundreds of NP problems, of widely varying forms; how could we possibly transform each of these into instances of SAT? Well, the only thing all of the NP problems have in common is that they can be decided by TMs, so we rely on that property. For any NP problem $X$ we express its decider TM, $M_X$ by a huge boolean expression $B$ in such a way that for an instance $I$ of $X$, $M_X(I)$ will answer "yes" if and only if $B$ can be satisfied. In essence, we're modeling the action of the TM $M_X$ on $I$. Once we do that and show that the transformation can be accomplished in polynomial time, we will have shown that SAT is indeed NP-complete.
All the important work is in the details: for instance, we need a boolean expression that represents "$M_X$ can only be in one state at a time", another that says "from this configuration, $M_X$ can only make a move to these other configurations" and so on. (I once did this for a one-move TM; it required 16 variables and 38 subclauses ANDed together. Ugh, but the point is that it can always be done.)