cgal/Polynomial/doc_tex/Polynomial_ref/PolynomialTraits_d_SturmHab...

60 lines
2.6 KiB
TeX

\begin{ccRefConcept}{PolynomialTraits_d::SturmHabichtSequenceWithCofactors}
\ccDefinition
Computes the Sturm-Habicht polynomials of a polynomial $f$ of degree $n$,
as defined in the documentation of \ccc{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 \emph{cofactors} of $\mathrm{Stha}_i(f)$.
The result is written in three output ranges, each of length $\min\{n,m\}+1$,
starting with the $0$th Sturm-Habicht polynomial $\mathrm{Stha_0(f)}$
and the corresponding cofactors.
A default implementation for the case that
\ccc{Polynomial_traits_d::Coefficient_type}
is a model of \ccc{CGAL::Integral_division}
is provided by the function \ccc{CGAL::sturm_habicht_sequence_with_cofactors}.
Computes the Sturm-Habicht sequence of a polynomials $f$ of type
\ccc{PolynomialTraits_d::Polynomial_d} with respect a certain variable $x_i$.
Additionally, it computes two ranges of cofactors, {\tt co\_f} and {\tt co\_fx}
with the property that {\tt stha[i] == co\_f[i] f + co\_fx[i] f'}.
\ccCreationVariable{fo}
\ccOperations
\ccMethod{template< typename OutputIterator1,
typename OutputIterator2,
typename OutputIterator3 >
OutputIterator1 operator()(Polynomial_d f,
OutputIterator1 stha,
OutputIterator2 co_f,
OutputIterator3 co_fx);}
{ computes the Sturm-Habicht sequence of $f$, and the cofactors,
with respect to the outermost variable. Each element is of type
\ccc{PolynomialTraits_d::Polynomial_d}.}
\ccMethod{template< typename OutputIterator1,
typename OutputIterator2,
typename OutputIterator3 >
OutputIterator1 operator()(Polynomial_d f,
OutputIterator1 stha,
OutputIterator2 co_f,
OutputIterator3 co_fx,
int i);}
{ computes the Sturm-Habicht sequence of $f$, and the cofactors,
with respect to $x_i$. Each element is of type
\ccc{PolynomialTraits_d::Polynomial_d}.}
%\ccHasModels
\ccSeeAlso
\ccRefIdfierPage{Polynomial_d}\\
\ccRefIdfierPage{PolynomialTraits_d}\\
\ccRefIdfierPage{PolynomialTraits_d::SturmHabichtSequence}\\
\ccRefIdfierPage{CGAL::sturm_habicht_sequence_with_cofactors}\\
\end{ccRefConcept}