C++ Reference: sat_solver_utils

Note: This documentation is automatically generated.



Applies presolve steps to improve the MIP -> IP imperfect conversion. The stricter the domain of the variables, the more room we have for scaling the constraint to integers and prevent overflow. Similarly if we can remove singleton continuous variables, it is just good to do so.

Returns the presolve status which can currently be:
   - INIT for most cases were nothing was proven during this step.
   - PRIMAL_INFEASIBLE if the model was proven infeasible.
   - INFEASIBLE_OR_UNBOUNDED if the presolve couldn't distinguish between these
   two statuses.
   - ABNORMAL if an error occurred.
Function Type Arguments Comments
ApplyMipPresolveSteps

Return type: glop::ProblemStatus

Arguments: const glop::GlopParameters& glop_params, MPModelProto* model, std::vector<std::unique_ptr<glop::Preprocessor>>* for_postsolve, SolverLogger* logger