![]() |
Google OR-Tools v9.14
a fast and portable software suite for combinatorial optimization
|
Propagates x * x = s.
Definition at line 411 of file integer_expr.h.
#include <integer_expr.h>
Public Member Functions | |
| SquarePropagator (AffineExpression x, AffineExpression s, IntegerTrail *integer_trail) | |
| SquarePropagator (const SquarePropagator &)=delete | |
| This type is neither copyable nor movable. | |
| SquarePropagator & | operator= (const SquarePropagator &)=delete |
| bool | Propagate () final |
| void | RegisterWith (GenericLiteralWatcher *watcher) |
| Public Member Functions inherited from operations_research::sat::PropagatorInterface | |
| PropagatorInterface ()=default | |
| virtual | ~PropagatorInterface ()=default |
| virtual bool | IncrementalPropagate (const std::vector< int > &) |
| operations_research::sat::SquarePropagator::SquarePropagator | ( | AffineExpression | x, |
| AffineExpression | s, | ||
| IntegerTrail * | integer_trail ) |
Definition at line 1163 of file integer_expr.cc.
|
delete |
This type is neither copyable nor movable.
|
delete |
|
finalvirtual |
Propagation from x to s: s in [min_x * min_x, max_x * max_x]. Propagation from s to x: x in [ceil(sqrt(min_s)), floor(sqrt(max_s))].
Implements operations_research::sat::PropagatorInterface.
Definition at line 1171 of file integer_expr.cc.
| void operations_research::sat::SquarePropagator::RegisterWith | ( | GenericLiteralWatcher * | watcher | ) |
Definition at line 1209 of file integer_expr.cc.