14#ifndef OR_TOOLS_SAT_CP_MODEL_SYMMETRIES_H_
15#define OR_TOOLS_SAT_CP_MODEL_SYMMETRIES_H_
51 std::vector<std::unique_ptr<SparsePermutation>>* generators,
52 SolverLogger* logger, TimeLimit* solver_time_limit);
57 TimeLimit* solver_time_limit);
bool DetectAndExploitSymmetriesInPresolve(PresolveContext *context)
void FindCpModelSymmetries(const SatParameters ¶ms, const CpModelProto &problem, std::vector< std::unique_ptr< SparsePermutation > > *generators, SolverLogger *logger, TimeLimit *solver_time_limit)
bool FilterOrbitOnUnusedOrFixedVariables(SymmetryProto *symmetry, PresolveContext *context)
void DetectAndAddSymmetryToProto(const SatParameters ¶ms, CpModelProto *proto, SolverLogger *logger, TimeLimit *time_limit)
Detects symmetries and fill the symmetry field.
In SWIG mode, we don't want anything besides these top-level includes.