\begin{ccRefConcept}{Modularizable} \ccDefinition An algebraic structure is called \ccRefName, if there is a suitable mapping into an algebraic structure which is based on the type \ccc{CGAL::Residue}. For scalar types, e.g. Integers, this mapping is just the canonical homomorphism into the type \ccc{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. The mapping is provided via \ccc{CGAL::Modular_traits}, being a model of \ccc{ModularTraits}. Note that types representing rationals, or types which do have some notion of denominator, are not \ccc{Modularizable}. This is due to the fact that the denominator may be zero modulo the prime, which can not be represented. %\ccRefIdfierPage{CORE::BigRat}\\ %\ccRefIdfierPage{CGAL::Gmpq}\\ %\ccRefIdfierPage{leda::rational}\\ %\ccRefIdfierPage{mpq_class}\\ %\ccRefIdfierPage{CGAL::Quotient}\\ \ccHasModels \ccRefIdfierPage{int}\\ \ccRefIdfierPage{long}\\ \ccRefIdfierPage{CORE::BigInt}\\ \ccRefIdfierPage{CGAL::Gmpz}\\ \ccRefIdfierPage{leda::integer}\\ \ccRefIdfierPage{mpz_class}\\ The following types are \ccc{Modularizable} iff their template arguments are. \ccRefIdfierPage{CGAL::Lazy_exact_nt}\\ \ccRefIdfierPage{CGAL::Sqrt_extension}\\ \ccRefIdfierPage{CGAL::Polynomial}\\ \ccSeeAlso \ccRefIdfierPage{CGAL::Residue}\\ \ccRefIdfierPage{CGAL::Modular_traits}\\ \end{ccRefConcept}