Polynomial

Polynomial A univariate polynomial class and EuclideanRing extension trait for arithmetic operations. Polynomials can be instantiated using any type C for which a Ring[C] and Eq[C] are in scope, with exponents given by Int values. Some operations require more precise algebraic structures, such as GCDRing, EuclideanRing or Field to be in scope.

Companion
class

Value members

Concrete methods

def apply[@specialized(Double) C : ClassTag](data: Map[Int, C]): PolySparse[C]
def apply[@specialized(Double) C : ClassTag](terms: IterableOnce[Term[C]]): PolySparse[C]
def apply[@specialized(Double) C : ClassTag](c: C, e: Int): PolySparse[C]
def apply(s: String): Polynomial[Rational]
def constant[@specialized(Double) C : ClassTag](c: C): Polynomial[C]
def cubic[@specialized(Double) C : ClassTag](c: C): Polynomial[C]
def cubic[@specialized(Double) C : ClassTag](c3: C, c2: C, c1: C, c0: C): Polynomial[C]
def dense[@specialized(Double) C : ClassTag](coeffs: Array[C]): PolyDense[C]
def interpolate[C : ClassTag](points: (C, C)*): Polynomial[C]
def linear[@specialized(Double) C : ClassTag](c: C): Polynomial[C]
def linear[@specialized(Double) C : ClassTag](c1: C, c0: C): Polynomial[C]
def one[@specialized(Double) C : ClassTag]: Polynomial[C]
def quadratic[@specialized(Double) C : ClassTag](c1: C, c0: C): Polynomial[C]
def quadratic[@specialized(Double) C : ClassTag](c: C): Polynomial[C]
def quadratic[@specialized(Double) C : ClassTag](c2: C, c1: C, c0: C): Polynomial[C]
def sparse[@specialized(Double) C : ClassTag](data: Map[Int, C]): PolySparse[C]
def twox[@specialized(Double) C : ClassTag]: Polynomial[C]
def x[@specialized(Double) C : ClassTag]: Polynomial[C]
def zero[@specialized(Double) C : ClassTag]: Polynomial[C]

Implicits

Inherited implicits

implicit
def eq[@specialized(Double) C : Eq]: PolynomialEq[C]
Inherited from
PolynomialInstances0
implicit
def overCRing[@specialized(Double) C : Eq]: PolynomialOverCRing[C]
Inherited from
PolynomialInstances3
implicit
def overField[@specialized(Double) C : Eq]: PolynomialOverField[C]
Inherited from
PolynomialInstances4
implicit
def overRig[@specialized(Double) C : Eq]: PolynomialOverRig[C]
Inherited from
PolynomialInstances1
implicit
def overRing[@specialized(Double) C : Eq]: PolynomialOverRing[C]
Inherited from
PolynomialInstances2
implicit
def overRng[@specialized(Double) C : Eq]: PolynomialOverRng[C]
Inherited from
PolynomialInstances1
implicit
def overSemiring[@specialized(Double) C : Eq]: PolynomialOverSemiring[C]
Inherited from
PolynomialInstances0