Processing math: 0%
CGAL 5.1 - Polynomial
All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Modules Pages
Class and Concept List
Here is the list of all concepts and classes of this package. Classes are inside the namespace CGAL. Concepts are in the global namespace.
[detail level 12]
 NCGAL
 CExponent_vectorFor a given (multivariate) monomial the vector of its exponents is called the exponent vector
 CPolynomialAn instance of the data type Polynomial represents a polynomial p = a_0 + a_1*x + ...a_i*x^i from the ring \mathrm{Coeff}[x]
 CPolynomial_traits_dA model of concept PolynomialTraits_d
 CPolynomial_type_generatorThis class template provides a convenient way to obtain the type representing a multivariate polynomial with d variables, where T is the innermost coefficient type
 CPolynomial_dA model of Polynomial_d is representing a multivariate polynomial in d \geq 1 variables over some basic ring R. This type is denoted as the innermost coefficient. A model of Polynomial_d must be accompanied by a traits class CGAL::Polynomial_traits_d<Polynomial_d>, which is a model of PolynomialTraits_d. Please have a look at the concept PolynomialTraits_d, since nearly all functionality related to polynomials is provided by the traits
 CPolynomialTraits_dA model of PolynomialTraits_d is associated with a type Polynomial_d. The type Polynomial_d represents a multivariate polynomial. The number of variables is denoted as the dimension d of the polynomial, it is arbitrary but fixed for a certain model of this concept. Note that univariate polynomials are not excluded by this concept. In this case d is just set to one
 CCanonicalizeFor a given polynomial p this AdaptableUnaryFunction computes the unique representative of the set

{\cal P} := \{ q\ |\ \lambda * q = p\ for\ some\ \lambda \in R \},

