Pre-solving is the process of detecting redundancies in an optimization problem and removing them so that the problems that are fed to solvers are properly formulated. The reduced optimization problem is now solved by the solver. This has the two-fold benefit of speeding up the optimization process, and higher accuracy in solutions. Since smaller problems are fed to the solver (eg. SCS), the bottleneck call to the solver has now become significantly faster.
Ideally, we would want to remove the types of redundancy which lead to reduction in total solution time. But this isn't always possible. There is also a trade-off between time spent in the pre-solve procedure and the amount of redundancy detected by our procedure. We take the approach mentioned in the paper by Andersen.
Motto - Find simple forms of redundancies and find them quick.