[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-08-06 UTC."],[[["\u003cp\u003eThe \u003ccode\u003eDivisionPropagator\u003c/code\u003e class in C++ handles the constraint \u003ccode\u003enum / denom = div\u003c/code\u003e, propagating bounds with the assumption that \u003ccode\u003edenom\u003c/code\u003e is greater than 0.\u003c/p\u003e\n"],["\u003cp\u003eIt utilizes the \u003ccode\u003ePropagate\u003c/code\u003e and \u003ccode\u003eRegisterWith\u003c/code\u003e methods for constraint propagation and watcher registration.\u003c/p\u003e\n"],["\u003cp\u003eCurrently, it does not manage overflow situations and relies on \u003ccode\u003eAffineExpression\u003c/code\u003e for representing numerical expressions.\u003c/p\u003e\n"]]],["The `DivisionPropagator` class in C++ handles the propagation of division operations (num / denom = div) where the denominator is expected to be greater than 0. It propagates bounds, without special case handling, with an open issue to manage potential overflows. Key methods include: `DivisionPropagator` (constructor taking numerator, denominator, division result, and an integer trail), `Propagate` (to perform the propagation), and `RegisterWith` (to register with a literal watcher).\n"],null,["# DivisionPropagator\n\nC++ Reference: class DivisionPropagator\n=======================================\n\n\nNote: This documentation is automatically generated.\nPropagates num / denom = div. Basic version, we don't extract any special cases, and we only propagates the bounds. It expects denom to be \\\u003e 0. \n\nTODO(user): Deal with overflow.\n\n| Method ||\n|------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------|\n| [`DivisionPropagator`](https://github.com/google/or-tools/blob/v9.4/ortools/sat/integer_expr.h#L269) | \u003cbr /\u003e Arguments: `AffineExpression num, AffineExpression denom, AffineExpression div, IntegerTrail* integer_trail` \u003cbr /\u003e |\n| [`Propagate`](https://github.com/google/or-tools/blob/v9.4/ortools/sat/integer_expr.h#L272) | Return type: `bool ` \u003cbr /\u003e |\n| [`RegisterWith`](https://github.com/google/or-tools/blob/v9.4/ortools/sat/integer_expr.h#L273) | Return type: `void ` Arguments: `GenericLiteralWatcher* watcher` \u003cbr /\u003e |"]]