#include <algorithm>
#include <cstdint>
#include <limits>
#include <memory>
#include <ostream>
#include <string>
#include <vector>
#include "absl/container/flat_hash_map.h"
#include "absl/log/check.h"
#include "absl/strings/string_view.h"
#include "absl/types/span.h"
#include "ortools/base/logging.h"
#include "ortools/base/strong_vector.h"
#include "ortools/base/types.h"
#include "ortools/sat/model.h"
#include "ortools/sat/sat_base.h"
#include "ortools/sat/sat_parameters.pb.h"
#include "ortools/util/bitset.h"
#include "ortools/util/stats.h"
#include "ortools/util/strong_integers.h"
Go to the source code of this file.
|
| operations_research::sat::DEFINE_STRONG_INT64_TYPE (Coefficient) |
|
const Coefficient | operations_research::sat::kCoefficientMax (std::numeric_limits< Coefficient::ValueType >::max()) |
|
template<typename H > |
H | operations_research::sat::AbslHashValue (H h, const LiteralWithCoeff &term) |
|
std::ostream & | operations_research::sat::operator<< (std::ostream &os, LiteralWithCoeff term) |
|
bool | operations_research::sat::ComputeBooleanLinearExpressionCanonicalForm (std::vector< LiteralWithCoeff > *cst, Coefficient *bound_shift, Coefficient *max_value) |
|
bool | operations_research::sat::ApplyLiteralMapping (const util_intops::StrongVector< LiteralIndex, LiteralIndex > &mapping, std::vector< LiteralWithCoeff > *cst, Coefficient *bound_shift, Coefficient *max_value) |
|
Coefficient | operations_research::sat::ComputeCanonicalRhs (Coefficient upper_bound, Coefficient bound_shift, Coefficient max_value) |
|
Coefficient | operations_research::sat::ComputeNegatedCanonicalRhs (Coefficient lower_bound, Coefficient bound_shift, Coefficient max_value) |
|
bool | operations_research::sat::BooleanLinearExpressionIsCanonical (absl::Span< const LiteralWithCoeff > cst) |
| Returns true iff the Boolean linear expression is in canonical form.
|
|
void | operations_research::sat::SimplifyCanonicalBooleanLinearConstraint (std::vector< LiteralWithCoeff > *cst, Coefficient *rhs) |
|