OR-Tools  8.1
integer.h File Reference

Go to the source code of this file.

Classes

struct  IntegerLiteral
 
struct  AffineExpression
 
struct  IntegerDomains
 
struct  DebugSolution
 
class  IntegerEncoder
 
struct  IntegerEncoder::ValueLiteralPair
 
class  IntegerTrail
 
class  PropagatorInterface
 
class  RevIntRepository
 
class  RevIntegerValueRepository
 
class  GenericLiteralWatcher
 

Namespaces

 operations_research
 The vehicle routing library lets one model and solve generic vehicle routing problems ranging from the Traveling Salesman Problem to more complex problems such as the Capacitated Vehicle Routing Problem with Time Windows.
 
 operations_research::sat
 

Typedefs

using InlinedIntegerLiteralVector = absl::InlinedVector< IntegerLiteral, 2 >
 

Functions

 DEFINE_INT_TYPE (IntegerValue, int64)
 
constexpr IntegerValue kMaxIntegerValue (std::numeric_limits< IntegerValue::ValueType >::max() - 1)
 
constexpr IntegerValue kMinIntegerValue (-kMaxIntegerValue)
 
double ToDouble (IntegerValue value)
 
template<class IntType >
IntType IntTypeAbs (IntType t)
 
IntegerValue CeilRatio (IntegerValue dividend, IntegerValue positive_divisor)
 
IntegerValue FloorRatio (IntegerValue dividend, IntegerValue positive_divisor)
 
IntegerValue PositiveRemainder (IntegerValue dividend, IntegerValue positive_divisor)
 
bool AddProductTo (IntegerValue a, IntegerValue b, IntegerValue *result)
 
 DEFINE_INT_TYPE (IntegerVariable, int32)
 
const IntegerVariable kNoIntegerVariable (-1)
 
IntegerVariable NegationOf (IntegerVariable i)
 
bool VariableIsPositive (IntegerVariable i)
 
IntegerVariable PositiveVariable (IntegerVariable i)
 
 DEFINE_INT_TYPE (PositiveOnlyIndex, int32)
 
PositiveOnlyIndex GetPositiveOnlyIndex (IntegerVariable var)
 
std::vector< IntegerVariable > NegationOf (const std::vector< IntegerVariable > &vars)
 
std::ostream & operator<< (std::ostream &os, IntegerLiteral i_lit)
 
std::function< BooleanVariable(Model *)> NewBooleanVariable ()
 
std::function< IntegerVariable(Model *)> ConstantIntegerVariable (int64 value)
 
std::function< IntegerVariable(Model *)> NewIntegerVariable (int64 lb, int64 ub)
 
std::function< IntegerVariable(Model *)> NewIntegerVariable (const Domain &domain)
 
std::function< IntegerVariable(Model *)> NewIntegerVariableFromLiteral (Literal lit)
 
std::function< int64(const Model &)> LowerBound (IntegerVariable v)
 
std::function< int64(const Model &)> UpperBound (IntegerVariable v)
 
std::function< bool(const Model &)> IsFixed (IntegerVariable v)
 
std::function< int64(const Model &)> Value (IntegerVariable v)
 
std::function< void(Model *)> GreaterOrEqual (IntegerVariable v, int64 lb)
 
std::function< void(Model *)> LowerOrEqual (IntegerVariable v, int64 ub)
 
std::function< void(Model *)> Equality (IntegerVariable v, int64 value)
 
std::function< void(Model *)> Implication (const std::vector< Literal > &enforcement_literals, IntegerLiteral i)
 
std::function< void(Model *)> ImpliesInInterval (Literal in_interval, IntegerVariable v, int64 lb, int64 ub)
 
std::function< std::vector< IntegerEncoder::ValueLiteralPair >Model *)> FullyEncodeVariable (IntegerVariable var)
 
std::function< void(Model *)> ExcludeCurrentSolutionWithoutIgnoredVariableAndBacktrack ()