Equations
Instances For
Given an equation c₁ containing the monomial a*x, and a disequality constraint c₂
containing the monomial b*x, eliminate x by applying substitution.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Selects the variable in the given linear polynomial whose coefficient has the smallest absolute value.
Equations
- (Int.Linear.Poly.num k).pickVarToElim? = none
- (Int.Linear.Poly.add k' x' p_2).pickVarToElim? = some (Int.Linear.Poly.pickVarToElim?.go✝ k' x' p_2)
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Similar to updateOccs, but does not assume first variable is ps "owner".
Recall that when eliminating equalities we do not necessarily eliminate the
maximal variable, but the one with unit coefficient.
Remark: we keep occurrences for equations in elimEqs because we want to maintain them
in solved form. Consider the following scenario:
1- Asserted a + 2*b + 1 = 0, and eliminated a
2- Asserted b + 1 = 0, and eliminated b.
At step 2, we want to substitute b at a + 2*b + 1 to ensure cutsat knows
a is forced to be equal to a constant value. This is relevant for linearizing
nonlinear terms.
Remark: x is the variable that was eliminated using p.
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Internalizes an integer (and Nat) expression. Here are the different cases that are handled.
a + bwhenparent?is not+,≤, or∣k * awhenkis a numeral andparent?is not+,*,≤,∣- numerals when
parent?is not+,*,≤,∣. Recall that we must internalize numerals to make sure we can propagate equalities back to the congruence closure module. Example: we havef 5,f x,x - y = 3,y = 2.
Equations
- One or more equations did not get rendered due to their size.