An abstract class defining the interface of a GCD domain.
Definition: BPASGCDDomain.hpp:14
virtual Derived gcd(const Derived &other) const =0
Get GCD of *this and other.
virtual Factors< Derived > squareFree() const =0
Compute squarefree factorization of *this.
An abstract class defining the interface of an integral domain.
Definition: BPASIntegralDomain.hpp:14