where R is the base of the polynomial ring

 CCompareThis AdaptableBinaryFunction compares two polynomials, with respect to the lexicographic order with preference to the outermost variable
 CConstructCoefficientConstIteratorRangeThis AdaptableUnaryFunction returns a const iterator range over the coefficients of the given polynomial, with respect to the outermost variable, x_{d-1}. The range starts with the coefficient for x_{d-1}^0
 CConstructInnermostCoefficientConstIteratorRangeThis AdaptableUnaryFunction returns a const iterator range over all innermost coefficients of the given polynomial
 CConstructPolynomialThis AdaptableFunctor provides several operators to construct objects of type PolynomialTraits_d::Polynomial_d
 CDegreeThis AdaptableUnaryFunction computes the degree of a PolynomialTraits_d::Polynomial_d with respect to a certain variable
 CDegreeVectorFor a given PolynomialTraits_d::Polynomial_d p this AdaptableUnaryFunction returns the degree vector, that is, it returns the exponent vector of the monomial of highest order in p, where the monomial order is the lexicographic order giving outer variables a higher priority. In particular, this is the monomial that belongs to the innermost leading coefficient of p
 CDifferentiateThis AdaptableUnaryFunction computes the derivative of a PolynomialTraits_d::Polynomial_d with respect to one variable
 CEvaluateThis AdaptableBinaryFunction evaluates PolynomialTraits_d::Polynomial_d with respect to one variable
 CEvaluateHomogeneousThis AdaptableFunctor provides evaluation of a PolynomialTraits_d::Polynomial_d interpreted as a homogeneous polynomial in one variable
 CGcdUpToConstantFactorThis AdaptableBinaryFunction computes the gcd up to a constant factor (utcf) of two polynomials of type PolynomialTraits_d::Polynomial_d
 CGetCoefficientThis AdaptableBinaryFunction provides access to coefficients of a PolynomialTraits_d::Polynomial_d
 CGetInnermostCoefficientFor the given PolynomialTraits_d::Polynomial_d this AdaptableBinaryFunction returns the coefficient of the (multivariate) monomial specified by the given CGAL::Exponent_vector
 CInnermostLeadingCoefficientThis AdaptableUnaryFunction computes the innermost leading coefficient of a PolynomialTraits_d::Polynomial_d p. The innermost leading coefficient is recursively defined as the innermost leading coefficient of the leading coefficient of p. In case p is univariate it coincides with the leading coefficient
 CIntegralDivisionUpToConstantFactorThis AdaptableBinaryFunction computes the integral division of two polynomials of type PolynomialTraits_d::Polynomial_d up to a constant factor (utcf)
 CInvertThis AdaptableUnaryFunction inverts one variable in a given PolynomialTraits_d::Polynomial_d, that is, for a given polynomial p it computes x^{degree(p)}p(1/x)
 CIsSquareFreeThis AdaptableUnaryFunction computes whether the given a polynomial of type PolynomialTraits_d::Polynomial_d is square free
 CIsZeroAtThis AdaptableFunctor returns whether a PolynomialTraits_d::Polynomial_d p is zero at a given Cartesian point, which is represented as an iterator range
 CIsZeroAtHomogeneousThis AdaptableFunctor returns whether a PolynomialTraits_d::Polynomial_d p is zero at a given homogeneous point, which is given by an iterator range
 CLeadingCoefficientThis AdaptableUnaryFunction computes the leading coefficient of a PolynomialTraits_d::Polynomial_d
 CMakeSquareFreeThis AdaptableUnaryFunction computes the square-free part of a polynomial of type PolynomialTraits_d::Polynomial_d up to a constant factor
 CMonomialRepresentationThis Functor outputs the monomial representation of the given polynomial, that is, it writes all non zero terms of the polynomial as std::pair<CGAL::Exponent_vector, PolynomialTraits_d::Innermost_coefficient_type> into the given output iterator
 CMoveThis AdaptableFunctor moves a variable at position i to a new position j. The relative order of the other variables is preserved, that is, the variables between x_i and x_j (including x_j) are moved by one position while x_i is moved to the former position of x_j
 CMultivariateContentThis AdaptableUnaryFunction computes the content of a PolynomialTraits_d::Polynomial_d with respect to the symmetric view on the polynomial, that is, it computes the gcd of all innermost coefficients
 CNegateThis AdaptableUnaryFunction computes p(-x) for a given polynomial p
 CPermuteThis AdaptableFunctor permutes the variables of the given polynomial with respect to a permutation \sigma, that is, each monomial \prod x_i^{e_i} will be mapped to the monomial \prod x_{\sigma(i)}^{e_i}. The permutation \sigma is given by the iterator range of length PolynomialTraits_d::d, which is supposed to contain the second row of the permutation
 CPolynomialSubresultantsComputes the polynomial subresultant of two polynomials p and q of type PolynomialTraits_d::Polynomial_d with respect to outermost variable. Let p=\ccSum{i=0,\ldots,n}{} p_i x^i and q=\ccSum{i=0,\ldots,m}{} q_i x^i, where x is the outermost variable. The i-th subresultant (with i=0,\ldots,\min\{n,m\}) is defined by
 CPolynomialSubresultantsWithCofactorsComputes the polynomial subresultant of two polynomials p and q of degree n and m, respectively, as defined in the documentation of PolynomialTraits_d::PolynomialSubresultants. Moreover, for \mathrm{Sres}_i(p,q), polynomials u_i and v_i with \deg u_i\leq m-i-1 and \deg v_i\leq n-i-1 are computed such that \mathrm{Sres}_i(p,q)=u_i p + v_i q. u_i and v_i are called the cofactors of \mathrm{Sres}_i(p,q)
 CPrincipalSturmHabichtSequenceComputes the principal leading coefficients of the Sturm-Habicht sequence of a polynomials f of type PolynomialTraits_d::Polynomial_d with respect a certain variable x_i. This means that for the j-th Sturm-Habicht polynomial, this methods returns the coefficient of x_i^j
 CPrincipalSubresultantsComputes the principal subresultant of two polynomials p and q of type PolynomialTraits_d::Coefficient_type with respect to the outermost variable. The i-th principal subresultant, \mathrm{sres}_i(p,q), is defined as the coefficient at t^i of the i-th polynomial subresultant \mathrm{Sres}_i(p,q). Thus, it is either the leading coefficient of \mathrm{Sres}_i, or zero in the case where its degree is below i
 CPseudoDivisionThis AdaptableFunctor computes the pseudo division of two polynomials f and g
 CPseudoDivisionQuotientThis AdaptableBinaryFunction computes the quotient of the pseudo division of two polynomials f and g
 CPseudoDivisionRemainderThis AdaptableBinaryFunction computes the remainder of the pseudo division of two polynomials f and g
 CResultantThis AdaptableBinaryFunction computes the resultant of two polynomials f and g of type PolynomialTraits_d::Polynomial_d with respect to a certain variable
 CScaleGiven a constant c this AdaptableBinaryFunction scales a PolynomialTraits_d::Polynomial_d p with respect to one variable, that is, it computes p(c\cdot x)
 CScaleHomogeneousGiven a numerator a and a denominator b this AdaptableFunctor scales a PolynomialTraits_d::Polynomial_d p with respect to one variable, that is, it computes b^{degree(p)}\cdot p(a/b\cdot x)
 CShiftThis AdaptableBinaryFunction multiplies a PolynomialTraits_d::Polynomial_d by the given power of the specified variable
 CSignAtThis AdaptableFunctor returns the sign of a PolynomialTraits_d::Polynomial_d p at given Cartesian point represented as an iterator range
 CSignAtHomogeneousThis AdaptableFunctor returns the sign of a PolynomialTraits_d::Polynomial_d p at a given homogeneous point, which is given by an iterator range
 CSquareFreeFactorizeThis Functor computes a square-free factorization of a PolynomialTraits_d::Polynomial_d
 CSquareFreeFactorizeUpToConstantFactorThis AdaptableFunctor computes a square-free factorization up to a constant factor (utcf) of a PolynomialTraits_d::Polynomial_d
 CSturmHabichtSequenceComputes the Sturm-Habicht sequence (aka the signed subresultant sequence) of a polynomial f of type PolynomialTraits_d::Polynomial_d with respect to a certain variable x_i. The Sturm-Habicht sequence is similar to the polynomial subresultant sequence of f and its derivative f':=\frac{\partial f}{\partial x_i} with respect to x_i. The implementation is based on the following definition:
 CSturmHabichtSequenceWithCofactorsComputes the Sturm-Habicht polynomials of a polynomial f of degree n, as defined in the documentation of PolynomialTraits_d::SturmHabichtSequence. Moreover, for \mathrm{Stha}_i(f), polynomials u_i and v_i with \deg u_i\leq n-i-2 and \deg v_i\leq n-i-1 are computed such that \mathrm{Sres}_i(p,q)=u_i f + v_i f'. u_i and v_i are called the cofactors of \mathrm{Stha}_i(f)
 CSubstituteThis Functor substitutes all variables of a given multivariate PolynomialTraits_d::Polynomial_d by the values given in the iterator range, where begin refers the value for the innermost variable
 CSubstituteHomogeneousThis Functor substitutes all variables of a given multivariate PolynomialTraits_d::Polynomial_d p by the values given in the iterator range, where begin refers the value for the innermost variable. In contrast to PolynomialTraits_d::Substitute the given polynomial p is interpreted as a homogeneous polynomial. Hence the iterator range is required to be of length PolynomialTraits_d::d+1
 CSwapThis AdaptableFunctor swaps two variables of a multivariate polynomial
 CTotalDegreeThis AdaptableUnaryFunction computes the total degree of a PolynomialTraits_d::Polynomial_d
 CTranslateThis AdaptableBinaryFunction translates a PolynomialTraits_d::Polynomial_d with respect to one variable, that is, for a given polynomial p and constant c it computes p(x+c)
 CTranslateHomogeneousGiven numerator a and denominator b this AdaptableFunctor translates a PolynomialTraits_d::Polynomial_d p with respect to one variable by a/b, that is, it computes b^{degree(p)}\cdot p(x+a/b)
 CUnivariateContentThis AdaptableUnaryFunction computes the content of a PolynomialTraits_d::Polynomial_d with respect to the univariate (recursive) view on the polynomial, that is, it computes the gcd of all coefficients with respect to one variable
 CUnivariateContentUpToConstantFactorThis AdaptableUnaryFunction computes the content of a PolynomialTraits_d::Polynomial_d with respect to the univariate (recursive) view on the polynomial up to a constant factor (utcf), that is, it computes the \mathrm{gcd\_utcf} of all coefficients with respect to one variable