Google OR-Tools v9.15
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
operations_research::sat::ActivityBoundHelper Class Reference

Detailed Description

Definition at line 174 of file presolve_util.h.

#include <presolve_util.h>

Public Member Functions

 ActivityBoundHelper ()=default
void ClearAtMostOnes ()
void AddAtMostOne (absl::Span< const int > amo)
void AddAllAtMostOnes (const CpModelProto &proto)
int64_t ComputeMaxActivity (absl::Span< const std::pair< int, int64_t > > terms, std::vector< std::array< int64_t, 2 > > *conditional=nullptr)
int64_t ComputeMinActivity (absl::Span< const std::pair< int, int64_t > > terms, std::vector< std::array< int64_t, 2 > > *conditional=nullptr)
bool PresolveEnforcement (absl::Span< const int > refs, ConstraintProto *ct, absl::flat_hash_set< int > *literals_at_true)
int RemoveEnforcementThatMakesConstraintTrivial (absl::Span< const std::pair< int, int64_t > > boolean_terms, const Domain &other_terms, const Domain &rhs, ConstraintProto *ct)
std::vector< absl::Span< const int > > PartitionLiteralsIntoAmo (absl::Span< const int > literals)
bool IsAmo (absl::Span< const int > literals)
int NumAmoForVariable (int var) const

Constructor & Destructor Documentation

◆ ActivityBoundHelper()

operations_research::sat::ActivityBoundHelper::ActivityBoundHelper ( )
default

Member Function Documentation

◆ AddAllAtMostOnes()

void operations_research::sat::ActivityBoundHelper::AddAllAtMostOnes ( const CpModelProto & proto)

Definition at line 261 of file presolve_util.cc.

◆ AddAtMostOne()

void operations_research::sat::ActivityBoundHelper::AddAtMostOne ( absl::Span< const int > amo)

Definition at line 240 of file presolve_util.cc.

◆ ClearAtMostOnes()

void operations_research::sat::ActivityBoundHelper::ClearAtMostOnes ( )

Definition at line 235 of file presolve_util.cc.

◆ ComputeMaxActivity()

int64_t operations_research::sat::ActivityBoundHelper::ComputeMaxActivity ( absl::Span< const std::pair< int, int64_t > > terms,
std::vector< std::array< int64_t, 2 > > * conditional = nullptr )
inline

Definition at line 205 of file presolve_util.h.

◆ ComputeMinActivity()

int64_t operations_research::sat::ActivityBoundHelper::ComputeMinActivity ( absl::Span< const std::pair< int, int64_t > > terms,
std::vector< std::array< int64_t, 2 > > * conditional = nullptr )
inline

Definition at line 210 of file presolve_util.h.

◆ IsAmo()

bool operations_research::sat::ActivityBoundHelper::IsAmo ( absl::Span< const int > literals)

Definition at line 446 of file presolve_util.cc.

◆ NumAmoForVariable()

int operations_research::sat::ActivityBoundHelper::NumAmoForVariable ( int var) const
inline

Definition at line 245 of file presolve_util.h.

◆ PartitionLiteralsIntoAmo()

std::vector< absl::Span< const int > > operations_research::sat::ActivityBoundHelper::PartitionLiteralsIntoAmo ( absl::Span< const int > literals)

Definition at line 393 of file presolve_util.cc.

◆ PresolveEnforcement()

bool operations_research::sat::ActivityBoundHelper::PresolveEnforcement ( absl::Span< const int > refs,
ConstraintProto * ct,
absl::flat_hash_set< int > * literals_at_true )

Definition at line 518 of file presolve_util.cc.

◆ RemoveEnforcementThatMakesConstraintTrivial()

int operations_research::sat::ActivityBoundHelper::RemoveEnforcementThatMakesConstraintTrivial ( absl::Span< const std::pair< int, int64_t > > boolean_terms,
const Domain & other_terms,
const Domain & rhs,
ConstraintProto * ct )

Definition at line 577 of file presolve_util.cc.


The documentation for this class was generated from the following files: