 CGAL 4.12.1 - Algebraic Foundations

## Concepts

conceptAlgebraicStructureTraits_::Div
AdaptableBinaryFunction computes the integral quotient of division with remainder. More...

conceptAlgebraicStructureTraits_::Divides
AdaptableBinaryFunction, returns true if the first argument divides the second argument. More...

conceptAlgebraicStructureTraits_::DivMod
AdaptableFunctor computes both integral quotient and remainder of division with remainder. The quotient $$q$$ and remainder $$r$$ are computed such that $$x = q*y + r$$ and $$|r| < |y|$$ with respect to the proper integer norm of the represented ring. For integers this norm is the absolute value. For univariate polynomials this norm is the degree. In particular, $$r$$ is chosen to be $$0$$ if possible. Moreover, we require $$q$$ to be minimized with respect to the proper integer norm. More...

conceptAlgebraicStructureTraits_::Gcd
AdaptableBinaryFunction providing the gcd. More...

conceptAlgebraicStructureTraits_::IntegralDivision
AdaptableBinaryFunction providing an integral division. More...

conceptAlgebraicStructureTraits_::Inverse
AdaptableUnaryFunction providing the inverse element with respect to multiplication of a Field. More...

conceptAlgebraicStructureTraits_::IsOne
AdaptableUnaryFunction, returns true in case the argument is the one of the ring. More...

conceptAlgebraicStructureTraits_::IsSquare
AdaptableBinaryFunction that computes whether the first argument is a square. If the first argument is a square the second argument, which is taken by reference, contains the square root. Otherwise, the content of the second argument is undefined. More...

conceptAlgebraicStructureTraits_::IsZero
AdaptableUnaryFunction, returns true in case the argument is the zero element of the ring. More...

conceptAlgebraicStructureTraits_::KthRoot
AdaptableBinaryFunction providing the k-th root. More...

conceptAlgebraicStructureTraits_::Mod
AdaptableBinaryFunction computes the remainder of division with remainder. More...

conceptAlgebraicStructureTraits_::RootOf
AdaptableFunctor computes a real root of a square-free univariate polynomial. More...

conceptAlgebraicStructureTraits_::Simplify
This AdaptableUnaryFunction may simplify a given object. More...

conceptAlgebraicStructureTraits_::Sqrt
AdaptableUnaryFunction providing the square root. More...

conceptAlgebraicStructureTraits_::Square
AdaptableUnaryFunction, computing the square of the argument. More...

conceptAlgebraicStructureTraits_::UnitPart
This AdaptableUnaryFunction computes the unit part of a given ring element. More...

conceptAlgebraicStructureTraits
A model of AlgebraicStructureTraits reflects the algebraic structure of an associated type Type. More...

conceptEuclideanRing
A model of EuclideanRing represents an euclidean ring (or Euclidean domain). It is an UniqueFactorizationDomain that affords a suitable notion of minimality of remainders such that given $$x$$ and $$y \neq 0$$ we obtain an (almost) unique solution to $$x = qy + r$$ by demanding that a solution $$(q,r)$$ is chosen to minimize $$r$$. In particular, $$r$$ is chosen to be $$0$$ if possible. More...

conceptField
A model of Field is an IntegralDomain in which every non-zero element has a multiplicative inverse. Thus, one can divide by any non-zero element. Hence division is defined for any divisor != 0. For a Field, we require this division operation to be available through operators / and /=. More...

conceptFieldNumberType
The concept FieldNumberType combines the requirements of the concepts Field and RealEmbeddable. A model of FieldNumberType can be used as a template parameter for Cartesian kernels. More...

conceptFieldWithKthRoot
A model of FieldWithKthRoot is a FieldWithSqrt that has operations to take k-th roots. More...

conceptFieldWithRootOf
A model of FieldWithRootOf is a FieldWithKthRoot with the possibility to construct it as the root of a univariate polynomial. More...

conceptFieldWithSqrt
A model of FieldWithSqrt is a Field that has operations to take square roots. More...

conceptFractionTraits
A model of FractionTraits is associated with a type Type. More...

conceptFractionTraits_::Decompose
Functor decomposing a Fraction into its numerator and denominator. More...

conceptFractionTraits_::Compose
AdaptableBinaryFunction, returns the fraction of its arguments. More...

conceptFractionTraits_::CommonFactor
AdaptableBinaryFunction, finds great common factor of denominators. More...

conceptIntegralDomain
IntegralDomain refines IntegralDomainWithoutDivision by providing an integral division. More...

conceptIntegralDomainWithoutDivision
This is the most basic concept for algebraic structures considered within CGAL. More...

conceptRealEmbeddable
A model of this concepts represents numbers that are embeddable on the real axis. The type obeys the algebraic structure and compares two values according to the total order of the real numbers. More...

conceptRealEmbeddableTraits_::Abs
AdaptableUnaryFunction computes the absolute value of a number. More...

conceptRealEmbeddableTraits_::Compare
AdaptableBinaryFunction compares two real embeddable numbers. More...

conceptRealEmbeddableTraits_::IsNegative
AdaptableUnaryFunction, returns true in case the argument is negative. More...

conceptRealEmbeddableTraits_::IsPositive
AdaptableUnaryFunction, returns true in case the argument is positive. More...

conceptRealEmbeddableTraits_::IsZero
AdaptableUnaryFunction, returns true in case the argument is 0. More...

conceptRealEmbeddableTraits_::Sgn
This AdaptableUnaryFunction computes the sign of a real embeddable number. More...

conceptRealEmbeddableTraits_::ToDouble
AdaptableUnaryFunction computes a double approximation of a real embeddable number. More...

conceptRealEmbeddableTraits_::ToInterval
AdaptableUnaryFunction computes for a given real embeddable number $$x$$ a double interval containing $$x$$. This interval is represented by std::pair<double,double>. More...

conceptRealEmbeddableTraits
A model of RealEmbeddableTraits is associated to a number type Type and reflects the properties of this type with respect to the concept RealEmbeddable. More...

conceptRingNumberType
The concept RingNumberType combines the requirements of the concepts IntegralDomainWithoutDivision and RealEmbeddable. A model of RingNumberType can be used as a template parameter for Homogeneous kernels. More...

conceptUniqueFactorizationDomain
A model of UniqueFactorizationDomain is an IntegralDomain with the additional property that the ring it represents is a unique factorization domain (a.k.a. UFD or factorial ring), meaning that every non-zero non-unit element has a factorization into irreducible elements that is unique up to order and up to multiplication by invertible elements (units). (An irreducible element is a non-unit ring element that cannot be factored further into two non-unit elements. In a UFD, the irreducible elements are precisely the prime elements.) More...