proposal for Solve_2 (with a question left in footnote)

This commit is contained in:
Monique Teillaud 2007-08-08 12:33:30 +00:00
parent df7c6842b3
commit aa1f0714e5
3 changed files with 20 additions and 13 deletions

View File

@ -2,7 +2,8 @@
\ccDefinition
\ccc{AdaptableFunction} that computes the real roots of a univariate polynomial.
\ccc{AdaptableFunction} that computes the real roots of a univariate
polynomial.
\ccCreationVariable{fo}
@ -13,15 +14,17 @@ A model of this type must provide:
operator()(const AlgebraicKernel_d_1::Polynomial_1 &p,
OutputIterator res, bool known_to_be_square_free=false);}
{Copies in the output iterator the roots of \ccc{p} as objects of type
\ccc{Algebraic_real_1}. The boolean indicates whether \ccc{p} is known
to be square free or if this information is not known.}
\ccc{AlgebraicKernel_d_1::Algebraic_real_1}. The boolean indicates
whether \ccc{p} is known to be square free or if this information is
not known.}
\ccMethod{template < class OutputIteratorRoots, class OutputIteratorMult >
std::pair< OutputIteratorRoots, OutputIteratorMult >
operator()(const AlgebraicKernel_d_1::Polynomial_1 &p,
OutputIteratorRoots roots, OutputIteratorMult mult);}
{Copies in the output iterator \ccc{roots} the roots of \ccc{p} as
\ccc{Algebraic_real_1}s and copies in the output iterator \ccc{mult}
their respective multiplicity as \ccc{int}s, in the same order.}
\ccc{AlgebraicKernel_d_1::Algebraic_real_1}s and copies in the output
iterator \ccc{mult} their respective multiplicity as \ccc{int}s, in
the same order.}
\end{ccRefConcept}

View File

@ -2,15 +2,20 @@
\ccDefinition
\footnote{Remark: It should be similar to Solve\_1 as we discussed at the CGAL
Dev Meeting.}
\ccCreationVariable{fo}
A model \ccVar\ of this type must provide:
\footnote{TBD, I am getting tired... what about the case of 1-dimensional components? a choice must be made}
\ccMethod{template < class OutputIteratorRoots, class OutputIteratorMult >
std::pair< OutputIteratorRoots, OutputIteratorMult >
operator()(const AlgebraicKernel_d_2::Polynomial_2 & p1,
const AlgebraicKernel_d_2::Polynomial_2 & p2,
OutputIteratorRoots roots, OutputIteratorMult mult);}
{Copies in the output iterator \ccc{roots} the common roots of $p_1$
and $p_2$ as \ccc{AlgebraicKernel_d_2::Algebraic_real_2}s and copies
in the output iterator \ccc{mult} their respective multiplicity as
\ccc{int}s, in the same order.
\ccPrecond{The set of solutions of the system is a 0-dimensional.}}
\footnote{what if it is not 0-dimensional??}
\end{ccRefConcept}

View File

@ -3,8 +3,7 @@
\subsection{open}
\begin{itemize}
\item Missing Doc for IsSquareFree\_2, IsCoprime\_2, MakeSquareFree\_2,
MakeCoprime\_2, Solve\_2
\item Missing Doc for IsSquareFree\_2, IsCoprime\_2, MakeSquareFree\_2
\item Move methods from AlgebraicReal\_2 to a traits class.
\item AlgebraicReal\_2 - Add GetX() and GetY() functors.
\end{itemize}