Helper definitions and theorems for constructing linear arithmetic proofs.
Similar to Poly.denote
, but produces a denotation better for simp +arith
.
Remark: we used to convert Poly
back into Expr
to achieve that.
Equations
Instances For
Normalizes the given polynomial by fusing monomial and constants.
Equations
Instances For
Converts the given expression into a polynomial.
Equations
Instances For
Converts the given expression into a polynomial, and then normalizes it.
Equations
Instances For
Returns the ceiling-compatible remainder of the division a / b
.
This function ensures that the remainder is consistent with cdiv
, meaning:
a = b * cdiv a b + cmod a b
See theorem cdiv_add_cmod
. We also have
-b < cmod a b ≤ 0
Equations
Instances For
Returns the constant of the given linear polynomial.
Equations
Instances For
Returns true
if k
divides all coefficients and the constant of the given
linear polynomial.
Equations
Instances For
Returns true
if k
divides all coefficients of the given linear polynomial.