Google OR-Tools v9.11
a fast and portable software suite for combinatorial optimization
|
Class to help detects clauses that differ on a single literal. More...
#include <presolve_util.h>
Public Member Functions | |
ClauseWithOneMissingHasher (absl::BitGenRef random) | |
void | RegisterClause (int c, absl::Span< const int > clause) |
We use the proto encoding of literals here. | |
uint64_t | HashWithout (int c, int ref) const |
uint64_t | HashOfNegatedLiterals (absl::Span< const int > literals) |
Returns a hash of the negation of all the given literals. | |
Class to help detects clauses that differ on a single literal.
Definition at line 294 of file presolve_util.h.
|
inlineexplicit |
Definition at line 296 of file presolve_util.h.
uint64_t operations_research::sat::ClauseWithOneMissingHasher::HashOfNegatedLiterals | ( | absl::Span< const int > | literals | ) |
Returns a hash of the negation of all the given literals.
We use random value for a literal hash.
Definition at line 674 of file presolve_util.cc.
|
inline |
Returns a hash of the clause with index c and literal ref removed. This assumes that ref was part of the clause. Work in O(1).
Definition at line 304 of file presolve_util.h.
void operations_research::sat::ClauseWithOneMissingHasher::RegisterClause | ( | int | c, |
absl::Span< const int > | clause ) |
We use the proto encoding of literals here.
We use random value for a literal hash.
Definition at line 658 of file presolve_util.cc.