Basic Polynomial Algebra Subprograms (BPAS)
v. 1.548

An abstract class defining the interface of a multivariate polynomial over an arbitrary BPASRing. More...
#include <polynomial.h>
Public Member Functions  
virtual void  differentiate (const Symbol &)=0 
virtual void  differentiate (const Symbol &, int)=0 
virtual Derived  derivative (const Symbol &) const =0 
virtual Derived  derivative (const Symbol &, int) const =0 
virtual Derived  evaluate (int, const Symbol *, const Ring *) const =0 
virtual Derived  evaluate (const std::vector< Symbol > &, const std::vector< Ring > &) const =0 
virtual int  numberOfVariables () const =0 
virtual int  numberOfRingVariables () const =0 
virtual Integer  degree (const Symbol &v) const =0 
virtual Ring  coefficient (int, const int *) const =0 
virtual Ring  coefficient (const std::vector< int > &v) const =0 
virtual void  setCoefficient (int, const int *, const Ring &r)=0 
virtual void  setCoefficient (const std::vector< int > &v, const Ring &r)=0 
virtual void  setRingVariables (const std::vector< Symbol > &xs)=0 
virtual std::vector< Symbol >  ringVariables () const =0 
virtual std::vector< Symbol >  variables () const =0 
An abstract class defining the interface of a multivariate polynomial over an arbitrary BPASRing.