Basic Polynomial Algebra Subprograms (BPAS)
v. 1.791
|
An abstract class defining the interface of a polynomial over an arbitrary BPASRing. More...
#include <BPASPolynomial.hpp>
An abstract class defining the interface of a polynomial over an arbitrary BPASRing.
The actual interface of this class depends on the particular specialization of the Ring template parameter but will always follow that of BPASBasePolynomial at least. In particular, a cascade of type checks are performed on the Ring to determine if it is a GCD domain, integral domain, etc., and from this determine the interface for this polynomial.
Derived should be the conrete class being implemented, following the Curiously Recurring Template Pattern.
Users should inherit from this class (or BPASUnivariatePolynomial, or BPASMultivariatePolynomil) to get this automatic build-up of the interface based on the true type of Ring,