Macaulay2 Engine
Loading...
Searching...
No Matches

◆ promote()

bool PolyRingQuotient::promote ( const Ring * R,
const ring_elem f,
ring_elem & result ) const
virtual

Implements Ring.

Definition at line 136 of file polyquotient.cpp.

140{
141 const PolynomialRing *R1 = Rf->cast_to_PolynomialRing();
142 if (Rf == numerR_ || (R1 != nullptr && numerR_ == R1->getAmbientRing()))
143 {
144 result = copy(f);
146 return true;
147 }
148 return numerR_->PolyRing::promote(Rf, f, result);
149}
friend class PolynomialRing
virtual ring_elem copy(const ring_elem f) const
void normal_form(ring_elem &f) const
virtual const PolynomialRing * getAmbientRing() const
Definition polyring.hpp:260
const PolyRing * numerR_
Definition polyring.hpp:125
VALGRIND_MAKE_MEM_DEFINED & result(result)

References copy(), PolynomialRing::getAmbientRing(), normal_form(), PolynomialRing::numerR_, PolynomialRing, result(), and Ring::Ring().