FiniteFieldRationalPolynomial
FiniteFieldRationalPolynomial
FiniteFieldRationalPolynomial()A Symbolica rational polynomial.
Methods
| Name | Description |
|---|---|
__add__ |
Add two rational polynomials self and rhs, returning the result. |
__copy__ |
Copy the rational polynomial. |
__eq__ |
Check if two polynomials are equal. |
__mul__ |
Multiply two rational polynomials self and rhs, returning the result. |
__ne__ |
Check if two polynomials are not equal. |
__neg__ |
Negate the rational polynomial. |
__new__ |
Create a new rational polynomial from a numerator and denominator polynomial. |
__str__ |
Print the rational polynomial in a human-readable format. |
__sub__ |
Subtract rational polynomials rhs from self, returning the result. |
__truediv__ |
Divide the rational polynomial self by rhs if possible, returning the result. |
apart |
Compute the partial fraction decomposition in x |
derivative |
Take a derivative in x. |
gcd |
Compute the greatest common divisor (GCD) of two rational polynomials. |
get_modulus |
Get the modulus of the finite field. |
get_variables |
Get the list of variables in the internal ordering of the polynomial. |
parse |
Parse a rational polynomial from a string |
to_latex |
Convert the rational polynomial into a LaTeX string. |
__add__
FiniteFieldRationalPolynomial.__add__(rhs: FiniteFieldRationalPolynomial) -> FiniteFieldRationalPolynomialAdd two rational polynomials self and rhs, returning the result.
__copy__
FiniteFieldRationalPolynomial.__copy__() -> FiniteFieldRationalPolynomialCopy the rational polynomial.
__eq__
FiniteFieldRationalPolynomial.__eq__(rhs: Polynomial | int) -> boolCheck if two polynomials are equal.
__mul__
FiniteFieldRationalPolynomial.__mul__(rhs: FiniteFieldRationalPolynomial) -> FiniteFieldRationalPolynomialMultiply two rational polynomials self and rhs, returning the result.
__ne__
FiniteFieldRationalPolynomial.__ne__(rhs: Polynomial | int) -> boolCheck if two polynomials are not equal.
__neg__
FiniteFieldRationalPolynomial.__neg__() -> FiniteFieldRationalPolynomialNegate the rational polynomial.
__new__
FiniteFieldRationalPolynomial.__new__(
num: FiniteFieldPolynomial,
den: FiniteFieldPolynomial,
) -> FiniteFieldRationalPolynomialCreate a new rational polynomial from a numerator and denominator polynomial.
__str__
FiniteFieldRationalPolynomial.__str__() -> strPrint the rational polynomial in a human-readable format.
__sub__
FiniteFieldRationalPolynomial.__sub__(rhs: FiniteFieldRationalPolynomial) -> FiniteFieldRationalPolynomialSubtract rational polynomials rhs from self, returning the result.
__truediv__
FiniteFieldRationalPolynomial.__truediv__(rhs: FiniteFieldRationalPolynomial) -> FiniteFieldRationalPolynomialDivide the rational polynomial self by rhs if possible, returning the result.
apart
FiniteFieldRationalPolynomial.apart(x: Optional[Expression] = None) -> List[FiniteFieldRationalPolynomial]Compute the partial fraction decomposition in x.
If None is passed, the expression will be decomposed in all variables which involves a potentially expensive Groebner basis computation.
Examples
from symbolica import *
x = S('x')
p = E('1/((x+y)*(x^2+x*y+1)(x+1))').to_rational_polynomial()
for pp in p.apart(x):
print(pp)derivative
FiniteFieldRationalPolynomial.derivative(x: Expression) -> RationalPolynomialTake a derivative in x.
Examples
from symbolica import *
x = S('x')
p = E('1/((x+y)*(x^2+x*y+1)(x+1))').to_rational_polynomial()
print(p.derivative(x))gcd
FiniteFieldRationalPolynomial.gcd(rhs: FiniteFieldRationalPolynomial) -> FiniteFieldRationalPolynomialCompute the greatest common divisor (GCD) of two rational polynomials.
get_modulus
FiniteFieldRationalPolynomial.get_modulus() -> intGet the modulus of the finite field.
get_variables
FiniteFieldRationalPolynomial.get_variables() -> Sequence[Expression]Get the list of variables in the internal ordering of the polynomial.
parse
FiniteFieldRationalPolynomial.parse(
input: str,
vars: Sequence[str],
prime: int,
default_namespace: str | None = None,
) -> FiniteFieldRationalPolynomialParse a rational polynomial from a string. The list of all the variables must be provided.
If this requirements is too strict, use Expression.to_polynomial() instead.
Examples
e = FiniteFieldRationalPolynomial.parse('3*x^2+y+y*4', ['x', 'y'], 17)Raises
ValueError: If the input is not a valid Symbolica rational polynomial.
to_latex
FiniteFieldRationalPolynomial.to_latex() -> strConvert the rational polynomial into a LaTeX string.