639{
640 try {
642 if (P != nullptr)
643 {
645 }
647 if (S != nullptr)
648 {
650 }
651
653 if (ncP != nullptr)
654 {
656 }
657
659 if (ncQ != nullptr)
660 {
662 }
663 ERROR(
"expected a polynomial");
664 return nullptr;
665 }
668 return nullptr;
669 }
670}
virtual engine_RawArrayPairOrNull list_form(const Ring *coeffR, const ring_elem f) const
Concrete Ring wrapper around an owned FreeAlgebra (no quotient).
const M2FreeAlgebra & m2FreeAlgebra() const
Concrete Ring wrapper around an owned FreeAlgebraQuotient (the quotient counterpart of M2FreeAlgebra)...
virtual engine_RawArrayPairOrNull list_form(const Ring *coeffR, const ring_elem f) const =0
Abstract base for the engine's polynomial-ring hierarchy.
virtual const SchurRing2 * cast_to_SchurRing2() const
virtual const PolynomialRing * cast_to_PolynomialRing() const
ring_elem get_value() const
const Ring * get_ring() const
engine_RawArrayPairOrNull list_form(const Ring *coeffR, const ring_elem f) const
Refactored Schur (symmetric-function) ring whose elements are schur_poly sums of partitions over a co...