ortools/sat/cp_model_presolve.cc
bool PresolveContext::VariableIsUniqueAndRemovable(int ref) const {
  return var_to_constraints[PositiveRef(ref)].size() == 1 &&
         affine_relations.ClassSize(PositiveRef(ref)) == 1 &&
         !enumerate_all_solutions;
}
// TODO(user): In some case, we could still remove var when it has some variable
// in affine relation with it, but we need to be careful that none are used.
In some case, we could still remove var when it has some variable
in affine relation with it, but we need to be careful that none are used.
In some case we could still remove var when it has some variable in affine relation with it but we need to be careful that none are used .
bool PresolveContext::VariableIsUniqueAndRemovable(int ref) const {
  return var_to_constraints[PositiveRef(ref)].size() == 1 &&
         affine_relations.ClassSize(PositiveRef(ref)) == 1 &&
         !enumerate_all_solutions;
}
bool PresolveContext :: VariableIsUniqueAndRemovable ( int ref ) const { return var_to_constraints [ PositiveRef ( ref ) ] . size ( ) == 1 && affine_relations . ClassSize ( PositiveRef ( ref ) ) == 1 && ! enumerate_all_solutions ; }
TODO(user): In some case, we could still remove var when it has some variable
in affine relation with it, but we need to be careful that none are used.
TODO ( user ) : In some case we could still remove var when it has some variable in affine relation with it but we need to be careful that none are used .