The function integral_division (a.k.a. exact division or division without remainder) maps ring elements (x,y) to ring element z such that x = yz if such a z exists (i.e. if x is divisible by y). Otherwise the effect of invoking this operation is undefined. Since the ring represented is an integral domain, z is uniquely defined if it exists.

In case the argument types NT1 and NT2 differ, the result_type is determined via Coercion_traits.
Thus, the result_type is well defined if NT1 and NT2 are a model of ExplicitInteroperable.
The actual integral_division is performed with the semantic of that type.

The function is guaranteed to be well defined in case result_type is a model of the IntegralDomain concept.

#include <CGAL/number_utils.h>

template <class NT1, class NT2>
result_type integral_division ( NT1 x, NT2 y)

See Also