mirror of https://github.com/CGAL/cgal
122 lines
4.0 KiB
TeX
122 lines
4.0 KiB
TeX
\ccRefChapter{Algebraic Kernel}
|
|
|
|
\textbf{Submission - Monique - with Sylvain's help...}
|
|
|
|
\begin{ccAdvanced}
|
|
As in Curved-kernel, I use the ``Advanced'' environment in this
|
|
document to distinguish between my current submission to the CGAL
|
|
editorial board and plans for the future, related to ACS. The
|
|
``Advanced'' parts will disappear if/when this is released.
|
|
\end{ccAdvanced}
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\section*{Concepts}
|
|
|
|
\footnote{Same big question as for curved-kernel. Should the kernel here
|
|
be described as a concept or a class?}
|
|
|
|
\ccRefConceptPage{AlgebraicKernel_2_2}\\
|
|
\ccRefConceptPage{AlgebraicKernel_2_2::Polynomial_1_2}\\
|
|
\ccRefConceptPage{AlgebraicKernel_2_2::PolynomialForCircles_2_2}\\
|
|
\ccRefConceptPage{AlgebraicKernel_2_2::RootOf_2}\\
|
|
\ccRefConceptPage{AlgebraicKernel_2_2::RootForCircles_2_2}
|
|
|
|
\begin{ccAdvanced}
|
|
\ccRefConceptPage{AlgebraicKernel_4_2}\\
|
|
\ccRefConceptPage{Algebraic_kernel_4_2::Polynomial_2_2}\\
|
|
\ccRefConceptPage{AlgebraicKernel_4_2::RootOf_2_2}\\
|
|
\ccRefConceptPage{AlgebraicKernel_4_2::RootOf_4}\\
|
|
|
|
(The indices may look strange but there is indeed a logic: solve on two
|
|
Polynomial-2-2's gives Root-of-4's...)
|
|
|
|
General remark about the suffix \ccc{_d_v}: \ccc{_d} stands
|
|
for the degree of the polynomials and the algebraic numbers, and
|
|
\ccc{_v} stands for the number of variables, which is analogous to the
|
|
dimension for CGAL geometric objects. I had already mentioned this in an
|
|
earlier version of this document (presented at the CGAL meeting at
|
|
INRIA in march 05), and it is consistent with what Menelaos proposed
|
|
later (CGAL meeting in Pisa in june 05) for a hierarchy of algebraic kernels.
|
|
\end{ccAdvanced}
|
|
|
|
\subsubsection*{Functors}
|
|
|
|
\ccRefConceptPage{AlgebraicKernel_2_2::ConstructPolynomial_1_2}\\
|
|
\ccRefConceptPage{AlgebraicKernel_2_2::ConstructPolynomialForCircles_2_2}
|
|
|
|
\ccRefConceptPage{AlgebraicKernel_2_2::ComputeA}\\
|
|
\ccRefConceptPage{AlgebraicKernel_2_2::ComputeB}\\
|
|
\ccRefConceptPage{AlgebraicKernel_2_2::ComputeC}\\
|
|
\ccRefConceptPage{AlgebraicKernel_2_2::ComputeRsq}\\
|
|
(to be documented)
|
|
|
|
\ccRefConceptPage{AlgebraicKernel_2_2::ComputeX}\\
|
|
\ccRefConceptPage{AlgebraicKernel_2_2::ComputeY}\\
|
|
(to be documented)
|
|
|
|
\ccRefConceptPage{AlgebraicKernel_2_2::Solve}
|
|
|
|
\ccRefConceptPage{AlgebraicKernel_2_2::SignAt}
|
|
|
|
\ccRefConceptPage{AlgebraicKernel_2_2::XCriticalPoints}\\
|
|
\ccRefConceptPage{AlgebraicKernel_2_2::YCriticalPoints}
|
|
|
|
\ccRefConceptPage{AlgebraicKernel_2_2::CompareX}\\
|
|
\ccRefConceptPage{AlgebraicKernel_2_2::CompareY}\\
|
|
\ccRefConceptPage{AlgebraicKernel_2_2::CompareXY}
|
|
|
|
\begin{ccAdvanced}
|
|
\ccRefConceptPage{AlgebraicKernel_4_2::ConstructPolynomial_2_2}\\
|
|
\ccRefConceptPage{AlgebraicKernel_4_2::Solve}\\
|
|
etc
|
|
\end{ccAdvanced}
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\section*{Classes}
|
|
|
|
\footnote{how does the linking work when concepts and classes have the same name...? example \ccc{Polynomial_2_2}}
|
|
|
|
\ccRefIdfierPage{CGAL::Algebraic_kernel_2_2<RT>}
|
|
|
|
\ccRefIdfierPage{CGAL::Polynomial_1_2<RT>}\\
|
|
\ccRefIdfierPage{CGAL::Polynomial_for_circles_2_2<FT>}
|
|
|
|
\ccRefIdfierPage{CGAL::Root_of_2<RT>}\\
|
|
\ccRefIdfierPage{CGAL::Root_for_circles_2_2<FT>}
|
|
|
|
\ccRefIdfierPage{CGAL::Root_of_traits_2<RT>}
|
|
|
|
\begin{ccAdvanced}
|
|
\ccRefIdfierPage{CGAL::Root_of_4<RT>}\\
|
|
\ccRefIdfierPage{CGAL::Polynomial_2_2<RT>}\\
|
|
\ccRefIdfierPage{CGAL::Root_of_2_2<RT>}\\
|
|
\ccRefIdfierPage{CGAL::Root_of_traits_4<RT>}
|
|
\end{ccAdvanced}
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\section*{Functions}
|
|
|
|
\subsubsection*{Predicates}
|
|
\ccRefIdfierPage{CGAL::sign_at}\\
|
|
|
|
\ccRefIdfierPage{CGAL::compare_x}\\
|
|
\ccRefIdfierPage{CGAL::compare_y}\\
|
|
\ccRefIdfierPage{CGAL::compare_xy}
|
|
|
|
\subsubsection*{Constructions}
|
|
|
|
\ccRefIdfierPage{CGAL::construct_polynomial_1_2}\\
|
|
\ccRefIdfierPage{CGAL::construct_polynomial_for_circles_2_2}\\
|
|
|
|
\ccRefIdfierPage{CGAL::make_root_of_2}
|
|
|
|
\ccRefIdfierPage{CGAL::solve}
|
|
|
|
\ccRefIdfierPage{CGAL::x_critical_points}\\
|
|
\ccRefIdfierPage{CGAL::y_critical_points}
|
|
|
|
\begin{ccAdvanced}
|
|
\ccRefIdfierPage{CGAL::make_root_of_4}\\
|
|
etc
|
|
\end{ccAdvanced}
|