In computability and complexity theory, reductions are algorithms that transform one problem into another. They are used to apply known solutions to new problems or to demonstrate that one problem is ...