CGAL 4.7 - Modular Arithmetic: Concepts

\( \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.7 - Modular Arithmetic

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Classes
Concepts
Modular Arithmetic Reference

##

## Concepts

concept | Modularizable

An algebraic structure is called `Modularizable`, if there is a suitable mapping into an algebraic structure which is based on the type `CGAL::Residue`. For scalar types, e.g. Integers, this mapping is just the canonical homomorphism into the type `CGAL::Residue` with respect to the current prime. For compound types, e.g. Polynomials, the mapping is applied to the coefficients of the compound type. More...

concept | ModularTraits::ModularImage
| This `AdaptableUnaryFunction` computes the modular image of the given value with respect to a homomorphism \( \varphi\) from the `ModularTraits::Type` into the `ModularTraits::Residue_type`. More...
concept | ModularTraits::ModularImageRepresentative

This `AdaptableUnaryFunction` returns a representative in the original type of a given modular image. More precisely, it implements the right inverse of a proper restriction of the homomorphism \( \varphi\), which is implemented by `ModularTraits::ModularImage`. More...

concept | ModularTraits

A model of `ModularTraits` is associated to a specific `Type`. In case this associated type is a model of `Modularizable`, this is indicated by the Boolean tag `ModularTraits::Is_modularizable`. The mapping into the `Residue_type` is provided by the functor `ModularTraits::Modular_image`. More...