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

◆ is_equal()

bool PolyRing::is_equal ( const ring_elem f,
const ring_elem g ) const
virtual

Implements Ring.

Definition at line 493 of file poly.cpp.

494{
495 Nterm *a = f;
496 Nterm *b = g;
497 for (;; a = a->next, b = b->next)
498 {
499 if (a == nullptr)
500 {
501 if (b == nullptr) return true;
502 return false;
503 }
504 if (b == nullptr) return false;
505 if (!K_->is_equal(a->coeff, b->coeff)) return false;
506 if (nvars_ > 0 && (M_->compare(a->monom, b->monom) != 0)) return false;
507 }
508}
const Ring * K_
Definition polyring.hpp:123
const Monoid * M_
Definition polyring.hpp:124
Nterm * next
Definition ringelem.hpp:157
ring_elem coeff
Definition ringelem.hpp:158
int monom[1]
Definition ringelem.hpp:160

References Nterm::coeff, PolynomialRing::K_, PolynomialRing::M_, Nterm::monom, Nterm::next, and PolynomialRing::nvars_.

Referenced by syzygy().