diff --git a/ortools/sat/cp_model.proto b/ortools/sat/cp_model.proto index fd24988813..9746b958ce 100644 --- a/ortools/sat/cp_model.proto +++ b/ortools/sat/cp_model.proto @@ -740,6 +740,10 @@ message CpSolverResponse { // changing your model to minimize the number of assumptions at false, but // this is likely an harder problem to solve. // + // Important: Currently, this is minimized only in single-thread and if the + // problem is not an optimization problem, otherwise, it will always include + // all the assumptions. + // // TODO(user): Allows for returning multiple core at once. repeated int32 sufficient_assumptions_for_infeasibility = 23; diff --git a/ortools/sat/cp_model_presolve.cc b/ortools/sat/cp_model_presolve.cc index 132571cc02..89a7abba30 100644 --- a/ortools/sat/cp_model_presolve.cc +++ b/ortools/sat/cp_model_presolve.cc @@ -6425,6 +6425,7 @@ CpModelPresolver::CpModelPresolver(PresolveContext* context, context_->params().keep_all_feasible_solutions_in_presolve() || context_->params().enumerate_all_solutions() || context_->params().fill_tightened_domains_in_response() || + !context_->working_model->assumptions().empty() || !context_->params().cp_model_presolve(); // We copy the search strategy to the mapping_model.