How statement and proof provenance work
The first chip identifies the source of the statement or construction; the second identifies the source of its local proof or verification.
- Literature-sourced: the exact statement appears in a cited source; only wording and notation differ.
- AI-adapted: a semantically identical restatement of literature-sourced material, modulo indexing, notation, and boundary cases adopted by the library.
- AI-generated: a genuinely novel statement formulated by AI, with no source for the claim itself.
These labels describe origin, not correctness: citations and verification chips remain separate evidence.
3SAT polynomial-time many-one reduces to subset sum
Statement
There is a polynomial-time many-one reduction from -SAT to SUBSET SUM.
Facts & Assumptions
Given: An arbitrary INDEPENDENT SET instance , where
There is a polynomial-time many-one reduction from -SAT to CLIQUE, by 3SAT polynomial-time many-one reduces to CLIQUE.
CLIQUE, INDEPENDENT SET, and VERTEX COVER polynomial-time many-one reduce to one another, by CLIQUE, INDEPENDENT SET, and VERTEX COVER are polynomially interreducible.
INDEPENDENT SET asks for pairwise nonadjacent vertices, and SUBSET SUM asks for a subcollection of positive integers whose sum is a prescribed target, by Clique, independent set, and vertex cover decision problems and Subset sum and partition decision problems.
Proof
By [L1] and [L2], it is enough to reduce INDEPENDENT SET to SUBSET SUM. If , map to the fixed yes-instance consisting of the list with target , because every graph has an independent set of size . If , map to the fixed no-instance consisting of the list with target , because no graph on vertices has an independent set of size greater than . So assume from now on that . Set the base to .
For each vertex , form a base- integer with digits: the leading digit is , and the digit in edge-column is exactly when is incident to . For each edge , form one slack integer whose only nonzero digit is a in edge-column . Let the target integer have leading digit and digit in every edge-column. Since the leading-column sum is at most and every edge-column sum is at most , no carries can occur in any valid sum.
If is an independent set of size , choose the vertex numbers with . For each edge that has no endpoint in , also choose the slack number . Then the leading digit sums to , and each edge-column sums to : an edge with one endpoint in receives its from the corresponding vertex number, while an edge with no endpoint in receives its from its slack number. Hence the chosen integers sum to .
Conversely, suppose that some subcollection of the constructed integers sums to . Because the slack numbers have leading digit , exactly vertex numbers must be chosen. Consider any edge . The target has digit in column , and there are no carries by step 2.1. Hence both endpoint numbers for and cannot both be chosen, because that would contribute at least in column . Therefore the chosen vertices are pairwise nonadjacent, so they form an independent set.
The map in step 2.1 uses integers with base- digits, so its binary output size and construction time are polynomial in the size of . Steps 3.1 and 3.2 prove a polynomial-time many-one reduction from INDEPENDENT SET to SUBSET SUM. Composing that reduction with [L1] and [L2] yields a polynomial-time many-one reduction from -SAT to SUBSET SUM.
Depends on
Used by
Nothing in the library uses this result yet.
Dependency tree · two levels
12 results within two dependency steps of this one, each drawn at its shortest distance from it. An arrow runs from a result to what uses it, so the chart reads left to right and ends at this result, which carries a heavier outline. Every node is a link to that result. Click elsewhere on the chart to enlarge it.
Sources
- Fabrizio Iozzi and Luca Trevisan, Handout NP2 (standard reference, not scraped)
- Sanjeev Arora and Boaz Barak, Computational Complexity: A Modern Approach (standard reference, not scraped)