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

◆ numerator()

RingElement * RingElement::numerator ( ) const

Definition at line 360 of file relem.cpp.

361{
362 if (R == globalQQ) return new RingElement(globalZZ, globalQQ->numerator(val));
363 const FractionField *K = R->cast_to_FractionField();
364 if (K != nullptr)
365 return new RingElement(K->get_ring(), K->numerator(val));
366
367 const LocalRing *L = R->cast_to_LocalRing();
368 if (L != nullptr)
369 return new RingElement(L->get_ring(), L->numerator(val));
370 ERROR("fraction field or local ring required");
371 return nullptr;
372}
const RingQQ * globalQQ
Definition aring.cpp:24
const Ring * get_ring() const
Definition frac.hpp:84
ring_elem numerator(ring_elem f) const
Definition frac.cpp:69
ring_elem numerator(ring_elem f) const
const PolyRing * get_ring() const
Definition localring.hpp:90
ring_elem numerator(ring_elem q) const
RingElement(const Ring *R, ring_elem f)
Definition relem.hpp:166
ring_elem val
Definition relem.hpp:69
const Ring * R
Definition relem.hpp:68
RingZZ * globalZZ
Definition relem.cpp:13
const int ERROR
Definition m2-mem.cpp:55

References ERROR, FractionField::get_ring(), LocalRing::get_ring(), globalQQ, globalZZ, FractionField::numerator(), LocalRing::numerator(), R, RingElement(), and val.

Referenced by IM2_RingElement_numerator().