Google OR-Tools v9.11
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
cp_model_presolve.h File Reference
#include <array>
#include <cstddef>
#include <cstdint>
#include <deque>
#include <functional>
#include <utility>
#include <vector>
#include "absl/base/attributes.h"
#include "absl/container/flat_hash_map.h"
#include "absl/container/flat_hash_set.h"
#include "ortools/sat/clause.h"
#include "ortools/sat/cp_model.pb.h"
#include "ortools/sat/cp_model_mapping.h"
#include "ortools/sat/presolve_context.h"
#include "ortools/sat/presolve_util.h"
#include "ortools/sat/sat_base.h"
#include "ortools/sat/sat_parameters.pb.h"
#include "ortools/sat/util.h"
#include "ortools/util/logging.h"
#include "ortools/util/sorted_interval_list.h"
#include "ortools/util/time_limit.h"

Go to the source code of this file.

Classes

class  operations_research::sat::CpModelPresolver
 
class  operations_research::sat::ModelCopy
 

Namespaces

namespace  operations_research
 In SWIG mode, we don't want anything besides these top-level includes.
 
namespace  operations_research::sat
 

Functions

void operations_research::sat::ApplyVariableMapping (const std::vector< int > &mapping, const PresolveContext &context)
 
bool operations_research::sat::ImportModelWithBasicPresolveIntoContext (const CpModelProto &in_model, PresolveContext *context)
 
bool operations_research::sat::ImportModelAndDomainsWithBasicPresolveIntoContext (const CpModelProto &in_model, const std::vector< Domain > &domains, std::function< bool(int)> active_constraints, PresolveContext *context)
 
void operations_research::sat::CopyEverythingExceptVariablesAndConstraintsFieldsIntoContext (const CpModelProto &in_model, PresolveContext *context)
 Copies the non constraint, non variables part of the model.
 
CpSolverStatus operations_research::sat::PresolveCpModel (PresolveContext *context, std::vector< int > *postsolve_mapping)
 Convenient wrapper to call the full presolve.
 
std::vector< std::pair< int, int > > operations_research::sat::FindDuplicateConstraints (const CpModelProto &model_proto, bool ignore_enforcement)