case GE: // X >= C
return new PropGreaterOrEqualXC(var, cste);
case GT: // X > C --> X >= C + 1
return new PropGreaterOrEqualXC(var, cste + 1);
case LE: // X <= C
return new PropLessOrEqualXC(var, cste);
case LT: // X < C --> X <= C - 1
return new PropLessOrEqualXC(var, cste - 1);
default:
throw new SolverException("Incorrect formula; operator should be one of those:{=, !=, >=, >, <=, <}");
}
}