Another Solution Problem (ASP)
In Complexity Theory, Another Solution problem denotes the class of problems that seek the existence of a second solution to NP search problems, given the existence of one solution. This class was first introduced by Ueda and Nagao.[1], although ASP results for a number of problems had been in existence prior to that, e.g., Hamiltonian Circuit Problems[2]
Formal definition
Given an instance of an NP search problem , the problem ASP takes a solution to and asks if there is a second, different solution to . For example, the ASP SAT problem takes in a boolean formula and a satisfying assignment of the formula, and asks if there is another distinct satisfying assignment of the same formula.
The problems in ASP are particularly interesting to puzzle designers. When designing a puzzle, we would often like to know whether the solution to the puzzle is unique or not, which is exactly the premise of ASP.
ASP reduction
ASP reductions are a special type of reductions that are essential in showing hardness for ASP problems. Formally, a problem is ASP reducible to another problem if,
- there exists a parsimonious reduction from to
- there is a bijection between the solutions to an instance of and the solutions to the corresponding instance of that can be computed in polynomial time.[1]
Showing an ASP reduction provides us with crucial hardness information about the problems. For example,
- If ASP is in P (i.e., if it is solvable in polynomial time), ASP must be in P as well.[3]
- If ASP is NP-hard, then ASP must be NP-hard as well.[3]
ASP-hardness
A problem is known as ASP-hard if every NP search problem is ASP reducible to . Consequently, if a problem is ASP-hard, then it is NP-hard as well.
A problem is known as ASP-complete if is an NP search problem itself and is NP-hard.
Examples
SAT
SAT is ASP-complete. SAT itself is an NP search problem, while the reduction given in Cook-Levin Theorem is an ASP reduction.
3SAT
3SAT asks whether a given boolean formula in 3-CNF form has a satisfying assignment. This problem can be shown to be ASP-complete via an ASP reduction from SAT.[1]
1-in-3SAT
This problem is a variant of 3SAT, which asks whether a given boolean formula in 3-CNF form has a satisfying assignment where each clause contains exactly one true literal. This problem can be shown to be ASP-complete via two layers of ASP reductions from 3SAT.[1]
Hamiltonian cycle
The problem of finding a Hamiltonian cycle in a planar directed max degree-3 graph is ASP-complete.[1]
Slitherlink
Slitherlink is an example of an ASP-complete puzzle. The problem is to find a simple loop with no loose ends. This problem can be shown to be ASP-complete via an ASP reduction from the Hamiltonian cycle problem.[1]
References
- ↑ 1.0 1.1 1.2 1.3 1.4 1.5 Seta, Takahiro; Yato, Takayuki (2003-05-01). "Complexity and Completeness of Finding Another Solution and Its Application to Puzzles". IEICE TRANSACTIONS on Fundamentals of Electronics, Communications and Computer Sciences. E86-A (5): 1052–1060. ISSN 0916-8508.
- ↑ Papadimitriou, Christos H., "Computational Complexity", Encyclopedia of Computer Science, John Wiley and Sons Ltd., pp. 260–265, ISBN 9780470864128, retrieved 2019-05-15
- ↑ 3.0 3.1 "MIT 6.890: Algorithmic Lower Bounds: Fun With Hardness Proofs" (PDF).
This article "Another Solution Problem (ASP)" is from Wikipedia. The list of its authors can be seen in its historical and/or the page Edithistory:Another Solution Problem (ASP). Articles copied from Draft Namespace on Wikipedia could be seen on the Draft Namespace of Wikipedia and not main one.
