Google OR-Tools v9.15
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
gate_utils.h File Reference
#include <cstdint>
#include "absl/log/check.h"
#include "absl/types/span.h"
#include "ortools/sat/sat_base.h"

Go to the source code of this file.

Namespaces

namespace  operations_research
 OR-Tools root namespace.
namespace  operations_research::sat

Typedefs

using operations_research::sat::SmallBitset = uint32_t

Functions

SmallBitset operations_research::sat::GetNumBitsAtOne (int num_bits)
template<typename VarOrLiteral>
void operations_research::sat::CanonicalizeTruthTable (absl::Span< VarOrLiteral > key, SmallBitset &bitmask)
void operations_research::sat::FillKeyAndBitmask (absl::Span< const Literal > clause, absl::Span< BooleanVariable > key, SmallBitset &bitmask)
bool operations_research::sat::IsFunction (int i, int num_bits, SmallBitset truth_table)
int operations_research::sat::AddHoleAtPosition (int i, int bitset)
int operations_research::sat::RemoveFixedInput (int i, bool at_true, absl::Span< LiteralIndex > inputs, int &int_function_values)
int operations_research::sat::CanonicalizeFunctionTruthTable (LiteralIndex &target, absl::Span< LiteralIndex > inputs, int &int_function_values)