\( \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.5.1 - Algebraic Foundations
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
CGAL Namespace Reference

Classes

class  Algebraic_structure_traits
 An instance of Algebraic_structure_traits is a model of AlgebraicStructureTraits, where T is the associated type. More...
 
class  Euclidean_ring_tag
 Tag indicating that a type is a model of the EuclideanRing concept. More...
 
class  Field_tag
 Tag indicating that a type is a model of the Field concept. More...
 
class  Field_with_kth_root_tag
 Tag indicating that a type is a model of the FieldWithKthRoot concept. More...
 
class  Field_with_root_of_tag
 Tag indicating that a type is a model of the FieldWithRootOf concept. More...
 
class  Field_with_sqrt_tag
 Tag indicating that a type is a model of the FieldWithSqrt concept. More...
 
class  Integral_domain_tag
 Tag indicating that a type is a model of the IntegralDomain concept. More...
 
class  Integral_domain_without_division_tag
 Tag indicating that a type is a model of the IntegralDomainWithoutDivision concept. More...
 
class  Unique_factorization_domain_tag
 Tag indicating that a type is a model of the UniqueFactorizationDomain concept. More...
 
class  Coercion_traits
 An instance of Coercion_traits reflects the type coercion of the types A and B, it is symmetric in the two template arguments. More...
 
class  Fraction_traits
 An instance of Fraction_traits is a model of FractionTraits, where T is the associated type. More...
 
class  Real_embeddable_traits
 An instance of Real_embeddable_traits is a model of RealEmbeddableTraits, where T is the associated type. More...
 

Functions

template<class NT >
NT abs (const NT &x)
 The template function abs() returns the absolute value of a number. More...
 
template<class NT1 , class NT2 >
result_type compare (const NT &x, const NT &y)
 The template function compare() compares the first argument with respect to the second, i.e. it returns CGAL::LARGER if \( x\) is larger then \( y\). More...
 
template<class NT1 , class NT2 >
result_type div (const NT1 &x, const NT2 &y)
 The function div() computes the integral quotient of division with remainder. More...
 
template<class NT1 , class NT2 >
void div_mod (const NT1 &x, const NT2 &y, result_type &q, result_type &r)
 computes the quotient \( q\) and remainder \( r\), such that \( x = q*y + r\) and \( r\) minimal with respect to the Euclidean Norm of the result_type. More...
 
template<class NT1 , class NT2 >
result_type gcd (const NT1 &x, const NT2 &y)
 The function gcd() computes the greatest common divisor of two values. More...
 
template<class NT1 , class NT2 >
result_type integral_division (const NT1 &x, const NT2 &y)
 The function integral_division() (a.k.a. exact division or division without remainder) maps ring elements \( (x,y)\) to ring element \( z\) such that \( x = yz\) if such a \( z\) exists (i.e. if \( x\) is divisible by \( y\)). More...
 
template<class NT >
NT inverse (const NT &x)
 The function inverse() returns the inverse element with respect to multiplication. More...
 
result_type is_negative (const NT &x)
 The template function is_negative() determines if a value is negative or not. More...
 
template<class NT >
result_type is_one (const NT &x)
 The function is_one() determines if a value is equal to 1 or not. More...
 
result_type is_positive (const NT &x)
 The template function is_positive() determines if a value is positive or not. More...
 
template<class NT >
result_type is_square (const NT &x)
 An ring element \( x\) is said to be a square iff there exists a ring element \( y\) such that \( x= y*y\). More...
 
template<class NT >
result_type is_square (const NT &x, NT &y)
 An ring element \( x\) is said to be a square iff there exists a ring element \( y\) such that \( x= y*y\). More...
 
template<class NT >
result_type is_zero (const NT &x)
 The function is_zero() determines if a value is equal to 0 or not. More...
 
template<class NT >
NT kth_root (int k, const NT &x)
 The function kth_root() returns the k-th root of a value. More...
 
template<class NT1 , class NT2 >
result_type mod (const NT1 &x, const NT2 &y)
 The function mod() computes the remainder of division with remainder. More...
 
template<class InputIterator >
NT root_of (int k, InputIterator begin, InputIterator end)
 returns the k-th real root of the univariate polynomial, which is defined by the iterator range, where begin refers to the constant term. More...
 
template<class NT >
result_type sign (const NT &x)
 The template function sign() returns the sign of its argument. More...
 
template<class NT >
void simplify (const NT &x)
 The function simplify() may simplify a given object. More...
 
template<class NT >
NT sqrt (const NT &x)
 The function sqrt() returns the square root of a value. More...
 
template<class NT >
NT square (const NT &x)
 The function square() returns the square of a number. More...
 
template<class NT >
double to_double (const NT &x)
 The template function to_double() returns an double approximation of a number. More...
 
template<class NT >
std::pair< double, double > to_interval (const NT &x)
 The template function to_interval() computes for a given real embeddable number \( x\) a double interval containing \( x\). More...
 
template<class NT >
NT unit_part (const NT &x)
 The function unit_part() computes the unit part of a given ring element. More...