const Integer& AbstractEuclideanDomain::Mod(const Element &a, const Element &b) const { Element q; DivisionAlgorithm(result, q, a, b); return result; }
template <class T> T AbstractEuclideanDomain<T>::Mod(const Element &a, const Element &b) const { Element r, q; DivisionAlgorithm(r, q, a, b); return r; }
template <class T> const T& AbstractEuclideanDomain<T>::Mod(const Element &a, const Element &b) const { Element q; DivisionAlgorithm(result, q, a, b); return result; }