Lably
Skip to content

Parsimonious reduction

  • 4 min read
  • 3 chapters

Related on Lably

Through Bijection and Directed graph

Parsimonious reductions are commonly used in computational complexity for proving the hardness of counting problems, for counting complexity classes such as #P. Additionally, they are used in game complexity, as a way to design hard puzzles that have a unique solution, as many types of puzzles require.

Formal definition

Let x be an instance of problem X. A Parsimonious reduction R from problem X to problem Y is a reduction such that the number of solutions to x is equal to the number of solutions to problem R(x). If such a reduction exists, and if we have an oracle that counts the number of solutions to R(x) which is an instance of Y, then we can design an algorithm that counts the number of solutions to x, the corresponding instance of X. Consequently, if counting the number of solutions to the instances of X is hard, then counting the number of solutions to Y must be hard as well.

Sign in to keep reading

2 more chapters are free with a Lably account.

More in Computing and communication