▼NAlgebraicStructureTraits_ | |
CDiv | AdaptableBinaryFunction computes the integral quotient of division with remainder |
CDivides | AdaptableBinaryFunction , returns true if the first argument divides the second argument |
CDivMod | 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. In particular, \( r\) is chosen to be \( 0\) if possible. Moreover, we require \( q\) to be minimized with respect to the proper integer norm |
CGcd | AdaptableBinaryFunction providing the gcd |
CIntegralDivision | AdaptableBinaryFunction providing an integral division |
CInverse | AdaptableUnaryFunction providing the inverse element with respect to multiplication of a Field |
CIsOne | AdaptableUnaryFunction , returns true in case the argument is the one of the ring |
CIsSquare | 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 |
CIsZero | AdaptableUnaryFunction , returns true in case the argument is the zero element of the ring |
CKthRoot | AdaptableBinaryFunction providing the k-th root |
CMod | AdaptableBinaryFunction computes the remainder of division with remainder |
CRootOf | AdaptableFunctor computes a real root of a square-free univariate polynomial |
CSimplify | This AdaptableUnaryFunction may simplify a given object |
CSqrt | AdaptableUnaryFunction providing the square root |
CSquare | AdaptableUnaryFunction , computing the square of the argument |
CUnitPart | This AdaptableUnaryFunction computes the unit part of a given ring element |
▼NCGAL | |
CAlgebraic_structure_traits | An instance of Algebraic_structure_traits is a model of AlgebraicStructureTraits , where T is the associated type |
CCoercion_traits | An instance of Coercion_traits reflects the type coercion of the types A and B, it is symmetric in the two template arguments |
CEuclidean_ring_tag | Tag indicating that a type is a model of the EuclideanRing concept |
CField_tag | Tag indicating that a type is a model of the Field concept |
CField_with_kth_root_tag | Tag indicating that a type is a model of the FieldWithKthRoot concept |
CField_with_root_of_tag | Tag indicating that a type is a model of the FieldWithRootOf concept |
CField_with_sqrt_tag | Tag indicating that a type is a model of the FieldWithSqrt concept |
CFraction_traits | An instance of Fraction_traits is a model of FractionTraits , where T is the associated type |
CIntegral_domain_tag | Tag indicating that a type is a model of the IntegralDomain concept |
CIntegral_domain_without_division_tag | Tag indicating that a type is a model of the IntegralDomainWithoutDivision concept |
CReal_embeddable_traits | An instance of Real_embeddable_traits is a model of RealEmbeddableTraits , where T is the associated type |
CUnique_factorization_domain_tag | Tag indicating that a type is a model of the UniqueFactorizationDomain concept |
▼NFractionTraits_ | |
CCommonFactor | AdaptableBinaryFunction , finds great common factor of denominators |
CCompose | AdaptableBinaryFunction , returns the fraction of its arguments |
CDecompose | Functor decomposing a Fraction into its numerator and denominator |
▼NRealEmbeddableTraits_ | |
CAbs | AdaptableUnaryFunction computes the absolute value of a number |
CCompare | AdaptableBinaryFunction compares two real embeddable numbers |
CIsNegative | AdaptableUnaryFunction , returns true in case the argument is negative |
CIsPositive | AdaptableUnaryFunction , returns true in case the argument is positive |
CIsZero | AdaptableUnaryFunction , returns true in case the argument is 0 |
CSgn | This AdaptableUnaryFunction computes the sign of a real embeddable number |
CToDouble | AdaptableUnaryFunction computes a double approximation of a real embeddable number |
CToInterval | AdaptableUnaryFunction computes for a given real embeddable number \( x\) a double interval containing \( x\). This interval is represented by std::pair<double,double> |
CAlgebraicStructureTraits | A model of AlgebraicStructureTraits reflects the algebraic structure of an associated type Type |
CEuclideanRing | 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 |
CExplicitInteroperable | Two types A and B are a model of the ExplicitInteroperable concept, if it is possible to derive a superior type for A and B , such that both types are embeddable into this type. This type is CGAL::Coercion_traits<A,B>::Type |
CField | 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 /= |
CFieldNumberType | 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 |
CFieldWithKthRoot | A model of FieldWithKthRoot is a FieldWithSqrt that has operations to take k-th roots |
CFieldWithRootOf | A model of FieldWithRootOf is a FieldWithKthRoot with the possibility to construct it as the root of a univariate polynomial |
CFieldWithSqrt | A model of FieldWithSqrt is a Field that has operations to take square roots |
CFraction | A type is considered as a Fraction , if there is a reasonable way to decompose it into a numerator and denominator. In this case the relevant functionality for decomposing and re-composing as well as the numerator and denominator type are provided by CGAL::Fraction_traits |
CFractionTraits | A model of FractionTraits is associated with a type Type |
CFromDoubleConstructible | A model of the concept FromDoubleConstructible is required to be constructible from the type double |
CFromIntConstructible | A model of the concept FromIntConstructible is required to be constructible from int |
CImplicitInteroperable | Two types A and B are a model of the concept ImplicitInteroperable , if there is a superior type, such that binary arithmetic operations involving A and B result in this type. This type is CGAL::Coercion_traits<A,B>::Type . In case types are RealEmbeddable this also implies that mixed compare operators are available |
CIntegralDomain | IntegralDomain refines IntegralDomainWithoutDivision by providing an integral division |
CIntegralDomainWithoutDivision | This is the most basic concept for algebraic structures considered within CGAL |
CRealEmbeddable | 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 |
CRealEmbeddableTraits | A model of RealEmbeddableTraits is associated to a number type Type and reflects the properties of this type with respect to the concept RealEmbeddable |
CRingNumberType | 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 |
CUniqueFactorizationDomain | 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.) |