\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)

CGAL 4.8 - Algebraic Foundations

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
List of all members
AlgebraicStructureTraits_::Divides Concept Reference
Concepts

## Definition

`AdaptableBinaryFunction`, returns true if the first argument divides the second argument.

Integral division (a.k.a. exact division or division without remainder) maps ring elements \( (n,d)\) to ring element \( c\) such that \( n = dc\) if such a \( c\) exists. In this case it is said that \( d\) divides \( n\).

This functor is required to provide two operators. The first operator takes two arguments and returns true if the first argument divides the second argument. The second operator returns \( c\) via the additional third argument.

Refines:
  `AdaptableBinaryFunction`

See Also
  `AlgebraicStructureTraits`
  `AlgebraicStructureTraits_::IntegralDivision`

## Types
typedef unspecified_type | result_type
| Is `AlgebraicStructureTraits::Boolean`.
typedef unspecified_type | first_argument
| Is `AlgebraicStructureTraits::Type`.
typedef unspecified_type | second_argument
| Is `AlgebraicStructureTraits::Type`.

## Operations
result_type | operator() (first_argument_type d, second_argument_type n)
| Computes whether \( d\) divides \( n\).
result_type | operator() (first_argument_type d, second_argument_type n, AlgebraicStructureTraits::Type &c)
| Computes whether \( d\) divides \( n\). More...

## Member Function Documentation

result_type AlgebraicStructureTraits_::Divides::operator() | ( | first_argument_type | d,
|  | second_argument_type | n,
|  | AlgebraicStructureTraits::Type & | c
| ) |  |

Computes whether \( d\) divides \( n\).

Moreover it computes \( c\) if \( d\) divides \( n\), otherwise the value of \( c\) is undefined.