CGAL 5.6 - Polynomial
PolynomialTraits_d::PrincipalSturmHabichtSequence Concept Reference

Definition

Computes 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\).

Note that the degree of the \( j\)-th Sturm-Habicht polynomial is at most \( j\), but the principal coefficient might be zero, thus, this functor does not necessarily give the leading coefficient of the Sturm-Habicht polynomials.

In case that PolynomialTraits_d::Coefficient_type is RealEmbeddable, the function CGAL::number_of_real_roots can be used on the resulting sequence to count the number of distinct real roots of the polynomial \( f\).

Note
This functor is optional.
Refines
AdaptableBinaryFunction
CopyConstructible
DefaultConstructible
See also
Polynomial_d
PolynomialTraits_d
CGAL::number_of_real_roots()
PolynomialTraits_d::Resultant
PolynomialTraits_d::SturmHabichtSequence
PolynomialTraits_d::PrincipalSubresultants

Operations

template<typename OutputIterator >
OutputIterator operator() (Polynomial_d f, OutputIterator out)
 computes the principal coefficients of the Sturm-Habicht sequence of \( f\), with respect to the outermost variable. More...
 
template<typename OutputIterator >
OutputIterator operator() (Polynomial_d f, OutputIterator out, int i)
 computes the principal coefficients of the Sturm-Habicht sequence of \( f\) with respect to the variable \( x_i\).
 

Member Function Documentation

◆ operator()()

template<typename OutputIterator >
OutputIterator PolynomialTraits_d::PrincipalSturmHabichtSequence::operator() ( Polynomial_d  f,
OutputIterator  out 
)

computes the principal coefficients of the Sturm-Habicht sequence of \( f\), with respect to the outermost variable.

Each element is of type PolynomialTraits_d::Coefficient_type.