polynomial¶
fun polynomial::roots(Coeffs: list): list[complex]
Returns the roots of the single variable polynomial \(Coeff_{0} + Coeff_{1}x + Coeff_{2}x^{2} + ...\). If the degree is less than 5, the relevant formula is used to calculate the roots, otherwise the roots are estimated using an iterative process.
polynomial::roots([2, -3, 1]) :> [1, 2]
meth (A: number) * (B: polynomial::rational): polynomial::rational
Returns
A * B
.meth (A: number) * (B: polynomial): polynomial
Returns
A * B
.meth (A: number) + (B: polynomial::rational): polynomial::rational
Returns
A + B
.meth (A: number) + (B: polynomial): polynomial
Returns
A + B
.meth (A: number) - (B: polynomial::rational): polynomial::rational
Returns
A - B
.meth (A: number) - (B: polynomial): polynomial
Returns
A - B
.meth (A: number) / (B: polynomial::rational): polynomial::rational
Returns
A / B
.meth (A: number) / (B: polynomial): polynomial::rational
Returns
A / B
.type polynomial < function
A polynomial with numeric (real or complex) coefficients. Calling a polynomial with named arguments returns the result of substituting the named variables with the corresponding values.
meth polynomial(Var: string): polynomial
Returns the polynomial corresponding to the variable
Var
.let X := polynomial("x"), Y := polynomial("y") :> y let P := (X - Y) ^ 4 :> x⁴ - 4x³y + 6x²y² - 4xy³ + y⁴ P(y is 3) :> x⁴ - 12x³ + 54x² - 108x + 81
meth (A: polynomial) != (B: polynomial): polynomial
Returns
B
ifA != B
andnil
otherwise.meth (A: polynomial) * (B: number): polynomial
Returns
A * B
.meth (A: polynomial) * (B: polynomial::rational): polynomial::rational
Returns
A * B
.meth (A: polynomial) * (B: polynomial): polynomial
Returns
A * B
.meth (A: polynomial) + (B: number): polynomial
Returns
A + B
.meth (A: polynomial) + (B: polynomial::rational): polynomial::rational
Returns
A + B
.meth (A: polynomial) + (B: polynomial): polynomial
Returns
A + B
.meth (A: polynomial) - (B: number): polynomial
Returns
A - B
.meth (A: polynomial) - (B: polynomial::rational): polynomial::rational
Returns
A - B
.meth (A: polynomial) - (B: polynomial): polynomial
Returns
A - B
.meth (A: polynomial) / (B: number): polynomial
Returns
A / B
.meth (A: polynomial) / (B: polynomial::rational): polynomial::rational
Returns
A / B
.meth (A: polynomial) / (B: polynomial): polynomial::rational
Returns
A / B
.meth (A: polynomial) = (B: polynomial): polynomial
Returns
B
ifA = B
andnil
otherwise.meth (A: polynomial) ^ (B: integer): polynomial
Returns
A ^ B
.meth (Poly: polynomial):coeff(Var: string, Degree: integer): number | polynomial
Returns the coefficient of
Var ^ Degree
inPoly
.let X := polynomial("x") (X ^ 2 + (3 * X) + 2):coeff("x", 1) :> 3
meth (Poly: polynomial):d(Var: string): number | polynomial
Returns the derivative of
Poly
w.r.t.Var
.let X := polynomial("x") (X ^ 2 + (3 * X) + 2):d("x") :> 2x + 3
meth (Poly: polynomial):degree(Var: string): integer
Returns the highest degree of
Var
inPoly
.let X := polynomial("x") (X ^ 2 + (3 * X) + 2):degree("x") :> 2
meth (Arg₁: polynomial):red(Arg₂: polynomial)
TBD
meth (Arg₁: polynomial):spol(Arg₂: polynomial)
TBD
meth (Buffer: string::buffer):append(Poly: polynomial)
Appends a representation of
Poly
toBuffer
.type polynomial::rational
TBD
meth (A: polynomial::rational) * (B: number): polynomial::rational
Returns
A * B
.meth (A: polynomial::rational) * (B: polynomial::rational): polynomial::rational
Returns
A * B
.meth (A: polynomial::rational) * (B: polynomial): polynomial::rational
Returns
A * B
.meth (A: polynomial::rational) + (B: number): polynomial::rational
Returns
A + B
.meth (A: polynomial::rational) + (B: polynomial::rational): polynomial::rational
Returns
A + B
.meth (A: polynomial::rational) + (B: polynomial): polynomial::rational
Returns
A + B
.meth (A: polynomial::rational) - (B: number): polynomial::rational
Returns
A - B
.meth (A: polynomial::rational) - (B: polynomial::rational): polynomial::rational
Returns
A - B
.meth (A: polynomial::rational) - (B: polynomial): polynomial::rational
Returns
A - B
.meth (A: polynomial::rational) / (B: number): polynomial::rational
Returns
A / B
.meth (A: polynomial::rational) / (B: polynomial::rational): polynomial::rational
Returns
A / B
.meth (A: polynomial::rational) / (B: polynomial): polynomial::rational
Returns
A / B
.meth (Buffer: string::buffer):append(Poly: polynomial::rational)
Appends a representation of
Poly
toBuffer
.