Polynomial#
- class Polynomial#
Polynomial function of decision variables.
A polynomial function of arbitrary degree with terms of the form \(c \cdot x_1^{a_1} \cdot x_2^{a_2} \cdots\) where \(x_i\) are decision variables and \(c\) is a coefficient.
Examples#
Create via DecisionVariable operations:
>>> x = DecisionVariable.integer(1) >>> y = DecisionVariable.integer(2) >>> p = x * x * y + x * y * y + 1 # Cubic polynomial
Note that
==,<=,>=create Constraint objects:>>> constraint = p == 0 # Returns Constraint
- __add__(rhs: int | float | DecisionVariable | Parameter | Linear | Quadratic | Polynomial) Polynomial#
- __copy__() Polynomial#
- __eq__(other: ToFunction) Constraint#
Create an equality constraint: self == other → Constraint with EqualToZero
- __ge__(other: ToFunction) Constraint#
Create a greater-than-or-equal constraint: self >= other → Constraint
- __iadd__(rhs: Polynomial) Polynomial#
- __le__(other: ToFunction) Constraint#
Create a less-than-or-equal constraint: self <= other → Constraint
- __mul__(rhs: int | float | DecisionVariable | Parameter | Linear | Quadratic | Polynomial) Polynomial#
- __neg__() Polynomial#
Negation operator
- __radd__(lhs: int | float | DecisionVariable | Parameter | Linear | Quadratic | Polynomial) Polynomial#
- __repr__() str#
- __rmul__(lhs: int | float | DecisionVariable | Parameter | Linear | Quadratic | Polynomial) Polynomial#
- __rsub__(lhs: int | float | DecisionVariable | Parameter | Linear | Quadratic | Polynomial) Polynomial#
- __sub__(rhs: int | float | DecisionVariable | Parameter | Linear | Quadratic | Polynomial) Polynomial#
- add_assign(rhs: Polynomial) None#
- add_linear(linear: Linear) Polynomial#
- add_quadratic(quadratic: Quadratic) Polynomial#
- add_scalar(scalar: float) Polynomial#
- almost_equal(other: Polynomial, atol: float = 1e-06) bool#
- from_bytes(bytes: bytes) Polynomial#
- mul_linear(linear: Linear) Polynomial#
- mul_quadratic(quadratic: Quadratic) Polynomial#
- mul_scalar(scalar: float) Polynomial#
- random(rng: Rng, num_terms: int = 5, max_degree: int = 3, max_id: int = 10) Polynomial#
- terms() dict#
- to_bytes() bytes#