DenseUPolyRing is an abstract class (inheriting from PolyRing)
representing rings of univariate polynomials written with
*dense representation*:
a polynomial is viewed abstractly as a vector of coefficients
(belonging to the coefficient ring). Indices are long.
All meaningful coefficients are in the positions 0 to deg.
Between deg+1 and size-1 the coefficients are guaranteed to be valid
and valued 0.
Zero polynomial is represented with myDegPlus1 = 0.
See RingElem DenseUPolyRing for operations on its elements.
NewPolyRing_DUP(CoeffRing) -- default indet name is x
NewPolyRing_DUP(CoeffRing, IndetName)
NewPolyRing_DUP(CoeffRing, IndetName, MinCapacity) --
allows to specify the minimum capacity for the coefficient
vector (in order to minimize reallocations)
DenseUPolyRing(R) -- sort of downcast the ring R to a dense univariate poly ring;
will throw an exception of type CoCoAError with code ERR::NotDenseUPolyRing if needed.
Let R be an object of type ring.
IsDenseUPolyRing(R) -- true if R is actually DenseUPolyRing
DenseUPolyRingPtr(R) -- get pointer to a DenseUPolyRing (for calling mem fns);
will throw an exception of type CoCoAError with code ERR::NotDenseUPolyRing if needed.
See PolyRing operations.
No maintainer doc!