Basic Polynomial Algebra Subprograms (BPAS)  v. 1.791
BPASPolynomial< Ring, Derived > Class Template Reference

An abstract class defining the interface of a polynomial over an arbitrary BPASRing. More...

#include <BPASPolynomial.hpp>

Simplified semantic inheritance diagram for BPASPolynomial< Ring, Derived >:
- Full inheritance diagram for BPASPolynomial< Ring, Derived >:
[legend]

Detailed Description

template<class Ring, class Derived>
class BPASPolynomial< Ring, Derived >

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,


The documentation for this class was generated from the following file: