mirror of https://github.com/CGAL/cgal
general improvements typos/layout/consistency
use 'fo' as creation variable
This commit is contained in:
parent
5a0a179939
commit
09efa13296
|
|
@ -39,7 +39,7 @@ to the last/outermost variable of a multivariate polynomial.
|
|||
\ccc{LessThanComparable}\\
|
||||
|
||||
\ccCreation
|
||||
\ccCreationVariable{ev}
|
||||
\ccCreationVariable{fo}
|
||||
|
||||
%\ccc{DefaultConstructible}\\
|
||||
\ccConstructor{Exponent_vector();}
|
||||
|
|
|
|||
|
|
@ -85,7 +85,7 @@ the zero polynomial is represented by a single zero coefficient.
|
|||
|
||||
\ccCreation
|
||||
|
||||
\ccCreationVariable{poly}
|
||||
\ccCreationVariable{fo}
|
||||
\ccConstructor{Polynomial ();}
|
||||
{Introduces an variable initialized with 0.}
|
||||
\ccGlue
|
||||
|
|
|
|||
|
|
@ -152,11 +152,11 @@ is not a model of \ccc{UniqueFactorizationDomain}, this is of type \ccc{CGAL::Nu
|
|||
|
||||
%pseudo division
|
||||
\ccNestedType{Pseudo_division }
|
||||
{ A model of \ccc{PolynomialTraits_d::Pseudo_division}.}\ccGlue
|
||||
{ A model of \ccc{PolynomialTraits_d::PseudoDivision}.}\ccGlue
|
||||
\ccNestedType{Pseudo_division_remainder}
|
||||
{ A model of \ccc{PolynomialTraits_d::Pseudo_division_remainder}.}\ccGlue
|
||||
{ A model of \ccc{PolynomialTraits_d::PseudoDivisionRemainder}.}\ccGlue
|
||||
\ccNestedType{Pseudo_division_quotient }
|
||||
{ A model of \ccc{PolynomialTraits_d::Pseudo_division_quotient}.}
|
||||
{ A model of \ccc{PolynomialTraits_d::PseudoDivisionQuotient}.}
|
||||
|
||||
|
||||
%utcf
|
||||
|
|
@ -167,7 +167,7 @@ is not a model of \ccc{UniqueFactorizationDomain}, this is of type \ccc{CGAL::Nu
|
|||
{ A model of \ccc{PolynomialTraits_d::IntegralDivisionUpToConstantFactor}.}
|
||||
\ccGlue
|
||||
\ccNestedType{Content_up_to_constant_factor}
|
||||
{ A model of \ccc{PolynomialTraits_d::ContentUpToConstantFactor}.}
|
||||
{ A model of \ccc{PolynomialTraits_d::UnivariateContentUpToConstantFactor}.}
|
||||
\ccGlue
|
||||
\ccNestedType{Square_free_factorize_up_to_constant_factor}
|
||||
{ A model of \ccc{PolynomialTraits_d::SquareFreeFactorizeUpToConstantFactor}.}
|
||||
|
|
|
|||
|
|
@ -3,8 +3,8 @@
|
|||
\ccDefinition
|
||||
|
||||
This \ccc{AdaptableUnaryFunction} computes a unique representative from the set:
|
||||
$\{ q | \lambda * q = p with \lambda \in R \}$, where $p$ is the given polynomial and
|
||||
$R$ the base of the polynomial ring.
|
||||
$\{ q | \lambda * q = p\ for\ some\ \lambda \in R \}$,
|
||||
where $p$ is the given polynomial and $R$ the base of the polynomial ring.
|
||||
In particular, the computed polynomial has the same zero set as the given one.
|
||||
|
||||
In case \ccc{PolynomialTraits::Innermost_coefficient_type} is a model of \ccc{Field},
|
||||
|
|
@ -30,8 +30,9 @@ For all other cases the notion of uniqueness is up to the concrete model.
|
|||
|
||||
\ccOperations
|
||||
|
||||
\ccCreationVariable{canonicalize}
|
||||
\ccMethod{result_type operator()(first_argument_type f);}{}
|
||||
\ccCreationVariable{fo}
|
||||
\ccMethod{result_type operator()(first_argument_type p);}{
|
||||
Returns the cononical representative of $p$.}
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ This functor is well defined if \ccc{PolynomialTraits_d::Innermost_coefficient_t
|
|||
\ccTypes
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{compare}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef CGAL::Comparison_result result_type;}{}
|
||||
\ccGlue
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d first_argument_type;}{}
|
||||
|
|
@ -24,7 +24,7 @@ This functor is well defined if \ccc{PolynomialTraits_d::Innermost_coefficient_t
|
|||
|
||||
\ccOperations
|
||||
|
||||
\ccCreationVariable{compare}
|
||||
\ccCreationVariable{fo}
|
||||
\ccMethod{result_type operator()(first_argument_type f,
|
||||
second_argument_type g);}
|
||||
{Compare two polynomials.}
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ to construct objects of type \ccc{PolynomialTraits_d::Polynomial_d}.
|
|||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxx}{xxxxxxxxxxx}{}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d result_type;}{}
|
||||
|
||||
\ccCreationVariable{construct_polynomial}
|
||||
\ccCreationVariable{fo}
|
||||
\ccOperations
|
||||
\ccMethod{result_type operator()();}
|
||||
{Construct the zero polynomial.}
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ $p$ is not zero.\\
|
|||
For instance the total degree of $p = x_0^2x_1^3+x_1^4$ with respect to $x_1$ is $4$.
|
||||
|
||||
The degree of the zero polynomial is set to $0$. From the mathematical point of view this should
|
||||
be $-inf$, but this would imply an inconvenient return type.
|
||||
be $-infinity$, but this would imply an inconvenient return type.
|
||||
|
||||
|
||||
|
||||
|
|
@ -23,7 +23,7 @@ be $-inf$, but this would imply an inconvenient return type.
|
|||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
|
||||
\ccCreationVariable{degree}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef int result_type;}{}\ccGlue
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d argument_type;}{}
|
||||
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ the innermost leading coefficient of a
|
|||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
|
||||
\ccCreationVariable{degree_vector}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef Exponent_vector result_type;}{}\ccGlue
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d argument_type;}{}
|
||||
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ This \ccc{AdaptableUnaryFunction} computes the derivative of a
|
|||
\ccTypes
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{differentiate}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d result_type;}{}
|
||||
\ccGlue
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d argument_type;}{}
|
||||
|
|
@ -29,5 +29,5 @@ This \ccc{AdaptableUnaryFunction} computes the derivative of a
|
|||
\ccSeeAlso
|
||||
|
||||
\ccRefIdfierPage{Polynomial_d}\\
|
||||
\ccRefIdfierPage{PolynomialTraits_d}
|
||||
\ccRefIdfierPage{PolynomialTraits_d}\\
|
||||
\end{ccRefConcept}
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ This \ccc{AdaptableBinaryFunction} evaluates
|
|||
\ccTypes
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{evaluate}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Coefficient_type result_type;}{}\ccGlue
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d first_argument_type;}{}\ccGlue
|
||||
\ccTypedef{typedef PolynomialTraits_d::Coefficient_type second_argument_type;}{}
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ $p(u,v) = u^3 + uv^2$ and evaluated as such.
|
|||
\ccTypes
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{evaluate_homogeneous}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Coefficient_type result_type;}{}
|
||||
|
||||
\ccOperations
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ domain one can consider its quotient field $Q(R)$ for which $gcd$s of
|
|||
polynomials exist.
|
||||
|
||||
This functor computes $gcd\_utcf(f,g) = D * gcd(f,g)$,
|
||||
for some $D \in R$ such that $gcd\_utcf(f,g) \in R[x_0,\dots,x_{d-1}]$.\\
|
||||
for some $D \in R$ such that $gcd\_utcf(f,g) \in R[x_0,\dots,x_{d-1}]$.
|
||||
Hence, $gcd\_utcf(f,g)$ may not be a divisor of $f$ and $g$ in $R[x_0,\dots,x_{d-1}]$.
|
||||
|
||||
\ccRefines
|
||||
|
|
@ -25,7 +25,7 @@ Hence, $gcd\_utcf(f,g)$ may not be a divisor of $f$ and $g$ in $R[x_0,\dots,x_{d
|
|||
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{gcd_utcf}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d result_type;}{}\ccGlue
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d first_argument_type;}{}\ccGlue
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d second_argument_type;}{}
|
||||
|
|
|
|||
|
|
@ -15,18 +15,18 @@ This \ccc{AdaptableBinaryFunction} provides access to coefficients of a
|
|||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d first_argument_type ;}{}
|
||||
\ccTypedef{typedef int second_argument_type;}{}
|
||||
|
||||
\ccCreationVariable{get_coefficient}
|
||||
\ccCreationVariable{fo}
|
||||
\ccOperations
|
||||
|
||||
\ccMethod{result_type operator()( first_argument_type p,
|
||||
second_argument_type e);}{
|
||||
Returns coefficient of $x_{d-1}^e$ by value,
|
||||
where $x_{d-1}$ is the outermost variable.}
|
||||
For given polynomial $p$ this operator returns the coefficient
|
||||
of $x_{d-1}^e$ by value, where $x_{d-1}$ is the outermost variable.}
|
||||
|
||||
\ccMethod{result_type operator()( first_argument_type p,
|
||||
second_argument_type e,
|
||||
int i);}{
|
||||
Returns coefficient of $x_{i}^e$ by value.
|
||||
For given polynomial $p$ this operator returns coefficient of $x_{i}^e$ by value.
|
||||
}
|
||||
%\ccHasModels
|
||||
|
||||
|
|
|
|||
|
|
@ -18,12 +18,13 @@ the (multivariate) monomial specified by the given \ccc{Exponent_vector}.
|
|||
\ccGlue
|
||||
\ccTypedef{typedef Exponent_vector second_argument_type;}{}
|
||||
|
||||
\ccCreationVariable{get_innermost_coefficient}
|
||||
\ccCreationVariable{fo}
|
||||
\ccOperations
|
||||
|
||||
\ccMethod{result_type operator()( first_argument_type p,
|
||||
second_argument_type v);}{
|
||||
Returns the innermost coefficient of the monomial defined by the given \ccc{Exponent_vector} $v$. }
|
||||
For given polynomial $p$ this operator returns the innermost coefficient of the
|
||||
monomial corresponding to the given \ccc{Exponent_vector} $v$. }
|
||||
|
||||
%\ccHasModels
|
||||
|
||||
|
|
|
|||
|
|
@ -3,13 +3,13 @@
|
|||
\ccDefinition
|
||||
|
||||
This \ccc{AdaptableUnaryFunction} computes the innermost leading coefficient
|
||||
of a \ccc{PolynomialTraits_d::Polynomial_d}. 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.
|
||||
of a \ccc{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.
|
||||
|
||||
\ccRefines
|
||||
\ccc{AdaptableUnaryFunction}
|
||||
|
||||
\ccTypes
|
||||
\ccCreationVariable{innermost_leading_coefficient}
|
||||
\ccCreationVariable{fo}
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Innermost_coefficient_type result_type;}{}
|
||||
\ccGlue
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ field of the base ring $R$, \ccc{PolynomialTraits_d::Innermost_coefficient_type}
|
|||
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{integral_division_utcf}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d result_type;}{}\ccGlue
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d first_argument_type;}{}\ccGlue
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d second_argument_type;}{}
|
||||
|
|
@ -27,7 +27,7 @@ field of the base ring $R$, \ccc{PolynomialTraits_d::Innermost_coefficient_type}
|
|||
|
||||
\ccMethod{result_type operator()(first_argument_type f,
|
||||
second_argument_type g);}
|
||||
{return a denominator-free, constant multiple of $f/g$}
|
||||
{Returns a denominator-free, constant multiple of $f/g$.}
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ order of the coefficients with respect to the specified variable.
|
|||
\ccTypes
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{invert}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d result_type;}{}\ccGlue
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d argument_type;}{}
|
||||
|
||||
|
|
@ -36,5 +36,6 @@ order of the coefficients with respect to the specified variable.
|
|||
\ccSeeAlso
|
||||
|
||||
\ccRefIdfierPage{Polynomial_d}\\
|
||||
\ccRefIdfierPage{PolynomialTraits_d}
|
||||
\ccRefIdfierPage{PolynomialTraits_d}\\
|
||||
|
||||
\end{ccRefConcept}
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ which is represented as an iterator range.
|
|||
\ccTypes
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{is_zero_at}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef bool result_type;}{}\ccGlue
|
||||
|
||||
\ccOperations
|
||||
|
|
@ -22,7 +22,7 @@ result_type operator()(PolynomialTraits_d::Polynomial_d p,
|
|||
InputIterator end );}{
|
||||
Computes whether $p$ is zero at the Cartesian point given by the iterator range,
|
||||
where $begin$ is referring to the innermost variable.
|
||||
\ccPrecond (end-begin == \ccc{PolynomialTraits_d::d})
|
||||
\ccPrecond{(end-begin == \ccc{PolynomialTraits_d::d})}
|
||||
}
|
||||
%\ccHasModels
|
||||
|
||||
|
|
|
|||
|
|
@ -15,19 +15,20 @@ polynomial $p(x_0,x_1,w) = x_0^2x_1^3+x_1^4w^1$.
|
|||
\ccTypes
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{is_zero_at_homogeneous}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef bool result_type;}{}\ccGlue
|
||||
|
||||
\ccOperations
|
||||
\ccMethod{
|
||||
template <class InputIterator>
|
||||
\ccMethod{result_type operator()(PolynomialTraits_d::Polynomial_d p,
|
||||
result_type operator()(PolynomialTraits_d::Polynomial_d p,
|
||||
InputIterator begin,
|
||||
InputIterator end );}{
|
||||
Computes whether $p$ is zero at the homogeneous point given by the iterator range,
|
||||
where $begin$ is referring to the innermost variable.
|
||||
\ccPrecond{\ccc{std::iterator_traits< InputIterator >::value_type} is
|
||||
\ccc{PolynomialTraits_d::Innermost_coefficient_type}.}
|
||||
\ccPrecond
|
||||
\ccPrecond{(end-begin == \ccc{PolynomialTraits_d::d}+1)}
|
||||
}
|
||||
%\ccHasModels
|
||||
|
||||
|
|
|
|||
|
|
@ -6,11 +6,11 @@ This \ccc{AdaptableBinaryFunction} computes the leading coefficient
|
|||
of a \ccc{PolynomialTraits_d::Polynomial_d}.
|
||||
|
||||
\ccRefines
|
||||
\ccc{AdaptableBinaryFunction}
|
||||
\ccc{AdaptableUnaryFunction}
|
||||
|
||||
|
||||
\ccTypes
|
||||
\ccCreationVariable{leading_coefficient}
|
||||
\ccCreationVariable{fo}
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Coefficient_type result_type;}{}\ccGlue
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d argument_type;}{}\ccGlue
|
||||
|
|
|
|||
|
|
@ -13,19 +13,19 @@ Given this decomposition, the square free part is defined as the product $g_1 \
|
|||
which is computed by this functor.
|
||||
|
||||
\ccRefines
|
||||
\ccc{AdaptableBinaryFunction}
|
||||
\ccc{AdaptableUnaryFunction}
|
||||
|
||||
\ccTypes
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{make_square_free}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d result_type;}{}
|
||||
\ccGlue
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d argument_type;}{}
|
||||
|
||||
\ccOperations
|
||||
\ccMethod{result_type operator()(argument_type p);}
|
||||
{ return the square-free part of $p$.}
|
||||
{ Returns the square-free part of $p$.}
|
||||
|
||||
|
||||
%\ccHasModels
|
||||
|
|
@ -34,5 +34,6 @@ which is computed by this functor.
|
|||
|
||||
\ccRefIdfierPage{Polynomial_d}\\
|
||||
\ccRefIdfierPage{PolynomialTraits_d}\\
|
||||
\ccRefIdfierPage{PolynomialTraits_d::Canonicalize}
|
||||
\ccRefIdfierPage{PolynomialTraits_d::Canonicalize}\\
|
||||
|
||||
\end{ccRefConcept}
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ This function may be used to make a certain variable the outer most variable.
|
|||
|
||||
\ccOperations
|
||||
|
||||
\ccCreationVariable{move}
|
||||
\ccCreationVariable{fo}
|
||||
\ccMethod{result_type operator()(PolynomialTraits_d::Polynomial_d,
|
||||
int i, int j);}{
|
||||
This function moves the variable at position $i$ to its new position $j$ and returns
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ This functor is well defined if \ccc{PolynomialTraits_d::Innermost_coefficient_t
|
|||
|
||||
\ccTypes
|
||||
|
||||
\ccCreationVariable{multivariate_content}
|
||||
\ccCreationVariable{fo}
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxx}{xxx}{}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Innermost_coefficient_type result_type;}{}
|
||||
\ccGlue
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ of all odd coefficients with respect to the specified variable.
|
|||
|
||||
\ccTypes
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{negate}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d result_type;}{}\ccGlue
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d argument_type;}{}
|
||||
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
This \ccc{AdaptableFunctor} computes the so called {\em pseudo division}
|
||||
of to polynomials $f$ and $g$.
|
||||
|
||||
Given $f$ and $g \not 0$ this functor computes quotient $q$ and
|
||||
Given $f$ and $g \neq 0$ this functor computes quotient $q$ and
|
||||
remainder $r$ such that $D \cdot f = g \cdot q + r$ and $degree(r) < degree(g)$,
|
||||
where $ D = leading\_coefficient(g)^{max(0, degree(f)-degree(g)+1)}$
|
||||
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
This \ccc{AdaptableBinaryFunction} computes the quotient of the so
|
||||
called {\em pseudo division} of to polynomials $f$ and $g$.
|
||||
|
||||
Given $f$ and $g \not 0$ on can compute quotient $q$ and remainder $r$
|
||||
Given $f$ and $g \neq 0$ on can compute quotient $q$ and remainder $r$
|
||||
such that $D \cdot f = g \cdot q + r$ and $degree(r) < degree(g)$,
|
||||
where $ D = leading\_coefficient(g)^{max(0, degree(f)-degree(g)+1)}$
|
||||
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
\begin{ccRefConcept}{PolynomialTraits_d::PseudoDivisionRemainder}
|
||||
|
||||
|
||||
\ccDefinition
|
||||
|
||||
This \ccc{AdaptableBinaryFunction} computes the remainder of the so called
|
||||
{\em pseudo division} of to polynomials $f$ and $g$.
|
||||
|
||||
Given $f$ and $g \not 0$ one can compute quotient $q$ and remainder $r$
|
||||
Given $f$ and $g \neq 0$ one can compute quotient $q$ and remainder $r$
|
||||
such that $D \cdot f = g \cdot q + r$ and $degree(r) < degree(g)$,
|
||||
where $ D = leading\_coefficient(g)^{max(0, degree(f)-degree(g)+1)}$
|
||||
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ For more information we refer to, e.g., \cite{gg-mca-99}.
|
|||
|
||||
\ccTypes
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{resultant}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Coefficient_type result_type;}{}
|
||||
\ccGlue
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d first_argument_type;}{}
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ the polynomial is considered as a univariate polynomial in one specific variable
|
|||
\ccTypes
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{scale}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d result_type;}{}\ccGlue
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d first_argument_type;}{}
|
||||
\ccGlue
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ Note that $a$ and $b$ are of type \ccc{PolynomialTraits_d::Coefficient_type}.
|
|||
\ccTypes
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{scale_homogeneous}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d result_type;}{}
|
||||
|
||||
\ccOperations
|
||||
|
|
|
|||
|
|
@ -1,27 +1,29 @@
|
|||
\begin{ccRefConcept}{PolynomialTraits_d::Shift}
|
||||
\ccDefinition
|
||||
|
||||
This \ccc{AdaptableFunctor} multiplies a \ccc{PolynomialTraits_d::Polynomial_d} by
|
||||
the given power of the specified variable.
|
||||
This \ccc{AdaptableBinaryFunction} multiplies a \ccc{PolynomialTraits_d::Polynomial_d}
|
||||
by the given power of the specified variable.
|
||||
|
||||
This functor is provided for efficiency reasons, since multiplication by some variable
|
||||
will in general correspond to a shift of coefficients in the internal representation.
|
||||
|
||||
\ccRefines
|
||||
\ccc{AdaptableFunctor}
|
||||
\ccc{AdaptableBinaryFunction}
|
||||
|
||||
\ccTypes
|
||||
\ccCreationVariable{shift}
|
||||
\ccCreationVariable{fo}
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d result_type;}{}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d first_argument_type;}{}
|
||||
\ccTypedef{typedef int second_argument_type;}{}
|
||||
|
||||
\ccOperations
|
||||
\ccMethod{result_type operator()(PolynomialTraits_d::Polynomial_d p,
|
||||
int e);}
|
||||
\ccMethod{result_type operator()(first_argument_type p,
|
||||
second_argument_type e);}
|
||||
{ return $p * x_{d-1}^e$
|
||||
\ccPrecond $0 \leq e$ }
|
||||
\ccMethod{result_type operator()(PolynomialTraits_d::Polynomial_d p,
|
||||
int e,
|
||||
\ccMethod{result_type operator()(first_argument_type p,
|
||||
second_argument_type e,
|
||||
int i);}
|
||||
{ Same as first operator but for variable $x_i$.
|
||||
\ccPrecond $0 \leq e$
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ This functor is well defined if \ccc{PolynomialTraits_d::Innermost_coefficient_t
|
|||
\ccTypes
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{sign_at}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef CGAL::Sign result_type;}{}\ccGlue
|
||||
|
||||
\ccOperations
|
||||
|
|
|
|||
|
|
@ -18,12 +18,13 @@ This functor is well defined if \ccc{PolynomialTraits_d::Innermost_coefficient_t
|
|||
\ccTypes
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{sign_at_homogeneous}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef CGAL::Sign result_type;}{}\ccGlue
|
||||
|
||||
\ccOperations
|
||||
template <class InputIterator>
|
||||
\ccMethod{result_type operator()(PolynomialTraits_d::Polynomial_d p,
|
||||
\ccMethod{
|
||||
template <class InputIterator>
|
||||
result_type operator()(PolynomialTraits_d::Polynomial_d p,
|
||||
InputIterator begin,
|
||||
InputIterator end );}{
|
||||
Returns the sign of $p$ at the given homogeneous point, where $begin$ is
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ DefaultConstructible\\
|
|||
\ccOperations
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{sqff}
|
||||
\ccCreationVariable{fo}
|
||||
|
||||
\ccMethod{template<class OutputIterator>
|
||||
OutputIterator operator()(PolynomialTraits_d::Polynomial_d p,
|
||||
|
|
@ -38,8 +38,7 @@ OutputIterator operator()(PolynomialTraits_d::Polynomial_d p,
|
|||
|
||||
\ccMethod{template<class OutputIterator>
|
||||
OutputIterator operator()(PolynomialTraits_d::Polynomial_d p,
|
||||
OutputIterator it,
|
||||
PolynomialTraits_d::Innermost_coefficient_type& a);}
|
||||
OutputIterator it);}
|
||||
{ As the first operator, just not computing the factor $a$. }
|
||||
|
||||
%\ccHasModels
|
||||
|
|
|
|||
|
|
@ -29,12 +29,11 @@ DefaultConstructible\\
|
|||
\ccOperations
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{sqff_utcf}
|
||||
\ccCreationVariable{fo}
|
||||
|
||||
\ccMethod{template<class OutputIterator>
|
||||
OutputIterator operator()(PolynomialTraits_d::Polynomial_d p,
|
||||
OutputIterator it,
|
||||
PolynomialTraits_d::Innermost_coefficient_type& a);}
|
||||
OutputIterator it);}
|
||||
{ computes square-free factorization of $p$.\\
|
||||
The \ccc{OutputIterator} must allow the value type
|
||||
\ccc{std::pair<PolynomialTraits_d::Polynomial_d,int>}.
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@ The result is written in an output range,
|
|||
starting with the $0$th Sturm-Habicht polynomial (which is equal to
|
||||
the discriminant of $f$ up to a multiple of the leading coefficient)
|
||||
|
||||
\ccCreationVariable{fo}
|
||||
\ccOperations
|
||||
\ccMethod{template<typename OutputIterator>
|
||||
OutputIterator operator()(Polynomial_d f,
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ Computes the Sturm-Habicht sequence of a polynomials $f$ of type
|
|||
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,
|
||||
|
|
|
|||
|
|
@ -5,31 +5,34 @@ This \ccc{Functor} substitutes all variables of a given multivariate
|
|||
\ccc{PolynomialTraits_d::Polynomial_d} by the values given in the
|
||||
iterator range, where begin refers the the value for the innermost variable.
|
||||
|
||||
Note that the \ccc{result_type} is the coercion type of the value type of the
|
||||
given iterator range and \ccc{PolynomialTraits_d::Innermost_coefficient_type}.
|
||||
In particular \ccc{std::iterator_traits<Input_iterator>::value_type} must be at least
|
||||
\ccc{ExplicitInteroperable} with \ccc{PolynomialTraits_d::Innermost_coefficient_type}.
|
||||
|
||||
\ccRefines
|
||||
|
||||
Assignable\\
|
||||
CopyConstructible\\
|
||||
DefaultConstructible\\
|
||||
|
||||
% \ccTypes
|
||||
\ccTypes
|
||||
|
||||
Note that the \ccc{result_type} is the coercion type of the value type of the
|
||||
given iterator range and \ccc{PolynomialTraits_d::Innermost_coefficient_type}.
|
||||
In particular \ccc{std::iterator_traits<Input_iterator>::value_type} must be at least
|
||||
\ccc{ExplicitInteroperable} with \ccc{PolynomialTraits_d::Innermost_coefficient_type}.
|
||||
Hence, it can not be provided as a public type in advance.
|
||||
|
||||
% no public types
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{substitute}
|
||||
\ccCreationVariable{fo}
|
||||
|
||||
\ccOperations
|
||||
\ccMethod{
|
||||
template<class Input_iterator>
|
||||
result_type operator()(PolynomialTraits_d::Polynomial_d p,
|
||||
result_type operator()(PolynomialTraits_d::Polynomial_d p,
|
||||
Input_iterator begin, Input_iterator end);}{
|
||||
Substitutes each variable of $p$ by the values given in the iterator range,
|
||||
where begin refers to the innermost variable $x_0$.
|
||||
\ccPrecond The length of the iterator range is \ccc{PolynomialTraits_d::d}.}
|
||||
\ccPrecond{(end-begin == \ccc{PolynomialTraits_d::d})}
|
||||
}
|
||||
|
||||
|
||||
%\ccHasModels
|
||||
|
|
|
|||
|
|
@ -10,22 +10,22 @@ Hence the iterator range is required to be of length \ccc{PolynomialTraits_d::d+
|
|||
For instance the polynomial $p(x_0,x_1) = x_0^2x_1^3+x_1^4$ is interpreted as the homogeneous
|
||||
polynomial $p(x_0,x_1,w) = x_0^2x_1^3+x_1^4w^1$.
|
||||
|
||||
Note that the \ccc{result_type} is the coercion type of the value type of the
|
||||
given iterator range and \ccc{PolynomialTraits_d::Innermost_coefficient_type}.
|
||||
In particular \ccc{std::iterator_traits<Input_iterator>::value_type} must be at least
|
||||
\ccc{ExplicitInteroperable} with \ccc{PolynomialTraits_d::Innermost_coefficient_type}.
|
||||
|
||||
\ccRefines
|
||||
|
||||
Assignable\\
|
||||
CopyConstructible\\
|
||||
DefaultConstructible\\
|
||||
|
||||
% \ccTypes
|
||||
\ccTypes
|
||||
Note that the \ccc{result_type} is the coercion type of the value type of the
|
||||
given iterator range and \ccc{PolynomialTraits_d::Innermost_coefficient_type}.
|
||||
In particular \ccc{std::iterator_traits<Input_iterator>::value_type} must be at least
|
||||
\ccc{ExplicitInteroperable} with \ccc{PolynomialTraits_d::Innermost_coefficient_type}.
|
||||
Hence, it can not be provided as a public type in advance.
|
||||
% no public types
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{substitute_homogeneous}
|
||||
\ccCreationVariable{fo}
|
||||
|
||||
\ccOperations
|
||||
\ccMethod{
|
||||
|
|
@ -36,8 +36,8 @@ Substitute each variable of $p$ by the values given in the iterator range, where
|
|||
$p$ is interpreted as a homogeneous polynomial in all variables.
|
||||
The begin iterator refers to the innermost variable $x_0$.
|
||||
The homogeneous degree is considered as equal to the total degree of $p$.
|
||||
\ccPrecond The length of the iterator range is \ccc{PolynomialTraits_d::d+1}.}
|
||||
|
||||
\ccPrecond{(end-begin == \ccc{PolynomialTraits_d::d})+1}
|
||||
}
|
||||
|
||||
%\ccHasModels
|
||||
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ This \ccc{AdaptableFunctor} swaps two variables of a multivariate polynomial.
|
|||
|
||||
\ccOperations
|
||||
|
||||
\ccCreationVariable{swap}
|
||||
\ccCreationVariable{fo}
|
||||
\ccMethod{result_type operator()(PolynomialTraits_d::Polynomial_d,
|
||||
int i, int j);}
|
||||
{ return polynomial with interchanged variables $x_i$,$x_j$.
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ be $-inf$, but this would imply an inconvenient return type.
|
|||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d argument_type;}{}
|
||||
|
||||
\ccOperations
|
||||
\ccCreationVariable{total_degree}
|
||||
\ccCreationVariable{fo}
|
||||
\ccMethod{result_type operator()(argument_type p);}
|
||||
{Computes the total degree of $p$.}
|
||||
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ the polynomial is considered as a univariate polynomial in one specific variable
|
|||
\ccTypes
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{translate}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d result_type;}{}
|
||||
\ccGlue
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d first_argument_type;}{}
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ Note that $a$ and $b$ are of type \ccc{PolynomialTraits_d::Coefficient_type}.
|
|||
\ccTypes
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccCreationVariable{translate_homogeneous}
|
||||
\ccCreationVariable{fo}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d result_type;}{}\ccGlue
|
||||
|
||||
\ccOperations
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ a \ccc{Field} or a \ccc{UniqueFactorizationDomain}.
|
|||
|
||||
\ccTypes
|
||||
|
||||
\ccCreationVariable{univariate_content}
|
||||
\ccCreationVariable{fo}
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Coefficient_type result_type;}{}\ccGlue
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d argument_type;}{}\ccGlue
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
\ccDefinition
|
||||
|
||||
This \ccc{AdaptableBinaryFunction} computes the content of a
|
||||
This \ccc{AdaptableUnaryFunction} computes the content of a
|
||||
\ccc{PolynomialTraits_d::Polynomial_d}
|
||||
with respect to the univariate (recursive) view on the
|
||||
polynomial {\em up to a constant factor (utcf)}, that is,
|
||||
|
|
@ -15,14 +15,14 @@ However, a concept \ccc{PolynomialTraits_d::MultivariateContentUpToConstantFacto
|
|||
does not exist since the result is trivial.
|
||||
|
||||
\ccRefines
|
||||
\ccc{AdaptableBinaryFunction}
|
||||
\ccc{AdaptableUnaryFunction}
|
||||
\ccCreationVariable{fo}
|
||||
|
||||
\ccTypes
|
||||
|
||||
\ccSetThreeColumns{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}{xxx}{}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Coefficient_type result_type;}{}\ccGlue
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d first_argument_type;}{}\ccGlue
|
||||
\ccTypedef{typedef int second_argument_type;}{}
|
||||
\ccTypedef{typedef PolynomialTraits_d::Polynomial_d argument_type;}{}
|
||||
|
||||
\ccOperations
|
||||
\ccMethod{result_type operator()(first_argument_type p);}
|
||||
|
|
|
|||
Loading…
Reference in New Issue