![]() |
Google OR-Tools v9.15
a fast and portable software suite for combinatorial optimization
|
#include <algorithm>#include <cmath>#include <cstddef>#include <cstdint>#include <deque>#include <iterator>#include <limits>#include <memory>#include <string>#include <type_traits>#include <utility>#include <vector>#include "absl/base/attributes.h"#include "absl/container/btree_set.h"#include "absl/log/check.h"#include "absl/log/log_streamer.h"#include "absl/numeric/int128.h"#include "absl/random/bit_gen_ref.h"#include "absl/random/random.h"#include "absl/strings/str_cat.h"#include "absl/strings/string_view.h"#include "absl/types/span.h"#include "ortools/base/logging.h"#include "ortools/sat/model.h"#include "ortools/sat/sat_base.h"#include "ortools/sat/sat_parameters.pb.h"#include "ortools/util/random_engine.h"#include "ortools/util/saturated_arithmetic.h"#include "ortools/util/sorted_interval_list.h"#include "ortools/util/time_limit.h"Go to the source code of this file.
Namespaces | |
| namespace | operations_research |
| OR-Tools root namespace. | |
| namespace | operations_research::sat |
Functions | |
| template<class Container, class Pred> | |
| void | operations_research::sat::OpenSourceEraseIf (Container &c, Pred pred) |
| std::string | operations_research::sat::FormatName (absl::string_view name) |
| std::string | operations_research::sat::FormatTable (std::vector< std::vector< std::string > > &table, int spacing) |
| int64_t | operations_research::sat::ModularInverse (int64_t x, int64_t m) |
| int64_t | operations_research::sat::PositiveMod (int64_t x, int64_t m) |
| int64_t | operations_research::sat::ProductWithModularInverse (int64_t coeff, int64_t mod, int64_t rhs) |
| bool | operations_research::sat::SolveDiophantineEquationOfSizeTwo (int64_t &a, int64_t &b, int64_t &cte, int64_t &x0, int64_t &y0) |
| bool | operations_research::sat::DiophantineEquationOfSizeTwoHasSolutionInDomain (const Domain &x, int64_t a, const Domain &y, int64_t b, int64_t cte) |
| int64_t | operations_research::sat::FloorSquareRoot (int64_t a) |
| int64_t | operations_research::sat::CeilSquareRoot (int64_t a) |
| int64_t | operations_research::sat::SafeDoubleToInt64 (double value) |
| int64_t | operations_research::sat::ClosestMultiple (int64_t value, int64_t base) |
| std::vector< absl::Span< int > > | operations_research::sat::AtMostOneDecomposition (const std::vector< std::vector< int > > &graph, absl::BitGenRef random, std::vector< int > *buffer) |
| bool | operations_research::sat::LinearInequalityCanBeReducedWithClosestMultiple (int64_t base, absl::Span< const int64_t > coeffs, absl::Span< const int64_t > lbs, absl::Span< const int64_t > ubs, int64_t rhs, int64_t *new_rhs) |
| void | operations_research::sat::RandomizeDecisionHeuristic (absl::BitGenRef random, SatParameters *parameters) |
| int | operations_research::sat::WeightedPick (absl::Span< const double > input, absl::BitGenRef random) |
| int | operations_research::sat::MoveOneUnprocessedLiteralLast (const absl::btree_set< LiteralIndex > &processed, int relevant_prefix_size, std::vector< Literal > *literals) |
| std::vector< int > | operations_research::sat::FindMostDiverseSubset (int k, int n, absl::Span< const int64_t > distances, std::vector< int64_t > &buffer, int always_pick_mask) |
| std::vector< std::pair< int, int > > | operations_research::sat::HeuristicallySplitLongLinear (absl::Span< const int64_t > coeffs) |
| bool | operations_research::sat::IsStrictlyIncluded (Bitset64< LiteralIndex >::ConstView in_subset, int subset_size, absl::Span< const Literal > superset) |
| bool | operations_research::sat::IsNegatableInt64 (absl::int128 x) |